]> git.donarmstrong.com Git - lilypond.git/blob - ChangeLog
*** empty log message ***
[lilypond.git] / ChangeLog
1 2006-10-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
2
3         * input/regression/spacing-no-note.ly: new file.
4
5         * buildscripts/output-distance.py (link_file): verbosity for OSError.
6
7         * lily/book.cc: #include cleanup.
8
9         * lily/include/lily-guile-macros.hh: add assert to
10         scm_or_str2symbol(SCM).
11
12         * VERSION (PATCH_LEVEL): bump version.
13
14         * lily/spacing-spanner.cc (musical_column_spacing): handle
15         musical->nonmusical spacing case, where there is no spacing
16         wish. Fixes issue #61.
17
18         * lily/pango-font.cc (text_stencil): allow 'tight' bounds.
19         (pango_item_string_stencil): use logical rect horizontally (to
20         preserve spaces), ink_rect vertically (for time signatures).
21
22         * lily/font-metric.cc (word_stencil): new interface function
23
24         * input/regression/utf-8-mixed-text.ly: new file.
25
26         * lily/percent-repeat-engraver.cc (listen_percent): remove
27         spurious warning.
28
29         * lily/phrasing-slur-engraver.cc (acknowledge_script): only ack
30         non-dynamic scripts. Fixes #30.
31
32         * lily/slur.cc (outside_slur_callback): make offset_scm optional.
33
34         * lily/beam.cc (rest_collision_callback): make prev_offset optional.
35
36         * lily/grob-closure.cc (chain_offset_callback): don't pass 0 but
37         SCM_UNDEFINED for non-existent data.
38
39         * lily/side-position-interface.cc (general_side_position): allow
40         optional current_offset argument for chaining, so combinations of side-position
41         and outside slur callback don't add up.  Fixes issue #92.
42
43         * lily/pango-font.cc (pango_item_string_stencil): use
44         logical_rect. This prevents spaces after words from disappearing,
45         issue #72.
46         
47         * VERSION: release 2.9.20
48
49 2006-10-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
50
51         * scm/define-grob-properties.scm (all-user-grob-properties):
52         mention stencil as user settable.
53
54 2006-10-02  Joe Neeman  <joeneeman@gmail.com>
55
56         * Documentation/user/page.itely (Page formatting): 
57         document auto-first-page-number
58
59         * lily/page-breaking.cc (find_chunks_and_breaks): 
60         * lily/paper-score.cc (calc_breaking): Follow changes to the
61         Constrained_breaking interface
62
63         * lily/constrained-breaking.cc (calc_subproblem): run the main loop
64         here backwards, as an optimisation
65         (initialize): new function; move most of the code in resize () here
66         (combine_demerits): cache ragged_right_
67         (Constrained_breaking): constructor now takes the Paper_score
68
69 2006-10-02  Erik Sandberg  <mandolaerik@gmail.com>
70         
71         * lily/lexer.ll, lily/parser.yy: Add EXPECT_NO_MORE_ARGS token, to
72         avoid parser lookahead for 0-ary functions.
73
74         * lily/translator.cc: Extract event classes from
75         IMPLEMENT_TRANSLATOR_LISTENER for documentation generation.
76
77 2006-10-02  Heikki Junes  <hjunes@gmail.com>
78
79         * po/fi.po: Fix spaces, commas etc. in Finnish translation using
80         KBabel fix tool.
81
82 2006-10-01  Nicolas Sceaux  <nicolas.sceaux@free.fr>
83
84         * scm/layout-page-layout.scm (page-breaking-wrapper): new
85         function. Call the page breaking function selected in the
86         `page-breaking' \paper variable, then the post processing function
87         chosen using the `page-post-process' \paper variable.
88         (line-height): new function. Return the height of a system.
89         (line-minimum-position-on-page): new function. Return the position
90         of a system on page (using the previous line position), only
91         considering between system padding.
92         (stretchable-line?): new function. Says whether a line can be
93         stretched (ie. is not a title nor a single staff system).
94         (page-maximum-space-left): new function. Computes space left on a
95         page, when all systems are separated by their padding.
96
97         * lily/page-breaking.cc (breaking::make_pages): Move page post
98         processing function call to page breaking wrapper (common to all
99         page breakers).
100
101         * lily/paper-book.cc (book::pages): call the page breaking
102         wrapper, instead of the page breaker directly
103
104         * ly/paper-defaults.ly: Add \paper variables for page breaking
105         wrapper and page post processing function. Make
106         `write-page-layout' value depend on the 'dump-tweaks option. Add a
107         `system-maximum-stretch-procedure' variable for holding a function
108         computing the maximum stretch a system allows.
109
110         * scm/layout-page-dump.scm (write-page-breaks): computes the
111         stretch to apply to systems on a page to minimize left
112         space. Dump this stretch length.
113
114         * ly/music-functions-init.ly (spacingTweaks): implement it. Read
115         the system-stretch property of the tweak data to stretch the
116         system.
117         (includePageLayoutFile): Void function which includes the
118         generated page-layout file if it exists and if the page layout
119         dumping is not asked.
120         (scoreTweak): if the score tweak named by the argument exists,
121         return it.
122
123 2006-10-01  Joe Neeman  <joeneeman@gmail.com>
124
125         * lily/page-spacing.cc (compress_lines, uncompress_solution):
126         handle correctly the case where there are multiple \noPageBreaks
127         in a row.
128
129 2006-09-30  Laura Conrad <lconrad@laymusic.org>
130
131         * abc2ly.py adds segno (S) and Coda (O) to articulations.
132         
133         * abc2ly.py fix so that entering " -- " will translate to a -- in
134         the lilypond instead of a " - - "
135         
136 2006-09-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
137
138         * lily/align-interface.cc: fix typo
139
140         * lily/dynamic-text-spanner.cc (print): Add a special case for
141         trill spanner right sides. 
142
143         * scm/define-grobs.scm (all-grob-descriptions): set padding to 0.1
144
145         * lily/align-interface.cc (get_extents_aligned_translates): add
146         support for padding variable.
147
148         * lily/break-align-interface.cc (self_align_callback): oops: use
149         loop variable in guard.
150
151         * input/regression/repeat-percent-grace.ly: new file.
152
153         * lily/percent-repeat-engraver.cc (start_translation_timestep):
154         remember first currentCommandColumn of a grace run. Fixes issue 70.
155
156         * lily/percent-repeat-iterator.cc (class Percent_repeat_iterator):
157         move class definition to CC file.
158
159         * lily/multi-measure-rest.cc (percent): use robust_relative_extent()
160
161         * lily/slash-repeat-engraver.cc (listen_percent): don't warn for
162         measure-long  repeats.
163
164         * flower/include/international.hh: include stdarg.h
165
166 2006-09-30  Joe Neeman  <joeneeman@gmail.com>
167
168         * lily/page-turn-page-breaking.cc (calc_demerits): now that we allow
169         put_systems_on_pages to return an empty result, we need to assign
170         demerits properly in that case.
171         (put_systems_on_pages): Make the number of pages depend on the
172         evenness of page_number. Add auto-first-page-number.
173         (calc_subproblem): ensure that the page-number is even for the
174         left-hand page. Warn if the first page-turn doesn't fit onto the
175         first (right-hand) page.
176
177         * lily/page-spacing.cc (solve): bug: demerits_ would always be inf
178         (min_page_count): make this publicly accessible
179         (min_page_count): fix a bug when there are forced page breaks that
180         was introduced when I made this loop run backwards
181         (space_systems_on_n_pages, space_systems_on_n_or_one_more_pages):
182         replace space_systems_on_min_pages with these two. The logic in
183         space_systems_on_min_pages was getting too convoluted and is better
184         contained in page-turn-page-breaking.
185
186         * lily/page-turn-engraver.cc (breakable_column): remove an always-true
187         conditional
188         (breakable_column): typo
189
190         * lily/source-file.cc (get_line): fix off-by-one error
191         and clean up some of the logic
192
193 2006-09-29  Joe Neeman  <joeneeman@gmail.com>
194
195         * lily/page-breaking.cc (make_pages): honour the first-page-number
196         property
197
198 2006-09-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
199
200         * VERSION (PACKAGE_NAME): bump version.
201
202 2006-09-26  Pal Benko  <benko.pal@gmail.com>
203
204         * scm/parser-clef.scm: add petrucci-f3 and -f4 clefs
205         (the latter is the same as petrucci-f which is kept for compatibility)
206
207 2006-09-26  Erik Sandberg  <mandolaerik@gmail.com>
208         
209         * lily/part-combine-iterator.cc: solo1-event -> solo-one-event
210
211 2006-09-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
212
213         * lily/global-context.cc (run_iterator_on_me): break out of loop
214         if moment doesn't increase.
215
216         * scm/define-grob-properties.scm (all-user-grob-properties): add
217         forced property.
218
219         * lily/accidental.cc (after_line_breaking): read forced property.
220
221         * lily/accidental-engraver.cc (process_acknowledged): set 'forced
222         property.
223
224         * input/regression/accidental-forced-tie.ly:  new file.
225
226 2006-09-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
227
228         * ly/engraver-init.ly: set ignoreFiguredBassRest in Staff context.
229
230         * lily/figured-bass-engraver.cc: only listen to rest events if
231         ignoreFiguredBassRest is not set.
232
233         * scm/define-context-properties.scm
234         (all-user-translation-properties): add ignoreFiguredBassRest property
235
236 2006-09-24  Joe Neeman  <joeneeman@gmail.com>
237
238         * lily/paper-book.cc (get_system_specs):
239         (set_system_penalty): fix breakbefore.
240         We used to set a penalty on the system after the break, now we
241         set a permission on the system before the break
242
243         * lily/grob-property.cc: add scm debugging hooks into
244         property modification
245
246         * lily/context-property.cc:
247         * lily/engraver.cc:
248         rename make_foo_from_properties to internal_make_foo and
249         move it from context-property.cc to a member function of
250         Engraver.
251         
252         * lily/include/lily-guile-macros.hh:
253         overload ly_symbol2scm macro so that there is no more need
254         to use internal_foo
255
256         * lily/volta-repeat-iterator.cc:
257         * lily/tweak-engraver.cc:
258         * lily/tuplet-bracket.cc:
259         * lily/span-bar-engraver.cc:
260         * lily/script-engraver.cc:
261         * lily/prob-scheme.cc:
262         * lily/pointer-group-interface.cc:
263         * lily/parser.yy:
264         * lily/grob-scheme.cc:
265         * lily/grob-property.cc:
266         * lily/context.cc:
267         * lily/context-property.cc:
268         * lily/break-substitution.cc:
269         * lily/break-align-engraver.cc:
270         * lily/axis-group-interface.cc:
271         * lily/align-interface.cc:
272         remove calls to internal_FOO
273
274         * lily/system-start-delimiter-engraver.cc:
275         * lily/parenthesis-engraver.cc:
276         * lily/accidental-engraver.cc:
277         remove calls to make_foo_from_properties
278
279 2006-09-23  Graham Percival  <gpermus@gmail.com>
280
281         * Documentation/user/programming-iterfaces.itely: fix
282         def-music-function -> define-music... leftover.
283
284 2006-09-23  Joe Neeman  <joeneeman@gmail.com>
285
286         * lily/page-spacing.cc (min_page_count): by running the loop
287         backwards, we can calculate ragged_last properly.
288
289 2006-09-22  Mats Bengtsson  <mabe@drongo.s3.kth.se>
290
291         * ly/titling-init.ly (scoreTitleMarkup): Rename (typo!?)
292         printfirst-page-number -> print-first-page-number
293
294         * python/convertrules.py: corresponding rule.
295
296         * Documentation/user/page.itely (Page formatting): Document the
297         default values of all page layout parameters. 
298
299 2006-09-22  Erik Sandberg  <mandolaerik@gmail.com>
300
301         * lily/lexer.ll: remove limitation on music function arity. New
302         mode extratoken, which inserts extra EXPECT_* tokens after
303         MUSIC_FUNCTION token. Junk all MUSIC_FUNCTION_* tokens.
304
305         * lily/parser.yy: Change grammar for music function accordingly.
306
307         * lily/include/lily-parser.hh: New method get_state, new member
308         hidden_state. Works around a problem when parser fetches
309         MUSIC_FUNCTION token but not the following EXPECT_* token.
310
311         * lily/translator.cc, lily/context.cc:, lily/translator-group.cc:
312         remove try_music
313
314         * lily/*-engraver.cc, lily/*-performer.cc: Remove all remaining
315         references to Music; use ASSIGN_EVENT_ONCE everywhere
316
317         * lily/grob-info.cc: junk *music_cause
318
319         * lily/music.cc: copy eventified articulations to stream event
320
321         * lily/part-combine-iterator.cc: Cleanup using enums
322
323         * lily/translator-group.cc: Junk OldMusicEvent, and associated
324         methods
325
326         * lily/include/engraver.hh: Junk music.hh include
327
328         * lily/stream-event.cc: Changed constructors
329
330 2006-09-21  Graham Percival  <gpermus@gmail.com>
331
332         * Documentation/user/tweaks.itely (Fitting music onto fewer
333         pages): change settings to avoid warning messages.
334
335 2006-09-21  Mats Bengtsson  <mabe@drongo.s3.kth.se>
336
337         * Documentation/user/tweaks.itely (Fitting music onto fewer
338         pages): Add between-system-space setting. 
339
340 2006-09-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
341
342         * lily/accidental-placement.cc (calc_positioning_done): don't
343         trigger Y-extent calculation too early. Use pure_height instead.
344
345         * lily/scale.cc (LY_DEFINE): new file. 
346
347 2006-09-20  Joe Neeman  <joeneeman@gmail.com>
348
349         * lily/page-breaking.cc (find_chunks_and_breaks): ignore breaks
350         that happen at the start of a score: having a zero-length
351         chunk was messing up min_system_count calculations.
352
353         * lily/source-file.cc (get_line): lower_bound, not
354         binary_search. Fixes problem where point-and-click would
355         always point to the first line.
356
357 2006-09-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
358
359         * lily/accidental-placement.cc (calc_positioning_done): also put
360         stems into accidental support. 
361
362         * lily/tie-engraver.cc (process_music): also set tieMelismaBusy if
363         event_ detected.
364
365         * scm/script.scm (default-script-alist): avoid-slur and
366         slur-padding for portato script.
367
368         * lily/stem-tremolo.cc (translated_stencil): new function. 
369         (height): use new function. Fixes tremolos on whole notes.
370
371         * lily/slur-scoring.cc (get_best_curve): don't crash if no optimal
372         slur found.
373
374 2006-09-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
375
376         * scripts/abc2ly.py (try_parse_comment): idem.
377
378         * scripts/lilypond-book.py (find_toplevel_snippets): use 'foo' in
379         bar_string iso. string.find()
380
381         * lily/*.cc: idem.
382
383         * lily/slur.cc (get_curve): always use scm_is_pair() looping
384         scheme lists.  
385
386 2006-09-18  Graham Percival  <gpermus@gmail.com>
387
388         * Documentation/user/basic-notation.itely: add bug
389         warning about ties and octavation/clef.
390
391 2006-09-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
392
393         * VERSION (PACKAGE_NAME): release 2.9.18
394
395 2006-08-29  Milan Zamazal  <pdm@brailcom.org>
396
397         * elisp/lilypond-mode.el (LilyPond-command-alist): Don't try to
398         figure out midi file names right here.
399         
400 2006-09-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
401
402         * scm/framework-ps.scm (dump-stencil-as-EPS): naming pad-eps-boxes.
403
404         * scm/backend-library.scm: option naming:  gs-font-load*s*
405
406         * scm/framework-eps.scm (dump-stencils-as-EPSes): rename option to
407         include-eps-fonts
408
409 2006-09-17  Joe Neeman  <joeneeman@gmail.com>
410
411         * scm/define-music-types.scm (music-descriptions): remove
412         BreakEvent and fix {Page,Line}{Break,Turn}Event so
413         Music::to_event doesn't complain.
414
415         * lily/accidental-placement.cc (ape_compare):
416         * lily/semi-tie.cc (compare): 
417         * lily/note-column.cc (shift_compare): replace by XXX_less
418
419         * lily/tie-formatting-problem.cc (set_chord_outline): 
420         * lily/tie-column.cc (calc_positioning_done): 
421         * lily/system.cc (post_processing)
422         (get_paper_system): 
423         * lily/stem.cc (note_head_positions)
424         (calc_positioning_done): 
425         * lily/spanner.cc (do_break_processing)
426         (find_broken_piece): 
427         * lily/span-bar.cc (print): 
428         * lily/semi-tie-column.cc (calc_positioning_done): 
429         * lily/rest-collision.cc (calc_positioning_done): 
430         * lily/program-option.cc (get_help_string): 
431         * lily/note-collision.cc (get_clash_groups):
432         * lily/new-fingering-engraver.cc (position_scripts):
433         * lily/keyword.cc (Keyword_table):
434         * lily/hara-kiri-group-spanner.cc (request_suicide):
435         * lily/grob-pq-engraver.cc (stop_translation_timestep):
436         * lily/accidental-placement.cc (calc_positioning_done):
437         (stagger_apes):
438         * lily/beam.cc (get_beam_segments):
439         * lily/grob-array.cc (remove_duplicates):
440         use new vector_sort
441         
442         * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily:
443         ragged-last-bottom = ##f (test the new page breaker)
444
445         * flower/include/std-vector.hh (vector_sort): use STL sort stuff
446
447         * scm/define-context-properties.scm
448         (all-internal-translation-properties): remove properties that
449         were used to communicate page-turn stuff to the paper-column
450         engraver.
451
452         * lily/lily-guile.cc (robust_scm2string): new function
453
454         * lily/paper-column-engraver.cc: Clean up page turn stuff
455
456         * lily/page-turn-engraver.cc: Re-write the page turn logic here
457         instead of cluttering up paper-column-engraver.cc
458
459 2006-09-17  Nicolas Sceaux  <nicolas.sceaux@free.fr>
460
461         * scm/layout-page-dump.scm (scm): export utility function names,
462         to allow user writing cutsom dumping functions.
463
464         * scm/layout-page-layout.scm: export utility function names to
465         enable custom page breaking function writing. Tabify.
466         (line-next-space): use ?-suffix only for predicates
467         (page-maximum-space-to-fill): new function. Return the space
468         between first and bottom system of a page, to give to
469         space-systems.
470         (space-systems): use a space-to-fill argument (for instance as
471         computed by page-maximum-space-to-fill) instead of computing
472         internaly this space with the page height. That way, the caller
473         can adjust the space to use.
474         (make-page-from-systems, walk-paths): compute space to fill before
475         calling space-systems.
476
477 2006-09-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
478
479         * scm/script.scm (default-script-alist): set paddings for every
480         type here, increase for portato mark.
481
482         * scm/lily.scm (define-scheme-options): typo: add s, so it is 
483         -dinclude-eps-fonts
484
485 2006-09-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
486
487         * scm/define-grobs.scm (all-grob-descriptions): oops, typo:
488         use spanner::set-spacing-rods
489
490         * lily/note-column.cc: reformat.
491
492         * lily/rest-collision.cc (calc_positioning_done): fix whole/half
493         step positioning for note/rest combinations.
494
495         * input/regression/rest-note-collision.ly: new file.
496
497         * scm/define-grobs.scm (all-grob-descriptions): add
498         springs-and-rods
499
500         * flower/include/std-vector.hh: switch off again.
501
502         * VERSION (PATCH_LEVEL): bump to 2.9.18
503
504         * flower/include/std-string.hh: idem.
505
506         * flower/include/std-vector.hh (_GLIBCXX_DEBUG): set if NDEBUG not set.
507
508 2006-09-15  Mats Bengtsson  <mabe@drongo.s3.kth.se>
509
510         * ly/engraver-init.ly: Make FiguredBass accepted in GrandStaff and
511         PianoStaff. 
512
513 2006-09-08  Joe Neeman  <joeneeman@gmail.com>
514
515         * Documentation/user/page.itely: update page breaking documentation
516
517 2006-09-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
518
519         * lily/note-collision.cc (calc_positioning_done): only access
520         first head if available.
521
522         * lily/tuplet-engraver.cc: add tupletFullLengthNote to description.
523
524         * scm/framework-ps.scm (output-preview-framework): use new name.
525
526         * lily/program-option.cc (internal_set_option): use new names.
527
528         * Documentation/user/SConscript (lilypond_book_flags): update -d
529         variable names.
530
531         * Documentation/user/lilypond-book.itely (Inserting LilyPond
532         output into other programs): new variable names.
533
534         * scm/lily.scm (define-scheme-options): uniformize var names.
535
536         * lily/tuplet-engraver.cc (listen_tuplet_span): verify that
537         tuplets_ is non-empty before popping.
538
539 2006-09-07  Joe Neeman  <joeneeman@gmail.com>
540
541         * lily/spanner.cc (find_broken_piece): 
542         * lily/spacing-spanner.cc (get_columns): 
543         * lily/source-file.cc (get_line): 
544         * lily/simple-spacer.cc (get_column_description): 
545         * lily/keyword.cc (lookup): 
546         use the new binary search.
547
548         * flower/include/std-vector.hh: replace binary_search with
549         a more STL-like version
550
551 2006-09-04  Michael Welsh Duggan  <md5i@cs.cmu.edu>
552
553         * lily/tie-performer.cc: remove unused last_event_ property.
554         (class Tie_performer): add now_tied_heads_ property for
555         partially-tied heads.
556         (acknowledge_audio_element): when adding an Audio_note, put the
557         note in now_tied_heads_ if the audio note is partially tied.
558         (stop_translation_timestep): always include entries in
559         now_tied_heads_ in heads_to_tie_.
560
561         * lily/drum-note-performer.cc (process_music): look for tie-events
562         in the articulations; pass to Audio_note constructor.
563
564         * lily/note-performer.cc (process_music): look for tie-events in
565         the articulations; pass to Audio_note constructor.
566
567         * lily/audio-item.cc (Audio_note): Initialize tie_event_ in
568         constructor.
569
570         * lily/include/audio-item.hh (class Audio_note): add tie_event_.
571         include initializer in constructor.
572
573 2006-09-02  Joe Neeman  <joeneeman@gmail.com>
574
575         * lily/simple-spacer.cc (get_line_forces): Ignore loose columns
576         unless they are breakable. This fixes discrepancies between the forces
577         calculated here and the forces calculated in get_line_configuration.
578
579         * lily/grob.cc (pure_relative_y_coordinate): fix some
580         mis-estimation that was happening with piano staves.
581
582         * lily/constrained-breaking.cc (resize): don't choke if we get a
583         measure that won't fit on a line.
584         (combine_demerits): don't consider uniformity when ragged
585
586         * lily/page-spacing.cc (solve): why the f* were there two of these?
587         (calc_subproblem): properly handle the case where a system is taller
588         than the page.
589
590         * lily/system.cc (get_paper_system): ensure that all the permissions
591         and penalties are passed to the paper systems.
592
593         * lily/page-breaking.cc (create_system_list): support system-count.
594
595         * scm/define-grobs.scm (pure-print-callbacks): add
596         ly:script-interface::print
597
598         * lily/page-spacing.cc (min_page_count): fix calculation of min
599         pages if we are ragged and there are non-zero springs.
600
601         * scm/layout-page-layout.scm: if the pure-height estimates are under
602         the real height, allow space-systems to ignore padding if it is
603         needed in order to fit the systems on one page
604
605         * lily/optimal-page-breaking.cc (try_page_spacing): fix reading
606         ragged properties
607         (solve): fix performance problem. Make sure we always get at least
608         one solution
609
610         * lily/page-breaking.cc (make_pages): include write-page-breaks
611         and page-stencil
612
613         * lily/paper-score.cc (calc_breaking): remove Gourlay breaker
614
615         * scm/define-grobs.scm: add the new slur-callback
616         fix pure-relevant to not exclude grobs whose extent is already
617         calculated
618
619         * ly/paper-defaults.ly: make ly:optimal-breaking the new default
620         page breaker
621
622         * lily/slur.cc (pure_height): new callback to estimate the height
623         of a slur
624
625 2006-09-02  Graham Percival  <gpermus@gmail.com>
626
627         * Documentation/user/invoking.itely: small update on
628         MacOS X notes; thanks Trevor!
629
630 2006-09-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
631
632         * VERSION (MY_PATCH_LEVEL): release 2.9.17
633
634         * lily/lexer.ll: accept EOF in all states.
635
636         * lily/tempo-performer.cc (Tempo_performer): initialize last_tempo_.
637
638         * lily/source-file.cc (Source_file): always 0-terminate character
639         array, to prevent Flex from barfing.
640
641         * lily/global-context.cc (get_output): robustness: don't crash if
642         no Score context found.
643
644         * lily/include/book.hh (class Book): idem.
645
646         * lily/include/context-def.hh (struct Context_def): idem.
647
648         * lily/include/score.hh (class Score): don't derive from Input.
649
650         * lily/book.cc (Book): add a copy ctor. 
651
652         * buildscripts/output-distance.py (FileLink.calc_distance): count
653         orphans in distance too.
654
655         * python/midi.c (midi_parse_track): robustness: don't read past
656         end of string.
657
658         * ly/performer-init.ly: add Control_track_performer, move
659         Tempo_performer and Time_signature_performer to Score.        
660
661         * lily/score-performer.cc (acknowledge_audio_elements): override
662         from base class: add to audio-columns
663
664         * lily/control-track-performer.cc (add_text): new file: generate
665         the control track.
666
667         * lily/performance.cc: move output_header_track to
668         Control_track_performer ()
669
670         * lily/midi-walker.cc (Midi_walker): get channel in constructor.
671
672         * lily/include/midi-item.hh (class Midi_channel_item): insert
673         class into hierarchy, for items that can have a channel setting. Dehungarify.
674
675         * lily/include/performer.hh (class Performer): remove
676         play_element();  move functionality into announce/acknowledge.
677
678         * lily/audio-staff.cc (output): remove channel_ from Midi_track.
679
680         * lily/tie-engraver.cc (stop_translation_timestep): only wipe
681         heads_to_tie_ if there are new heads to tie.  Fixes polyphony in ties.
682
683 2006-08-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
684
685         * lily/tie-engraver.cc (stop_translation_timestep): robustness for
686         ambituses.
687
688         * lily/all-font-metrics.cc: remove TFM support.
689
690         * lily/include/tfm.hh: remove TFM support, TFM reader.
691
692         * lily/include/binary-source-file.hh: remove Binary_source_file.
693
694 2006-08-27  Graham Percival  <gpermus@gmail.com>
695
696         * Documentation/topdocs/NEWS.itely: add @c marker for
697         stuff I've processed.
698
699         * Documentation/user/ various: info from NEWS.
700
701 2006-08-27  Joe Neeman  <joeneeman@gmail.com>
702
703         * lily/paper-column-engraver.cc (finalize): Oops, this change
704         should have gone in on 2006-08-23
705
706 2006-08-26  Mats Bengtsson  <mabe@s3.kth.se>
707
708         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use double
709         quotes to quote arguments. Fixes Windows problem.
710
711         * python/lilylib.py (progress): idem
712
713 2006-08-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
714
715         * scripts/musicxml2ly.py: fix for importing
716         minor key signatures from MusicXML.  (Phillip Kirlin)
717
718 2006-08-24  Phillip Kirlin  <pkirlin@acm.org>
719
720         * python/musicxml.py: 
721         (Attributes.get_key_signature): now correctly retrieves mode from 
722         MusicXML. 
723
724 2006-08-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
725
726         * lily/parser.yy (output_def_body): take ownership of identifier
727         back to C++.
728
729         * Documentation/user/advanced-notation.itely (Metronome marks):
730         update use of \tempo in \midi.
731
732         * VERSION: release 2.9.16
733         
734 2006-08-24  Erik Sandberg  <mandolaerik@gmail.com>
735
736         * input/mutopia/*: upgrade to new midi tempo syntax (repairs make
737         web partially)
738
739 2006-08-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
740
741         * input/regression/tie-chord-partial.ly: clarify example.
742
743         * scm/define-music-properties.scm (all-music-properties): remove
744         untied.
745
746         * ly/music-functions-init.ly: remove \untied.
747
748         * lily/tie-engraver.cc (struct Head_event_tuple): store both
749         stream events and music events.
750         (stop_translation_timestep): search acknowledged heads for
751         tie-event.
752
753         * input/regression/tie-chord-partial.ly: new file.
754
755         * scm/define-markup-commands.scm (char): use ly:wide-char->utf-8
756         for \char markup command.
757
758         * scm/define-event-classes.scm (unlistened-music-event-classes): idem.
759
760         * scm/define-music-types.scm (music-descriptions): consistency:
761         Use solo-{one,two}-event iso. solo-[12]-event.
762
763         * lily/part-combine-engraver.cc (process_music):
764         Use solo-{one,two}-event iso. solo-[12]-event.
765
766         * ly/declarations-init.ly (partCombineListener): add Timing as
767         alias
768
769         * flower/std-string.cc (string_copy): use copy ()
770
771         * lily/source-file.cc (Source_file): use copy(). Remove contents_str0()
772
773 2006-08-24  Graham Percival  <gpermus@gmail.com>
774
775         * Documentation/user/changing-defaults.itely, global.itely,
776         lilypond-book.itely, page.itely: minor changes from mailist.
777
778 2006-08-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
779
780         * buildscripts/mutopia-index.py (allfiles): filter lily-XXX and
781         snippet-map
782
783         * scm/define-context-properties.scm
784         (translator-property-description): robustness: detect type errors
785         in property definitions.
786
787         * lily/parser.yy (score_body): protect SCORE_IDENTIFIER result
788         after getting it from SCM. 
789
790         * lily/smobs.cc (protect_smob): switch off fancy smob protection
791         for now. 
792
793         * lily/include/performer.hh (class Performer): strip get_tempo()
794         method.
795
796         * lily/midi-def.cc: strip file.
797
798         * lily/lexer.ll (Lily_lexer): don't protect hash key separately.
799
800         * lily/include/context-def.hh (struct Context_def): use
801         VIRTUAL_COPY_CONSTRUCTOR().
802
803         * lily/source-file.cc: smobification.
804
805         * lily/include/source-file.hh (class Source_file): smobify
806         Source_file. Trim redundant members.
807
808         * lily/parser.yy (Lily_lexer::try_special_identifiers): unprotect
809         clones after creation. This plugs a huge memory leak.
810
811         * python/convertrules.py (FatalConversionError.sub_tempo):
812         complete rule for \midi{ \tempo }
813
814         * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): idem.
815
816         * input/mutopia/F.Schubert/morgenlied.ly (pianoLH): update tempo.
817
818 2006-08-23  Joe Neeman  <joeneeman@gmail.com>
819
820         * input/regression/optimal-page-breaking-hstretch.ly: test for
821         ragged-last-bottom also
822
823         * lily/paper-column-engraver.cc (finalize): make the end of a score
824         breakable by default. This is to balance out a change in behaviour
825         of the page-turn-breaker which no longer makes the end of a score
826         breakable.
827
828         * lily/paper-book.cc (pages): set the systems_ once the pages are
829         broken
830
831         * lily/page-turn-page-breaking.cc (calc_subproblem): use the new
832         Page_breaking interface.
833
834         * lily/page-breaking.cc (class Page_breaking): make the interface
835         more consistent and provide abstractions for dealing with
836         Line_divisions.
837
838         * lily/optimal-page-breaking.cc (solve): use a more straightforward
839         algorithm. Use the new interface to Page_breaking.
840
841         * lily/page-spacing.cc: better support for ragged-bottom and
842         ragged-last-bottom
843
844 2006-08-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
845
846         * python/convertrules.py (conv): warning on \tempo{}
847
848         * ly/performer-init.ly: set tempoWholesPerMinute.
849
850         * ly/midi-init.ly: remove \midi
851
852         * lily/tempo-performer.cc: look at tempoWholesPerMinute to set
853         MIDI tempo.
854
855         * lily/metronome-engraver.cc (process_music): use tempoUnitCount
856         tempoUnitDuration for determining what to print.
857
858         * lily/lyric-extender.cc: typo.
859
860         * lily/parser.yy (output_def_body): disallow \tempo in \midi{}
861
862         * lily/duration-scheme.cc (LY_DEFINE): ly:duration-length: new
863         function.
864
865         * scm/lily.scm (define-scheme-options): alphabetize, add eps-pad-boxes.
866
867         * scm/framework-ps.scm (dump-stencil-as-EPS): only pad boxes if
868         eps-pad-boxes is set.
869
870         * scripts/lilypond-book.py (main): use -deps-pad-boxes.
871
872         * THANKS: update sponsors.
873
874         * ly/english.ly: quarter tone naming (thanks, Trevor Baca)
875
876         * Documentation/topdocs/NEWS.tely (Top): doc new feature.
877
878         * input/regression/tie-chord-untied.ly: new file.
879
880         * lily/tie-engraver.cc (acknowledge_note_head): check 'untied property.
881
882         * scm/define-music-properties.scm (all-music-properties): add
883         'untied property.
884
885         * buildscripts/mutopia-index.py (allfiles): look for .ly rather
886         than .ly.txt.
887         (headertext_nopics): sanitize no-examples text.
888
889         * scm/page.scm (make-page-stencil): don't rely on extents of
890         page-stencil. This fixes spurious space around .EPS files produced
891         with the EPS backend.
892
893 2006-08-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
894
895         * lily/stencil-scheme.cc (LY_DEFINE): make extent arguments optional.
896
897         * lily/hara-kiri-engraver.cc (process_music): remember
898         keepAliveInterfaces after processing \set
899
900         * lily/lyric-extender.cc (print): support left/right-padding for
901         extenders.
902
903         * scm/documentation-generate.scm (string-append): revert lilypond/
904         path, doc why.
905
906 2006-08-20  Graham Percival  <gpermus@gmail.com>
907
908         * Documentation/user/lilypond.tely: clarification to
909         license presentation (not to actual license).
910
911         * Documentation/user/basic-notation.itely,
912         instrument-notation.itely: minor changes.
913
914         * input/ {regression, test}/+.ly: clarification to
915         text (you can click on examples).  Thanks, Mats!
916
917         * input/manual/bar-lines.ly: adds ||: repeats.
918
919 2006-08-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
920
921         * make/ly-vars.make (OMF_FILES): strip ps.gz from OMF_FILES 
922
923         * scm/documentation-lib.scm (texi-file-head): category LilyPond.
924
925         * Documentation/user/lilypond.tely: strip lilypond/ from info
926         links, rename to category LilyPond
927
928         * lily/pango-font.cc (description_string): new function.
929
930         * VERSION: release 2.9.15
931
932         * lily/spacing-engraver.cc (stop_translation_timestep): use
933         Dscho's fix for spacing spanner. 
934
935         * scm/define-music-types.scm (music-descriptions): use
936         apply-output-event for ApplyOutputEvent
937
938         * lily/output-property-engraver.cc (listen_apply_output): rename
939         from listen_layout_instruction.
940
941         * lily/piano-pedal-engraver.cc (struct Pedal_type_info): new
942         function protect()
943
944 2006-08-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
945
946         * scm/lily.scm (lilypond-all): option read-file-list: substitute
947         commandline args with contains, split by \n.
948
949         * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
950         write snippet-names file, call with -dread-file-list. Fixes
951         command limitations on 64-bit systems.
952
953         * input/regression/stencil-color-rotation.ly: new file.
954
955         * lily/include/translator.hh (struct Acknowledge_information):
956         revert: don't use Protected_scm in global objects, as GUILE can't
957         handle gc_unprotect from automated destructors on MacOS X.
958  
959         * lily/grob.cc (get_print_stencil): use retval.expr() as base for
960         color, not the original stencil. Fixes combinations of
961         color/transparency/rotation. 
962
963         * scripts/lilypond-book.py (main): add --formats=eps for
964         texinfo/latex.
965
966         * lily/spacing-engraver.cc (stop_translation_timestep): don't
967         crash if spacing_ is nonexistent.
968
969 2006-08-14  Mats Bengtsson  <mabe@s3.kth.se>
970
971         * scripts/lilypond-book.py (output): Remove obsolete(!?)
972         \catcode`\@=12 in the LaTeX output.
973
974 2006-08-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
975
976         * scm/define-music-types.scm (music-descriptions):
977         use sustain-event iso. sustain-pedal-event.
978
979 2006-08-11  Joe Neeman  <joeneeman@gmail.com>
980
981         * scripts/convert-ly.py: honour the -n command-line switch
982
983 2006-08-10  Han-Wen Nienhuys  <hanwen@lilypond.org>
984
985         * scm/output-lib.scm (bar-line::calc-glyph-name): add dashed liine
986         break specification.
987
988 2006-08-10  Joe Neeman  <joeneeman@gmail.com>
989
990         * Documentation/user: convert-ly the user manual
991
992 2006-08-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
993
994         * stepmake/aclocal.m4: version check patch (thanks MWD)
995
996         * ly/music-functions-init.ly: robustness. Don't crash if
997         currentBarNumber is not a number.
998
999         * VERSION (PATCH_LEVEL): bump.
1000
1001 2006-08-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
1002
1003         * stepmake/aclocal.m4: better version check; handle fooX.Y
1004         binaries too.
1005
1006         * ly/performer-init.ly: instrument name fixup.
1007
1008         * input/manual/chord-names-jazz.ly (banterProperties):
1009         instrumentName update
1010
1011         * scm/define-event-classes.scm (lambda): use ly:is-listened-event-class
1012
1013         * lily/ly-module.cc (ly_module_symbols): use ly_hash_table_keys
1014
1015         * lily/translator.cc (LY_DEFINE): ly:is-listened-event-class: new
1016         function. Use hash tables to check membership.
1017
1018         * lily/general-scheme.cc (LY_DEFINE): new function.
1019
1020         * lily/piano-pedal-engraver.cc (struct Pedal_type_info): idem
1021
1022         * lily/include/translator.hh (struct Acknowledge_information): add
1023         Protected_scm
1024
1025         * ly/music-functions-init.ly: change name to BreathingEvent
1026
1027         * input/regression/*.ly: apply it.
1028
1029         * python/convertrules.py (conv): better instrumentName conversion
1030         rule.
1031
1032         * scm/define-music-types.scm (music-descriptions): add
1033         line-break-event to LineBreakEvent music
1034
1035         * lily/music.cc (to_event): don't crash if music type not set.
1036
1037         * lily/spacing-loose-columns.cc (set_loose_columns): don't barf if
1038         spacing not set.
1039
1040         * lily/spacing-engraver.cc (stop_translation_timestep): set
1041         spacing for proportional notation too.
1042
1043         * scm/translation-functions.scm (format-bass-figure): inspect
1044         stream-event.
1045
1046         * scripts/lilypond-book.py (bindir): add bindir to $PATH.
1047
1048 2006-08-08  Joe Neeman  <joeneeman@gmail.com>
1049
1050         * lily/include/constrained-breaking.hh: add Line_details (Prob*)
1051
1052         * scm/page.scm (make-page): make it friendlier to call (esp. from C++)
1053
1054         * scm/layout-page-layout.scm (make-page-from-systems): new function
1055         (optimal-page-breaks): use the new page-breaking calling convention
1056
1057         * scm/define-context-properties.scm (all-user-translation-properties):
1058         add revokePageTurns
1059
1060         * lily/paper-column-engraver.cc (stop_translation_timestep): add
1061         revokePageTurns  functionality. If there is a special barline within
1062         the breakable region, break there instead of at the end of the region.
1063
1064         * lily/paper-book.cc (pages): use the new page-breaking calling
1065         convention
1066
1067 2006-08-07  Erik Sandberg  <mandolaerik@gmail.com>
1068
1069         * lily/lexer.ll, lily/source-file.cc: Add \sourcefileline command
1070
1071         * scripts/lilypond-book.py: insert \sourcefileline command in
1072         output, so lilypond error messages refer to the spot in the
1073         original .lytex / .itely sourcefile.
1074
1075 2006-08-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
1076
1077         * lily/spacing-loose-columns.cc (set_loose_columns): oops: use
1078         space to next column for distance to fixed col.
1079
1080         * VERSION (PACKAGE_NAME): release 2.9.14
1081
1082         * lily/pitched-trill-engraver.cc (make_trill): do set_parent also
1083         if no accidental.
1084
1085         * lily/accidental-engraver.cc (process_acknowledged): don't create
1086         accidental for trill span event. This fixes spurious accidentals
1087         on trills.
1088
1089 2006-08-04  Mats Bengtsson  <mabe@s3.kth.se>
1090
1091         * scm/define-grob-properties.scm (all-user-grob-properties):
1092         Clarify documentation of side-axis and direction. Thanks to Paul
1093         for the inspiration.
1094
1095         * lily/bar-line.cc: Add documentation for "||:" also in the
1096         interface documentation.
1097
1098 2006-08-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
1099
1100         * lily/spacing-loose-columns.cc (set_loose_columns): bugfix.
1101
1102         * lily/paper-column.cc (set_system): new function.
1103
1104         * lily/spacing-engraver.cc (stop_translation_timestep): store
1105         SpacingSpanner refs in Paper_column.
1106
1107         * lily/spacing-loose-columns.cc (set_loose_columns): rewrite
1108         compute loose clique spacing using GraceSpacing/SpacingSpanner.
1109
1110 2006-08-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
1111
1112         * lily/beam-engraver.cc (listen_beam): add method for
1113         Grace_beam_engraver too.
1114
1115 2006-08-03  Mats Bengtsson  <mabe@s3.kth.se>
1116
1117         * python/convertrules.py: Fix indentation bug that broke
1118         conversion of files older than 1.3.117.
1119         Fix escape error in the description for 2.9.6.
1120
1121 2006-08-02  Erik Sandberg  <mandolaerik@gmail.com>
1122
1123         * lily/*-engraver.cc: convert all try_music functions to listen_*
1124         functions.
1125
1126         * lily/piano-pedal-engraver.cc: some additional cleanups: use
1127         enums to represent pedal types, and calculate more data statically.
1128
1129         * scm/part-combiner.scm (recording-group-emulate): create a
1130         softcoded substitute for recording-group-engraver.cc.
1131
1132         * lily/music.cc: make a common transpose function for events and
1133         music
1134
1135         * ly/declarations-init.ly: change melisma/melismaEnd. Eliminates
1136         ManualMelismaEvent, and obsoletes Melisma_translator.
1137
1138 2006-08-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
1139
1140         * input/test/instrument-name-align.ly: update version.
1141
1142 2006-08-02  Mats Bengtsson  <mabe@s3.kth.se>
1143
1144         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
1145         Doc the --pdf flag to lilypond-book.
1146
1147 2006-07-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
1148
1149         * Documentation/topdocs/NEWS.tely (Top): add description.
1150
1151         * input/regression/tuplet-full-length-note.ly: add file.
1152
1153         * lily/instrument-name-engraver.cc (acknowledge_axis_group):
1154         always store axis group.
1155
1156 2006-07-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
1157
1158         * input/regression/instrument-switch.ly: new file.
1159
1160         * lily/instrument-switch-engraver.cc (process_music): new file.
1161
1162         * ly/engraver-init.ly: add Instrument_switch_engraver
1163
1164         * ly/music-functions-init.ly: \instrumentSwitch
1165
1166         * scm/define-context-properties.scm
1167         (all-user-translation-properties): add instrumentCueName
1168
1169         * scm/define-grobs.scm (all-grob-descriptions): add InstrumentSwitch
1170
1171 2006-07-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
1172
1173         * ly/music-functions-init.ly: music function \transposition.
1174
1175         * lily/parser.yy (command_element): softcode \transposition.
1176
1177         * lily/fall-engraver.cc (process_music): delta-pitch -> delta-step.
1178         (process_music): oops.
1179
1180         * lily/instrument-name-engraver.cc (start_spanner): new
1181         function. Create spanner when property changes.
1182         (stop_spanner): new function.
1183
1184         * python/convertrules.py (conv): add rule.
1185
1186         * lily/instrument-name-engraver.cc: shortVocalName iso. vocNam,
1187         shortInstrumentName iso. instr.
1188
1189         * scm/output-ps.scm (dashed-line): add phase argument to
1190         dashed-line.
1191
1192         * lily/bar-line.cc (dashed_bar_line): new function.
1193         (compound_barline): support \bar "dashed". 
1194
1195         * lily/lily-parser-scheme.cc (LY_DEFINE): only write
1196         --output=DIR to DIR/BASE if it is a dir. 
1197
1198         * flower/file-name.cc (file_part): new function
1199         (dir_part): new function
1200
1201         * lily/lily-parser-scheme.cc (LY_DEFINE): 
1202
1203         * DEDICATION: update
1204
1205 2006-07-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
1206
1207         * lily/instrument-name-engraver.cc: formatting.
1208
1209         * python/convertrules.py (conv): bugfix for \epsfile.
1210
1211 2006-07-25  Joe Neeman  <joeneeman@gmail.com>
1212
1213         * lily/grob.cc:
1214         
1215         * lily/gourlay-breaking.cc: Oops, these should have been included
1216         in my last commit
1217
1218 2006-07-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
1219
1220         * scripts/*.py (program_name): cleanup relocation snippets.
1221
1222         * scripts/convert-ly.py (datadir): remove LILYPONDPREFIX support.
1223
1224 2006-07-24  Joe Neeman  <joeneeman@gmail.com>
1225
1226         * scm/define-grobs.scm (all-grob-descriptions): make NonMusicalPaperColumn
1227         page-breakable by default
1228
1229         * scm/layout-page-layout.scm (space-systems): fix bug where the force isn't
1230         correctly calculated for a single-system page
1231
1232         * scm/lily-library.scm (interval-sane?): also check that the first number is no
1233         bigger than the second number
1234
1235         * lily/simple-spacer.cc (solve): allow compression even when ragged (but we
1236         acknowledge that we aren't satisfying constraints)
1237
1238         * lily/hara-kiri-group-spanner.cc (request_suicide): give equal treatment to
1239         non-Items
1240
1241         * lily/grob.cc (pure_height): add minimum-Y-extent
1242
1243         * lily/gourlay-breaking.cc (solve): don't ignore a compression force, even if we're
1244         ragged
1245
1246         * lily/constrained-breaking.cc: convert code to use new Matrix class
1247         (get_best_solution): new function
1248
1249         * scm/page.scm (make-page-stencil): don't crash if we annotate-layout when there
1250         is a page with no systems
1251
1252 2006-07-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
1253
1254         * VERSION (PACKAGE_NAME): release 2.9.13
1255
1256         * scm/define-grobs.scm (all-grob-descriptions): remove stray
1257         assignment.
1258
1259 2006-07-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
1260
1261         * Documentation/topdocs/NEWS.tely (Top): doc new features.
1262
1263         * scm/output-lib.scm (grace-spacing::calc-shortest-duration): new
1264         function.
1265
1266         * scm/define-grob-properties.scm (all-user-grob-properties):
1267         remove grace-space-factor.
1268
1269         * scm/define-grob-interfaces.scm (grace-spacing-interface): add
1270         grace-spacing-interface
1271         (spacing-options-interface): add.
1272
1273         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add Grace_spacing_engraver
1274
1275         * lily/spacing-options.cc (get_duration_space): move function from spacing-basic.cc
1276
1277         * lily/spacing-basic.cc (note_spacing): do init_from_grob on
1278         GraceSpacing object.
1279
1280         * lily/note-spacing.cc: fix prop list formatting
1281
1282         * lily/beaming-pattern.cc (de_grace): new function. Sensible
1283         beaming for grace notes too.
1284
1285         * input/regression/spacing-grace.ly: update.
1286
1287         * lily/grace-spacing-engraver.cc: new file.
1288
1289         * lily/spacing-spanner.cc: add strict-grace-spacing.
1290
1291 2006-07-20  Graham Percival  <gpermus@gmail.com>
1292
1293         * lily/parser.yy: compile fix.
1294
1295 2006-07-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
1296
1297         * scm/define-grobs.scm (all-grob-descriptions): typo.
1298
1299         * scm/framework-eps.scm (dump-stencils-as-EPSes): just strip
1300         .eps extension from includegraphics.
1301
1302         * scripts/lilypond-book.py (main): add support for --pdf. 
1303
1304         * lily/spacing-spanner.cc (calc_common_shortest_duration): use
1305         callback to compute common shortest duration.
1306         (set_springs): typo.
1307
1308         * scm/define-grob-properties.scm (all-user-grob-properties): add
1309         strict-grace-spacing.
1310
1311         * lily/spacing-determine-loose-columns.cc (is_loose_column):
1312         support float_grace_columns_.
1313
1314         * lily/spacing-options.cc (init_from_grob): new file.
1315
1316         * Documentation/topdocs/NEWS.tely (Top): doc tupletFullLengthNote.
1317
1318         * input/regression/spacing-loose-grace.ly: new file.
1319
1320         * Documentation/topdocs/NEWS.tely (Top): document new feature.
1321
1322         * lily/tuplet-engraver.cc (struct Tuplet_description): read
1323         tupletFullLengthNote too. Choose right bound depending on value.
1324
1325         * input/regression/tuplet-full-length-note.ly: new file.
1326
1327 2006-07-19  Erik Sandberg  <mandolaerik@gmail.com>
1328
1329         * lily/*-performer.cc: Converted try_music to listen_*
1330
1331         * lily/grob-info.cc, lily/engraver.cc: represent the cause of grob
1332         as a stream-event internally. Introduce event_cause (), deprecate
1333         music_cause ().
1334
1335         * scm/define-music-types.scm: Removed BusyPlayingEvent
1336         
1337 2006-07-19  Mats Bengtsson  <mabe@s3.kth.se>
1338
1339         * Documentation/user/advanced-notation.itely (Font selection):
1340         Document how to get a list of available fonts using 'lilypond
1341         -dshow-available-fonts blabla'.
1342
1343 2006-07-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
1344
1345         * GNUmakefile.in: filter lily-XXX.pdf files.
1346
1347         * scm/define-grob-interfaces.scm (bend-after-interface): add thickness.
1348
1349         * scm/define-grob-properties.scm (all-internal-grob-properties):
1350         remove delta-pitch. Use delta-position everywhere.
1351
1352         * scm/output-lib.scm (fall::print): use new order.
1353
1354         * scm/output-ps.scm (path): reorder arguments.
1355
1356         * scm/output-svg.scm (path): support for path primitive.
1357
1358         * input/regression/bend-after.ly: new file.
1359
1360         * Documentation/user/GNUmakefile ($(outdir)/%.pdf): foolproof
1361         recipe for eps -> pdf conversion.
1362
1363 2006-07-19  Erik Sandberg  <mandolaerik@gmail.com>
1364
1365         * lily/parser.yy, lily/lexer.ll: added some simplifications by
1366         Angelo Contardi.
1367
1368 2006-07-19  Graham Percival  <gpermus@gmail.com>
1369
1370         * input/manual/screech-boink.ly: moved to here.
1371
1372         * input/screech-boink.ly: deleted.
1373
1374         * scm/define-grob-properties.scm: clarify doc string.
1375
1376 2006-07-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
1377
1378         * Documentation/topdocs/NEWS.tely (Top): doc new feature.
1379
1380         * scm/output-ps.scm (path): define path.
1381
1382         * scm/define-stencil-commands.scm
1383         (ly:register-stencil-expression): add path.
1384
1385         * scm/define-music-properties.scm (all-music-properties): add delta-pitch.
1386
1387         * ly/engraver-init.ly: add Fall_engraver
1388
1389         * lily/parser.yy (music_function_event): allow musicfunction
1390         without music arg as music_function_event.
1391
1392         * lily/grob-scheme.cc (LY_DEFINE):
1393         ly:grob-robust-relative-extent. New function.
1394
1395         * scm/define-grobs.scm (all-grob-descriptions): add BendAfter
1396
1397         * scm/define-music-types.scm (music-descriptions): add BendAfterEvent.
1398
1399         * scm/output-lib.scm (fall::print): new function
1400
1401         * lily/fall-engraver.cc (stop_fall): new file.
1402
1403         * ly/music-functions-init.ly: alphabetise.
1404
1405         * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): pdf iso. eps as
1406         base.
1407
1408 2006-07-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
1409
1410         * VERSION (PATCH_LEVEL): bump version. Release 2.9.12
1411
1412         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
1413         doc pdftex usage.
1414
1415         * lily/translator-group.cc (connect_to_context): non const error message.
1416
1417         * Documentation/user/GNUmakefile ($(outdir)/%.pdf): update to use PDF
1418
1419         * scm/paper.scm (internal-set-paper-size): define landscape to #f
1420         if unset.
1421
1422         * scm/framework-ps.scm (convert-to-pdf): swap h and w in case of landscape. 
1423
1424         * stepmake/stepmake/texinfo-rules.make: strip DVI support.
1425
1426         * scm/framework-eps.scm (dump-stencils-as-EPSes): generate
1427         systems.pdftex too.
1428
1429         * scm/backend-library.scm (postscript->pdf): use -dEPSCrop for PDF.
1430
1431         * make/lilypond-vars.make (TEXINPUTS): add pdf output format.
1432
1433         * Documentation/topdocs/NEWS.tely (Top): add pdftex note.
1434
1435         * scm/output-ps.scm (resetrotation): use gsave/grestore for rotation.
1436
1437         * lily/main.cc (parse_argv): don't overwrite previous --formats string.
1438
1439         * scm/backend-library.scm (postscript->pdf): strip .eps too. 
1440
1441 2006-07-14  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1442
1443         * scm/layout-page-layout.scm: Define module, tidy code, use more
1444         functions iso. a single big one.
1445
1446         * scm/layout-page-dump.scm: move page dump functions used in two
1447         pass spacing to this file. Define module.
1448
1449         * scm/lily.scm (ly:load): don't load layout-page-layout.scm
1450          (separate module)
1451
1452         * ly/paper-defaults.ly: use module layout-page-layout.
1453
1454 2006-07-14  Erik Sandberg  <mandolaerik@gmail.com>
1455
1456         * lily/music.cc: Revised MusicEvent event class. It now contains
1457         event data directly instead of encapsulating it in music. The
1458         previously used class is renamed to OldMusicEvent.
1459
1460         * lily/stream-event.cc: Stream events are now probs.
1461         
1462         * lily/translator-group.cc, lily/translator.cc: Translators can
1463         now listen directly to stream events, by using macros
1464         [DECLARE,IMPLEMENT]_TRANSLATOR_LISTENER.
1465
1466         * lily/arpeggio-engraver.cc: Converted to use new event system
1467
1468         * THANKS: Corrected spelling mistake.
1469
1470 2006-07-12  Graham Percival  <gpermus@gmail.com>
1471
1472         * Documentation/user/SConscript, make/lilypond-vars.make,
1473         input/GNUmakefile: doc build looks in input/manual instead
1474         of input/test/
1475
1476         * input/manual/ GNUmakefile, SConscript: build files for
1477         input/manual/
1478
1479         * input/test/ various: some files moved to input/manual/ 
1480
1481         * Documentation/user/basic-notation.itely: small updates;
1482         thanks Kieren and Charles!
1483
1484 2006-07-12  Han-Wen Nienhuys  <hanwen@lilypond.org>
1485
1486         * VERSION (PACKAGE_NAME): release 2.9.11
1487
1488         * Documentation/topdocs/NEWS.tely (Top): update prop value 
1489
1490         * Documentation/user/basic-notation.itely (Tuplets): new property
1491         value.
1492
1493 2006-07-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
1494
1495         * python/convertrules.py (conv): tweaks. 
1496
1497         * VERSION (PATCH_LEVEL): bump version.
1498
1499         * python/convertrules.py (conv): add rule for
1500         tupletNumberFormatFunction.
1501
1502         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
1503         tupletNumberFormatFunction.
1504
1505         * scm/define-grobs.scm (all-grob-descriptions): calc TupletNumber
1506         text through 'text callback.
1507
1508         * lily/time-scaled-music-iterator.cc (construct_children): copy
1509         tweaks generated events.
1510
1511         * scm/define-context-properties.scm
1512         (all-user-translation-properties): remove tupletNumberFormatFunction
1513
1514         * lily/tuplet-engraver.cc (process_music): don't read
1515         tupletNumberFormatFunction
1516
1517         * scm/output-lib.scm (tuplet-number::calc-fraction-text): new
1518         function.
1519
1520 2006-07-11  Erik Sandberg  <mandolaerik@gmail.com>
1521
1522         * lily/global-context-scheme.cc: Separated ly:run-translator into
1523         smaller pieces.
1524
1525         * lily/score-engraver.cc, lily/score-performer.cc,
1526         scm/define-context-properties.scm: Make paper/midi output
1527         accessable as a context property.
1528
1529         * lily/score-translator.cc, lily/score-context.cc: Removed.
1530
1531 2006-07-07  Guido Amoruso  <guidonte@katamail.com>
1532
1533         * scm/ps-to-png.scm (Module): 
1534         * scm/framework-tex.scm (Module): 
1535         * scm/framework-ps.scm (Module): 
1536         * scm/backend-library.scm (Module): 
1537         * scm/framework-ps.scm: invoke gs with "-dDEVICEWIDTHPOINTS" and
1538         "dDEVICEHEIGHTPOINTS".
1539
1540 2006-07-04  Graham Percival  <gpermus@gmail.com>
1541
1542         * Documentation/user/ various: general improvements to
1543         "working with lilypond files" section.
1544
1545 2006-07-03  Erik Sandberg  <mandolaerik@gmail.com>
1546
1547         * lily/sequential-iterator.cc: Change the default get_music_list
1548         to read elements-callback music property
1549
1550         * scm/define-music-types.scm, scm/music-functions.scm: Cleaner
1551         processing of multimeasure rests. Softcoded
1552         sequential-music-iterator.
1553
1554         * lily/sequential-music-iterator.cc: Removed.
1555
1556 2006-06-28  Graham Percival  <gpermus@gmail.com>
1557
1558         * Documentation/user/basic-notation.itely: clarify \repeatTie.
1559
1560 2006-06-27  Erik Sandberg  <mandolaerik@gmail.com>
1561
1562         * lily/parser.yy: Wrap non-post-events in EventChords before
1563         assigning them to identifiers.
1564
1565 2006-06-27  Mats Bengtsson  <mabe@s3.kth.se>
1566
1567         * lily/bar-line.cc (compound_barline): Fix parenthesis error,
1568         gives correct vertical placement of \bar ":" in all staff
1569         sizes. Thanks Martial!
1570
1571 2006-06-26  Graham Percival  <gpermus@gmail.com>
1572
1573         * Documentation/user/invoking.itely : minor update from mailist.
1574
1575 2006-06-26  Erik Sandberg  <mandolaerik@gmail.com>
1576
1577         * lily/ various: Introduce stream events of types Prepare,
1578         OneTimeStep, CreateContext, AnnounceNewContext, RemoveContext,
1579         ChangeContext, SetProperty, RevertProperty, Override and Revert.
1580
1581         * lily/global-context*.cc: Time is now -inf before iteration
1582         starts.
1583
1584         * lily/include/context.hh: Removed unique_, init_
1585
1586         * Documentation/topdocs/NEWS: Make the feathered beam example
1587         avoid triggering a bug.
1588
1589 2006-06-24  Graham Percival  <gpermus@gmail.com>
1590
1591         * Documentation/user/ various: small additions from mailist.
1592
1593 2006-06-22  Mats Bengtsson  <mabe@s3.kth.se>
1594
1595         * ly/performer-init.ly: Add some missing links in the context
1596         hierarchy for MIDI output. There are probably some more missing!
1597
1598 2006-06-21  Graham Percival  <gpermus@gmail.com>
1599
1600         * Documentation/user/ various: minor spelling fixes;
1601         thanks Dave Luttinen!
1602
1603         * Documentation/user/ various: small clarifications;
1604         thanks Anthony Youngman!
1605
1606 2006-06-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
1607
1608         * po/fr.po: add \n appropriately.
1609
1610         * lily/lexer.ll: remove ? from version-seen?  
1611
1612 2006-06-19  John Mandereau  <john.mandereau@free.fr>
1613
1614         * po/fr.po; update translation, by Jean-Charles Malahieude and
1615         John Mandereau.
1616
1617 2006-06-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
1618
1619         * THANKS: add Markus Schneider.
1620
1621         * lily/tab-staff-symbol-engraver.cc: derive from Engraver, not
1622         Staff_symbol_engraver
1623
1624         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): don't
1625         replace staff_engraver
1626
1627         * lily/staff-symbol-engraver.cc (stop_spanner): announce end of
1628         spanner.
1629
1630         * lily/staff-collecting-engraver.cc
1631         (acknowledge_end_staff_symbol): new function
1632
1633         * lily/volta-engraver.cc (acknowledge_end_staff_symbol): new function. 
1634
1635         * lily/staff-collecting-engraver.cc
1636         (acknowledge_end_staff_symbol): new function.
1637
1638         * lily/main.cc: switch on relocation by default.
1639
1640 2006-06-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
1641
1642         * lily/spacing-spanner.cc (musical_column_spacing): set
1643         compound_fixed_note_space to 0.0. Document why.
1644
1645         * lily/simple-spacer.cc (is_sane): also have a kludge for numeric
1646         range of inverse_hooke_
1647         (Simple_spacer): init completely.
1648         (fits): const
1649         (get_line_configuration): don't use cols.resize(); it introduces
1650         initialized data.
1651
1652         * scm/framework-ps.scm (dump-page): add setstrokeadjust. 
1653
1654         * ps/music-drawing-routines.ps: remove selectfont L1 hack.
1655
1656         * lily/beaming-pattern.cc (best_splitpoint_index): urg, 2nd
1657         try. Divide by beatlength.
1658
1659         * input/regression/beaming-ternary-metrum.ly: update doc.
1660         add beatLength hack.
1661
1662         * scm/music-functions.scm (make-time-signature-set): add
1663         standard-beat-grouping. 
1664
1665 2006-06-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
1666
1667         * input/regression/tie-whole.ly: new file.
1668
1669         * lily/tie-formatting-problem.cc (set_column_chord_outline): don't
1670         cross center of note head in case of invisible stem. 
1671
1672 2006-06-16  Graham Percival  <gpermus@gmail.com>
1673
1674         * Documentation/user/ various: small fixes from mailist.
1675
1676 2006-06-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
1677
1678         * lily/breathing-sign.cc (offset_callback): idem.
1679
1680         * lily/align-interface.cc (align_to_fixed_distance): remove
1681         hungarian suffix.
1682
1683         * lily/beaming-pattern.cc (count_factor_twos): oops. We want
1684         x%2==0.
1685
1686 2006-06-15  Han-Wen Nienhuys  <hanwen@lilypond.org>
1687
1688         * VERSION (PACKAGE_NAME): release 2.9.9
1689
1690         * ly/lilypond-book-preamble.ly: add \version
1691
1692 2006-06-14  Han-Wen Nienhuys  <hanwen@lilypond.org>
1693
1694         * scripts/lilypond-book.py (PREAMBLE_LY): include
1695         lilypond-book-preamble.ly
1696
1697         * lily/stem.cc (get_beaming): return max of 0 and
1698         scm_ilength. Fixes slurring from/to beams.
1699
1700         * ly/lilypond-book-preamble.ly: new file.
1701
1702         * lily/slur.cc: add inspect-index feature.
1703
1704 2006-06-13  Graham Percival  <gpermus@gmail.com>
1705
1706         * Documentation/user/tutorial.itely: trivial fix.
1707
1708 2006-06-13  Erik Sandberg  <mandolaerik@gmail.com>
1709
1710         * lily/parser.yy, scm/ly-syntax-constructors.scm: Produce almost
1711         all non-event music in the parser via MAKE_SYNTAX.
1712
1713         * lily/parser-scheme.cc: Add ly:parser-error function
1714
1715         * scm/paper.scm: fix typo
1716
1717 2006-06-13  Han-Wen Nienhuys  <hanwen@lilypond.org>
1718
1719         * THANKS: add RT.
1720
1721         * lily/font-config.cc (init_fontconfig): add warning if cache_file
1722         is null.
1723
1724         * buildscripts/output-distance.py (test_compare_signatures):
1725         timing routines.
1726         (read_signature_file): use new signature format.
1727
1728         * scm/stencil.scm (write-system-signature): simpler signature
1729         format.
1730
1731         * lily/stem.cc (calc_stem_end_position): calc quantized-positions
1732         for beamed case. 
1733
1734         * lily/note-spacing.cc (stem_dir_correction): don't inspect
1735         stem_end_position, but estimate instead. 
1736
1737         * lily/tuplet-bracket.cc (calc_positions): look at
1738         stem-end-position for tuplet bracket slope. Fixes sloped tuplet
1739         brackets narrower than beams. 
1740
1741         * lily/lexer.ll: set version-seen? even if version is
1742         INVALID. 
1743
1744         * lily/rest.cc (y_offset_callback): bugfix: decide position
1745         override based on scm_is_number(). Fixes \rest on center staff
1746         line. 
1747
1748         * lily/beaming-pattern.cc (best_splitpoint_index): fix beaming
1749         patterns for 16th triplets.
1750
1751 2006-06-10  Graham Percival  <gpermus@gmail.com>
1752
1753         * Documentation/user/ page.itely, global.itely: editing
1754         and reorg.
1755
1756         * Documentation/user/ various: findex -> funindex.
1757
1758 2006-06-10  Erik Sandberg  <mandolaerik@gmail.com>
1759
1760         * lily/time-scaled-music-iterator.cc: Use tupletSpannerDuration to
1761         insert extra tuplet events.
1762
1763 2006-06-10  Graham Percival  <gpermus@gmail.com>
1764
1765         * Documentation/user/programming-interfaces.itely: add
1766         info from NEWS.
1767
1768         * python/convertrules.py: add annotatefoo -> annotate-foo
1769         rules.
1770
1771         * Documentation/user/global.itely: start editing.
1772
1773         * Documentation/user/page.itely: major editing, new spacing
1774         docs.
1775
1776 2006-06-10  Han-Wen Nienhuys  <hanwen@lilypond.org>
1777
1778         * scm/define-markup-commands.scm (wordwrap-markups): use
1779         output-def 'line-width if undefined.
1780
1781         * HACKING: trim outdated info.
1782
1783 2006-06-09  Mats Bengtsson  <mabe@s3.kth.se>
1784
1785         * scm/define-grobs.scm (all-grob-descriptions): Add
1786         line-spanner-interface to all grobs that already have
1787         text-spanner-interface or dynamic-text-spanner-interface
1788
1789         * scm/page.scm: Rename annotate{headers,systems,page}->
1790         annotate-*
1791
1792         * input/regression/page-spacing.ly,
1793         input/regression/page-layout-manual-position.ly: idem
1794
1795 2006-06-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
1796
1797         * lily/line-spanner.cc: cleanup property list.
1798
1799         * scripts/lilypond-book.py (find_toplevel_snippets): don't use
1800         generator expressions (2.3 compat). 
1801
1802 2006-06-09  Mats Bengtsson  <mabe@s3.kth.se>
1803
1804         * lily/vertical-align-engraver.cc: Make sure that the
1805         align{Above,Below}Context properties are included in the automatic
1806         documentation.
1807
1808 2006-06-08  Joe Neeman  <joeneeman@gmail.com>
1809
1810         * scm/paper-system.scm (paper-system-annotate): also annotate the
1811         estimated pure-Y-extent
1812
1813         * scm/define-grobs.scm: add pure-Y-extent and pure-Y-offset functions
1814
1815         * lily/system.cc (break_into_pieces): set the estimated height
1816         of each child system
1817
1818         * lily/stem.cc (pure_height): new pure-Y-extent callback
1819
1820         * lily/staff-symbol-referencer.cc (callback): don't destroy
1821         the staff-position property
1822
1823         * lily/hara-kiri-group-spanner.cc (request_suicide): split
1824         consider_suicide into two functions
1825
1826         * lily/constrained-breaking.cc (resize): use the new pure
1827         callbacks to estimate the height of a system
1828
1829         * lily/axis-group-interface.cc (pure_group_height): new
1830         side-effect-free VerticalAxisGroup height-callback
1831
1832         * lily/align-interface.cc (get_extents_aligned_translates):
1833         split align_elements_to_extents into two functions
1834         (get_pure_child_y_translation): new function
1835
1836         * lily/grob.cc: new functions for pure-Y-extent and pure-Y-offset
1837
1838         * lily/item.cc: new functions pure_is_visible and spanned_rank_iv
1839
1840         * lily/paper-score.cc: cache break_indices and columns
1841
1842         * lily/side-position-interface.cc: new pure-Y-extent callbacks
1843         
1844 2006-06-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
1845
1846         * lily/font-config.cc (init_fontconfig): do the init if
1847         cache_file, but don't look at cache_file.
1848
1849         * input/regression/quote-tie.ly: new file.
1850
1851         * lily/tie-engraver.cc (struct Head_event_tuple): add end_moment_
1852         to Head_event_tuple, so we deal gracefully with ties on
1853         cue-endings.
1854
1855         * lily/pango-font.cc (pango_item_string_stencil): type correctness
1856         for FcChar8*
1857
1858 2006-06-08  Graham Percival  <gpermus@gmail.com>
1859
1860         * input/test/ smart-transpose.ly, reverse-music.ly:
1861         \applyMusic to music functions update, thanks Michael!
1862
1863 2006-06-07  Graham Percival  <gpermus@gmail.com>
1864
1865         * input/test/ add-staccato.ly, add-text-script.ly,
1866         unfold-all-repeats.ly, music-box.ly: \applyMusic to
1867         music functions update, thanks to Michael Meixner.
1868
1869         * Documentation/user/music-glossary.tely: small fix
1870         from Francisco.
1871
1872         * Documentation/user/ various: minor additions from mailist.
1873
1874         * Documentation/user/lilypond.tely, basic-notation.itely:
1875         small test of @funindex.  (works here)
1876
1877         * input/test/font-table.ly: reduce size to partially
1878         de-ugly version in manual.
1879
1880         * Documentation/user/page.itely: new file (split former
1881         "global issues" into "page settings" and "non-musical
1882         output".
1883
1884         * Documentation/user/ various: fix @ref{}s to match
1885         new chapter names (above).
1886
1887 2006-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
1888
1889         * SConstruct (LILYPONDPREFIX): Bootstrap fix.
1890
1891 2006-06-06  Graham Percival  <gpermus@gmail.com>
1892
1893         * Documentation/user/advanced-notation.itely: add example
1894         for segno/coda on barline.
1895
1896         * tex/texinfo.tex: merge from upstream.
1897
1898 2006-06-06  Jan Nieuwenhuizen  <janneke@gnu.org>
1899
1900         * scripts/lilypond-book.py (process_snippets): Argument fix.
1901
1902         * SConstruct:
1903         * buildscripts/builder.py:
1904         * lily/SConscript: 
1905         * mf/SConscript: 
1906         * Documentation/user/SConscript:  More SCons fixes.
1907
1908 2006-06-03  Jan Nieuwenhuizen  <janneke@gnu.org>
1909
1910         * lily/font-config.cc (init_fontconfig): Only initialize if
1911         global cache_file is found.
1912
1913 2006-06-06  Erik Sandberg  <mandolaerik@gmail.com>
1914
1915         * ly/music-functions-init.ly: Updated \overrideProperty to use the
1916         new \applyOutput.
1917
1918 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
1919
1920         * VERSION (PACKAGE_NAME): release 2.9.8
1921
1922         * lily/ledger-line-engraver.cc (stop_translation_timestep): new
1923         function. Delay ledger modifying ledgered grobs to
1924         stop_translation_timestep(), to ensure that we're ledgering
1925         according to the new spanner.
1926         (acknowledge_staff_symbol): don't check for non-NULL
1927         staff_sym->get_bound()
1928
1929         * lily/staff-symbol-engraver.cc (start_spanner): set left bound on
1930         creation.
1931
1932         * Documentation/pictures/GNUmakefile (XPM_FILES): src-wildcard for
1933         pictures too.
1934
1935         * GNUmakefile.in (dist-toplevel-txt-files): dist aclocal.m4
1936         directly from srcdir/stepmake/aclocal.m4
1937         
1938         * Documentation/misc/GNUmakefile (TEXTS): use src-wildcard for
1939         disting MISC files.
1940
1941         * lily/simple-spacer.cc (get_column_desc): desc -> description.
1942
1943 2006-06-06  Joe Neeman  <joeneeman@gmail.com>
1944
1945         * lily/simple-spacer.cc (get_line_configuration): add
1946         keep-inside-line rods
1947         (struct Column_desc): add constructor
1948         (struct Rod_desc): add constructor
1949         (get_line_forces): check for forced page breaks here too
1950
1951         * lily/instrument-name-engraver.cc (acknowledge_axis_group): prevent
1952         support/elements cycles between InstrumentNames and AxisGroups
1953
1954 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
1955
1956         * config.make.in (METAFONT): remove MAKEINFO_VERSION
1957
1958         * stepmake/stepmake/topdocs-targets.make (make-txt-files): define
1959         make-txt-files target.
1960
1961         * stepmake/stepmake/toplevel-targets.make (do-top-doc): use
1962         make-txt-files target.
1963
1964         * configure.in (LINK_GXX_STATICALLY): $srcdir for readlink.py
1965
1966         * stepmake/stepmake/generic-vars.make (distdir): create dist in
1967         top-build-dir.
1968
1969 2006-06-06  Jürgen Reuter  <reuter@ipd.uka.de>
1970
1971         * Documentation/user/instrument-notation.itely,
1972         input/regression/breathing-sign-ancient.ly,
1973         input/test/divisiones.ly: Removed redundant property settings for
1974         vaticana contexts.
1975
1976         * ly/gregorian-init.ly: Rewrote \versus and \responsum in order to
1977         fix lyrics alignment problems.  They are implemented now as scheme
1978         functions that add the appropriate unicode char to the first lyric
1979         event rather than adding a separate lyric event.  Minor edit of
1980         comments.
1981
1982 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
1983
1984         * GNUmakefile.in (dist-toplevel-txt-files): new target. Don't
1985         pollute src dir with built .txt files, but install directly from
1986         Documentation/topdocs/out/
1987
1988         * buildscripts/output-distance.py
1989         (ComparisonData.create_html_result_page): put version/directories
1990         in table header.
1991
1992         * Documentation/topdocs/NEWS.tely (Top): document spacing section
1993         feature.
1994
1995         * configure.in (LINK_GXX_STATICALLY): use readlink.py to resolve links.
1996         Patch by Karl Hammar
1997         
1998         * buildscripts/readlink.py: add  file.
1999         Patch by Karl Hammar
2000
2001 2006-06-06  Joe Neeman  <joeneeman@gmail.com>
2002
2003         * lily/tuplet-number.cc (print): prevent stencil from being
2004         garbage collected.
2005
2006 2006-06-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
2007
2008         * scm/stencil.scm (write-system-signature): explicitly 
2009         -well, superfluously- close output port.
2010
2011         * buildscripts/output-distance.py (main): oops. Add extra argument.
2012
2013 2006-06-05  Graham Percival  <gpermus@gmail.com>
2014
2015         * Documentation/user/music-glossary.tely: clarified example
2016         from Francisco Vila, thanks!
2017
2018 2006-06-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
2019
2020         * input/regression/spacing-section.ly: new file.
2021
2022         * lily/input.cc (programming_error): new function.
2023
2024         * lily/spacing-engraver.cc (try_music): new function. Accept
2025         spacing-section-event
2026
2027         * lily/spacing-spanner.cc (set_springs): take slices of all
2028         columns for spacing.
2029
2030         * lily/include/paper-column.hh (class Paper_column): add
2031         Paper_column::compare.
2032
2033         * ly/spanners-init.ly (newSpacingSection): add newSpacingSection.
2034
2035         * scm/define-music-types.scm (music-descriptions): add
2036         SpacingSectionEvent
2037
2038         * lily/music-iterator.cc (report_event): use programming_error for
2039         sending non-event error.
2040
2041         * lily/input.cc (programming_error): new function
2042
2043         * buildscripts/output-distance.py (main): use compare-XXX for
2044         compare files.
2045         (main): --threshold option, default at 0.30
2046
2047         * output-distance.py (main): add --threshold option.
2048
2049 2006-06-04  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2050
2051         * scm/paper-system.scm (paper-system-annotate): fix problem when
2052         annotating an empty system
2053
2054 2006-06-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
2055
2056         * GNUmakefile.in: reinstate old web tar/copying.
2057
2058 2006-06-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
2059
2060         * lily/lyric-combine-music-iterator.cc (find_voice): return 0 if
2061         nothing changes. (Erik S) 
2062
2063         * lily/percent-repeat-iterator.cc (get_music_list): fix repeat
2064         count. (Erik S)
2065
2066 2006-05-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2067
2068         * scm/define-markup-commands.scm (whiteout): do not force
2069         foreground color of argument markup to black.
2070
2071         * scm/stencil.scm (annotate-y-interval): put arrow dimension at
2072         the left of the arrow, instead of below the arrow name, so that,
2073         when two little arrows are vertically stacked, their dimensions
2074         and name should not overlap. Add a color key parameter.
2075
2076         * scm/paper-system.scm (paper-system-annotate): Annotate
2077         next-space+next-padding instead of next-space. Annotate space
2078         between next-padding and next-space+padding, respectively, and
2079         following system extent and refpoint-Y-extent. Use colors.
2080
2081         * scm/page.scm (annotate-page): translate annotations slightly to
2082         the right.
2083
2084 2006-06-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
2085
2086         * lily/figured-bass-position-engraver.cc (acknowledge_end_slur):
2087         fix for x-staff slurs. Thanks Joe!
2088
2089         * buildscripts/output-distance.py
2090         (SystemLink.output_expression_change_count): keep track of changed
2091         details, and dump in details html page.
2092  
2093         * input/regression/figured-bass-staff.ly: add note about setting
2094         properties in Staff context.
2095
2096         * lily/figured-bass-position-engraver.cc (acknowledge_slur):
2097         add slurs and ties to support too.
2098
2099         * buildscripts/output-distance.py (main): set dest_dir
2100         argument. Add --max-count option.
2101
2102 2006-06-02  Jürgen Reuter  <reuter@ipd.uka.de>
2103
2104         * ly/gregorian-init.ly: Converted to utf-8.  Added memorable
2105         shortcuts for special unicode chars that are useful in chant
2106         notation.  Revised exisiting and added new comments.
2107
2108 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
2109
2110         * make/mutopia-rules.make: remove duplicate recipe.
2111
2112 2006-06-02  Werner Lemberg  <wl@gnu.org>
2113
2114         * tex/texinfo.cnf: Fix typo (\euro -> \minus).
2115         Add support for U+0132 (IJ) and U+0133 (ij).
2116
2117 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
2118
2119         * buildscripts/output-distance.py (FileLink): new class. collect
2120         info systems from one .ly file. 
2121         (FileLink.link_files_for_html): further tweaks.
2122
2123 2006-06-02  Graham Percival  <gpermus@gmail.com>
2124
2125         * tex/texinfo.tex: partial fix for @funindex.
2126
2127         * Documentation/user/macros.tely: uncomment @funindex (doesn't
2128         break anything).
2129
2130 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
2131
2132         * make/mutopia-vars.make (ly_examples): replace .ly.txt with .ly
2133
2134         * tex/texinfo.tex (sectionheading, q.v.): call \quoteexpand for
2135         @example too. Backportme.
2136
2137 2006-06-02  Graham Percival  <gpermus@gmail.com>
2138
2139         * tex/texinfo.cnf: added UTF-8 support for texinfo; patch
2140         from Werner Lemberg.
2141
2142 2006-06-02  Paco (Francisco Vila)  <fravd@ya.com>
2143
2144         * Documentation/user/music-glossary.tely: additional spanish
2145         updates and a lyrics fix in an example.
2146
2147 2006-06-02  Jürgen Reuter  <reuter@ipd.uka.de>
2148
2149         * scm/define-grob-properties.scm: Previous patch contained
2150         spurious line from another patch not yet committed.  Fixed.
2151
2152         * scm/define-grob-properties.scm: Add missing doc strings for
2153         ancient notation.
2154
2155 2006-06-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
2156
2157         * buildscripts/output-distance.py
2158         (ComparisonData.write_text_result_page): separate the scores, sort
2159         by geo_score.
2160
2161         * scm/framework-eps.scm (output-classic-framework): start at 1 for
2162         system signatures.
2163
2164         * buildscripts/output-distance.py (me_path): use argv[0] for
2165         sys.path extension
2166         (ComparisonData.img_cell): use colored borders.
2167
2168         * scm/stencil.scm (write-system-signature): escape newlines too.
2169         (write-system-signature): use (1,-1) interval for empty interval
2170
2171 2006-01-01  Graham Percival  <gpermus@gmail.com>
2172
2173         * Documentation/user/music-glossary.tely: Spanish updates
2174         from Francisco Vila.
2175
2176         * Documentation/user/lilypond-book.itely: addition from
2177         Vaclav Smilauer.
2178
2179         * Documentation/user/ various: edits, small additions
2180         from mailist, etc.
2181
2182 2006-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
2183
2184         * GNUmakefile.in (tree-lib-prefix-current):
2185         (tree-share-prefix-current): Use version number in tree, add
2186         `current' symlinks.
2187
2188 2006-06-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
2189
2190         * GNUmakefile.in: write VERSION, again.
2191
2192         * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
2193         $(outdir)/%.ly $(outdir)/%.ps): dump sigs for normal files too.
2194
2195         * stepmake/aclocal.m4: robuster version detection.
2196
2197         * buildscripts/output-distance.py
2198         (ComparisonData.create_html_result_page): copy only if file
2199         exists, fixup src paths.
2200
2201         * stepmake/bin/add-html-footer.py (built): junk gulp_file()
2202
2203 2006-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
2204
2205         * stepmake/aclocal.m4: Robustification for (gcc) version detection.
2206         Another datarootdir reto.
2207
2208         * cygwin/postinstall-lilypond.sh: Do not fail if info docs aren't
2209         available.  This should be moved to postinstall-lilypond-doc.
2210
2211 2006-05-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
2212
2213         * GNUmakefile.in: simplify local-WWW-post. 
2214         remove -type l from find.
2215
2216         * buildscripts/output-distance.py (ComparisonData.compare_trees):
2217         fixes. Don't follow symlinks.
2218         (ComparisonData.create_html_result_page): remove previous results.
2219         insert ../python in path.
2220
2221         * scripts/lilypond-book.py (PREAMBLE_LY): spacing fixes.
2222
2223 2006-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
2224
2225         * config.make.in (datadir): Add datarootdir to silence autoconf.
2226
2227         * stepmake/aclocal.m4: Update for autoconf-2.59d.
2228
2229 2006-05-31  Erlend Aasland  <erlenda@gmail.com>
2230
2231         * dynamic-engraver.cc: fix bug (dynamics collide with accidentals)
2232
2233         * scm/output-ps.scm (repeat-slash): fix a bug that made repeat
2234         slash beams too wide.
2235
2236 2006-05-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
2237
2238         * VERSION: release 2.9.7
2239         
2240 2006-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
2241
2242         * lily/relocate.cc (read_relocation_dir): Do not blindly
2243         dereference DIR.
2244
2245 2006-05-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
2246
2247         * lily/parser.yy: replace THIS by PARSER
2248
2249         * Documentation/index.html.in: add link to test-results.html page.
2250
2251         * Documentation/topdocs/NEWS.tely (Top): update NEWS entry.
2252
2253         * scm/translation-functions.scm (format-bass-figure): translate
2254         digits over 10 to the left
2255
2256         * scm/define-markup-commands.scm (translate-scaled): new markup.
2257
2258         * mf/feta-nummer-code.mf (code): overshoot the topright tip of the
2259         7 glyph. 
2260
2261         * ly/engraver-init.ly: add Figured_bass_engraver
2262
2263         * lily/engraver-group.cc (acknowledge_grobs): use start/stop drul.
2264
2265         * lily/figured-bass-engraver.cc (clear_spanners): use everywhere.
2266
2267         * lily/score-engraver.cc (announce_grob): only note START announces.
2268
2269         * lily/include/engraver-group.hh (Translator_group):
2270         acknowledge_hash_table_ is now drul.
2271
2272         * lily/engraver.cc (announce_end_grob): new method.
2273
2274         * lily/include/grob-info.hh (class Grob_info): add start_end_ member.
2275
2276         * lily/translator-dispatch-list.cc (create): take start_end argument.
2277
2278         * lily/include/translator.hh (TRANSLATOR_DECLARATIONS): change
2279         acknowledge_static_array_ to drul
2280
2281         * lily/include/translator.icc (ADD_END_ACKNOWLEDGER): new macro.
2282
2283         * scm/define-grob-interfaces.scm
2284         (bass-figure-alignment-interface): add bass-figure-alignment-interface
2285
2286         * scm/define-grobs.scm (all-grob-descriptions): add
2287         BassFigureAlignmentPositioning
2288
2289         * ly/Welcome-to-LilyPond-MacOS.ly: include in LilyPond, so version
2290         number stays up to date. Backportme.
2291
2292 2006-05-30  Mats Bengtsson  <mabe@s3.kth.se>
2293
2294         * Documentation/user/basic-notation.itely (Bar lines): Document
2295         the "||:" bar type. 
2296
2297 2006-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
2298
2299         * buildscripts/builder.py: Remove --ly option/target from mf-to-table.
2300
2301         * scripts/lilypond-book.py: Bugfix: do not blindly attempt
2302         .../current hack if LILYPONDPREFIX is fine.  Fixes `scons doc'
2303         build.
2304
2305         * Resurrect `scons lily' build.
2306
2307         * SConstruct (symlink_tree): Bugfix: link
2308         music-drawing-routines.ps to file iso directory.
2309
2310         * lily/SConscript: Remove kpath-guile from LIBS.
2311
2312         * SConstruct (libdir_package_version): Typo.
2313         (configure): Comment-out fontforge for lack of fontforge.pc .
2314         Also add libdir* to environment.
2315
2316 2006-05-30  Graham Percival  <gpermus@gmail.com>
2317
2318         * Documentation/user/ various: minor additions from mailist and
2319         editing.
2320
2321 2006-05-30  Paco <fravd@ya.com>
2322
2323         * Documentation/user/music-glossary.tely: numerous corrections and
2324         some new translations.
2325
2326 2006-05-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
2327
2328         * BackportmeStart.
2329         
2330         * buildscripts/output-distance.py
2331         (ComparisonData.create_html_result_page): new routine: summarise
2332         results in HTML page with images. 
2333         (ComparisonData.create_text_result_page): create summary text files too.
2334
2335         * GNUmakefile.in (web-ext): package .signature files too. They
2336         compress well. 
2337
2338         * scm/stencil.scm (write-system-signature): typo.
2339
2340         * GNUmakefile.in: create web-root/VERSION to help upload scripts.
2341
2342         * scm/stencil.scm (write-system-signature): better escaping.
2343         only write signature for music systems, not for markup systems.
2344
2345         * scm/framework-ps.scm (output-framework): dump-signatures support
2346         for plain output.
2347
2348         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): add -ddump-signatures.
2349
2350         * scm/framework-ps.scm (write-preamble): redefine mark_URI to nop
2351         for -dno-point-and-click
2352
2353         * lily/grob.cc (get_print_stencil): don't read
2354         point_and_click_global to determine whether to set grob-cause.
2355
2356 2006-05-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
2357
2358         * buildscripts/output-distance.py (main): new function.
2359         (ComparisonData): new class.
2360
2361         * lily/ledger-line-engraver.cc (acknowledge_staff_symbol): be more
2362         careful with generating new LedgerLineSpanners.
2363
2364         * lily/ledger-line-spanner.cc (set_spacing_rods): suicide if no staff.
2365
2366         * ly/engraver-init.ly: remove Ledger_line_engraver from Voice
2367         context. This fixes double ledger lines in output. 
2368
2369         * lily/system.cc (get_paper_system): remove 3 layer limit.
2370
2371         * buildscripts/output-distance.py (SystemLink.distance): new
2372         file. Compare signatures.
2373
2374         * python/safeeval.py (SafeEval.visitUnarySub): new file.
2375
2376         * lily/grob-array.cc (remove_duplicates): rename from
2377         uniq(). Sort before calling uniq() so it actually works.
2378
2379 2006-05-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
2380
2381         * scripts/lilypond-book.py (Lilypond_file_snippet.ly): strip
2382         \version from lilypond file snippet.
2383         (Lilypond_file_snippet.ly): oops. typo.
2384         (find_toplevel_snippets): urgh. again.
2385
2386         * lily/system.cc (get_paper_systems): uniq all_elements_ , to
2387         prevent duplicated broken items in output.
2388
2389         * scm/framework-eps.scm (output-classic-framework): only dump if
2390         dump-signatures is set.
2391
2392         * scm/lily.scm (define-scheme-options): add dump-signatures option.
2393
2394         * scm/stencil.scm (write-system-signature): new routine: write
2395         python parseable signature of a separate paper system.
2396         BackportmeEnd.
2397         
2398 2006-05-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
2399
2400         * lily/stanza-number-engraver.cc (process_music): use is_markup()
2401         iso is_string().
2402         include header.
2403
2404 2006-05-25  Erik Sandberg  <mandolaerik@gmail.com>
2405
2406         * translator-group.cc: send music events to engravers in
2407         non-bottom contexts.
2408
2409         * tuplet-engraver.cc: process tuplet brackets in correct order.
2410
2411 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
2412
2413         * stepmake/aclocal.m4: STEPMAKE_PYTHON(): clear cached value since
2414         arg 2 might point us to a new binary (patch by Karl Hammar)
2415         
2416 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
2417
2418         * VERSION (PACKAGE_NAME): release 2.9.6
2419
2420         * Documentation/topdocs/NEWS.tely (Top): trim explanation. 
2421
2422         * Documentation/user/*.itely: 2nd
2423         attempt: replace funindex -> findex globally.
2424
2425 2006-05-24  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2426
2427         * input/no-notation/display-lily-tests.ly: fix \applyOutput
2428         test. Add \break, \pageBreak, \pageTurn, etc, tests.
2429
2430         * scm/define-music-display-methods.scm: display methods for
2431         breaks. Fix \applyOutput.
2432
2433 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
2434
2435         * Documentation/user/macros.itexi: comment out funindex expansion. 
2436
2437         * Documentation/user/music-glossary.tely: junk \oldaddlyrics
2438         everywhere.
2439
2440         * GNUmakefile.in: fix wildcarding for scrips/out/ links. Thanks
2441         Karl Hammar. Backportme.
2442  
2443         * Documentation/user/advanced-notation.itely (Balloon help): idem.
2444
2445         * Documentation/user/changing-defaults.itely (Creating contexts): idem.
2446
2447         * Documentation/user/programming-interface.itely (Running a
2448         function on all layout objects): idem.
2449
2450         * Documentation/user/introduction.itely (Automated engraving):
2451         update \applyOutput syntax
2452
2453         * lily/lyric-combine-music-iterator.cc (start_new_syllable):
2454         remove debugging hook.
2455
2456         * configure.in (LINK_GXX_STATICALLY): use "" to allow $
2457         expansion. 
2458
2459         * Documentation/user/GNUmakefile (TEXI2DVI_FLAGS): add -E.
2460
2461         * stepmake/stepmake/texinfo-rules.make ($(outdir)/%.dvi): add
2462         TEXI2DVI_FLAGS to texi2dvi invocation. 
2463
2464 2006-05-24  Erik Sandberg  <mandolaerik@gmail.com>
2465
2466         * lily/chord-tremolo-*.cc: Reworked how \repeat "tremolo"
2467         works. More work is done by iterator now, and engraver has been
2468         very much simplified.
2469
2470         * lily/translator-group.cc: try_music is now invoked through a
2471         listener
2472
2473         * lily/*-iterator.cc: Massive cleanups. Junked
2474         try_music_in_children globally. Renamed try_music to report_event,
2475         and made that method descend to a bottom context automatically.
2476
2477         * lily/event-iterator.cc: New file.
2478
2479         * lily/output-property-iterator.cc,
2480         lily/old-lyric-combine-music-iterator.cc: Removed.
2481
2482         * python/convert-rules.py: Modified the syntax for \applyOutput.
2483
2484 2006-05-23  Graham Percival  <gpermus@gmail.com>
2485
2486         * stepmake/stepmake/texinfo-rules.make: added -E, allows pdf doc
2487         creation.
2488
2489         * Documentation/user/ various: stuff that might have helped
2490         to fix the pdf creation, plus some minor doc additions.
2491
2492         * Documentation/user/changing-defaults.itely: remove @b from
2493         @b{ @internasref{foo}}; this breaks texi2dvi -E.
2494
2495 2006-05-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
2496
2497         * lily/beaming-pattern.cc (beamify): deal with negative start
2498         moments for beaming patterns.
2499
2500 2006-05-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
2501
2502         * lily/beaming-info.cc (beamify): new function: read beatLength
2503         and beatGrouping from context. 
2504
2505         * input/regression/beam-beat-grouping.ly (Module): new file.
2506
2507         * input/regression/beam-unconnected-beamlets.ly (Module): new file.
2508
2509         * lily/beam.cc (get_beam_segments): generate events for
2510         max_connect_ case too.
2511         (get_beam_segments): read Stem::max-beam-connect.
2512
2513         * input/regression/beam-single-stem.ly: new file.
2514
2515         * lily/stem.cc (set_beaming): use #f as signaling value for
2516         beamcount 0.
2517
2518         * lily/beam-engraver.cc (typeset_beam): set right bound if unset.
2519
2520         * lily/beam.cc (set_beaming): read clip-edges property.
2521         (calc_direction): don't suicide for single stem.
2522
2523         * lily/beaming-info.cc (best_splitpoint_index): take bool*
2524         argument, remove 1<<15 hack. Remove clip_edges() 
2525
2526         * lily/hairpin.cc (print): only do padding for nonmusical bounds
2527
2528 2006-05-21  Graham Percival  <gpermus@gmail.com>
2529
2530         * Documentation/user/basic-notation.itely: reorg.
2531
2532         * Documentation/user/ various: minor fixes.
2533
2534 2006-05-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
2535
2536         * lily/stencil-expression.cc (register_stencil_head): opps, append
2537         to cdr of static SCM object.
2538
2539 2006-05-19  Graham Percival  <gpermus@gmail.com>
2540
2541         * Documentation/user/README.txt, lilypond.tely, macros.itexi:
2542         update framework for command index.  DOC WRITERS: use @funindex
2543         instead of @cindex @code{}.
2544
2545         * Documentation/user/ various: replace @cindex @code{} => @funindex
2546
2547 2006-05-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
2548
2549         * lily/beam.cc (set_stem_lengths): trigger 'beaming callback, in
2550         case positions is set manually. 
2551
2552 2006-05-18  Erik Sandberg  <mandolaerik@gmail.com>
2553         
2554         * scm/ly-syntax-constructors.scm: New file. Converted a few syntax
2555         rules to Scheme.
2556
2557 2006-05-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
2558
2559         * Documentation/user/changing-defaults.itely (Contexts explained):
2560         use absolute dimension for @image.
2561
2562         * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): generate PNG
2563         out image for illustration too.
2564         ($(outdir)/%.png): add more png <-> eps rules. 
2565
2566 2006-05-17  Graham Percival  <gpermus@gmail.com>
2567
2568         * Documentation/user/ various: remove trailing whitespace, cosmetic
2569         change to reduce changes produced by diff.
2570
2571 2006-05-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
2572
2573         * lily/main.cc (do_chroot_jail): correctness tweak.
2574
2575         * python/lilylib.py (system): import subprocess in system () only.
2576
2577         * scripts/*.py: use TARGET_PYTHON iso PYTHON. Backportme.
2578
2579         * make/substitute.make (ATVARIABLES): add TARGET_PYTHON as subst
2580         variable. Backportme.
2581
2582 2006-05-17  Erik Sandberg  <mandolaerik@gmail.com>
2583         
2584         * lily/parser.yy: Change all syntax rules of type Music to SCM type
2585
2586 2006-05-17  Werner Lemberg  <wl@gnu.org>
2587
2588         * lily/lexer.ll (init_signature_has_table): Add
2589         `scm-scm-music-music'.
2590
2591         * lily/parser.yy (MUSIC_FUNCTION_SCM_SCM_MUSIC_MUSIC): New token.
2592         (Generic_prefix_music_scm): Add rule for it.
2593
2594         * lily/quote-iterator.cc (Quote_iterator::process): Handle
2595         `quoted-transposition' property.
2596
2597         * ly/music-functions-init.ly (transposedCueDuring): New function.
2598
2599         * scm/define-music-properties.scm (all-music-properties): Updated.
2600
2601         * Documenation/topdocs/NEWS.itely: Document it.
2602
2603 2006-05-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
2604
2605         * python/lilylib.py (system): move import subprocess to system()
2606         definition. 
2607
2608         * python/convertrules.py (conv): fix convert-ly rules for 2.9.4
2609
2610         * VERSION (PATCH_LEVEL): release 2.9.5
2611         
2612         * Documentation/topdocs/INSTALL.texi (Top): update versions and
2613         build instructions. 
2614
2615         * ly/engraver-init.ly: switch on hairpinToBarline by default.
2616
2617 2006-05-16  Graham Percival  <gpermus@gmail.com>
2618
2619         * Documentation/user/basic-notation.itely: editing from Dave, thanks!
2620
2621         * Documentation/user/ various: minor fixes.
2622
2623 2006-05-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
2624
2625         * Documentation/topdocs/NEWS.tely (Top): add hairpinToBarline feature.
2626
2627 2006-05-16  Mats Bengtsson  <mabe@s3.kth.se>
2628
2629         * Documentation/user/advanced-notation.itely (Instrument names):
2630         Modified obsolete instruction on how to move instrument names away
2631         from the staves. Hmm, at second thought the bug probably has been
2632         solved, so the full bug description should probably be removed.
2633
2634 2006-05-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
2635
2636         * lily/dynamic-engraver.cc (typeset_all): hang ending on
2637         currentCommandColumn. 
2638
2639         * lily/hairpin.cc (print): also add padding for non-neighbor
2640         hairpin bounds.
2641
2642         * scm/define-context-properties.scm
2643         (all-user-translation-properties): add hairpinToBarline
2644
2645         * input/regression/hairpin-to-barline.ly: new file.
2646
2647         * lily/context.cc (internal_send_stream_event): thinko fix.
2648
2649         * lily/tie.cc (set_default_control_points): robustness fix.
2650
2651         * python/musicxml.py (Part.interpret): don't complain about
2652         incomplete measures.
2653
2654         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): only add
2655         new music if last_event_chord() returned None.
2656
2657         * python/musicxml.py (Part.interpret): skip back over chord notes.
2658
2659 2006-05-16  Erik Sandberg  <mandolaerik@gmail.com>
2660         
2661         * lily/percent-repeat-engraver.cc, lily/parser.yy,
2662         lily/define-music-types.cc, lily/percent-repeat-iterator.cc,
2663         lily/slash-repeat-engraver.cc,
2664         lily/include/percent-repeat-iterator.hh: Rework percent repeats:
2665         iterator sends PercentEvents
2666
2667         * lily/time-scaled-music-iterator.cc, lily/tuplet-engraver.cc:
2668         rework tuplets: send start/stop events to engraver
2669
2670         * lily/context.cc, lily/music.cc, lily/context-scheme.cc: Add
2671         dispatchers event-source and events-below to Context
2672         
2673 2006-05-15  Graham Percival  <gpermus@gmail.com>
2674
2675         * Documentation/user/README.txt: update info for doc writers.
2676
2677         * Documentation/user/programming-interface.itely: integrate
2678         Nicolas' fixes for chapter rewrite.
2679
2680         * Documentation/user/ various: minor fixes.
2681
2682 2006-05-15  Han-Wen Nienhuys  <hanwen@lilypond.org>
2683
2684         * lily/clef-engraver.cc: cleanup.
2685
2686         * Documentation/user/GNUmakefile: dist context-example.eps too.
2687
2688         * lily/key-engraver.cc (create_key): use
2689         explicitKeySignatureVisibility for cancellation too. 
2690
2691         * lily/font-config.cc (init_fontconfig): don't close file if
2692         f==NULL. 
2693
2694 2006-05-15  Erlend Aasland  <erlenda@gmail.com>
2695
2696         * Documentation/topdocs/NEWS.tely: niente and rotation news
2697
2698 2006-05-14  Erlend Aasland  <erlenda@gmail.com>
2699
2700         * lily/include/stencil.hh
2701         * lily/stencil.cc (rotate): new function. Makes it possible
2702         to rotate a stencil around a given offset.
2703
2704         * lily/grob.cc (get_print_stencil): add rotation support
2705
2706         * lily/stencil-interpret.cc (interpret_stencil_expression):
2707         add rotation support
2708
2709         * lily/stencil-scheme.cc (ly:stencil-rotate): new function
2710
2711         * scm/define-grob-properties.scm: add 'rotation property
2712
2713         * scm/define-markup-commands.scm: add rotate markup command
2714         
2715         * scm/output-ps.scm: add rotation support in PostScript backend
2716
2717         * scm/output-svg.scm: add rotation support in SVG backend
2718
2719 2006-05-13  Graham Percival  <gpermus@gmail.com>
2720
2721         * Documentation/user/music-glossary.itely: French correction.
2722
2723         * Documentation/user/programming-interface.itely: major
2724         new docs, some reorg, some info from Nicolas.
2725
2726         * Documentation/user/ various: small fixes.
2727
2728 2006-05-12  Mats Bengtsson  <mabe@s3.kth.se>
2729
2730         * Documentation/user/programming-interface.itely (Markup
2731         programmer interface): Remove duplicate text.
2732
2733 2006-05-12  Graham Percival  <gpermus@gmail.com>
2734
2735         * Documentation/user/context-example.eps: new file.
2736
2737         * Documentation/user/changing-defaults.itely: set up file to
2738         use eps image.
2739
2740         * Documentation/user/programming-interface.itely: changes
2741         from mailist.
2742
2743 2006-05-12  Han-Wen Nienhuys  <hanwen@lilypond.org>
2744
2745         * configure.in (LINK_GXX_STATICALLY): python 2.4 req.
2746
2747 2006-05-11  Graham Percival  <gpermus@gmail.com>
2748
2749         * Documentation/user/programming-interface.itely: first round of
2750         editing and merging emails from Nicolas.
2751
2752         * Documentation/user/scheme-tutorial: minor edit.
2753
2754 2006-05-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
2755
2756         * python/musicxml.py (Xml_node.__init__): _attribute_dict stores
2757         XML attributes.
2758         (Xml_node.message): use it.
2759
2760         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): 
2761         oops. Add duration argument.
2762
2763 2006-05-10  Joe Neeman  <joeneeman@gmail.com>
2764
2765         * lily/paper-column-engraver.cc (make_columns):
2766         * scm/define-grobs.scm: Revert my previous change and set the default
2767         in define-grobs.scm instead.
2768
2769 2006-05-09  Graham Percival  <gpermus@gmail.com>
2770         
2771         * Documentation/user/changing-defaults.itely: general editing,
2772         info about \set and \override.
2773
2774         * Documentation/user/tweaking.itely, advanced-notation.itely:
2775         fixes from Dave Luttinen, thanks!
2776
2777 2006-05-09  Joe Neeman  <joeneeman@gmail.com>
2778
2779         * lily/paper-column-engraver.cc (make_columns): By default, a column
2780         needs to be breakable.
2781
2782 2006-05-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
2783
2784         * scripts/musicxml2ly.py (musicxml_clef_to_lily): use new
2785         Attributes methods
2786         (musicxml_time_to_lily): idem
2787         (musicxml_key_to_lily): idem
2788         (instrument_drumtype_dict): dict for supported drumtypes.
2789         (LilyPondVoiceBuilder.__init__): new class: sanely keep track of
2790         moments and pending mm rests
2791         (musicxml_voice_to_lily_voice): rewrite to use LilyPondVoiceBuilder
2792         (musicxml_voice_to_lily_voice): strip KeyChangeEvents for drums.
2793         (musicxml_voice_to_lily_voice): add mode change.
2794         (option_parser): lxml.etree (http://codespeak.net/lxml/) for more
2795         speed and less memory usage (factor 5 to 10).
2796         (convert): write -defs.ly  and driver file separately so people
2797         can script their own part extraction.
2798
2799         * python/musicxml.py (minidom_demarshal_node): new function:
2800         separate minidom handling.
2801         (lxml_demarshal_node): new function: support lxml.etree too.
2802         (Xml_node.message): new function: verbose error message, with XML
2803         path to offending node.
2804         (Attributes.get_measure_length): sane interface to MusicXML attributes.
2805         (Part_list.generate_id_instrument_dict): new method: collect
2806         instrument names, to be able to set drum_type.
2807         (Part.interpret): handle underfull measures
2808         (Part.interpret): assign instrument names.
2809
2810         * python/musicexp.py (Output_printer.close): new method
2811         (MusicWrapper.print_ly): new class: support other modes,
2812         eg. \drummode
2813         (BarCheck.print_ly): new class. Support bar checks, with comments
2814         and fancy barchecks. 
2815         (NoteEvent.__init__): also set drum_type for drum notes.
2816         (MultiMeasureRest.lisp_expression): dump mm rests.
2817
2818         * lily/paper-column-engraver.cc (stop_translation_timestep): set
2819         line-break-permission if forbidBreak is not set.
2820
2821 2006-05-09  Joe Neeman  <joeneeman@gmail.com>
2822
2823         * scm/define-context-properties.scm:
2824         * scm/define-grob-properties.scm:
2825         * scm/define-grobs.scm:
2826         * scm/define-music-display-methods.scm:
2827         * scm/define-music-properties.scm:
2828         * scm/define-music-types.scm:
2829         * scm/music-functions.scm:
2830         * ly/declarations-init.ly:
2831         * lily/include/constrained-breaking.hh:
2832         * lily/system.cc:
2833         * lily/spaceable-grob.cc:
2834         * lily/simple-spacer.cc:
2835         * lily/paper-score.cc:
2836         * lily/paper-column.cc:
2837         * lily/paper-column-engraver.cc:
2838         * lily/item.cc:
2839         * lily/gourlay-breaking.cc:
2840         * lily/constrained-breaking.cc:
2841         * python/convertrules.py:
2842         Change "penalty", "page-penalty" and "breakable" to "line-break-penalty",
2843         "page-break-penalty" and "line-break-permission".
2844         Add "page-break-permission", "page-turn-permission" and "page-turn-penalty".
2845         Replace BreakEvent with LineBreakEvent, PageBreakEvent and PageTurnEvent.
2846
2847         * lily/bar-engraver.cc:
2848         * lily/beam-engraver.cc:
2849         * lily/forbid-break-engraver.cc:
2850         * lily/ligature-engraver.cc:
2851         * lily/paper-column-engraver.cc:
2852         * lily/percent-repeat-engraver.cc:
2853         * lily/score-engraver.cc:
2854         * lily/score-engraver.hh:
2855         * lily/paper-column-engraver.hh:
2856         Inter-engraver communication regarding line breaks is done through context
2857         properties (Score.forbidBreak) instead of function calls.
2858
2859 2006-05-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
2860
2861         * VERSION (PACKAGE_NAME): release 2.9.4
2862
2863 2006-05-08  Graham Percival  <gpermus@gmail.com>
2864
2865         * Documentation/user/working.itely: proofreading from Dave
2866         Luttinen, thanks.
2867
2868         * Doucmentation/user/README.txt: updated with manual style info.
2869
2870         * Documentation/user/ various: trim linewidth to 78 chars.
2871
2872 2006-05-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
2873
2874         * scm/define-grob-properties.scm (all-internal-grob-properties):
2875         remove chord-tremolo property.
2876
2877         * lily/beam.cc (get_beam_segments): don't use stem position as
2878         base for broken ends.
2879
2880 2006-05-06  Graham Percival  <gpermus@gmail.com>
2881
2882         * Documentation/user/putting.itely: proofreading from Dave
2883         Luttinen, thanks!
2884
2885         * Documentation/user/ various: more reorg and clarifications.
2886
2887 2006-05-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
2888
2889         * scm/lily.scm (TEX_STRING_HASHLIMIT): move from framework-texstr.scm.
2890
2891         * ly/music-functions-init.ly: new function featherDurations
2892
2893         * lily/beam.cc: read grow-direction for feathered beaming.
2894
2895         * Documentation/topdocs/NEWS.tely (Top): typo.
2896
2897 2006-05-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
2898
2899         * lily/include/beam.hh (struct Beam_stem_segment): add gapped_ for
2900         tremolo beams.
2901
2902 2006-05-05  Erik Sandberg  <mandolaerik@gmail.com>
2903         * lily/context.cc, lily/global-context.cc: Added 'unique' member,
2904         used by music streams.
2905
2906         * lily/dispatcher.cc, lily/dispatcher-scheme.cc,
2907         lily/stream-event.cc, lily/stream-event-scheme.cc,
2908         lily/listener.cc, lily/scheme-listener.cc,
2909         lily/scheme-listener-scheme.cc, lily/include/dispatcher.hh,
2910         lily/include/stream-event.hh, lily/include/listener.hh,
2911         lily/include/scheme-listener.hh, scm/define-event-classes.scm:
2912         Created data structures for music streams.
2913         
2914 2006-05-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
2915
2916         * lily/beam.cc (get_beam_segments): new function. Reorganise the
2917         construction of a beam. 
2918         (print): rewrite. 
2919
2920         * flower/include/std-vector.hh (default_compare): use only one comparison.
2921
2922         * scm/define-markup-commands.scm (note-by-number): remove debug display.
2923         (note-by-number): further attachment fixes.
2924
2925         * scm/lily-library.scm (ordered-cons): new function.
2926         (interval-index): new function
2927
2928         * lily/note-head-scheme.cc (LY_DEFINE): new file.
2929
2930         * lily/note-head.cc (get_stem_attachment): new function.
2931
2932         * scm/define-markup-commands.scm (note-by-number): read 'style
2933         property. 
2934
2935         * input/regression/markup-note.ly: show note-head style option.
2936
2937         * mf/feta-bolletjes.mf (overdone_heads): fix attachment points for
2938         triangle head.
2939
2940 2006-05-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
2941
2942         * mf/GNUmakefile (NCSB_OTFS): remove old ncsb detection further.
2943
2944         * configure.in (LINK_GXX_STATICALLY): fix for ncsb detection.
2945
2946         * lily/include/constrained-breaking.hh: GCC 4 fix.
2947
2948 2006-05-04  Joe Neeman  <joeneeman@gmail.com>
2949
2950         * lily/simple-spacer.cc: Remove class Simple_spacer_wrapper.
2951         Replace it with functions get_line_forces and get_line_configuration.
2952         (class Simple_spacer): Make data private.
2953         Rewrite compression algorithm to be faster and simpler.
2954
2955         * lily/simple-spacer-scheme.cc (ly_solve_rod_and_spring_problem):
2956         * lily/gourlay-breaking.cc (solve):
2957         * lily/constrained_breaking.cc (space_line):
2958         Change it to the new simple-spacer code.
2959
2960         * lily/paper-score.cc (get_paper_systems):
2961         (Paper_score):
2962         (process):
2963         Delay breaking the systems until they are requested.
2964         (find_break_indices):
2965         Use vsize for indices.
2966         (calc_breaking):
2967         Move the "Calculating line breaks" message here.
2968
2969         * lily/system.cc (pre_processing):
2970         Move the "Calculating line breaks" message away from here.
2971         (break_into_pieces):
2972         Allow multiple calls to this function in sequence (with touching-but-
2973         not-overlapping breakpoints).
2974
2975         * lily/constrained-breaking.cc:
2976         Replace most of the get_XXXX functions with get_line_details.
2977         Only calculate the force for each line. Calculate configurations only
2978         for the lines we will actually use.
2979         Replace cols_ with lines_.
2980
2981 2006-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2982
2983         * mf/GNUmakefile (depth): remove FC_FIND.
2984
2985         * config.make.in (NCSB_SOURCE_FILES): subst NCSB_SOURCE_FILES
2986
2987         * configure.in (LINK_GXX_STATICALLY): call fc-match from within configure.
2988
2989         * scm/framework-ps.scm (write-preamble): new function.
2990         (write-preamble): load mac fonts via fondu, even if gs-font-load
2991         is set.
2992
2993 2006-05-03  Werner Lemberg  <wl@gnu.org>
2994
2995         * mf/GNUmakefile (FC_FIND): Fix typo.
2996
2997 2006-05-03  Erlend Aasland  <erlenda@gmail.com>
2998
2999         * stepmake/stepmake/generic-targets.make (cvs-clean): also remove out-www dirs.
3000
3001 2006-05-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
3002
3003         * stepmake/aclocal.m4: run python-config for crosscompiling
3004         flags. 
3005
3006         * scripts/lilypond-book.py (Lilypond_file_snippet.my_system): add
3007         -f png for HTML, TEXINFO formats. 
3008
3009         * input/tutorial/lbook-html-test.html: new file.
3010
3011         * lily/include/tie-formatting-problem.hh (class
3012         Tie_formatting_problem): index Chord_outline_map by Tuple2 for
3013         [column, direction]. This fixes laissez vibrer ties.
3014  
3015         * flower/include/tuple.hh (struct Tuple2): new file.
3016
3017         * mf/GNUmakefile (FC_FIND): new function. Find ncsb using
3018         $(FCMATCH), only if $(NCSB_DIR) not set. 
3019
3020         * configure.in (LINK_GXX_STATICALLY): only warn if $NCSB_DIR set.
3021
3022         * config.make.in (DOCUMENTATION): set FCMATCH.  
3023
3024         * autogen.sh (srcdir): don't set --with-ncsb-dir. 
3025
3026 2006-05-03  Graham Percival  <gpermus@gmail.com>
3027
3028         * Documentation/user/ various: final round of reorg.
3029
3030         * Documentation/user/instrument-notation.itely: some more
3031         fixes from Eduardo, thanks!
3032
3033 2006-05-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
3034
3035         * VERSION (PACKAGE_NAME): release 2.9.3
3036
3037         * flower/file-path.cc (is_dir): canonicalize file name before stat'ing.
3038
3039         * lily/relocate.cc (framework_relocation): remove old relocation stuff.
3040
3041 2006-05-01  Mats Bengtsson  <mabe@s3.kth.se>
3042
3043         * scm/define-grob-properties.scm (all-user-grob-properties):
3044         Correct typo, thanks to Eduardo.
3045
3046 2006-05-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
3047
3048         * scripts/GNUmakefile (SEXECUTABLES): remove lilypond-ps2png.scm
3049
3050         * buildscripts/lilypond-words.py (F): indent fix.
3051
3052         * input/regression/tie-arpeggio-collision.ly: new file.
3053
3054         * lily/tie-formatting-problem.cc (set_column_chord_outline): new
3055         function: store outlines per column rank.
3056
3057         * lily/include/tie-configuration.hh (class Tie_configuration): add
3058         column_ranks_ to specification and configuration, to distinguish
3059         between ties for different heads in arpegiated chords.
3060
3061         * lily/relocate.cc (framework_relocation): use INSTALLER_PREFIX.
3062
3063         * *.py: more 4 space indents.
3064
3065         * autogen.sh (conf_flags): set sensible default for with-ncsb-dir
3066
3067 2006-05-01  Joe Neeman  <joeneeman@gmail.com>
3068
3069         * scm/lily-library.scm: Fix guile 1.6 compatibility in inf? and nan?
3070
3071 2006-05-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
3072
3073         * buildscripts/pfx2ttf.fontforge (err): create OTF files.
3074
3075         * scripts/abc2ly.py (dump_score): indent of 4 for python code. 
3076
3077         * configure.in (LINK_GXX_STATICALLY): remove locate() call.
3078
3079 2006-04-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3080
3081         * python/convertrules.py (conv): indent 4 for python files.
3082
3083 2006-04-29  Mats Bengtsson  <mabe@s3.kth.se>
3084
3085         * Documentation/user/changing-defaults.itely (Creating contexts):
3086         Clarify \new semantics.
3087
3088 2006-04-28  Graham Percival  <gpermus@gmail.com>
3089
3090         * Documentation/user/ various: major new sections in the
3091         Learning manual, slight reorg elsewhere.
3092
3093 2006-04-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
3094
3095         * mf/GNUmakefile (MFTRACE_FLAGS): add $(outdir) to $(ENCODING_FILE) 
3096
3097         * scm/framework-ps.scm (output-framework): remove PageMedia
3098
3099 2006-04-27  Graham Percival  <gpermus@gmail.com>
3100
3101         * Documentation/user/ tweaks.itely, working.itely: new
3102         files, being more advanced "learning manual" chapters.
3103
3104         * Documentation/user/ tutorial, putting, lilypond: reorg.
3105
3106 2006-04-26  Graham Percival  <gpermus@gmail.com>
3107
3108         * input/regression/lyric-combine-polyphonic.ly: fixed test
3109         (no more "can't find context `one'" error).
3110
3111 2006-04-25  Joe Neeman <joeneeman@gmail.com>
3112
3113         * lily/stem-tremolo.cc (print): fix whole note tremolo placement
3114
3115         * input/regression/stem-tremolo.ly: add 2 more whole note examples
3116         
3117 2006-04-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3118
3119         * lily/relocate.cc (read_relocation_dir): new function.
3120
3121 2006-04-26  Graham Percival  <gpermus@gmail.com>
3122
3123         * Documentation/user/instrument-notation.itely: a few more fixes
3124         from Eduardo, thanks!
3125
3126         * Documentation/user/README.txt: new file; contains info on
3127         style that used to be in lilypond.tely.
3128
3129         * Documentation/user/ various: first round of doc reorg.
3130
3131         * Documentation/user/baer-flat-bw.png: remove alpha bit from
3132         graphic; this probably causes problems on some pdf
3133         viewers, notably Adobe Acrobat.
3134
3135 2006-04-24  Graham Percival  <gpermus@gmail.com>
3136
3137         * Documentation/user/instrument-notation.itely: many alterations
3138         to Vocal music, from Eduardo Viera.
3139
3140 2006-04-23  Graham Percival  <gpermus@gmail.com>
3141
3142         * Documentation/user/instrument-notation.itely: fix \new
3143         instead of \context problem.
3144
3145 2006-04-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3146
3147         * lily/relocate.cc (expand_environment_variables): new function.
3148         (read_line): id.
3149         (read_relocation_file): id.
3150
3151         * scm/stencil.scm (eps-file->stencil): fix EPS PS embedding code 
3152
3153 2006-04-21  Erlend Aasland  <erlenda@gmail.com>
3154
3155         * ly/engraver-init.ly: remove old comments from TabVoice
3156
3157 2006-04-20  Graham Percival  <gpermus@gmail.com>
3158
3159         * Documentation/user/instrument-notation.itely: added Erlend's
3160         latest doc patch, thanks!
3161
3162 2006-04-19  Erlend Aasland <erlenda@gmail.com>
3163
3164         * lily/include/slur.hh:
3165         * lily/slur.cc:
3166         * lily/phrasing-slur-engraver.cc:
3167         * lily/slur-engraver.cc: Fix 'cut & paste' code by merging
3168         acknowledge_extra_object () from Phrasing_slur_engraver:: and
3169         Slur_engraver:: and putting it in
3170         Slur::auxiliary_acknowledge_extra_object ().
3171
3172         * ps/music-drawing-routines.ps (draw_dashed_slur): fix another bug
3173
3174         * lily/note-collision.cc: fix a comment
3175
3176 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
3177
3178         * stepmake/bin/add-html-footer.py: fix footer position in
3179         generated html files: before </body> and </html> tags.
3180
3181 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
3182
3183         * scripts/GNUmakefile: revert last "fix", which rather broke make.
3184         Earlier successive `make' commands finally compiled ok.
3185
3186         * Documentation/topdocs/INSTALL.texi: require mftrace 1.1.19.
3187
3188 2006-04-18  Erlend Aasland <erlenda@gmail.com>
3189
3190         * lily/include/stem-tremolo.hh:
3191         * lily/stem-tremolo.cc: move rotated_box () to Lookup:: and update
3192         callers.
3193
3194         * lily/lookup.cc:
3195         * lily/include/lookup.hh: add rotated_box ()
3196
3197 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
3198
3199         * scripts/GNUmakefile: bugfix: run help2man only after scripts have 
3200         been generated. Fixes "can't get `--help'" bug after make clean.
3201
3202         * THANKS: alphabetize contributors.
3203
3204 2006-04-17  Graham Percival  <gpermus@gmail.com>
3205
3206         * Documentation/user/instrument-notation.itely: added Erlend's
3207         tabs and banjo doc patch.  Thanks!
3208
3209 2006-04-17  Erlend Aasland  <erlenda@gmail.com>
3210
3211         * scm/define-grobs.scm: fix stem-attachment for tablature note heads.
3212
3213         * ps/music-drawing-routines.ps (draw_dashed_line): fix dash pattern bug.
3214
3215         * scm/output-lib.scm: add some more predefined string tunings.
3216
3217         * Documentation/user/instrument-notation.itely: and doc them.
3218
3219 2006-04-16  Jürgen Reuter  <reuter@ipd.uka.de>
3220
3221         * ly/engraver.ly: Remove obsolete comments.
3222
3223         * ly/gregorian-init.ly: Define default layout block.
3224
3225         * input/puer-fragment.ly: Updated and extended.
3226
3227 2006-04-15  Jan Nieuwenhuizen  <janneke@gnu.org>
3228
3229         * lily/lily-parser-scheme.cc: Use them to fix --output=DIR/BASE
3230         pdf conversion behaviour.
3231
3232         * flower/file-name.cc (dir_name)
3233         (get_working_directory): Move from relocate.cc.
3234
3235         * lily/relocate.cc (setup_paths): Remove rogue stat calls.
3236         
3237         * lily/relocate.cc: Encapsulate sys/stat.h in
3238         HAVE_STAT_H.
3239
3240 2006-04-14  Graham Percival  <gpermus@gmail.com>
3241
3242         * Documentation/user/ various: small updates from Cameron
3243         and Juergen, thanks!
3244
3245         * Documentation/user/ various: small updates of my own.
3246
3247         * THANKS: 2.7 -> 2.8.
3248
3249 2006-04-11  Graham Percival  <gpermus@gmail.com>
3250
3251         * scm/define-context-properties.scm: typo.
3252
3253         * Documentation/user/ : many more small updates.
3254
3255 2006-04-13  Jürgen Reuter  <reuter@ipd.uka.de>
3256
3257         * scm/define-music-types.scm: disposed "docme".
3258
3259 2006-04-11  Erlend Aasland  <erlenda@gmail.com>
3260
3261         * lily/hairpin.cc: make niente circles a bit smaller.
3262
3263 2006-04-10  Erlend Aasland  <erlenda@gmail.com>
3264
3265         * mf/GNUmakefile: remove redundant mftrace check. Also remove
3266         get-pfa and get-*-fonts targets.
3267
3268 2006-04-10  Graham Percival  <gpermus@gmail.com>
3269
3270         * THANKS, Documentation/user/ basic-notation, advanced-notation,
3271         music-glossary, programming-interface: more minor fixes
3272         from mailist.
3273
3274         * scm/define-grob-properties.scm: clarified direction, thanks Mats!
3275
3276         * scm/define-context-properties.scm: another old \property update.
3277         This time tested for compiling!
3278
3279 2006-04-10  Erlend Aasland  <erlenda@gmail.com>
3280
3281         * mf/GNUmakefile: fix for mftrace version >= 1.2.0
3282
3283 2006-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
3284
3285         * scm/define-context-properties.scm (all-user-translation-properties): 
3286         * Documentation/user/global.itely (Page formatting): Compile fix.
3287
3288 2006-04-09  Mats Bengtsson  <mabe@s3.kth.se>
3289
3290         * Documentation/user/advanced-notation.itely (Polymetric
3291         notation): Update the example to use the "+" symbol and add link
3292         to input/test/compound-time.ly.
3293
3294 2006-04-08  Graham Percival  <gpermus@gmail.com>
3295
3296         * scm/define-grob-properties.scm: clarify docs for #'direction.
3297
3298         * scm/define-context-properties.scm: update old \property override.
3299
3300         * Documentation/user/ advanced-notation, global, lilypond-book:
3301         more minor doc updates.
3302
3303 2006-04-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
3304
3305         * lily/parser.yy (Generic_prefix_music_scm): append lists, not objects.
3306
3307         * scm/backend-library.scm (search-gs): oops.
3308
3309 2006-04-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
3310
3311         * scripts/lilypond-book.py (output): use base, not filename for href.
3312
3313         * scm/backend-library.scm: only look for gs.
3314
3315         * scripts/lilypond-book.py (output): fix printfilename.
3316
3317         * lily/parser.yy (music_function_musicless_prefix): fold together
3318         definitions of signature (SCM*) (Music|post_event|chord_body_element)
3319
3320         * lily/slur.cc (print): only set font-size if not set yet.
3321
3322         * lily/slur-configuration.cc (add_score): improved layout of debug
3323         scoring output.
3324
3325 2006-04-05  David Feuer  <David.Feuer@gmail.com>
3326
3327         * music-drawing-routines.ps (draw_round_box): removed testing artifact.
3328         (draw_circle): Hopefully fixed regression.
3329         Improved documentation for several procedures.
3330         
3331 2006-03-04  Werner Lemberg  <wl@gnu.org>
3332
3333         * ly/engraver-init.ly (\Score): Add beam-event to quotedEventTypes.
3334
3335 2006-04-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
3336
3337         * scripts/musicxml2ly.py (bindir): add dynamic
3338         relocation. 
3339
3340 2006-04-04  Graham Percival  <gpermus@gmail.com>
3341
3342         * Documentation/user/ basic-notation, advanced-notation, putting,
3343         instrument-notation, invoking, lilypond, THANKS: another ream of small
3344         fixes from the Doc Helpers.
3345
3346 2006-04-03  David Feuer  <David.Feuer@gmail.com>
3347
3348         * music-drawing-routines.ps: remove superfluous gsave/grestore pairs.
3349
3350         * lilyponddefs.ps (set-ps-scale-to-lily-scale): Fixed code duplication.
3351
3352         * Cleaned up interfaces between PostScript and Scheme, and moved
3353         computations from PostScript to Scheme:
3354
3355         * music-drawing-routines.ps
3356         (*SF, stroke_and_fill): new procedures.  Replaced stroke and fill
3357         with stroke_and_fill throughout.
3358         (euclidean_length, print_letter, draw_box): Deleted unused
3359         procedures.  If someone needs draw_box, implement it using
3360         draw_round_box; don't duplicate code.
3361         (print_glyphs, draw_round_box, draw_polygon, draw_repeat_slash):
3362         Refactored/cleaned up interfaces.
3363         (mark_URI): Moved.
3364
3365         * output-ps.scm: reordered arguments to PostScript functions to
3366         match new interfaces
3367         (glyph-string): Rewrote glyph-string.
3368         (grob-cause): Replaced string-append with format.
3369         (repeat-slash): Rewrote to do computation here.
3370         (round-filled-box): Rewrote to do computation here.
3371
3372 2006-04-04  Erlend Aasland  <erlenda@gmail.com>
3373
3374         * stepmake/stepmake/generic-targets.make: add cvs-clean target
3375
3376         * stepmake/stepmake/toplevel- targets.make: print help info about
3377         cvs-clean
3378
3379 2006-04-03  Erlend Aasland  <erlenda@gmail.com>
3380
3381         * input/regression/hairpin-circled.ly: new file
3382
3383 2006-04-03  Erlend Aasland  <erlenda@gmail.com>
3384
3385         * lily/hairpin.cc (print): add support for circled tip
3386
3387         * scm/define-grob-properties.scm: add circled-tip parameter
3388
3389         * scm/define-grobs.scm: init circled-tip to false
3390         
3391 2006-04-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
3392
3393         * scm/music-functions.scm (quote-substitute): set
3394         iterators-ctor. 
3395
3396 2006-03-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
3397
3398         * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): set
3399         BSTINPUTS. 
3400
3401         * Documentation/topdocs/AUTHORS.texi (Top): add David Feuer.
3402
3403         * scm/output-ps.scm (glyph-string): revert cid selectfont.
3404
3405 2006-03-31  David Feuer  <david.feuer@gmail.com>
3406         
3407         * scm/framework-ps.scm:
3408         
3409         * scm/output-ps.scm: glyph-string now produces smaller, more
3410         readable, and probably faster PostScript.  Several findfont
3411         scalefont setfont instances changed to selectfont
3412         Hacked-up string-appends changed to formats.
3413
3414         * ps/music-drawing-routines.ps: add print_letter, print_glyphs.
3415         
3416 2006-03-30  Graham Percival  <gpermus@gmail.com>
3417
3418         * scm/lily-library.scm: make "no version" warning message more polite.
3419
3420         * lily/music.cc: add double quotes to failed octave check.
3421
3422         * Documentation/user/ advanced-notation, changing-defaults,
3423         instrument-notation, invoking, music-glossary: whole bunch of minor
3424         fixes from mailist.
3425
3426 2006-03-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
3427
3428         * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): use
3429         $(buildscriptdir) iso. depth.
3430
3431         * VERSION (PACKAGE_NAME): release 2.9.1
3432
3433 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
3434
3435         * lily/pango-font.cc (pango_item_string_stencil): more robustness.
3436
3437         * VERSION (PATCH_LEVEL): bump version number.
3438
3439         * flower/include/guile-compatibility.hh (scm_from_uint32): add
3440         scm_from_uint32 ()
3441
3442         * lily/pango-font.cc (pango_item_string_stencil): use
3443         scm_from_uint32 ()
3444
3445         * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
3446         $(outdir)/emmentaler-%.svg): remove canary.
3447
3448         * lily/pango-font.cc (pango_item_string_stencil): only use uXXX
3449         glyphnames if we have a ttf font.
3450
3451 2006-03-30  Mats Bengtsson  <mabe@s3.kth.se>
3452
3453         * Documentation/user/advanced-notation.itely (Font selection):
3454         Corrected reference to the font-family-override.ly example.
3455
3456 2006-03-30  Joe Neeman  <joeneeman@gmail.com>
3457         
3458         * lily/chord-tremolo-engraver.cc (acknowledge_stem): set the
3459         stem-tremolo object in the stem (or else the stem might not be
3460         long enough).
3461
3462 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
3463
3464         * lily/ttf.cc (print_trailer): only print existing glyphs.
3465
3466 2006-03-30  Joe Neeman  <joeneeman@gmail.com>
3467
3468         * lily/stem-tremolo.cc (print): for whole notes (and breves, etc.)
3469         position the tremolo based on the position of the notehead.
3470
3471         * input/regression/stem-tremolo.ly: add example of unbeamed eighth
3472         notes and update the texidoc line with the new positioning rules.
3473         
3474 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
3475
3476         * lily/ttf.cc (print_trailer): don't always use uXXX glyphname.
3477
3478         * scripts/lilypond-book.py (Module): set default for linewidth if
3479         preamble not found.
3480
3481 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
3482
3483         * VERSION (PACKAGE_NAME): release 2.9.0.
3484
3485         * input/regression/stem-tremolo-position.ly: new file.
3486
3487         * lily/stem-tremolo.cc: remove Stem_tremolo::dim_callback
3488
3489 2006-03-28  Joe Neeman  <joeneeman@gmail.com>
3490
3491         * lily/stem-tremolo.cc (print): position
3492         the tremolo depending only on the end of the stem
3493         and not on the notehead
3494         (raw_stencil): center, on the middle staff line, the
3495         flag that is closest to the end of the stem (previously
3496         the bottom flag)
3497         (calc_width): add this callback to shorten a tremolo when
3498         it is beamed or it is stemup with a flag
3499         (style): add this callback to make a tremolo rectangular when
3500         it is beamed or it is stemup with a flag
3501         (rotated_box): this is like Lookup::beam but makes a rotated
3502         rectangle instead of a parallelogram
3503
3504         * lily/stem.cc (calc_stem_info): make sure the stem
3505         is long enough to fit the tremolo
3506         (calc-length): reduce the length of tremolo stems since the
3507         tremolo code is now capable of better positioning
3508
3509         * scm/define-grobs.scm: make calc_width the default beam-width
3510         callback for stem-tremolo and add the style callback
3511                 
3512 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
3513
3514         * lily/tuplet-bracket.cc (calc_control_points): handle suicide
3515         case. 
3516
3517 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
3518
3519         * lily/ttf.cc (make_index_to_charcode_map): restore old
3520         cmap. 
3521
3522 2006-03-28  Werner Lemberg  <wl@gnu.org>
3523
3524         * lily/pango-font.cc (get_unicode_name): Fix `uXXXXX' glyph names.
3525
3526 2006-03-28  Graham Percival  <gpermus@gmail.com>
3527
3528         * THANKS: update for 2.9, add section for Documentation helpers.
3529
3530         * Documentation/topdocs/NEWS.tely: compile fix.
3531
3532         * Documentation/user/ basic-notation, global, advanced-notation,
3533         examples.itely: minor fixes from mailist.
3534
3535 2006-03-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
3536
3537         * mf/feta-bolletjes.mf: match width of solfa notes with normal
3538         note heads. 
3539
3540         * lily/ttf.cc (print_trailer): use it.
3541
3542         * lily/pango-font.cc (get_unicode_name): new function.
3543
3544         * lily/ttf.cc (make_index_to_charcode_map): move function from
3545         open-type-font.cc
3546         (print_trailer): substitute uniXXXX name if applicable. 
3547
3548         * lily/pango-font.cc (get_index_to_charcode_map): new function.
3549         (pango_item_string_stencil): use it to generate uniXXXX names.
3550
3551         * mf/feta-bolletjes.mf (overdone_heads): add small style (ugly)
3552         note heads, for uniform widths in shape note output.
3553         (overdone_heads): hmm. remove them again.
3554
3555         * scripts/lilypond-book.py (output): add links to filenames.
3556
3557         * Documentation/topdocs/INSTALL.texi (Top): update versions.
3558
3559         * lily/note-collision.cc (get_clash_groups): only consider when
3560         Note_column::dir <> CENTER. 
3561
3562         * scripts/lilypond-book.py (get_option_parser): init output_name
3563         to ''. 
3564
3565 2006-03-24  Graham Percival  <gpermus@gmail.com>
3566
3567         * Documentation/topdocs/NEWS.tely: add @end itemize
3568
3569         * Documentation/user/ global, advanced-notation: minor
3570         stuff from mailist.
3571
3572 2006-03-23  Graham Percival  <gpermus@gmail.com>
3573
3574         * Documentation/user/ lilypond.tely, music-glossary,
3575         preface: housekeeping; 2005->2006, remove "notes for 2.6"
3576
3577 2006-03-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
3578
3579         * mf/GNUmakefile: don't install .enc files.
3580
3581         * Documentation/topdocs/NEWS.tely: clear for 2.9 cycle.
3582
3583         * VERSION (PATCH_LEVEL): bump to 2.9.0
3584
3585 2006-03-22  Graham Percival  <gpermus@gmail.com>
3586
3587         * Documentation/user/advanced-notation.itely: minor fixes
3588         from mailist.
3589
3590 2006-03-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
3591
3592         * Documentation/topdocs/AUTHORS.texi (Top): add Joe Neeman.
3593
3594         * branch lilypond_2_8
3595
3596 2006-03-22  Han-Wen Nienhuys  <lilydev@localhost.localdomain>
3597
3598         * scripts/lilypond-book.py (samefile): new function, for windoze
3599         compatibility.
3600
3601 2006-03-21  Graham Percival  <gpermus@gmail.com>
3602
3603         * ly/engraver-init.ly: add info about StaffGroup.
3604
3605 2006-03-21  Han-Wen Nienhuys  <lilydev@localhost.localdomain>
3606
3607         * input/regression/stem-direction-context.ly: idem.
3608
3609         * Documentation/topdocs/NEWS.tely (Top): fix interpolation example.
3610
3611         * THANKS: add Mats.
3612
3613         * input/regression/page-layout-twopass.ly: comment out \markup so
3614         tweak-file is left.
3615
3616         * lily/instrument-name-engraver.cc (finalize): add to instrument
3617         name global System. This also fixes chopped instrument names, but
3618         doesn't crash when there are slurs/beams.
3619
3620         * lily/slur-configuration.cc (add_score): disallow negative slur
3621         scores.
3622         
3623 2006-03-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3624
3625         * scm/framework-ps.scm (dump-stencil-as-EPS): remove debugging code.
3626
3627         * lily/instrument-name-engraver.cc (process_music): kludge: add
3628         InstrumentName spanner to axis group of left bound. Fixes chopped
3629         off instrument names in EPS images.
3630
3631         * input/regression/lyric-hyphen-retain.ly: elaborate explanation.
3632
3633         * scripts/abc2ly.py (option_parser): update to 2.7.40
3634
3635 2006-03-20  Graham Percival  <gpermus@gmail.com>
3636
3637         * THANKS: move small doc contributors to SUGGESTIONS.
3638
3639         * Documentation/user/ basic-notation, advanced-notation,
3640         global: small changes from mailist.
3641
3642 2006-03-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3643
3644         * Documentation/user/advanced-notation.itely (Text marks): update
3645         for new rehearsalMarkAlignSymbol convention.
3646
3647         * VERSION (PATCH_LEVEL): bump version.
3648
3649         * input/test/instrument-name-align.ly: new file.
3650
3651         * scm/define-markup-commands.scm (hcenter-in): add hcenter-in.
3652
3653         * input/test/instrument-name-align.ly: new file. Document how to
3654         align instrument names.
3655
3656         * lily/mark-engraver.cc: remove properties.
3657
3658         * scm/define-context-properties.scm
3659         (all-user-translation-properties): remove align symbol properties
3660         for barnumber/reh. mark.
3661
3662         * lily/break-align-interface.cc (self_align_callback): new
3663         interface, new function. Look at complete alignment. This handles
3664         tunable break alignments in case break-align-symbols are missing.
3665
3666         * lily/bar-number-engraver.cc (acknowledge_break_alignment): new function
3667
3668         * lily/mark-engraver.cc (acknowledge_break_alignment): new function.
3669
3670         * python/convertrules.py (conv): mark/bar number alignment rule.
3671
3672         * lily/break-align-interface.cc (calc_positioning_done): also
3673         store offset from last visible break-alignment to its
3674         neighbor. This makes alignment on non-visible objects more reliable.
3675
3676         * po/lilypond.pot (Module): ran po-replace.
3677
3678         * input/regression/tie-single-manual.ly (Module): new file.
3679
3680         * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
3681         look at has_manual_position_.
3682         (from_ties): set has_manual_position_ if tie has staff-position set.
3683
3684         * lily/tuplet-bracket.cc (calc_positions): idem.
3685
3686         * lily/tuplet-number.cc (print): don't print tupletnumber if it
3687         doesn't span time.
3688
3689 2006-03-19  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3690
3691         * scm/define-markup-commands.scm (smallCaps): new markup command
3692         for turning a text to small caps using smaller font size and upper
3693         casing.
3694
3695 2006-03-17  Graham Percival  <gpermus@gmail.com>
3696
3697         * Documentation/user/ examples, instrument-notation,
3698         advnaced-notation: minor fixes from mailist.
3699
3700 2006-03-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3701
3702         * Documentation/user/tutorial.itely (First steps): change example
3703         to verbatim.  
3704
3705 2006-03-17  Graham Percival  <gpermus@gmail.com>
3706
3707         * Documentation/user/ examples, advanced: minor changes from mailist.
3708
3709         * THANKS: add Geoff Horton, for documentation stuff.
3710
3711 2006-03-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3712
3713         * python/lilylib.py (system): revert have_select kludge.
3714
3715         * Documentation/user/tutorial.itely (Commenting input files):
3716         update version numbers in doc. 
3717
3718         * scm/define-grob-interfaces.scm (multi-measure-interface): add
3719         bound-padding to multi-measure-interface
3720
3721 2006-03-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3722
3723         * input/test/engraver-example.ily: update version number.
3724
3725         * VERSION (PACKAGE_NAME): release 2.7.39
3726
3727         * lily/note-spacing.cc (get_spacing): heighten threshold where
3728         accidentals/arpeggios influence previous spacing fully.
3729
3730         * lily/rest.cc (y_offset_callback): only use direction if
3731         staff-position wasn't set before.
3732
3733         * lily/bar-number-engraver.cc: add support for
3734         barNumberAlignSymbol. 
3735         add ADD_ACKNOWLEDGER() call for break_aligned. Fixes bar-number-breathe
3736
3737         * lily/pointer-group-interface.cc (set_ordered): new function. 
3738         (add_unordered_grob): new function.
3739
3740         * lily/grob-array.cc (Grob_array): grob-arrays are always assumed
3741         to ordered, unless the opposite has been proved.  This fixes
3742         random reordering of large object groups across linebreaks,
3743         eg. beams.
3744
3745         * lily/main.cc (do_chroot_jail): printf format fix.
3746
3747         * lily/tie-formatting-problem.cc (generate_configuration):
3748         multiply y-shift for dot with direction.
3749  
3750         * scm/define-markup-commands.scm (note-by-number): put (magstep
3751         size) in y-attach too.
3752
3753         * Documentation/topdocs/NEWS.tely (Top): show override.
3754
3755         * scm/define-grobs.scm (all-grob-descriptions): reinstate neutral
3756         direction for stems.
3757         
3758 2006-03-15  Graham Percival  <gpermus@gmail.com>
3759
3760         * Documentation/user/ changing-defaults, global: minor
3761         fixes from mailist.
3762
3763 2006-03-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3764
3765         * lily/lexer.ll (Lily_lexer): bump required version to 2.7.38
3766
3767         * lily/spacing-spanner.cc (musical_column_spacing): crude fix for
3768         breakable items after uniformly stretched notes.
3769
3770         * lily/tie-formatting-problem.cc (set_chord_outline): initialize
3771         outline with outer edge of note heads. This prevents infinity
3772         problems with tied whole notes.
3773
3774         * scripts/lilypond-book.py (do_file): use os.popen
3775
3776         * python/convertrules.py (conv): add rule for Stem #'beamed-*
3777
3778 2006-03-14 Erik Sandberg  <mandolaerik@gmail.com>
3779
3780         * Documentation/user/invoking.itely: Add ragged-right to bug report
3781         guidelines.
3782
3783 2006-03-14  Graham Percival  <gpermus@gmail.com>
3784
3785         * Documentation/user/global.itely: small fix from mailist.
3786
3787 2006-03-14  Mats Bengtsson  <mabe@s3.kth.se>
3788
3789         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use the
3790         file descriptor returned by tempfile.mkstemp() when writing
3791         to tmpfile and closing it. Solves problem with unlink(tmpfile)
3792         on mingw.
3793
3794 2006-03-14  Jan Nieuwenhuizen  <janneke@gnu.org>
3795
3796         * po/fi.po: newline bugfix.
3797
3798 2006-03-12  Jan Nieuwenhuizen  <janneke@gnu.org>
3799
3800         * scm/paper.scm (paper-alist): Rounding fixes.
3801
3802 2006-03-13  Graham Percival  <gpermus@gmail.com>
3803
3804         * Documentation/user/ changing-defaults, instrument-notation,
3805         tutorial: small fixes from mailist, mostly from Mats.  Thanks!
3806
3807 2006-03-13 Heikki Junes  <hjunes@cc.hut.fi>
3808
3809         * po/fi.po: update.
3810
3811 2006-03-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3812
3813         * stepmake/bin/add-html-footer.py (mail_address_url): don't add
3814         mailto: to http:// 
3815
3816         * python/lilylib.py (print_environment): move ps_page_count to
3817         lilypond-book.py
3818
3819 2006-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3820
3821         * Documentation/user/music-glossary.tely (G clef): fix clef alignments.
3822
3823         * scm/framework-ps.scm (embed-document): new function. Use to
3824         embed PFA files.
3825
3826         * ly/engraver-init.ly: init rehearsalMarkAlignSymbol to staff-bar.
3827
3828 2006-03-12  Mats Bengtsson  <mabe@s3.kth.se>
3829
3830         * Documentation/user/instrument-notation.itely (Setting simple
3831         songs): Added \book{...} around the full example, so the separate
3832         markups are included in the printed example. 
3833
3834 2006-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3835
3836         * scripts/lilypond-book.py (get_latex_textwidth): explicitly close
3837         tmphandle.
3838
3839         * python/lilylib.py (system): rewrite system() using
3840         subprocess. Remove >& redirection trickery.
3841
3842 2006-03-11  Graham Percival  <gpermus@gmail.com>
3843
3844         * Documentation/user/ changing-defaults, global, scheme-tutorial,
3845         notation-appendices.itely: minor fixes from mailist.
3846
3847 2006-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3848
3849         * Documentation/user/GNUmakefile ($(outdir)/lilypond.html):
3850         unsplit man also needs images.
3851
3852         * tex/texinfo.tex (sectionheading, q.v.): relax after \char'15.
3853
3854         * VERSION (PACKAGE_NAME): 2.7.38 released.
3855
3856 2006-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3857
3858         * scripts/lilypond-book.py (get_latex_textwidth): look for latex
3859         log in output dir.
3860
3861 2006-03-08  Johannes Schindelin  <Johannes.Schindelin@gmx.de>
3862
3863         * lily/audio-column.cc, lily/score-performer.cc: MIDI output now
3864         respects the Score.skipTypesetting property.
3865         
3866 2006-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3867
3868         * scm/framework-ps.scm (ps-embed-cff): no Setup section in
3869         Prolog. No %%EOF after CFF file.
3870
3871 2006-03-08  Joe Neeman  <joeneeman@gmail.com>
3872         
3873         * lily/constrained-breaking.cc (get_max_systems): used to return a
3874         much too big value
3875         (combine_demerits): use pointers to reduce copying data
3876         (calc_subproblem): idem
3877         (get_page_penalty): add page turn penalties
3878         
3879 2006-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3880
3881         * Documentation/user/invoking.itely (Invoking lilypond): better
3882         explanation of -e usage.
3883
3884         * lily/main.cc (main_with_guile): don't append to
3885         init_scheme_code_string
3886
3887         * tex/texinfo.tex (sectionheading, q.v.): don't center @image.
3888
3889         * Documentation/user/invoking.itely: add note about MacOS X scripts.
3890
3891         * scripts/convert-ly.py (do_options): don't print help for
3892         --show-rules rule.
3893
3894         * tex/texinfo.tex: patch texinfo.tex to leave single quotes in
3895         @code and @example. Update from texinfo.tex from CVS.
3896
3897 2006-03-08  Graham Percival  <gpermus@gmail.com>
3898
3899         * Documentation/user/scheme-tutorial.itely: clarifies distances
3900         measured in staff-spaces.
3901
3902 2006-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3903
3904         * lily/slur.cc (outside_slur_callback): only calculate offsets if
3905         consider[k] is true.
3906
3907         * scm/output-ps.scm (grob-cause): put numbers to ~$ (Thanks Johannes!)
3908
3909         * lily/spacing-basic.cc (standard_breakable_column_spacing): also
3910         consider columns that have originals.  Unifies spacing for mm
3911         rests around line breaks.
3912
3913         * lily/multi-measure-rest.cc (set_spacing_rods): read bound-padding.
3914         (set_text_rods): idem.
3915         (calculate_spacing_rods): new function: share code between
3916         set_text_rods and set_spacing_rods.
3917         (set_text_rods): take extents of bounds into account.  
3918
3919 2006-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3920
3921         * Documentation/user/basic-notation.itely (Writing music in
3922         parallel): don't use relative.
3923
3924 2006-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3925
3926         * ly/music-functions-init.ly (Module): add shiftDurations
3927
3928         * ly/drumpitch-init.ly (drumPitchNames): add tamtam.
3929
3930         * scm/paper.scm (paper-alist): no decimals for Ax paper sizes. 
3931
3932         * ly/engraver-init.ly: init vocalName to nil.
3933
3934 2006-03-05 Erik Sandberg  <mandolaerik@gmail.com>
3935
3936         * scm/music-functions.scm (music->make-music): bugfix,
3937         KeyChangeEvents are now handled correctly.
3938
3939         * scripts/lilypond-book.py: Add --debug option.
3940
3941 2006-03-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3942
3943         * python/lilylib.py: add tempfile.
3944
3945 2006-03-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3946
3947         * VERSION (PACKAGE_NAME): release 2.7.37
3948
3949         * python/lilylib.py (ps_page_count): remove make_ps_images().
3950         (ps_page_count): remove mkdir_p
3951         (system): remove cleanup_temp.
3952         (exit): remove lilypond_version_(check)
3953         (error_log): remove pseudo_filter_p
3954         remove read_pipe
3955         remove cp_to_dir
3956         remove identify
3957
3958         * scripts/lilypond-book.py (Lilypond_snippet.compose_ly): don't
3959         use __main__
3960
3961         * lily/accidental-engraver.cc (make_standard_accidental): only add
3962         support for side-axis is X_AXIS. Fixes text-spacing-accidental.ly
3963
3964         * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
3965         $(outdir)/emmentaler-%.svg): rewrite without functions; too many
3966         Make incompatibilities.
3967
3968         * scm/output-ps.scm (grob-cause): replace backslashes by /
3969         (glyph-string): use ~$ for less decimals for glyph-string and grob-cause.
3970
3971 2006-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
3972
3973         * cygwin/GNUmakefile: Install fixes.
3974
3975         * scripts/GNUmakefile (SEXECUTABLES): Install fix: remove mup2ly.
3976
3977         * lily/note-head.cc (head::get_balltype): Compile fix.
3978
3979         * flower/file-name.cc (dos_to_posix): Flower string fix.
3980
3981 2006-03-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3982
3983         * python/lilylib.py: pychecker cleanups.
3984
3985         * scripts/lilypond-book.py
3986         (Lilypond_snippet.output_print_filename): pychecker cleanups
3987
3988         * scripts/midi2ly.py (Key.dump): pychecker cleanups.
3989
3990         * python/lilylib.py (underscore): remove identify() , warranty()
3991
3992         * ps/music-drawing-routines.ps: change Border routine for GSView
3993         compatibility.
3994
3995         * lily/stem.cc (height): use quantize-positions.  This triggers
3996         set_stem_lengths, so scripts on beamed stems are handled correctly.
3997
3998         * lily/side-position-interface.cc (aligned_side): check if edges
3999         of script are inside staff. Fixes accent of edge of the staff.
4000
4001         * input/regression/staccato-pos.ly: more examples.
4002
4003         * stepmake/aclocal.m4 (depth): fix bashism.
4004
4005         * lily/lyric-combine-music-iterator.cc: move from
4006         new-lyric-combine-iterator.cc
4007         (process): add pending_grace_lyric_ member to delay lyrics on
4008         grace notes.
4009
4010         * lily/system-start-text.cc (print): suicide if we don't have any
4011         elements. Fixes hara kiri'd instrument names.
4012
4013         * scripts/mup2ly.py (Module): remove.
4014
4015 2006-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4016
4017         * Documentation/user/global.itely (A single music expression):
4018         close @lilypond properly
4019
4020         * lily/volta-bracket.cc (modify_edge_height): change from
4021         after_line_breaking_callback. Suicide last bracket if appropriate.
4022  
4023         * python/lilylib.py: strip getopt support
4024
4025         * scripts/etf2ly.py (do_options): use optparse
4026
4027         * scripts/midi2ly.py: optparse, strip lilylib copy. 
4028
4029         * scripts/abc2ly.py (voices): use optparse.
4030
4031         * stepmake/stepmake/generic-vars.make: new function absdir.
4032
4033         * scripts/convert-ly.py (bindir): use optparse, argv[0] relocation.
4034
4035         * scripts/lilypond-book.py (find_file): use global_options for
4036         include path
4037
4038         * scm/ps-to-png.scm (ps-page-count): prevent null characters
4039         entering C code.
4040
4041 2006-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4042
4043         * python/lilylib.py (get_global_option): ughness for extracting
4044         global options from lilylib.
4045         (NonDentedHeadingFormatter.format_heading): move from musicxml2ly
4046
4047         * scripts/lilypond-book.py (get_option_parser): use optparse for
4048         option handling.  Put options in global_options variable.
4049
4050 2006-02-28  Heikki Junes  <hjunes@cc.hut.fi>
4051
4052         * Documentation/index.html.in: clarify.
4053
4054 2006-02-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4055
4056         * scm/layout-page-layout.scm (write-page-breaks): add a
4057         music-system-heights property to the page layout output.
4058
4059         * scm/page.scm (make-page-stencil): take footer into account when
4060         computing the 'space-left page property
4061         (annotate-space-left): take footer into account when annonating
4062         space left.
4063
4064 2006-02-28  Graham Percival  <gpermus@gmail.com>
4065
4066         * Documentation/user/ advanced-notation, global: more (final)
4067         docs for music expressions, removed special fermatas.
4068
4069 2006-02-27  Graham Percival  <gpermus@gmail.com>
4070
4071         * Documentation/user/ basic-notation, global: minor changes
4072         from mailist.
4073
4074 2006-02-26  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4075
4076         * scm/framework-ps.scm:         
4077         * scm/lily-library.scm (nan?, inf?): Move guile 1.6 compatibility
4078         layer for inf? and nan? from framework-ps to lily-library.
4079
4080 2006-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4081
4082         * mf/GNUmakefile ($(outdir)/emmentaler-$(1).otf
4083         $(outdir)/emmentaler-$(1).svg): remove backslashes from define endef.
4084
4085         * buildscripts/substitute-encoding.py (Module): remove file.
4086
4087         * mf/GNUmakefile: more PFA strippage.
4088
4089         * mf/aybabtu.pe.in (i): remove PFAaybabtu generation
4090
4091         * buildscripts/gen-emmentaler-scripts.py (i): remove PFAemmentaler
4092         generation
4093
4094         * scm/framework-ps.scm: remove font name munging.
4095
4096         * Documentation/topdocs/INSTALL.texi (Top): bump GS requirement.
4097
4098 2006-02-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4099
4100         * scm/markup.scm (define-markup-command): change
4101         def-markup-command to define-markup-command
4102
4103         * scm/music-functions.scm (define-music-function): change
4104         def-music-function to define-music-function.
4105
4106         * python/convertrules.py (conv): rules for def-music-function
4107         and def-markup-commands
4108
4109         * Documentation/user/programming-interface.itely,
4110         input/no-notation/display-lily-tests.ly,
4111         input/regression/lily-in-scheme.ly,
4112         input/regression/markup-user.ly,
4113         input/regression/music-function.ly, input/regression/tie-chord.ly,
4114         scm/fret-diagrams.scm, ly/music-functions-init.ly,
4115         ly/gregorian-init.ly: use new macro names (define-music-function,
4116         define-markup-command).
4117
4118 2006-02-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4119
4120         * scripts/lilypond-book.py (main): write Makefile dependencies file. 
4121         (output): add comments to lp-book latex output.
4122
4123         * GNUmakefile.in (footifymail): use gmane address for webpage bug
4124         address.
4125
4126 2006-02-23  Graham Percival  <gpermus@gmail.com>
4127
4128         * Documentation/user/ tutorial, global: minor changes.
4129
4130 2006-02-23  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4131
4132         * mf/GNUmakefile: add '\' in multi-line "define ... endef"
4133         blocks (for make 3.80)
4134
4135         * scm/parser-ly-from-scheme.scm (ly:parse-string-result): add
4136         \notemode so that user should not have to explicitely type it.
4137
4138         * scm/define-music-display-methods.scm: various
4139         fixes (ApplyOutputEvent, ApplyContext; \new, \context and derived
4140         constructs)
4141
4142         * input/no-notation/display-lily-tests.ly: new tests for
4143         \applyOutput and \applyContext
4144
4145 2006-02-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4146
4147         * lily/constrained-breaking.cc: patch by Joe Neeman: "I have
4148         changed it slightly so that the number of systems returned by
4149         solve () will be the same as the last value passed to resize
4150         (). I've also added more documentation, removed casts, fixed style
4151         problems and put in some recovery if constraints aren't satisfied."
4152
4153 2006-02-23  Jan Nieuwenhuizen  <janneke@gnu.org>
4154
4155         * elisp/lilypond-mode.el (count-matches-as-number): New funtion
4156         for emacs < 22 compatibility.
4157         (count-rexp): Use it.
4158         (LilyPond-string-current-midi, LilyPond-string-all-midi): Remove
4159         substring juggling (Milan Zamazal).
4160
4161 2006-02-23  Graham Percival  <gpermus@gmail.com>
4162
4163         * Documentation/user/ basic-notation, advanced-notation,
4164         global.itely, invoking.itely, tutorial,itely:
4165         minor fixes from mailist.
4166
4167         * scm/define-markup-commands.scm: improve docs of \filled-box.
4168
4169 2006-02-23  Heikki Junes  <hjunes@cc.hut.fi>
4170
4171         * Documentation/index.html.in: changes concern the previous release.
4172
4173         * input/regression/+.ly: cultivate typographical terminology.
4174
4175 2006-02-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4176
4177         * scm/define-grob-interfaces.scm (parentheses-interface): add
4178         padding to parentheses-interface.
4179
4180         * Documentation/user/GNUmakefile: remove $(CROSS) support from
4181         Documentation/user/GNUmakefile. Use --disable-documentation for that.
4182
4183         * VERSION (PATCH_LEVEL): release 2.7.36
4184
4185         * lily/slur.cc: add avoid-slur (ugh.)
4186         
4187         * lily/slur-configuration.cc (fit_factor): oops, skip point if
4188         intersection gets smaller. This fixes slurs over extreme points.
4189
4190         * lily/melody-engraver.cc (stop_translation_timestep): ignore
4191         stems with neutral-direction set.
4192
4193         * lily/piano-pedal-engraver.cc (create_text_grobs): idem.
4194
4195         * lily/open-type-font.cc (load_table): format error.
4196
4197         * lily/change-iterator.cc (process): format fix.
4198
4199         * flower/include/international.hh (_f): idem.
4200
4201         * flower/include/std-string.hh: add format printf attribute.
4202
4203         * scm/define-grobs.scm (all-grob-descriptions): height of all
4204         PedalLineSpanner is Y-extent property. Fixes pedal-ped.ly
4205
4206         * lily/ambitus-engraver.cc (finalize): use grob_array. This fixes
4207         ambitus lines.
4208
4209         * input/regression/beam-cross-staff-slope.ly: remove decrescendo.
4210
4211 2006-02-22 Erik Sandberg  <mandolaerik@gmail.com>
4212
4213         * input/regression/: upgraded syntax for some files.
4214
4215         * THANKS: Add bughunters.
4216
4217 2006-02-22  Graham Percival  <gpermus@gmail.com>
4218
4219         * Documentation/user/ invoking.itely, advanced-notation.itely,
4220         global.itely: long-awaited "let's make chapter 10 not suck"
4221         update.  Rearrange chapter 10; now called "global issues",
4222         addresses file structure, etc.  Some info from other files
4223         moved into global.itely.
4224
4225 2006-02-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4226
4227         * lily/accidental-engraver.cc (acknowledge_rhythmic_head): also
4228         catch trill-span-event notes.
4229
4230         * Documentation/user/examples.itely (Ancient notation templates): typo.
4231         (Jazz combo): typo.
4232
4233         * scripts/lilypond-book.py (main): scrap invokes_lilypond(). 
4234
4235         * Documentation/user/basic-notation.itely (Ties): document \repeatTie.
4236
4237         * Documentation/topdocs/NEWS.tely (Top): document \repeatTie.
4238
4239         * scm/define-music-types.scm (music-descriptions): add RepeatTieEvent
4240
4241         * lily/repeat-tie-engraver.cc (acknowledge_note_head): new file. cut & paste
4242         froum Laissez_vibrer_engraver.
4243
4244         * ly/declarations-init.ly (repeatTie): add \repeatTie
4245
4246         * scm/define-grobs.scm (all-grob-descriptions): add RepeatTie, RepeatTieColumn
4247
4248         * scm/define-grob-properties.scm (all-user-grob-properties): add
4249         head-direction property.
4250
4251         * lily/tie-formatting-problem.cc (from_semi_ties): rename from
4252         from_lv_ties. Take head direction argument.
4253
4254         * lily/semi-tie-column.cc: rename from
4255         laissez-vibrer-tie-column.cc. Rename class too.
4256
4257         * lily/semi-tie.cc: rename from laissez-vibrer-tie.cc. Rename
4258         class too.
4259
4260         * lily/paper-score.cc (find_break_indices): move from Break_algorithm.
4261
4262         * lily/break-algorithm.cc (find_break_indices): remove linewidth <
4263         0 case.
4264         (find_breaks): idem.
4265
4266 2006-02-21  Graham Percival  <gpermus@gmail.com>
4267
4268         * Documentation/user/advanced-notation.itely: fixed make-moment]
4269         example.
4270
4271         * Documentation/user/basic-notation.itely: more clarification to
4272         transpose.
4273
4274 2006-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4275
4276         * lily/include/constrained-breaking.hh (class
4277         Constrained_breaking): new file.
4278
4279         * lily/constrained-breaking.cc (resize): new file.
4280
4281         * lily/gourlay-breaking.cc (do_solve): ragged-last iso raggedlast
4282
4283         * Documentation/user/advanced-notation.itely (Clusters): insert
4284         end ignore too.
4285
4286         * lily/tie-column.cc (calc_positioning_done): support for
4287         tie-score debugging
4288
4289         * lily/tie-formatting-problem.cc
4290         (generate_extremal_tie_variations): factor out.
4291         (score_ties_configuration): annotate all tie 
4292         (print_ties_configuration): new routine.
4293         (generate_configuration): nudge extremal ties outside of the head
4294         Y extents.
4295         (score_ties_configuration): oops. convert to staff-space before
4296         determining position symmetry.
4297
4298 2006-02-20  Graham Percival  <gpermus@gmail.com>
4299
4300         * Documentation/user/*-notation.itely: misc minor editing,
4301         shifting doc sections around.
4302
4303         * Documentation/user/*-notation-itely, global.itely,
4304         changing-defaults.itely: added new stuff from NEWS.
4305
4306 2006-02-20  Heikki Junes  <hjunes@cc.hut.fi>
4307
4308         * po/fi.po: update.
4309
4310 2006-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4311
4312         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): don't run
4313         lilypond --verbose for lp-book.
4314
4315         * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
4316         $(outdir)/%.ly $(outdir)/%.ps): use $(srcdir) iso $(shell pwd).
4317
4318         * make/lysdoc-rules.make ($(outdir)/collated-files.tely): use
4319         $(buildscript-dir) iso. absolute depth.
4320
4321         * buildscripts/genicon.py (dir): thinko.
4322
4323         * Documentation/pictures/GNUmakefile ($(outdir)/%.ico): typo.
4324
4325 2006-02-19 Erik Sandberg  <mandolaerik@gmail.com>
4326
4327         * scm/output-lib.scm: swap darkcyan/darkyellow
4328
4329         * THANKS: Add bughunters.
4330
4331 2006-02-19  Graham Percival  <gpermus@gmail.com>
4332
4333         * Documentation/user/programming-interfaces.itely: fixed example.
4334
4335         * Documentation/user/instrument-notation.itely: fix @{ @}.
4336
4337         * scm/script.scm: add avoid-slur for \open.
4338
4339 2006-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4340
4341         * lily/tie-formatting-problem.cc (score_configuration): use
4342         sliding score for min-length. 
4343
4344         * Documentation/pictures/GNUmakefile (local-dist): loose the rule
4345         spaghetti for icons.
4346
4347         * buildscripts/genicon.py (program_name): new file.
4348
4349         * lily/tie-formatting-problem.cc (set_chord_outline): put dots
4350         in outline too.  
4351         (generate_configuration): for small ties, also look for collisions
4352         at Y + DIR*h + DELTA_Y.
4353         (get_variations): consider variation for dot positions too.
4354
4355         * lily/side-position-interface.cc (aligned_side): take abs for
4356         quantized rounded position. Fixes tenuto below staff.
4357
4358         * scm/stencil.scm (annotate-y-interval): robustify: print nan/inf
4359         markers when necessary.
4360
4361         * lily/program-option.cc (internal_set_option): add
4362         strict_infinity_checking option.
4363
4364         * scm/output-lib.scm (cyan): swap yellow and cyan.
4365
4366 2006-02-19  Graham Percival  <gpermus@gmail.com>
4367
4368         * darwin.patch: trivial linenumber update.
4369
4370         * Documentation/user/ {various}: `\context foo = named' changed
4371         to `\new foo = "name"' in docs.
4372
4373 2006-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4374
4375         * scm/stencil.scm (annotate-y-interval): use it.
4376
4377         * scm/lily-library.scm (interval-sane?): new function.
4378
4379         * buildscripts/mf-to-table.py (Char_metric.__init__): remove
4380         tfm_checksum stuff.
4381
4382         * lily/tie-formatting-problem.cc (from_lv_ties): add heads for
4383         common refpoint.
4384
4385         * flower/include/std-vector.hh (iterof): add iterof macro.
4386
4387         * lily/enclosing-bracket.cc (width): new function.
4388
4389         * lily/align-interface.cc (align_elements_to_extents): reinstate
4390         warning.
4391
4392 2006-02-18  Heikki Junes  <hjunes@cc.hut.fi>
4393
4394         * Documentation/index.html.in: fix spelling: thankyous.
4395
4396 2006-02-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4397
4398         * lily/lyric-hyphen.cc: typo.
4399
4400 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4401
4402         * stepmake/stepmake/c++-rules.make ($(outdir)/%.cc
4403         $(outdir)/%.hh): generate h and c in one rule; otherwise -jX
4404         builds don't work. 
4405
4406         * VERSION: release 2.7.35
4407
4408         * lily/beam.cc (get_default_dir): oops. Take abs () for
4409         extremes[DOWN].
4410         (get_default_dir): use extreme position criterion only in absence
4411         of forced stem directions.
4412
4413         * VERSION (PATCH_LEVEL): bump VERSION.
4414
4415         * mf/GNUmakefile: explicit rules for emmentaler/aybabtu
4416         dependencies. Necessary for -jX builds.  
4417
4418 2006-02-17  Jan Nieuwenhuizen  <janneke@gnu.org>
4419
4420         * lily/relocate.cc (setup_paths): Yet another const fix.
4421
4422 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4423
4424         * configure.in (HOST_ARCH): determine HOST_ARCH in configure.
4425
4426         * lily/relocate.cc (setup_paths): oops.
4427
4428 2006-02-17  Heikki Junes  <hjunes@cc.hut.fi>
4429
4430         * Documentation/index.html.in: order links: html before PDF.
4431
4432 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4433
4434         * lily/tie-column-format.cc (Module): remove.
4435
4436         * lily/relocate.cc (setup_paths): GCC 4.2 fixes: const correctness.
4437
4438         * lily/text-spanner.cc (print): idem.
4439
4440         * lily/dynamic-text-spanner.cc (print): only print line if longer
4441         than dash-period.
4442
4443         * lily/auto-change-iterator.cc (change_to): formatting.
4444
4445         * lily/beam.cc (get_default_dir): take extreme note head as input
4446         for stem direction.
4447
4448         * lily/tie.cc (get_default_dir): only look directions for visible
4449         stems. 
4450
4451         * lily/side-position-interface.cc (aligned_side): oops. Don't
4452         mutiply with direction. This fixes quantized (staccato, tenuto)
4453         scripts below notes.
4454
4455         * lily/lyric-hyphen.cc (set_spacing_rods): oops. Multiply with
4456         direction. Fixes c-lyrics-center-align.ly
4457
4458 2006-02-16  Jan Nieuwenhuizen  <janneke@gnu.org>
4459
4460         * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Add copy
4461         constructor.
4462
4463         * lily/std-string.cc:
4464         * lily/include/std-vector.hh (split_string): Move and rename from
4465         lily/include/misc.hh, lily/misc.cc.  Update callers.
4466
4467 2006-02-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4468
4469         * lily/include/pango-font.hh: HAVE_PANGO_FT2 iso. HAVE_PANGO_16
4470
4471 2006-02-16  Jan Nieuwenhuizen  <janneke@gnu.org>
4472
4473         * flower/test-file.cc: New file.
4474
4475         * stepmake/stepmake/test-vars.make (TEST_MODULE_LIBES): Fixes for
4476         libraries.
4477
4478         * flower/GNUmakefile (TEST_MODULE_LIBS): Link to flower lib.
4479
4480 2006-02-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4481
4482         * flower/include/file-storage.hh: remove file.
4483
4484         * lily/include/midi-item.hh (class Midi_track): idem.
4485
4486         * lily/include/source.hh (class Sources): idem.
4487
4488         * lily/include/performance.hh (class Performance): use vector
4489         iso. Cons<>
4490
4491         * flower/include/cons.hh (class Cons): remove file.
4492
4493         * flower/include/flower-proto.hh: remove template cruft.
4494
4495         * lily/include/font-metric.hh: use size_t not vsize for indices.
4496
4497         * flower/include/flower-proto.hh (Module): remove std-vector.hh
4498         from proto.
4499
4500         * lily/include/all-font-metrics.hh: use HAVE_PANGO_FT2
4501
4502         * lily/include/paper-book.hh (class Paper_book):
4503         make get_system_specs() public.
4504
4505         * scm/layout-page-layout.scm (optimal-page-breaks): only consider
4506         the force=10000 case if we don't have a current-best. 
4507
4508         * lily/tuplet-bracket.cc (get_bounds): don't do (size() - 1) for
4509         vsize 
4510
4511         * flower/include/flower-proto.hh: remove outdated templates.
4512
4513         * scm/page.scm: use annotate-spacing
4514
4515 2006-02-15  Graham Percival  <gpermus@gmail.com>
4516
4517         * scm/translation-functions.scm: circle patch from Erlend, thanks!
4518
4519         * THANKS: moved Erlend Aasland to contributors.
4520
4521 2006-02-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4522
4523         * config.hh.in: remove HAVE_PANGO_16
4524
4525         * lily/tuplet-bracket.cc (calc_positions): multiply with
4526         staff-space for beam case. This fixes tuplets+beams on scaled
4527         staves.
4528
4529         * config.hh.in: remove all Kpathsea related defines.
4530
4531         * lily/dot-column.cc (side_position): reach stem via dots->
4532         head->stem. Inspect all stems for dot collisions. 
4533
4534         * lily/dot-column-engraver.cc (class Dot_column_engraver): excise
4535         stem handling.
4536
4537         * lily/bar-number-engraver.cc (process_music): document function
4538         of whichBar.
4539
4540         * lily/score.cc (default_rendering): add pscore, not systems
4541         themselves.
4542
4543         * lily/paper-book.cc (get_system_specs): separate generation of
4544         titles and systems.
4545
4546         * flower/include/std-vector.hh: don't include config.hh
4547
4548 2006-02-15  Jan Nieuwenhuizen  <janneke@gnu.org>
4549
4550         * flower/include/std-vector.hh: Better wrapper compatibility with
4551         std::vector.
4552
4553         * flower/include/flower-proto.hh: Remove cheap forward declaration
4554         attempts.
4555
4556         * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): Bugfix.
4557
4558 2006-02-14  Graham Percival  <gpermus@gmail.com>
4559
4560         * Documentation/user/invoking.itely: add warning about command line.
4561
4562 2006-02-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4563
4564         * lily/include/lily-proto.hh: add Prob, rm Page.
4565
4566         * flower/include/std-vector.hh (VPOS): use 64 bit-proof version.
4567
4568         * VERSION: release 2.7.34
4569
4570         * lily/relocate.cc (framework_relocation): show canary if
4571         GHOSTSCRIPT_VERSION undefined.
4572
4573         * GNUmakefile.in: remove $(VERSION) symlink.
4574
4575         * lily/relocate.cc (setup_paths): add + 
4576
4577 2006-02-13  Heikki Junes  <hjunes@cc.hut.fi>
4578
4579         * Documentation/index.html.in: specify sizes for all big HTML pages.
4580
4581 2006-02-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4582
4583         * config.hh.in: remove @FRAMEWORKDIR@
4584
4585         * lily/system-start-text.cc (get_stencil): new file: separate out
4586         system-start-delimiter text support.
4587
4588         * input/**ly: replace \context with \new where appropriate.
4589         
4590         * THANKS: add Don.
4591
4592         * lily/slur-scoring.cc (get_base_attachments): use
4593         robust_relative_extent. This fixes problems with empty paper-columns. 
4594
4595 2006-02-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4596
4597         * Documentation/topdocs/NEWS.tely (Top): document \new syntax.
4598
4599         * scm/define-music-properties.scm (all-music-properties):
4600         create-new property.
4601
4602         * lily/context-specced-music-iterator.cc (construct_children):
4603         inspect 'create-new property iso. magical $uniqueContextId context
4604         id.
4605
4606         * lily/parser.yy (optional_id): allow \new "Bar" = "foo" too.
4607
4608         * lily/context-key-manager.cc (Module): new file. Encapsulate
4609         object key generation.
4610
4611         * lily/include/context-key-manager.hh (Module): new file.
4612
4613 2006-02-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4614
4615         * scm/define-grobs.scm (all-grob-descriptions): center instrument
4616         names vertically
4617
4618         * configure.in (LINK_GXX_STATICALLY): strip -DSTRING_UTILS_INLINED
4619         options.
4620         (reloc_b): excise --enable-framework-dir
4621
4622         * lily/relocate.cc (framework_relocation): use getenv
4623         LILYPOND_GS_VERSION or -DGHOSTSCRIPT_VERSION to set GS version.
4624
4625 2006-02-11  Jan Nieuwenhuizen  <janneke@gnu.org>
4626
4627         * flower/include/std-string.hh: 
4628         * flower/include/std-vector.hh: Finish std:: conversion; move
4629         flower extensions from std:: namespace.  Update users.
4630
4631         * lily/include/lily-proto.hh: Replace Link_array__*_ macros by
4632         their expansion to vector<*>.  Update users.
4633
4634 2006-02-10  Graham Percival  <gpermus@gmail.com>
4635
4636         * Documentation/user/invoking.itely: add example to File structure.
4637
4638         * Documentation/user/ instrument-notation.itely, cheatsheet.itely,
4639         examples.itely, putting.itely: {\new|\context} Lyrics \lyricsto.
4640
4641 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4642
4643         * ly/paper-defaults.ly: typo.
4644
4645         * lily/parenthesis-engraver.cc (acknowledge_grob): don't do
4646         set_parent() for parentheses. This will make it show up in bbox
4647         calculations.
4648
4649         * scm/output-lib.scm (parentheses-item::print): rewrite, using
4650         ly:grob-common* functions.
4651
4652         * lily/grob-scheme.cc (LY_DEFINE):
4653         ly:grob-common-refpoint-of-array: new function 
4654         ly:grob-common-refpoint: new function 
4655         ly:grob-relative-coordinate: new function 
4656
4657         * lily/instrument-name-engraver.cc (process_music): use
4658         Text_interface::is_markup(). This fixes \markup on instrument names.  
4659
4660         * scm/define-grobs.scm (all-grob-descriptions): set line-thickness
4661         for ties and slurs.
4662
4663         * lily/slur.cc (print): idem.
4664
4665         * lily/tie.cc: add line-thickness for ties. 
4666
4667 2006-02-10  Jan Nieuwenhuizen  <janneke@gnu.org>
4668
4669         * scm/output-svg.scm: Document diversion from GNU coding standards
4670         as a workaround for a bug in Microsoft Internet Explorer.
4671
4672 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4673
4674         * lily/instrument-name-engraver.cc (process_music): use
4675         is_markup() iso. is_string()
4676
4677         * Documentation/user/changing-defaults.itely (Module): add menu entry.
4678
4679         * lily/percent-repeat-engraver.cc (process_music): only look at
4680         main_part_ for % repeats.
4681
4682         * lily/stem-tremolo.cc (get_beam_translation): new function.
4683         (calc_slope): new function.
4684         (height): don't use real slope.
4685
4686 2006-02-10  Jürgen Reuter  <reuter@ipd.uka.de>
4687
4688         * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: add
4689         new connect-to-neighbor, control-points and staff-padding
4690         properties to make ligature brackets showing up again.
4691
4692 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4693
4694         * VERSION: release 2.7.33
4695
4696         * lily/relocate.cc (prefix_relocation): oops. One TOPLEVEL_VERSION
4697         too many.
4698
4699         * Documentation/user/changing-defaults.itely (Difficult tweaks):
4700         remove applyOutput example.
4701         (Objects connected to the input): document \tweak, \parenthesize
4702
4703         * lily/relocate.cc (prefix_relocation): allow "current"
4704         iso. TOPLEVEL_VERSION for share/lilypond/ suffix. This makes
4705         changing VERSION in a lily tree less painful.
4706
4707         * input/regression/parenthesize.ly: new file. 
4708
4709         * scm/output-lib.scm (parenthesize-element): new function.
4710
4711         * scm/define-grobs.scm (all-grob-descriptions): add ParenthesesItem.
4712
4713         * lily/parenthesis-engraver.cc (acknowledge_grob): new file.
4714
4715         * lily/accidental-engraver.cc (make_standard_accidental): reroute
4716         cause: accidentals are caused by note heads, not note events. 
4717
4718 2006-02-08  Graham Percival  <gpermus@gmail.com>
4719
4720         * darwin.patch: small patch from Erlend, thanks!
4721
4722         * Documentation/user/basic-notation.itely: add stem-neutral example.
4723
4724         * Documentation/user/putting.itely: clarifications.
4725
4726 2006-02-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4727
4728         * Documentation/topdocs/NEWS.tely (Top): remove internal cleanup
4729         note, add more guidelines to what should go into NEWS.
4730
4731         * input/sakura-sakura.ly: document how to override font.
4732
4733         * input/regression/font-family-override.ly:  doc -dshow-available-fonts
4734
4735 2006-02-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4736
4737         * lily/midi-item.cc (to_string): truncate time sig at 255 beats.
4738
4739 2006-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
4740
4741         * scripts/convert-ly.py (lilypond_version_re_str): Move from
4742         convertrules.  Add explicit grouping, needed for python2.2.
4743
4744 2006-02-07  Jan Nieuwenhuizen  <janneke@gnu.org>
4745
4746         * Documentation/topdocs/NEWS.tely (Top): Mention code cleanup.
4747
4748 2006-02-07  Graham Percival  <gpermus@gmail.com>
4749
4750         * Documentation/user/global.itely: fix line-width in (text) docs.
4751
4752         * Documentation/user/lilypond-book.itely: same.
4753
4754 2006-02-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4755
4756         * VERSION (PACKAGE_NAME): release 2.7.32
4757
4758         * Documentation/topdocs/NEWS.tely (Top): document new variable
4759         naming.
4760
4761         * flower/include/array.icc (Message): remove file.
4762
4763         * flower/include/std-vector.hh: make sure vsize and VPOS are
4764         defined for binary_search_bounds().
4765
4766         * flower/std-string.cc (std): add to_string(long unsigned).
4767
4768         * configure.in (gui_b): excise std_string option.
4769         (gui_b): excise std_vector option.
4770
4771         * flower/string.cc (Module): excise flower array & string
4772
4773         * flower/include/std-string.hh: excise flower string.
4774
4775         * {ly,lily,scm}/*: use dashes in \paper and \layout variables
4776
4777         * python/convertrules.py (lilypond_version_re_str): require
4778         only numbers and dots in \version string.
4779
4780 2006-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4781
4782         * lily/system-start-delimiter.cc (print): allow style = text too.
4783
4784         * lily/system-start-delimiter-engraver.cc
4785         (acknowledge_system_start_text): new function, also add add to
4786         support of system-start-text (instrument names). This fixes
4787         instrument names on piano staves.
4788
4789         * lily/instrument-name-engraver.cc: rewrite. Use
4790         system-start-delimiter approach. This save memory and cpu.
4791
4792         * scm/define-grobs.scm (all-grob-descriptions): remove
4793         instrument-name from break-alignment.
4794
4795         * mf/GNUmakefile ($(NCSB_TTFS)): depend on pfx2ttf script too.
4796
4797 2006-02-05  Jan Nieuwenhuizen  <janneke@gnu.org>
4798
4799         * stepmake/stepmake/generic-vars.make (LOOP): Add PLUS to keep -j
4800         jobserver going.
4801
4802         * configure.in (std_vector): On by default.
4803
4804         * lily/include/font-metric.hh:
4805         * lily/include/tfm-reader.hh: 
4806         * lily/include/spanner.hh: Use unsigned for indices and sizes.
4807         Update users.
4808
4809         * Documentation/user/changing-defaults.itely: Fix link v2.5, out-www.
4810
4811 2006-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4812
4813         * VERSION (PACKAGE_NAME): 2.7.31
4814
4815         * scm/framework-ps.scm (dump-stencil-as-EPS): don't hardcode left
4816         EPS edge at 0, but take minimum with left-overshoot. This fixes
4817         cut off system start delims. 
4818
4819         * lily/instrument-name-engraver.cc (stop_translation_timestep):
4820         hack: add to axis group if not added yet. This fixes hara kiri'd
4821         piano staves.
4822
4823         * lily/hara-kiri-group-spanner.cc
4824         (force_hara_kiri_in_y_parent_callback): fix signatures.
4825
4826         * lily/hairpin.cc (print): check next hairpin to see whether or
4827         not to be continuing.
4828
4829 2006-02-04  Jan Nieuwenhuizen  <janneke@gnu.org>
4830
4831         * Remove trailing whitespace from makefiles.
4832         
4833         * flower/include/std-vector.hh: Add binary_search_bounds workaround
4834         for earlier gcc.
4835
4836         * .cvsignore: Add out*, out-www, config-*.  Remove lots of cruft.
4837
4838         * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Workaround.
4839
4840         * config.hh.in (HAVE_STL_DATA_METHOD): Add.
4841
4842         * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): New function.
4843
4844         * configure.in: Use it.
4845
4846 2006-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4847
4848         * scm/music-functions.scm (pitch-of-note): new function.
4849
4850         * ly/music-functions-init.ly: add \octave and \addquote
4851
4852         * lily/parser.yy (music_function_chord_body): softcode \octave.
4853         (lilypond_header): softcode \addquote
4854
4855 2006-02-03  Jan Nieuwenhuizen  <janneke@gnu.org>
4856
4857         * flower/include/std-vector.hh[STD_VECTOR]: Do not include
4858         array.hh, parray.hh at all.  Getting ready to flip the
4859         configure default.
4860
4861         * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
4862
4863         * lily/source-file.cc (file::get_line): Help binary_search_bounds
4864         a bit.
4865
4866         * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
4867
4868 2006-02-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4869
4870         * flower/include/array.hh: typo. 
4871
4872 2006-02-02  Graham Percival  <gpermus@gmail.com>
4873
4874         * Documentation/user/advanced-notation.itely: doc "\#" in text.
4875
4876 2006-02-03  Jan Nieuwenhuizen  <janneke@gnu.org>
4877
4878         * flower/include/pqueue.hh: Derive from std::vector.
4879
4880         * flower/include/parray.hh: Conform to std::vector interface.
4881         Update users.
4882
4883 2006-02-02  Graham Percival  <gpermus@gmail.com>
4884
4885         * Documentation/topdocs/NEWS.itely: grammar fix from Laura.
4886
4887 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4888
4889         * flower/file-path.cc (is_file): remove if 0 section.
4890
4891         * buildscripts/pfx2ttf.fontforge (err): robustness fix for
4892         selecting afii61352.
4893
4894 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
4895
4896         * flower/include/std-vector.hh (boundary): Oops, reverse.
4897
4898         * flower/string-convert.cc (convert::unsigned_string): Bugfix:
4899         remove superfluous `d'.
4900
4901         * flower/include/std-vector.hh (boundary, top): Detach from class.
4902         Remove empty vector shell.
4903
4904         * flower/include/array.hh (reverse, swap): Detach from class.
4905         Update users.
4906         
4907         * flower/include/std-vector.hh
4908         * flower/include/array.hh (concat): Globally change to insert ().
4909
4910         
4911         * flower/include/std-vector.hh
4912         * flower/include/parray.hh
4913         * flower/include/array.hh (elem, elem_ref): Globally replace by
4914         at ().
4915
4916 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4917
4918         * Documentation/topdocs/NEWS.tely (Top): use ly: prefix for members.
4919
4920         * python/convertrules.py (FatalConversionError.sub_cxx_id):
4921         anticipate on identifier substitutions.
4922
4923 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
4924
4925         * flower/include/std-vector.hh (insert): Remove, replace by
4926         std::vector interface.  Update callers.
4927
4928         * flower/include/array.icc (insert): Change signature to
4929         match std::vector interface.
4930         
4931         * flower/include/array.icc (vector_sort): Bugfix.
4932
4933 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4934
4935         * lily/parser.yy (output_def_head_with_mode_switch): new
4936         production. Result: dashes and underscores may be used in the
4937         \paper block.
4938
4939         * lily/lexer.ll: add DASHED_WORD.  Accept in INITIAL mode.
4940
4941         * python/convertrules.py (conv): oops. One slash too much.
4942
4943 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
4944
4945         * flower/include/std-vector.hh (sort): Remove, replace by
4946         ::vector_sort.  Update callers.
4947
4948         * flower/include/std-vector.hh (slice): Remove.  Update callers.
4949         (sort): Bugfix.
4950
4951         * flower/test-std.cc (vector_sort): New test.
4952
4953 2006-02-01  Graham Percival  <gpermus@gmail.com>
4954
4955         * Documentation/user/putting.itely: fixes from Erik.
4956
4957 2006-02-01  Jan Nieuwenhuizen  <janneke@gnu.org>
4958
4959         * flower/test-std.cc: Add simple unit test for vector migration.
4960
4961         * stepmake/stepmake/test*: Unit test support.
4962
4963         * flower/include/std-vector.hh (del): Remove.  Use erase (),
4964         update callers.
4965
4966         * flower/include/array.hh (begin, end): Add.
4967         (del, get): Remove.
4968
4969 2006-02-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4970
4971         * lily/include/lily-guile-macros.hh (MAKE_SCHEME_CALLBACK): use
4972         std::string not String. 
4973
4974         * lily/context-def.cc (path_to_acceptable_context): use INT_MAX
4975         iso UINT_MAX.
4976
4977         * lily/prob.cc (Prob): copy type_ too.
4978
4979         * lily/lily-guile.cc (mangle_cxx_identifier): new
4980         function. Class_bla::foo_bar_[px] ->
4981         ly:class-bla::foo-bar[?!]. Changes throughout
4982
4983 2006-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4984
4985         * flower/include/guile-compatibility.hh (scm_from_unsigned): add scm_from_unsigned().
4986
4987         * lily/beam.cc (calc_direction): take dir from visible stem in
4988         degenerate case.
4989
4990 2006-01-31  Jan Nieuwenhuizen  <janneke@gnu.org>
4991
4992         * lily/melody-spanner.cc (spanner::calc_neutral_stem_direction):
4993         Fix -1, >=0 boundary checks for unsigned vsize.
4994
4995         * lily/separating-group-spanner.cc (spanner::find_rods): Fix >=0
4996         loop for unsigned vsize.
4997
4998         * configure.in (--enable-std-vector): New option.
4999         (--enable-std-string): On by default.
5000
5001         * flower/include/std-vector.hh: New file.  Enable switch to
5002         std::vector, update client code.
5003
5004 2006-01-30  Graham Percival  <gpermus@gmail.com>
5005
5006         * scm/document-translation.scm: clarify "this context is also
5007         known as".  Thanks, Werner!
5008
5009         * Documentation/user/putting.itely: small fixes from Don Blaheta.
5010
5011         * Documentation/user/invoking.itely: small fix from Don.
5012
5013 2006-01-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5014
5015         * scm/lily.scm (define-scheme-options): rename option
5016         preview-include-book-title to book-title-preview
5017         (define-scheme-options): move force-eps-font-include (from paper
5018         block) to eps-font-include -d option.
5019
5020         * VERSION (PATCH_LEVEL): release 2.7.30
5021
5022         * input/bach-schenker.ly (staffPiano): new file.
5023
5024         * buildscripts/pfx2ttf.fontforge: remove No. glyph from TTF file.
5025
5026         * Documentation/topdocs/NEWS.tely (Top): simplify NEWS entry, add
5027         credits to Nicolas.
5028
5029         * scm/define-markup-commands.scm (epsfile): add scaling to \epsfile.
5030
5031         * ps/lilyponddefs.ps: remove start-system, stop-system,
5032         start-page fluff. This saves putting { } code on the stack, fixing
5033         stack overflows when including EPS files.
5034
5035 2006-01-29  Graham Percival  <gpermus@gmail.com>
5036
5037         * Documentation/user/putting.itely: minor fixes (comments on -devel).
5038
5039 2006-01-29  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5040
5041         * Documentation/topdocs/NEWS.tely (Top): add \parallelMusic news.
5042
5043 2006-01-28  Graham Percival  <gpermus@gmail.com>
5044
5045         * Documentation/user/putting.itely: minor fixes (mostly tab->space).
5046
5047 2006-01-28  Jan Nieuwenhuizen  <janneke@gnu.org>
5048
5049         * input/mutopia/claop.py: Update.
5050
5051 2006-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5052
5053         * input/regression/completion-heads.ly (texidoc): fix.
5054
5055         * lily/staff-symbol-referencer.cc (on_staff_line): idem.
5056
5057         * lily/tie-formatting-problem.cc
5058         (set_ties_config_standard_directions): use abs iso fabs for ints.
5059
5060         * Documentation/topdocs/INSTALL.texi (Top): document ncsb requirement.
5061
5062         * mf/feta-bolletjes.mf (overdone_heads): solfa_noteheight, a
5063         little less than noteheight, to prevent overlaps in chords.
5064
5065         * lily/note-collision.cc (check_meshing_chords): wipe upper FA
5066         head, and fudge stem-attachment.
5067
5068         * scm/lily-library.scm (not): define hash-for-each for guile 1.6
5069
5070         * lily/slur-scoring.cc (get_best_curve): handle opt_idx < 0 case.
5071
5072 2006-01-27  Jan Nieuwenhuizen  <janneke@gnu.org>
5073
5074         * lily/main.cc (main): Debugging aid: catch exceptions.
5075
5076         * flower/std-string.cc (to_string): Robustification.  Fixes midi
5077         output with std::string.
5078
5079 2006-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5080
5081         * Documentation/topdocs/INSTALL.texi (Top): remove libkpathsea notes.
5082
5083 2006-01-26  Jan Nieuwenhuizen  <janneke@gnu.org>
5084
5085         * Fix -DSTRING_UTILS_INLINED.
5086
5087 2006-01-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5088
5089         * VERSION (PATCH_LEVEL): release 2.7.29
5090
5091         * lily/relocate.cc (setup_paths): mingw uses std string too.
5092
5093         * lily/*.cc: various fixes for substr(ARG).
5094
5095         * lily/sustain-pedal.cc (print): 
5096
5097         * flower/file-name.cc (slashify): use std strings.
5098
5099         * flower/string-convert.cc: remove publib.h
5100
5101         * scm/define-markup-commands.scm (verbatim-file): new markup
5102         command \verbatim-file
5103
5104         * Documentation/topdocs/NEWS.tely: fixup URLs
5105
5106         * input/regression/alignment-vertical-manual-setting.ly (Module):
5107         new file.
5108
5109         * lily/align-interface.cc (align_elements_to_extents): overwrite
5110         translations with numbers in alignment-offsets from left bound
5111
5112         * scm/page.scm (make-page-stencil): read X-offset from paper-system.
5113         (page-translate-systems): new function: take into account Y-offset.
5114
5115         * Documentation/topdocs/NEWS.tely (Top): document new features.
5116
5117         * input/regression/page-layout-manual-position.ly (Module): new
5118         file.
5119
5120 2006-01-26  Jan Nieuwenhuizen  <janneke@gnu.org>
5121
5122         * flower/file-path.cc (path::parse_path): Oops.
5123
5124         * Finish std::string interface.  For now, use std:: marker
5125         throughout for easy s/r.
5126
5127 2006-01-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5128
5129         * Documentation/user/putting.itely (Score is a single musical
5130         expression): typo.
5131         (Score is a single musical expression): more typos.
5132
5133         * scm/page.scm (annotate-space-left): thinko.
5134         (annotate-page): more thinkos.
5135
5136 2006-01-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5137
5138         * scm/layout-page-layout.scm (write-page-breaks): record tweaks
5139         for different \score blocks separately.
5140         (post-process-pages): put write-page-layout into paper block.
5141
5142         * lily/output-def.cc (get_parser): new file.
5143
5144         * lily/output-def-scheme.cc (LY_DEFINE): ly:output-def-parser, new
5145         file.
5146
5147         * lily/include/output-def.hh (class Output_def): add parser_ member.
5148
5149         * input/regression/page-layout-twopass.ly (Module): new file.
5150
5151         * scm/lily.scm: remove cpp hack.
5152
5153         * lily/lyric-engraver.cc (get_voice_to_lyrics): use NPOS everywhere.
5154
5155 2006-01-25  Jan Nieuwenhuizen  <janneke@gnu.org>
5156
5157         * GNUmakefile.in (c-clean): New target.
5158
5159         * flower/include/std-string.hh: String/std::string compatibility:
5160         Use NPOS for `not found' (iso -1), use ssize for length () and pos
5161         type.
5162
5163         * flower/rational.cc: 
5164         * flower/include/rational.hh: 
5165
5166         * flower/offset.cc: 
5167         * flower/include/offset.hh: 
5168
5169         * flower/interval.cc: 
5170         * flower/include/interval.hh: 
5171
5172         * flower/string-convert.cc: 
5173         * flower/include/string-convert.hh: Use std::string [interface].
5174         Update callers.
5175
5176 2006-01-25  Heikki Junes  <hjunes@cc.hut.fi>
5177
5178         * Documentation/index.html.in: clean up.
5179
5180 2006-01-25  Graham Percival  <gpermus@gmail.com>
5181
5182         * Documentation/user/putting.itely: another new untested doc section.
5183
5184 2006-01-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5185
5186         * scm/layout-page-layout.scm (write-page-breaks): write
5187         \spacingTweaks #ALIST. Handle grace timing.
5188
5189         * scm/: more imports.
5190
5191         * scm/page.scm (make-page): add footer/header.
5192         (annotate-space-left): revise: only take page argument.
5193         (layout->page-init): new function.
5194
5195         * scm/layout-page-layout.scm (write-page-breaks): preliminary
5196         version of the system/spacing/linebreak hack writing to the output
5197
5198         * lily/prob-scheme.cc (LY_DEFINE): take optional 'key val args in
5199         ly:make-prob.
5200
5201         * lily/grob-scheme.cc (LY_DEFINE): ly:spanner-get-bound ->
5202         ly:spanner-bound
5203
5204 2006-01-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5205
5206         * scm/stencil.scm (annotate-y-interval): move from layout-page-layout.scm
5207
5208         * scm/paper-system.scm (paper-system-annotate): new file. Handle paper-system.
5209
5210         * scm/layout-page-layout.scm (optimal-page-breaks): move all page
5211         handling to page.scm
5212
5213         * lily/prob-scheme.cc (LY_DEFINE): new file.
5214         (LY_DEFINE): functions ly:make-prob , ly:prob-type? , ly:prob-(set-)property(!)
5215
5216         * lily/music-scheme.cc (LY_DEFINE): rewrite get/set property using
5217         prob functions.
5218
5219         * lily/music.cc (derived_mark): derive Music from Prob.
5220
5221         * lily/paper-system.cc (LY_DEFINE): derive from Prob.
5222
5223         * lily/prob.cc (Module): Implement Prob (Property Object), object
5224         with shared and r/w property alists.  
5225
5226         * lily/include/prob.hh (Module): new file. Declare Prob.
5227
5228         * flower/string.cc: remove is_empty().
5229
5230         * flower/include/string.hh (class String): remove String:: qualifier.
5231
5232         * buildscripts/analyse-cxx-log.py: new file. Read compile log to
5233         substitute appropriate functions.
5234
5235         * flower/include/string.hh (class String): remove to_str0 and
5236         is_empty(). S&R everywhere.
5237
5238 2006-01-23  Graham Percival  <gpermus@gmail.com>
5239
5240         * Documentation/user/basic-notation.itely: add hairpin
5241         after-linebreak tweak to commonprop.
5242
5243         * Documentation/user/putting.itely: added two new sections.
5244
5245 2006-01-23  Jan Nieuwenhuizen  <janneke@gnu.org>
5246
5247         * flower/international.cc: 
5248         * flower/include/international.hh: 
5249
5250         * flower/getopt-long.cc: 
5251         * flower/include/getopt-long.hh: Use std::string [interface].
5252         Update callers.
5253
5254         * flower/include/std-string.hh: Oops, bugfix for --disable-std-string.
5255
5256         * stepmake/stepmake/executable-rules.make: Add dependency on
5257         module libraries.
5258
5259 2006-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
5260
5261         * flower/file-path.cc: 
5262         * flower/include/file-path.hh: Use std::string [interface].
5263         Update callers.
5264
5265         * flower/direction.cc: 
5266         * flower/axis.cc: Unused.  Remove.
5267
5268         * configure.in (--enable-std-string): New option.
5269
5270         * flower/std-string.cc: 
5271         * flower/include/std-string.hh: New file.
5272
5273         * flower/file-name.cc[STD_STRING]:
5274         * flower/include/file-name.hh[STD_STRING]: Use it.  Update callers.
5275
5276 2006-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5277
5278         * scm/output-svg.scm (placebox): no GNU coding standards in SVG output. 
5279
5280         * scm/define-markup-commands.scm (with-dimensions):
5281         with-dimensions markup command.
5282
5283         * input/test/font-table.ly: use it.
5284
5285         * lily/open-type-font.cc (glyph_list): new function.
5286
5287         * lily/open-type-font-scheme.cc (LY_DEFINE): ly:otf-glyph-list function.
5288
5289         * lily/ttf.cc: remove ly:font-glyph-list scheme function
5290
5291 2006-01-22  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5292
5293         * ly/music-functions-init.ly (parallelMusic): new music function
5294         for parallel music entry.
5295
5296         * scm/define-music-properties.scm (all-music-properties): new
5297         'void music property
5298
5299         * scm/music-functions.scm (ly:music-message): make public, to be
5300         used in music function definitions
5301
5302         * scm/lily-library.scm (collect-music-for-book): discard music
5303         when the 'void property is set.
5304
5305 2006-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5306
5307         * lily/ttf.cc (LY_DEFINE): store name before destroying face.
5308
5309         * mf/GNUmakefile: idem.
5310
5311         * buildscripts/mf-to-table.py (help): excise fetaXXlist.ly support.
5312
5313         * stepmake/bin/install.py (dest): Only chmod/chown just created directories
5314
5315         * Documentation/user/notation-appendices.itely (The Feta font):
5316         use it.
5317
5318         * input/test/font-table.ly: new file. Generate font table within lily.
5319
5320         * Documentation/user/notation-appendices.itely (The Feta font):
5321         use new font-table.ly file. 
5322
5323         * stepmake/stepmake/install-out-targets.make
5324         (local-install-outfiles): only create directory if
5325         $(INSTALLATION_OUT_DIR) is defined. This fixes install on Gentoo.
5326
5327 2006-01-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5328
5329         * lily/ttf.cc (LY_DEFINE): new function ly:font-glyph-list.
5330
5331         * VERSION (PACKAGE_NAME): release 2.7.28
5332
5333         * scm/framework-ps.scm (write-preamble): use it to pick exactly
5334         the right font from a Mac dfont.
5335         (write-preamble): don't forget directory, only look at files.
5336
5337         This fixes problems with TTF files in dfonts that don't match
5338         their PostScript names.
5339          
5340         * lily/ttf.cc (LY_DEFINE): ly:ttf-ps-name: new routine to extract
5341         PS name from TTF font.
5342
5343         * input/regression/tie-manual.ly: document new feature.
5344
5345         * Documentation/topdocs/NEWS.tely (Top): add tie NEWS.
5346
5347         * VERSION (MY_PATCH_LEVEL): bump to .28
5348
5349         * Documentation/user/basic-notation.itely (Ties): add tie examples
5350         refs.
5351
5352         * lily/tie-formatting-problem.cc (score_ties_configuration):
5353         symmetry penalties for outer ties.
5354
5355 2006-01-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5356
5357         * lily/tie-formatting-problem.cc (generate_configuration) 
5358         (set_manual_tie_configuration): skip non-pair manual
5359         tie-configuration, so you can set individual ties as
5360
5361           #'tie-configuration = #'((7 . 1) #t (-3 . 1))
5362
5363         * input/regression/tie-chord.ly: use generateTiePattern to
5364         simplify file.
5365
5366         * lily/tie-formatting-problem.cc (peak_around): new function.
5367         (score_configuration): use sliding criterion for staff line collisions. 
5368         (score_configuration): idem for dot collisions.
5369         (generate_configuration): use separate stem_gap for gap to stem.
5370
5371         * lily/include/tie-formatting-problem.hh (struct Tie_details):
5372         separate penalty factors for x and y distance.
5373         (struct Tie_details): separate penalties for tip and center line collisions.
5374
5375 2006-01-19 Han-Wen Nienhuys  <hanwen@xs4all.nl>
5376
5377         * lily/tie-formatting-problem.cc (generate_configuration): make
5378         large ties avoid stafflines in the horizontal section.
5379         (score_configuration): use softcoded penalties
5380         (score_aptitude): idem.
5381
5382         * lily/tie-helper.cc (from_grob): softcode tie details
5383
5384         * lily/staff-symbol-referencer.cc (on_staff_line): new function
5385
5386         * lily/staff-symbol-referencer.cc (on_line): rename from
5387         on_staffline 
5388
5389 2006-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5390
5391         * ly/music-functions-init.ly: remove duplicate tag.
5392
5393         * lily/include/*.hh: GCC 4.1 fixes.
5394
5395 006-01-16  Erlend Aasland  <erlenda@gmail.com>
5396
5397         * Documentation/user/global.itely: fix typos; @bugs -> @refbugs
5398
5399         * scm/define-music-types.scm: fix bug in desc. string
5400         for OverrideProperty
5401
5402 2006-01-15 Erik Sandberg  <mandolaerik@gmail.com>
5403
5404         * scripts/lilypond-book.py: bugfix
5405
5406         * scm/define-music-types.scm: fix typos.
5407
5408 2006-01-14  Graham Percival  <gpermus@gmail.com>
5409
5410         * Documentation/user/ basic-notation.itely, global.itely,
5411         advanced-notation.itely, instrument-notation.itely: small
5412         additions (bugs and commonly tweaked properties).
5413
5414 2006-01-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5415
5416         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): generic
5417         detection of mingw build.
5418         (MINGW_BUILD): opps.
5419
5420 2006-01-12  Jan Nieuwenhuizen  <janneke@gnu.org>
5421
5422         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Add
5423         i686-mingw32.
5424
5425 2006-01-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5426
5427         * scm/music-functions.scm (skip->rest): add skip->rest
5428
5429 2006-01-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5430
5431         * lily/font-config.cc (init_fontconfig): call FcConfigBuildFonts()
5432         explicitly.
5433
5434         * lily/font-config-scheme.cc (LY_DEFINE): also display font and
5435         config dirs. Aids debugging. 
5436         (display_config): also display config files.
5437
5438 2006-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5439
5440         * VERSION: release 2.7.27
5441
5442         * lily/bar-line.cc (calc_bar_size): inspect staff->extent (Y_AXIS)
5443         for determining bar size.
5444
5445         * lily/staff-symbol.cc (print): place lines at distance line-positions
5446
5447         * scm/define-grob-properties.scm (all-user-grob-properties): add
5448         line-positions.
5449
5450         * lily/staff-symbol.cc (height): new function.
5451
5452         * input/regression/staff-line-positions.ly:  new file.
5453
5454 2006-01-06  Graham Percival  <gpermus@gmail.com>
5455
5456         * input/test/add-staccato.ly: remove reference to old file.
5457
5458 2006-01-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5459
5460         * scripts/lilypond-book.py (invokes_lilypond): allow . in path to
5461         lilypond binary too.
5462
5463 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5464
5465         * make/mutopia-rules.make (Module): use LILYPOND_BINARY
5466
5467 2006-01-06  Jan Nieuwenhuizen  <janneke@gnu.org>
5468
5469         * scripts/midi2ly.py: Bugfix: Declare datadir.
5470
5471         * make/ly-rules.make:
5472         * make/mutopia-rules.make: Use LILYPOND_BINARY (WAS: LILYPOND, but
5473         that seems to be gone). Fixes make web.
5474
5475         * The grand 2005-2006 replace.
5476
5477         * VERSION (MY_PATCH_LEVEL): Stay on .26 for now.
5478
5479 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5480
5481         * make/lilypond-vars.make: set LILYPOND_BINARY variable
5482         (LILYPOND_BOOK_LILYPOND_FLAGS): new variable
5483         LILYPOND_BOOK_LILYPOND_FLAGS to hold system dependent settings,
5484         like -dgs-font-load.
5485
5486         * Documentation/user/GNUmakefile ($(outdir)/interfaces.itexi):
5487         remove absolute path to lilypond binary.
5488         
5489 2006-01-05 Pedro Kroeger    <kroeger@pedrokroeger.net>
5490
5491         * configure.in (NCSB_DIR): fix --with-ncsb-dir option.
5492
5493 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5494
5495         * make/lilypond-vars.make: support LILYPOND_EXTERNAL_BINARY variable.
5496
5497         * mf/GNUmakefile: remove broken dvips map symlink.
5498
5499 2006-01-04  Jan Nieuwenhuizen  <janneke@gnu.org>
5500
5501         * lily/main.cc: 
5502         * configure.in: Cosmetic fixes.
5503
5504 2006-01-04  Mats Bengtsson  <mabe@s3.kth.se>
5505
5506         * Documentation/user/music-glossary.tely (Pitch names): Added
5507         Spanish pitch names and durations, thanks to Ernesto Gancedo
5508
5509 2006-01-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5510
5511         * scm/lily.scm (define-scheme-options): use quasi-quote for option
5512         init. Fixes verbose printing of .scm files.
5513
5514         * stepmake/aclocal.m4: add spaces before - options.
5515         
5516 2006-01-03  Jan Nieuwenhuizen  <janneke@gnu.org>
5517
5518         * lily/relocate.cc (setup_paths): Bugfix: do not store result
5519         of path search in local block variable.
5520
5521 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5522
5523         * configure.in (NCSB_DIR): --enable-ncsb-dir
5524         (LINK_GXX_STATICALLY): denko.
5525
5526         * mf/GNUmakefile ($(NCSB_TTFS)): NCSB_DIR iso. NCSB_PATH. 
5527
5528         * configure.in (LINK_GXX_STATICALLY): --enable-ncsb-path option. 
5529         use locate to find c059033l.pfb. 
5530         
5531 2006-01-02  Jan Nieuwenhuizen  <janneke@gnu.org>
5532
5533         * lily/tie-formatting-problem.cc
5534         (problem::generate_base_chord_configuration): Use my_round (was
5535         round).
5536
5537         * lily/source-file.cc (file::get_counts)[!HAVE_MBRTOWC]: Bugfix,
5538         do not invoke mbrtowc.
5539
5540         * lily/relocate.cc (setup_paths): Add more debugging verbosity.
5541
5542 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5543
5544         * scm/lily.scm (lilypond-all): oops. remove debugging hack.
5545
5546 2005-01-02  Heikki Junes  <hjunes@cc.hut.fi>
5547
5548         * Documentation/user/invoking.itely (svg): revise.
5549
5550 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5551
5552         * lily/lexer.ll: use sourcefilename iso. renameinput.
5553
5554 2006-01-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5555
5556         * mf/GNUmakefile ($(NCSB_TTFS)): revise rule. Create
5557         <PostScriptName>.ttf instead of c059XXXttf.
5558
5559         * lily/program-option.cc (LY_DEFINE): special support for
5560         --verbose, so it works before option init too.
5561  
5562         * mf/GNUmakefile (local-install): oops.
5563
5564         * lily/lyric-hyphen.cc (print): oops.
5565
5566         * buildscripts/pfx2ttf.fontforge: new file.
5567         
5568         * mf/GNUmakefile (NCSB_PATH): add vars for NCSB.
5569         ($(outdir)/%.ttf): new rule. 
5570
5571         * scm/define-grobs.scm (all-grob-descriptions): add font-interface
5572         to LyricHyphen.
5573
5574         * lily/lyric-hyphen.cc (print): multiply hyphen height by
5575         font-size
5576
5577 2005-12-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5578
5579         * VERSION: release 2.7.26
5580         
5581         * mf/GNUmakefile (install-fc-cache): remove old font.cache-1 files.
5582
5583 2005-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5584
5585         * lily/font-config.cc (init_fontconfig): verbosity.
5586
5587         * THANKS: add Muziekacademie Lede. 
5588
5589         * scripts/musicxml2ly.py (print_voice_definitions): new function 
5590         (print_score_setup): new function
5591         (convert): read part definition to output staves properly.
5592
5593         * python/musicxml.py (Measure.get_notes): new class. Wrap lists of
5594         Music_xml notes.
5595
5596         * python/musicexp.py (Output_printer.__init__): use _ in data
5597         members.
5598         (Output_printer.unformatted_output): new function: no formatting,
5599         but count braces.
5600         (Duration.get_length): remove isinstance() checks for
5601         Output_printer everywhere.
5602
5603         * input/regression/lyrics-bar.ly (texidoc): add
5604         Separating_line_group_engraver.
5605
5606 2005-12-29  Jan Nieuwenhuizen  <janneke@gnu.org>
5607
5608         * lily/relocate.cc (framework_relocation): New function,
5609         factored from set_relocation ().
5610         (prefix_relocation): Rename from set_relocation ().
5611         (setup_paths): Use it.
5612
5613 2005-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5614
5615         * scm/*.scm: use LEFT/RIGHT/UP/DOWN etc. iso. magical
5616         numbers. Patch by Erlend Aasland.
5617
5618 2005-12-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5619
5620         * lily/font-config.cc (init_fontconfig): print warning if cache
5621         file is not existant.
5622
5623         * lily/main.cc: don't use #ifdef but #if
5624
5625 2005-12-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5626
5627         * lily/grob-property.cc (internal_set_property): don't abort on
5628         calculation-in-progress.
5629
5630         * lily/beam.cc (get_default_dir): robustness: don't divide by zero.
5631
5632         * lily/tuplet-bracket.cc (calc_control_points): oops: typo. Read
5633         connect-to-neighbor property not connect-to-other
5634
5635         * lily/program-option.cc (LY_DEFINE): remove Protected_scm global variable.
5636         (LY_DEFINE): oops. don't forget protection.
5637
5638         * flower/parse-afm.cc (Module): strip AFM handling completely.
5639
5640         * lily/stencil-expression.cc: idem.
5641
5642         * lily/grob-interface-scheme.cc (LY_DEFINE): idem.
5643
5644         * lily/function-documentation.cc (ly_add_function_documentation):
5645         use static member iso. Protected_scm
5646
5647         * lily/main.cc: use ifdef ARGV0_RELOCATION iso. MINGW
5648
5649         * config.make.in (prefix): remove HAVE_KPATHSEA_SO
5650
5651 2005-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
5652
5653         * lily/relocate.cc (set_env_dir): New function.
5654         (set_relocation): Use it to fix setting PANGO_PREFIX.
5655
5656 2005-12-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5657
5658         * input/regression/stem-direction-context.ly: remove rest.
5659
5660         * lily/melody-engraver.cc (process_music): restart for bar lines.
5661         (acknowledge_slur): restart for slurs.
5662
5663 2005-12-27  Heikki Junes  <hjunes@cc.hut.fi>
5664
5665         * Documentation/user/invoking.itely: describe how to view SVG 
5666         output using Inkscape which replace embedded fonts with OTF fonts.
5667
5668 2005-12-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5669
5670         * lily/relocate.cc (set_relocation): set PANGO_PREFIX
5671
5672 2005-12-23  Jan Nieuwenhuizen  <janneke@gnu.org>
5673
5674         * lily/melody-engraver.cc (class Melody_engraver): Remove lying
5675         comment.
5676
5677 2005-12-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5678
5679         * VERSION (PACKAGE_NAME): release 2.7.25
5680
5681         * Documentation/topdocs/NEWS.tely (Top): document new feature.
5682
5683         * input/regression/stem-direction-context.ly: new file.
5684
5685         * lily/relocate.cc (set_relocation): add PANGO_PREFIX
5686
5687         * lily/melody-engraver.cc (acknowledge_stem): restart MelodyItem
5688         on rest.
5689
5690         * ly/engraver-init.ly: add Melody_engraver
5691
5692         * lily/beam.cc (calc_direction): use default-direction
5693         iso. get_default_direction()
5694
5695         * scm/define-grob-properties.scm (all-user-grob-properties): add
5696         default-direction property.
5697
5698         * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem.
5699
5700         * lily/stem.cc (calc_default_direction): remove
5701         Stem::get_default_direction, use default-direction with callback
5702         instead.
5703
5704         * lily/melody-spanner.cc (calc_neutral_stem_direction): 
5705
5706         * lily/melody-engraver.cc: new file. Acknowledge stems for
5707         interpolated stem directions. 
5708
5709         * lily/melody-spanner.cc: new file. Interpolate stem directions.
5710
5711         * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem
5712
5713         * lily/slur-configuration.cc (fit_factor): more robust check for
5714         point in curve X-extent.
5715
5716         * lily/slur.cc (outside_slur_callback): return offset_scm, not 0.
5717         (outside_slur_callback): check for 'outside avoidance.
5718
5719         * lily/slur-configuration.cc (score_extra_encompass): don't use
5720         bound->column() == avoid->column() for checking extents, as this
5721         doesn't work for accidentals. 
5722
5723         * lily/slur-engraver.cc (acknowledge_extra_object): remove
5724         DynamicText hardcoding.
5725
5726         * lily/slur-scoring.cc (enumerate_attachments): robustness: don't
5727         crash if bound stem is NULL
5728
5729         * lily/piano-pedal-performer.cc: patch by MWD for enabling piano
5730         pedals.
5731
5732 2005-12-22  Graham Percival  <gpermus@gmail.com>
5733
5734         * scm/define-markup-commands.scm: typo.  @code{\raise}
5735         => @code{\\raise}.
5736
5737         * darwin.patch: now used again, includes a
5738         required patch from fink.
5739
5740 2005-12-21  Heikki Junes  <hjunes@cc.hut.fi>
5741
5742         * po/TODO: mention gtranslator along with kbabel.
5743         * po/fi.po: update translations.
5744
5745 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
5746
5747         * lily/relocate.cc (setup_paths): Bugfix.
5748
5749 2005-12-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5750
5751         * lily/slur-configuration.cc (score_extra_encompass): don't use
5752         "avoid" choice for avoid-slur.
5753
5754         * stepmake/bin/install.py (dest): don't create existing dir.
5755
5756 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
5757
5758         * stepmake/bin/install.py: Remove file before copying.
5759
5760         * config.make.in: 
5761         * stepmake/aclocal.m4: Do not substitute INSTALL.
5762
5763 2005-12-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5764
5765         * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
5766         depend on link-tree.
5767
5768         * lily/relocate.cc (setup_paths): only check path for non-absolute
5769         dir without directory part.
5770
5771         * flower/file-name.cc (is_absolute):  new method.
5772         (is_absolute): check root_ too.
5773
5774 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
5775
5776         * lily/relocate.cc (setup_paths) [__MINGW32__]: Comment-out broken
5777         relocation code.  Oops, don't comment out too much.
5778
5779         * stepmake/stepmake/generic-vars.make (INSTALL): Assign INSTALL_PY
5780         iso itself.
5781
5782         * lily/relocate.cc [HAVE_GETTEXT]: Include libintl.h.  Fixes mingw
5783         compile.
5784
5785 2005-12-20  Jan Nieuwenhuizen  <janneke@gnu.org>
5786
5787         * .cvsignore: Add install-sh.
5788
5789         * autogen.sh (srcdir): Typo.
5790
5791 2005-12-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5792
5793         * autogen.sh (srcdir): urg. Touch install-sh.
5794
5795         * stepmake/bin/install-sh (Module): remove.
5796
5797         * stepmake/stepmake/generic-vars.make (INSTALL): add $(INSTALL).
5798
5799         * lily/include/relocate.hh: new file.
5800
5801         * lily/relocate.cc: new file. Contain relocation logic.
5802
5803         * lily/main.cc (setup_paths): fix: LILYPOND_RELOCATE_PREFIX.
5804         (main): read LILYPOND_VERBOSE as the first thing.
5805
5806         * stepmake/aclocal.m4: remove INSTALL variable.
5807
5808         * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
5809         separate target for making font symlinks.
5810         (documentation-dir): use $(if $(findstring )) for switching off
5811         Documentation.
5812
5813         * stepmake/stepmake/help2man-vars.make (OUT_DIST_FILES): only do
5814         something if DOCUMENTATION is no.
5815
5816 2005-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5817
5818         * VERSION: release 2.7.24
5819
5820         * lily/script-column-engraver.cc (stop_translation_timestep):
5821         delay adding to script-column.
5822
5823         * lily/tuplet-bracket.cc (print): suicide if no control-points. 
5824
5825         * python/convertrules.py (conv): rule for number-visibility
5826
5827         * lily/slur-configuration.cc (score_extra_encompass): different
5828         distance measure for avoid and inside avoidance.
5829         (score_extra_encompass): use 1/(distance+eps) as penalty.
5830
5831         * lily/slur-scoring.cc (generate_avoid_offsets): use 'inside
5832         encompass objects for generating slur curves.
5833
5834         * lily/slur.cc: use details iso. slur-details property.
5835
5836         * input/regression/slur-tuplet.ly: new file.
5837
5838         * lily/slur-engraver.cc (acknowledge_tuplet_number): new function.  
5839
5840         * flower/include/offset.hh (class Offset): new operator /=
5841
5842         * lily/tuplet-number.cc (print): new file, new interface.
5843
5844         * scm/define-grob-properties.scm (all-user-grob-properties):
5845         remove number-visibility property.
5846
5847         * lily/tuplet-bracket.cc (calc_control_points): new function
5848         (calc_connect_to_neighbors): new function.
5849         (print): remove text handling for tuplet numberdef.
5850
5851         * lily/tuplet-engraver.cc (struct Tuplet_description): create
5852         TupletNumbers too. 
5853
5854         * lily/lily-guile.cc (robust_scm2booldrul): new function
5855
5856         * scm/define-grobs.scm (all-grob-descriptions): new grob TupletNumber
5857
5858         * lily/tuplet-bracket.cc (calc_position_and_height): use
5859         staff-padding to control whether tuplet brackets are over staves.
5860
5861         * lily/grob.cc (suicide): clear dim_caches_.
5862
5863         * lily/dimension-cache.cc (clear): new function.
5864
5865         * lily/grob.cc (extent): swap order of min-extent and extent
5866         calculations. This fixes hara kiri staves. 
5867
5868 2005-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
5869
5870         * lily/main.cc: Nitpick: relocation is not based on path, but on
5871         directory (location).
5872
5873 2005-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5874
5875         * lily/main.cc (setup_paths): read LILYPOND_RELOCATE_PREFIX
5876
5877         * stepmake/stepmake/install-targets.make (local-uninstall): idem.
5878
5879         * stepmake/stepmake/install-out-targets.make (local-install-outfiles): idem.
5880
5881         * stepmake/stepmake/help2man-targets.make (install-help2man): idem.
5882
5883         * stepmake/stepmake/generic-vars.make (Module): idem.
5884
5885         * stepmake/stepmake/executable-targets.make (default): use it.
5886
5887         * stepmake/bin/install.py (create_dir): new file. Replace install-sh.
5888
5889         * make/GNUmakefile: don't install make rules.
5890
5891         * lily/main.cc (setup_paths): don't inspect $PATH for argv0 with
5892         slashes.
5893         (prepend_env_path): more verbosity.
5894
5895 2005-12-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5896
5897         * GNUmakefile.in: add dir argument for find command.
5898
5899         * lily/parser.yy (bass_figure): set_spot() for bass figures. This
5900         fixes weird line numbers for point & click.
5901
5902         * lily/source-file.cc (get_counts): init line/column/char counts.
5903
5904 2005-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5905
5906         * lily/main.cc: remove ARGV0_RELOCATION, instead use --relocate.
5907
5908 2005-12-16  Graham Percival  <gpermus@gmail.com>
5909
5910         * Documentation/user/basic-notation.itely, advanced-notation.itely:
5911         minor fixes from Fredric.  Thanks!
5912
5913 2005-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5914
5915         * ly/music-functions-init.ly: add \bar and \clef music function 
5916
5917         * lily/lily-lexer.cc: idem.
5918
5919         * lily/parser.yy (FIXME): remove BAR and CLEF.
5920
5921 2005-12-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5922
5923         * Documentation/topdocs/NEWS.tely (Top): doc string argument change.
5924
5925         * lily/parser.yy (Generic_prefix_music_scm): allow strings as
5926         function arguments too
5927
5928         * lily/main.cc (set_relocation): new function.
5929
5930         * scripts/musicxml2ly.py (convert): add \version
5931
5932         * lily/tie.cc: remove get_default_attachments()
5933
5934         * VERSION (PACKAGE_NAME): release 2.7.23
5935         
5936         * lily/chord-tremolo-engraver.cc (acknowledge_stem): use
5937         ultimate_music_cause(). This fixes core dumps in unfold-all-repeats.ly
5938
5939         * Documentation/topdocs/NEWS.tely (Top): document new feature.
5940
5941         * lily/tie-formatting-problem.cc (score_ties): new function
5942         (get_variations): new function. Try flipping dirs for collisions.
5943         (generate_optimal_chord_configuration): new function. 1-opt search
5944         for better configuration.
5945
5946         * lily/tie-configuration.cc: new file.
5947
5948         * lily/tie.cc: junk Tie::get_configuration()
5949
5950         * lily/tie-formatting-problem.cc (score_ties_aptitude): new function.
5951         (score_ties_configuration): new function.
5952         (generate_ties_configuration): new function.
5953         (generate_base_chord_configuration): new function.
5954         (set_ties_config_standard_directions): Move body from tie-column-format.cc 
5955         (set_manual_tie_configuration): Move body from tie-column-format.cc 
5956
5957         * input/regression/tie-dot.ly: new file.
5958
5959         * lily/tie-formatting-problem.cc (score_configuration): score
5960         tie/dot collisions.
5961
5962         * lily/tie-helper.cc (get_transformed_bezier): new function
5963
5964         * Documentation/topdocs/NEWS.tely (Top): strip out-www.
5965
5966         * stepmake/stepmake/python-module-vars.make (SHARED_FLAGS): use
5967         -undefined suppress iso. -framework Python 
5968
5969         * scm/define-grobs.scm (all-grob-descriptions): set
5970         springs-and-rods (thanks Joe Neeman!)
5971
5972 2005-12-12  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5973
5974         * input/no-notation/display-lily-tests.ly (test): 
5975         * scm/display-lily.scm (tag->lily-string): the syntax for tags has
5976         changed from \tag #'(a b) to \tag #'a \tag #'b
5977
5978 2005-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5979
5980         * Documentation/topdocs/NEWS.tely: strip out-www.
5981
5982         * lily/include/grob-interface.hh: include lily-guile.hh not libguile.h
5983
5984         * config.make.in (AR): add AR and RANLIB
5985
5986         * flower/libc-extension.cc: include cassert
5987
5988         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): more robust
5989         darwin check.
5990
5991 2005-12-11  Graham Percival  <gpermus@gmail.com>
5992
5993         * stepmake/stepmake/generic-vars.make: define DARWIN_BUILD.
5994
5995         * stepmake/stepmake/python-modules-vars.make: define
5996         SHARED_FLAGS for OSX.  Thanks Johannes Schindelin!
5997
5998         * THANKS: added Johannes Schindelin.
5999
6000 2005-12-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6001
6002         * python/midi.c (pymidi_parse): use memcmp() iso. strcmp().
6003
6004         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
6005         Span_arpeggio_engraver, add Tweak_engraver to Score context. 
6006
6007         * lily/parser.yy: reorganize file layout.
6008
6009         * ly/music-functions-init.ly: add tweak music function.
6010
6011         * lily/grob-info.cc (ultimate_music_cause): new function:
6012         recursively lookup causes. 
6013
6014         * lily/parser.yy (chord_body_element): allow music functions for
6015         post-events, allow music functions for chord elements. 
6016  
6017         * lily/font-config-scheme.cc (display_fontset): add cast.
6018
6019         * python/convertrules.py (FatalConversionError.sub_syms): \tag
6020         #'(a b) -> \tag #'a \tag #'b rule.
6021
6022         * python/musicexp.py (Output_printer.dump_version): new function
6023
6024 2005-12-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6025
6026         * lily/parser.yy (FIXME): remove \tag
6027         (FIXME): remove tag_music() function.
6028
6029         * lily/lily-lexer.cc: remove \tag
6030
6031         * ly/music-functions-init.ly: define music-function "tag"
6032
6033         * lily/parser.yy (chord_body_element): allow tags in chord bodies.
6034
6035 2005-12-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6036
6037         * VERSION (PATCH_LEVEL): release 2.7.22
6038
6039         * input/regression/lyric-hyphen-retain.ly: renew.
6040
6041         * scm/define-grobs.scm (all-grob-descriptions): add LyricSpace
6042         grob
6043
6044         * lily/lyric-hyphen.cc (set_spacing_rods): use minimum-distance
6045         iso. minimum-length property for rods.
6046
6047         * lily/hyphen-engraver.cc (acknowledge_lyric_syllable): create
6048         LyricSpace item to keep lyrics spaced apart.
6049
6050         * ly/engraver-init.ly: remove Separating_line_group_engraver
6051
6052         * Documentation/user/music-glossary.tely: do setfilename before
6053         music-glossary.
6054
6055 2005-12-07  Heikki Junes  <hjunes@cc.hut.fi>
6056
6057         * Documentation/user/lilypond-book.itely: use `,´ after xref:
6058         See xref documentation, for example.
6059
6060 2005-12-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6061
6062         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): use
6063         pending_skip iso. ly_voice[-1]
6064         (main): add if __main__ for debugging.
6065
6066         * python/musicxml.py (Accidental.__init__): new class.
6067
6068         * scripts/musicxml2ly.py (progress): new function
6069         (musicxml_key_to_lily): don't barf on modeless keys.
6070         (create_skip_music): new function.
6071         (musicxml_spanner_to_lily_event): new function. Handle beams too.
6072         (musicxml_note_to_lily_main_event): new function.
6073
6074         * python/musicexp.py (Music.__init__): add comment field.
6075         (NestedMusic.append): new routine.
6076         (SequentialMusic.print_ly): print comment.
6077         (ArpeggioEvent.ly_expression): new class
6078         (BeamEvent.ly_expression): new class
6079         (NoteEvent.__init__): support for cautionary/forced accs.
6080
6081         * lily/lookup.cc (slur): normal order for array loop.
6082
6083         * scm/framework-ps.scm (dump-stencil-as-EPS): set left X of bbox
6084         to 0.0.
6085
6086         * ly/engraver-init.ly: set bar-size, so bar-lines aren't
6087         collapsed.
6088
6089 2005-12-06 Erik Sandberg  <mandolaerik@gmail.com>
6090
6091         * scm/music-functions.scm: Make phrasing slurs follow voice direction
6092
6093         * scripts/lilypond-book.py: Introduce option
6094             --preserve-line-breaks, for usage with srcltx
6095
6096 2005-12-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6097
6098         * scm/output-lib.scm (print-circled-text-callback): draw circle
6099         around text using make-circle-markup.
6100
6101         * Documentation/user/*: strip out-www from file names.
6102
6103 2005-12-05  Heikki Junes  <hjunes@cc.hut.fi>
6104
6105         * Documentation/user/lilypond.tely (direntry): remove empty lines;
6106         fixes invalid info entry issue with makeinfo 4.8 in debian sid.
6107
6108 2005-12-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6109
6110         * Documentation/user/GNUmakefile: idem.
6111
6112         * Documentation/user/macros.itexi: strip out-www
6113
6114         * python/rational.py: python 2.3 compat.
6115
6116         * VERSION (PATCH_LEVEL): release 2.7.21
6117
6118         * scripts/musicxml2ly.py (NonDentedHeadingFormatter.format_headi):
6119         option formatting, lilypond style.
6120
6121         * python/musicexp.py: grab from Ikebana: a library for composing
6122         ly music expressions. 
6123         (Output_printer): class for advanced .ly printing.
6124         (eg. tupletting) 
6125
6126         * python/musicxml.py: new file. Read MusicXML MiniDOM tree, and
6127         convert to pythonesque structure.
6128
6129         * python/rational.py: PD rational number class.
6130
6131         * Documentation/user/converters.itely (Invoking musicxml2ly):  new node.
6132
6133 2005-12-04  Erik Sandberg  <mandolaerik@gmail.com>
6134
6135         * lily/part-combine-iterator.cc: Minor bugfix
6136         
6137         * THANKS: Update bughunters
6138
6139 2005-12-02  Werner Lemberg  <wl@gnu.org>
6140
6141         * mf/README: Document process for proper mf2pt1 conversion.
6142
6143         * mf/feta-beugel.mf (draw_brace): Fix path to assure clean
6144         overlapping.
6145
6146         * mf/feta-harmonica.mf: Removed.  Unused.
6147
6148 2005-12-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6149
6150         * scripts/lilypond-book.py (do_file): fix thinkos.
6151
6152 2005-12-01  Jan Nieuwenhuizen  <janneke@gnu.org>
6153
6154         * lily/GNUmakefile ($(outdir)/FlexLexer.h):
6155         ($(outdir)/parser.cc): 
6156         ($(outdir)/lexer.cc): Bugfix: depend on config.h.
6157
6158 2005-11-30  Pedro Kröger  <kroeger@pedrokroeger.net>
6159
6160         * ly/titling-init.ly (tagline): it should be a space between
6161         "Music engraving by LilyPond" and the version number.
6162
6163 2005-12-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6164
6165         * VERSION (PACKAGE_NAME): release 2.7.20
6166
6167 2005-11-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6168
6169         * scm/define-markup-commands.scm (pad-to-box): new markup command.
6170
6171         * scm/define-grobs.scm (all-grob-descriptions): set thickness to
6172         1.0.
6173         (all-grob-descriptions): don't shift RehearsalMark arbitrarily.
6174
6175 2005-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6176
6177         * configure.in (LINK_GXX_STATICALLY): remove kpathsea checks.
6178
6179         * kpath-guile/: remove directory
6180
6181         * scm/kpathsea.scm (ly:kpathsea-expand-variable): new
6182         file. Encapsulate kpathsea using commandline tools.
6183
6184         * lily/all-font-metrics.cc (kpathsea_find_file): use (scm
6185         kpathsea) module.
6186
6187 2005-11-29  Mats Bengtsson  <mabe@s3.kth.se>
6188
6189         * Documentation/user/advanced-notation.itely (Setting automatic
6190         beam behavior): Correct a few typos. Thanks to David Bobroff.
6191
6192         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use
6193         \usepackage instead of \RequirePackage. Thanks to Bernard Hurley.
6194
6195 2005-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6196
6197         * scripts/*.py: gmane address for bugs.
6198
6199 2005-11-28 Pal Benko <benkop@freestart.hu>
6200         
6201         * make/ly-rules.make: add -f switch to mv
6202
6203         * scm/output-libs.scm: add new bar symbol "." for punctus divisionis
6204
6205         * lily/bar-line.cc: interpret it
6206
6207 2005-11-28  Jan Nieuwenhuizen  <janneke@gnu.org>
6208
6209         * configure.in (--disable-documentation): New switch.
6210
6211         * GNUmakefile.in: Use it.
6212
6213         * stepmake/aclocal.m4: Use AC_ARG_ENABLE for kpatsea.
6214
6215 2005-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6216
6217         * scripts/lilypond-book.py (do_file): search chunks for
6218         \\begin{document}
6219
6220         * GNUmakefile.in: add copy step in between so we can lose the
6221         out-www directories.
6222
6223 2005-11-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6224
6225         * lily/pango-font.cc (pango_item_string_stencil): put
6226         geometry.width into glyph-string too.
6227
6228 2005-11-26  Nicolas Sceaux  <nicolas.sceaux@free.fr>
6229
6230         * scm/define-music-display-methods.scm (RevertProperty):
6231         (OverrideProperty): Use grob-property-path property, a list of
6232         symbols, instead of grob-property, which used to be a single
6233         symbol.
6234         (BassFigureEvent): a figure can be a plain number, not necessarily a
6235         markup.
6236
6237 2005-11-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6238
6239         * VERSION: release 2.7.19
6240         
6241         * lily/figured-bass-engraver.cc (process_music): check
6242         figuredBassCenterContinuations first.
6243
6244         * scm/translation-functions.scm (format-bass-figure): make double
6245         sharp larger. 
6246
6247         * lily/mark-engraver.cc: read rehearsalMarkAlignSymbol to
6248         determine X-parent.
6249
6250         * lily/system-start-delimiter-engraver.cc: move from
6251         Nested_system_start_delimiter_engraver, rename
6252         Nested_system_start_delimiter_engraver ->
6253         System_start_delimiter_engraver.
6254
6255         * lily/nested-system-start-delimiter-engraver.cc (from_list): read
6256         bracket type from hierarchy.
6257
6258 2005-11-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6259
6260         * lily/rest.cc (y_offset_callback): read staff-position.
6261
6262         * scm/define-grob-properties.scm (all-user-grob-properties): don't
6263         mark after-line-breaking-callback as internal.
6264
6265         * lily/self-aligment-interface.cc: remove self-[XY]-offset.
6266
6267 2005-11-25  Werner Lemberg  <wl@gnu.org>
6268
6269         * mf/feta-banier.mf ("d3"): Make `flare' equal to `staff_space'.
6270
6271 2005-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6272
6273         * stepmake/bin/add-html-footer.py (do_file): add google
6274
6275         * lily/staff-symbol-engraver.cc (process_music): bugfix: stop
6276         staff if first_start_ is true.
6277
6278 2005-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6279
6280         * scripts/midi2ly.py (split_track): add __repr__ members.
6281         (track_first_item): only return Item if not None. This fixes a
6282         problem when dumping a track that starts with an empty channel.
6283
6284         * python/midi.c: doc module.
6285
6286 2005-11-22  Mats Bengtsson  <mabe@s3.kth.se>
6287
6288         * Documentation/user/global.itely (Creating MIDI files): Fix
6289         compilation problem.
6290
6291 2005-11-22  Graham Percival  <gpermus@gmail.com>
6292
6293         * Documentation/user/basic-notation.itely: clarify dynamic
6294         padding text.
6295
6296         * Documentation/user/advanced-notation.itely: add unicode
6297         escape control example, whatever that is.  :)
6298
6299         * Documentation/user/global.itely: added "removing dynamics
6300         from MIDI" code.
6301
6302 2005-11-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6303
6304         * VERSION (PATCH_LEVEL): release 2.7.18
6305
6306         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): replace
6307         System_start_delimiter_engraver by
6308         Nested_system_start_delimiter_engraver.
6309
6310         * lily/nested-system-start-delimiter-engraver.cc (struct
6311         Bracket_nesting_node): new class.
6312         (struct Bracket_nesting_group): new class
6313         (struct Bracket_nesting_staff): new class.
6314         (process_music): create hierarchy of grobs. This allows separate
6315         tuning of different SSDs. 
6316
6317         * scm/define-grobs.scm (all-grob-descriptions): new Grob SystemStartSquare
6318         (all-grob-descriptions): remove old NestedSystemStartDelimiter.
6319
6320 2005-11-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6321
6322         * lily/side-position-interface.cc (aligned_side): multiply
6323         staff_radius by 2.
6324
6325         * lily/script-engraver.cc (make_script_from_event): allow setting
6326         values to '()
6327
6328 2005-11-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6329
6330         * lily/system-start-delimiter.cc (line_bracket): don't shorten height.
6331
6332         * scm/define-grobs.scm (all-grob-descriptions): new grob
6333         NestedSystemStartDelimiter.
6334
6335         * input/regression/system-start-heavy-bar.ly: new file.
6336
6337         * lily/nested-system-start-delimiter-engraver.cc: new file.
6338
6339         * lily/nested-system-start-delimiter.cc: new file.
6340
6341         * input/regression/system-start-nesting.ly: new file.
6342
6343         * scm/define-grobs.scm (all-grob-descriptions): use X side
6344         positioning for positioning braces for nested contexts.
6345
6346         * lily/system-start-delimiter.cc (print): don't divide extent by
6347         staff_space.
6348         (print): use style iso. glyph.
6349         (staff_bracket): translate glyph inside routine already.
6350
6351 2005-11-18  Michael Welsh Duggan <md5i@cs.cmu.edu>
6352
6353         * lily/vaticana-ligature-engraver.cc: fixed 2 typos in glyph
6354         names.
6355
6356 2005-11-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6357
6358         * scm/define-context-properties.scm
6359         (all-user-translation-properties): rename figuredBassFormatter
6360         from newFiguredBassFormatter.
6361
6362         * scm/define-grobs.scm (all-grob-descriptions): move from NewBassFigure
6363
6364         * lily/figured-bass-engraver.cc: move from new-figured-bass-engraver.cc
6365
6366         * lily/stem.cc (calc_stem_info): trigger beaming calculation.
6367
6368         * lily/beam.cc (calc_beaming): new function.
6369         (calc_shorten): new function.
6370
6371         * THANKS: add Edward Neeman.
6372
6373         * input/regression/accidental-clef-change.ly: new file.
6374
6375         * lily/note-collision.cc (check_meshing_chords): don't merge fa heads.
6376
6377         * scm/define-grobs.scm (all-grob-descriptions): add Y-offset property.
6378
6379         * lily/clef-engraver.cc (inspect_clef_properties): reset
6380         localKeySignature for clef changes.
6381
6382 2005-11-17  Mats Bengtsson  <mabe@s3.kth.se>
6383
6384         * python/midi.c: PyMIDINIT_FUNC isn't defined in Python < 2.3 
6385         add dummy definition that works in Linux and add information in
6386         INSTALL.texi on the specific Python requirements for Cygwin/Mingw.
6387
6388         * Documentation/user/changing-defaults.itely (Modifying context
6389         plug-ins): Add index for \with.
6390
6391         * Documentation/user/music-glossary.tely (dal segno): Updated
6392         example to version >=2.6.
6393
6394 2005-11-16  Mats Bengtsson  <mabe@s3.kth.se>
6395
6396         * Documentation/user/instrument-notation.itely (Printing chord
6397         names): Reorder \chordmode and \repeat in one example.
6398
6399 2005-11-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6400
6401         * VERSION: release 2.7.17
6402         
6403         * Documentation/topdocs/NEWS.tely (Top): add note about
6404         refactoring.
6405
6406         * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
6407         new function. Search region of 3 positions for best tie.
6408         (score_configuration): new function.
6409         (score_aptitude): new function.
6410         (generate_configuration): new function.
6411         (get_configuration): new function.
6412         (Tie_formatting_problem): new function
6413
6414         * input/regression/page-top-space.ly: a6 for page-top-space demo. 
6415
6416         * stepmake/aclocal.m4: use $(if ) for config-FOOF.make
6417
6418         * THANKS: add Eduardo Vieira & Ralph Little
6419
6420         * mf/feta-bolletjes.mf (solfa_quarter_width): make solfa heads
6421         narrower.
6422
6423         * lily/include/tie-formatting-problem.hh (class
6424         Tie_formatting_problem): add Tie_details to
6425         Tie_formatting_problem. Update calling conventions.
6426
6427         * stepmake/aclocal.m4: oops. Include $CONFIGFILE.make, not
6428         config.make.
6429
6430         * Documentation/user/lilypond.tely: remove musedata2ly entry.
6431
6432 2005-11-16  Jürgen Reuter  <reuter@ipd.uka.de>
6433
6434         * lily/ligature-engraver.cc, lily/include/ligature-engraver.hh,
6435         scm/define-context-properties.scm: Maintenance bugfix: make
6436         ligature brackets work again by removing obsolete ligature
6437         primitive callback push/pop.
6438
6439         * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: do
6440         not call Tuplet_bracket::calc_direction.  Removed obsolete gap
6441         value.
6442
6443 2005-11-15  Jan Nieuwenhuizen  <janneke@gnu.org>
6444
6445         * stepmake/aclocal.m4 (depth): Explain why absolute directory is
6446         used and do not call it a path.
6447         (FLEXLEXER_FILE): Rename from FLEXLEXER_PATH and add file name.
6448
6449 2005-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6450
6451         * lily/include/tie-formatting-problem.hh (class
6452         Tie_formatting_problem): new file.
6453
6454         * lily/tie-formatting-problem.cc (common_x_refpoint): new file.
6455
6456         * Documentation/misc/ChangeLog-2.3:  new file.
6457
6458         * lily/audio-staff.cc (output): degarianize.
6459
6460 2005-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
6461
6462         * stepmake/stepmake/python-module-rules.make ($(outdir)/%.pyc):
6463         Unset PYTHONOPTIMIZE.  Fixes install if set.
6464
6465 2005-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6466
6467         * python/convertrules.py (conv): add warning about drums. 
6468
6469         * make/stepmake.make: include toplevel-version.make after config.make.
6470
6471         * stepmake/aclocal.m4 (depth): make sure $srcdir is absolute.
6472         also allow python2.4
6473
6474         * config.make.in (configure-srcdir): remove GXX GCC vars.
6475
6476         * stepmake/aclocal.m4: don't do non-srcdir build with
6477         symlinks. Use inclusion, so the src directory name can be changed.
6478
6479 2005-11-13  Jan Nieuwenhuizen  <janneke@gnu.org>
6480
6481         * make/mutopia-vars.make:
6482         * make/ly-vars.make: Use src-wildcard iso wildcard for source
6483         files.
6484
6485 2005-11-13  Werner Lemberg  <wl@gnu.org>
6486
6487         * mf/feta-arrow.mf: For all glyphs, don't mirror `currentpicture'
6488         but the affected path.  This ensures that the (overlapping) outlines
6489         have the same direction, which is a necessary prerequisite for
6490         FontForge's algorithm to remove overlaps.
6491         Formatting.
6492
6493         * mf/feta-haak.mf: Formatting.
6494         (draw_bracket): Slightly modify outline to avoid an unnecessary
6495         corner.
6496         Don't use ad-hoc values for `leave_angle' and `tip_angle' but derive
6497         them from the affected paths.
6498
6499 2005-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6500
6501         * mf/README: remove xpm / accordion notes.
6502
6503         * lily/tie-column-format.cc (set_chord_outline): add dots into
6504         skyline extents. This fixes tie formatting if the left head has dots.
6505
6506         * lily/tie.cc (get_configuration): only shift tie by a whole staff
6507         space inside the staff.
6508         (get_configuration): shift another position if necessary in case
6509         of left head tie  
6510
6511 2005-11-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6512
6513         * stepmake/stepmake/texinfo-vars.make (GENERATE_OMF): use
6514         buildscript-dir iso. $(depth)/buildscripts.
6515
6516         * tex/GNUmakefile (local-uninstall): remove
6517         music-drawing-routines.ps juggling.
6518
6519         * stepmake/stepmake/install-targets.make (local-install-files):
6520         prepend src-dir to install targets.
6521
6522         * lily/system-start-delimiter-engraver.cc
6523         (acknowledge_system_start_delimiter): use
6524         add_offset_callback(). This fixes translation of nested
6525         staffgroups.
6526
6527         * lily/grob-closure.cc (add_offset_callback): only encaps in
6528         simple_closure if it's a procedure.
6529         
6530         * lily/span-bar.cc (calc_glyph_name): read glyph-name, not glyph
6531         from bar-line.
6532
6533         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
6534         remove-empty where pertinent.
6535
6536 2005-11-12  Graham Percival  <gpermus@gmail.com>
6537
6538         * Documentation/user/instrument-notation.itely: added
6539         Cameron Horsburgh's multiple stanzas docs.  Thanks!
6540
6541 2005-11-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6542
6543         * lily/GNUmakefile
6544         ($(top-build-dir)/Documentation/pictures/$(outbase)/lilypond.ico):
6545         make picture in builddir, not srcdir.
6546
6547 2005-11-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6548
6549         * VERSION: release 2.7.16
6550         
6551         * scripts/lilypond-book.py (main): use commands.mkarg () to quote
6552         shell arguments. 
6553
6554 2005-11-10  Mats Bengtsson  <mabe@s3.kth.se>
6555
6556         * Documentation/user/examples.itely (Piano templates): Minor
6557         modification to the Piano centered lyrics example.
6558
6559 2005-11-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6560
6561         * scripts/lilypond-invoke-editor.scm (run-browser): look at
6562         $BROWSER.
6563
6564         * Documentation/user/point-and-click.itely: simplify p&c
6565         instruction: don't configure firefox. Put lilypond-invoke-editor
6566         in front of the browser.
6567
6568         * scripts/lilypond-invoke-editor.scm (run-editor): new function.
6569         (run-browser): new function.
6570
6571         * lily/parser.yy (Lily_lexer): recognize Book
6572
6573         * lily/book.cc (clone): new function
6574
6575         * lily/parser.yy (book_body): allow BOOK_IDENTIFIER.
6576
6577 2005-11-10  Jürgen Reuter  <reuter@ipd.uka.de>
6578
6579         * lily/vaticana-ligature.cc, lily/vaticana-ligature-engraver.cc:
6580         Maintenance bugfix: reduce number of font related warnings by
6581         updating naming conventions for glyph-name.
6582
6583 2005-11-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6584
6585         * scm/define-grobs.scm (all-grob-descriptions): add
6586         rhythmic-grob-interface to TabNoteHead.
6587
6588         * scm/layout-beam.scm (check-quant-callbacks): remove
6589         set_stem_lengths()
6590
6591 2005-11-08  Jürgen Reuter  <reuter@ipd.uka.de>
6592
6593         * ly/gregorian-init.ly (divisiones): Maintenance bugfix: vertical
6594         alignment of centered divisiones.
6595
6596         * scm/scripts.scm (articulations): Maintenance bugfix:
6597         follow-into-staff -> quantize-position.
6598
6599         * lily/vaticana-ligature-engraver.cc (transform_heads): Bugfix:
6600         plica head in porrectus deminutus.
6601
6602 2005-11-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6603
6604         * make/lilypond.fedora.spec.in (Group): add %clean section.
6605
6606         * lily/tuplet-bracket.cc (print): change check: remove bracket if
6607         less then 1/5th of total length.  
6608         (print): use gap too.  Fixes tupletUp-single-bracket.ly
6609
6610         * scm/music-functions.scm (glue-mm-rest-texts): also put other
6611         events into EventChord. This fixes textspanners on mm rests. Fixes
6612         spanner-rest.ly
6613
6614         * lily/side-position-interface.cc (get_axis): read side-axis
6615         (set_axis): set side-axis.
6616
6617         * scm/define-grobs.scm (all-grob-descriptions): add side-axis
6618         properties everywhere.
6619
6620         * lily/spacing-spanner.cc (breakable_column_spacing): add
6621         average-spacing-wishes. Take maximum if not set.
6622         (musical_column_spacing): idem. Fixes: spacing-keysig-note.ly
6623
6624         * scm/define-grobs.scm (all-grob-descriptions): add
6625         average-spacing-wishes.
6626
6627         * lily/grob-closure.cc (add_offset_callback): bugfix: properly add
6628         offset callbacks. This fixes alignment for Fingering objects.
6629
6630         * scm/define-grobs.scm (all-grob-descriptions): tiny bit less
6631         space for key - timesig combination. 
6632
6633         * input/regression/script-stem-tremolo.ly (Module): new file.
6634
6635         * scm/define-grobs.scm (all-grob-descriptions): decrease distance
6636         to key sig.
6637
6638         * lily/dynamic-engraver.cc (acknowledge_stem_tremolo): new function.
6639         Fixes: c-tremolo-script.ly.
6640         
6641         * lily/text-engraver.cc (acknowledge_stem_tremolo): new function.
6642
6643         * lily/script-engraver.cc (acknowledge_stem_tremolo): new function.
6644         
6645         * scm/define-grobs.scm (all-grob-descriptions): remove
6646         self-X-offset. Fixes alignment of octavate-8.
6647
6648         * scripts/lilypond-book.py (datadir): look in
6649         LILYPONDPREFIX/share/lilypond/current/
6650
6651         * GNUmakefile.in: symlink current to <VERSION>. 
6652
6653 2005-11-07  Pedro Kroger  <kroeger@pedrokroeger.net>
6654
6655         * lily/main.cc: eps listed as a backend.
6656
6657 2005-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6658
6659         * scm/lily-library.scm (print-music-as-book): quote $defaultpaper.
6660
6661 2005-11-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6662
6663         * lily/include/score.hh (class Score): remove texts_ member.
6664
6665         * lily/beam.cc (set_stem_lengths): force direction callback.
6666         (print): read quantized-positions, so we can force
6667         Beam::set_stem_lengths to occur.
6668         (rest_collision_callback): use common X parent. 
6669
6670 2005-11-03  Jan Nieuwenhuizen  <janneke@gnu.org>
6671
6672         * flower/file-path.cc (find): Bugfix: Return name of file found.
6673
6674         * lily/main.cc (setup_paths): Bugfix for argv0 logic.
6675         (setup_paths)[__CYGWIN__ || __MINGW32__]: Normalize argv0.
6676         (setup_paths)[__MINGW32__]: Also look for argv0 + .exe.
6677
6678 2005-11-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6679
6680         * flower/offset.cc: idem.
6681
6682         * mf/*.mf: update email address.
6683
6684         * lily/font-config-scheme.cc:  new file.
6685
6686         * GNUmakefile.in (SUBDIRS): remove debian/ directory.
6687
6688         * lily/*:  cs.uu.nl -> xs4all.nl
6689
6690         * VERSION (PATCH_LEVEL): release 2.7.15
6691
6692         * make/lilypond.mandrake.spec.in (Module): remove Mandrake & Suse
6693         spec files.
6694
6695         * make/lilypond.fedora.spec.in: add %{libdir}/lilypond/
6696
6697 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6698
6699         * GNUmakefile.in: bugfix: encapsulate mkdir && cd in parens.   
6700
6701         * lily/staff-performer.cc (process_music): add audio
6702         elements. This makes MIDI instrument changes work once again.
6703
6704         * lily/main.cc (LY_DEFINE): add gmane address.
6705
6706         * lily/beam.cc: remove calc_positions()
6707
6708         * lily/include/grob.hh (class Grob): move pscore, dim_cache_,
6709         original_ in private scope.
6710         (class Grob): drop pscore_ pointer, change to output_def pointer.
6711         (class Grob): cleanup class definition.
6712
6713         * ly/spanners-init.ly (assertBeamQuant): use make-simple-closure.
6714
6715 2005-11-02  Jan Nieuwenhuizen  <janneke@gnu.org>
6716
6717         * lily/main.cc (setup_paths)[__MINGW32__]: Do not assume argv0 is
6718         absolute.  Better diagnostics.
6719
6720         * GNUmakefile.in: Add bin/ to tree and populate with some links.
6721         This makes lilypond run from the build directory using argv0
6722         relocation (without any --prefix or LILYPONDPREFIX setting).
6723
6724 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6725
6726         * Documentation/topdocs/NEWS.tely (Top): document new backend design.
6727
6728         * scm/define-grobs.scm: purge self-[XY]-offset variables, replace
6729         with simple-closure.
6730
6731         * lily/self-aligment-interface.cc (set_align_self): new function
6732         (set_center_parent): new function.
6733
6734         * lily/side-position-interface.cc (set_axis): new function.
6735
6736         * lily/new-fingering-engraver.cc (position_scripts): use drul for
6737         generic code. 
6738
6739         * scm/define-grob-properties.scm (all-user-grob-properties):
6740         remove [XY]-offset-callbacks add [YX]-offset
6741         
6742 2005-11-02  Mats Bengtsson  <mabe@s3.kth.se>
6743
6744         * scm/define-grobs.scm (all-grob-descriptions): Added space-alist
6745         entry for time signatures after breathing signs. Bug report by
6746         Scott Russell.
6747
6748 2005-11-01  Jan Nieuwenhuizen  <janneke@gnu.org>
6749
6750         * lily/main.cc (setup_paths)[!__MINGW32__]: Bugfix: if argv0 is
6751         not absolute, make it absolute using PATH.
6752
6753 2005-10-28  Jan Nieuwenhuizen  <janneke@gnu.org>
6754
6755         * python/midi.c (initmidi): Fix type for mingw.
6756
6757 2005-10-27  Jan Nieuwenhuizen  <janneke@gnu.org>
6758
6759         * stepmake/stepmake/compile-vars.make (SHARED_FLAGS): Support mingw.
6760
6761         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Detect mingw
6762         cross compiling.
6763
6764         * stepmake/aclocal.m4: Support python cross compiling.
6765
6766         * stepmake/stepmake/python-module-vars.make (SHARED_MODULE_SUFFIX):
6767         Add mingw section.
6768
6769 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6770
6771         * scm/output-lib.scm (chain-grob-member-functions): replace
6772         chained-callback.cc
6773
6774         * lily/chained-callback.cc (Module): remove file.
6775
6776         * lily/rest-collision.cc (force_shift_callback_rest): change to
6777         chained callback.
6778
6779         * lily/rest.cc (y_offset_callback): merge function of 3 callbacks. 
6780
6781         * lily/grob.cc (y_parent_positioning): remove axis argument from
6782         parent_positioning callbacks.
6783         (Grob): junk init code
6784         (get_offset): use generic property callbacks for
6785         X-offset, Y-offset. Remove Grob::{add,has}_offset_callback.
6786         (axis_parent_positioning): new function
6787         (axis_offset_symbol): new function
6788         (chain_offset_callback): new function
6789         (add_offset_callback): new function
6790
6791         * lily/beam.cc (rest_collision_callback): change signature; this
6792         is now a chained callback.
6793
6794         * lily/include/dimension-cache.hh (class Dimension_cache): remove
6795         callback administration.
6796
6797         * lily/simple-closure.cc: new file. Smob type that allows "grob
6798         member functions",
6799
6800             (ly:make-simple-closure FUNC A B)
6801
6802         is evaluated as (FUNC grob A B). This allows chaining of callbacks
6803         in various ways.
6804
6805         * lily/slur-engraver.cc (acknowledge_extra_object): use chained
6806         callbacks.
6807
6808         * lily/slur.cc (outside_slur_callback): take 2 arguments.
6809
6810         * lily/rest.cc (polyphonic_offset_callback): remove.
6811
6812         * lily/script-engraver.cc (try_music): remove bool* argument.
6813
6814         * scm/script.scm (default-script-alist): set quantize-position
6815         appropriately.
6816
6817         * lily/script-engraver.cc: remove follow_into_staff_ special coding. 
6818
6819         * lily/side-position-interface.cc (aligned_side): move staff
6820         position quantization from
6821         Side_position_interface::quantised_position().
6822         (quantised_position): remove
6823         
6824 2005-10-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6825
6826         * input/regression/beam-quant-standard.ly: reindent, set
6827         debug-beam-quanting to #t.
6828
6829         * lily/beam-concave.cc (calc_concaveness): set concaveness to
6830         10000 if this is a "hard" concave beam.
6831
6832         * lily/beam.cc (calc_least_squares_positions): change from
6833         calc_least_squares_dy
6834         (set_stem_lengths): this is now a chained callback.
6835
6836         * lily/context-property.cc (execute_general_pushpop_property):
6837         bugfix override with procedure should have effect.
6838
6839         * scm/define-grob-properties.scm (all-internal-grob-properties):
6840         remove position-callbacks.
6841
6842         * scm/define-grobs.scm (all-grob-descriptions): use
6843         ly:make-callback-chain for positions property.
6844
6845         * scm/layout-beam.scm (check-quant-callbacks): return list of
6846         chained callbacks.
6847
6848         * scm/lily.scm (type-p-name-alist): add callback-chain
6849
6850         * lily/lily-guile.cc (type_check_assignment): type check failure
6851         is warning not message.
6852
6853         * lily/grob-property.cc (try_callback): walk callback chain if
6854         appropriate.
6855
6856         * lily/chained-callback.cc: new file. new smob type.
6857
6858         * lily/lily-guile.cc (procedure_arity): new function.
6859
6860 2005-10-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6861
6862         * Documentation/topdocs/INSTALL.texi (Top): add perl flex bison.
6863
6864 2005-10-25  John Mandereau  <john.mandereau@free.fr>
6865  
6866         * Documentation/user/instrument-notation.itely (Figured bass):
6867         describe new features
6868
6869 2005-10-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6870
6871         * lily/beam.cc (calc_least_squares_dy): use property callback.
6872
6873         * lily/beam-concave.cc (calc_concaveness): use property callback.
6874
6875         * ly/paper-defaults.ly: move fixed dimensions from paper.scm 
6876
6877 2005-10-25  Jan Nieuwenhuizen  <janneke@gnu.org>
6878
6879         * HACKING: Update.
6880
6881 2005-10-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6882
6883         * scm/layout-page-layout.scm (page-headfoot): annotate
6884         pagetopspace too.
6885
6886         * scm/stencil.scm (dimension-arrows): shorten arrowed lines a bit. 
6887
6888         * scm/layout-page-layout.scm (annotate-y-interval): y-annotation
6889         doesn't take y-space.
6890
6891         * scm/paper.scm (paper-alist): fix A7 dimensions. 
6892
6893 2005-10-24  Jan Nieuwenhuizen  <janneke@gnu.org>
6894
6895         * stepmake/stepmake/generic-vars.make (DIST_FILES): Fix
6896         src-wildcard, remove $(wildcard).
6897
6898         * po/GNUmakefile (PO_FILES): 
6899         * ps/GNUmakefile (PS_FILES): 
6900         * tex/GNUmakefile (TEX_FILES): 
6901         * cygwin/GNUmakefile (POSTINSTALLS):
6902         * vim/GNUmakefile (EXTRA_DIST_FILES): Bugfix: [etags sr?] missed
6903         some wildcard calls.
6904
6905 2005-10-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6906
6907         * THANKS: add Thomas Bushnell.
6908
6909 2005-10-23  Jan Nieuwenhuizen  <janneke@gnu.org>
6910
6911         * scm/lily.scm: Remove horrendous running-from-gui? kludge.
6912         (lilypond-main): Redirect to gui-main if 'gui is set.
6913
6914         * scripts/midi2ly.py (datadir): Add libdir iso datadir to path,
6915         for alternative installations kludging s/share/lib/g
6916         LILYPONDPREFIX. 
6917
6918         * SConstruct (libdir_package_version): Define.
6919
6920         * python/SConscript: 
6921         * python/GNUmakefile (INSTALLATION_OUT_DIR): Install binary .so
6922         module in libdir.  
6923
6924 2005-10-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6925
6926         * lily/main.cc: clarify --safe.
6927
6928 2005-10-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6929
6930         * VERSION: release 2.7.14
6931         
6932         * Documentation/user/*.itely: remove minimumVerticalExtent.
6933
6934         * scm/define-grobs.scm (all-grob-descriptions): remove
6935         RemoveEmptyVerticalGroup
6936
6937         * lily/hara-kiri-engraver.cc (get_spanner): create VerticalAxisGroup.
6938
6939         * lily/include/lily-guile.hh (GUILE_ELLIPSIS): define to get clean
6940         compile on MOSX
6941
6942         * python/convertrules.py (conv): add rules.
6943
6944         * lily/grob.cc: remove is_empty()
6945
6946         * lily/grob-property.cc: remove add_to_list_property().
6947
6948         * scripts/convert-ly.py (datadir): add prefix switching hack to
6949         .py too.
6950
6951         * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily (cresc): remove
6952         space-function tweak.
6953
6954         * lily/grob.cc: remove X-extent-callback / Y-extent-callback.
6955
6956         * scm/define-grob-properties.scm (all-user-grob-properties):
6957         remove callback property.
6958
6959         * lily/include/grob.hh (class Grob): remove property_callbacks_
6960         member. Properties of procedure type are assumed to be callbacks.
6961
6962         * lily/ligature-engraver.cc (override_stencil_callback):
6963         rewrite. Use noteHeadLigaturePrimitive as source.
6964
6965         * scm/define-grob-properties.scm (all-internal-grob-properties):
6966         remove ligature-primitive-callback
6967
6968         * lily/include/dimension-cache.hh (class Dimension_cache): make
6969         class, with Grob as friend.
6970
6971         * lily/grob.cc: remove set_extent_callback(), set_extent() and
6972         has_extent_callback()
6973
6974         * scm/translation-functions.scm (format-new-bass-figure): read
6975         figuredBassPlusDirection
6976
6977         * scm/define-context-properties.scm
6978         (all-user-translation-properties): add figuredBassPlusDirection.
6979
6980         * lily/staff-spacing.cc (next_notes_correction): oops. Init wishes.
6981
6982         * lily/align-interface.cc (set_ordered): new function.
6983
6984         * lily/grob.cc (flush_extent_cache): rewrite.
6985
6986         * lily/dimension-cache.cc (Dimension_cache): cache extent as
6987         Interval pointer directly.
6988
6989         * lily/main.cc (setup_paths): insert extra / .
6990         (setup_paths): junk cff entry.
6991
6992         * lily/font-config.cc (init_fontconfig): only add type1 / otf
6993         directories.
6994
6995         * lily/axis-group-engraver.cc (finalize): remove
6996         extraVerticalExtent, minimumVerticalExtent verticalExtent.
6997
6998         * lily/grob.cc (Grob): don't set extent from ctor.
6999         (extent): use property callbacks. 
7000
7001         * lily/axis-group-interface.cc: remove set_axes() function.
7002
7003         * lily/grob-property.cc (del_property): new function.
7004
7005 2005-10-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7006
7007         * lily/font-config.cc (init_fontconfig): resurrect mf/out/ check.
7008         
7009 2005-10-20  Jan Nieuwenhuizen  <janneke@gnu.org>
7010
7011         * stepmake/stepmake/script-vars.make (PYTHON_SCRIPTS_IN): Oops.  Add.
7012
7013 2005-10-19  Jan Nieuwenhuizen  <janneke@gnu.org>
7014
7015         * mf/SConscript: Updates.
7016
7017         * lily/GNUmakefile (OUT_DIST_FILES): Bugfix.
7018
7019         * stepmake/stepmake/*:
7020         * */GNUmakefile:
7021         * config.make.in:
7022         * GNUmakefile.in:
7023         * stepmake/aclocal.m4: Friendlier --srcdir build, allowing `make'
7024         from any directory in build-dir.  Cleanups.
7025
7026         * make/srcdir.make.in: Remove.
7027
7028         * lily/main.cc (setup_paths): Fix and document build-dir hack.
7029
7030         * SConstruct (CheckYYCurrentBuffer): Use TryCompile (there is no
7031         main).
7032
7033         * lily/SConscript: Remove ttftools.
7034
7035         * SConstruct: Resurrect.
7036
7037 2005-10-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7038
7039         * lily/tuplet-bracket.cc (print): use dy iso. positions[RIGHT] for
7040         Y coordinate. 
7041
7042         * lily/paper-book.cc (add_score_title): put Paper_score title into
7043         systems_ list.
7044
7045         * scm/translation-functions.scm (format-new-bass-figure): also
7046         allow plus in combination with _
7047
7048 2005-10-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7049
7050         * VERSION: 2.7.13 released.
7051
7052         * lily/note-collision.cc (check_meshing_chords): don't wipe
7053         stencil, merely set transparent.
7054
7055         * Documentation/topdocs/NEWS.tely (Top): mention John Mandereau. 
7056         (Top): document #'callbacks.
7057         (Top): document nested \override.
7058
7059         * input/regression/figured-bass.ly: update for slash and pluses.
7060
7061         * input/regression/figured-bass-continuation-forbid.ly (Module):
7062         new file.
7063
7064         * scm/translation-functions.scm (format-new-bass-figure): use
7065         slashed-digit if diminished is set.
7066         (format-new-bass-figure): add + if 'augmented is set.
7067
7068         * scm/define-markup-commands.scm (slashed-digit): new command slashed-digit.
7069
7070         * input/test/piano-staff-distance.ly: remove file.
7071
7072         * Documentation/user/advanced-notation.itely (Formatting cue
7073         notes): use length-fraction for making stems/beams smaller.
7074
7075         * lily/parser.yy (bass_figure): accept \+ \! and / as figured bass
7076         modifications.
7077
7078         * lily/new-figured-bass-engraver.cc: new property
7079         centerFiguredBassContinuations
7080
7081         * Documentation/user/changing-defaults.itely (Difficult tweaks):
7082         use callbacks.
7083
7084         * lily/context-property.cc (execute_general_pushpop_property):
7085         robustness checks.
7086
7087         * input/regression/override-nest.ly: new file.
7088
7089         * python/convertrules.py (FatalConversionError.subber): conversion
7090         rule for #'callbacks
7091
7092         * input/regression/override-nest.ly: new function.
7093
7094         * lily/parser.yy (music_property_def): allow \override #'a #'b =
7095         #c too. 
7096
7097         * lily/context-property.cc (lookup_nested_property): new function.
7098         (evict_from_alist): new function.
7099         (general_pushpop_property): new function.
7100         (execute_general_pushpop_property): rewrite. Support nested
7101         properties too.
7102
7103 2005-10-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7104
7105         * lily/beam.cc: use length-fraction too.
7106
7107         * scm/define-grob-properties.scm (all-user-grob-properties):
7108         remove property flag-width-function
7109         (all-user-grob-properties): remove space-function.
7110
7111         * scm/layout-beam.scm: remove flag-width-function.
7112
7113         * lily/beam.cc: remove flag-width-function
7114
7115         * scm/layout-beam.scm: remove beam dir functions.
7116
7117         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): use length-fraction.
7118
7119         * lily/stem.cc (calc_length): multiply with length_fraction. Makes
7120         for easier grace tweaks.
7121
7122         * lily/beam.cc: remove dir-function.
7123
7124         * lily/system.cc (pre_processing): use callback to trigger spacing procedures.
7125
7126         * lily/grob.cc: remove spacing-procedure.
7127
7128         * lily/note-head.cc (calc_stem_attachment): new function.
7129         (internal_print): use callback to get glyph-name.
7130
7131         * lily/grob-property.cc (get_interfaces): new function.
7132
7133         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-interfaces
7134
7135         * lily/stem.cc (calc_stem_end_position): new function.
7136         (calc_length): new function.
7137         document details for stem.
7138         remove Stem::get_direction()
7139
7140         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-set-callback! 
7141
7142         * lily/grob-property.cc (set_callback): new function.
7143
7144         * lily/script-engraver.cc (make_script_from_event): don't trigger callback.
7145
7146         * lily/item-scheme.cc: new file.
7147
7148         * lily/bar-line.cc (before_line_breaking): remove function.
7149         remove bar-size-procedure, break-glyph-function
7150
7151         * lily/clef-engraver.cc (set_glyph): use glyph iso. glyph-name
7152
7153         * lily/clef.cc (before_line_breaking): change to calc_glyph_name.
7154
7155         * lily/system-start-delimiter.cc (print): suicide from
7156         here. Remove after_line_breaking_callback.
7157
7158         * lily/script-interface.cc (calc_direction): use callback for direction.
7159
7160         * lily/side-position-interface.cc (aligned_side): don't use
7161         Side_position_interface::get_direction directly. Use callback. 
7162
7163         * lily/grob.cc (get_stencil): simplify: use callback mechanism to
7164         calculate stencil.
7165         (get_print_stencil): rename from get_stencil: create stencil with
7166         transparency, color and cause. 
7167
7168         * scm/define-grobs.scm: change print-function to stencil callback everywhere.
7169
7170         * python/convertrules.py (conv): insert temporary warning rule.
7171
7172         * lily/multi-measure-rest.cc (set_text_rods): use stencil directly.
7173
7174         * lily/grob-property.cc (try_callback): remove marker if applicable.
7175
7176         * lily/grob.cc: elucidate doc about after/before-line-breaking
7177
7178         * lily/slur-scoring.cc (enumerate_attachments): robustness fix.
7179
7180         * lily/stem.cc (height): idem.
7181
7182         * lily/stem-tremolo.cc: idem.
7183
7184         * lily/slur.cc (height): don't use get_uncached_stencil()
7185
7186         * lily/rest.cc (y_offset_callback): use offset callback
7187         iso. after-line-breaking callback.
7188
7189         * lily/grob.cc: change after/before-line-breaking-callback to
7190         after/before-line-breaking dummy properties.
7191
7192         * lily/include/grob.hh: remove Grob_status.
7193
7194         * scm/define-context-properties.scm
7195         (all-user-translation-properties): remove verticalAlignmentChildCallback
7196
7197         * lily/tuplet-bracket.cc: use positions property iso. left,right-position.
7198         (calc_direction): use callback
7199         (calc_positions): use callback.
7200
7201         * lily/tie.cc (calc_direction): use callback. Only call parent
7202         positioning for more than one tie.
7203
7204         * lily/tie-column.cc (calc_positioning_done): use callback
7205
7206         * lily/slur-scoring.cc (calc_control_points): use callback
7207
7208         * lily/slur.cc (calc_direction): use callback.
7209
7210         * lily/note-collision.cc (force_shift_callback): remove.
7211
7212         * lily/dot-column.cc (force_shift_callback): remove. Use
7213         other_axis_parent_positioning.
7214
7215         * lily/grob.cc (other_axis_parent_positioning): new function.
7216         (same_axis_parent_positioning): new function
7217
7218         * lily/align-interface.cc (alignment_callback): remove function.
7219
7220         * lily/note-collision.cc (calc_positioning_done): use callback.
7221
7222         * lily/laissez-vibrer-tie.cc (calc_control_points): use callback.
7223         (calc_direction): idem.
7224         remove print function.
7225
7226         * lily/laissez-vibrer-tie-column.cc (calc_positioning_done): use callback.
7227
7228         * lily/dot-column.cc (calc_positioning_done): use callback.
7229
7230         * lily/break-align-interface.cc (calc_positioning_done): use callback.
7231
7232         * lily/beam.cc (calc_direction): use pseudo-property for beam
7233         direction callback.
7234         (calc_positions): use callback 
7235
7236         * lily/align-interface.cc (calc_positioning_done): use
7237         callback. Fold fixed  distance and normal alignment in one function.
7238
7239         * lily/stem.cc (calc_stem_end_position): use callback.
7240         (calc_positioning_done): idem.
7241         (calc_direction): idem.
7242         (calc_stem_end_position): idem
7243         (calc_stem_info): idem.
7244
7245         * lily/grob-property.cc (get_property_data): new function: 
7246         (try_callback): new function.
7247
7248         * scm/define-grob-properties.scm (all-user-grob-properties): doc
7249         callbacks property.
7250
7251         * lily/break-align-interface.cc: remove Break_align_interface::alignment_callback.
7252
7253 2005-10-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7254
7255         * lily/tie.cc (get_position): robustness fix. Don't crash if a
7256         tie
7257         has no heads.
7258         
7259         * lily/include/*.hh (Module): compile fixes.
7260
7261 2005-10-14  Heikki Junes <hjunes@cc.hut.fi>
7262
7263         * elisp/lilypond-font-lock.el, elisp/lilypond-indent.el: Avoid nil 
7264         as an argument for char-syntax: use (char-syntax (or nil 0)) 
7265         instead of (char-syntax nil), thanks to Milan Zamazal.
7266
7267 2005-10-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7268
7269         * make/lilypond.fedora.spec.in (Group): add lilypond-internals to
7270         dist.
7271
7272         * lily/tuplet-bracket.cc: check columns of bounds, not bounds
7273         themselves.
7274
7275 2005-10-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7276
7277         * flower/include/virtual-methods.hh (VIRTUAL_COPY_CONSTRUCTOR):
7278         add class_name() method.
7279
7280         * lily/music-scheme.cc: remove ly:music-name.
7281
7282 2005-10-11  Jan Nieuwenhuizen  <janneke@gnu.org>
7283
7284         * cygwin/postinstall-lilypond.sh: Remove cruft.
7285
7286         * cygwin/postremove-lilypond.sh: Remove.
7287
7288         * cygwin/GNUmakefile (default): Remove postremove rules.
7289
7290 2005-10-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7291
7292         * ly/titling-init.ly (evenHeaderMarkup): use space in header on
7293         even header too.
7294         
7295         * scm/define-markup-commands.scm (wordwrap-string): bugfix for
7296         MacOS 9 users.
7297
7298         * lily/hara-kiri-group-spanner.cc (consider_suicide): only
7299         consider break index for broken spanner.
7300
7301         * scm/define-markup-commands.scm (wordwrap-string): remove \r
7302         characters from string before splitting.
7303
7304 2005-10-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7305
7306         * scm/framework-ps.scm (output-preview-framework): use
7307         is-book-title to determine whether to chop off the booktitle.
7308
7309         * lily/paper-book.cc (systems): init from book-title-properties
7310         (add_score_title): init score-title-properties.
7311
7312         * ly/paper-defaults.ly: add {score,book}-title-properties.
7313
7314         * scm/document-backend.scm (lookup-interface): error message if
7315         using unknown interface.
7316
7317         * lily/volta-bracket.cc (after_line_breaking): new function. Set
7318         edge-height.
7319
7320         * lily/horizontal-bracket.cc (make_enclosing_bracket): rename from
7321         make_bracket.
7322         (make_bracket): new function.
7323
7324         * scm/lily.scm (define-scheme-options): add paper-size option.
7325
7326         * ly/declarations-init.ly (laissezVibrer): get paper size from
7327         -dpaper-size
7328
7329         * scm/translation-functions.scm: use \fontsize for changing the
7330         fontsize.
7331
7332         * scm/define-grobs.scm (all-grob-descriptions): set
7333         between-length-limit to 1.0
7334
7335         * lily/tie-helper.cc: add between_length_limit_ detail property.
7336
7337         * mf/feta-bolletjes.mf: typos.
7338
7339         * lily/note-head.cc (internal_print): don't shadow idx
7340         parameter. This fixes wrong attachment for do shape heads.
7341
7342 2005-10-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7343
7344         * scm/parser-ly-from-scheme.scm: rename from ly-from-scheme.scm
7345
7346         * scm/parser-clef.scm (supported-clefs): rename from clef.scm
7347
7348         * scm/layout-slur.scm: rename from slur.scm
7349
7350         * scm/layout-page-layout.scm: rename from page-layout.scm
7351
7352         * scm/layout-beam.scm: rename from beam.scm
7353
7354         * scm/define-grob-interfaces.scm (bass-figure-interface): add
7355         bass-figure-interface
7356
7357         * lily/new-figured-bass-engraver.cc (process_music): add
7358         implicitBassFigures property.
7359         
7360         * scm/define-markup-commands.scm (pad-x): new markup.
7361
7362         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set
7363         minimumVerticalExtent on FiguredBass context.
7364
7365         * lily/figured-bass-continuation.cc (center_on_figures): kludge in
7366         case the continuation crosses a line break.
7367
7368 2005-10-09  Jan Nieuwenhuizen  <janneke@gnu.org>
7369
7370         * flower/file-name.cc (dos_to_posix)[__CYGWIN__]: Return
7371         unconverted value if cygwin_conv_to_posix_path () fails.  Fixes
7372         absolute file name bug.  
7373
7374 2005-10-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7375
7376         * VERSION (PACKAGE_NAME): release 2.7.12
7377
7378         * input/regression/figured-bass-continuation-center.ly: new file.
7379
7380         * input/regression/beam-outside-beamlets.ly: new file.
7381
7382         * lily/beam.cc (set_beaming): don't clip edges.
7383         (connect_beams): don't clip edges.
7384
7385         * lily/beaming-info.cc (clip_edges): new function.
7386
7387         * lily/enclosing-bracket.cc (struct Enclosing_bracket): new file.
7388
7389         * Documentation/user/instrument-notation.itely (Figured bass):
7390         demonstrate extenders, update seealso links.
7391
7392         * scm/titling.scm (marked-up-headfoot): change tagline
7393         handling. tagline = ##f will blank the tagline as well.
7394
7395 2005-10-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7396
7397         * Documentation/topdocs/NEWS.tely: add entry for Figured bass.
7398
7399         * lily/new-figured-bass-engraver.cc (struct
7400         New_figured_bass_engraver): add new_music_found_ member.
7401
7402         * lily/lilypond-version.cc (Lilypond_version): deal with
7403         incorrectly formatted version strings. 
7404
7405         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): switch on
7406         New_figured_bass_engraver by default.
7407
7408         * lily/ttf.cc (print_trailer): only define glyph names when
7409         FT_Face has FT_FACE_FLAG_GLYPH_NAMES
7410
7411 2005-10-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7412
7413         * lily/horizontal-bracket.cc (make_bracket): new function.
7414
7415         * scm/define-grobs.scm (all-grob-descriptions): new grobs
7416         NewBassFigure, BassFigureBracket, BassFigureContinuation,
7417         BassFigureLine, BassFigureAlignment
7418
7419         * lily/new-figured-bass-engraver.cc (process_music): new file.
7420
7421         * lily/figured-bass-continuation.cc: new file.
7422
7423         * lily/include/horizontal-bracket.hh (struct Horizontal_bracket):
7424         new file.
7425
7426 2005-10-04  Mats Bengtsson  <mabe@s3.kth.se>
7427
7428         * scripts/lilypond-book.py: Bug fix, put the quote around the
7429         actual score for LaTeX documents.
7430
7431         * scm/define-grobs.scm (all-grob-descriptions): Change
7432         collapse-height of the SystemStartBracket grob to 5.0, 
7433         so the bracket disappears for single stave score lines (similarly
7434         to SystemStartBraces). 
7435
7436         * Documentation/user/advanced-notation.itely (Polymetric
7437         notation): Clarify the use of compressMusic.
7438
7439         * Documentation/user/basic-notation.itely (Grace notes): Clarify
7440         that the grace spacer note in other staves need the same duration
7441         and document the stroke-style property.
7442
7443 2005-10-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7444
7445         * Documentation/user/global.itely (Vertical spacing): document
7446         alignment-extra-space and fixed-alignment-extra-space.
7447
7448         * Documentation/topdocs/NEWS.tely (Top): add entry.
7449
7450         * input/regression/alignment-vertical-spacing.ly: new file.
7451
7452         * python/convertrules.py (conv): add rule.
7453
7454         * ly/music-functions-init.ly: rename outputProperty to overrideProperty
7455
7456         * lily/align-interface.cc (stretch_after_break): new
7457         function. Read fixed-alignment-extra-space property.
7458         (align_elements_to_extents): read alignment-extra-space property.
7459
7460         * lily/lily-guile.cc (robust_scm2dir): new function.
7461
7462         * scm/page-layout.scm (page-headfoot): annotate headsep and footsep.
7463         (annotate-space-left): new function. Annotate space left on page. 
7464         (annotate-y-interval): new function.
7465         (paper-system-annotate-last): new function. Annotate bottom-space.
7466
7467         * mf/feta-beugel.mf (y): 
7468
7469 2005-10-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7470
7471         * VERSION (PACKAGE_NAME):  release 2.7.11
7472
7473         * scm/lily-library.scm (interval-translate): new function
7474         (interval-center): new function. 
7475
7476         * scm/page-layout.scm (paper-system-annotate): new function. Add
7477         arrows for dimensions.
7478  
7479         * scm/stencil.scm (dimension-arrows): new function.
7480
7481         * Documentation/user/global.itely (Vertical spacing): mention annotatespacing
7482
7483         * input/regression/page-spacing.ly: add annotatespacing
7484
7485         * lily/paper-system-scheme.cc (LY_DEFINE): remove ly:paper-system-{extent,stencil}
7486         (LY_DEFINE): new function ly:paper-system-set-property!
7487
7488         * Documentation/user/global.itely (Paper size): explain how to add
7489         sizes.
7490
7491         * scm/paper.scm (paper-alist): rename tabloid paper to 11x17 to
7492         correspond to GS's definition.
7493
7494         * lily/tuplet-bracket.cc (after_line_breaking): suicide empty
7495         tuplet bracket.
7496         (print): only connect to next bracket if the next one is alive.
7497         (print): set padding to 0.0 if the bound is a breakable
7498         column. This makes tupletFullLength brackets reach up to the staff
7499         line if it doesn't connect to the next line.
7500
7501 2005-09-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7502
7503         * lily/bar-number-engraver.cc: correct docs.
7504
7505         * scm/output-lib.scm (first-bar-number-invisible): rename from
7506         default-bar-number-visibility
7507
7508 2005-09-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7509
7510         * scm/define-music-properties.scm (all-music-properties): remove
7511         predicate property.
7512
7513 2005-09-28  Heikki Junes  <hjunes@cc.hut.fi>
7514
7515         * po/fi.po: refresh.
7516
7517 2005-09-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7518
7519         * input/regression/hara-kiri-pianostaff.ly (disappear): remove
7520         superfluous s1.
7521         (disappear): bugfix.
7522
7523         * lily/stem-tremolo.cc (raw_stencil): read slope property.
7524
7525         * lily/include/paper-system.hh (class Paper_system): remove
7526         staff_extents_ member.
7527
7528         * lily/paper-system-scheme.cc (LY_DEFINE): remove.
7529
7530         * lily/include/paper-system.hh (class Paper_system): remove
7531         number_ variable. Remove is_title_. Remove break_before_penalty_
7532
7533         * lily/paper-book.cc (systems): use 'number property iso. number_
7534         member.
7535
7536         * lily/paper-system-scheme.cc: remove ly:paper-system-break-before-penalty
7537         remove ly:paper-system-number.
7538
7539         * scm/lily-library.scm (paper-system-title?): new function.
7540
7541         * lily/book.cc (process): bugfix: flip ?: cases. 
7542
7543         * Documentation/user/changing-defaults.itely (Difficult tweaks):
7544         add outputProperty.
7545
7546         * ly/music-functions-init.ly: add outputProperty music function.
7547
7548         * scm/paper.scm (set-paper-dimension-variables): add pagetopspace
7549
7550         * scm/page-layout.scm (ly:optimal-page-breaks): read next-space
7551         and next-padding.
7552         (optimal-page-breaks): rename from ly:optimal-page-breaks.
7553
7554         * lily/paper-system-scheme.cc (LY_DEFINE): new function.
7555
7556         * lily/paper-system.cc (internal_get_property): new function.
7557
7558         * Documentation/user/global.itely (Vertical spacing): refer to
7559         page-spacing.ly
7560
7561         * scm/page-layout.scm (ly:optimal-page-breaks): add support for
7562         pagetopspace
7563
7564         * input/regression/page-spacing.ly: new file.
7565
7566         * input/regression/page-top-space.ly: new file.
7567
7568         * lily/spacing-spanner.cc: cmath -> math.h
7569
7570         * lily/paper-system.cc (read_left_bound): new function. Read
7571         line-break-system-details from left bound to determine extents.
7572  
7573         * Documentation/user/programming-interface.itely (Using LilyPond
7574         syntax inside Scheme): change applyxxx -> applyXxx.
7575
7576         * ly/music-functions-init.ly: add outputProperty music function.
7577
7578         * lily/parser.yy (Generic_prefix_music_scm): add scm-scm-scm signature.
7579
7580         * lily/grob-scheme.cc (LY_DEFINE): add ! to ly:grob-suicide! name.
7581
7582         * python/convertrules.py (conv): rule
7583
7584         * ly/music-functions-init.ly: applyxxx -> applyXxx
7585
7586         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): alias
7587         TabVoice to Voice.
7588
7589 2005-09-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7590
7591         * flower/include/real.hh: include <math.h> iso. <cmath>
7592
7593         * flower/include/offset.hh: include real.hh
7594
7595 2005-09-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7596
7597         * Documentation/user/changing-defaults.itely (Difficult tweaks):
7598         fix example, now that 'interfaces is no longer directly available.
7599
7600         * lily/book.cc (process): don't crash if paper == NULL.
7601
7602         * po/fr.po: update.
7603
7604 2005-09-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7605
7606         * scm/define-music-types.scm (music-descriptions): set length and
7607         start-callback for QuoteMusic
7608
7609 2005-09-15  Mats Bengtsson  <mabe@s3.kth.se>
7610
7611         * lily/tie.cc (get_configuration): Replace fabs -> abs for integer
7612         arguments. Fixes compilation error with gcc 3.3.
7613
7614 2005-09-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7615
7616         * VERSION: release 2.7.10
7617
7618         * stepmake/stepmake/python-module-rules.make
7619         ($(outdir)/%$(SHARED_MODULE_SUFFIX)): SHARED_FLAGS at the end.  
7620
7621         * lily/*.cc: remove <cmath> everywhere. <cmath> is included from
7622         real.hh
7623
7624 2005-09-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7625
7626         * stepmake/stepmake/c++-vars.make (#EXTRA_CXXFLAGS): don't add
7627         -Werror. Otherwise GCC barfs over various optimizations.
7628
7629         * scm/define-grob-properties.scm (all-internal-grob-properties):
7630         add note-head property
7631
7632         * Documentation/user/instrument-notation.itely (Laissez vibrer
7633         ties): new node.
7634
7635         * input/regression/laissez-vibrer-ties.ly: new file.
7636
7637         * lily/laissez-vibrer-engraver.cc: new file.    
7638
7639         * lily/include/tie-column-format.hh: new file.
7640
7641         * lily/tie-column-format.cc: new file. 
7642
7643         * lily/tie-column.cc (set_manual_tie_configuration): new function.
7644
7645         * lily/laissez-vibrer-tie.cc: new file.
7646
7647         * lily/include/laissez-vibrer-tie.hh: new file.
7648
7649         * ly/engraver-init.ly: add Laissez_vibrer_engraver
7650
7651         * ly/declarations-init.ly (laissezVibrer): add \laissezVibrer
7652
7653         * scm/define-grobs.scm (all-grob-descriptions): add
7654         LaissezVibrerTie, LaissezVibrerTieColumn
7655
7656         * lily/tie-column.cc (set_tie_config_directions): new function
7657         (final_shape_adjustment): new function.
7658         (shift_small_ties): new function.
7659
7660         * scm/define-music-types.scm (music-descriptions): add LaissezVibrerEvent
7661
7662         * lily/include/tie.hh (struct Tie_details): add x_gap_
7663         (struct Tie_configuration): add head_position_
7664
7665         * lily/tie-column.cc (set_chord_outline): new function.
7666
7667         * mf/cmr.enc.in:  remove file.
7668
7669 2005-09-11  Graham Percival  <gpermus@gmail.com>
7670
7671         * Documentation/user/examples.itely: typo fix.  Thanks, Matevž
7672
7673 2005-09-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7674
7675         * mf/feta-banier.mf: make vertical stem 1/2 stemthickness wide to
7676         reduce aliasing effects.
7677
7678         * lily/tie-column.cc (set_chord_outlines): bugfix: insert complete
7679         box in skyline.
7680
7681 2005-09-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7682
7683         * lily/tie.cc (get_configuration): don't crash if left_dot is NULL.
7684
7685         * flower/include/real.hh: std::fabs too.
7686
7687 2005-09-08  Jan Nieuwenhuizen  <janneke@gnu.org>
7688
7689         * Documentation/user/lilypond.tely: Spell Baßtuba in UTF-8 (Werner). 
7690
7691         * lily, flower: Include C++ iso C headers.  Import namespace std
7692         throughout.
7693
7694         * lily/side-position-interface.cc: 
7695         * lily/scm-hash.cc: 
7696         * lily/note-head.cc: 
7697         * lily/include/includable-lexer.hh: 
7698         * flower/include/string-data.icc: Remove using std::*.
7699
7700         * lily, flower: Include C++ iso C headers.  Import namespace std
7701         throughout.
7702
7703         * lily/side-position-interface.cc: 
7704         * lily/scm-hash.cc: 
7705         * lily/note-head.cc: 
7706         * lily/include/includable-lexer.hh: 
7707         * flower/include/string-data.icc: Remove using std::*.
7708
7709         * Documentation/user/instrument-notation.itely (Entering lyrics):
7710         Multiple latin-1->utf-8 conversion fix.
7711
7712         * Documentation/user/*tely: Update Emacs cookie to utf-8.
7713
7714 2005-09-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7715
7716         * lily/tie.cc (get_configuration): also avoid dots for non-space
7717         situations.
7718
7719 2005-09-07  Jan Nieuwenhuizen  <janneke@gnu.org>
7720
7721         * Documentation/user/instrument-notation.itely: Bugfix.
7722
7723 2005-09-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7724
7725         * tex/GNUmakefile: don't install texinfo.tex
7726
7727         * tex/ : cleanup: remove unused files.
7728
7729         * lily/general-scheme.cc: remove my_{isinf,isnan}.
7730
7731         * flower/include/real.hh: using std::{isnan,isinf}
7732         
7733         * VERSION (PATCH_LEVEL): release 2.7.9
7734
7735 2005-09-05  Graham Percival  <gpermus@gmail.com>
7736
7737         * Documentation/user/ instrument-notation.itely,
7738         advanced-notation.itely: minor tweaks.
7739
7740         * input/test/script-chart.ly: add item padding.
7741
7742 2005-09-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7743
7744         * flower/offset.cc: use math.h iso. <cmath>
7745
7746         * scm/ps-to-png.scm (make-ps-images): use png16m again, for sake
7747         of IE users.
7748
7749         * scm/framework-eps.scm (dump-stencils-as-EPSes): cleanup.
7750         (widen-left-stencil-edges): new function. Fix alignment problems
7751         with LaTeX includegraphics.
7752
7753         * lily/text-interface.cc (interpret_markup): use abort().
7754
7755 2005-09-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7756
7757         * input/regression/tie-chord.ly (testLong): add a chord in 4ths
7758
7759         * lily/tie.cc (get_configuration): update bezier shape as we
7760         change Y positions.
7761         (get_configuration): don't move large ties if we're outside of the
7762         staff.
7763
7764 2005-09-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7765
7766         * scm/define-markup-commands.scm (strut): swap X and Y dims.
7767         
7768 2005-09-03  Jan Nieuwenhuizen  <janneke@gnu.org>
7769
7770         * .cvsignore: Add auto-generated configure files and then some.
7771
7772 2005-09-02  Jan Nieuwenhuizen  <janneke@gnu.org>
7773
7774         * scm/define-grobs.scm (DynamicLineSpanner): Add
7775         X-extent-callback.  Fixes hairpin-slur collision.
7776
7777 2005-08-31  Graham Percival  <gpermus@gmail.com>
7778
7779         * Documentation/user/advanced-notation.itely,
7780         basic-notation.itely: minor changes.
7781
7782 2005-08-31  Mats Bengtsson  <mabe@s3.kth.se>
7783
7784         * scm/framework-eps.scm (dump-stencils-as-EPSes): Insert a
7785         \linebreak between each .eps file if \betweenLilyPondSystem is
7786         undefined. 
7787
7788         * Documentation/user/lilypond-book.itely (Integrating LaTeX and
7789         music): Document the \linebreak
7790
7791         * Documentation/user/lilypond-book.itely,
7792         input/tutorial/lbook-latex-test.tex,
7793         Documentation/user/examples.itely: Remove \usepackage{graphics}
7794
7795 2005-08-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7796
7797         * mf/aybabtu.pe.in (i): don't merge alphabet into aybabtu.
7798
7799         * lily/ly-module.cc (make_stand_in_procs_weak): 1.6.4 and earlier
7800         compat bugfix.
7801
7802         * scripts/lilypond-book.py (PREAMBLE_LY): define
7803         inside-lilypond-book
7804         (modify_preamble): new function. Insert \RequirePackage{graphics}
7805         when no {graphics found in preamble.  
7806
7807 2005-08030  Graham Percival  <gpermus@gmail.com>
7808
7809         * Documentation/user/basic-notation.itely, global.itely,
7810         tutorial.itely: misc small changes.
7811
7812 2005-08-30  Jan Nieuwenhuizen  <janneke@gnu.org>
7813
7814         * stepmake/aclocal.m4: Include MY_PATCH_LEVEL in config.make's
7815         VERSION.
7816
7817 2005-08-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7818
7819         * lily/tie-column.cc (new_directions): put Tie down on center
7820         staff line. 
7821
7822         * lily/script-interface.cc (before_line_breaking): use
7823         Grob::programming_error
7824
7825         * scm/ps-to-png.scm (make-ps-images): use pngalpha device.
7826
7827         * scripts/lilypond-book.py (get_latex_textwidth): oops. Take [0]
7828         of splitext.
7829
7830 2005-08-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7831
7832         * VERSION (PACKAGE_NAME): VERSION release 2.7.8
7833
7834 2005-08-29  Werner Lemberg  <wl@gnu.org>
7835
7836         * mf/GNUmakefile: Add `-f' flag to `rm' command while removing
7837         the `*.scale.pfa' files to avoid warnings.
7838
7839 2005-08-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7840
7841         * lily/tempo-performer.cc (process_music): idem.
7842
7843         * lily/midi-def.cc (get_tempo): Rational to int conversion bug.
7844
7845 2005-08-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7846
7847         * Documentation/user/advanced-notation.itely (Text markup): not a
7848         fragment.
7849
7850         * lily/midi-item.cc (to_string): use to_int() iso. int cast.
7851
7852         * lily/staff-performer.cc (initialize): add tempo/name to
7853         audio_staff_
7854
7855
7856 2005-08-26  Graham Percival  <gpermus@gmail.com>
7857
7858         * Documentation/user/advanced.itely: add text-only example.
7859
7860         * Documentation/user/invoking.itely: add index entries for
7861         convert-ly.
7862
7863         * Documentation/user/ tutorial.itely, basic-notation.itely:
7864         small fixes suggested by Steve D.  Thanks!
7865
7866 2005-08-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7867
7868         * input/regression/markup-bidi-pango.ly: new file.
7869
7870         * lily/pango-font.cc (pango_item_string_stencil): make Mingw code
7871         standard. Remove #ifdef. Remove memleak.
7872         (text_stencil): use text_dir to decide how to composite items.
7873         (text_stencil): determine uniform text direction for the entire
7874         string.
7875
7876         * scripts/lilypond-book.py (output_name): remove
7877         latex_filter_cmd. Non-portable to non-Unix systems. 
7878         (get_latex_textwidth): use File.write and os.unlink() instead.
7879
7880         * THANKS: add Vicente & Trevor.
7881
7882         * lily/grob.cc (discretionary_processing): look up origin for
7883         programming_error too. 
7884
7885         * input/regression/tie-broken.ly: new file.
7886
7887         * lily/tie-column.cc (set_chord_outlines): set outline for line
7888         break case too.
7889         
7890 2005-08-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7891
7892         * lily/pango-font.cc (text_stencil): don't translate glyphs in
7893         unscaled transform, just translate stencils.
7894
7895         * ly/performer-init.ly: init timing to #t.  Fixes bar checks in
7896         MIDI.
7897
7898         * scm/define-markup-commands.scm (wordwrap-string): use
7899         text-direction
7900         (wordwrap-stencils): idem.
7901         (line): idem.
7902         (fill-line): idem.
7903         (wordwrap-stencils): translate last line to right for
7904         text-direction = LEFT.
7905
7906         * scm/define-grob-properties.scm (all-user-grob-properties): add
7907         text-direction.
7908
7909 2005-08-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
7910
7911         * lily/lily-parser.cc (Lily_parser): also copy output_basename_
7912         when copying a Lily_parser object.
7913
7914 2005-08-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7915
7916         * scm/define-markup-commands.scm (null): add null markup.
7917
7918 2005-08-25  Mats Bengtsson  <mabe@s3.kth.se>
7919
7920         * lily/item.cc: Add documentation of center-invisible
7921
7922 2005-08-24  Graham Percival  <gpermus@gmail.com>
7923
7924         * Documentation/user/advanced-notation.itely: add info about
7925         raising text.
7926
7927         * Documentation/user/programming-interface.itely: fix example
7928         involving raised text.
7929
7930 2005-08-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7931
7932         * lily/beam.cc (print): fix X start/end points of isolated
7933         beamlets.
7934
7935         * scm/output-ps.scm (grob-cause): escape spaces in URLs.
7936
7937         * lily/multi-measure-rest.cc (set_text_rods): new function.
7938
7939         * lily/vertical-align-engraver.cc (process_music): call
7940         Align_interface::set_axis(). This forces #'elements to be ordered,
7941         preventing random vertical reordering of staves.
7942
7943         * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
7944         add avoid-slur property. 
7945
7946         * Documentation/user/basic-notation.itely (Measure repeats): add
7947         countPercentRepeats example.
7948
7949         * Documentation/user/advanced-notation.itely (Other text markup
7950         issues): remove remark about normal-font.  We have \normal-text
7951
7952         * input/regression/tie-chord.ly: add note about remaining bugs.
7953
7954         * lily/tie.cc (print): try Tie_column::set_directions () if
7955         control-points not yet defined.
7956
7957 2005-08-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7958
7959         * lily/system-start-delimiter.cc (staff_brace): don't remove brace
7960         extent. This fixes braces falling out of the EPS bbox.
7961
7962         * mf/feta-beugel.mf (braces_per_font): make brace glyph align
7963         exactly to bbox.
7964
7965 2005-08-23  Graham Percival  <gpermus@gmail.com>
7966
7967         * {various} : change #up->#UP and #down->#DOWN.
7968
7969         * ly/titling-init.ly: Spacing fix when using printallheaders=##t.
7970
7971         * Documentation/user/advanced-notation.itely: clarify
7972         what objects handles text on a multimeasure rest.
7973
7974 2005-08-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7975
7976         * VERSION (PATCH_LEVEL): release 2.7.7
7977
7978 2005-08-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7979
7980         * make/lilypond-vars.make: set -dgs-font-load for "make web" 
7981
7982         * Documentation/topdocs/INSTALL.texi (Top): add GS bugfix requirement.
7983
7984         * input/regression/*.ly: formatting clean-up. Default layout
7985         before music expression.
7986
7987         * input/mutopia/R.Schumann/GNUmakefile (examples): switch off
7988         romanze28-2 example.
7989
7990         * scm/ps-to-png.scm: remove dir-re function.
7991         (make-ps-images): generate page names, instead of globbing them.
7992         This brings down LilyPond memory usage for make web by a factor
7993         10. 
7994
7995         * scripts/lilypond-book.py (Lilypond_snippet.png_is_outdated):
7996         don't use glob. With 3000 files, globbing
7997         Documentation/user/out-www/ can take too much time. 
7998         
7999         * lily/lily-guile.cc (gulp_file_to_string): take size argument.
8000
8001         * lily/general-scheme.cc (LY_DEFINE): take optional size argument.
8002
8003         * input/regression/tie-manual.ly: new file
8004
8005         * input/regression/tie-chord.ly: update.
8006
8007         * flower/include/interval.hh (struct Interval_t): 
8008
8009         * lily/tie.cc (distance): new function 
8010         (height): new function.
8011         (init): new function
8012         (Tie_details): new struct.
8013
8014         * lily/skyline.cc (skyline_height): new function.
8015
8016         * lily/tie-column.cc (set_chord_outlines): new function.
8017         (new_directions): read tie-configuration
8018
8019         * lily/skyline.cc: fix ASCII art.
8020         
8021 2005-08-22  Mats Bengtsson  <mabe@s3.kth.se>
8022
8023         * python/convertrules.py (string_or_scheme): Fix spelling error
8024
8025 2005-08-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8026         
8027         * lily/tie-column.cc (set_directions): set directions only once.
8028         (add_configuration): new function.
8029
8030         * lily/tie.cc (set_control_points): new function
8031
8032         * lily/tie-column.cc (new_directions): new function.
8033
8034         * ly/music-functions-init.ly: set 'pitch property
8035         iso. trill-pitch. This makes \relative work with \pitchedTrill
8036
8037         * lily/tie.cc (get_configuration): new function. Don't generate
8038         control points, rather, generate configuration.
8039         remove head-pair property.
8040
8041         * lily/include/tie.hh (struct Tie_configuration): new struct.
8042
8043 2005-08-22  Heikki Junes  <hjunes@cc.hut.fi>
8044
8045         * Documentation/topdocs/NEWS.tely: clarify.
8046
8047 2005-08-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8048
8049         * lily/tie.cc: remove minimum-length
8050
8051         * scm/define-grob-properties.scm (all-user-grob-properties):
8052         remove staffline-clearance, y-offset 
8053
8054         * input/regression/tie-dots.ly (Module): remove.
8055
8056         * lily/tie.cc (get_control_points): rewrite. Put short ties in
8057         staff-spaces, make long ties cross staff lines. Avoid flags and dots.
8058
8059         * input/regression/tie-single.ly: new file.
8060
8061 2005-08-21  Graham Percival  <gpermus@gmail.com>
8062
8063         * ly/bagpipe.ly: fix compile problem.
8064
8065 2005-08-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8066
8067         * lily/midi-item.cc (name): new method.
8068
8069         * lily/staff-performer.cc (acknowledge_audio_element): use
8070         signature of baseclass.
8071
8072         * lily/engraver-group.cc (do_announces): move recursion call out
8073         of while loop. 
8074
8075         * lily/drum-note-performer.cc (class Drum_note_performer): use
8076         process_music everywhere.
8077
8078         * ly/performer-init.ly: add default children everywhere.
8079
8080         * lily/paper-book.cc (output): call paper-book-write-midis
8081         directly: always write MIDI, even if no \layout {} block. 
8082
8083 2005-08-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8084
8085         * VERSION (PACKAGE_NAME): release 2.7.6
8086
8087         * lily/percent-repeat-engraver.cc (try_music): don't print warning
8088         about not being able to handle repeat.
8089
8090 2005-08-19  Jan Nieuwenhuizen  <janneke@gnu.org>
8091
8092         * Documentation/user/examples.itely (Piano templates):
8093         * lily/include/performer-group.hh: Remove last traces of
8094         Performer_group_performer.  Fixes make web.
8095
8096 2005-08-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8097
8098         * Documentation/user/examples.itely (Piano templates): change
8099         Engraver_group_engraver -> Engraver_group
8100
8101         * lily/ly-module.cc (make_stand_in_procs_weak): only kludge if
8102         scm_stand_in_procs is not weak_any.
8103
8104         * lily/volta-bracket.cc (print): don't use strcmp().
8105
8106         * lily/volta-engraver.cc (process_music): use
8107         Text_interface::is_markup() for setting the 'text property of the
8108         volta bracket.
8109
8110         * input/mutopia/claop.py (accents): update syntax to 2.6
8111
8112         * scm/define-context-properties.scm
8113         (all-user-translation-properties): add countPercentRepeats.
8114
8115         * Documentation/user/basic-notation.itely (Measure repeats): add
8116         isolated percent example.
8117
8118 2005-08-18  Graham Percival  <gpermus@gmail.com>
8119
8120         * input/ {various}: change direction #1, #-1 to
8121         #up/#down or \fooUp, \fooDown.
8122
8123         * Documentation/user/music-glossary.tely: #-1 to #down.
8124
8125         * ly/bagpipe.ly, engraver-init.ly, property-init.ly: #1
8126         to #up, #-1 to #down.
8127
8128 2005-08-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8129
8130         * lily/include/engraver-group.hh: rename.
8131
8132         * lily/include/performer-group.hh: rename.
8133
8134 2005-08-18  Mats Bengtsson  <mabe@s3.kth.se>
8135
8136         * input/test/script-abbreviations.ly: Removed some old LaTeX
8137         left overs.
8138
8139 2005-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
8140
8141         * python/convertrules.py (conv): inside-slur -> avoid-slur.
8142         Remove functions.  Remove if 1: constructs, reindent.
8143
8144         * scripts/convert-ly.py (add_version): Add functions from
8145         convertrules.py
8146
8147         * scm/script.scm (default-script-alist):
8148         s/priority/script-priority.  Fixes script stacking.  Backportme.
8149         (Fermata): Very low priority.
8150
8151 2005-08-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8152
8153         * input/regression/*.ly: remove superfluous \score blocks. Reindent.
8154
8155         * input/regression/slur-script.ly: remove padding tweaks. Add
8156         comment strings.
8157
8158         * lily/note-spacing.cc (get_spacing): remove kludge for EOL wide
8159         time sigs and related stuff.
8160
8161         * scm/define-grob-properties.scm (all-user-grob-properties): add
8162         @code{} tags to property description.
8163
8164         * lily/include/line-group-group-engraver.hh (Module): remove file.
8165
8166         * python/convertrules.py (conv): add rule for
8167         Engraver_group_engraver -> Engraver_group.
8168
8169         * lily/include/performer-group-performer.hh: analogous.
8170
8171         * lily/include/engraver-group-engraver.hh: rename to Engraver_group.
8172
8173         * lily/context-def.cc (instantiate): check for
8174         Engraver_group_engraver and Performer_group_performer not
8175         Engraver/Performer. Fixes crashes when doing \with { \consists .. }
8176  
8177 2005-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
8178
8179         * input/les-nereides.ly: Remove three fingering tweaks, update
8180         remaining one.
8181
8182         * input/regression/slur-script-inside.ly: Update, fix doc.
8183
8184         * scm/script.scm: Update to avoid-slur.
8185
8186         * scm/define-grob-properties.scm (avoid-slur): New property.
8187
8188         * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
8189         * lily/slur-engraver.cc (acknowledge_extra_object): Invoke
8190         outside_slur_callback if avoid-slur != #'inside.
8191
8192         * scm/define-grobs.scm (Fingering, Textscript): No
8193         inside-slur/outside-slur preference.
8194         (DynamicLineSpanner): Always outside slur.
8195
8196         * input/regression/slur-script.ly: More tests.
8197
8198 2005-08-17  Graham Percival  <gpermus@gmail.com>
8199
8200         * Documentation/user/lilypond-book: fix notime entry.
8201
8202         * Documentation/user/advanced-notation.itely: add info on
8203         getting an I rehearsal mark.
8204
8205         * Documentation/user/putting.itely: reinstate "I", re-enforce
8206         the fact that \override numbers are the result of
8207         experimentation and personal taste.
8208
8209         * Documentation/user/invoking.itely: update convert-ly bugs.
8210
8211 2005-08-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8212
8213         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set timing
8214         to #t.
8215
8216         * lily/timing-translator.cc (initialize): don't initialize timing.
8217
8218         * input/regression/stem-spacing.ly (Module): remove file.
8219
8220         * input/regression/spacing-stick-out.ly: specify Score context for
8221         \override
8222
8223         * input/regression/clefs.ly: remove spurious {}s 
8224
8225 2005-08-17  Heikki Junes  <hjunes@cc.hut.fi>
8226
8227         * Documentation/topdocs/NEWS.tely,
8228         input/regression/repeat-percent-count.ly: clarify a bit.
8229
8230 2005-08-16  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8231
8232         * input/no-notation/display-lily-tests.ly: delete
8233         display-lily-init call.
8234
8235         * ly/music-functions-init.ly (displayLilyMusic): move
8236         display-lily-init call at top level, so that the user should not
8237         have to call it.
8238
8239         * scm/define-music-display-methods.scm (note-name->lily-string):
8240         retrieve note names directly from pitchnames using new function `rassoc'.
8241         (display-lily-init): note names list construction removed.
8242
8243 2005-08-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8244
8245         * THANKS: spello.
8246
8247         * lily/lily-parser.cc (get_header): copy module, instead of
8248         returning it.
8249
8250         * Documentation/topdocs/NEWS.tely (Top): add entry for percent
8251         counters.
8252
8253         * Documentation/user/basic-notation.itely (Measure repeats): add
8254         links to Counter grobs.
8255
8256         * scm/define-grobs.scm (all-grob-descriptions): add
8257         DoublePercentRepeatCounter
8258         (all-grob-descriptions): add PercentRepeatCounter
8259
8260         * lily/percent-repeat-engraver.cc (class Percent_repeat_engraver):
8261         also create counter grobs.
8262
8263         * lily/separation-item.cc (extremal_break_aligned_grob): don't
8264         return grob without space-alist.
8265
8266         * input/proportional.ly: tune staff-padding.
8267
8268         * input/regression/repeat-percent-count.ly: new file. 
8269
8270 2005-08-16  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8271
8272         * input/no-notation/display-lily-tests.ly: moved from
8273         input/regression/ to input/no-notation. Be sure to call
8274         `display-lily-init' before trying to use the display function.
8275
8276 2005-08-16  Mats Bengtsson  <mabe@s3.kth.se>
8277
8278         * scripts/lilypond-book.py (option_definitions): Don't localize
8279         the empty string. Fixes bug when --psfonts was used with
8280         non-English locale.
8281
8282 2005-08-15  Graham Percival  <gpermus@gmail.com>
8283
8284         * lily/tuplet-bracket.cc: simple build fix.
8285
8286         * Documentation/user/putting.itely: use "we" instead of "I".
8287
8288         * Documentation/user/basic-notation.itely: cautionary accidentals
8289         work with naturals, too.
8290
8291 2005-08-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8292
8293         * lily/tuplet-bracket.cc (calc_position_and_height): add
8294         staff-padding support.
8295
8296         * input/proportional.ly: set staff-padding.
8297         
8298         * VERSION (PATCH_LEVEL): release 2.7.5
8299
8300         * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): text formatting
8301         fixes. Remove tweaks.
8302
8303         * input/regression/tuplet-slope.ly: add a test case.
8304
8305         * lily/tuplet-bracket.cc (calc_position_and_height): revert
8306         erroneous fix. Add spanner bounds to offset array with relative X
8307         positions.
8308
8309         * ly/engraver-init.ly: add Rest_engraver only once.
8310
8311         * scm/define-music-display-methods.scm (KeyChangeEvent): only do
8312         (*parser*) lookup if (*parser*) != #f.
8313
8314 2005-08-15  Jan Nieuwenhuizen  <janneke@gnu.org>
8315
8316         * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
8317         Cut-and paste update.
8318
8319         * input/regression/slur-script.ly: Add example of reverting
8320         inside-slur for fingering.
8321
8322         * scm/define-grobs.scm (DynamicLineSpanner, Fingering,
8323         TextScript): Explicitly set inside-slur #f, forcing these out of slur.
8324
8325         * lily/slur-engraver.cc (acknowledge_extra_object): Only invoke
8326         outside_slur_callback if inside-slur == #f (as opposed to unset).
8327
8328 2005-08-14  Jan Nieuwenhuizen  <janneke@gnu.org>
8329
8330         * tex/GNUmakefile (INSTALLATION_FILES): Remove enc symlink setup,
8331         encoding files are already removed.
8332
8333 2005-08-15  Mats Bengtsson  <mabe@s3.kth.se>
8334
8335         * Documentation/user/advanced-notation.itely (Instrument names):
8336         Document a workaround for instrument names that collide with
8337         system start braces/brackets.
8338
8339 2005-08-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8340
8341         * lily/rest-collision.cc (do_shift): spello.
8342
8343         * input/proportional.ly: use #'used property. Set break-overshoot
8344         property.
8345
8346         * mf/feta-arrow.mf: center on arrow tip center, iso. tip edge.
8347
8348         * lily/paper-column.cc: add #'used property
8349
8350         * lily/mark-engraver.cc (stop_translation_timestep): set grob
8351         array for staves found.
8352
8353         * lily/metronome-engraver.cc (stop_translation_timestep): set grob
8354         array for stavesFound.
8355
8356         * lily/staff-spacing.cc (next_note_correction): add fixed and
8357         space to calling convention. This fixes spacing of accidentals
8358         after barlines.
8359
8360         * input/regression/spacing-accidental-stretch.ly: add barline -
8361         accidental case.
8362
8363         * scm/framework-ps.scm (page-header): add version number to
8364         creator
8365         (eps-header): idem.
8366
8367         * mf/feta-bolletjes.mf: swap d0 and u0 fa heads.
8368         
8369 2005-08-13  Graham Percival  <gpermus@gmail.com>
8370
8371         * Documentation/user/global.itely: add "fit as much as
8372         possible onto this page" example (Vertical spacing).
8373
8374 2005-08-13  Jan Nieuwenhuizen  <janneke@gnu.org>
8375
8376         * *: Nitpick run.
8377
8378         * buildscripts/fixcc.py: Fixes.
8379
8380 2005-08-12  Graham Percival  <gpermus@gmail.com>
8381
8382         * Documentation/user/advanced-notation.itely: add markup
8383         example to Text spanners.
8384
8385 2005-08-12  Mats Bengtsson  <mabe@s3.kth.se>
8386
8387         * Documentation/user/basic-notation.itely (Ties): Add example of
8388         tying a tremolo to a chord. Thanks to Steve Doonan. 
8389
8390         * lily/tie-engraver.cc: Add tieWaitForNote to the list of read
8391         properties and move tieMelismaBusy to the list of written
8392         properties. 
8393
8394 2005-08-12  Heikki Junes  <hjunes@cc.hut.fi>
8395
8396         * po/TODO: suggest to use a dedicated tool like kbabel.
8397
8398         * po/fi.po: update using kbabel.
8399
8400 2005-08-12  Jan Nieuwenhuizen  <janneke@gnu.org>
8401
8402         * *: Remove obsolete files.  Nitpick run.
8403
8404         * lily/lily-guile.cc (parse_symbol_list): Bugfix.
8405
8406 2005-08-11  Jan Nieuwenhuizen  <janneke@gnu.org>
8407
8408         * mf/GNUmakefile (get-*-fonts): Rename from get-*-pfa.  Copy SVG
8409         too.
8410
8411         * Documentation/topdocs/NEWS.tely (Top): Add slur script feature.
8412
8413         * lily/lily-guile.cc (parse_symbol_list): Rewrite.  Grok multiple
8414         whitespace as symbol separator.
8415
8416         * lily/side-position-interface.cc: Add slur-padding.
8417
8418         * input/regression/slur-script.ly: Fixed.  Backportme?  This is
8419         quite a large fix, and it never worked in a stable release; so not
8420         really a regression.
8421
8422         * lily/phrasing-slur-engraver.cc (class Phrasing_slur_engraver):
8423         Update cut and paste code from Slur_engraver.
8424
8425         * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
8426         Add.
8427
8428         * scm/define-grobs.scm (DynamicLineSpanner): Add
8429         dynamic-line-spanner-interface.
8430         (DynamicLineSpanner, TextScript, Fingering): Add slur-padding.
8431
8432 2005-08-09  Jan Nieuwenhuizen  <janneke@gnu.org>
8433
8434         * lily/slur-engraver.cc (acknowledge_extra_object): Bugfix: use
8435         to_boolean () so that non-set 'inside-slur means false.
8436
8437         * lily/slur.cc (outside_slur_callback): Bugfixes: make sure that
8438         slur has control-points.  Skip script without direction.  Always
8439         do_shift if script inside slur, even if slur not contained in
8440         script y-extent.  Increment k in loop.
8441
8442 2005-08-11  Mats Bengtsson  <mabe@s3.kth.se>
8443
8444         * scm/define-markup-commands.scm: Improved regexp to search for
8445         EPS bounding boxes and corrected call to ly:warning.
8446
8447 2005-08-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8448
8449         * Documentation/user/programming-interface.itely (Displaying music
8450         expressions): doc for \displayLilyMusic. Also some precisions in
8451         "Markup construction in Scheme"
8452
8453 2005-08-10  Mats Bengtsson  <mabe@s3.kth.se>
8454
8455         * scm/define-markup-commands.scm (normal-text): Added 2 new
8456         markup commands, \normal-text and \medium (the latter thanks to
8457         Bruce Fairchild). 
8458
8459 2005-08-08  Graham Percival  <gpermus@gmail.com>
8460
8461         * Documentation/user/programming-interface.itely: fix @{ @}.
8462
8463         * scm/define-markup-commands.scm: add linewidth info to
8464         \justify and \wordwrap, add "upright is the opposite of italic".
8465
8466         * Documentation/user/advanced-notation.itely: shaped->shape,
8467         add (cons (markup "foo")) type of example to text markup,
8468         reword multi-measure rests section.
8469
8470         * lily/note-heads-engraver.cc: changed Shaped->Shape in a
8471         comment.  No actual code was touched.
8472
8473         * Documentation/user/invoking.itely: add more info about
8474         \include.  Thanks, Bruce!
8475
8476         * THANKS: add Bruce Fairchild, alphabetise.
8477
8478         * Documentation/user/global.itely: document \score{\header{}}
8479         behavior.
8480
8481         * Documentation/user/basic-notation.itely: reword multi-measure
8482         rest discussion in Rests.
8483
8484 2005-08-08  Mats Bengtsson  <mabe@s3.kth.se>
8485
8486         * Documentation/user/programming-interface.itely (Markup
8487         construction in Scheme): Corrected example and tried to clarify
8488         the implicit \line in the table.
8489
8490 2005-08-07  Graham Percival  <gpermus@gmail.com>
8491
8492         * Documentation/user/instrument-notation.itely: moved
8493         some bagpipe info back into the bagpipe section.  Somehow
8494         it ended up in the "other vocal issues" section?!  :o_O
8495
8496 2005-08-07  Jan Nieuwenhuizen  <janneke@gnu.org>
8497
8498         * scm/framework-ps.scm (dir-join): Rename from path-join (joins
8499         directories, not paths).
8500
8501 2005-08-06  Jan Nieuwenhuizen  <janneke@gnu.org>
8502
8503         * scm/framework-ps.scm (munge-lily-font-name): Bugfix: Munge only
8504         plain emmentaler/aybabtu.  Backportme.
8505
8506         * lily/tuplet-bracket.cc (calc_position_and_height): Bugfix:
8507         missing dir correction.
8508
8509 2005-08-05  Graham Percival  <gperlist@shaw.ca>
8510
8511         * scm/define-markup-commands: fix reversed justify/wordwrap
8512         doc strings.
8513
8514 2005-08-05  Jürgen Reuter  <reuter@ipd.uka.de>
8515
8516         * lily/ligature-engaver.cc, lily/coherent-ligature-engaver.cc,
8517         lily/gregorian-ligature-engaver.cc,
8518         lily/include/ligature-engraver.hh,
8519         lily/include/coherent-ligature-engraver.hh,
8520         lily/include/gregorian-ligature-engraver.hh: make these classes
8521         truely abstract.  This should fix some internal oddities such as
8522         duplicate as well as dead translator/property declarations, and
8523         also some dead code.
8524
8525         * lily/ligature-bracket-engraver.cc, lily/ligature-engraver.cc:
8526         bugfix: avoid message "junking empty ligature" on ligature
8527         brackets by collecting dummy grobs.
8528
8529 2005-08-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8530
8531         * lily/tuplet-bracket.cc (print): default right overshoot to 0.0
8532
8533         * input/proportional.ly (staffKind): bugfix.
8534         (staffKind): updates by Trevor Baca.
8535
8536         * scm/define-grobs.scm (all-grob-descriptions): remove arrows as
8537         default layout. 
8538
8539         * lily/tuplet-bracket.cc (print): check whether edge-text is a
8540         pair.
8541
8542         * lily/beam.cc (rest_collision_callback): call position_beam() if
8543         necessary.
8544
8545         * VERSION: release 2.7.4
8546
8547         * input/regression/spacing-uniform-stretching.ly: new file.
8548
8549         * lily/spacing-loose-columns.cc (set_loose_columns): use robust_relative_extent().
8550
8551         * Documentation/topdocs/NEWS.tely (Top): add Nicolas as
8552         contributor.
8553
8554         * lily/include/ly-module.hh: define MODULE_GC_KLUDGE globally.
8555
8556         * input/proportional.ly: new file.
8557
8558         * lily/tuplet-bracket.cc (after_line_breaking): don't suicide if
8559         columns is empty
8560
8561         * lily/tuplet-engraver.cc (finalize): new function. Reset right
8562         bounds to currentCommandColumn for the last step.
8563         (start_translation_timestep): if tupletFullLength is set, set
8564         bound to Paper Column
8565
8566         * input/regression/tuplet-full-length.ly (indent): new file.
8567
8568         * lily/spacing-loose-columns.cc (set_loose_columns): space a whole
8569         clique of loose columns, eg. a set of grace notes in strict
8570         notespacing.
8571
8572         * input/regression/spacing-strict-spacing-grace.ly: new file.
8573
8574         * lily/key-signature-interface.cc: change property name to
8575         alteration-alist
8576
8577         * lily/key-engraver.cc (read_event): read keyAlterationOrder, not
8578         keyAccidentalOrder
8579
8580         * python/convertrules.py (conv): keyAccidentalOrder ->
8581         keyAlterationOrder
8582
8583         * lily/key-engraver.cc (create_key): always print a cancellation
8584         for going to C-major/A-minor, regardless of printKeyCancellation.
8585         (create_key): remove typecheck for visibility. This fixes key
8586         signature not being printed.
8587
8588         * lily/spacing-determine-loose-columns.cc: new file.
8589
8590         * input/regression/spacing-strict-notespacing.ly: new file.
8591
8592         * lily/spacing-spanner.cc (generate_springs): rename from
8593         do_measure. 
8594         (generate_pair_spacing): new function.
8595         (init, generate_pair_spacing): set between-cols for floating
8596         nonmusical columns.
8597
8598         * lily/spaceable-grob.cc (get_spring): new function. 
8599
8600         * lily/tuplet-bracket.cc (print): on the left, the overshoot is
8601         relative to the right edge of the prefatory matter.
8602
8603         * lily/beam.cc (print): read break-overshoot to determine where to
8604         stop/start broken beams.
8605
8606         * input/regression/spanner-break-overshoot.ly: new file.
8607
8608 2005-08-04  Graham Percival  <gperlist@shaw.ca>
8609
8610         * ly/bagpipe.ly: updated.
8611
8612         * Documentat/user/instrument.itely: un-comment out bagpipe example.
8613
8614 2005-08-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8615
8616         * lily/dynamic-engraver.cc (acknowledge_slur): add slur to
8617         support: now (de)crescs avoid slurs as well.
8618
8619         * Documentation/user/instrument-notation.itely (Bagpipe example):
8620         comment out non-functioning bagpipe example.
8621         (Bagpipe definitions): idem.
8622
8623         * Documentation/topdocs/NEWS.tely (Top): add uniform-stretching example.
8624         (Top): add proportionalNotationDuration example.
8625
8626         * input/regression/spacing-proportional.ly: new file.
8627
8628         * lily/tuplet-bracket.cc (parallel_beam): broken bracket never is
8629         synched to a beam.
8630
8631         * lily/beam.cc (shift_region_to_valid): divide by zero fix. This
8632         fixes beams with a single stem (eg. beams across linebreaks.)
8633
8634         * lily/parser.yy (simple_string): allow \new STRING_IDENTIFIER.
8635
8636         * flower/rational.cc (operator +): prevent overflow. This fixes
8637         heavily nested tuplets.
8638
8639         * lily/auto-beam-engraver.cc (derived_mark): new method. Yes. We
8640         have to protect even those unlikely to be corrupted data members.  
8641
8642 2005-08-04  Graham Percival  <gperlist@shaw.ca>
8643
8644         * ly/bagpipe.ly: new file.
8645
8646         * THANKS: added Sven Axelsson.
8647
8648 2005-08-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8649
8650         * lily/spacing-engraver.cc (stop_translation_timestep): directly
8651         copy proportionalNotationDuration into currentMusicalColumn if
8652         set.
8653
8654         * lily/spacing-spanner.cc (musical_column_spacing): if
8655         uniform-stretching set, fixed space is 0.0
8656
8657         * input/regression/spacing-multi-tuplet.ly: show
8658         uniform-stretching property.
8659
8660         * lily/spacing-spanner.cc (effective_shortest_duration): new function.
8661
8662         * lily/include/spacing-spanner.hh (class Spacing_spanner): new file.
8663         (struct Spacing_options): new struct.
8664
8665         * lily/spacing-basic.cc: new file.
8666
8667         * lily/spacing-spanner.cc (note_spacing): remove outdated code:
8668         delta_t doesn't have to be smaller than shortest_playing_len
8669
8670 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8671
8672         * input/regression/markup-arrows.ly:  new file.
8673
8674         * lily/tuplet-bracket.cc: document new behavior.
8675
8676         * input/regression/tuplet-broken.ly: new file. Demonstrate tuplets
8677         with line breaks.
8678
8679         * scm/define-markup-commands.scm (arrow-head): arrow-head markup command.
8680
8681         * scm/define-grobs.scm (all-grob-descriptions): set arrows as
8682         default 
8683
8684         * lily/tuplet-bracket.cc: add edge-text property.
8685         add break-overshoot.
8686         (print): read break-overshoot.
8687         (print): read edge-text, add stencils.
8688
8689         * mf/feta-arrow.mf: new file.
8690
8691         * mf/feta-generic.mf: add feta-arrow.
8692
8693 2005-08-03  Mats Bengtsson  <mabe@s3.kth.se>
8694
8695         * Documentation/user/lilypond-book.itely (An example of a
8696         musicological document): Added flag -o to dvips for people who use
8697         the default setting in teTeX where output is sent to the printer. 
8698
8699         * Documentation/user/global.itely (Vertical spacing): Added
8700         reference to the Axis_group_engraver which documents the *Extent
8701         properties.
8702
8703 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8704
8705         * Documentation/user/basic-notation.itely (Tuplets): add note
8706         about nested tuplets. Remove BUG. 
8707
8708         * input/regression/tuplet-nest.ly: update: remove manual hack. 
8709
8710         * lily/tuplet-bracket.cc (print): use robust_scm2drul
8711         (print): manually call print() for subtuplets.
8712         (calc_position_and_height): add subtuplets to the
8713         support. Vertically shift outer tuplet 
8714
8715         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): set
8716         remove-first for Lyrics, ChordNames and FiguredBass
8717
8718         * scm/define-grob-properties.scm (all-internal-grob-properties):
8719         use ly:grob-array? iso. grob-list?
8720         (all-internal-grob-properties): add tuplets grob-array.
8721
8722         * lily/tuplet-bracket.cc (add_tuplet_bracket):
8723         new function
8724
8725 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8726
8727         * input/test/time-signature-staff.ly: new file.
8728
8729         * ly/declarations-init.ly (center): escape to Scheme. Fixes
8730         spurious #<Music FingerEvent> errors. Backportme.
8731
8732 2005-08-03  Mats Bengtsson  <mabe@s3.kth.se>
8733
8734         * Documentation/user/programming-interface.itely (Markup
8735         construction in Scheme): Corrected markup syntax in the
8736         translation table.
8737
8738 2005-08-03  Graham Percival  <gperlist@shaw.ca>
8739
8740         * Documentation/user/instrument-notation.itely: small update
8741         to bagpipe notation docs; thanks Sven!
8742
8743         * Documentation/user/basic-notation.itely: add link about trills.
8744
8745 2005-08-02  Graham Percival  <gperlist@shaw.ca>
8746
8747         * Documentation/user/music-glossary: remove accidentally committed
8748         fink patch.
8749
8750 2005-08-02  Yoshinobu Ishizaki  <isizaki@mte.biglobe.ne.jp>
8751
8752         * lily/lily-parser.cc (get_header): new function. Enable multiple
8753         \header definitions.
8754
8755         * lily/parser.yy (lilypond_header_body): use get_header.
8756
8757         * ly/init.ly:
8758         * scm/lily-library.scm (print-score-with-defaults): renamed
8759         $globalheader to $defaultheader
8760             
8761         * Documentation/user/global.itely (Creating titles): added short
8762         explanation that multiple headers are useable.
8763
8764
8765 2005-08-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8766
8767         * lily/module-scheme.cc (LY_DEFINE): new file. 
8768
8769         * Documentation/user/advanced-notation.itely (Font selection): add
8770         doco for make-pango-font-tree.
8771
8772 2005-07-31  Graham Percival  <gperlist@shaw.ca>
8773
8774         * Documentation/user/music-glossary: more languages
8775         for tenuto.
8776
8777         * Docuemntation/user/instrument-notation.itely: minor
8778         update for bagpipe example.
8779
8780 2005-07-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8781
8782         * input/regression/+.ly (TODO): add some text.
8783
8784 2005-07-28  Graham Percival  <gperlist@shaw.ca>
8785
8786         * Documentation/user/invoking.itely: \score begins with music.
8787
8788         * Documentation/user/ basic-notation.itely,
8789         instrument-notation.itely: minor changes.
8790
8791         * Documentation/user/music-glossary.itely: began tenuto entry.
8792
8793 2005-07-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8794
8795         * scm/output-socket.scm (bezier-sandwich): add bezier-sandwich
8796
8797         * mf/feta-bolletjes.mf: swap up and down for aiken heads.
8798
8799 2005-07-27  Graham Percival  <gperlist@shaw.ca>
8800
8801         * Documentation/user/examples.itely: remove bagpipe template.
8802
8803         * Documentation/user/instrument-notation.itely: add bagpipe
8804         section, maybe fix quotes in lyrics.  I hate text encoding.
8805         Clarify chord durations, more bagpipe stuff.
8806
8807 2005-07-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8808  
8809         * lily/accidental-engraver.cc: formatting fixes.
8810
8811         * lily/spacing-spanner.cc (prune_loose_columns): right-items is a
8812         grob-array.
8813
8814         * lily/arpeggio.cc (print): suicide arpeggio for single notehead.
8815
8816         * lily/note-column.cc (arpeggio): new function.
8817
8818         * lily/note-spacing.cc (get_spacing): also take arpeggio into
8819         account for spacing.
8820
8821 2005-07-25  Jan Nieuwenhuizen  <janneke@gnu.org>
8822
8823         * lily/main.cc (sane_setenv)[!ARGV0_RELOCATION]: Also define.
8824         (setup_guile_env): Use it instead of nonstandard setenv.  Fixes
8825         mingw build.
8826         
8827 2005-07-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8828
8829         * scm/lily.scm (lilypond-all): clear anonymous modules after
8830         processing files.
8831
8832 2005-07-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8833
8834         * flower/include/guile-compatibility.hh (SCM_I_CONSP): add
8835         SCM_I_CONSP
8836
8837         * VERSION: 2.7.3 released
8838
8839         * Documentation/user/invoking.itely (Invoking lilypond): add
8840         LILYPOND_GC_YIELD documentation.
8841
8842         * lily/*: cleanups: use scm_from_int iso. scm_int2num. Idem for
8843         scm_from_real / scm_make_real.
8844
8845         * lily/main.cc (setup_guile_env): new function. Set GC min_yields
8846         higher. This increases memory footprint, but provides overall
8847         speedup of 15 to 20%. 
8848
8849         * lily/include/translator.hh (class Translator): remove
8850         PRECOMPUTED_VIRTUAL everywhere.
8851
8852         * lily/include/lily-guile.hh: inline scm_c[ad]r, scm_is_pair.
8853
8854         * lily/context.cc (now_mom): non-recursive now_mom() 
8855
8856         * lily/include/profile.hh: new file.
8857
8858         * lily/profile.cc: new file.
8859
8860         * lily/grob.cc (Grob::Grob): look properties up directly.
8861
8862         * lily/open-type-font.cc (get_indexed_char): cache index -> bbox
8863         lookups.
8864
8865         * lily/include/box.hh (class Box): smob Box type.
8866
8867         * lily/smobs.cc (protect_smob): O(1) GC (un)protection.
8868
8869         * lily/include/smobs.hh (DECLARE_BASE_SMOBS): add methods
8870         protect() and unprotect(). Use throughout.
8871
8872 2005-07-24  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8873
8874         * Documentation/topdocs/NEWS.tely: new item for \displayLilyMusic
8875
8876         * scm/define-music-display-methods.scm (markup->lily-string):
8877         markup elements can also be strings (without simple-markup
8878         appended)
8879
8880 2005-07-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8881
8882         * lily/context.cc (where_defined): also assign value in
8883         where_defined().
8884
8885         * lily/bezier.cc (get_other_coordinate): use curve_coordinate
8886         (curve_coordinate): new function
8887
8888         * lily/simple-spacer.cc (add_columns): only add rods between
8889         column i and begin/end if keep-inside-line is set (this repleces
8890         allow-outside-line as default)
8891
8892 2005-07-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8893
8894         * lily/tuplet-engraver.cc (start_translation_timestep): only read
8895         tupletSpannerDuration if applicable.
8896
8897         * lily/font-size-engraver.cc (process_music): read fontSize only
8898         once per timestep.
8899
8900         * lily/engraver*cc: use throughout.
8901         
8902         * lily/include/translator.icc (ADD_ACKNOWLEDGER): new macro.
8903
8904         * lily/translator.cc (add_acknowledger): new file. Directly jump
8905         into an Engraver::acknowledge_xxx () method based on a grobs
8906         interface-list.
8907
8908         * lily/include/translator-dispatch-list.hh (class
8909         Engraver_dispatch_list): new struct, new file.
8910
8911         * scm/define-context-properties.scm
8912         (all-internal-translation-properties): remove acceptHashTable,
8913         acknowledgeHashTable
8914
8915         * lily/translator-group.cc (mark_smob): idem for acceptHashTable.
8916
8917         * lily/engraver-group-engraver.cc (Engraver_group_engraver):
8918         change acknowledgeHashTable to C++ member. 
8919
8920         * lily/rest-collision.cc (do_shift): use extract_grob_set().
8921
8922 2005-07-22  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8923
8924         * scm/display-lily.scm: new file. Define a `display-lily-music'
8925         function, that displays the music expression given as an argument,
8926         using LilyPond notation.
8927
8928         * scm/define-music-display-methods.scm: new file. Implementation
8929         of display methods for each music type.
8930
8931         * ly/music-functions-init.ly (displayLilyMusic): new function for
8932         displaying music with LilyPond notation.
8933
8934         * input/regression/display-lily-tests.ly: new regression test file
8935         for `display-lily-music'.
8936
8937         * scm/markup.scm: remove obsolete debugging code (for printing
8938         markups with LilyPond notation).
8939
8940         * scm/define-music-types.scm (music-name-to-property-table):
8941         * scm/clef.scm (supported-clefs): export, in order to be accessible
8942         from the (scm display-lily) module.
8943
8944 2005-07-22  Jan Nieuwenhuizen  <janneke@gnu.org>
8945
8946         * Documentation/topdocs/NEWS.tely (Top): Typo.
8947
8948 2005-07-22  Heikki Junes  <hjunes@cc.hut.fi>
8949
8950         * Documentation/index.html.in, Documentation/texinfo.css,
8951           stepmake/bin/text2html.py, buildscripts/mutopia-index.py,
8952           Documentation/bibliography/index.html.in,
8953           Documentation/bibliography/html-long.bst: revert css-width patch,
8954           it does not work with IE6.
8955
8956 2005-07-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8957
8958         * Documentation/texinfo.css: revert 760px hack. 
8959
8960         * VERSION: release 2.7.2
8961
8962         * Documentation/topdocs/NEWS.tely (Top): mention barNumberCheck
8963
8964         * Documentation/user/basic-notation.itely (Barnumber check): add
8965         section.
8966
8967         * scm/music-functions.scm (skip-to-last): new function. Show only
8968         last showLastLength part of the \score.
8969
8970         * lily/moment-scheme.cc (LY_DEFINE): new function ly:moment-sub
8971
8972         * python/convertrules.py (conv): add ly:x-moment rule
8973
8974         * lily/moment-scheme.cc (LY_DEFINE): rename ly:X-moment  -> ly:moment-X
8975
8976         * Documentation/topdocs/NEWS.tely (Top): add new feature.
8977
8978         * Documentation/user/instrument-notation.itely (Flexibility in
8979         alignment): options in subsections.
8980
8981         * lily/lyric-engraver.cc (process_music): don't typeset text for _
8982         syllable text. Instead, assume that the previous lyric text is a
8983         melismated text.
8984
8985         * Documentation/index.html.in: revert 800x600 change.
8986
8987 2005-07-19  Jan Nieuwenhuizen  <janneke@gnu.org>
8988
8989         * lily/main.cc (main): Remove invalid handle kludge.
8990
8991         * scm/lily.scm (running-from-gui?): WINDOWS: check -dgui.
8992         (lambda): add gui define.
8993
8994 2005-07-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8995
8996         * Documentation/topdocs/NEWS.tely (Top): add note about Musica ficta.
8997
8998         * Documentation/user/instrument-notation.itely (Musica ficta
8999         accidentals): add section Musica ficta accidentals
9000
9001         * lily/accidental-engraver.cc (make_suggested_accidental): new
9002         function.
9003         (make_standard_accidental): move into new function.
9004         (create_accidental): new function.
9005
9006         * scm/define-grobs.scm (all-grob-descriptions): new Grob
9007         AccidentalSuggestion
9008
9009         * lily/output-def-scheme.cc (LY_DEFINE): take default  argument.
9010
9011         * lily/output-def.cc (lookup_variable): return SCM_UNDEFINED if
9012         undefined.
9013
9014         * Documentation/user/global.itely (Page formatting): document
9015         horizontalshift.
9016
9017         * scm/page-layout.scm (default-page-music-height):
9018         horizontalshift: new variable, shift all systems by
9019         horizontalshift to the right, to make space for instrument names.
9020
9021         * scm/paper.scm (set-paper-dimension-variables): add horizontalshift
9022
9023         * lily/input-scheme.cc (LY_DEFINE): take format commands.
9024
9025 2005-07-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9026
9027         * lily/note-column.cc (dir): idem.
9028
9029         * lily/spacing-spanner.cc (Module): idem.
9030
9031         * lily/script-column.cc (before_line_breaking): use extract_grob_set()
9032
9033         * lily/include/paper-column.hh (class Paper_column): add
9034         non-static get_rank() member.
9035
9036         * VERSION: release 2.7.1
9037         
9038         * scm/framework-null.scm: new file, used for benchmarking.
9039
9040 2005-07-20  Heikki Junes  <hjunes@cc.hut.fi>
9041
9042         * Documentation/topdocs/INSTALL.texi, configure.in: fix
9043         version dependencies for fontforge and gs.
9044
9045         * Documentation/index.html.in, Documentation/texinfo.css,
9046         stepmake/bin/text2html.py, buildscripts/mutopia-index.py,
9047         Documentation/bibliography/index.html.in, 
9048         Documentation/bibliography/html-long.bst: optimize width of
9049         html for a 800x600 screen (width:760), increases printability
9050         when 'fit to page' is not set and readability in wide screens.
9051
9052         * stepmake/bin/add-html-footer.py: add missing </p>.
9053
9054 2005-07-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9055
9056         * scm/define-markup-commands.scm (beam): use polygon in beam
9057         command.
9058
9059         * lily/grob-pq-engraver.cc (stop_translation_timestep): save up
9060         all acknowledged grobs, and do potentially expensive merge and
9061         write in one go.
9062
9063         * buildscripts/mf-to-table.py (write_fontlist): enforce noBreak.
9064
9065         * configure.in (reloc_b): add --enable-static-gxx to statically
9066         link to libstdc++
9067
9068         * lily/GNUmakefile (static-gxx-libs): new target
9069         static-gxx-libs. Create symlink to libstdc++.a
9070
9071         * lily/new-lyric-combine-music-iterator.cc: rename to
9072         Lyric_combine_music_iterator
9073
9074         * lily/lyric-combine-music-iterator.cc
9075         (Old_lyric_combine_music_iterator): rename to
9076         Old_lyric_combine_music_iterator
9077
9078         * lily/*-engraver.cc (various): remove double use of
9079         PRECOMPUTED_VIRTUAL function: only use
9080         start_translation_timestep() and stop_translation_timestep(), not
9081         both.
9082
9083         * lily/break-substitution.cc (fast_substitute_grob_array): do
9084         fast_substitute_grob_array for all unordered grob_arrays.
9085         (substitute_grob): return Grob *. Saves packing/unpacking SCMs.
9086         (substitute_grob_array): optimize.
9087
9088         * lily/align-interface.cc (set_axis): set ordered_ for 'elements
9089
9090         * lily/include/grob-array.hh (class Grob_array): ordered_ member.
9091
9092         * lily/parser.yy: revert $globalheader patch.
9093         
9094         * lily/include/translator.icc
9095         (IMPLEMENT_FETCH_PRECOMPUTABLE_METHODS): directly jump into
9096         Translator methods, without _static helper.
9097  
9098         * lily/grob-smob.cc (derived_mark): rename from
9099         do_derived_mark(). Return void.
9100
9101         * scm/define-context-properties.scm
9102         (all-internal-translation-properties): remove tweakCount/tweakRank.
9103
9104         * scm/output-lib.scm (begin-of-line-invisible): use vectors for
9105         predefined break-visibilities.
9106
9107         * lily/item.cc (handle_prebroken_dependencies): use a vector of 3
9108         booleans for break-visibility.
9109
9110         * Documentation/topdocs/NEWS.tely (Top): add note about engravers.
9111
9112         * python/convertrules.py (conv): rule for Timing_translator. 
9113
9114         * lily/include/translator.icc: new file. 
9115
9116         * lily/paper-column-engraver.cc (process_music): new
9117         file. Separate Paper_column factory from Score_engraver.
9118
9119         * lily/vertically-spaced-context-engraver.cc: administer
9120         spaceable-staves property of System.
9121
9122         * lily/translator-group-ctors.cc: new file.
9123
9124         * lily/context-property.cc (make_grob_from_properties): construct
9125         the right Grob class programmatically, looking at the class entry
9126         for the meta property.
9127
9128         * lily/break-align-engraver.cc (stop_translation_timestep): call
9129         Break_align_interface::add_element() directly.
9130
9131         * lily/context.cc (measure_position): measure_position() is now a
9132         normal function.
9133
9134         * lily/include/translator.hh (class Translator): rename
9135         process_acknowledged_grobs() to process_acknowledged() and move to
9136         Translator.
9137
9138         * scm/define-grobs.scm (all-grob-descriptions): add a 'class meta
9139         field for each grob description.
9140
9141         * lily/include/translator-group.hh (class Translator_group):
9142         change to base class. Separate class from Translator. This gets
9143         rid of virtual inheritance for Engravers/Performers.
9144
9145         * lily/staff-performer.cc (class Staff_performer): derive
9146         Staff_performer from Performer, not Performer_group_performer 
9147
9148         * Lily/translator-group.cc (precomputed_recurse_over_translators):
9149         new function.
9150         (precompute_method_bindings): new function. Precompute lists of
9151         Translators, so we only call methods (process_music,
9152         start_translation_timestep, etc.) for Translators needing
9153         it. Also: dispose of pointer-to-member-function calls.
9154
9155         * lily/engraver-group-engraver.cc: remove engraver_each,
9156         recurse_down_engravers ()
9157
9158         * lily/note-head.cc (internal_print): only call
9159         glyph-name-procedure if style != default. 
9160
9161 2005-07-16  Graham Percival  <gperlist@shaw.ca>
9162
9163         * ly/titling-init.ly: add printallheaders option.
9164
9165         * Documentation/user/global.itely: document printallheaders.
9166
9167 2005-07-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9168
9169         * lily/system.cc (do_derived_mark): don't mark from object_alist_
9170         anymore, but do it centrally.  
9171
9172         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
9173         hammer hack.
9174
9175         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-object
9176
9177         * scm/output-lib.scm: remove hammer-print-function.
9178
9179         * lily/include/pointer-group-interface.hh (extract_grob_set): new
9180         macro. Declare a Link_array<Grob> and fill it from a grob.
9181         (extract_item_set): idem for item.
9182
9183         * lily/break-substitution.cc: add header.
9184         (fast_substitute_grob_array): rewrite for Grob_arrays.
9185         (substitute_grob_array): idem.
9186
9187         * lily/group-interface.cc (add_thing): remove file.
9188
9189         * flower/include/parray.hh (class Link_array): slice() is const.
9190
9191         * lily/include/grob-array.hh: new file.
9192
9193         * lily/grob-array.cc (spanner): new file.
9194
9195         * lily/beam-quanting.cc (fill): read details property from beam.
9196
9197         * lily/beam.cc: support details property.
9198
9199         * total speedups below: approx 10%.
9200
9201         * lily/include/beam.hh: new struct, softcode beam quanting parameters
9202
9203         * lily/include/grob.hh (class Grob): add interfaces_ member.
9204
9205         * lily/bezier.cc (init_polynomial_cache): new function: cache
9206         binom(3,j) t^j (1-t)^{3-j}
9207         (curve_point): opps, actually use the cache for t^j , (1-t)^j! 
9208
9209         * lily/*.cc: substitution throughout.
9210
9211         * lily/grob-property.cc (internal_get_object): new routine.
9212         (internal_set_object): idem. Store grob refrences in separate
9213         alist. This saves processing time, since properties aren't
9214         break-substituted, and the per grob namespace is smaller, both for
9215         grobs and non-grob properties.
9216
9217         * scm/define-grob-properties.scm (all-internal-grob-properties):
9218         remove center-element.
9219
9220         * lily/grob.cc: remove tweak-count, tweak-rank.
9221
9222 2005-07-15  Graham Percival  <gperlist@shaw.ca>
9223
9224         * Documentation/user/lilypond-book.itely: fixes example.
9225
9226 2005-07-15  Nicolas Sceaux  <nicolas.sceaux@free.fr>
9227
9228         * Documentation/user/global.itely (Creating titles):    
9229         * Documentation/user/examples.itely (All headers): change the
9230         place of \header in \score blocks (after music block) to make
9231         examples compile (cf. changes on parser.yy on 2005-07-10)
9232
9233 2005-07-13  Graham Percival  <gperlist@shaw.ca>
9234
9235         * python/convertrules.py: add exc -> ecc rule.
9236
9237         * scripts/convert-ly.py: add location of convertrules.py
9238         in a comment.
9239
9240         * Documentation/user/changing-defaults.itely: fix language.
9241
9242 2005-07-12  Jan Nieuwenhuizen  <janneke@gnu.org>
9243
9244         * lily/lily-parser-scheme.cc (LY_DEFINE): Guile 1.6 fix.
9245
9246 2005-07-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9247
9248         * scm/output-socket.scm (grob-bbox): don't use inf? 
9249
9250         * flower/include/rational.hh: add operator bool() 
9251
9252         * scm/define-music-types.scm (music-descriptions): remove
9253         internal-class-name properties.
9254
9255         * lily/include/event.hh: remove file.
9256
9257         * lily/include/music-constructor.hh: remove file.
9258
9259         * lily/parser.yy (Lily_lexer): check EVENT_IDENTIFIER using 'event
9260         in 'types property.
9261
9262         * lily/music.cc (duration_length_callback): new function.
9263
9264         * lily/event.cc: remove file.
9265
9266         * lily/music-constructor.cc: remove file.
9267
9268         * lily/music-scheme.cc (LY_DEFINE): rename to ly:make-music
9269
9270         * lily/context.cc (get_grob_key): nop if use_object_keys not set.
9271         (get_context_key): idem.
9272
9273         * scm/lily.scm (lambda): new option object-keys (default to #f)
9274
9275         * scm/output-svg.scm (utf-8-string): rename  from utf8-string.
9276
9277         * scm/output-gnome.scm: remove beam routine.
9278
9279         * scm/output-ps.scm (scm): idem.
9280
9281         * scm/output-svg.scm: remove beam.
9282
9283         * ps/music-drawing-routines.ps: remove draw_beam.
9284
9285         * lily/lookup.cc (beam): use round_filled_polygon() for beam.
9286
9287         * flower/include/guile-compatibility.hh (scm_from_locale_string):
9288         add scm_from_locale_string compatibility glue. 
9289
9290 2005-07-13  Yoshinobu Ishizaki  <isizaki@mte.biglobe.ne.jp>
9291
9292         * scripts/lilypond-book.py: Prevent occuring error when
9293         'lilypond-book --output=foo/ somefile.ly' is executed multiple
9294         times and target file shoud be overwritten.  (Error message said
9295         'input file and output file is same'.)
9296
9297 2005-07-13  Graham Percival  <gperlist@shaw.ca>
9298
9299         * input/regression/slur-extreme.ly,
9300         input/regression/slur-scoring.ly, lily/slur-configuration.cc,
9301         lily/slur.cc, mf/feta-din-code.mf, mf/feta-timesig.mf,
9302         mf/parmesan-heads.mf, scm/define-grob-properties.scm: Change
9303         "excentricity" to "eccentricity".
9304
9305         * Documentation/user/converters.itely: fix URL for Noteedit and
9306         Rosegarden.
9307
9308         * THANKS: added Yoshinobu Ishizaki.
9309
9310 2005-07-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9311
9312         * scm/define-markup-commands.scm (justify-field): add. 
9313
9314         * scm/define-grobs.scm (all-grob-descriptions): decrease font size.
9315
9316 2005-07-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9317
9318         * lily/lookup.cc (filled_box): express filled_box with
9319         round_filled_box
9320
9321         * scm/midi.scm (paper-book-write-midis): new function. Write all
9322         performances in numbered MIDI files.
9323
9324         * lily/performance-scheme.cc (LY_DEFINE): new file.
9325         (LY_DEFINE): new function ly:performance-write.
9326
9327         * lily/lily-parser-scheme.cc (LY_DEFINE): ly:parser-output-name:
9328         new function.
9329         (LY_DEFINE): change name ly:parser-define -> ly:parser-define!
9330
9331         * scm/framework-*.scm: use port arguments throughout.
9332
9333         * lily/include/lily-guile.hh: rename ly_c_X_p -> ly_is_X
9334
9335         * lily/paper-outputter.cc (Paper_outputter): take port argument.
9336
9337         * lily/paper-outputter-scheme.cc (LY_DEFINE): take port argument.
9338
9339         * scm/framework-texstr.scm (output-framework): 
9340
9341         * input/regression/repeat-fold.ly (texidoc): remove TeX strings.
9342
9343         * scm/output-lib.scm (tablature-stem-attachment-function):
9344         tablature stem attachment fix. 
9345
9346 2005-07-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9347
9348         * lily/bezier.cc: hardcode binomial coefficients of order 3.
9349
9350         * lily/include/music-wrapper.hh: remove Music_wrapper as Music subtype.
9351
9352         * scm/define-music-types.scm (music-descriptions): don't use
9353         Music_wrapper type.
9354
9355         * lily/paper-column.cc (print): print moment too.
9356
9357         * scripts/mup2ly.py (cp_to_dir): remove 1.5.2 compat glue.  
9358         remove compatibility cruft.
9359
9360         * lily/parser.yy (score_body): \score can only begin with Music. 
9361
9362         * lily/score-scheme.cc (LY_DEFINE): rename scorify to
9363         make-score. Take music argument only. Move parser interaction to
9364         Scheme.
9365
9366         * scm/lily-library.scm (scorify-music): new function.
9367
9368         * python/lilylib.py (datadir): remove 2.1 compat kludge.
9369         (datadir): remove resource import.
9370         (print_environment): remove get_bbox()
9371         (cp_to_dir): remove pre 1.5.2 compat glue.
9372
9373 2005-07-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9374
9375         * lily/include/simple-spacer.hh (Module): idem.
9376
9377         * lily/include/spring.hh (struct Spring): store inverse
9378         strength. This prevents division by zero.
9379
9380         * VERSION: release 2.7.0
9381         
9382         * lily/include/music.hh (class Music): remove Music::duration_log()
9383
9384         * lily/stem-engraver.cc (make_stem): take duration log from event.
9385
9386         * lily/chord-tremolo-engraver.cc: don't ack note-head-interface.
9387
9388 2005-07-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9389
9390         * scm/lily.scm (ly:load): load autochange.scm
9391
9392         * Documentation/user/tutorial.itely (Running LilyPond for the
9393         first time): remove reference to DVI/TeX
9394
9395         * scm/define-markup-commands.scm (text): add \text markup command.
9396
9397         * configure.in (reloc_b): bump requirement to Python 2.2.
9398
9399         * lily/include/dots.hh (class Dots): make has_interface() static.
9400
9401         * python/convertrules.py (conv): add rule for ly:grob-default-font
9402
9403         * scm/define-grobs.scm (all-grob-descriptions): reorganize in
9404         alphabetical order.
9405
9406         * input/regression/trill-spanner-pitched.ly: new file.
9407
9408         * lily/font-interface-scheme.cc (LY_DEFINE): function
9409         ly:grob-default-font (changed from get-default-font).
9410
9411         * lily/axis-group-interface-scheme.cc (LY_DEFINE): new file.
9412
9413         * lily/note-head.cc (internal_print): if style is not a symbol,
9414         set style to 'default. 
9415         (internal_print): no style suffix if glyph-name-procedure not
9416         set. Default to quarter head.
9417
9418         * scm/define-grobs.scm (Module): new grob TrillPitchHead.
9419
9420         * scm/define-music-properties.scm (all-music-properties): add trill-pitch.
9421
9422         * ly/music-functions-init.ly: \pitchedTrill
9423
9424         * lily/pitched-trill-engraver.cc (acknowledge_grob): new file.
9425
9426         * ly/Welcome_to_LilyPond.ly: update to 2.6.0
9427
9428         * lily/trill-spanner-engraver.cc (finalize): rename req -> event
9429
9430         * scm/define-markup-commands.scm (pad-markup): pad-markup command.
9431
9432         * po/fr.po: update
9433
9434         * po/de.po: update.
9435
9436 2005-07-06  Graham Percival  <gperlist@shaw.ca>
9437
9438         * Documentation/user/changing-defaults.itely: add link
9439         to grob-iterface.
9440
9441         * Documentation/user/advanced-notation.itely: add material
9442         to Setting automatic beam behaviour.  Thanks, Joe!
9443
9444         * Documentation/user/lilypond.itely: change encoding to utf-8.
9445
9446 2005-07-01  Mats Bengtsson  <mabe@s3.kth.se>
9447
9448         * Documentation/user/advanced-notation.itely (Setting automatic
9449         beam behavior): Correct the documentation of
9450         revert-auto-beam-setting (backportme)
9451
9452 2005-07-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9453
9454         * lily/ly-module.cc (ly_make_anonymous_module): define
9455         %module-public-interface of module. 
9456
9457         * lily/lily-parser.cc (print_smob): allow printing of parser smob
9458         without lexer.
9459
9460 2005-07-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9461
9462         * input/regression/fret-diagrams.ly: stretch example.
9463
9464 2005-06-30  Jan Nieuwenhuizen  <janneke@gnu.org>
9465
9466         * cygwin/GNUmakefile ($(outdir)/%.sh): Bugfix: use TAB (Bertalan
9467         Fodor).
9468
9469 2005-06-30  Graham Percival  <gperlist@shaw.ca>
9470
9471         * Documentation/topdocs/AUTHORS.texi: update personal web address.
9472
9473         * Documentation/user/examples.itely, lilypond-book.itely:
9474         change \RequirePackage to \usepackage.
9475
9476         * Documentation/user/global.itely: document copyright and tagline.
9477
9478 2005-06-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9479
9480         * Documentation/user/basic-notation.itely (Transpose): remove link
9481         to nonexistent UntransposableMusic.
9482
9483         * scm/output-svg.scm: remove old definitions.
9484
9485         * scripts/lilypond-book.py (do_file): search for kpsewhich before
9486         invoking.
9487
9488         * python/lilylib.py (search_exe_path): new function.
9489
9490 2005-06-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9491
9492         * python/lilylib.py (mkdir_p): remove setup_environment()
9493         (backportme)
9494
9495         * buildscripts/mutopia-index.py (headertext): trim text.
9496
9497         * Documentation/topdocs/NEWS.tely (Top): refresh.
9498
9499         * scm/define-markup-commands.scm (wordwrap-string): new function:
9500         split string in paras and words.
9501         (wordwrap-markups): new function.
9502         (wordwrap-stencils): new function. 
9503         (justify): use it.
9504         (wordwrap): use it.
9505         (wordwrap-string): use it
9506         (justify-string): use it.
9507
9508         * scm/lily-library.scm (regexp-split): new function.
9509
9510         * scm/define-markup-commands.scm: remove encoded-simple. 
9511         remove font-markup.
9512         (fontsize): remove old version  of fontsize.
9513         (wordwrap): new markup function. Wrap into paragraphs.
9514
9515         * VERSION: Branch lilypond_2_6
9516         (MINOR_VERSION): go to 2.7.0
9517
9518 2005-06-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9519
9520         * po/zh_TW.po: update from translation project.
9521
9522 2005-06-28  Graham Percival  <gperlist@shaw.ca>
9523
9524         * scm/midi.scm: compile fix.
9525
9526 2005-06-28  Mats Bengtsson  <mabe@s3.kth.se>
9527
9528         * scripts/lilypond-book.py : Fix embarrassing bug in my previous
9529         patch. Now, the tempfile module is loaded too, not only used.
9530
9531 2005-06-28  Stephen Charles McCarthy  <stecmccarthy@hotpop.com>
9532
9533         * scm/midi.scm: changed midi volumes in absolute-volume-alist from
9534         0.05 - 1.00 to 0.25 - 1.00
9535
9536         * scm/midi.scm: moved the default-instrument-equalizer procedure
9537         to just under the insturment-equalizer-alist it takes as an
9538         argument.
9539
9540 2005-06-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9541
9542         * Documentation/user/advanced-notation.itely (Font selection):
9543         remove CMR note.
9544
9545         * scm/framework-ps.scm (write-preamble): ly:warning iso. ly:warn 
9546
9547 2005-06-28  Jan Nieuwenhuizen  <janneke@gnu.org>
9548
9549         * THANKS: Add UTF-8 marker.
9550
9551         * Documentation/user/point-and-click.itely (http): Update: use
9552         lilypond-invoke-editor.  Fix: instruct to use user.js.
9553
9554 2005-06-27  Graham Percival  <gperlist@shaw.ca>
9555
9556         * ly/titling-init.ly: implements printpagenumber, increases
9557         space between dedication and title (to avoid collisions with
9558         "g" and "q" in dedication), and nicer logic about copyright
9559         and instrument fields being printed on the first page.
9560         Thanks Vincent!
9561
9562         * Documentation/user/global.itely: document printpagenumber.
9563
9564 2005-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
9565
9566         * Documentation/topdocs/NEWS.tely: Update to 2.6.
9567
9568 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9569
9570         * THANKS: update to 2.6
9571
9572         * VERSION: 2.6.0 released.
9573
9574 2005-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
9575
9576         * cygwin/GNUmakefile (OUT_POSTREMOVES): Reinclude install script
9577         rule, errorneously removed probably because of misleading comment.
9578
9579 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9580
9581         * python/lilylib.py (datadir): py2exe comments.
9582
9583         * Documentation/topdocs/INSTALL.texi (Top): remove EC fonts requirement.
9584
9585         * configure.in (reloc_b): make fontconfig REQUIRED.
9586
9587 2005-06-27  Heikki Junes <hjunes@cc.hut.fi>
9588
9589         * po/fi.po: add latest translations.
9590
9591 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9592
9593         * ChangeLog: recode utf-8
9594
9595         * Documentation/pictures/lilypond.xpm (Module): edited photo as
9596         logo.
9597
9598         * Documentation/user/examples.itely (Module): 2.4.0 -> 2.6.0
9599
9600         * input/*.ly (Module): 2.4 -> 2.6 grand convert-ly s/r. 
9601
9602         * python/convertrules.py (do_conversion): don't print program_name
9603         from within a module
9604
9605         * configure.in (reloc_b): bump fontforge requirement to 20050624.
9606
9607         * python/convertrules.py (conv): add 2.6.0 dummy rule.
9608
9609 2005-06-23  Graham Percival  <gperlist@shaw.ca>
9610
9611         * Documentation/user/lilypond-book.itely,
9612         Documentation/user/examples.itely: add \RequirePackage{graphics}.
9613
9614         * ly/titling.ly: checks printfirstpagenumber, adds meter, and
9615         fixes baseline-skip.  Thanks Vincent!
9616
9617         * Documentation/user/advanced-notation.itely, global.itely:
9618         moved "Selecting font sizes" to global, since it deals with
9619         notation font size, not text fonts.
9620
9621 2005-06-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9622
9623         * buildscripts/gen-emmentaler-scripts.py (notice): add GPL notice
9624         to fonts.
9625
9626 2005-06-23  Mats Bengtsson  <mabe@s3.kth.se>
9627
9628         * scripts/lilypond-book.py (LATEX_DOCUMENT): More or less ugly
9629         workaround since /dev/stdin doesn't work on Cygwin. Using a
9630         temporary file in the current directory since latex doesn't
9631         understand the path name to the default TMP in Cygwin (at least on
9632         win XP).
9633         
9634         * Documentation/user/global.itely (Creating titles): Correct
9635         misprint in example. Thanks to Rob Vlasaty.
9636
9637 2005-06-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9638
9639         * VERSION (PATCH_LEVEL): release 2.5.32
9640
9641         * lily/lily-parser-scheme.cc (LY_DEFINE): don't set 'parser
9642         variable in lily module
9643
9644         * scm/framework-ps.scm (output-classic-framework): error message
9645         regarding the classic framework.
9646
9647         * Documentation/user/henle-flat-gray.png (Module): new file.
9648
9649         * Documentation/user/baer-flat-gray.png (Module): new file.
9650
9651         * scm/output-lib.scm (fret-number-tablature-format): vcenter and
9652         whiteout for markups.
9653
9654         * buildscripts/substitute-encoding.py (note_glyph): include _ in
9655         regex too. This fixes change clef appearance in PDF. 
9656
9657         * ttftool/include/*: remove.
9658
9659         * configure.in (reloc_b): remove TTFTOOL_ENDIAN
9660
9661         * config.make.in (WINDRES): remove TTFTOOL_ENDIAN.
9662
9663         * lily/GNUmakefile (MODULE_INCLUDES): remove ttftool
9664
9665         * ttftool/*: remove ttftool subdirectory.
9666
9667         * GNUmakefile.in (SUBDIRS): remove ttftool subdirectory.
9668
9669         * lily/ttf.cc (print_header): new file. Convert to type42, using
9670         FreeType to parse the TTF. 
9671
9672         * ttftool/parse.c (readPostTable): ugh. Kludge: nglyphs in maxp
9673         and post table may differ. Pass around post_nglyphs as well.
9674
9675 2005-06-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9676
9677         * ly/music-functions-init.ly (musicMap): new music function
9678         musicMap. 
9679         
9680 2005-06-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9681
9682         * make/mutopia-rules.make: anti-alias-factor = 2
9683
9684         * scm/ps-to-png.scm (make-ps-images): cleanup multipage vs. single
9685         page switch.
9686
9687         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): set
9688         anti-alias-factor for lilypond-book runs.
9689
9690         * scm/ps-to-png.scm (scale-down-image): new function.
9691         (my-system): new function.
9692         (make-ps-images): blow up GS resolution by anti-alias-factor,
9693         scale down image by anti-alias-factor.  This improves appearance
9694         of bitmaps
9695         (make-ps-images): remove showpage. Fixes spurious empty png at
9696         end.
9697
9698         * scm/framework-ps.scm (write-preamble): downcase filename before
9699         string-matching. Should fix .TTF files (as opposed to ttf files)  
9700
9701         * Documentation/user/tutorial.itely (Running LilyPond for the
9702         first time): separate subsections for windows, macos and unix.  
9703
9704         * Documentation/user/invoking.itely (Updating files with
9705         convert-ly): add MacOS X note.
9706
9707 2005-06-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9708
9709         * Documentation/user/introduction.itely (Engraving): don't include
9710         file optical-spacing, add directly.
9711
9712         * lily/paper-outputter.cc (file): open file in binary mode. This
9713         fixes OTF embedding on windows.
9714
9715 2005-06-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9716
9717         * scm/framework-ps.scm (write-preamble): remove debugging output.
9718
9719         * mf/aybabtu.pe.in (i): don't generate aybabtu.cff
9720
9721         * mf/GNUmakefile ($(outdir)/fonts.cache-1): create font cache for
9722         outdir.
9723         (install-fc-cache): install font cache in installation directories.
9724
9725 2005-06-17  Jan Nieuwenhuizen  <janneke@gnu.org>
9726
9727         * scm/editor.scm (editor-command-template-alist): Use char iso
9728         column, except for Emacs.
9729         (get-editor-command): Substitute char too (Bertalan Fodor).
9730
9731 2005-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
9732
9733         * scm/ps-to-png.scm (make-ps-images): Use ~S instead of single
9734         quoted ~s.  This should fix PNG output on Windows; single quotes
9735         are regular characters on Windows.
9736
9737 2005-06-16  Graham Percival  <gperlist@shaw.ca>
9738
9739         * Documentation/user/basic-notation.itely: include ChoirStaff
9740         in System start delimiters.
9741
9742         * Documentation/user/putting.itely: new doc section on
9743         fixing overlapping notation.
9744
9745 2005-06-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9746
9747         * Documentation/user/global.itely (Paper size): \paper is in
9748         \book, not \score.
9749
9750         * make/mutopia-rules.make: -ddelete-intermediate-files
9751
9752         * ly/engraver-init.ly: make Staff default child of ChoirStaff.
9753
9754 2005-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
9755
9756         * ChangeLog: Recode utf-8.
9757
9758         * python/GNUmakefile (INSTALLATION_OUT_DIR): Install .so module in
9759         datadir with .py modules.
9760
9761 2005-06-15  Heikki Junes  <hjunes@cc.hut.fi>
9762
9763         * Documentation/user/basic-notation.itely (Ties): add tieDashed.
9764
9765 2005-06-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9766
9767         * make/mutopia-rules.make: switch off ps, p&c for lilypond runs.
9768         
9769         * scm/framework-ps.scm (write-preamble): remove status check.
9770
9771         * Documentation/user/invoking.itely (Updating files with
9772         convert-ly): remove -o option.
9773
9774         * VERSION (PACKAGE_NAME): release 2.5.31
9775
9776         * scm/framework-ps.scm (write-preamble): use ly:system.
9777         (write-preamble): verbosity.
9778
9779         * scripts/convert-ly.py: cleanup. Use lilylib. Use convertrules.
9780
9781         * python/convertrules.py: new file. Store conversion rules
9782         separately.
9783
9784 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9785
9786         * scm/backend-library.scm (postprocess-output): remove debugging gobs.
9787
9788 2005-06-14  Mats Bengtsson  <mabe@s3.kth.se>
9789
9790         * Documentation/topdocs/NEWS.tely (Top): Corrected name of
9791         \musicDisplay 
9792
9793         * Documentation/user/instrument-notation.itely (More stanzas): Add
9794         reference to StanzaNumber.
9795
9796 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9797
9798         * THANKS: separate section for website translators.
9799
9800 2005-06-14  Graham Percival  <gperlist@shaw.ca>
9801
9802         * Documentation/topdocs/INSTALL.texi: update vim info;
9803         thanks Simon Bailey!
9804
9805         * Documentation/user/advanced-notation.itely: included
9806         color names.
9807
9808         * Documentation/user/advanced-notation.itely,
9809         Documentation/usr/notation-appendices.itely: moved
9810         color names into an appendix.
9811
9812 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9813         
9814         * lily/program-option.cc (LY_DEFINE): new function ly_add_option.
9815
9816         * scm/lily.scm (lambda): initialize program options from here.
9817
9818         * scm/framework-*.scm: add header info.
9819
9820         * lily/main.cc (parse_argv): only set output format to pdf if no
9821         other format specified.
9822
9823         * scm/backend-library.scm (postprocess-output): process
9824         'delete-intermediate-files after running convert-to-*. This fixes
9825         PNG generation when 'delete-intermediate-files is set.
9826         
9827 2005-06-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9828
9829         * buildscripts/mutopia-index.py (list_item): thinko. Fixes png
9830         links on website. 
9831
9832 2005-06-13  Graham Percival  <gperlist@shaw.ca>
9833
9834         * Documentation/topdocs/INSTALL.texi,
9835         Documentation/user/lilypond-book.itely: typos.
9836
9837 2005-06-12  Pal Benko  <benkop@freestart.hu>
9838
9839         * elisp/lilypond-mode.el (LilyPond-command-alist: 2PS): space
9840         added between program name and switch; -b changed to -f not
9841         to generate pdf
9842
9843 2005-06-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9844
9845         * elisp/lilypond-mode.el (LilyPond-command-alist): remove 2midi
9846         (LilyPond-command-alist): use -f ps (thanks to Pal Benko)
9847
9848         * input/sakura-sakura.ly: add \midi.
9849
9850         * buildscripts/mutopia-index.py (find): use /usr/bin/find
9851         iso. python find. 
9852
9853         * ttftool/test.c (main): cosmetics.
9854
9855         * ttftool/util.c (surely_lseek): use stdio FILE's for I/O 
9856
9857         * ttftool/test.c: new file. If compiled with -DTEST_TTFTOOL,
9858         create a ttf2ps binary.
9859
9860         * scm/ps-to-png.scm (make-ps-images): fix rename-page-1 functionality.
9861
9862         * scm/backend-library.scm (postscript->png): set rename-page-1 to
9863         true.
9864
9865 2005-06-11  Graham Percival <gperlist@shaw.ca>
9866
9867         * Documentation/user/lilypond-book.itely: add warning about
9868         the font warnings in dvips.
9869
9870 2005-06-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9871
9872         * THANKS: typo
9873
9874         * mf/GNUmakefile ($(outdir)/$(redhat-package)): Fedora-4 url.
9875
9876         * GNUmakefile.in: remove links for .map, .enc
9877         don't fail if out/ doesn't exist yet.
9878
9879 2005-06-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9880
9881         * ttftool/util.c (surely_read): return nbytes
9882
9883         * stepmake/bin/text2html.py (txt2html): add utf-8 marker. 
9884
9885         * VERSION (PACKAGE_NAME): release 2.5.30
9886
9887         * flower/string-convert.cc (precision_string): >? fix.
9888
9889         * scm/ps-to-png.scm (make-ps-images): search-gs for multipage too.
9890         (make-ps-images): add verbose -q too.
9891
9892         * lily/default-actions.cc (Module): new file. default
9893         {book,score}-print functions.
9894
9895         * scm/ly-from-scheme.scm (ly:parse-string-result): use new setup:
9896         pass results via parseStringResult, lookup via ly:parser-lookup.  
9897
9898         * lily/lily-parser.cc (Lily_parser): only clone lexer in
9899         constructors.
9900         (parse_file): encapsulate do_yyparse() in scm_set_current_module()
9901         (parse_string): idem.
9902
9903         * ly/spanners-init.ly (assertBeamQuant): don't use #{ #} in init.
9904
9905         * lily/main.cc (main_with_guile): copy be_verbose_global into
9906         ly_set_option()
9907
9908 2005-06-10  Jan Nieuwenhuizen  <janneke@gnu.org>
9909
9910         * scm/backend-library.scm (postscript->pdf):
9911         * scm/ps-to-png.scm (make-ps-images): Do not use gs -q switch in
9912         verbose mode.  Search for several names of gs executable.
9913
9914 2005-06-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9915
9916         * lily/ly-module.cc (ly_make_anonymous_module): call make-module
9917         directly. This fixes a massive memory leak, provided you use CVS
9918         GUILE.
9919
9920 2005-06-10  Erik Sandberg  <ersa9195@student.uu.se>
9921
9922         * ly/property-init.ly: Added tieDashed.
9923
9924         * THANKS: Added some bughunters for 2.5.
9925
9926 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9927
9928         * lily/program-option.cc: add debug-gc option.
9929
9930         * lily/include/lily-guile-macros.hh: don't protect exported module
9931         objects.
9932
9933         * lily/include/lily-parser.hh (class Lily_parser): remove beam_check().
9934
9935         * scm/backend-library.scm (postscript->pdf): use
9936         delete-intermediate-files iso. running-from-gui? 
9937
9938         * ttftool/util.c (surely_read): robustness. Allow read() to return
9939         less bytes than requested, as per posix standards.
9940
9941         * lily/pfb.cc (LY_DEFINE): set ttf_verbosity from ttf-verbosity
9942         program option.
9943
9944         * ttftool/include/ttftool.h ("C"): rename verbosity to
9945         ttf_verbosity. Add to public interface.
9946
9947         * scm/music-functions.scm (unfold-repeats): remove debugging display.
9948
9949         * lily/program-option.cc: rename from scm-option.cc
9950
9951         * lily/scm-option.cc (LY_DEFINE): handle no-foobar option setting.
9952         (get_help_string): Print pretty help string.
9953
9954         * scripts/lilypond-book.py (PREAMBLE_LY): add no-point-and-click
9955         to snippet preamble.
9956
9957         * lily/scm-option.cc: remove command-line-settings option. Fold
9958         all command-line options plus default settings in a generic
9959         interface. 
9960
9961         * flower/getopt-long.cc (table_string): indent 2nd lines of help
9962         texts too.
9963
9964 2005-06-09  Jan Nieuwenhuizen  <janneke@gnu.org>
9965
9966         * flower/file-name.cc: Bugfix: only append DIRSEP if BASE_
9967         or EXT_ components non-empty.
9968
9969 2005-06-08  Jan Nieuwenhuizen  <janneke@gnu.org>
9970
9971         * scm/lily.scm (running-from-gui?): Export.
9972
9973         * lily/lily-parser-scheme.cc (ly:parse-file): Use it to generate
9974         output in .ly source directory.
9975
9976 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9977
9978         * ttftool/util.c (surely_lseek): more verbosity.
9979
9980         * lily/include/lily-proto.hh: add Context_def. This fixes FC4
9981         compile.
9982
9983         * lily/parser.yy (Repeated_music): remove >? 
9984
9985         * scm/backend-library.scm (postscript->pdf): Support for
9986         -dgs-font-load=1
9987
9988         * scm/framework-ps.scm (write-preamble): make font loading
9989         switchable to GS via --define-default gs-font-load=1
9990
9991 2005-06-09  Graham Percival  <gperlist@shaw.ca>
9992
9993         * Documentation/user/global.itely: added \layout docs.
9994
9995 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9996
9997         * lily/lily-parser-scheme.cc: add unistd.h
9998
9999 2005-06-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10000
10001         * scm/editor.scm: add char argument.
10002
10003         * scripts/lilypond-invoke-editor.scm (dissect-uri): add char. 
10004
10005         * ttftool/util.c (syserror): use errno for better error reporting.
10006
10007         * lily/source-file.cc (get_counts): new function. Calc column,
10008         line and char count in one go.
10009
10010         * lily/binary-source-file.cc (quote_input): rename to quote_input
10011
10012         * lily/input.cc (set): new function.
10013
10014 2005-06-08  Jan Nieuwenhuizen  <janneke@gnu.org>
10015
10016         * flower/file-path.cc (find): Bugfix.  Append rather than prepend
10017         directory part of file name to search directory.
10018
10019         * lily/lily-parser-scheme.cc (ly:parse-file): Prepend cwd to
10020         search path and chdir to DIR if --outname=DIR used.
10021
10022         * lily/main.cc (prepend_env_path): Bugfix: Check directory
10023         existence before appending original path.
10024
10025 2005-06-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10026
10027         * ttftool/parse.c (readNamingTable): verbosity for "bad TTF
10028         file" massage.
10029
10030         * Documentation/user/GNUmakefile (TEXINPUTS): set TEXINPUTS so our
10031         texinfo.tex is always used.
10032         
10033 2005-06-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10034
10035         * flower/include/axis.hh: rename from axes.hh
10036
10037         * lily/include/text-interface.hh (Module): rename from text-item.hh
10038
10039         * VERSION (PATCH_LEVEL): release 2.5.29
10040
10041         * ttftool/parse.c (readNamingTable): handle Apple/8bit encoding too.
10042
10043         * scm/framework-ps.scm (font-file-as-ps-string): new function.
10044         (handle-macfont): new function. Call fondu for Native mac fonts.
10045
10046         * scm/define-markup-commands.scm (fill-line): handle text-widths =
10047         '() case.
10048
10049 2005-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
10050
10051         * scm/ps-to-png.scm (make-ps-images): Bugfix: `Pages: 1\n' is not
10052         multi-page.  Fix .eps regular expression.
10053
10054 2005-06-07  Graham Percival  <gperlist@shaw.ca>
10055
10056         * Documentation/user/putting.itely: add info on modifying templates.
10057
10058         * Documentation/user/lilypond.itely, converters.itely, invoking.itely:
10059         misc small changes.
10060
10061 2005-06-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10062
10063         * scm/ps-to-png.scm (make-ps-images): no paper size for multi-page.
10064
10065         * scripts/lilypond-ps2png.scm
10066
10067         * VERSION (PACKAGE_NAME): release 2.5.28
10068
10069 2005-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
10070
10071         * lily/main.cc (prepend_env_path): Do not append /, that does not
10072         work.  Localedir lives in datadir, not in prefix.
10073
10074         * scm/framework-ps.scm (write-preamble): Remove load-font-via-GS
10075         hack for windows.
10076
10077         * flower/include/file-cookie.hh: Compile fix.
10078
10079 2005-06-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10080
10081         * ly/engraver-init.ly: add \defaultchild to InnerStaffGroup. 
10082
10083         * scm/ps-to-png.scm (gulp-port): rename from read. Don't redefine
10084         system primitives.
10085         (gulp-port): using read-string!/partial. We don't want to read an
10086         entire PS file  (GUILE 1.6 limits strings to 16M) 
10087
10088         * scm/define-grobs.scm (all-grob-descriptions): remove arch-*
10089         properties. Add font-interface. 
10090
10091         * scm/define-grob-properties.scm (all-user-grob-properties):
10092         remove old bracket properties.
10093
10094         * scm/x11-color.scm: reformat. 
10095
10096         * lily/ledger-line-engraver.cc (acknowledge_grob): create new
10097         LedgerLineSpanner if new StaffSymbol is found. 
10098
10099         * lily/staff-symbol-engraver.cc (acknowledge_grob): also set
10100         staff-symbol for finishing staff. 
10101
10102         * lily/GNUmakefile (OUT_DIST_FILES): don't dist Flex output
10103
10104         * scm/output-svg.scm (setcolor): implement (re)setcolor with <g>
10105         change black to currentColor everywhere. This fixes color support
10106         in SVG.
10107
10108 2005-06-06  Carl Sorensen  <carldsorensen@comcast.net>
10109
10110         * input/regression/fret-diagrams.ly: new file to test fret diagram
10111         capability
10112
10113         * scm/output-tex.scm: remove white-dot and white-text
10114
10115         * scm/output-ps.scm: remove white-dot and white-text
10116
10117         * scm/fret-diagrams.scm (sans-serif-stencil-white): removed -- 
10118         using ly:stencil-in-color instead
10119         (draw-dots) : remove call to white-dot
10120
10121 2005-06-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10122
10123         * flower/memory-stream.cc (Memory_out_stream): remove fopencookie
10124         support.
10125
10126         * ttftool/ttfps.c: use lily_cookie functions everywhere. 
10127
10128         * flower/include/file-cookie.hh: new file. lily_cookie extension 
10129
10130         * flower/file-cookie.cc: new file. lily_cookie extension.
10131         
10132 2005-06-06  Jan Nieuwenhuizen  <janneke@gnu.org>
10133
10134         * scm/editor.scm (editor-command-template-alist): Add syn
10135         editor (Jaap [de Vos]).
10136
10137 2005-06-05  Jan Nieuwenhuizen  <janneke@gnu.org>
10138
10139         * scripts/lilypond-ps2png.scm:
10140         * scm/ps-to-png.scm: New file.
10141
10142         * scm/backend-library.scm (postscript->png): Use it.
10143
10144         * scripts/lilypond-ps-to-png.py: Remove file.
10145
10146         * python/lilylib.py (get_bbox, make_ps_images): Remove.
10147
10148 2005-06-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10149
10150         * lily/auto-beam-engraver.cc (acknowledge_grob): remove dead code.
10151
10152         * scm/auto-beam.scm (default-auto-beam-check): only forbid beam
10153         start on grace moment. Fixes autobeam-grace.ly.
10154
10155         * lily/auto-beam-engraver.cc (process_acknowledged_grobs): don't
10156         process anything unless we're at the end of a pending beam. Fixes
10157         syncopated 8ths beamed across a beat.
10158
10159 2005-06-03  Jan Nieuwenhuizen  <janneke@gnu.org>
10160
10161         * scm/editor.scm (editor-command-template-alist): Start emacs if
10162         emacslient fails.
10163
10164         * lily/main.cc (setup_localisation): Listen to LILYPOND_LOCALEDIR.
10165
10166         * flower/file-path.cc (is_file, is_dir): Export.
10167
10168         * lily/main.cc (prepend_env_path, set_env_file): Use them.
10169
10170 2005-06-02  Mats Bengtsson  <mabe@s3.kth.se>
10171
10172         * lily/easy-notation.cc: Added include cctype to correct
10173         compilation error.
10174
10175 2005-06-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10176
10177         * scm/backend-library.scm (postscript->pdf): set resolution to
10178         1200, so bitmap fonts aren't that ugly. 
10179
10180         * Documentation/topdocs/NEWS.tely (Top): add entry about font family.
10181
10182         * lily/dynamic-engraver.cc (acknowledge_grob): only center on
10183         parent if we have a notehead. Fixes incorrect offsets when
10184         Paper_column is very wide in the X direction.
10185
10186         * input/regression/font-family-override.ly (Module): new file.
10187
10188         * scm/font.scm (make-pango-font-tree): new function.
10189
10190         * lily/beam.cc (before_line_breaking): remove warning about less
10191         than 2 visible stems. We still get a warning when there is only
10192         one stem.
10193
10194 2005-06-01  Werner Lemberg  <wl@gnu.org>
10195
10196         * buildscripts/substitute-encoding.py: Handle PFAemmentaler-xx.pfa
10197         correctly.
10198
10199 2005-06-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10200
10201         * lily/slur-scoring.cc (generate_avoid_offsets): new
10202         function. Generate avoid offsets once per slur.
10203
10204         * lily/slur.cc (add_extra_encompass): add dependency to
10205         extra-encompass object. This fixes bugs/c-phrasing-slur.ly
10206
10207         * lily/stencil.cc (is_empty): check dim_ field for is_empty()
10208         too. Fixes inf error with added bass notes.
10209
10210         * scripts/lilypond-book.py (do_options): --psfonts doesn't take
10211         argument anymore.
10212
10213         * make/ly-vars.make (DVIPS_FLAGS): use .psfonts as extension.
10214
10215         * input/tutorial/lbook-latex-test.tex: add line length test.
10216
10217         * scripts/lilypond-book.py (set_default_options): new
10218         function. Call this before dissecting snippets, so linewidth
10219         settings reach the snippets.
10220
10221 2005-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
10222
10223         * scm/lily.scm (PLATFORM, slashify): Remove double slashes.
10224
10225 2005-06-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10226
10227         * input/mutopia/R.Schumann/romanze-op28-2.ly (leftb): bugfix.
10228
10229 2005-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
10230
10231         * stepmake/aclocal.m4: More autopackage friendliness.
10232
10233 2005-05-31  Graham Percival  <gperlist@shaw.ca>
10234
10235         * Documentation/index.html.in: remove link to LSR.
10236
10237         * Documentation/user/global.itely: remove duplicate
10238         "dedication" \header{} section.
10239
10240 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10241
10242         * VERSION (PACKAGE_NAME): release 2.5.27.
10243
10244         * lily/lily-parser-scheme.cc (LY_DEFINE): unprotect paper
10245         too. Plugs memory leak.
10246
10247         * make/lilypond.fedora.spec.in (Group): remove
10248         lilypond-pdfpc-helper.
10249
10250         * scripts/GNUmakefile (SEXECUTABLES): remove
10251         lilypond-pdfpc-helper. Use lilypond-invoke-editor instead.
10252
10253         * scm/font.scm (make-century-schoolbook-tree): add Mono as
10254         'typewriter family.
10255
10256         * lily/score.cc (Score): unprotect copy of Output_def. Plugs
10257         memory leak.
10258
10259         * lily/parser.yy (score_body): don't clone Score, that's done in
10260         Lily_lexer::try_special_identifiers(). This fixes a memory leak.
10261
10262         * lily/score-engraver.cc (derived_mark): new function.
10263         (initialize): unprotect Paper_score. This fixes a memory leak.
10264
10265         * lily/score-performer.cc (derived_mark): new function.
10266
10267         * lily/score-translator.cc (get_output): use SCM for get_output() call.
10268
10269         * stepmake/aclocal.m4: put FlexLexer.h test in conftest.cc. Fixes
10270         spurious warning.
10271
10272         * scm/font.scm (make-century-schoolbook-tree): use Sans for sans
10273         serif.
10274
10275 2005-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
10276
10277         * configure.in (reloc_b): Add --enable-relocation.
10278
10279 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10280
10281         * lily/pfb.cc (LY_DEFINE): show file name when loading PFB. 
10282
10283         * input/regression/alignment-order.ly: add Staff example.
10284
10285 2005-05-31  John Mandereau   <john.mandereau@free.fr>
10286
10287         * po/fr.po: update.
10288
10289 2005-05-31  Graham Percival  <gperlist@shaw.ca>
10290
10291         * Documentation/index.html.in: add link to LSR.
10292
10293 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10294
10295         * scm/define-stencil-commands.scm (Module): new file. Register all
10296         allowed stencil expression heads in a central place.
10297
10298         * lily/stencil-scheme.cc (LY_DEFINE): check is_stencil_head in
10299         ly:make-stencil
10300
10301         * lily/stencil-expression.cc (all_stencil_heads): registering
10302         stencil expressions.
10303
10304         * lily/stencil-interpret.cc: new file. Stencil expression
10305         interpreting.
10306
10307         * input/xiao-haizi-guai-guai.ly: move file back.
10308
10309 2005-05-30  Graham Percival  <gperlist@shaw.ca>
10310
10311         * Documentation/user/advanced.itely, converters.itely,
10312         instrument-notation.itely, lilypond-book.itely: misc small
10313         changes.
10314
10315 2005-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
10316
10317         * lily/lexer.ll: Skip UTF-8 BOM at BOF.
10318
10319         * make/lilypond.fedora.spec.in: Fix source url.
10320
10321         * cygwin: Update from mingw patches.
10322
10323         * scm/editor.scm (editor-command-template-alist): Use jedit
10324         -reuseview (Bertalan), add uedit (Patrick Huberts).
10325
10326         * input/xiao-hai-zi-guai-guai.ly: Rename from
10327         xiao-haizi-guai-guai.ly.
10328
10329         * input/*: Reindent, do not use TAB.
10330
10331         * Documentation/pictures/ly.xpm: Bugfix: do not anti-alias against
10332         white background.
10333
10334 2005-05-29  Jan Nieuwenhuizen  <janneke@gnu.org>
10335
10336         * scm/framework-ps.scm (dump-stencil-as-EPS): Add silly fix for
10337         numerical overflow error.
10338
10339 2005-05-29 Laura Conrad <lconrad@laymusic.org>
10340         
10341         * abc2ly.py: fix to syntax error in multi-part output.
10342
10343 2005-05-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10344
10345         * lily/span-bar.cc (print): sort bar line extents. Fixes problem
10346         with disappearing span bars when alignAboveContext is active
10347
10348         * lily/property-iterator.cc (check_grob): use is-grob?
10349         object-property. Fixes crash-key-sig-font-size.ly. 
10350
10351 2005-05-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10352
10353         * lily/bar-line.cc (print): don't round barlines; this produces
10354         odd aliasing effects in Acroread.
10355
10356         * lily/timing-engraver.cc (process_music): robustness fix.
10357
10358         * lily/context-def.cc (filter_engravers): bugfix.
10359
10360 2005-05-28  Jan Nieuwenhuizen  <janneke@gnu.org>
10361
10362         * lily/lilypond.rc.in: Add ly-icon.
10363
10364         * lily/GNUmakefile: 
10365         * Documentation/pictures/GNUmakefile (OUT_DIST_FILES): Add ly-icon
10366         rules.
10367
10368 2005-05-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10369
10370         * lily/stencil-scheme.cc (LY_DEFINE): ly:stencil-in-color
10371
10372         * ps/music-drawing-routines.ps: 
10373
10374         * scm/output-ps.scm: remove draw ez_ball.
10375
10376         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
10377         EasyNotation context definition.
10378
10379         * lily/easy-notation.cc (brew_ez_stencil): new file. Use
10380         Text_interface and color for making easy note heads.
10381
10382         * lily/stencil.cc (with_color): new function.
10383
10384         * ps/music-drawing-routines.ps: remove draw_zigzag_line
10385
10386         * lily/line-spanner.cc (zigzag_stencil): rewrite to use draw-line
10387         output routine. Zigzag now works in SVG too.
10388
10389         * scm/output-tex.scm (filledbox): idem.
10390
10391         * scm/output-svg.scm (filledbox): idem.
10392
10393         * scm/output-ps.scm (lily-def): remove horizontal-line. 
10394
10395         * lily/lookup.cc (horizontal_line): use draw-line. 
10396
10397         * lily/system-start-delimiter.cc: remove old staff bracket code.
10398
10399         * mf/feta-haak.mf: further tweaks.
10400
10401         * lily/system-start-delimiter.cc (staff_bracket): use glyphs.
10402
10403         * mf/feta-generic.mf: include feta-haak.
10404
10405         * mf/feta-haak.mf: rewrite. Make separate glyphs for the tips 
10406
10407         * scm/framework-ps.scm (write-preamble): only load fonts if their
10408         filename is a string. 
10409
10410 2005-05-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10411
10412         * scm/output-svg.scm (circle): support circle.
10413         (bracket): stub for bracket.
10414
10415         * scripts/lilypond-book.py (main): make sure --psfonts warning is
10416         correct.
10417
10418 2005-05-26  Graham Percival  <gperlist@shaw.ca>
10419
10420         * Documentation/user/lilypond.tely, advanced-notation.itely,
10421         basic-notation.itely, instrument-notation.itely, global.itely,
10422         introduction.itely, tutorial.itely: rearranging, editing,
10423         clean-up.
10424
10425         * mf/GNUmakefile: change a "make -C" to "${MAKE} -C", required
10426         for compiling on FreeBSD.
10427
10428 2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10429
10430         * lily/pfb.cc (LY_DEFINE): progress indication for opening ttf and
10431         otf files.
10432
10433         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly (lower):
10434         bugfixes.
10435
10436         * VERSION: 2.5.26 released.
10437
10438         * scm/titling.scm (marked-up-headfoot): revert Pedro's patch. 
10439
10440 2005-05-25  Pedro Kroger  <kroeger@pedrokroeger.net>
10441
10442         * scm/titling.scm (marked-up-headfoot): doesn't print pagenumbers
10443         if printpagenumber is false.
10444
10445 2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10446
10447         * lily/font-config.cc (init_fontconfig): comment out FontConfig
10448         cache warning.
10449
10450         * lily/tie.cc (print): support dotted ties.
10451         
10452 2005-05-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10453
10454         * scm/define-grobs.scm (all-grob-descriptions): switch off
10455         debugging
10456         (all-grob-descriptions): Arpeggio has Y-extent.
10457
10458         * scm/define-music-properties.scm (all-music-properties): document
10459         length-callback and start-callback as "read-only".
10460
10461         * scm/music-functions.scm (unfold-repeats): rewrite. Cannot set
10462         length-callback after creation. 
10463
10464         * scripts/convert-ly.py (conv): unfoldrepeats -> unfoldRepeats,
10465         compressmusic -> compressMusic.
10466
10467         * ly/music-functions-init.ly (oldaddlyrics): idem.
10468
10469         * lily/parser.yy: NewLyricCombineMusic ->
10470         LyricCombineMusic. LyricCombineMusic -> OldLyricCombineMusic.
10471
10472 2005-05-24  Pedro Kroger  <kroeger@pedrokroeger.net>
10473
10474         * ly/Welcome_to_LilyPond.ly: typo.
10475
10476 2005-05-24  Graham Percival  <gperlist@shaw.ca>
10477
10478         * Documentation/user/lilypond.tely: move changing-defaults to be
10479         before global issues.
10480
10481         * Documentation/user/basic-notation.itely: move Transpose section
10482         here from advanced/Other.
10483
10484         * Documentation/user/changing-defaults.itely,
10485         advanced-notation.itely: move Fonts to advanced, edit.
10486
10487 2005-05-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10488
10489         * lily/parser.yy (bare_int): remove rule.  From now on, we require
10490         # before negative integers.
10491
10492 2005-05-23  Graham Percival  <gperlist@shaw.ca>
10493
10494         * ly/property.ly: Update tieDotted to have the same form as slurDotted.
10495
10496         * Documentation/user/lilypond.tely: change Unified index to
10497         LilyPond index.
10498
10499         * Documentation/user/advanced-notation.itely,
10500         instrument-notation.itely: editing.
10501
10502 2005-05-23  Jan Nieuwenhuizen  <janneke@gnu.org>
10503
10504         * scm/lily.scm (lilypond-all): Bugfix: return failed.
10505
10506         * lily/main.cc (setup_paths)[__MINGW32__]: Normalize LILYPONDPREFIX.
10507
10508 2005-05-21  Jan Nieuwenhuizen  <janneke@gnu.org>
10509
10510         * lily/general-scheme.cc (ly:stderr-redirect): Rename from
10511         ly:port-move.  Needs to be stderr-specific on mingw.
10512         Run fixcc.
10513
10514 2005-05-20  Jan Nieuwenhuizen  <janneke@gnu.org>
10515
10516         * lily/general-scheme.cc (ly:port-move): Remove.
10517
10518         * scm/backend-library.scm (postscript->pdf): Remove -dSAFER in
10519         windows.
10520
10521         * lily/main.cc (setup_paths) [ARGV0_RELOCATION]: Reinstate GS_*
10522         variables.  This eliminates the need for a gs.bat wrapper, which
10523         opens a console.
10524
10525         * scripts/lilypond-invoke-editor.scm (running-from-gui?): 
10526         * scm/lily.scm (running-from-gui?): 
10527         * lily/main.cc[MINGW]: Remove isatty inversion, this is an
10528         artifact of not compiling with -mwindows.
10529
10530         * scm/editor.scm: Define PLATFORM.
10531
10532 2005-05-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10533
10534         * scripts/lilypond-book.py (PREAMBLE_LY): add marker, where people
10535         can start to cut & paste lilypond-book fragments.  
10536
10537         * scm/define-music-types.scm (music-descriptions): remove
10538         UntransposableMusic
10539
10540 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10541
10542         * scm/output-ps.scm (glyph-string): remove / before CIDs.
10543
10544 2005-05-20  Graham Percival  <gperlist@shaw.ca>
10545
10546         * Documentation/user/instrument-notation.itely: remove *Engraver.
10547
10548         * Documentation/user/advanced-notation.itely: edit, rearrange.
10549
10550 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10551
10552         * scm/output-ps.scm (glyph-string): take cid? argument. Use
10553         findresource iso. findfont for CID CFF fonts.
10554
10555         * VERSION (PACKAGE_NAME): release 2.5.25
10556
10557         * ly/Welcome_to_LilyPond.ly: add  \version
10558
10559 2005-05-20  Graham Percival  <gperlist@shaw.ca>
10560
10561         * Documentation/user/programming-interface.itely: move
10562         \displayMusic into its own section.
10563
10564         * Documentation/user/basic-notation.itely: finish editing.
10565
10566 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10567
10568         * flower/file-path.cc (find): don't throw away file_name.dir, but
10569         append to it. Fixes \include with directories.
10570
10571         * flower/include/file-path.hh (class File_path): don't derive from
10572         Array<String>.
10573
10574         * flower/include/file-name.hh (class File_name): remove to_str0()
10575
10576         * lily/hara-kiri-engraver.cc (acknowledge_grob): split
10577         Hara_kiri_engraver in separate file.
10578
10579         * lily/slur-configuration.cc (score_encompass): oops, <? to min()
10580         translation went wrong. Fixes vertically translated slurs.
10581
10582 2005-05-19  Graham Percival  <gperlist@shaw.ca>
10583
10584         * Documentation/user/basic-notaton.itely: editing.
10585
10586 2005-05-18  Graham Percival  <gperlist@shaw.ca>
10587
10588         * Documentation/user/macros.itexi, basic-notation.itely:
10589         add @commonprop (commonly used properties) macro.
10590
10591 2005-05-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10592
10593         * ly/Welcome_to_LilyPond.ly: talk about icon, not program.
10594
10595         * scripts/lilypond-book.py (invokes_lilypond): new function
10596         (main): only run fontextract if invokes_lilypond() is true.
10597
10598         * lily/function-documentation.cc (ly_add_function_documentation):
10599         duh, use !=
10600
10601         * Documentation/topdocs/INSTALL.texi (Top): add MacOS command.
10602
10603         * stepmake/aclocal.m4: remove kpathsea warning, change to OPTIONAL.
10604
10605         * scm/lily.scm (running-from-gui?): lowercase Darwin.
10606
10607         * lily/function-documentation.cc (ly_add_function_documentation):
10608         use scm_hash_table_p() for checking.
10609
10610 2005-05-18  Jan Nieuwenhuizen  <janneke@gnu.org>
10611
10612         * Documentation/user/advanced-notation.itely (Text scripts):
10613         Change nonexisting @internalsref{Text markup} to @ref{Text
10614         markup}.  Change @internalsref{Text script} to
10615         @internalsref{TextScript}.
10616
10617         * lily/main.cc (setup_paths): Bugfix: pangorc is not pango.modules.
10618
10619 2005-05-17  Graham Percival  <gperlist@shaw.ca>
10620
10621         * Documentation/user/tutorial.itely, basic-notation.itely,
10622         changing-defaults.itely: remove duplicate cindex entries
10623         that appear on the same page.
10624
10625         * scm/define-grobs.scm: change default padding for TextSpanner.
10626
10627         * Documentation/topdocs/AUTHORS.texi: update email address.
10628
10629         * Documentation/user/global.itely: add info about \include.
10630
10631 2005-05-17  Jan Nieuwenhuizen  <janneke@gnu.org>
10632
10633         * scm/backend-library.scm (postscript->pdf): Remove (useless) .ps
10634         when running-from-gui.
10635
10636         * scm/editor.scm (get-editor): Add platform defaults.
10637
10638         * scm/backend-library.scm (postscript->pdf): Typo.
10639
10640 2005-05-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10641
10642         * scm/lily.scm (running-from-gui?): Darwin never runs from GUI.
10643
10644         * lily/font-config.cc (init_fontconfig): add warning about cache.
10645
10646 2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
10647
10648         * lily/main.cc (setup_paths)[ARGV0_RELOCATION]: Remove GS_*.
10649
10650 2005-05-16  Mats Bengtsson  <mabe@s3.kth.se>
10651
10652         * lily/horizontal-bracket.cc (print): Take care of the direction
10653         property so brackets above the stave point downwards. 
10654
10655         * scm/define-grobs.scm (all-grob-descriptions): Set staff-padding
10656         for HorizontalBracket so it doesn't end up within the stave.
10657
10658 2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
10659
10660         * lily/GNUmakefile (default): Typo.
10661
10662         * scm/lily.scm (PLATFORM): Export.
10663
10664         * scm/framework-ps.scm (write-preamble)[MINGW]: Use
10665         load-font-via-GS, ttftool or fopencookie is broken on windows.
10666         
10667         * scm/backend-library.scm (postscript->pdf)[MINGW]: Do not use
10668         -dSAFER, that is broken on windows.
10669
10670 2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10671
10672         * lily/GNUmakefile ($(outdir)/FlexLexer.h): conditional dependency
10673         for FlexLexer.h
10674
10675         * scripts/lilypond-invoke-editor.scm: remove stray -
10676
10677 2005-05-15  Jan Nieuwenhuizen  <janneke@gnu.org>
10678
10679         * lily/lily-guile.cc (ly_scm2newstr): Use scm_i_string_length.
10680         Fixes deprecation warning.
10681
10682         * flower/include/string.icc (to_string): Only inline if
10683         -DSTRING_UTILS_INLINED.
10684
10685         * lily/pango-font.cc (pango_item_string_stencil): Normalize file
10686         name.  Remove windows comment.
10687
10688         * scm/editor.scm (slashify): New function.
10689         (get-editor-command): Use it.
10690         (get-command-template): Do not alter editor command if
10691         environment value includes `%(file)s' magic.
10692
10693         * scripts/lilypond-invoke-editor.scm (unquote-uri): New function.
10694         (dissect-uri): Use it.
10695         (unquote-uri): Bugfix.
10696
10697 2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10698
10699         * scm/framework-ps.scm (write-preamble): add TTF rule.
10700
10701         * Documentation/topdocs/README.texi (Top): remove note about
10702         xdelta.
10703
10704         * Documentation/topdocs/INSTALL.texi (Top): remove Flex
10705         requirement.
10706
10707         * stepmake/aclocal.m4: STEPMAKE_FLEXLEXER_LOCATION: new
10708         function. Figure out where FlexLexer.h lives
10709
10710         * lily/GNUmakefile (OUT_DIST_FILES): dist lexer.cc and FlexLexer.h
10711         
10712 2005-05-14  Jan Nieuwenhuizen  <janneke@gnu.org>
10713
10714         * scripts/lilypond-invoke-editor.scm (dissect-uri): Handle URIs
10715         with Windows root in file name.
10716
10717         * scm/backend-library.scm (ly:system): Only redirect output (using
10718         system and shell, ugh) if /dev/null is writable.
10719
10720         * Documentation/pictures/GNUmakefile [PLATFORM_WINDOWS]: Build
10721         windows icon.
10722
10723         * scm/lily.scm (is-absolute?): New function.  Fixes absolute files
10724         on Mingw.
10725
10726         * scm/output-ps.scm (grob-cause): Use it.  Fixes PDF point and
10727         click.
10728
10729         * flower/file-path.cc (is_dir, is_file): New function.  Actually
10730         use result of stat when available.
10731
10732         * flower/file-path.cc (find): Use it.  Refactor.  Fixes Mingw,
10733         absolute file name and root.
10734
10735         * scm/lily.scm (PLATFORM): On mingw, slashify getcwd.
10736
10737         * scm/editor.scm (get-editor-command): Typo: do not apply editor.
10738
10739         * flower/file-name.cc (slashify): Bugfix, do substitute if no
10740         slashes in file name.
10741
10742 2005-05-13  Jan Nieuwenhuizen  <janneke@gnu.org>
10743
10744         * Documentation/user/preface.itely (Preface): Run
10745         texinfo-all-menus-update.
10746
10747         * scm/editor.scm (get-editor-command): Bugfix: allow full
10748         LYEDITOR setting, partial XEDITOR setting.  With typo fix.
10749
10750         * Documentation/pictures/lilypond-48.xpm: New file.
10751
10752         * flower/file-path.cc (to_string): Bugfix: use PATHSEP.
10753
10754         * ly/Welcome_to_LilyPond.ly: New file.
10755
10756         * lily/main.cc (main): Only identify if we have a terminal.
10757
10758         * scm/backend-library.scm (postscript->png)
10759         (postscript->pdf): Fix file name quoting for GS/MINGW (ie,
10760         non-/bin/sh).
10761
10762 2005-05-13  Heikki Junes  <hjunes@cc.hut.fi>
10763
10764         * Documentation/topdocs/AUTHORS.texi: polish, update.
10765
10766 2005-05-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10767
10768         * Documentation/user/preface.itely (Notes for version 2.6): new
10769         notes for 2.6
10770
10771         * lily/dynamic-engraver.cc (stop_translation_timestep): first set
10772         finished_span_, then call typeset_all(). Fixes spurious "Hairpin
10773         is not fully contained" warnings.
10774
10775         * lily/slur-scoring.cc (get_bound_info): remove warning.
10776
10777         * lily/staff-symbol-engraver.cc (process_music): start initial
10778         spanner in process_music(). This fixes overrides of StaffSymbol
10779         properties.
10780
10781         * scm/framework-pdf.scm (Module): remove.
10782
10783         * Documentation/topdocs/AUTHORS.texi (AUTHORS): clean up, update.
10784
10785         * lily/ambitus-engraver.cc: formatting cleanups.
10786
10787         * mf/feta-solfa.mf (Module): remove.
10788
10789         * ChangeLog: more details about contributions.
10790
10791 2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10792
10793         * lily/align-interface.cc (align_elements_to_extents): warn if
10794         called too early. Fixes: disappearing-staff-lines.ly
10795
10796         * VERSION (PACKAGE_NAME): release 2.5.24
10797
10798 2005-05-12  Jan Nieuwenhuizen  <janneke@gnu.org>
10799
10800         * stepmake/aclocal.m4: Typo.
10801
10802         * flower/string.cc (substitute): Take two strings or two
10803         characters.  Update callers.
10804
10805 2005-05-11  Jan Nieuwenhuizen  <janneke@gnu.org>
10806
10807         * flower/file-name.cc (File_name): Slashify.
10808
10809         * scm/lily.scm: Use gui-main iso lilypond-main on MINGW.
10810
10811         * scripts/GNUmakefile (SEXECUTABLES): Add lilypond-invoke-editor.
10812
10813         * stepmake/aclocal.m4 (STEPMAKE_WINDOWS): New function.
10814
10815         * configure.in (gui_b): Use it.
10816
10817         * lily/lilypond.rc.in: New file.
10818
10819         * lily/GNUmakefile[PLATFROM_WINDOWS]: Compile it into executable.
10820
10821 2005-05-12  Graham Percival  <gperlist@shaw.ca>
10822
10823         * Documentation/user/advanced-notation.itely: edit of Text
10824         section; clarify text scripts vs. text markup.
10825
10826 2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10827
10828         * lily/multi-measure-rest-engraver.cc
10829         (Multi_measure_rest_engraver): init bar_seen_ to true. Notice
10830         separation items on start. Fixes mm rests in start of score.
10831
10832         * lily/slur-scoring.cc (move_away_from_staffline): robustness,
10833         don't access StaffSymbol if not there.
10834         Fixes: crash-staff-symbol-engraver.ly.
10835
10836         * lily/instrument-name-engraver.cc (class
10837         Instrument_name_engraver): data member first_. Create
10838         InstrumentName on start. 
10839
10840 2005-05-12  Graham Percival  <gperlist@shaw.ca>
10841
10842         * Documentation/user/instrument-notation.itely: add guitar
10843         position.
10844
10845         * Documentation/user/introduction.itely,
10846         Documentation/user/lilypond.tely,
10847         Documentation/user/tutorial.itely: begin pruning
10848         unused (duplicated) cindex entries and misc cleanup.
10849
10850 2005-05-12  Mats Bengtsson  <mabe@s3.kth.se>
10851
10852         * input/test/volta-chord-names.ly: Bring the explanation up to
10853         date.
10854
10855 2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
10856
10857         * Documentation/topdocs/{AUTHORS.texi,INSTALL.texi,README.texi}:
10858         Specify `@documentencoding utf-8' for html, ignore warnings.
10859
10860 2005-05-11  Erik Sandberg  <ersa9195@student.uu.se>
10861
10862         * THANKS: Added bughunters.
10863
10864 2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
10865
10866         * lily/main.cc: update help string for `lilypond -H'.
10867
10868         * po/fi.po: update.
10869         
10870 2005-05-10  Graham Percival  <gperlist@shaw.ca>
10871
10872         * Documentation/user/advanced-notation.itely: minor fixes.
10873
10874 2005-05-10  Jan Nieuwenhuizen  <janneke@gnu.org>
10875
10876         * scm/editor.scm: New module.
10877
10878         * scm/lily.scm (gui-main): Use it.
10879
10880         * scm/framework-gnome.scm (spawn-editor): Use it.
10881
10882         * scripts/lilypond-invoke-editor.scm: Use it in new script.
10883
10884 2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10885
10886         * scm/framework-ps.scm (load-font-via-GS):  new function.
10887
10888         * lily/pango-font.cc (pango_item_string_stencil): add support for
10889         CID keyed font.
10890
10891         * scm/output-ps.scm (glyph-string): add support for CID keyed font.
10892
10893 2005-05-10  Graham Percival  <gperlist@shaw.ca>
10894
10895         * Documentation/user/basic-notation.itely: add @ref.
10896
10897         * Documentation/user/advanced-notation.itely: add example
10898         of 5/8 beaming.
10899
10900 2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10901
10902         * scripts/lilypond-pdfpc-helper.py (ly_pc_editor): robustness fixes.
10903
10904         * scm/backend-library.scm (postscript->pdf): Invoke gs instead of
10905         going through ps2pdf wrappers.
10906
10907 2005-05-09  Jürgen Reuter  <reuter@ipd.uka.de>
10908
10909         * Documentation/user/instrument-notation.itely: petrucci note
10910         heads: updated docu
10911
10912         * input/regression/note-head-style.ly: updated regression test;
10913         indentation fixes
10914
10915         * ly/engraver-init.ly: MensuralVoiceContext: use petrucci note
10916         heads as default
10917
10918         * mf/parmesan-heads.mf: minor editing; use musicological names
10919         (rather than optical description) as note head names
10920
10921         * scm/output-lib.scm: complete petrucci heads
10922
10923 2005-05-09  Pal Benko  <benkop@freestart.hu>
10924
10925         * mf/parmesan-heads.mf: add petrucci heads (like neo-mensural
10926         heads, but bigger)
10927
10928 2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
10929
10930         * lily/main.cc (main_with_guile): Remove no files check.
10931
10932         * lily/main.cc (ly:usage): Export to Scheme.
10933
10934         * scm/lily.scm (no-files-handler): New function.
10935
10936         * scm/lily.scm (lilypond-main): Use it.
10937
10938         * configure.in (gui_b): Add mbrtowc checking.
10939         Resurrect [utf8/]wchar.h checking.
10940
10941 2005-05-09  Mats Bengtsson  <mabe@s3.kth.se>
10942
10943         * Documentation/user/advanced-notation.itely (Metronome marks):
10944         Add link to the program reference for MetronomeMark
10945
10946         * Documentation/user/lilypond-book.itely (An example of a
10947         musicological document): Correct the example using psfonts 
10948
10949 2005-05-09  Heikki Junes  <hjunes@cc.hut.fi>
10950
10951         * po/fi.po: update after a lesson how to update entries against
10952         source.
10953         
10954         * po/TODO: document the lesson.
10955
10956 2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10957
10958         * configure.in (gui_b): remove wcrtomb checking.
10959
10960         * lily/general-scheme.cc (LY_DEFINE): hand-convert utf8 to 32
10961         bits. Patch by Matthias Neeracher. <neeracher@mac.com>
10962
10963 2005-05-09  Mats Bengtsson  <mabe@s3.kth.se>
10964
10965         * scripts/convert-ly.py: In the conversion to version 1.9.0, 
10966         keep Scheme expressions and strings unmodified when doing the
10967         conversion to postfix notation for slurs and beams. Should
10968         hopefully solve most related conversion problems. 
10969
10970         * Documentation/user/lilypond-book.itely : Clarify and correct how
10971         to call dvips with -h psfonts.
10972
10973 2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
10974
10975         * Documentation/user/instrument-notation.itely (Entering lyrics):
10976         Typo.  Fixes build.
10977
10978 2005-05-09  Graham Percival  <gperlist@shaw.ca>
10979
10980         * Documentation/user/lilypond-book.itely: document PSFONTS file.
10981
10982         * Documentation/user/lilypond.tely, lilypond-book.itely,
10983         tutorial.itely: change references to 2.5.x to 2.6.x.
10984
10985         * Documentation/user/instrument-notation.itely: clarified \addlyrics
10986         vs \lyricmode.
10987
10988         * Documentation/user/invoking.itely: remove old info about
10989         lilypond-profile.
10990
10991         * Documentation/topdocs/INSTALL.texi: remove old info about
10992         lilypond-profile, add warning about needing international fonts
10993         to build docs.
10994
10995 2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10996
10997         * lily/include/grob-info.hh (class Grob_info): make data member
10998         private. Changes throughout.
10999
11000         * input/regression/alignment-order.ly: new file. 
11001
11002         * lily/vertical-align-engraver.cc (acknowledge_grob): read
11003         alignAboveContext and alignBelowContext
11004
11005 2005-05-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11006
11007         * lily/pfb.cc (LY_DEFINE): add cast.
11008
11009         * scm/framework-ps.scm (write-preamble): embed CFFs if file name
11010         matches .otf
11011         (write-preamble): warn about unknown fonts.
11012
11013         * lily/pfb.cc (Module): new function ly:otf->cff
11014
11015         * lily/open-type-font.cc (get_otf_table): use ::get_otf_table
11016         (get_otf_table): new function.
11017
11018 2005-05-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11019
11020         * scm/backend-library.scm (postscript->png): call lilypond-ps2png
11021         iso. ps2png.
11022
11023 2005-05-06  Heikki Junes  <hjunes@cc.hut.fi>
11024
11025         * po/fi.po: apply second round of update.
11026
11027 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11028
11029         * scm/x11-color.scm (make-x11-color-handler): don't use
11030         #\sp. Apparently doesn't work on all platforms. 
11031
11032 2005-05-06  Graham Percival  <gperlist@shaw.ca>
11033
11034         * Documentation/user/advanced-notation.itely, putting.itely,
11035         tutorial.itely, global.itely, introduction.itely: really minor fixes.
11036
11037 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11038
11039         * VERSION (PACKAGE_NAME): release 2.5.23
11040
11041 2005-05-06  Jan Nieuwenhuizen  <janneke@gnu.org>
11042
11043         * Documentation/topdocs/AUTHORS.texi: Remove texinfo @accents,
11044         convert to utf-8.
11045
11046         * THANKS: Add translators for this release, convert to utf-8.
11047
11048         * mf/GNUmakefile (MFTRACE_FLAGS):
11049         * buildscripts/substitute-encoding.py (outdir): Build fix: pass
11050         outdir as option (WAS: hardcoded).
11051
11052 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11053
11054         * lily/staff-symbol-engraver.cc (Staff_symbol_engraver): init
11055         finished_span_
11056
11057         * THANKS: add Hans Forbrich.
11058
11059         * Documentation/topdocs/NEWS.tely (Top): document new feature.
11060
11061         * Documentation/user/basic-notation.itely (Staff symbol): document
11062         start/stop staff. Reference to ossia.ly
11063
11064         * input/test/ossia.ly: new example using stop and startStaff.
11065
11066         * lily/timing-engraver.cc: remove Timing_engraver::initialize(),
11067         in other words, don't create "|" barline at start of the score.
11068         (start_translation_timestep): don't set whichBar for start of score.
11069
11070         * input/regression/staff-halfway.ly: use new functionality.
11071
11072         * lily/staff-symbol-engraver.cc (try_music): take StaffSpanEvents,
11073         start and stop staff based on events.
11074
11075         * scm/define-music-types.scm (music-descriptions): add StaffSpanEvent
11076
11077         * ly/declarations-init.ly (startStaff, stopStaff): new identifiers.
11078
11079 2005-05-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11080
11081         * Documentation/user/programming-interface.itely (How markups work
11082         internally ): remove \encoding reference.
11083
11084 2005-05-04  Mats Bengtsson  <mabe@s3.kth.se>
11085
11086         * scripts/convert-ly.py: Attempt to do a smarter update of 
11087         text markups from versions < 1.9.0 with arbitrary nesting.
11088
11089 2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
11090
11091         * po/fi.po: convert to utf-8, and update.
11092
11093 2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11094
11095         * make/lilypond.suse.spec.in: update from suse 2.4 package.
11096
11097         * lily/*.cc: more <? >? to min/max changes
11098
11099         * lily/include/interpretation-context-handle.hh: rename
11100         Interpretation_context_handle to Context_handle.
11101
11102 2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
11103
11104         * input/regression/GNUmakefile (local_delete): use `find` together 
11105         with `xargs` to avoid too long argument-lists in cmd line.
11106
11107 2005-05-04  Graham Percival  <gperlist@shaw.ca>
11108
11109         * Documentation/user/introduction.itely: updates "About this manual".
11110
11111         * Documentation/user/advanced-notation.itely,
11112         invoking.itely: minor fixes.
11113
11114 2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11115
11116         * COPYING: add font exception. Update FSF address. 
11117
11118         * lily/context-def.cc (path_to_acceptable_context): bugfix, depth
11119         should be taken without child context.
11120
11121         * ly/chord-modifiers-init.ly (blackTriangleMarkup): use it.
11122
11123         * scm/define-markup-commands.scm (triangle): new command, as
11124         robust replacement for unicode Delta/Triangle.
11125
11126 2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11127
11128         * ps/music-drawing-routines.ps: add fillp argument.
11129
11130         * lily/lookup.cc (round_filled_polygon): polygon takes filled? argument
11131
11132         * lily/font-config.cc (init_fontconfig): don't add cff/
11133
11134         * VERSION (PACKAGE_NAME): release 2.5.22
11135
11136         * mf/GNUmakefile: remove cff/cff.ps/.map install rules.
11137
11138         * lily/grace-engraver.cc (consider_change_grace_settings): use
11139         is_alias(). Fixes problem with CueVoice grace notes. 
11140
11141         * lily/simultaneous-music-iterator.cc (construct_children): call
11142         Music_iterator::quit() for iterators that start out invalid. This
11143         fixes indefinitely continuing contexts.
11144
11145         * buildscripts/substitute-encoding.py: new file
11146
11147         * Documentation/user/basic-notation.itely (Basic polyphony): fix
11148         missing @end 
11149
11150         * scripts/lilypond-book.py (write_if_updated): print file name.
11151
11152         * Documentation/user/basic-notation.itely (Explicitly
11153         instantiating voices): idem.
11154
11155         * Documentation/user/advanced-notation.itely (Text spanners):
11156         remove stray { } 
11157
11158         * lily/context.cc (default_child_context_name): the default child
11159         is now first in accepts_list_.
11160
11161         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
11162         \defaultchild to all relevant contexts.  This fixes:
11163         drums-pitch.ly.
11164
11165         (Probably also fixes similar problems with ancient
11166         transcriptions getting CueVoices instead of the desired voices.)
11167  
11168         * lily/context-def.cc (get_default_child): new function.
11169         (get_accepted): place default child in front of list.
11170
11171         * lily/parser.yy (FIXME): add DEFAULTCHILD token.
11172
11173         * lily/include/context-def.hh (struct Context_def): add
11174         default_accept_
11175
11176 2005-05-03  Graham Percival  <gperlist@shaw.ca>
11177
11178         * scm/define-grobs.scm: remove "remove-first" line, since
11179         the absent property is set to #f anyway.
11180
11181         * Documentation/user/basic-notation.itely,
11182         advanced-notation.itely, instrument-notation.itely: minor
11183         fixes.
11184
11185         * ly/property-init.ly: add textSpanner{Up,Down,Neutral}.
11186
11187         * Documentation/user/advanced-notation.itely,
11188         changing-defaults.itely: consolidate Text stuff in
11189         advanced notation.
11190
11191         * Documentation/user/global.itely: better docs for \header.
11192
11193         * Documentation/user/putting.itely: new chapter; placeholder
11194         for future expansion.
11195
11196         * Documentation/user/examples.itely: moved "suggestions for
11197         writing LP files" section into putting.itely.
11198
11199         * Documentation/user/lilypond.itely: added new chapter,
11200         fixed the short table of contents.
11201
11202 2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11203
11204         * lily/beam-quanting.cc (quanting): robustness fix, don't produce
11205         infinity for unfeasible beams.
11206
11207         * make/lilypond.fedora.spec.in (Group): idem.
11208
11209         * scripts/GNUmakefile (SEXECUTABLES): rename ps2png to lilypond-ps2png
11210
11211         * mf/GNUmakefile (ALL_GEN_FILES): remove .map
11212
11213         * scm/framework-ps.scm (write-preamble): extract CFF from OTF
11214         fonts directly.
11215
11216         * buildscripts/gen-emmentaler-scripts.py (i): idem.
11217
11218         * mf/GNUmakefile: remove all CFF rules.
11219
11220         * scm/framework-ps.scm (ps-embed-cff): reinstate.
11221
11222         * lily/open-type-font-scheme.cc (LY_DEFINE):
11223         new function ly:otf-font-table-data.
11224         (LY_DEFINE): new function otf-font?
11225
11226 2005-05-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11227
11228         * mf/GNUmakefile ($(outdir)/lilypond.map): remove rule.
11229         ($(outdir)/Fontmap.lily): idem.
11230
11231         * buildscripts/gen-emmentaler-scripts.py (i): load fetaXX encoding
11232         for PFAEmmentaler-XXX.pfa. 
11233
11234         * Documentation/user/music-glossary.tely (accidental): NL
11235         translation of accidental.
11236
11237 2005-05-02  Jan Nieuwenhuizen  <janneke@gnu.org>
11238
11239         * flower/include/international.hh: Bugfix: include "string.hh".
11240
11241         * lily/include/mingw-compatibility.hh: New file.
11242
11243         * flower/include/libc-extension.hh (memrev): Rename from strrev.
11244
11245         * configure.in: Search for mingw wcrtomb library.
11246
11247 2005-05-02  Mats Bengtsson  <mabe@s3.kth.se>
11248
11249         * scripts/convert-ly.py: Bug fix
11250
11251         * Documentation/user/changing-defaults.itely (Common tweaks):
11252         Added example where the context has to be specified explicitly
11253         (MetronomeMark). 
11254
11255 2005-05-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11256
11257         * scripts/lilypond-book.py (ly_options): set timing to #f for
11258         notime option.
11259
11260         * scripts/convert-ly.py (conv): typo.
11261
11262         * flower/*.cc: remove <? and >?
11263         
11264         * lily/*.cc: remove <? and >?
11265
11266         * lily/tweak-registration.cc (insert_tweak_from_file): Make sure
11267         that 0x0 isn't passed into scm_cons(). Fixes crash with tweak
11268         editor.
11269
11270 2005-04-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11271
11272         * lily/part-combine-engraver.cc: add space to variable list.
11273
11274 2005-04-30  Graham Percival  <gperlist@shaw.ca>
11275
11276         * scm/define-grobs.scm: changed RemoveEmptyVerticalGroup's
11277         remove-first to false (matches docs)
11278
11279         * Documentation/user/advanced-notation.itely: corrected docs
11280         concerning remove-first.
11281
11282 2005-04-29  Mats Bengtsson  <mabe@s3.kth.se>
11283
11284         * lily/part-combine-engraver.cc: make sure that the relevant
11285         properties are included in the documentation.
11286
11287 2005-04-28  Graham Percival  <gperlist@shaw.ca>
11288
11289         * Documentation/user/lilypond-book.itely: Bernard's docs
11290         for \betweenLilyPondSystem.
11291
11292 2005-04-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11293
11294         * Documentation/topdocs/INSTALL.texi (Top): remove TeX outdated
11295         remarks.
11296
11297 2005-04-28  Pal Benko  <benkop@freestart.hu>
11298
11299         * lily/mensural-ligature.cc (brew_flexa): apply thickness property
11300         only on vertical lines of flexa shape, and use a constant
11301         thickness value for horizontal lines (patch slightly modified by
11302         Jürgen Reuter)
11303
11304         * lily/include/mensural-ligature.hh: make 2 comments clearer
11305
11306 2005-04-28  Jürgen Reuter  <reuter@ipd.uka.de>
11307
11308         * lily/vaticana-ligature-engraver.cc (need_extra_space): renamed
11309         to need_extra_horizontal_space; bugfix: use class scope to avoid
11310         global namespace pollution
11311
11312         * Documentation/user/instrument-notation.itely (ligatures): added
11313         comment on possible future syntax change and how to work around
11314
11315         * lily/vaticana-ligature-engraver.cc, mf/parmesan-heads.mf
11316         (epiphonus, cephalicus): fine-tune shape of plica head for narrow
11317         intervals (fixes agnus dei example)
11318
11319         * Documentation/user/instrument-notation.itely (white mensural
11320         ligatures): selected a more illustrative example
11321
11322 2005-04-28  Heikki Junes <hjunes@cc.hut.fi>
11323
11324         * Documentation/index.html.in: specify utf-8 charset in meta content.
11325
11326 2005-04-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11327
11328         * python/lilylib.py (make_ps_images): bugfixes; GS can produce
11329         empty 2nd page for single page.
11330
11331         * scm/lily.scm: remove p&c definitions.
11332
11333         * po/zh_TW.po (Module): new translation.
11334
11335         * lily/lily-guile.cc (ly_chain_assoc): remove.
11336
11337         * lily/general-scheme.cc (LY_DEFINE): export ly:chain_assoc_get
11338         (LY_DEFINE): recurse, iso. calling ly_chain_assoc.
11339
11340 2005-04-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11341
11342         * lily/beaming-info.cc: remove infinity_i
11343
11344         * scripts/abc2ly.py (out_filename): fix thinko with \version.
11345
11346 2005-04-26  Graham Percival  <gperlist@shaw.ca>
11347
11348         * Documentation/user/basic-notation.itely,
11349         instrument-notation.itely, advanced-notation.itely,
11350         changing-defaults.itely: minor fixes.  Added docs
11351         for colors to advanced-notation.itely.
11352
11353         * Documentation/user/advanced-notation.itely: fixed compile
11354         problem and added Bernard's x11-color doc patch.
11355
11356 2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
11357
11358         * scm/output-ps.scm (grob-cause): Yet another fix, hope it's
11359         alright this time round.
11360
11361 2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11362
11363         * Documentation/topdocs/INSTALL.texi (Top): idem.
11364
11365         * Documentation/topdocs/README.texi (Top): remove clean-fonts refs.
11366
11367         * VERSION (MAJOR_VERSION): release 2.5.21
11368
11369         * scm/output-ps.scm (grob-cause): bugfix.
11370
11371 2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
11372
11373         * cygwin/*: Update.
11374
11375         * cygwin/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Remove profile
11376         stuff.
11377
11378         * scm/output-ps.scm (grob-cause): Bugfix.
11379
11380         * scm/lily.scm (ly:load): Remove x11-color.
11381
11382         * stepmake/aclocal.m4 (STEPMAKE_GET_EXECUTABLE): Bugfix: do not
11383         quote executable, fixes getting version from program --with
11384         --options.
11385         (STEPMAKE_KPATHSEA): Bugfix for Cygwin cross building: use
11386         $ac_exeect.
11387
11388         * Documentation/user/GNUmakefile: Only build music-glossary with
11389         rendered lilypond snippets during web.
11390
11391 2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11392
11393         * po/de.po: update.
11394
11395         * lily/GNUmakefile (OUT_DIST_FILES): don't dist lexer.cc
11396
11397 2005-04-22  Laura Conrad <lconrad@laymusic.org>
11398  
11399         * scripts/abc2ly:
11400         second title line append with punctuation dash character;
11401         encode abc2ly python strings in utf-8
11402        
11403 2005-04-21  Laura Conrad <lconrad@laymusic.org>
11404
11405         * scripts/abc2ly fix chords (again)
11406  
11407 2005-04-22  Bernard Hurley  <bernard@fong-hurley.org.uk>
11408
11409         * scm/x11-color.scm: new file
11410         All x11 color names can be accessed with:
11411         #(x11-color 'ColorName),
11412         #(x11-color "ColorName") or:
11413         #(x11-color "color name")
11414         If the x11 color name is not recognised then it defaults
11415         to black
11416
11417         * scm/lily.scm: amended to call scm/x11-color.scm
11418
11419 2005-04-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11420
11421         * Documentation/user/invoking.itely (Reporting bugs): comment out
11422         reference to online PNG bug repository.
11423
11424 2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
11425
11426         * lily/translator-scheme.cc (ly:translator-property): Remove.
11427         Update callers.
11428
11429         * lily/context-scheme.cc (ly:context-now): Move from translator.
11430         Update callers.
11431
11432 2005-04-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11433
11434         * input/regression/grid-lines.ly (skips): refine example.
11435
11436         * scm/define-context-properties.scm
11437         (all-user-translation-properties): doc autoBeamCheck
11438
11439         * input/regression/grid-lines.ly (Module): new file.
11440
11441         * lily/grid-point-engraver.cc (Module): new file.
11442
11443         * lily/grid-line.cc (Module): new file.
11444
11445         * lily/grid-line-span-engraver.cc (Module): new file.
11446
11447         * lily/grid-line-interface.cc (Module): new file.
11448
11449 2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
11450
11451         * scm/auto-beam.scm (revert-property-setting): Bugfixes: add
11452         missing parameter, actualy cdr through list.  Actually return a
11453         list with ENTRY removed (was '()).
11454
11455         * scripts/convert-ly.py: Update.  Print warning if file cannot be
11456         opened.
11457         (do_conversion): Fix printing of continuation comma.
11458
11459         * Documentation/user/advanced-notation.itely (Beam formatting):
11460         Remove refbugs about compound time and mixed duration.
11461
11462         * scm/auto-beam.scm (default-auto-beam-settings): Write out all
11463         modulo moments explicitely.
11464
11465         * lily/moment.cc (operator %): New function.
11466
11467         * lily/moment-scheme.cc (ly:mod-moment): Wrap it.
11468
11469         * lily/translator-scheme.cc (ly:translator-now,
11470         ly:translator-property): New function.
11471
11472         * scm/auto-beam.scm (default-auto-beam-check): New function.
11473
11474         * lily/auto-beam-engraver.cc (test_moment): Use it.
11475
11476         * flower/rational.cc (operator %): Bugfix.
11477
11478 2005-04-21  Erik Sandberg  <ersa9195@student.uu.se>
11479
11480         * scripts/abc2ly: Bugfix
11481
11482 2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11483
11484         * python/fontextract.py (write_extracted_fonts): bugfix, too many
11485         %'s on EndFont comment.
11486
11487         * lily/ledger-line-spanner.cc: some more words of explanation.
11488
11489 2005-04-20  John Williams <williams@tni.com>  
11490         
11491         * scripts/lilypond-book.py: htmlquote bugfix.
11492         Allow snippets to be given distinct filenames.
11493         Allow the default alt text to be overridden.
11494
11495 2005-04-20  Erik Sandberg  <ersa9195@student.uu.se>
11496
11497         * ly/performer-init.ly: Bugfix
11498
11499         * THANKS: Added bughunters.
11500
11501 2005-04-20  Jan Nieuwenhuizen  <janneke@gnu.org>
11502
11503         * SConstruct (test_lib): Bump mftrace requirement to 1.1.9.
11504
11505         * lily/auto-beam-engraver.cc (test_moment): Test exact measure
11506         position (was: use modulo measure length).
11507
11508         * configure.in (no gui_b): Remove optional gtk+ requirement.
11509
11510 2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11511
11512         * Documentation/user/basic-notation.itely (Pitches): add
11513         LedgerLineSpanner.
11514
11515         * lily/dynamic-engraver.cc (process_music): set right bound to
11516         script if present. Else, do not set.
11517         (acknowledge_grob): only set right bound of finished spanner to
11518         note column if no other bound is set.
11519
11520         * python/lilylib.py (make_ps_images): switch back to png16m.
11521         
11522 2005-04-19  Jan Nieuwenhuizen  <janneke@gnu.org>
11523
11524         * scripts/lilypond-book.py (write_if_updated): Bugfix for not
11525         writing up to date file.  Add dvips usage suggestion.
11526
11527         * scripts/convert-ly.py: Fix error message.
11528         Print usage if no files on command line.
11529         (usage): Add example usage.
11530
11531         * input/test/compound-time.ly: New file.
11532
11533         * input/test/circle.ly: New file.
11534
11535         * Documentation/topdocs/NEWS.tely: Use them.
11536
11537         * input/test/boxed-stencil.ly: Remove \score.
11538
11539         * buildscripts/mf-to-table.py (base): Add .log dependency.
11540
11541         * mf/GNUmakefile: Add PFAemmentaler and PFAaybabtu dependencies on
11542         pfa's.  Add .log dependency
11543
11544         * scm/define-markup-commands.scm (lower): New command.
11545
11546         * elisp/lilypond-mode.el (LilyPond-pdf-command): New command,
11547         make it default.
11548
11549 2005-04-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11550
11551         * lily/dynamic-engraver.cc (acknowledge_grob): add note-column
11552         also to finished cresc as right bound. This fixes:
11553         skip-string-decresc.ly
11554
11555         * lily/slur-scoring.cc (get_bound_info): robustness: substitute
11556         relative_coordinate if extent is empty.
11557
11558         * lily/stem.cc (width_callback): determine correct extent if flag
11559         is not there. This fixes slur-no-flag.ly
11560
11561         * lily/grace-engraver.cc (consider_change_grace_settings): new
11562         function.
11563         (initialize): also consider_change_grace_settings() on
11564         initialization. Fixes large grace notes at start of score.
11565
11566         * lily/break-align-interface.cc (do_alignment): don't translate if
11567         total_extent is empty.
11568
11569         * buildscripts/lilypond-{login,profile}.sh (Module): remove file.
11570
11571 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11572
11573         * scm/output-ps.scm (grob-cause): don't add cwd if path starts
11574         with slash.
11575
11576 2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
11577
11578         * stepmake/aclocal.m4: Remove tfm_path.
11579
11580 2005-04-18  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11581
11582         * scm/music-functions.scm (markup-expression->make-markup): fix
11583         bug with cons arguments of markup commands.
11584         (music->make-music): fix music expression property list building
11585
11586 2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
11587
11588         * aclocal.m4: Massage package names.
11589
11590         * SCons updates.
11591
11592 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11593
11594         * VERSION (PACKAGE_NAME): release 2.5.20
11595
11596         * lily/stem.cc (calc_stem_info): add minimum Y extent of
11597         stem-tremolo.  Fixes: bugs/tremolo-stem-length-beamed
11598
11599         * lily/percent-repeat-engraver.cc (try_music): add measure before
11600         next_moment to future processing moment. Fixes:
11601         percent-repeat-mm-rest.ly
11602         (process_music): don't add moment for 2nd time.
11603
11604         * input/regression/repeat-percent.ly: add mmrests as extra test.
11605
11606         * lily/axis-group-engraver.cc (acknowledge_grob): read
11607         keepAliveInterfaces to decide what to kill.
11608
11609         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add
11610         percent-repeat-interface to keepAliveInterfaces. This fixes
11611         percent-repeat-harakiri.
11612
11613 2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
11614
11615         * SCons updates.
11616
11617 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11618
11619         * config.make.in (TTFTOOL_ENDIAN): rm TFM_PATH
11620
11621         * aclocal.m4: remove --enable-tfm-path configure option
11622
11623         * input/test/ancient-font.ly (lowerStaff): clef name errors.
11624
11625         * scm/backend-library.scm (postscript->png): newline after
11626         finishing command.
11627
11628         * lily/paper-score-scheme.cc (LY_DEFINE): new file.
11629         (LY_DEFINE): ly:paper-score-paper-systems: new function 
11630
11631         * lily/score-scheme.cc (LY_DEFINE): require music argument. 
11632
11633         * lily/score.cc (default_rendering): use Music_output too.
11634
11635         * input/test/chord-names-languages.ly (Module): rename file.
11636
11637         * lily/text-spanner.cc: add bound-padding.
11638
11639         * lily/paper-book.cc (systems): accept Paper_score
11640         iso. Paper_system vector. 
11641
11642         * input/regression/line-arrows.ly: new file.
11643
11644         * lily/paper-score.cc (process): run get_paper_systems() only once.
11645
11646         * lily/line-spanner.cc (line_stencil): add arrows.
11647
11648 2005-04-18  Jonatan Liljedahl  <lijon@kymatica.com>
11649
11650         * lily/line-interface.cc (make_arrow): new function. 
11651         (arrows): idem.
11652
11653 2005-04-18  Mathieu Giraud  <magiraud@free.fr>
11654
11655         * input/test/chord-names-german.ly: update for italian/french
11656         chords.
11657         
11658         * Documentation/user/instrument-notation.itely (Printing chord
11659         names): update.
11660
11661 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11662
11663         * lily/include/paper-score.hh (class Paper_score): remove unused
11664         prototypes.
11665
11666         * lily/book.cc (process): add -COUNT to midi output.
11667
11668         * lily/score.cc (book_rendering): remove outname argument
11669         (book_rendering): return list of Music_outputs. 
11670
11671         * lily/global-context-scheme.cc (LY_DEFINE): remove outname argument.
11672
11673         * lily/book.cc (process): loop over Music_outputs returned from
11674         Score::book_rendering().
11675
11676         * lily/*.cc (width_callback): remove spurious "unused" warnings
11677         for assert (axis==[XY]_AXIS); 
11678
11679         * lily/include/music-output.hh (class Music_output): smobify class.
11680
11681         * lily/include/paper-score.hh (class Paper_score): make members
11682         private.
11683
11684         * lily/performance.cc (process): return #f iso. #<undefined>. This
11685         prevents #<undefined> leaking into GUILE-userspace.
11686
11687 2005-04-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11688
11689         * config.hh.in: remove HAVE_PANGO_FC_FONT_MAP_ADD_DECODER_FIND_FUNC.
11690
11691 2005-04-17  Mathieu Giraud  <magiraud@free.fr>
11692
11693         * scm/chord-name.scm : support for italian and french
11694         chords names.
11695
11696         * scm/chord-ignatzek-names.scm (ignatzek-chord-names): add
11697         a space defined by chordPrefixSpacer when the root name is
11698         direclty followed by a prefix.
11699
11700         * ly/engraver-init.ly : chordPrefixSpacer       
11701         * scm/define-context-properties.scm : chordPrefixSpacer
11702         * ly/property-init.ly : italianChords, frenchChords 
11703
11704 2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
11705
11706         * mf/feta-din.mf: Remove.
11707
11708         * mf/GNUmakefile (fontdir): Bugfix.
11709
11710         * mf/SConstruct: Some updates.
11711
11712         * SConstruct: Require pkg-config.
11713         (test_program): Bugfix for double digit version compares, use
11714         integer (not string-) compare.
11715         Optionally require gs 8.14.
11716
11717         * stepmake/aclocal.m4 (STEPMAKE_PANGO_FT2): Define HAVE_PANGO16 too.
11718
11719         * lily/*: s/ifdef HAVE_*/if have/.
11720
11721         * SConstruct (test_lib): New function.  Update pkg-config and some
11722         other requirements.
11723
11724         * configure.in: Require pkg-config.  Enforce REQUIRE and version for
11725         freetype, pangof2t.
11726
11727 2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
11728
11729         * po/lilypond.pot, ...: Update using bison-CVS.
11730
11731         * python/lilylib.py (make_ps_images): Fixo.
11732
11733 2005-04-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11734
11735         * python/lilylib.py (make_ps_images): typo.
11736
11737         * configure.in (gui_b): make bison optional.
11738
11739         * lily/GNUmakefile (OUT_DIST_FILES): dist parser and lexer.
11740
11741 2005-04-16  Bernard Hurley  <bernard@fong-hurley.org.uk>
11742
11743         * framework-eps.scm: code added so that a macro \betweenLilyPondSystem
11744         with one parameter can be defined in a LaTeX file when processed
11745         by lilypond-book this will be evaluated between the systems of
11746         a multi-system score. The parameter is the number of systems processed.
11747
11748 2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
11749
11750         * python/lilylib.py (make_ps_images): Escape newline.
11751
11752         * Documentation/user/music-glossary.tely: Run
11753         texinfo-all-menus-update.
11754
11755 2005-04-14  Jan Nieuwenhuizen  <janneke@gnu.org>
11756
11757         * scm/lily-library.scm (old-relative-not-used-message)
11758         (version-not-seen-message): Add input-file-name-location to message.
11759
11760         * lily/parser.yy (lilypond): Add token aliases.
11761
11762         * Documentation/user/music-glossary.tely (accidental): Fixes.  Do
11763         not confuse with alteration.
11764         (alteration): Add.
11765
11766 2005-04-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11767
11768         * python/lilylib.py (make_ps_images): use -dEPSCrop
11769
11770         * VERSION (PACKAGE_NAME): release 2.5.19 
11771
11772         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
11773         only put xrefs in info documentation.
11774
11775         * make/ly-rules.make ($(outdir)/%.html.omf): transplant .dvi ->
11776         .pdf rule to tex-rules.make.
11777
11778         * scm/framework-eps.scm (dump-stencils-as-EPSes): remove comments
11779         from -systems.* output.
11780
11781         * stepmake/stepmake/tex-rules.make ($(outdir)/%.pdf): make PDF
11782         directly, remove -$(PAGESIZE) target.
11783
11784         * input/test/embedded-postscript.ly: update.
11785
11786 2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11787
11788         * make/lysdoc-targets.make (local-WWW): remove ps.gz target.
11789
11790         * Documentation/user/changing-defaults.itely (Font selection):
11791         document font-name.
11792
11793         * input/regression/font-name.ly: show Pango fonts for
11794         font-name. Update example. 
11795
11796         * lily/pango-select.cc (properties_to_pango_description): don't
11797         convert symbol font-size to number, but use to lookup.
11798
11799         * python/fontextract.py (write_extracted_fonts): add VMusage 0.
11800
11801         * scm/framework-ps.scm (write-preamble): use (NAME . CONTENTS) and
11802         (NAME . FILE-NAME) tuples for font descriptions. 
11803         (write-preamble): display BeginFont DSC comments.
11804
11805         * python/fontextract.py (write_extracted_fonts): new file. Extract
11806         font resources from a PS file.
11807
11808         * scripts/lilypond-book.py (option_definitions): --psfonts option.
11809         (Compile_error.process_include): do_file returns chunks.
11810
11811         * make/ly-vars.make (DVIPS_FLAGS): don't load .map file.
11812
11813         * make/lysdoc-targets.make: .texi is .PRECIOUS
11814
11815         * scripts/lilypond-book.py (write_if_updated): new function.
11816
11817 2005-04-13  Jan Nieuwenhuizen  <janneke@gnu.org>
11818
11819         * scm/framework-eps.scm (dump-stencils-as-EPSes): Massage messages.
11820
11821 2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11822
11823         * scm/framework-eps.scm (dump-stencils-as-EPSes): no massages.
11824
11825         * input/regression/markup-syntax.ly: remove \score.
11826
11827         * scm/define-markup-commands.scm (draw-circle): add fill argument
11828
11829         * scm/stencil.scm (make-circle-stencil): add fill argument
11830
11831         * ps/music-drawing-routines.ps: add fill argument.
11832
11833         * ly/performer-init.ly: add CueVoice to MIDI too.
11834
11835         * ps/music-drawing-routines.ps: new routine BeginEPSF /
11836         EndEPSF.
11837
11838         * input/regression/markup-eps.ly: new file.
11839
11840         * scm/framework-ps.scm (write-preamble): change order: vars should
11841         be inited before procedures.
11842
11843         * scm/output-ps.scm (glyph-string): break lines. 255 chars is max
11844         for EPS files.
11845
11846         * scm/define-markup-commands.scm (epsfile): add epsfile command.
11847
11848 2005-04-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11849
11850         * configure.in (gui_b): add check for ghostscript 8.15
11851
11852 2005-04-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11853
11854         * lily/hairpin.cc (after_line_breaking): suicide the hairpinlet at
11855         start of line. Fixes cresc-after-newline.ly
11856
11857         * lily/source-file.cc (file_line_column_string): use get_column().
11858
11859 2005-04-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11860
11861         * lily/source-file.cc (get_column): utf-8 support for column numbers.
11862
11863 2005-04-12  Jan Nieuwenhuizen  <janneke@gnu.org>
11864
11865         * lily/*: use message () iso progress_indication () for messages.
11866         Revise/uniformise user messages.
11867
11868         * flower/warn.cc (progress_indication): New function.
11869         (message): Use it.  Fixes newline problems.
11870
11871         * config.make.in (webdir): Sort out install dirs.
11872
11873         * stepmake/stepmake/generic-targets.make (final-install): Bugfix.
11874
11875         * python/lilylib.py (command_name): Bugfix.
11876         (make_ps_images):
11877
11878 2005-04-11  Pedro Kroger  <kroeger@pedrokroeger.net>
11879
11880         * lily/main.cc: --help says what types of backends are availabe
11881
11882 2005-04-11  Jan Nieuwenhuizen  <janneke@gnu.org>
11883
11884         Fix ./VERSION dependency, and without need to reconfigure.
11885
11886         * lily/main.cc (setup_paths): Update.
11887
11888         * stepmake/bin/make-version.py (defs): Add TOPLEVEL_VERSION define..
11889
11890         * config.hh.in (LILYPOND_DATADIR): Remove TOPLEVEL_VERSION.
11891
11892         * scripts/convert-ly.py (\markup): Fix too simplistic regexps.
11893         Add \line for some simplistic cases.
11894
11895         * lily/GNUmakefile (main.o): Add missing dependency on version.hh.
11896
11897 2005-04-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11898
11899         * elisp/lilypond-mode.el (LilyPond-lilypond-command): command used
11900         to compile LY files (useful for adding eg. "-I" args)
11901         (LilyPond-command-alist): use `LilyPond-lilypond-command'. Add a
11902         2Gnome command for gnome backend.
11903         (LilyPond-command-formatgnome): call the 2Gnome command. key
11904         binding: C-c C-g
11905
11906 2005-04-10  Jan Nieuwenhuizen  <janneke@gnu.org>
11907
11908         * Documentation/user/GNUmakefile (lilypond/index.html): Bugfix:
11909         depend on all PNG images.
11910
11911 2005-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
11912
11913         * GNUmakefile.in: Bugfix: also link .map files.
11914
11915 2005-04-09  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11916
11917         * scm/music-functions.scm (music->make-music): generate 
11918         a (make-music ...) sexpr from a music expression.
11919         (display-scheme-music): use guile pretty printer to display the
11920         make-music sexpr.
11921
11922 2005-04-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11923
11924         * ly/engraver-init.ly: reindent.
11925         Add CueVoice.
11926
11927         * scm/music-functions.scm (music-pretty-string): handle moments
11928         too.
11929         (music-pretty-string): only print non-empty lists.
11930         (cue-substitute): create CueVoice context, which has smaller type.
11931
11932         * lily/moment-scheme.cc (LY_DEFINE): new methods
11933         ly:moment-grace-{numerator,denominator}
11934
11935         * lily/context-handle.cc: remove quit() method. 
11936
11937         * lily/font-config.cc (init_fontconfig): be verbose about font path.
11938         (init_fontconfig): success is 0, not !0
11939
11940 2005-04-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11941
11942         * mf/feta-nummer-code.mf (code): add plus glyph.
11943
11944         * lily/tie.cc (print): idem.
11945
11946         * lily/slur.cc (print): don't use thickness property for
11947         slur shape-thickness.
11948
11949         * lily/stencil-scheme.cc (LY_DEFINE): don't reverse the order
11950         while adding stencils.
11951
11952         * scm/define-markup-commands.scm (with-color): with-color markup
11953         command.
11954         (whiteout): new markup command 
11955         (filled-box): new markup command
11956
11957 2005-04-07  Jan Nieuwenhuizen  <janneke@gnu.org>
11958
11959         * Documentation/topdocs/NEWS.tely (Top): Make tex-able.  Handy
11960         test for PDF docs.
11961
11962         * mf/GNUmakefile (lilypond.map): Add PFAEmmentaler,
11963         PFAAybabtu-Regular.  Fixes feta font in PDFs.
11964         
11965         Notes for tetex-3.0 make web:
11966            psclean.map: s/uhv8a/uhvr8a/
11967            config.ps add:
11968                 p +psfonts_t1.map
11969                 p +psclean.map
11970                 p +typeface.map
11971
11972 2005-04-06  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11973
11974         * scm/music-functions.scm (music-pretty-string): fix bug with
11975         string argument.
11976
11977 2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
11978
11979         * stepmake/bin/add-html-footer.py (i18n): Bugfix.
11980
11981 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11982
11983         * scripts/lilypond-book.py (Lilypond_snippet.__init__): 
11984         only process options if they're there.
11985         (write_file_map): add version-seen? to snippet-map.ly
11986
11987 2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
11988
11989         * scripts/lilypond-book.py (split_options): Bugfix.  Small code
11990         formatting cleanups.
11991
11992         * mf/GNUmakefile: Rewrite $addprefix, $addsuffix using % short-forms.
11993         Add PFAaybabtu.pfa dependency on aybabtu.subfonts.
11994
11995 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11996
11997         * scm/framework-ps.scm (ps-font-command): don't hash, just use
11998         name directly.
11999
12000         * lily/main.cc (setup_paths): either add mf/out to search path or 
12001         fonts/{otf,type1,etc}
12002         
12003         * lily/font-config.cc (init_fontconfig): either add mf/out to
12004         FontConfig or fonts/{otf,type1,etc}
12005
12006         * GNUmakefile.in: don't put mf/ link in share/ dir.
12007
12008         * lily/staff-spacing.cc: move same-direction-correction to
12009         note-spacing-interface
12010
12011         * scm/lily.scm (lilypond-main): use variable argument count for
12012         exception handler.
12013
12014         * lily/font-config.cc (init_fontconfig): add operator pacification
12015         message.
12016
12017         * mf/aybabtu.pe.in (i): generate PFAAybabtu.pfa
12018
12019         * buildscripts/gen-emmentaler-scripts.py (i): generate
12020         PFAEmmentaler as well.
12021
12022         * scm/framework-ps.scm (munge-lily-font-name): new function
12023         (write-preamble): hack: insert PFA equivalent of CFF into
12024         .PS. This makes LilyPond output printable on normal PS printers
12025         again.
12026
12027         * buildscripts/gen-emmentaler-scripts.py (i): generate
12028         PFAEmmentaler.pfa aswell.
12029
12030 2005-04-06  John Williams <williams@tni.com>  
12031         
12032         * scripts/lilypond-book.py: refactor the compose_ly procedure.
12033         
12034 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12035
12036         * scm/page-layout.scm (default-page-make-stencil): always combine
12037         the header stencil, even if empty. This prevents the body text to
12038         reach up to the margins.
12039
12040         * po/rw.po (Module): new file, for Kinyarwanda.
12041
12042         * input/test/spacing-optical.ly (Module): new file.
12043
12044         * lily/staff-spacing.cc: add same-direction-correction
12045
12046 2005-04-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12047
12048         * Documentation/user/introduction.itely (Engraving): Comment-out
12049         non-existent file.
12050
12051 2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12052
12053         * scm/define-grob-properties.scm (all-user-grob-properties): add
12054         same-direction-correction
12055
12056         * VERSION: release 2.5.18
12057
12058 2005-04-05  Jan Nieuwenhuizen  <janneke@gnu.org>
12059
12060         * lily/grob.cc (mark_smob): Check pscore->layout_ before
12061         dereferencing.  Fixes make web.
12062
12063         * lily/midi-stream.cc: Handle unwritable midi file.  Include
12064         errno.h.
12065
12066         * Documentation/user/: Fix links.
12067
12068 2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12069
12070         * lily/text-interface.cc (Module): rename from text-item.cc
12071
12072         * input/regression/apply-output.ly (texidoc): function naming fix.
12073
12074         * lily/time-signature-performer.cc (derived_mark): new function.
12075
12076         * lily/lily-parser-scheme.cc:  print mapped file name for progress
12077
12078         * scripts/lilypond-book.py (find_linestarts): new function.
12079         (find_toplevel_snippets): keep track of line numbers.
12080
12081         * lily/key-performer.cc (try_music): remove FIXME warning, gobble
12082         all key changes.
12083
12084         * ly/declarations-init.ly (partCombineListener): use
12085         ignoreBarChecks. Fixes: warn-partcombine-barcheck.ly
12086
12087         * lily/bar-check-iterator.cc (process): ignoreBarChecks property.
12088
12089 2005-04-04  Jan Nieuwenhuizen  <janneke@gnu.org>
12090
12091         * lily/text-item.cc: Fix link.
12092
12093         * Documentation/user/changing-defaults.itely (Changing defaults):
12094         Fix programs reference links.
12095
12096         * Documentation/user/music-glossary.tely: Convert to utf-8.
12097
12098 2005-04-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12099
12100         * make/lilypond-vars.make: remove TEXMF from variables.
12101         remove DEB_BUILD pk font variables.
12102         remove GUILE_LOAD_PATH
12103         remove TeX memory vars.
12104
12105 2005-04-04  Werner Lemberg  <wl@gnu.org>
12106
12107         * lilypond/scm-option.cc (ly_option_usage): Add final newline.
12108
12109 2005-04-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12110
12111         * ps/lilyponddefs.ps: remove reencode-font
12112
12113         * lily/simple-spacer.cc (add_columns): also compare
12114         directly. Column rank doesn't distinguish between broken and
12115         unbroken columns. This fixes large spaces before time sig changes.
12116
12117         * Documentation/user/point-and-click.itely: document ly:set-option.
12118
12119         * lily/grob.cc (get_uncached_stencil): only set grob-cause if
12120         point_and_click_global is set.
12121
12122         * lily/scm-option.cc (LY_DEFINE): add point-and-click
12123         ly:set-option argument.
12124
12125 2005-04-03  Jan Nieuwenhuizen  <janneke@gnu.org>
12126
12127         * GNUmakefile.in: Include symlinks in webball.
12128
12129         * Documentation/user/GNUmakefile (source-links): Add symlinks to
12130         source dir for split and non-split manuals.
12131
12132         * Documentation/user/*y: Fix @uref/@inputfile links for
12133         split/non-split HTML documents.
12134
12135         * Documentation/user/GNUmakefile (local-WWW): Do not generate
12136         .ps.gz.
12137         
12138 2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
12139
12140         * GNUmakefile.in: Add newline.
12141
12142 2005-04-01  Erlend Aasland  <erlenda@gmail.com>
12143
12144         * tex/lilyponddefs.tex: use color instead of xcolor
12145         * scm/output-tex.scm: minor editing
12146
12147 2005-04-02  Nicolas Sceaux  <nicolas.sceaux@free.fr>
12148
12149         * scm/music-functions.scm (display-scheme-music): pretty printer
12150         for music expressions.
12151
12152 2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
12153
12154         * buildscripts/install-info-html.sh (index_file): Fix link.
12155
12156 2005-04-01  Jan Nieuwenhuizen  <janneke@gnu.org>
12157
12158         * input/test/dynamic-extra.ly (piuf): Use utf-8 iso TeX accent.
12159
12160         * Documentation/index.html.in: Add size estimates with some big pages.
12161
12162         * Documentation/user/tutorial.itely (Running LilyPond for the
12163         first time): Add/replace some @rglos links.  TODO: add more
12164         @rglos links in tutorial, test non-intrusiveness (.css).
12165
12166         * stepmake/bin/add-html-footer.py (do_file): Remove info's
12167         annoying's indication of referencing external document.
12168
12169         * Documentation/user/GNUmakefile: Split version of glossary too.
12170         * Documentation/user/macros.itexi (@rglos): Have makeinfo produce
12171         links, not only for html.
12172
12173         * Documentation/user/introduction.itely: Fix some links for other
12174         than html, do not use `here' as link name.
12175
12176 2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
12177
12178         * scm/documentation-generate.scm (string-append): Fix @usermanref,
12179         @glossaryref.
12180
12181 2005-03-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12182
12183         * scm/page-layout.scm (default-page-make-stencil): only add header
12184         if existing and not empty. Fixes spurious programming error.
12185
12186         * lily/span-bar.cc (print): don't make rounded edges for spanbars.
12187
12188 2005-03-31  Erlend Aasland  <erlenda@gmail.com>
12189
12190         * scm/output-tex.scm: implement {re,}setcolor
12191         * tex/lilyponddefs.tex: use color package
12192
12193 2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
12194
12195         * GNUmakefile.in (local-WWW-post): Restore .htaccess and .html
12196         additions to website.
12197
12198         * Documentation/user/lilypond.tely: Remove reference to ps.gz.
12199
12200         * Documentation/user/macros.itexi: Fix @usermanref html links in
12201         split documents: use @inforef.
12202
12203 2005-03-30  Graham Percival  <gperlist@shaw.ca>
12204
12205         * Documentation/user/programming-interface.itely: minor fix.
12206
12207         * Documentation/user/advanced-notation.itely: added info to
12208         Metronome markings.
12209
12210 2005-03-30  Jan Nieuwenhuizen  <janneke@gnu.org>
12211
12212         * scm/output-lib.scm (make-stencil-boxer): Junk code duplication,
12213         use box-stencil.  Remove y-padding argument.
12214         (make-stencil-circler): New function.
12215
12216         * buildscripts/lilypond-words.py (F): 
12217         * elisp/SConscript (a): 
12218         * elisp/GNUmakefile (LILYPOND_WORDS_DEPENDS):
12219         * vim/SConscript (a): 
12220         * vim/GNUmakefile (LILYPOND_WORDS_DEPENDS): Update.
12221
12222         * lily/general-scheme.cc: Build fix.
12223
12224         * scm/markup.scm:
12225         * input/regression/markup-scheme.ly: 
12226         * input/regression/markup-syntax.ly: Drop 'new-' from name.
12227
12228         * scm/stencil.scm (make-circle-stencil): New function.
12229
12230         * scm/define-markup-commands.scm (draw-circle): Use it.  New
12231         name (was cicle).  Update callers.
12232         (circle): New markup command, similar to box.
12233
12234         * scm/stencil.scm (circle-stencil): New function.
12235
12236 2005-03-29  David Jedlinsky  <lilypond@ipnh.com>
12237
12238         * configure.in: Detect libutf8/wchar.h variant.
12239
12240         * stepmake/aclocal.m4: Modify shared size test.
12241
12242 2005-03-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12243
12244         * make/lilypond.fedora.spec.in (Group): remove texmf profile stuff.
12245
12246 2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12247
12248         * scripts/convert-ly.py (conv): add stencil-aligned-to! rule.
12249         
12250         * VERSION (PACKAGE_NAME):  release 2.5.17
12251
12252 2005-03-29  Jan Nieuwenhuizen  <janneke@gnu.org>
12253
12254         * scm/backend-library.scm (postscript->png): Fix comment and png
12255         message.
12256
12257         * GNUmakefile.in (link-tree): Fix locales.
12258
12259 2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12260
12261         * lily/stencil-scheme.cc (LY_DEFINE): change to
12262         ly:stencil-aligned-to, non mutating.
12263
12264         * scm/safe-lily.scm (lambda): remove ly:stencil-set-extent!
12265
12266         * lily/stencil-scheme.cc: remove ly:stencil-set-extent!
12267
12268         * lily/quote-iterator.cc (derived_mark): call
12269         Music_wrapper_iterator::derived_mark() too.
12270
12271         * lily/grace-engraver.cc (derived_mark): change signature, add
12272         const.
12273
12274 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12275
12276         * SConstruct (symlink): 
12277         * GNUmakefile.in (link-tree): Add scripts to prefix.
12278
12279         * lily/general-scheme.cc (ly:effective-prefix): New function.
12280
12281         * scm/backend-library.scm (postscript->png): Use it.
12282
12283 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12284
12285         * lily/paper-score.cc (process): don't delete grobs after
12286         producing stencils. 
12287
12288         * scm/part-combiner.scm (determine-split-list): switch off
12289         debugging info.
12290
12291         * scm/backend-library.scm (postscript->png): explicitly use ps2png.py
12292         if available.
12293
12294         * scm/define-context-properties.scm
12295         (all-user-translation-properties): add stringNumberOrientations.
12296
12297         * lily/new-fingering-engraver.cc (position_scripts): make generic,
12298         so fingering and string-numbers are separately controlled.
12299
12300 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12301
12302         * stepmake/aclocal.m4: Fix shared size test: add missing comma, do
12303         not use debugging.
12304
12305 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12306
12307         * GNUmakefile.in (local-WWW-post): remove UTF8 .htaccess.
12308
12309         * config.hh.in: add HAVE_FONTCONFIG.
12310
12311         * Documentation/user/instrument-notation.itely (String number
12312         indications): new node.
12313
12314         * input/regression/new-markup-syntax.ly (texidoc): add circle.
12315
12316         * lily/new-fingering-engraver.cc (add_string): new function. 
12317         (acknowledge_grob): accept string-number-event as well.
12318
12319         * scm/define-markup-commands.scm (circle): new markup command.
12320
12321         * scm/output-lib.scm (print-circled-text-callback): new function.
12322
12323         * lily/GNUmakefile: move ifeq after include stepmake.make.
12324
12325 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12326
12327         * config.make.in (HAVE_LIBKPATHSEA_SO):
12328         * stepmake/aclocal.m4: Also subst HAVE_LIBKPATHSEA_SO.
12329
12330         * lily/GNUmakefile (MODULE_LDFLAGS): Only if not HAVE_KPATHSEA_SO,
12331         add KPATHSEA_LIBS.
12332
12333         * debian/watch: 
12334         * debian/control: Update.
12335
12336 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12337
12338         * input/test/title-markup.ly (spaceTest): remove.
12339
12340         * input/test/embedded-tex.ly (Module): remove.
12341
12342         * input/test/music-box.ly: use 'name property, not ly:music-name.
12343
12344         * lily/GNUmakefile (MODULE_LDFLAGS): add KPATHSEA_LIBS.
12345
12346         * stepmake/aclocal.m4: STEPMAKE_FONTCONFIG: add.
12347
12348 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12349
12350         * Documentation/topdocs/INSTALL.texi (Top): Remove information
12351         about xdeltas.  Add information about CVS.
12352
12353         * scm/lily.scm (lilypond-main): Fix invocation of handler,
12354         gracefully handle failed files.
12355
12356         * lily/GNUmakefile (MODULE_LDFLAGS): Remove KPATHSEA_LIBS.
12357
12358         * Documentation/topdocs/INSTALL.texi (Top): Whitespace and other
12359         small fixes.
12360
12361         * scm/framework-tex.scm (convert-to-ps): Proper option spacing.
12362         No unnecessarily specific i18n messages.  Remove stray `1'.
12363
12364 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12365
12366         * buildscripts/lys-to-tely.py (strip_extension): add utf-8
12367         documentencoding
12368
12369         * scm/documentation-lib.scm (texi-file-head): set utf-8
12370         documentencoding.
12371
12372         * ly/chord-modifiers-init.ly (whiteTriangleMarkup): use the greek
12373         Delta, not the Symbol one. 
12374
12375         * mf/GNUmakefile ($(outdir)/lilypond.map): add -Regular to Aybabtu
12376         for the .map file.
12377
12378         * Documentation/topdocs/INSTALL.texi (Top): add running
12379         requirement as compilation requirement.
12380
12381 2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12382
12383         * buildscripts/mutopia-index.py (headertext): add h1 header and
12384         utf-8 charset meta field.
12385
12386         * input/GNUmakefile: prune example list.
12387
12388         * scm/framework-tex.scm (convert-to-ps): add -ofoo.ps to dvips
12389         options.
12390
12391         * lily/slur-scoring.cc (get_base_attachments): only look at stem
12392         extent for visible stems.
12393
12394         * lily/grob.cc (mark_smob): mark \layout block from Grob::mark_smob().
12395
12396 2005-03-27  Jan Nieuwenhuizen  <janneke@gnu.org>
12397
12398         * Documentation/topdocs/INSTALL.texi (Top): Updates.
12399
12400         * scripts/convert-ly.py: Python 2.2 compatibility (thanks Mats).
12401
12402 2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12403
12404         * lily/slur-scoring.cc (get_base_attachments): robustness. Don't
12405         pass inf/nan into slur scoring.
12406
12407         * ly/titling-init.ly (oddHeaderMarkup): don't show page no. on 1st
12408         page.
12409
12410         * scripts/abc2ly.py (dump_voices): use alphabet().
12411
12412 2005-03-27  Jeff Smith <whydoubt@yahoo.com>
12413         
12414         * mf/GNUmakefile (depth): use $(FONTFORGE). 
12415
12416 2005-03-27 Matthias Neeracher <neeracher@mac.com>
12417         
12418         * flower/include/virtual-methods.hh: simplify. Patch by
12419
12420 2005-03-25  John Williams <williams@tni.com>  
12421
12422         * scripts/lilypond-book.py (main): add png for HTML too, guess
12423         only if necessary. 
12424
12425 2005-03-25  Graham Percival  <gperlist@shaw.ca>
12426
12427         * Documentation/topdocs/INSTALL.texi: now recommends
12428         lexer-gcc-3.1.sh for gcc 3.1.1 or higher.
12429
12430         * Documentation/user/basic-notation.itely,
12431         Documentation/user/tutoria.itely: warn about
12432         only one (phrasing) slur at once.
12433
12434 2005-03-24  Pedro Kroger  <kroeger@pedrokroeger.net>
12435
12436         * ly/music-functions-init.ly (removeWithTag): fixed to return "music".
12437
12438 2005-03-23  Graham Percival  <gperlist@shaw.ca>
12439
12440         * Documentation/user/basic-notation.itely: fixed info about
12441         ending a (de)cresc.
12442
12443         * Documentation/user/lilypond-book.itely: fixed
12444         lilypond-book filter example and warned about not doing
12445         --filter and --process at the same time.
12446
12447 2005-03-23  Mats Bengtsson  <mabe@s3.kth.se>
12448
12449         * lily/parser.yy (bass_number),
12450         Documentation/user/instrument-notation.itely (Figured bass): 
12451         Add the possibility to use text markup in figured bass. 
12452
12453 2005-03-19  Graham Percival  <gperlist@shaw.ca>
12454
12455         * Documentation/user/global.itely: added info about naming
12456         identifiers and breakbefore.
12457
12458         * Documentation/user/invoking.itely: added info about batch
12459         processing files with convert-ly, removed references to TeX
12460         in the jail section.
12461
12462         * Documentation/user/examples.itely: possibly fixed piano
12463         dynamics.
12464
12465         * Documentation/user/advanced-notation.itely: added info
12466         about removing other types of Staff.
12467
12468         * Documentation/user/instrument-notation.itely: possibly
12469         fixed piano staff line switch.
12470
12471         * Documentation/user/changing-defaults.itely: added info
12472         about using normal font in titles.
12473
12474 2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12475
12476         * VERSION (PATCH_LEVEL): release 2.5.16
12477
12478         * make/ly-vars.make (DVIPS_FLAGS): include lilypond.map path
12479         explicitly.
12480
12481 2005-03-18  Jan Nieuwenhuizen  <janneke@gnu.org>
12482
12483         * scm/framework-tex.scm (convert-to-dvi): Barf if NAME contains
12484         whitespace.
12485
12486         * python/lilylib.py (make_ps_images):
12487         * scm/backend-library.scm (postscript->pdf, postscript->png):
12488         Quote file name.  Use format rather than string-append juggling.
12489
12490 2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12491
12492         * python/lilylib.py (make_ps_images): add x to -g argument. 
12493
12494         * lily/key-performer.cc (create_audio_elements): don't use
12495         scm_eval_string. Check for minor 3rd directly.
12496   
12497         * input/mutopia/J.S.Bach/baerenreiter-sarabande.ly
12498         (sarabandeCelloGlobal): key is D minor, not F major.
12499
12500 2005-03-17  Jan Nieuwenhuizen  <janneke@gnu.org>
12501
12502         Fix truncated --png output (Peter Danenberg).
12503         
12504         * python/lilylib.py (make_ps_images):
12505         * scripts/ps2png.py (copyright): Grok --papersize option.
12506
12507         * scm/backend-library.scm (postscript->png): Add parameter
12508         PAPERSIZE.  Update callers.
12509
12510         * scm/output-gnome.scm (music-font?): Bugfix: use "Emmentaler".
12511         Fixes symbol placement.
12512
12513         * lily/spanner.cc: 
12514         * lily/stencil.cc: Use "libc-extension.hh" (WAS:
12515         <libc-extension.hh>).
12516
12517 2005-03-16  Jan Nieuwenhuizen  <janneke@gnu.org>
12518
12519         * Nitpick run.
12520
12521         * buildscripts/fixcc.py: Update.
12522
12523         Builddir run fixes.
12524
12525         * HACKING (datadir): Add VERSION.
12526
12527         * GNUmakefile.in (linktree): Bugfix: outconfdirs are one dir
12528         higher up.
12529
12530 2005-03-15  Werner Lemberg  <wl@gnu.org>
12531
12532         * mf/feta-klef.mf (draw_gclef): Move z10' slightly so that the
12533         diagonal stem doesn't become thinner.
12534
12535 2005-03-15  Jan Nieuwenhuizen  <janneke@gnu.org>
12536
12537         * buildscripts/fixcc.py: Fixes (Werner).
12538
12539 2005-03-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12540
12541         * mf/GNUmakefile ($(outdir)/lilypond.map): capitalize
12542         Emmentaler/Aybabtu.
12543
12544         * GNUmakefile.in: fix lilypond-words path.
12545
12546         * po/tr.po: update to 2.3.21
12547
12548         * lily/new-fingering-engraver.cc (position_scripts): take priority
12549         from head position.
12550
12551         * input/regression/finger-chords-order.ly (texidoc): new file.
12552
12553 2005-03-14  Jan Nieuwenhuizen  <janneke@gnu.org>
12554
12555         * make/ly-rules.make: 
12556         * stepmake/aclocal.m4: 
12557         * Documentation/user/GNUmakefile: Remove old makeinfo compatibility.
12558
12559         * buildscripts/fixcc.py (rules): Leave space after operator.
12560
12561 2005-03-14  Werner Lemberg  <wl@gnu.org>
12562
12563         * mf/feta-klef.mf (draw_gclef): Replace `simple_serif' for
12564         top of the glyph with smooth curve.
12565
12566 2005-03-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12567
12568         * Documentation/user/global.itely (Page layout): remove
12569         printpagenumber.
12570
12571 2005-03-13  Jürgen Reuter  <reuter@ipd.uka.de>
12572
12573         * input/regression/mensural-ligatures.ly: new file (with examples
12574         compiled by Pal Benko).
12575
12576         * Documentation/user/instrument-notation.itely: Bugfix: yet some
12577         other "custodes.*-u0" -> "custodes.*.u0" renaming victims in
12578         musicglyph access.  Many small beautifications in ancient
12579         examples.
12580
12581         * input/test/divisiones.ly: fixed indentation; small
12582         beautifications
12583
12584         * ly/engraver-init.ly: added FIXME comment
12585
12586         * scripts/lilypond-book.py,
12587         Documentation/user/lilypond-book.itely: added music fragment
12588         option "packed" to lilypond-book
12589
12590         * Documentation/user/instrument-notation.itely: Bugfix: added
12591         missing LedgerLineSpanner color setting in several places.  Added
12592         music fragment option "packed" to VaticanaContext example.
12593
12594 2005-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12595
12596         * scm/define-grobs.scm (all-grob-descriptions): switch off
12597         Hyphen_spanner::set_spacing_rods 
12598
12599         * lily/lyric-hyphen.cc (print): add padding between syllable and
12600         hyphen.
12601         (print): shorten hyphen in tight situations (determine using
12602         minimum-length)
12603
12604         * scm/paper.scm (layout-set-staff-size): increase blotdiameter to
12605         0.4pt.
12606
12607 2005-03-13  Jan Nieuwenhuizen  <janneke@gnu.org>
12608
12609         * ly/titling-init.ly (bookTitleMarkup): Refinements.
12610
12611         * input/regression/page-breaks.ly (paper): Set not raggedlastbottom,
12612         header/footer markings for regression-test.
12613
12614         * scm/backend-library.scm (output-scopes, header-to-file): Move
12615         from framework-tex.scm.
12616
12617         * scm/framework-ps.scm (output-framework)
12618         (output-preview-framework):
12619         * scm/framework-eps.scm (output-classic-framework)
12620         (output-framework): Use it.  Fixes collated files.
12621
12622 2005-03-12  Jan Nieuwenhuizen  <janneke@gnu.org>
12623
12624         * input/sakura-sakura.ly: 
12625         * input/xiao-haizi-guai-guai.ly: Add from Debian package (Anthony).
12626
12627         * buildscripts/guile-gnome.sh: Update.
12628
12629         * mf/GNUmakefile (aybabtu.otf): Add dependency on .pe.
12630
12631         * mf/aybabtu.pe.in: Capitalize Aybabtu.
12632
12633 2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12634
12635         * lily/separating-group-spanner.cc (find_rods): oops. Fix the real
12636         culprit: always exit the loop if we find a rod, even if it has
12637         distance < 0. 
12638
12639         * lily/ledger-line-spanner.cc (set_spacing_rods): rewrite to O(n)
12640         algorithm.
12641
12642         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
12643         $(outdir)/%.svg $(outdir)/%.pfa): add --simplify.
12644
12645         * scm/output-svg.scm (dashed-line): new  function body.
12646         
12647         * GNUmakefile.in: create .htaccess.
12648
12649 2005-03-11  Jan Nieuwenhuizen  <janneke@gnu.org>
12650
12651         * Documentation/topdocs/NEWS.tely (Top): Fix text example.
12652
12653 2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12654
12655         * VERSION (PACKAGE_NAME): release 2.5.15
12656
12657         * scm/output-{pdf,pdftex,sketch}.scm (Module): remove bitrotted files.
12658
12659         * scm/framework-svg.scm (output-framework): put scaling in
12660         document header. Apply scaling only once.
12661         (output-framework): dump page size in px, not mm. 
12662
12663         * scm/lily-library.scm (modified-font-metric-font-scaling): rename
12664         from font-size.
12665
12666         * lily/paper-outputter-scheme.cc (LY_DEFINE):
12667         ly:outputter-output-scheme, new function.
12668
12669         * scm/output-svg.scm (pango-description-to-svg-font): new function
12670
12671 2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12672
12673         * Documentation/user/GNUmakefile (deep-symlinks): remove outimages
12674         target.
12675
12676         * input/typography-demo.ly: new file.
12677
12678 2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
12679
12680         * Documentation/user/global.itely (File structure): Add markup blocks
12681         to toplevel expressions.
12682         (Multiple movements, Creating titles): Add markup blocks.
12683
12684         * lily/stencil-scheme.cc: Use "libc-extension.hh" (WAS:
12685         <libc-extension.hh>).
12686
12687         * lily/accidental.cc (accurate_boxes): Compile fix: 1.51 was broken.
12688
12689         * flower
12690         * lily
12691         * kpath-guile: Nitpick run: buildscripts/fixcc.py.
12692
12693 2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12694
12695         * lily/accidental.cc: special bboxes for natural. 
12696
12697         * mf/feta-toevallig.mf: make stems heavier.
12698
12699         * lily/dynamic-text-spanner.cc (print): add bound padding for edge
12700         texts as well.
12701
12702         * mf/feta-klef.mf: revise. 
12703
12704         * mf/feta-schrift.mf: make thinning of accent less pronounced.
12705
12706         * mf/feta-klef.mf: add rounded curve at top. 
12707         make thinnib a little heavier.
12708
12709 2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
12710
12711         * lily/parser.yy (book_body): Oops, allow \markup in \book too.
12712
12713         * buildscripts/fixcc.py: New file.
12714
12715         * input/regression/utf8.ly: Update Debian font description.
12716
12717 2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
12718
12719         * stepmake/aclocal.m4: Fix test.
12720
12721 2005-03-09  Graham Percival  <gperlist@shaw.ca>
12722
12723         * Documentation/user/invoking.itely: added Sebastino Vigna's
12724         docs for the --jail option.
12725
12726 2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12727
12728         * lily/stem.cc (print): only produce stemlets if there are no
12729         noteheads on this stem.
12730
12731         * lily/note-spacing.cc (stem_dir_correction): robustness fix:
12732         don't crash on stemlet (visible stem without heads).
12733
12734         * scm/define-grobs.scm (all-grob-descriptions): junk LeftEdge for
12735         unbroken situations. 
12736
12737         * scm/output-lib.scm (center-invisible): new function.
12738
12739         * lily/spacing-loose-columns.cc (set_loose_columns): use spacing
12740         wishes to determine loose column space.
12741
12742         * lily/font-config.cc (init_fontconfig): add
12743         fonts/{otf,type1,cff}  to path.
12744
12745         * lily/main.cc (setup_paths): add fonts/{otf,svg,tfm,cff} to path
12746
12747         * mf/GNUmakefile (Module): install all fonts under otf/
12748
12749         * scm/framework-ps.scm (Module): read fonts from fonts/extension,
12750         replace /fonts/otf/ by /ps/ 
12751
12752         
12753 2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
12754
12755         * lily/paper-book.cc (classic_output): Reinstate header_0_ hack.
12756
12757         * lily/book.cc (process): Oops, add score_.header_.
12758
12759         * lily/paper-book.cc: Fold hearders, score and texts into scores_.
12760
12761         * lily/parser.yy: Handle toplevel and book texts as score.
12762
12763         * scm/page-layout.scm (default-page-make-stencil):
12764         Bugfix: (page-properties rename.
12765
12766         * scm/backend-library.scm (ly:system): Typo.
12767
12768 2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12769
12770         * stepmake/stepmake/executable-targets.make (installexe): don't
12771         strip installed executables
12772
12773         * lily/font-select.cc (get_font_by_design_size): revert
12774         pango_description_string as well.
12775
12776         * lily/system.cc (set_loose_columns): put loose column just left
12777         of next column.
12778
12779         * lily/include/group-interface.hh (extract_grob_array): rename
12780         from Pointer_group_interface__extract_grobs
12781
12782         * input/regression/ledger-line-minimum.ly (texidoc): new file.
12783
12784         * lily/ledger-line-spanner.cc (set_spacing_rods): new
12785         function. Keep ledgered note heads at a minimum distance.
12786         Introduce minimum-length-fraction
12787         (print): introduce length-fraction property.
12788
12789 2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12790
12791         * tex/GNUmakefile: remove latin1.enc rules.
12792
12793 2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
12794
12795         * scm/titling.scm: Typo.
12796
12797         * input/regression/score-text.ly: Really add.
12798
12799         * lily/score.cc: Bugfixes for SCM header_ and texts_ members.
12800
12801 2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12802
12803         * lily/open-type-font-scheme.cc:  new file.
12804
12805 2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
12806
12807         * scm/titling.scm (layout-extract-page-properties): Rename from
12808         page-properties.  Update callers.
12809
12810         * lily/lexer.ll (Lily_lexer):
12811         * lily/parser.yy: Junk lyric_markup state.
12812
12813         * Documentation/topdocs/NEWS.tely (Top): Mention markup text feature.
12814
12815         * scripts/lilypond-book.py (PREAMBLE_LY): toplevel-music-handler:
12816         Add texts parameter.
12817
12818 2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
12819
12820         * lily/lexer.ll (lyric_markup): New mode.
12821         (Lily_lexer::push_lyric_markup_state): New method.
12822         (MARKUPCOMMAND): Markup during lyric mode returns LYRIC_MARKUP.
12823
12824         * lily/parser.yy (book_body):
12825         (toplevel_expression): Grok \markup texts.
12826
12827         * lily/score-scheme.cc (ly:music-scorify): 
12828         * scm/lily-library.scm (collect-music-for-book): Take texts
12829         parameter.
12830
12831         * lily/score.cc (texts_): New member.
12832
12833         * lily/paper-book.cc (systems): Format score texts.
12834
12835         * score-text.ly: New file.
12836
12837         * ttftool/SConscript:
12838         * kpath-guile/SConscript: New file.
12839
12840         * lily/SConscript:
12841         * SConstruct: Update.
12842
12843 2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12844
12845         * VERSION (PACKAGE_NAME): release 2.5.14
12846
12847 2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
12848
12849         * lily/main.cc: Add dummy xgettext markers.
12850
12851 2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12852
12853         * make/lilypond.fedora.spec.in (Requires): scrap kpathsea/tex
12854         requirements
12855
12856         * stepmake/aclocal.m4: check dynamic link, by checking if kpathsea
12857         executable is < 40k
12858
12859         * lily/main.cc (setup_paths): remove tfm1 tfm2 tfm3 include path
12860         hack.
12861
12862 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12863
12864         * flower/libc-extension.cc:
12865         * flower/include/libc-extension.hh: [Open]BSD simply cast
12866         cookie/funopen declarations.
12867
12868         * stepmake/aclocal.m4: Check for libkpathsea.so.
12869
12870         * kpath-guile/kpath.c (ly_kpathsea_expand_variable): Use
12871         dl_kpse_find_file.
12872
12873 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12874
12875         * kpath-guile/kpath.c (open_library): dlopen libkpathsea.so
12876         (open_library): alternative for static library.
12877
12878 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12879
12880         * configure.in: Set TTFTOOL_ENDIAN iso global CFLAGS.
12881
12882         * ttftool/GNUmakefile (MODULE_CFLAGS): Add $(TTFTOOL_ENDIAN).
12883
12884         Drop run-time dependency on teTeX.
12885
12886         * lily/kpath.cc (initialize_kpathsea): dlopen libkpathsea.
12887
12888         * stepmake/aclocal.m4 (STEPMAKE_KPATHSEA): Do not include
12889         KPATHSEA_LIBS in LIBS.
12890         (STEPMAKE_DLOPEN): New function.
12891
12892         * lily/font-config.cc (init_fontconfig): Use dir for directory,
12893         not path.
12894
12895         * flower/file-path.cc (directories): Rename from paths, as this
12896         return an array of directories (a single path).
12897
12898 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12899
12900         * lily/GNUmakefile (MODULE_LIBS): link with kpath-guile
12901
12902         * lily/all-font-metrics.cc (kpathsea_find_file): wrapper around
12903         new ly:kpathsea-find-file
12904
12905         * kpath-guile/kpath.c: new file. Put kpath bindings in lib.
12906
12907         * kpath-guile/GNUmakefile: new file
12908
12909         * buildscripts/gen-emmentaler-scripts.py (i): generate
12910         emmentaler-X.fontname as well.
12911
12912         * buildscripts/ps-embed-cff.py: new script
12913
12914         * scm/lily-library.scm: remove ps-embed-cff.
12915
12916         * scm/framework-ps.scm (write-preamble): don't use kpathsea for
12917         font loading. 
12918
12919         * scm/font.scm (add-music-fonts): load dynamics/numbers through
12920         fontconfig as well.
12921
12922         * lily/font-config.cc (init_fontconfig): add cff/ too.
12923
12924         * ly/generate-embedded-cff.ly: capitalize.
12925
12926         * lily/pango-select.cc (select_pango_font): use ::find_pango_font,
12927         so as to register the pango font.
12928
12929         * lily/font-config.cc (init_fontconfig): add
12930         prefix/{otf,type1,mf/out} to fontconfig path.
12931
12932         * lily/main.cc: only look at one prefix directory, LILYPONDPREFIX
12933         overrides all. 
12934
12935         * configure.in (gui_b): remove ec mftrace check
12936
12937         * config.hh.in: use lilypond-Major.Minor as data directory.
12938
12939         * scm/framework-ps.scm (dump-page): use output-units for landscape.
12940
12941         * buildscripts/gen-emmentaler-scripts.py (i): lower case file
12942         name.
12943
12944 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12945
12946         * lily/main.cc (do_chroot_jail): Small cleanups.  Avoid constant
12947         error messages.
12948
12949         * flower/libc-extension.cc:
12950         * flower/include/libc-extension.hh: [Open]BSD fixes for
12951         cookie/funopen declarations.
12952
12953 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12954
12955         * buildscripts/gen-emmentaler-scripts.py (outdir): capitalize
12956         emmentaler.
12957
12958         * lily/score-engraver.cc (initialize): remove check for ecrm10 /
12959         lcrm10.
12960
12961         * scm/define-markup-commands.scm (fontsize): new markup
12962         command. Also set baseline-skip
12963
12964 2005-03-06 Sebastiano Vigna <vigna@dsi.unimi.it>.
12965         
12966         * lily/main.cc (do_chroot_jail): paranoia security for webserver
12967         use.
12968
12969 2005-03-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12970
12971         * stepmake/bin/add-html-footer.py (do_file): make wiki link optional.
12972
12973         * lily/pdf.cc: remove PDF related files
12974
12975 2005-03-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12976
12977         * ly/deutsch.ly: add quarter tones, patch by Arno Waschk.
12978         <hamamatsu@gmx.de>
12979
12980 2005-03-05  Graham Percival  <gperlist@shaw.ca>
12981
12982         * Documentation/user/advanced-notation.itely: first draft
12983         of reorg done.
12984
12985         * Documentation/user/global.itely: fixed (sub)section
12986         bits of MIDI.
12987
12988 2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
12989
12990         * cygwin/mknetrel (extras): Bufix (Bertalan).
12991
12992         * Documentation/user/basic-notation.itely (Chords): @ref fix.
12993         * Documentation/user/instrument-notation.itely (Introducing chord
12994         names): Compile fix: must have unique name.
12995
12996 2005-03-02  Graham Percival  <gperlist@shaw.ca>
12997
12998         * Documentation/user/instrument-notation.itely: reorg.
12999
13000 2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
13001
13002         * scm/output-gnome.scm:
13003         * scm/output-svg.scm: Fix font scaling.
13004
13005 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13006
13007         * ly/titling-init.ly (tagline): Use Engraving.  Add comment about
13008         what link to use best.
13009
13010         * Documentation/user/instrument-notation.itely (Ancient accidentals): 
13011         * Documentation/user/tutorial.itely (Automatic and manual beams):
13012         Fix @ref.
13013
13014         * lily/tweak-registration.cc (replace_grob_tweak): New function.
13015         * lily/tweak-registration-scheme.cc (LY_DEFINE): Wrap it.
13016         * scm/framework-gnome.scm (tweak): Use it.
13017
13018 2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13019
13020         * Documentation/topdocs/NEWS.tely (Top): elucidate GS problem.
13021
13022         * scm/output-ps.scm (white-text): reinstate white-text
13023
13024 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13025
13026         * scm/output-ps.scm (offset-add): Remove.
13027
13028         * scm/lily-library.scm (offset-flip-y): New function.
13029         * scm/framework-gnome.scm (tweak): Use it.
13030
13031         * scm/output-gnome.scm (grob-cause): Add parameter.
13032
13033         * scm/lily.scm (ly:all-stencil-expressions): Add url-link.
13034         * scm/output-ps.scm (url-link): Move.
13035         (white-text): Warn user about brokenness.
13036
13037         * Documentation/topdocs/NEWS.tely: Be more accurate and respectful
13038         wrt ghostscript.
13039
13040 2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13041
13042         * lily/slash-repeat-engraver.cc (try_music): always make slashes
13043         if body length smaller than measure length.
13044
13045         * scm/define-markup-commands.scm (with-url): oops. use Y extent
13046         for Y.
13047
13048         * ly/titling-init.ly (tagline): put default tagline in \paper
13049
13050 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13051
13052         * lily/kpath.cc: 
13053         * lily/pdf.cc (Pdf_file): Use more generic error messages.
13054
13055         * scm/lily-library.scm (version-not-seen-message): New function.
13056         * ly/init.ly: Use it.
13057
13058         * scm/page-layout.scm (ly:optimal-page-breaks): Display page
13059         breaks as progess.
13060
13061         * scripts/lilypond-book.py (do_process_cmd): Do not lump
13062         whitespace with l10n message.
13063
13064         * scm/framework-tex.scm (convert-to-ps):
13065         (convert-to-dvi): Do not use overly specific l10n messages.
13066
13067         * ly/titling-init.ly (bookTitleMarkup): Add baseline skips from 2.4.
13068
13069         * tex/GNUmakefile $(outdir)/latin1.enc: Build fix:
13070         merge stderr with stdout.  
13071
13072 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13073
13074         * flower/libc-extension.cc: Tested BSD compile fix (Matthias
13075         Neeracher).
13076
13077 2005-02-29  Graham Percival  <gperlist@shaw.ca>
13078
13079         * Documentation/user/instrument-notation.teily: moved
13080         \arpeggio to Basic.
13081
13082         * Documentation/user/advanced-notation.itely: Articulation to
13083         Basic, a bunch of stuff from Basic moved to Advanced.
13084
13085         * Documentation/user/basic.itely: swapped various sections,
13086         reorganized Basic.
13087
13088 2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
13089
13090         * flower/memory-stream.cc: 
13091         * flower/libc-extension.cc: Remove obsolete #undefs.
13092
13093         * flower/include/libc-extension.hh: Bugfix for BSD, place #ifdef
13094         more carefully.
13095
13096 2005-02-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13097
13098         * make/lilypond.fedora.spec.in (Requires): add GS 8.15 as
13099         dependency.
13100
13101         * VERSION (PACKAGE_NAME): release 2.5.13
13102
13103         * GNUmakefile.in (web-ext): don't ship ps.gz
13104
13105         * tex/GNUmakefile ($(outdir)/latin1.enc): redirect stderr to
13106         stdout
13107
13108 2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
13109
13110         * lily/general-scheme.cc (LY_DEFINE): Compile fix for systems
13111         without libintl.  Now it compiles too.
13112
13113 2005-02-28  Graham Percival  <gperlist@shaw.ca>
13114
13115         * Documentation/user/basic-notation.itely,
13116         instument-notation.itely, advanced-notation.itely:
13117         split up contents of notation.itely.
13118
13119         * Documentation/user/notation.itely: file removed.
13120
13121         * Documentation/user/invoking.itely, converters.itely:
13122         moved convert-ly info to invoking.itely.
13123
13124         * Documentation/user/global.itely, changing-defaults.itely,
13125         sound-output.itexi: moved global settings, file layout, and
13126         sound into global.itely.
13127
13128         * Documentation/user/sound-output.itexi: file removed.
13129
13130         * Documentation/user/lilypond.tely: removed links to
13131         notation.itely and sound.itely.
13132
13133 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13134
13135         * scm/output-ps.scm (grob-cause): only do mark_URI if non-empty.
13136
13137         * scm/framework-ps.scm (write-preamble): remove pdf-viewer code.
13138  
13139         * THANKS: add sponsor.
13140
13141         * scm/define-markup-commands.scm (with-url): new markup command.
13142
13143         * scm/page-layout.scm (TAGLINE): add www.lilypond.org with URL to
13144         tagline.
13145         
13146         * scm/output-tex.scm (url-link): stub.
13147
13148         * scm/output-ps.scm (url-link): new function.
13149
13150         * lily/lily-parser-scheme.cc (LY_DEFINE): deprecate
13151         ly:set-point-and-click
13152
13153 2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
13154
13155         * ps/music-drawing-routines.ps (mark_file_line): Switch Action
13156         based on pdf-viewer setting.
13157
13158         * scm/framework-ps.scm (write-preamble): Find and set preferred
13159         pdf-viewer.
13160
13161 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13162
13163         * Documentation/user/point-and-click.itely: update for PDF point &
13164         click.
13165
13166         * scripts/lilypond-pdfpc-helper.py: new file. Invoke different
13167         editors based on EDITOR setting.
13168
13169 2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
13170
13171         * scm/*: Oops, more grand 2005 replace bits.
13172
13173 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13174
13175         * ps/music-drawing-routines.ps: new routine: insert PDF mark
13176
13177         * scm/output-ps.scm (grob-cause): point & click support for
13178         PostScript
13179
13180 2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13181
13182         * lily/input-scheme.cc (LY_DEFINE): rename to
13183         ly:input-file-line-column
13184
13185 2005-02-26  Graham Percival  <gperlist@shaw.ca>
13186
13187         * Documentation/user/examples.itely: small fix from Steve Doonan.
13188
13189         * Documentation/user/scheme-tutorial.itely: small fix from Steve Doonan.
13190
13191         * THANKS: added Yuval Harel.
13192
13193         * Documentation/user/{various}: inserted two spaces after a period.
13194
13195         * Documentation/user/lilypond.tely: added framework for reorg.
13196
13197         * Documentation/user/basic-notation.itely, instrument-notation.itely,
13198         advanced-notation.itely, global.itely: new files, placeholder for
13199         future reorg.
13200
13201 2005-02-26 Yuval Harel  <yuvalh@hotpop.com>
13202
13203         * Documentation/user/notation.itely: revamped Polyphony section
13204         
13205 2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13206
13207         * Documentation/user/lilypond-book.itely (Music fragment options):
13208         doc fontload.
13209
13210         * Documentation/user/changing-defaults.itely (Text encoding): add
13211         fontload option to utf8 include
13212
13213         * scripts/lilypond-book.py (compose_ly): add fontload option
13214
13215         * scm/framework-eps.scm (dump-stencils-as-EPSes): add
13216         force-eps-font-include option.
13217
13218         * ly/chord-modifiers-init.ly (blackTriangleMarkup): reinstate
13219         black triangle
13220
13221         * Documentation/user/invoking.itely (Editor support): remove
13222         lilypond-latex section.
13223
13224         * scripts/lilypond-latex.py (Module): remove script.
13225
13226         * cygwin/lily-wins.py (stat): write to .lylog, so as not to
13227         overwrite .log. 
13228
13229         * lily/main.cc: remove -m, --no-layout
13230
13231         * flower/include/libc-extension.hh: add ALIAS_FILE_TO_FILECOOKIE
13232         to define. We don't want to override fprintf everywhere.
13233
13234 2005-02-26  Jan Nieuwenhuizen  <janneke@gnu.org>
13235
13236         * cygwin/lilypond.hint: 
13237         * cygwin/README.in: Update dependencies.
13238
13239         * stepmake/aclocal.m4 (STEPMAKE_PANGO, STEPMAKE_PANGO_FT2):
13240         Bugfix: do not pollute CPPFLAGS, LIBS.
13241
13242         * cygwin/mknetrel (extras): Cross compile fixes.
13243
13244         * ttftool/util.c: 
13245         * ttftool/ttfps.c: 
13246         * ttftool/ps.c: #include libc-extension.hh
13247
13248         * flower/include/libc-extension.hh:
13249         * flower/libc-extension.cc (fopencookie)[!HAVE_FOPENCOOKIE]: Add
13250         wrapper using funopen.
13251         (fopencookie, handle_cookie_io_fclose, handle_cookie_io_fprintf,
13252         handle_cookie_io_fprintf): Add wrappers catching Memory_out_stream.
13253
13254         * config.hh.in:
13255         * configure.in (AC_CHECK_FUNCS): Add fopencookie, funopen.
13256         (AC_CHECK_HEADERS): Add libio.h
13257
13258         * scripts/convert-ly.py: Uniformize, internationalize.
13259         (2.5.2): Remove fatal encoding rule.
13260         (2.5.13): Handle latin1 encoding gracefully.
13261
13262 2005-02-23  Jan Nieuwenhuizen  <janneke@gnu.org>
13263
13264         * HACKING: Fix line breaks.
13265
13266 2005-02-23  Werner Lemberg  <wl@gnu.org>
13267
13268         * mf/graycx.mf, mf/graylj.mf: Removed.  Any decent TeX distribution
13269         contains those two files.
13270
13271 2005-02-21  Werner Lemberg  <wl@gnu.org>
13272
13273         * mf/feta-nummer-code.mf ("Numeral 5"): Include intersection point
13274         to improve overlap removal process.
13275
13276         * mf/feta-slag.mf (draw_trillelement): Add parameter to control
13277         left and right ending.  This ensures better overlapping.
13278         Update all callers.
13279         ("lineprall"): Don't use draw_gridline to get better overlapping.
13280
13281 2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13282
13283         * scm/lily-library.scm (ps-embed-cff): add \n after EndResource
13284
13285         * Documentation/topdocs/NEWS.tely (Top): oops.
13286
13287 2005-02-21  Pedro Kroger  <kroeger@pedrokroeger.net>
13288
13289         * HACKING: new file.
13290
13291         * input/regression/utf8.ly (portuguese): added a portuguese example
13292         to show latin1 accents.
13293
13294 2005-02-21  Pal Benko  <benkop@freestart.hu>
13295
13296         * lily/mensural-ligature-engraver.cc:
13297         * lily/mensural-ligature.cc:
13298         * lily/include/mensural-ligature.hh: new algorithm implemented
13299
13300         * scm/define-grob-properties.scm: join-left killed (add-join may
13301         be used); join-left-amount changed to join-right-amount
13302
13303 2005-02-21  Graham Percival  <gperlist@shaw.ca>
13304
13305         * Documentation/user/notation.itely: small but urgent fix.
13306
13307 2005-02-21  Jürgen Reuter  <reuter@ipd.uka.de>
13308
13309         * lily/duration-scheme.cc: bugfix: correct parameters to
13310         SCM_ASSERT_TYPE.
13311
13312         * THANKS: added Pal.
13313
13314         * Documentation/user/notation.itely: bugfix: unTeXified
13315         $\\backslash$.  Bugfix: yet another glyph renaming victim:
13316         "timesig.*x/y" -> "timesig.*xy".
13317
13318 2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13319         
13320         * VERSION (PACKAGE_NAME): release 2.5.12
13321
13322 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13323
13324         * ly/engraver-init.ly: set tieWaitForNote to #t by default
13325
13326         * configure.in (gui_b): bump GUILE requirement to 1.6.5 
13327
13328         * Documentation/topdocs/NEWS.tely: add inputfileref macro.
13329
13330         * scm/framework-ps.scm (supplies-or-needs): uniq font name list.
13331
13332 2005-02-20  Jan Nieuwenhuizen  <janneke@gnu.org>
13333
13334         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly: recode
13335         latin1..utf-8.
13336
13337         * input/regression/stanza-number.ly:
13338         * input/regression/utf8.ly (hebrew): Use addlyrics.  Update.
13339
13340         * lily/tie-engraver.cc (acknowledge_grob): Compile fix.
13341
13342 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13343
13344         * Documentation/topdocs/NEWS.tely (Top): only mention 2.5
13345         NEWS. Refer to website for older news.  
13346
13347         * stepmake/bin/add-html-footer.py (i18n): don't strip .PNG /
13348         .HTML. This should be done for specific servers only.
13349
13350         * Documentation/topdocs/NEWS.tely (Top): move to .tely. Add some
13351         .ly image examples.
13352
13353         * scm/define-grobs.scm (all-grob-descriptions): put ledger lines
13354         in layer 0 too.
13355
13356         * scm/define-context-properties.scm
13357         (all-user-translation-properties): add tieWaitForNote
13358
13359         * scm/define-grobs.scm (all-grob-descriptions): add
13360         Tie_column::before_line_breaking
13361
13362         * lily/tie.cc (get_column_rank): new function
13363
13364         * lily/tie-column.cc (before_line_breaking): new function.
13365         (werner_directions): take into account ties that start on
13366         different columns.  
13367
13368         * lily/score-engraver.cc (set_columns): move add_column() so we
13369         have column rank available.
13370
13371         * lily/tie.cc (get_column_rank): new function.
13372
13373         * input/regression/utf8.ly (japanese): add japanese lyrics.
13374
13375         * lily/pfb.cc (LY_DEFINE): ly:ttf->pfa, new function.
13376
13377         * THANKS: add Steve D
13378
13379         * ttftool/*.c: add TTF -> Type42 conversion library. Based on
13380         Public Domain work by Juliusz Chroboczek <jch@pps.jussieu.fr>
13381
13382 2005-02-20  Tatsuya Ono  <tats_ono@infoseek.jp>
13383
13384         * mf/parmesan-heads.mf: "0harmonic" -> "s0harmonic"
13385         to show harmonic notes
13386         * scm/define-markup-commands.scm: in \markup-by-number
13387         "dots-dot" -> "dots.dot" to show dotted notes
13388
13389 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13390
13391         * flower/include/memory-stream.hh (class Memory_out_stream): new file.
13392
13393         * flower/memory-stream.cc (writer): new file.
13394
13395         * configure.in: add endian test.
13396
13397 2005-02-19  Jürgen Reuter  <reuter@ipd.uka.de>
13398
13399         * Documentation/user/examples.itely: small
13400         simplification/beautification
13401
13402         * Documentation/user/notation.ietly: bugfix: fixed many artefacts
13403         from the "x-y-z"->"x.y.z" renaming of glyphs throughout the whole
13404         notation manual.
13405
13406         * lily/mensural-ligature.cc: bugfix: another few victims of the
13407         "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
13408
13409         * ly/gregorian-init.ly: commit some experimental code for hi-level
13410         ligature input language lying around here for several months.
13411
13412         * lily/mensural-ligature-engraver.cc: bugfix: another victim of
13413         the "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
13414
13415         * lily/vaticana-ligature-engraver.cc: bugfix: another few
13416         "x-y-z"->"x.y.s-z" fixes.
13417
13418 2005-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13419
13420         * scm/framework-pdf.scm (scm): new file
13421
13422         * lily/include/pdf.hh (class Pdf_file): new file.
13423
13424         * lily/pdf.cc (write_trailer): new file.
13425
13426 2005-02-18  Erlend Aasland  <erlenda@gmail.com>
13427
13428         * input/regression/color.ly: new file
13429
13430         * lily/stencil.cc (interpret_stencil_expression):
13431         when a color expression is encountered: save current color,
13432         process the rest of the expression, and restore previous color.
13433
13434         * lily/system.cc (get_line): check all grobs for color property and
13435         prepare the stencil scheme expressions for further processing.
13436         Fix layer-loop.
13437
13438         * scm/define-grob-properties.scm: introduce the color property.
13439
13440         * scm/output-lib.scm: color helper functions.
13441
13442         * scm/output-ps.scm: introduce setcolor/resetcolor.
13443
13444 2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
13445
13446         * ly/*.ly, input/regression/*.ly: Added missing \version
13447         statements in some files.
13448
13449 2005-02-15  Graham Percival  <gperlist@shaw.ca>
13450
13451         * Documentation/user/notation.itely: minor editing.
13452
13453         * Documentation/user/converters.itely: updated convert-ly bugs.
13454
13455         * Documentation/user/lilypond-book.itely: add info about using
13456         feta characters in latex.
13457
13458 2005-02-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13459
13460         * scripts/convert-ly.py: new slur dash patch by Bertalan Fodor.
13461
13462 2005-02-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13463
13464         * scm/define-grob-properties.scm (all-user-grob-properties):
13465         removed 'dashed property.
13466
13467 2005-02-13  Nicolas Sceaux  <nicolas.sceaux@free.fr>
13468
13469         * scm/lily.scm (define-safe-public): new macro for defining
13470         variables that can be used in --safe mode. Use it in *.scm
13471         instead of manually setting safe-objects in safe-lily.scm.
13472
13473 2005-02-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13474         
13475         * lily/slur.cc: Slur-dash patch by Bertalan.
13476
13477         * ly/engraver-init.ly (EasyNotation): glyph name dash -> period.
13478
13479         * stepmake/bin/add-html-footer.py (do_file): do i18n only once. 
13480
13481 2005-02-10  Jan Nieuwenhuizen  <janneke@gnu.org>
13482
13483         * stepmake/aclocal.m4: teTeX-3.0 inimf fix.  Comment-out.
13484
13485 2005-02-09  Jan Nieuwenhuizen  <janneke@gnu.org>
13486
13487         * mf/GNUmakefile: teTeX-3.0 install fix.
13488
13489         * Cygwin patch from Bertalan.
13490
13491         * stepmake/stepmake/metafont-rules.make: Remove bashism.
13492
13493 2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
13494
13495         * GNUmakefile.in: 
13496         * SConstruct (symlink): teTeX-3.0 build fix: add map symlink.
13497
13498         * tex/GNUmakefile: teTeX-3.0 fix: install .enc in fonts/enc.  Add
13499         2.0.x compatibility.
13500
13501 2005-02-08  Werner Lemberg  <wl@gnu.org>
13502
13503         * mf/feta-din-code.mf: Format; clean up code.
13504         Replace `---' with `--' plus explicit path directions.
13505         (linethickness#, stafflinethickness#): Remove.
13506         ("dynamic f"): Replace `draw' with `draw_rounded_block'.
13507         ("dynamic s"): Improve shape.
13508         ("dynamic p"): Improve shape.
13509         Replace `draw' with better outline approximation.
13510         ("dynamic r"): Improve shape.
13511         Don't call `fill' and `draw' at the same time.
13512
13513 2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
13514
13515         * SConstruct (symlink):
13516         * GNUmakefile.in ($(builddir)/share/lilypond-force): teTeX-3.0
13517         build fix: add enc symlink.
13518
13519         * lily/general-scheme.cc: Compile fixes: include wchar.h, string.h.
13520
13521         Support for DESTDIR besides prefix=/foo
13522
13523         * vim/GNUmakefile (local-install): Use $(INSTALL) -d iso mkdir.
13524
13525         * stepmake/stepmake/*.make:
13526         * */GNUmakefile:
13527         * GNUmakefile.in: Prepend $(DESTDIR) to installation directory.
13528
13529         * config.make.in (prefix): Remove broken $(DESTDIR) hack.
13530
13531         * stepmake/aclocal.m4: Use %0.f iso %d to quiet gawk < 3.1.4 and
13532         mawk in fontforge (date) test.
13533
13534 2005-02-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13535
13536         * scm/font.scm (make-century-schoolbook-tree): add NCS as
13537         font-family=roman. Add Luxi Sans as sans
13538
13539 2005-02-07  Graham Percival  <gperlist@shaw.ca>
13540
13541         * Documentation/user/notation.itely: add warning about
13542         percent repeats and Voice contexts.
13543
13544         * Documentation/user/lilypond-book.itely: clarified the
13545         necessity of dvips -u arguments.
13546
13547 2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
13548
13549         * THANKS: Added a bunch of bug hunters.
13550
13551 2005-02-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13552
13553         * scm/framework-ps.scm (output-preview-framework): bugfix.
13554
13555         * ly/chord-modifiers-init.ly (ignatzekExceptionMusic): use unicode
13556         o/ for chord modifier..
13557
13558         * lily/general-scheme.cc (LY_DEFINE): new function ly:wide-char->utf-8.
13559
13560         * lily/drum-note-performer.cc:  remove unused (thanks Michael
13561         Welsh Duggan). 
13562
13563 2005-02-06  Jan Nieuwenhuizen  <janneke@gnu.org>
13564
13565         * Documentation/user/changing-defaults.itely (Text encoding): Clarify.
13566
13567         * ly/titling-init.ly: Do not also print intstrument in header on
13568         first page.  Do not print page number on first and only page.
13569
13570 2005-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13571
13572         * input/regression/*.ly: remove old-relative everywhere
13573
13574         * lily/music-sequence.cc (simultaneous_relative_callback): do
13575         what-if analysis on copy, not on original. Fixes old-relative
13576         compatibility.
13577
13578         * scm/backend-library.scm (postscript->png): space before
13579         --verbose.
13580         
13581 2005-02-05  Werner Lemberg  <wl@gnu.org>
13582
13583         * mf/feta-autometric.mf (fet_beginchar): Check whether `feta_group'
13584         is defined.
13585
13586         * mf/feta-alphabet.mf: Define `staffsize#'.
13587         Include `feta-params.mf'.
13588         s/staffheight/design_size/.
13589
13590         * mf/feta-alphabet??.mf: s/staffheight/design_size/.
13591
13592         * mf/feta-alphabet26.mf: Fix a serious bug (design size off by 8pt).
13593
13594         * mf/feta-nummer-code.mf: Reformatted.
13595         (draw_six): Use outline intersection to avoid a self-intersecting
13596         path.
13597         ("Numeral comma"): Fix serious outline glitches.  This slightly
13598         changes the glyph shape.
13599         ("Numeral dash"): Use `draw_rounded_block'.
13600         ("Numeral dot"): Use `drawdot'.
13601         ("Numeral 1"): Assure identical tangent directions for the
13602         intersection points of paths.  The glyph shape improvement is only
13603         visible at very high magnifications.
13604         ("Numeral 2"): Use `solve' macro to make the lower right part of
13605         the glyph outline touch the x axis exactly.  This changes the
13606         glyph shape.
13607         Minor fixes for better overlap removal support.
13608         ("Numeral 4"): Make lefter corner `rounder'.
13609         ("Numeral 5"): Assure identical tangent directions for the
13610         intersection points of paths.  This improves the glyph shape at
13611         high magnifications.
13612         ("Numeral 7"): Use `solve' macro to make the upper right part of
13613         the glyph outline touch the metrics box exactly.  This changes the
13614         glyph shape.
13615         Avoid corner in the upper left part of the glyph (causing a minor
13616         shape change).
13617
13618         * mf/feta-ital-*.mf: Removed.  Unused.
13619
13620 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13621
13622         * VERSION (PATCH_LEVEL): release 2.5.11
13623
13624         * input/regression/fill-line-test.ly: new file.
13625
13626         * buildscripts/gen-emmentaler-scripts.py (i): insert dash in
13627         emmentaler name, eg. emmentaler-23. 
13628
13629 2005-02-04  Christian Hitz  <chhitz@gmx.net>
13630
13631         * scm/scm/define-markup-commands.scm (fill-line): rework for better
13632         alignment with centered texts
13633
13634         * scm/stencil.scm (stack-stencils-padding-list): new function, takes a
13635         list of paddings
13636
13637 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13638
13639         * mf/GNUmakefile ($(outdir)/lilypond.map): add aybabtu to .map file.
13640
13641         * lily/note-column.cc (translate_rests): call flush_extent_cache()
13642         of parents when translating rests. Fixes: c-chord-rest.ly 
13643
13644         * lily/include/dimension-cache.hh (struct Dimension_cache): add
13645         dimension_callback_ member.
13646
13647         * lily/grob.cc (flush_extent_cache): new function. Force recompute
13648         of extents.
13649
13650 2005-02-04  Jan Nieuwenhuizen  <janneke@gnu.org>
13651
13652         * all but lily/*: The grand 2004/2005 replace.
13653
13654 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13655
13656         * lily/*: add space after ,  
13657
13658         * scm/music-functions.scm (has-request-chord): don't use
13659         ly:music-name anywhere. Fixes <<\\>> notation. 
13660
13661         * scm/define-markup-commands.scm (box): use font-size for
13662         padding. Fixes boxed-rehearsal-marks.ly
13663
13664         * lily/parser.yy (assignment_id): allow LYRICS_STRING as
13665         identifier definition too, so foo = \lyrics { ...   } bar = #1
13666         doesn't complain about "bar" being LYRICS_STRING.
13667
13668         * lily/paper-def.cc (find_pango_font): new routine; Store
13669         pango_fonts in hash tab too. This is necessary for retrieving
13670         Pango_fonts::physical_font_tab() later on.
13671  
13672         * lily/pango-font.cc (pango_item_string_stencil): bugfix: don't
13673         crash if psname is null.
13674
13675         * lily/lily-guile.cc (ly_hash2alist): new function
13676
13677         * Documentation/user/changing-defaults.itely (Text encoding):
13678         rewrite. 
13679
13680         * lily/pango-font.cc (physical_font_tab): new member. Store PSname
13681         -> font_filename mapping.
13682
13683         * lily/pango-font-scheme.cc (LY_DEFINE): new file. New function
13684         ly_pango_font_physical_fonts
13685
13686         * scm/framework-ps.scm (supplies-or-needs): extract names from
13687         physical Pango_fonts.
13688
13689         * utf8.ly: new file.
13690
13691 2005-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13692
13693         * Documentation/user/changing-defaults.itely (Page layout): add
13694         doco about systemSeparatorMarkup.
13695
13696         * scm/page-layout.scm (default-page-make-stencil): add-to-page
13697         function.
13698         (default-page-make-stencil): insert system separators.
13699
13700         * scm/define-markup-commands.scm (hcenter): add
13701         (beam): add.
13702
13703 2005-02-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13704
13705         * scm/output-ps.scm (ez-ball): reinstate ez notation.
13706
13707 2005-02-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13708
13709         * lily/main.cc: Spell backend consistently.  Sort options.
13710
13711 2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13712
13713         * scripts/lilypond-book.py (Module): revert @include.
13714         
13715 2005-01-31  Jan Nieuwenhuizen  <janneke@gnu.org>
13716
13717         * scripts/lilypond-book.py: Resurrect HTML links to .ly source.
13718         Bugfix: @include .tex (not .texi).  Small cleanups.
13719
13720         * stepmake/bin/add-html-footer.py (i18n): New function.
13721
13722 2005-01-31  Werner Lemberg  <wl@gnu.org>
13723
13724         * mf/feta-nummer.mf: Removed.  Unused.
13725
13726 2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13727
13728         * lily/ : 2004 -> 2005 s&r
13729
13730         * scm/file-cache.scm (cached-file-contents): add file. Read each
13731         file only once.
13732
13733         * scm/font.scm (add-pango-fonts): change order. Medium weight is
13734         now default.
13735
13736         * VERSION: release 2.5.10
13737         
13738         * mf/GNUmakefile (INSTALLATION_OUT_FILES4): install cff.ps files.
13739
13740         * make/ly-rules.make ($(outdir)/%.texi): detect new EOF marker.
13741
13742         * scm/framework-ps.scm (dump-stencil-as-EPS): robustness: ensure
13743         that both X and Y extents of bbox are non-nil.
13744
13745 2005-01-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13746
13747         * scm/chord-name.scm (alteration->text-accidental-markup): change
13748         - to . 
13749
13750         * scm/output-ps.scm (utf8-string): add utf8-string for completeness.
13751
13752         * scm/framework-ps.scm (dump-stencil-as-EPS): new function
13753
13754         * Documentation/user/invoking.itely (Invoking lilypond): add note
13755         about EPS backend.
13756
13757         * scm/framework-eps.scm: new file: create per-system/per-page EPS
13758         files for inclusion in lilypond-book document.
13759
13760         * input/tutorial/lbook-latex-test.tex: rename from lilbook.tex
13761
13762         * input/tutorial/lbook-texi-test.texi: new file.
13763
13764         * scm/safe-lily.scm (safe-objects): add
13765         {begin,end}-of-line-(in)?visible as safe.
13766  
13767 2005-01-30  Graham Percival  <gperlist@shaw.ca>
13768
13769         * Documentation/user/changing-defaults.itely: fixed example
13770         of (dynamics).
13771
13772 2005-01-29  Graham Percival  <gperlist@shaw.ca>
13773
13774         * lily/main.cc: fix info about -o=FILE.
13775
13776 2005-01-29  Werner Lemberg  <wl@gnu.org>
13777
13778         * mf/feta-toevallig.mf ("Natural"): Completely changed the
13779         construction to assure smooth transition from straight to curved
13780         lines.
13781
13782 2005-01-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13783
13784         * lily/stencil.cc (moved_to_edge): don't halt on adding empty
13785         stencils.
13786
13787         * ps/lilyponddefs.ps: add start-page, start-system doesn't
13788         translate to top of page. Fixes alignment problems of
13789         lilypond-generated EPS files.
13790
13791 2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13792
13793         * scm/part-combiner.scm (analyse-spanner-states): trigger on
13794         crescendo-end as well, since Decrescendo maybe ended with Stop
13795         Crescendo.). Fixes: partcombine-diminuendo.ly
13796
13797         * scm/script.scm (default-script-alist): swap portato symbols.
13798
13799         * lily/instrument-name-engraver.cc (acknowledge_grob): typo.
13800
13801         * lily/paper-outputter-scheme.cc (LY_DEFINE):
13802         ly:outputter-port. New function.
13803
13804         * scm/framework-ps.scm (output-classic-framework): dump a
13805         -systems.texi too
13806         (output-classic-framework): dump multiple systems on an "infinite"
13807         page EPS including fonts. 
13808
13809         * scripts/lilypond-book.py (Lilypond_snippet.ly_is_outdated): use
13810         .eps files for both texi and tex formats. Use PNG coming from
13811         lilypond.
13812         
13813 2005-01-28  Graham Percival  <gperlist@shaw.ca>
13814
13815         * Docuemntation/user/invoking.itely: fix info about -o=FILE.
13816
13817         * scripts/lilypond-latex.py: fix info about -o=FILE.
13818
13819 2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13820
13821         * ly/generate-embedded-cff.ly: write .cff.ps files.
13822
13823         * mf/GNUmakefile ($(outdir)/lilypond.map): add .cff.ps to .map file.
13824
13825         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
13826         $(outdir)/%.svg $(outdir)/%.pfa): remove --simplify
13827
13828 2005-01-28  Jan Nieuwenhuizen  <janneke@gnu.org>
13829
13830         * lily/include/guile-compatibility.hh (SCM_VECTOR_P): Compile fix.
13831
13832 2005-01-28  Werner Lemberg  <wl@gnu.org>
13833
13834         * mf/feta-macros.mf (soft_start_penstroke, soft_end_penstroke): New
13835         macros.
13836         (draw_bulb): Improved.
13837
13838         * mf/feta-pendaal.mf ("Pedal asterisk"): Remove workaround for
13839         metapost bug.
13840         (draw_pedal_P): Use soft_end_penstroke.
13841         (draw_pedal_d): Use soft_start_penstroke.
13842
13843         * mf/feta-schrift.mf ("Trill (`tr')"): Remove redundant point in
13844         path.
13845         ("Varied Coda"): Move some points to avoid fontforge warnings.  This
13846         doesn't change the glyph shape.
13847
13848         * mf/feta-accordion.mf ("accOldEE"): Draw glyph differently (without
13849         changing the shape) to avoid fontforge warnings.
13850
13851         * mf/feta-klef.mf (draw_tab_T, draw_tab_A, draw_tab_B): Use
13852         soft_end_penstroke and fix glyph shape.
13853
13854 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13855
13856         * lily/*.cc: Scheme deprecation of SCM_VECTOR_* 
13857
13858 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13859
13860         * scm/define-markup-commands.scm (line): filter out empty stencils
13861         from line command.
13862
13863         * lily/stencil-scheme.cc (LY_DEFINE): only allow finite real
13864         amount.
13865
13866 2005-01-27  Graham Percival  <gperlist@shaw.ca>
13867
13868         * Documentation/user/notation.itely: added info about what
13869         \voiceFoo does.  Also rewrote warning about marks at
13870         a line break.
13871
13872         * Documentation/user/changing-defaults.itely: added info
13873         about putting dynamics in parenthesis and brackets.
13874
13875 2005-01-27  Werner Lemberg  <wl@gnu.org>
13876
13877         * mf/feta-schrift.mf ("Trill (`tr')"): Fix typo.
13878
13879 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13880
13881         * mf/feta-schrift.mf: reverse u and d portato. Fixes:
13882         portato-direction.ly
13883
13884         * lily/beam.cc (consider_auto_knees): add beam height to
13885         threshold. Fixes: knee-multiple-beam.ly
13886
13887         * lily/instrument-name-engraver.cc (acknowledge_grob): also ignore
13888         pedal line spanners. Fixes: instrument-center-pedal.ly
13889
13890         * lily/auto-beam-engraver.cc (acknowledge_grob): stop beam
13891         if encountering barline. Fixes: auto-beam-repeat.ly
13892
13893 2005-01-26  Werner Lemberg  <wl@gnu.org>
13894
13895         * mf/feta-slag.mf (draw_trillelement): Fix shape to get clean
13896         overlapping.
13897
13898         * mf/feta-toevallig.mf (draw_meta_sharp): Fix shape to avoid curves
13899         with inflections for the 1/2 sharp glyph.
13900
13901         * mf/feta-schrift.mf ("Trill (`tr')"): Fix start position of
13902         connection between `t' and `r'.
13903         Unify bulb with the rest of `r' to avoid grazing outlines which
13904         confuses the overlap removal algorithm of fontforge.
13905
13906         * mf/feta-bolletjes.mf (draw_slash): Fix shape to avoid curves with
13907         inflections.
13908         (draw_cross): Fix shape to have uniform thickness in corners.
13909
13910         * mf/feta-pendaal.mf (draw_pedal_P): Break shape into smaller pieces
13911         to avoid an uneven number of self-intersections; this confuses
13912         fontforge.
13913         Fix a slight bug in the shape at left bottom (which is visible only
13914         at high magnifications).
13915         `Center' the stem horizontally to avoid overlapping.
13916
13917 2005-01-24  Werner Lemberg  <wl@gnu.org>
13918
13919         * mf/feta-autometric.mf (fet_beginfont): Set font_coding_scheme
13920         to `asis'.
13921         (fet_begingroup): Save group name in string `feta_group'.
13922         (fet_endgroup): Updated.
13923         (fet_beginchar): Emit `glyph_name' special for mf2pt1.
13924
13925         * mf/feta-bolletjes.mf: s/p/pat/ for paths.
13926
13927         * mf/feta-pendaal.mf ("Pedal asterisk"): Add workaround for bug
13928         in metapost.
13929
13930 2005-01-24  Graham Percival  <gperlist@shaw.ca>
13931
13932         * Documentation/user/notation.itely: really minor editing.
13933
13934 2005-01-22  Graham Percival  <gperlist@shaw.ca>
13935
13936         * Documentation/user/examples.itely: minor editing.
13937
13938         * Documentation/user/changing-defaults.itely: minor editing.
13939
13940         * Documentation/user/notation.itely: clarified info on polyphony
13941         and \addlyrics.
13942
13943 2005-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
13944
13945         * scm/output-gnome.scm: 
13946         * scm/output-svg.scm:
13947         * scm/lily-library.scm (font-name-style): Update font name
13948         kludging for fontconfig use.
13949
13950 2005-01-20  Erlend Aasland  <erlenda@gmail.com>
13951
13952         * scm/define-markup-commands.scm: Document right-align and
13953         larger markup commands. Remove "TODO" from the topmost comment
13954         "each markup function should have a doc string." More consistent
13955         use of new-lines.
13956
13957 2005-01-22  Graham Percival  <gperlist@shaw.ca>
13958
13959         * Documentation/user/changing-defaults: removed info about
13960         copyright symbol, since it's likely to change soon.
13961         Added info about betweensystemspace.
13962
13963         * Documentation/user/notation.itely: minor fixes.
13964
13965         * Documentation/user/lilypond.tely,
13966         Documentation/user/music-glossary.tely: changed copyright
13967         date to 2005 instead of 2004.
13968
13969         * input/test/volta-chord-names.ly: added old example back.
13970
13971 2005-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13972
13973         * mf/feta-beugel.mf: use design size 20 (not 15).
13974
13975         * mf/aybabtu.pe.in: scale brace fonts to design sizes.
13976         change name to aybabtu completely
13977
13978 2005-01-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13979
13980         * buildscripts/gen-emmentaler-scripts.py (outdir): add
13981         design_size to fontname
13982
13983 2005-01-19  Werner Lemberg  <wl@gnu.org>
13984
13985         * mf/feta-accordion.mf, mf/feta-klef.mf, mf/feta-pendaal.mf,
13986         mf/feta-schrift.mf: s/p/pat/ if a path variable.
13987
13988         * mf/feta-autometric.mf (set_char_box): Add code which emits
13989         specials for mf2pt1 if run with metapost.
13990         (to_bp): New macro for mf2pt1.
13991
13992 2005-01-18  Graham Percival  <gperlist@shaw.ca>
13993
13994         * Documentation/user/changing-defaults: added info on
13995         creating a copyright symbol.
13996
13997 2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13998
13999         * VERSION: release 2.5.9
14000         
14001 2005-01-18  Erlend Aasland  <erlenda@gmail.com>
14002
14003         * scm/auto-beam.scm: Simplify score-override-auto-beam-setting
14004
14005         * Documentation/user/notation.itely: Document
14006         score-override-auto-beam-setting Fix documentation for
14007         revert-auto-beam-setting.
14008
14009 2005-01-18  Werner Lemberg  <wl@gnu.org>
14010
14011         * scm/framework-ps.scm (ps-embed-cff): Fix DSC comments.
14012         (procset): New function to define a procset resource.
14013         (ps-embed-pfa): New function to define a font resource.
14014         (setup): New function to define a `Setup' environment.
14015         (preamble): Use new functions.
14016
14017         * ps/lilypond.defs (init-lilypond-parameters): New function to
14018         get rid of directly executed PS code.  Used in scm/framework-ps.scm.
14019
14020 2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14021
14022         * mf/GNUmakefile (MFTRACE_FLAGS): add --no-afm to MFTRACE_FLAGS
14023
14024 2005-01-17  Erlend Aasland  <erlenda@gmail.com>
14025
14026         * scm/define-markup-commands.scm: Change number->markletter-string
14027         to take two arguments (vector number). Add number->mark-alphabet-vector
14028         and markalphabet markup command.
14029
14030         * scm/translation-functions.scm: Add format-mark-box-alphabet,
14031         format-mark-alphabet, format-mark-box-barnumbers and
14032         format-mark-barnumbers. Fix bug in format-mark-box-numbers.
14033
14034 2005-01-17  Graham Percival  <gperlist@shaw.ca>
14035
14036         * Documentation/user/examples.itely: add SATB automatic piano
14037         reduction template.
14038
14039         * Documentation/user/notation.itely: added info about changing
14040         partcombine texts.  Also adds examples of alternate lyrics.
14041
14042         * Documentation/user/changing-defaults.itely: added warning
14043         about \RemoveEmptyStaffContext overriding previous changes.
14044
14045 2005-01-17  Werner Lemberg  <wl@gnu.org>
14046
14047         * buildscripts/mf-to-table.py: Use `FetaAlphabetEncoding' for
14048         feta-alphabet*.
14049
14050 2005-01-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14051
14052         * python/lilylib.py (make_ps_images): don't do final showpage for
14053         multi-page documents.
14054         
14055         * VERSION (MY_PATCH_LEVEL): release 2.5.8
14056
14057 2005-01-16  Graham Percival  <gperlist@shaw.ca>
14058
14059         * Documentation/user/lilypond.tely: changed order of appendices;
14060         unified index should be last.
14061
14062         * Documentation/user/notation.itely: add example of key signatures
14063         and info about Staff.printKeyCancellation.
14064
14065 2005-01-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14066
14067         * lily/include/repeated-music.hh (class Repeated_music): change
14068         into "namespace" class.
14069
14070         * lily/event.cc: remove Key_change_event.
14071
14072         * lily/include/transposed-music.hh (class Transposed_music): remove.
14073
14074         * lily/transposed-music.cc: remove
14075
14076         * lily/include/relative-music.hh: remove.
14077
14078         * lily/include/music-sequence.hh (struct Music_sequence): change
14079         into "namespace" class.
14080
14081         * lily/untransposable-music.cc (Module): remove
14082
14083         * lily/include/un-relativable-music.hh (Module): remove
14084
14085         * lily/include/untransposable-music.hh (Module): remove
14086
14087         * lily/include/music-list.hh (Module): remove file
14088
14089         * lily/un-relativable-music.cc: remove file.
14090
14091 2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
14092
14093         * lily/parser.yy: Compile fix.
14094
14095 2005-01-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14096
14097         * lily/include/music.hh (class Music): unvirtualize transpose().
14098
14099         * lily/sequential-music.cc: remove file.
14100
14101         * lily/include/lyric-combine-music.hh ("music.hh"): remove file.
14102
14103         * lily/slur-scoring.cc (get_best_curve): only switch on
14104         DEBUG_SLUR_SCORING for non NDEBUG builds.
14105
14106         * lily/include/music.hh (class Music): replace Music::start_mom()
14107         by start-callback property
14108
14109         * lily/include/grace-music.hh: remove file. 
14110
14111         * lily/stem.cc (height): robustness fix.
14112
14113         * lily/time-scaled-music.cc: remove file.
14114
14115         * lily/include/music.hh (class Music): include SCM init argument.
14116         (class Music): replace Music::get_length() virtual by
14117         length-callback property everywhere.
14118
14119         * scripts/convert-ly.py (conv): add  # to \property scalar value.
14120
14121         * mf/GNUmakefile: don't install *list.ly
14122
14123 2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
14124
14125         * mf/GNUmakefile (CFF_FILES): Bugfix: only big cheeses and braces.
14126
14127 2005-01-12  Werner Lemberg  <wl@gnu.org>
14128
14129         This patch addresses the following problems in the feta sources
14130         files which contribute to the fetaXX fonts.
14131
14132         . Many fixes for rasterization at low resolutions (consistent use of
14133           `vround' and `hround', integer shift values for paths, applying
14134           `eps' for mirrored paths, use of `define_whole_pixels' and
14135           friends, etc.) -- while this probably looks like a waste of time
14136           it has revealed deficiencies in some glyph shapes.  See comment at
14137           the end of feta-params.mf how vertical symmetry is achieved.
14138
14139         . The `---' operator has been replaced everywhere with `--'; this
14140           both improves and considerably reduces the font size after
14141           conversion with mf2pt1.
14142
14143         These change aren't explicitly mentioned below since virtually all
14144         glyphs are affected.
14145
14146         Other notable differences:
14147
14148         . Glyphs from feta-accordion.mf now have charboxes around the
14149           outline.
14150
14151         . Fixed incorrect charbox for `accDot'.
14152
14153         . The `rcomma' and `lcomma' glyphs were distorted due to a typo.
14154
14155         . Fixed position of the bow in the `upprall' glyph and its siblings.
14156
14157         . The bulb size in the `2/2 meter' and `4/4 meter' glyphs is now
14158           dependent on the staff line thickness to avoid touching the middle
14159           staff line at smaller sizes.
14160
14161         . Largely extended output for feta-testXX: Where useful, glyphs
14162         are shown both between and on staff lines.
14163
14164
14165         * mf/feta-params.mf (staff_space_rounded,
14166         stafflinethickness_rounded, linethickness_rounded,
14167         ledgerlinethickness_rounded, stemthickness_rounded): New variables.
14168         Update all code which uses them where appropriate.
14169         (feta_eps, feta_shift, feta_space_shift, feta_offset, feta_fillpen):
14170         New variables used to control rasterization at low resolutions.  Set
14171         to zero if feta code is processed with metapost.
14172
14173         * mf/feta-macros.mf (draw_staff, draw_staff_outline): Updated.
14174         (draw_rounded_block, draw_square_block): Updated to use `--' only.
14175         (flare_path): Updated.
14176         Make it work with `filldraw' (but only circular pens).
14177         (hfloor, vfloor, hceiling, vceiling): New macros.
14178
14179         * mf/feta-accordion.mf ("accDiscant", "accFreebase", "accStdbase"):
14180         Use `draw' again in mf mode to have good pixel dropout control.
14181         Fix intersection points of horizontal lines with circle.
14182         ("accDot"): Fix parameters for set_char_box.
14183         ("accOldEE"): Use `draw' again in mf mode to have good pixel dropout
14184         control.
14185
14186         * mf/feta-banier.mf: Updated.
14187
14188         * mf/feta-bolletjes.mf (remember_pic): New variable, used for
14189         testing.
14190         (undraw_inside_ellipse): Remove `center' argument.  Update all
14191         callers.
14192         (draw_brevis): New macro, called by "Brevis notehead".
14193         (draw_whole_triangle_head): New macro, called by "Whole
14194         trianglehead".
14195         (draw_small_triangle_head): Use `filldraw'.
14196
14197         * mf/feta-eindelijk.mf: Remove useless global group.
14198         Updated.
14199
14200         * mf/feta-klef.mf (draw_c_clef): Correct point positions for using
14201         `filldraw'.
14202
14203         * mf/feta-pendaal.mf: Updated.
14204
14205         * mf/feta-puntje.mf: Updated.
14206
14207         * mf/feta-schrift.mf (draw_very_long_fermata): Simplified to use
14208         less points.
14209         ("Flageolet"): Use `draw' again in mf mode to have good pixel
14210         dropout control.
14211         ("Varied Coda"): Use `draw_block'.
14212         (draw_comma): Fix typo.
14213         (draw_arpeggio_arrow): Use `draw' also in mf mode to have good
14214         pixel dropout control.
14215
14216         * mf/feta-slag.mf ("upprall", "downprall", "lineprall"): Fix start
14217         position of bow.
14218
14219         * mf/feta-timesig.mf (draw_C): Reduce bulb size for smaller design
14220         sizes.
14221
14222         * mf/feta-toevallig.mf (remember_pic): New variable, used for
14223         testing.
14224         (draw_meta_sharp): Much simplified.
14225         ("Sharp", "1/2 Sharp", "3/4 Sharp"): Don't rotate but shift.
14226
14227         * mf/feta-test-generic.mf: Include all files as in feta-generic.mf.
14228
14229 2005-01-13  Mats Bengtsson  <mabe@s3.kth.se>
14230
14231         * Documentation/user/notation.itely (Ancient rests): Fix typo
14232         (thanks Anthony)
14233
14234 2005-01-13  Jan Nieuwenhuizen  <janneke@gnu.org>
14235
14236         * scm/auto-beam.scm (score-override-auto-beam-setting): New function.
14237
14238         * lily/main.cc (setup_paths): Add cff.
14239
14240         * mf/GNUmakefile (foe): Include actual target %.cff.
14241         (INSTALLATION_OUT_SUFFIXES): Install CFF and SVG fonts too.
14242
14243 2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14244
14245         * lily/include/lily-lexer.hh (class Lily_lexer): lose hungarian _b
14246         suffix for main_input_b_.
14247
14248         * scm/music-functions.scm (toplevel-music-functions):
14249         precompute music lengths for music expressions.  
14250
14251 2005-01-11  Nicolas Sceaux  <nicolas.sceaux@free.fr>
14252
14253         * lily/include/input.hh (class Input): new `end_' slot for end of
14254         input. Renamed defined_str0_ to start_.
14255
14256         * lily/input.cc (Input): Add Input::Input (Input const &) and
14257         remove Input::Input (Source_file*, char const *). Use the new
14258         slots.
14259         (set_location): method used by bison to propagate input
14260         locations (YYLLOC_DEFAULT).
14261         (end_line_number, end_column_number, step_forward): new methods
14262         
14263         * lily/input-scheme.cc (ly:input-both-locations): new function,
14264         similar to ly:input-location, but also return the end line and
14265         column.
14266
14267         * lily/include/includable-lexer.hh: 
14268         * lily/includable-lexer.cc: 
14269         * lily/include/lily-lexer.hh (class Lily_lexer): 
14270         * lily/lily-lexer.cc (add_lexed_char): Move add_lexed_char from
14271         Includable_lexer to Lily_lexer, in order to update lexloc (the
14272         yylloc), a new slot of Lily_lexer.
14273         (here_input, LexerError): simplify by using the lexloc slot (aka
14274         yylloc)
14275
14276         * lily/lexer.ll: #define yylloc to use input locations (it may
14277         be useless here?). Fixed the #embedded_scm rule (step the location
14278         forward in order to skip the sharp sign before parsing the scheme
14279         expression)
14280
14281         * lily/include/lily-parser.hh (class Lily_parser): 
14282         * lily/lily-parser.cc: Remove push_spot(), pop_spot() and
14283         here_input()
14284         (parser_error): overload for more precise locations of errors.
14285
14286         * lily/parser.yy (YYLTYPE): set location type to Input
14287         (YYLLOC_DEFAULT): use Input::set_location()
14288         (yylex): add the YYLTYPE* location parameter.
14289         Clean push_spot()/pop_spot()/here_input(), and use @$, @1, etc.
14290         Give an Input parameter to THIS->parser-error() for more accurate
14291         messages.
14292
14293 2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14294
14295         * stepmake/aclocal.m4: do NDEBUG for optimizing builds.
14296
14297         * lily/include/beam.hh (DEBUG_QUANTING): performance: only switch
14298         on BEAMQUANTING for non-NDEBUG builds.
14299
14300         * lily/stem.cc (head_count): performance: avoid String::String()
14301         inside oft called function.
14302
14303 2005-01-09  Graham Percival  <gperlist@shaw.ca>
14304
14305         * Documentation/user/examles.itely: attempted fix for broken
14306         string quartet template.
14307
14308         * Documentation/user/notation.itely: remove unnecessary broken
14309         link.
14310
14311 2005-01-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14312
14313         * VERSION (PACKAGE_NAME): release 2.5.7
14314
14315 2005-01-09  Jan Nieuwenhuizen  <janneke@gnu.org>
14316
14317         * config.make.in (METAFONT): Append -progname=mf, fixes use with
14318         mf-nowin for teTeX-3.0.  Backportme.
14319
14320         * scm/output-svg.scm (utf8-string): New function.
14321
14322         * scm/output-gnome.scm (utf8-string): New function.
14323         (otf-name-mangling): Remove.
14324
14325         * lily/pango-font.cc (Pango_font): Use font string iso font
14326         filename for utf8-text.
14327
14328         * buildscripts/gen-emmentaler-scripts.py: Remove designsize from
14329         name.
14330
14331 2005-01-08  Graham Percival  <gperlist@shaw.ca>
14332
14333         * Documentation/user/notation.itely: add info about
14334         Staff.extraNatural = ##f in Pitches section.  Also
14335         fixed some minor issues in the Vocal music section.
14336
14337 2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14338
14339         * scm/output-ps.scm (white-text): comment out Helvetica font,
14340         which is broken for my GS install.
14341
14342         * lily/pango-font.cc (pango_item_string_stencil): use ink_rect,
14343         which provides a tighter bbox.
14344
14345         * scm/define-grobs.scm (all-grob-descriptions): remove all
14346         extra-offsets from definitions.
14347
14348 2005-01-08  Erlend Aasland  <erlenda@gmail.com>
14349
14350         * scm/output-lib.scm: Rename guitar-tunings to guitar-tuning and
14351         add tuning for 4-string bass and some common 4/5-string banjo
14352         tunings.  New function (four-string-banjo) turns a 5-string tuning
14353         into a 4-string tuning.  New function
14354         (fret-number-tablature-format-banjo) computes correct fret numbers
14355         on 5-string banjos.
14356
14357         * ly/engraver-init.ly: Default stringTunings = #guitar-tuning
14358         Add beam correction to TabVoice.
14359
14360         * scm/define-grobs.scm: Adjust notehead offset. Print fret numbers
14361         using bold font; makes tabs more readable.
14362
14363 2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14364
14365         * lily/font-select.cc (get_font_by_design_size): don't make
14366         Modified_font_metric; this causes trouble, since we don't know the
14367         font magnification from inside Pango_font::text_stencil()
14368
14369         * lily/all-font-metrics.cc (find_pango_font): take magnification argument.
14370
14371         * Documentation/user/notation.itely (The Lyrics context): comment out
14372         broken {Small ensembles} link.
14373
14374         * scm/framework-svg.scm (output-framework): change calling convention.
14375
14376         * lily/object-key-dumper-scheme.cc: new file.
14377
14378         * lily/object-key-undumper-scheme.cc: new file.
14379
14380         * lily/tweak-registration-scheme.cc: new file.
14381
14382         * lily/pango-select.cc (symbol_to_pango_variant): init local variable.
14383
14384         * Documentation/user/examples.itely (String quartet): uncomment
14385         broken example.
14386
14387         * lily/font-config.cc: new file.
14388
14389 2005-01-08  Jan Nieuwenhuizen  <janneke@gnu.org>
14390
14391         * scm/output-svg.scm: 
14392         * scm/output-gnome.scm: s/bigcheese/emmentaler.
14393
14394         * lily/score-engraver.cc (MUSIC_FONT): Use emmentaler20.
14395
14396 2005-01-07  Jan Nieuwenhuizen  <janneke@gnu.org>
14397
14398         * lily/general-scheme.cc (LY_DEFINE): Use snprintf (WAS: sprintf).
14399         Add headers.
14400
14401         * lily/GNUmakefile (general-scheme.o): Add version.hh dependency.
14402
14403 2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14404
14405         * mf/GNUmakefile (debian-mirror): rename bigcheese to emmentaler.
14406
14407         * lily/include/main.hh: lose _b hungarian suffixes for global
14408         variables.
14409
14410         * lily/include/lily-guile-macros.hh: new file.
14411
14412         * lily/pango-select-scheme.cc (LY_DEFINE): new file.
14413
14414         * lily/general-scheme.cc: new file. 
14415
14416         * lily/font-select.cc (get_font_by_design_size): retrieve
14417         PangoFont for (designsize . "pango-descr") entries.
14418
14419         * lily/lily-parser-scheme.cc: new file.
14420
14421         * lily/output-def-scheme.cc: new file.
14422
14423         * lily/paper-book-scheme.cc: new file.
14424
14425         * lily/duration-scheme.cc (LY_DEFINE): new file.
14426
14427         * lily/pitch-scheme.cc:  new file.
14428
14429         * scm/font.scm (add-cmr-fonts): use real dimens in font selection.
14430
14431 2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14432
14433         * lily/dimensions.cc (LY_DEFINE): add ly:{inch,cm,mm,bp,pt}.
14434
14435 2005-01-06  Graham Percival  <gperlist@shaw.ca>
14436
14437         * Documentation/user/notation.itely: minor editing.
14438
14439         * Documentation/user/changing-defaults: minor editing.
14440
14441         * Documentation/user/examples.itely: add template for
14442         string quartet part extraction; demonstrates tag.
14443
14444 2005-01-06  Erlend Aasland  <erlenda@gmail.com>
14445
14446         * Documentation/user/notation.itely: documents
14447         format-mark-box-letters and format-mark-box-numbers
14448
14449         * scm/define-context-properties.scm: change comment.
14450
14451 2005-01-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14452
14453         * scm/framework-ps.scm (output-classic-framework): new function:
14454         dump systems as separate .eps files (without fonts) and write a
14455         single collecting .tex file.
14456
14457 2005-01-05  Mats Bengtsson  <mabe@s3.kth.se>
14458
14459         * Documentation/user/notation.itely (Setting simple songs):
14460         Correct several errors in the equivalent formulation of
14461         \addlyrics. 
14462         (The Lyrics context): Corrected link to the SATB example.
14463
14464 2005-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14465
14466         * scm/lily.scm (completize-formats): new function
14467         (postprocess-output): new function
14468
14469         * lily/paper-book.cc (classic_output): change calling
14470         convention. Give basename as first argument. 
14471         remove Paper_book::post_processing().
14472
14473         * lily/lily-guile.cc (LY_DEFINE): ly:output-backend, new function.
14474
14475 2005-01-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14476
14477         * lily/paper-outputter.cc (LY_DEFINE): new function
14478         ly:outputter-close.
14479
14480         * lily/main.cc: change --format,-f to --backend,-b
14481
14482         * lily/include/main.hh: rename format to backend.
14483
14484         * scm/translation-functions.scm (format-mark-box-numbers): add.
14485         patch by Erlend Aasland
14486
14487 2005-01-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14488
14489         * lily/pango-font.cc (text_stencil): dump string as
14490         (utf-8-string FONTDESC UTF8) for use in -f gnome, -f svg.
14491
14492 2005-01-03  Jan Nieuwenhuizen  <janneke@gnu.org>
14493
14494         * configure.in (gui_b): Remove handy developer-only
14495         PKG_CONFIG_PATH settings that cater for Jan-and-Han-Wen ~/usr/pkg/
14496         CVS source installations (but break other non-default but correct
14497         PKG_CONFIG_PATH setups), as this is no longer developer-only.
14498
14499         * SConstruct: 
14500         * ps/GNUmakefile (INSTALLATION_FILES): teTeX-3.0
14501         compatibility (backportme).
14502
14503         * GNUmakefile.in: teTeX-3.0 compatibility (backportme).
14504
14505 2005-01-03  Werner Lemberg  <wl@gnu.org>
14506
14507         Prepare glyph shapes for mf2pt1 conversion.
14508
14509         * mf/feta-accordion.mf (accreg_pen): Removed.  No longer used.
14510         (accDiscant, accFreebase, accStdbase): Replace `draw' with
14511         `penstroke'.
14512         (accDot): Use `drawdot'.
14513         (accBayanbase): Replace `draw' with `draw_gridline'.
14514         (print_penpos): Moved to feta-macros.mf.
14515         (accOldEE): Replace `filldraw' with `penstroke'.
14516         Replace `draw' with `penstroke' and `drawdot'.
14517
14518         * mf/feta-banier.mf: Code clean-up.
14519         ("grace dash (up)", "grace dash (down)"): Replace `draw' with
14520         `fill'.
14521
14522         * mf/feta-bolletjes (draw_cross): Remove call to `labels'.
14523
14524         * mf/feta-eindelijk.mf (draw_rest_bulb, draw_eigth_rest): Add
14525         paremeter to control drawing of labels.  Update all callers.
14526
14527         * mf/feta-klef.mf (draw_c_clef): Use `&' not `..' to connect paths.
14528         (new_bulb): Return a bulb as a single path.  To do that, it now
14529         takes some more parameters.  Updated all callers.
14530         (draw_gclef): Major clean-up.  `draw' has been replaced with
14531         `penstroke', unnecessary outlines have been removed.
14532         Remove (unused) gnome-canvas code.
14533
14534         * mf/feta-macros.mf (print_penpos): New macro (from
14535         feta-accordion.mf).
14536         Other minor fixes.
14537
14538         * mf/feta-pendaal.mf ("Pedal asterisk"): Use `undrawdot'.
14539         ("Pedal dot"): Use `drawdot'.
14540         (draw_pedal_P): Add parameter to control drawing of labels.  Update
14541         all callers.
14542         Fix shape at top.
14543         (draw_pedal_e): Add parameter to control drawing of labels.  Update
14544         all callers.
14545         (draw_pedal_d): Add parameter to control drawing of labels.  Update
14546         all callers.
14547         Revert drawing direction.
14548
14549         * mf/feta-schrift.mf (draw_fermata): Use single path.
14550         (draw_short_fermata): Replace `filldraw' with `fill'.
14551         (draw_long_fermata, draw_very_long_fermata): Replace calls to
14552         `draw_rounded_block' with a single path.
14553         ("Thumb"): Draw full circle instead of mirroring segments.
14554         (draw_accent): New macro.
14555         ("> accent", "espr"): Use it.
14556         (draw_marcato): Replace `filldraw' and `draw' with `fill'.
14557         ("open (unstopped)"): Draw full circle instead of mirroring
14558         segments.
14559         (draw_vee): Removed.
14560         ("Upbow"): Use `draw_accent' instead of `draw_vee'.
14561         ("Downbow"): Replace calls to `draw_rounded_block' with a single
14562         path.
14563         ("Trill (`tr')"): Replace overlapping loop drawn with `draw' with
14564         partial pieces drawn with `fill' -- these do still overlap with the
14565         stem of the `t' but just once, not multiple times so that fontforge
14566         can handle it gracefully.
14567         Change other parts of the glyph so that fontforge's overlapping
14568         algorithm reliably works.
14569         (draw_heel): Replace `draw' with `fill'.
14570         (draw_toe): Use `draw_accent' instead of `draw_vee'.
14571         ("Flageolet"): Replace `draw' with `penstroke'.
14572         ("Segno"): Replace `filldraw' with `penstroke'.
14573         Replace `draw' with `drawdot'.
14574         ("Coda"): Replace `fill' with `penstroke', using a single path.
14575         ("Varied Coda"): Use less overlapping paths.
14576         (draw_arpeggio_arrow): Replace `filldraw' with `fill', using a
14577         single path.
14578
14579         * mf/feta-slag.mf (draw_trillelement): Put `clearxy' outside of
14580         group to better control the `labels' command.
14581         Rename argument to `offset' and use it actually.  Update all
14582         callers.
14583         Replace `filldraw' with `fill'.
14584         ("mordent", "prallmordent", "upmordent", "downmordent",
14585         "lineprall"): Replace `draw' with `draw_gridline'.
14586         ("upprall", "downprall"): Replace `draw' with `fill'.
14587
14588         * mf/feta-timesig.mf: Formatting.
14589
14590         * mf feta-toevallig.mf (draw_meta_flag): Move code to draw labels
14591         to...
14592         ("Flat"): Here.
14593         (draw_paren): Move code to draw labels to...
14594         ("Right Parenthesis"): Here.
14595
14596 2005-01-02  Graham Percival <gperlist@shaw.ca>
14597
14598         * Documentation/user/notation.itely: add example of \setTextDecresc
14599         and \setTextDim.
14600
14601 2005-01-02  Tatsuya Ono <tats_ono@infoseek.jp>
14602
14603         * scm/define-markup-commands.scm :  fix glyph-strings of
14604         accidentals and \note-by-number
14605
14606 2005-01-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14607
14608         * VERSION: 2.5.6 released.
14609         
14610         * ps/lilyponddefs.ps: put mm -> pt scaling in here.
14611
14612         * input/regression/new-markup-scheme.ly: oops. font-family=music
14613         -> font-encoding fetaMusic.  
14614
14615         * lily/main.cc: put default to PS.
14616
14617         * lily/tfm.cc: idem.
14618
14619         * lily/afm.cc: idem.
14620
14621         * lily/include/modified-font-metric.hh (struct
14622         Modified_font_metric): remove coding_scheme() method.
14623
14624         * input/mutopia/F.Schubert/morgenlied.ly: convert to utf8
14625
14626         * scripts/convert-ly.py (conv): crash on encountering \encoding.
14627
14628         * input/les-nereides.ly: convert to utf8
14629
14630         * lily/modified-font-metric.cc (text_dimension): idem.
14631
14632         * lily/parser.yy (TODO): idem.
14633
14634         * lily/include/lily-lexer.hh (class Lily_lexer): idem.
14635
14636         * lily/lexer.ll: remove encoding
14637
14638         * scm/framework-ps.scm (output-variables): separately scale the
14639         page to mm 
14640
14641         * lily/pango-font.cc (Pango_font): fix scaling.
14642
14643         * lily/font-metric.cc (design_size): design_size returns a
14644         dimension now as well.
14645
14646 2004-12-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14647
14648         * mf/GNUmakefile ($(outdir)/%.otf-table): use findstring. Fixes
14649         brace generation. 
14650
14651         * lily/text-metrics.cc (LY_DEFINE): use scm_c_make_hash_table().
14652
14653 2004-12-30  Jan Nieuwenhuizen  <janneke@gnu.org>
14654
14655         * mf/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Do not try to
14656         install unbuildable Fontmap and Fontmap.lily (Simon Aridis-Lang).
14657
14658 2004-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14659
14660         * mf/GNUmakefile ($(outdir)/%.otf-table): include parmesan20.lisp
14661         in first run as well.
14662
14663         * scm/paper.scm (layout-set-staff-size): use text-font-size in
14664         dimension less points (ie. 12 = 12 point)
14665
14666         * lily/pango-select.cc (select_pango_font): use find_scaled_font().
14667
14668         * lily/all-font-metrics.cc (find_pango_font): set description_
14669
14670         * lily/pango-font.cc (text_stencil): export size as well.
14671         (text_stencil): fix scaling and extents box.
14672
14673 2004-12-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14674
14675         * Documentation/topdocs/NEWS.texi (Top): add -f texstr
14676
14677         * Documentation/user/invoking.itely (Invoking lilypond): document
14678         texstr
14679
14680         * scripts/convert-ly.py (conv): add ancient rules.
14681
14682         * scm/clef.scm (c0-pitch-alist): replace - with .
14683
14684         * scripts/lilypond-book.py (process_snippets): add texstr support.
14685
14686         * scm/framework-texstr.scm (header): change extension to .textmetrics
14687
14688         * lily/lily-parser.cc (parse_file): do try_load_text_metrics for
14689         -f tex.
14690
14691         * lily/text-metrics.cc: new file.
14692         (try_load_text_metrics): new function
14693
14694         * lily/include/text-metrics.hh: new file.
14695
14696 2004-12-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14697
14698         * lily/include/lily-guile.hh (ly_lily_module_constant): rename
14699         ly_scheme_function to ly_lily_module_constant.
14700
14701         * lily/modified-font-metric.cc (text_dimension): try
14702         lookup_tex_text_dimension() first.
14703
14704         * lily/tfm.cc: new function ly:load-text-dimensions
14705
14706 2004-12-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14707
14708         * scm/output-texstr.scm (text): use \lilygetmetrics
14709
14710         * scm/framework-texstr.scm (header): dump in new format.
14711
14712         * tex/lilypond-tex-metrics: new file.
14713         
14714 2004-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
14715
14716         * lily/pango-font.cc (text_stencil): Quick try at glyph->charcode
14717         mapping.
14718         (index_to_charcode): New method.
14719
14720         * scm/output-ps.scm (glyph-string): 
14721         * scm/output-gnome.scm (glyph-string): Add FONT parameter.
14722
14723 2004-12-26  Jan Nieuwenhuizen  <janneke@gnu.org>
14724
14725         * scm/output-gnome.scm (FIXME-glyph-string): New function.  Cannot
14726         implement fully, need FONT to get to charcode.
14727
14728         * scm/lily.scm (ly:all-stencil-expressions): Add glyph-string.
14729
14730         * scm: Cleanups.
14731
14732         * Documentation/user/changing-defaults.itely: Fix internalsrefs
14733         {Tunable context properties},
14734         {All layout objects},
14735         {Music definitions}.
14736
14737 2004-12-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14738
14739         * VERSION: release 2.5.5
14740         
14741         * lily/main.cc: use TeX as default output format.
14742
14743         * flower/file-path.cc (find): try to open directly as well, so we
14744         find absolute path files. 
14745
14746         * lily/pango-select.cc: new file.
14747
14748         * scm/framework-ps.scm: remove all encoding code. 
14749         load pfb/pfa for PangoFont too.
14750         
14751         * lily/lily-guile.cc (ly_chain_assoc_get): new function.
14752
14753 2004-12-22  Werner Lemberg  <wl@gnu.org>
14754
14755         Prepare glyph shapes for mf2pt1 conversion.
14756
14757         * mf/feta-toevallig.mf ("Double Sharp"): Minor path fix.
14758
14759         * mf/feta-bolletjes.mf (penposx): New auxiliary macro.
14760         (define_triangle_shape): Use it to replace `draw' with `fill' and
14761         `unfill'.  Update all callers.
14762         (draw_slash): Replace `filldraw' with `fill'.  Update all callers.
14763         (draw_cross): Ditto.
14764         ("X-Circled notehead"): Replace `draw' with `fill' and `unfill'.
14765         Use penrazor for better conversion with mf2pt1.
14766         (generic_draw_solfa_note_shape, draw_solfa_note_shape,
14767         draw_solfa_quarter_note_shape, triangle): Removed.  Unused.
14768         (draw_do_head, draw_re_head, draw_mi_head, draw_fa_head,
14769         draw_la_head, draw_ti_head): Replace `filldraw' with
14770         `fill'.  Update all callers.
14771
14772 2004-12-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14773
14774         * lily/paper-book.cc (output): revert: only allow a single output
14775         format.
14776
14777         * lily/include/pango-font.hh: new file.
14778
14779         * lily/pango-font.cc: new file.
14780
14781         * lily/font-metric.cc (text_stencil): new routine
14782
14783         * lily/all-font-metrics.cc (find_pango_font): new routine.
14784
14785         * lily/include/font-metric.hh (struct Font_metric): add
14786         text_stencil()
14787
14788         * configure.in (PKG_CONFIG_PATH): require PANGO_FT2
14789
14790 2004-12-22  Werner Lemberg  <wl@gnu.org>
14791
14792         Prepare glyph shapes for mf2pt1 conversion.
14793
14794         * mf/feta-macros.mf, mf_feta-eindelijk.mf: Some formatting.
14795
14796         * mf/feta-toevallig.mf: Formatting.
14797         (draw_meta_sharp): Modify path to replace `filldraw' with `fill'.
14798         ("Natural"): Fix paths to allow better postprocessing.
14799         (draw_meta_flat): Use `z3l' as additional point in path to get
14800         better conversion with mf2pt1.
14801         Other minor cleanups.
14802         ("3/4 Flat"): Add auxiliary points and modify path to replace
14803         `draw' with `fill'.
14804         ("Double Sharp"): Mirror path segments instead of picture elements
14805         to get a single outline.
14806         Modify path to replace `filldraw' with `fill'.
14807
14808 2004-12-22  Graham Percival  <gperlist@shaw.ca>
14809
14810         * input/test/unfold-all-repeats.ly: added file back.
14811
14812         * Documentation/user/notation.itely,
14813         Documentation/user/programming-interface.itely
14814         Documentation/user/changing-defaults.itely: fixed misc broken
14815         links to input/test/ files.
14816
14817 2004-12-22  Jan Nieuwenhuizen  <janneke@gnu.org>
14818
14819         * tex/texinfo.tex: Update.  We should not be distributing this,
14820         but since we do, use latest version.
14821
14822         * Documentation/user/macros.itexi: Comment-out \fetaflat,
14823         \fetasharp.  Fixes make web.  FIXME: make usable (compatible?) TeX
14824         macros for feta glyphs.
14825
14826 2004-12-22  Graham Percival  <gperlist@shaw.ca>
14827
14828         * Documentation/user/changing-defaults.itely: fix index for set.
14829
14830         * Documentation/user/converters.itely: added convert-ly bugs list
14831         from CVS.
14832
14833 2004-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
14834
14835         * python/lilylib.py (setup_environment): Set GS_FONTPATH, GS_LIB
14836         to empty.  Fixes make web, using gs-gpl-8.01.  In fact,
14837         gs-afpl-8.50 has more trouble with make web (ie, uses *a lot* more
14838         resourses; 3x MAXSIZE, 4x MAXRSS, 1.5x user).
14839
14840         * mf/GNUmakefile (pfa_warning): Use less broken check.
14841
14842         * python/lilylib.py (setup_environment): Remove cruft from
14843         GS_FONTPATH.
14844
14845         * configure.in: Bump mftrace requirement to 1.1.1.
14846
14847 2004-12-20  Jan Nieuwenhuizen  <janneke@gnu.org>
14848
14849         * scm/output-svg.scm (beam): Use polygon.
14850
14851         * scm/lily-library.scm: Bugfix.
14852
14853         * Documentation/user/invoking.itely (Invoking lilypond): Bugfix.
14854
14855         * mf/GNUmakefile (ALL_GEN_FILES): Remove unbuildable Fontmap.lily.
14856
14857 2004-12-19  Werner Lemberg  <wl@gnu.org>
14858
14859         Prepare glyph shapes for mf2pt1 conversion.
14860
14861         * mf/feta-eindelijk: Some formatting.
14862         (multi_rest_x, multi_beam_height): Removed.  Unused.
14863         ("Quarter rest"): Use `intersectiontimes' to create a single
14864         outline.
14865         (rest_crook): Removed.  Unused.
14866         (draw_rest_bulb): Return path (without filling).  Update callers.
14867         Simplified.
14868         (draw_eighth_rest, "16th rest", "32th rest", "64th rest",
14869         "128th rest"): Simplify `pat'.
14870         Create single outline.
14871
14872 2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
14873
14874         * mf/GNUmakefile (ALL_GEN_FILES):
14875         (INSTALLATION_OUT_SUFFIXES): Remove unbuildable fonts.scale.
14876
14877         * scm/output-svg.scm (polygon, draw-line, dashed-line): New
14878         function.
14879
14880 2004-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14881
14882         * scm/output-texstr.scm (placebox): add routine
14883
14884         * VERSION (PACKAGE_NAME): release 2.5.4
14885
14886         * scm/framework-texstr.scm (output-framework): new file.  
14887
14888         * scm/output-texstr.scm: new file. Collect (TEXT . ) calls for TeX
14889         processing.
14890
14891         * Documentation/user/invoking.itely (Invoking lilypond): add SVG
14892
14893         * stepmake/stepmake/metafont-rules.make: make single SVG/PFA/PFB
14894         rule.
14895
14896         * configure.in (gui_b): bump mftrace requirement to 1.1.0
14897
14898         * mf/feta-bolletjes.mf (triangle): add s to 0triangle.
14899
14900         * mf/GNUmakefile (ALL_GEN_FILES): make SVG files too.
14901
14902 2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
14903
14904         * scm/framework-svg.scm (dump-page): Implement landscape.
14905
14906 2004-12-18  Jan Nieuwenhuizen  <janneke@gnu.org>
14907
14908         * lily/main.cc (setup_paths): Add svg to search path.
14909
14910         * scm/output-svg.scm:
14911         * scm/framework-svg.scm: Add pageSet.  Update.
14912         (dump-fonts): New function.
14913         (output-framework): Use it.
14914
14915         * mf/GNUmakefile: 
14916         * buildscripts/gen-bigcheese-scripts.py: Also generate SVG font.
14917
14918 2004-12-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14919
14920         * tex/lilyponddefs.tex: comment out new ifpdf code.
14921
14922 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
14923
14924         * GNUmakefile.in: 
14925         * SConstruct (symlink): Replace afm by otf.
14926
14927         * scm/framework-gnome.scm (gnome-main): Remove invocation of
14928         ly:pango-add-afm-decoder.
14929
14930         * lily/lily-guile.cc ("ly:pango-add-afm-decoder"): Build fix: Remove.
14931
14932 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14933
14934         * scm/output-ps.scm (new-text): don't access t glyph for getting
14935         space dimension.
14936
14937         * ly/init.ly: warn about \version
14938
14939         * lily/lexer.ll: set version-seen?
14940
14941 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
14942
14943         * scm/output-svg.scm (string->entities): Update.
14944
14945 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14946
14947         * lily/main.cc (setup_paths): replace afm by otf for path. 
14948
14949         * lily/pangofc-afm-decoder.cc: remove.
14950
14951         * lily/include/pangofc-afm-decoder.hh: remove.
14952
14953         * scm/framework-scm.scm (output-framework): new file.
14954
14955         * mf/GNUmakefile: remove SAUTER_FONTS.
14956         remove SVG/sodipodi hacks.
14957
14958         * scm/lily-library.scm (stderr): move stderr.
14959
14960         * mf/GNUmakefile: remove AFM support.
14961
14962         * buildscripts/mf-to-table.py (base): remove AFM support.
14963
14964         * lily/open-type-font.cc (design_size): use design_size
14965
14966 2004-12-17  Pedro Kroger  <kroeger@pedrokroeger.net>
14967
14968         * lily/font-metric.cc (LY_DEFINE): Fix the docstring.
14969
14970 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
14971
14972         * mf/GNUmakefile: Generate combined aybabtu info.
14973         * mf/aybabtu.pe.in (i): Load it.
14974
14975         * scm/framework-tex.scm (otf-font-load-command): Bugfix: subfonts
14976         are not symbols.
14977
14978         * lily/include/open-type-font.hh (count): New method.
14979
14980         * mf/aybabtu.pe.in: Typo.
14981
14982         * Documentation/user/out/lilypond-internals.nexi (Scheme
14983         functions): Typo.
14984
14985         * lily/include/guile-compatibility.hh (SCM_HASHTABLE_P): Add compat.
14986
14987 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14988
14989         * buildscripts/gen-bigcheese-scripts.py (i): use symbols for
14990         subfonts.
14991
14992         * scm/output-tex.scm (named-glyph): new function. This fixes TeX output.
14993
14994         * scm/framework-tex.scm (otf-font-load-command): load subfonts.
14995         (tex-font-command-raw): new function.
14996
14997         * lily/include/virtual-font-metric.hh (Module): remove file
14998
14999         * lily/virtual-font-metric.cc (Module): remove file.
15000         
15001
15002         * lily/open-type-font.cc (LY_DEFINE): ly:otf-font-glyph-info
15003         (get_indexed_char): read bbox from lily table if present.
15004
15005 2004-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15006
15007         * mf/GNUmakefile ($(outdir)/aybabtu.subfonts): rule for
15008         aybabtu.subfonts
15009
15010         * mf/feta-beugel.mf (y): don't number consecutively, instead, use
15011         global glyphname. Enables more than 64 glyphs in the OTF.
15012
15013 2004-12-16  Jan Nieuwenhuizen  <janneke@gnu.org>
15014
15015         * scm/font.scm (add-music-fonts): Load aybabtu iso all separate
15016         braces.
15017
15018         * lily/open-type-font.cc (design_size): Use 12 as default for
15019         design size.
15020
15021         * mf/aybabtu.pe.in: New file.  Merge all our braces.
15022
15023         * mf/GNUmakefile: Generate aybabtu.
15024
15025         * tex/lilyponddefs.tex: teTeX 3.0 pdfetex fix.
15026
15027 2004-12-14  Jan Nieuwenhuizen  <janneke@gnu.org>
15028
15029         * scm/lily-library.scm (char->unicode-index): Remove.
15030
15031         * scm/output-gnome.scm (text): Bugfix for plain string input.
15032         Updates.
15033
15034         * scm/output-svg.scm (svg-font): Add weight to font selection.
15035
15036 2004-12-14  Mats Bengtsson  <mabe@s3.kth.se>
15037
15038         * Documentation/topdocs/INSTALL.texi (Top): Point to
15039         buildscripts/out/clean-fonts instead of
15040         buildscripts/clean-fonts.sh. 
15041
15042 2004-12-13  Graham Percival  <gperlist@shaw.ca>
15043
15044         * input/regression/figured-bass.ly: attempt to clarify text.
15045
15046         * Documentation/user/notation.tely: add cindex for tag, attempt to
15047         add figured bass example.
15048
15049         * Documentation/user/changing-defaults: basic editing.
15050
15051 2004-12-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15052
15053         * buildscripts/gen-bigcheese-scripts.py (i): load .subfonts table. 
15054
15055         * lily/open-type-font.cc (LY_DEFINE): new function
15056         ly:font-sub-fonts
15057
15058         * lily/include/font-metric.hh (struct Font_metric): new method
15059         sub_fonts()
15060
15061         * lily/vaticana-ligature-engraver.cc (transform_heads): replace
15062         . with - in add.stem.
15063         
15064 2004-12-13  Jan Nieuwenhuizen  <janneke@gnu.org>
15065
15066         * scm/encoding.scm (coding-alist): Fix encodings for fetaNumber
15067         and fetaDynamic.
15068
15069         * lily/rest.cc (glyph_name): Change - to . .
15070
15071         * scm/output-gnome.scm (text): Hello world, again.
15072
15073         * scm/output-svg.scm (named-glyph): New function.  Hello world!
15074
15075         * lily/modified-font-metric.cc (index_to_charcode): New method.
15076
15077         * lily/include/font-metric.hh (index_to_charcode): New function.
15078
15079         * lily/font-metric.cc (ly:font-glyph-name-to-charcode): Use it in
15080         new function.
15081         (ly:font-glyph-to-index): Remove.
15082
15083 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15084
15085         * lily/open-type-font.cc (make_index_to_charcode_map): new method.
15086
15087         * mf/feta-autometric.mf (code): remove tex name from fet_beginchar.
15088
15089         * lily/open-type-font.cc (load_scheme_table): new function
15090
15091         * lily/dots.cc (print): replace - 
15092
15093         * lily/open-type-font.cc (attachment_point): new function.
15094         (load_table): read LILC table
15095
15096         * buildscripts/gen-bigcheese-scripts.py (Module): new
15097         file. Generate FF scripts.
15098
15099         * mf/feta-din10.mf: idem.
15100
15101         * mf/feta-nummer10.mf: remove mf files.
15102
15103         * mf/feta-alphabet.mf (dynamic_design_size): merge din and number font.
15104
15105 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
15106
15107         * lily/lily-guile.cc: Use scm_from_locale_stringn.
15108
15109         * lily/include/guile-compatibility.hh (scm_from_locale_stringn): Add
15110         compatibility.
15111
15112 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15113
15114         * lily/open-type-font.cc (get_indexed_char): scale metrics by
15115         design-size and units_per_EM.
15116
15117         * mf/bigcheese.pe.in: set PUA codepoints before loading din & nummer.
15118
15119 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
15120
15121         * mf/bigcheese.pe.in (i): Map to 0xe000 (PUA) for testing, which
15122         does not crash fontforge.
15123
15124         * scm/lily-library.scm (char->unicode-index): Hack to map onto
15125         PUA.
15126
15127 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15128
15129         * scm/framework-ps.scm (ps-embed-cff): new function.
15130
15131         * lily/lily-guile.cc (LY_DEFINE): make ly:gulp-file binary proof.
15132
15133 2004-12-12  Werner Lemberg  <wl@gnu.org>
15134
15135         * mf/bigcheese.pe.in: Add PUA mapping.
15136         Don't create Type 42 but bare CFF font.
15137
15138 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
15139
15140         * scm/output-gnome.scm (placebox): Hackery to get bigcheese symbols
15141         within canvas boundaries.
15142
15143         * mf/merge.pe.in: Set font names, version, license GPL.
15144
15145         * make/substitute.make: Add FONTFORGE.
15146
15147         * config.make.in (FONTFORGE): Add.
15148
15149         * configure.in (gui_b): Use PATH_PROG for fontforge.
15150
15151 2004-12-11  Graham Percival  <gperlist@shaw.ca>
15152
15153         * scm/define-markup-commands.scm: add baseline-skip to info
15154         about \column.
15155
15156 2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
15157
15158         * lily/font-metric.cc (ly:font-get-glyph-index): New function.
15159
15160         * scm/output-gnome.scm (named-glyph): Use it.
15161
15162         * scm/lily.scm (ly:all-stencil-expressions): Add named-glyph.
15163
15164         * flower/string.cc (substitute_char): Rename, rewrite, modify this.
15165         (upper_string, lower_string, reverse_string): Remove.
15166
15167         * configure.in (fontforge): Reinstate version check.
15168
15169         * ly/engraver-init.ly: Fix clef glyph names.
15170
15171         * lily/time-signature.cc (special_time_signature): Fix fraction
15172         glyph names.
15173
15174 2004-12-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15175
15176         * mf/merge.pe: new file.
15177
15178         * lily/freetype.cc: new file.
15179
15180         * lily/include/open-type-font.hh (class Open_type_font): new file.
15181
15182         * lily/include/freetype.hh: new file.
15183
15184         * lily/open-type-font.cc: new file.
15185
15186         * lily/all-font-metrics.cc (find_otf): new function.
15187
15188 2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
15189
15190         * lily/time-signature.cc (special_time_signature): Fix.
15191
15192         * configure.in (PKG_CONFIG_PATH): Remove stray `i'.  Check for
15193         GTK2 before checking for pango.  Fixes -fgnome.
15194
15195         * lily/font-metric.cc (LY_DEFINE): Also rename C name to match
15196         Scheme name.
15197
15198         * scm/define-markup-commands.scm:
15199         * scm/safe-lily.scm: Bugfix: ly:font-by-name.
15200
15201         * configure.in: Require makeinfo 4.7 (needed for @ifdocbook).
15202
15203         * stepmake/aclocal.m4 (STEPMAKE_GET_VERSION): Grok fontforge-like
15204         date versions.  Fixes configure.
15205         (STEPMAKE_CHECK_VERSION): Support optional actual program version
15206         argument.
15207
15208 2004-12-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15209
15210         * buildscripts/mf-to-table.py (write_ps_encoding): write real
15211         names in .enc
15212
15213         * lily/*.cc: use '.' iso. '-' for separating glyph name elements.
15214
15215 2004-12-09  Graham Percival  <gperlist@shaw.ca>
15216
15217         * Documentation/user/changing-defaults.itely: add info about
15218         make-dynamic-script
15219
15220         * Documentation/user/notation.itely: add link in dynamics to
15221         section about make-dynamic-script.
15222
15223 2004-12-09  Christian hitz  <chhitz@gmx.net>
15224
15225         * lily/lily-guile.cc: change MACOS_X to __APPLE__
15226
15227 2004-12-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15228
15229         * buildscripts/mf-to-table.py (parse_logfile): use . for
15230         concatting name and group.
15231         (parse_logfile): use M for Minus (negative.)
15232
15233         * lily/include/type-swallow-translator.hh
15234         (DECLARE_EVENT_SWALLOWER): ENTER_DESCRIPTION -> ADD_TRANSLATOR
15235
15236         * lily/*.cc: cosmetics around = sign.
15237
15238         * lily/paper-column.cc (Paper_column): copy rank_. This fixes
15239         lyric spacing on the penultimate column.
15240
15241 2004-12-05  Christian Hitz  <chhitz@gmx.net>
15242
15243         * configure.in:
15244         * lily/accidental-placement.cc:
15245         * lily/bar-line.cc:
15246         * lily/beam-concave.cc:
15247         * lily/beam-quanting.cc:
15248         * lily/beam.cc:
15249         * lily/bezier-bow.cc:
15250         * lily/bezier.cc:
15251         * lily/break-align-interface.cc:
15252         * lily/custos.cc:
15253         * lily/dimension-cache.cc:
15254         * lily/dot-column.cc:
15255         * lily/font-metric.cc:
15256         * lily/font-select.cc:
15257         * lily/gourlay-breaking.cc:
15258         * lily/grob-property.cc:
15259         * lily/grob.cc:
15260         * lily/lily-guile.cc:
15261         * lily/line-spanner.cc:
15262         * lily/lookup.cc:
15263         * lily/lyric-extender.cc:
15264         * lily/lyric-hyphen.cc:
15265         * lily/mensural-ligature.cc:
15266         * lily/midi-def.cc:
15267         * lily/misc.cc:
15268         * lily/note-collision.cc:
15269         * lily/note-column.cc:
15270         * lily/note-head.cc:
15271         * lily/paper-outputter.cc:
15272         * lily/percent-repeat-item.cc:
15273         * lily/rest-collision.cc:
15274         * lily/side-position-interface.cc:
15275         * lily/simple-spacer.cc:
15276         * lily/slur-configuration.cc:
15277         * lily/slur-scoring.cc:
15278         * lily/slur.cc:
15279         * lily/spaceable-grob.cc:
15280         * lily/spacing-spanner.cc:
15281         * lily/spanner.cc:
15282         * lily/staff-symbol-referencer.cc:
15283         * lily/stem.cc:
15284         * lily/stencil.cc:
15285         * lily/system-start-delimiter.cc:
15286         * lily/system.cc:
15287         * lily/text-item.cc:
15288         * lily/tie.cc:
15289         * lily/tuplet-bracket.cc:
15290         * lily/vaticana-ligature.cc: Fix for MacOS X: use <math.h> instead of
15291         <cmath> beacause isinf/isnan is undefined in <cmath>
15292
15293 2004-12-03  Mats Bengtsson  <mabe@s3.kth.se>
15294
15295         * cygwin/lily-wins.py (stat): remove old flag -p when calling lilypond.
15296
15297 2004-12-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15298
15299         * VERSION: release 2.5.3
15300         
15301 2004-11-29  Arno Waschk <arno@arnowaschk.de>
15302
15303         * mf/feta-schrift.mf: added <>-like articulation mark as "espressivo"
15304
15305 2004-12-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15306
15307         * scm/music-functions.scm (cue-substitute): voice counts start at 0.
15308
15309         * lily/note-head.cc (internal_print): always try the "s" head if
15310         u/d not found.
15311
15312         * scm/titling.scm (marked-up-headfoot): reinstate default tagline.
15313
15314 2004-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15315
15316         * mf/parmesan-heads.mf (overdone_heads): typos.
15317
15318 2004-11-30  Nicolas Sceaux  <nicolas.sceaux@free.fr>
15319
15320         * lily/parser.yy (markup): in markups, { .. } without command
15321         before are also flattened, ie \line must be explicitely used.
15322
15323         * Documentation/user/changing-defaults.itely:
15324         * Documentation/user/notation.itely: 
15325         * input/wilhelmus.ly: 
15326         * input/regression/instrument-name-markup.ly: 
15327         * input/regression/markup-score.ly: 
15328         * input/regression/new-markup-scheme.ly: 
15329         * input/regression/new-markup-syntax.ly: 
15330         * input/test/coriolan-margin.ly: use \line in markups where
15331         appropriate
15332         
15333 2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
15334
15335         * scm/new-markup.scm (map-markup-command-list): helper function
15336         used in parser.yy to map markup commands on a markup list.
15337
15338         * lily/parser.yy: get rid off < > in markups by treating { } as
15339         real lists.
15340
15341         * lily/lexer.ll: remove < > from markup lexer mode.
15342
15343         * scripts/convert-ly.py (conv): add rule for converting 
15344         \markup < > to \markup { }
15345
15346         * ly/titling-init.ly: 
15347         * input/test/coriolan-margin.ly: 
15348         * input/regression/new-markup-syntax.ly: 
15349         * input/regression/new-markup-scheme.ly: 
15350         * input/regression/multi-measure-rest-text.ly: 
15351         * input/regression/markup-stack.ly: 
15352         * input/regression/markup-score.ly: 
15353         * input/regression/instrument-name-markup.ly: 
15354         * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: 
15355         * input/mutopia/R.Schumann/romanze-op28-2.ly: 
15356         * input/mutopia/J.S.Bach/wtk1-fugue2.ly: 
15357         * input/wilhelmus.ly: 
15358         * Documentation/user/notation.itely: 
15359         * Documentation/user/music-glossary.tely: 
15360         * Documentation/user/changing-defaults.itely: change < > to { } in
15361         markups
15362
15363 2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15364
15365         * lily/accidental-placement.cc (position_accidentals): shortcut if
15366         no accidentals to place.
15367
15368 2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
15369
15370         * scm/define-grob-properties.scm (all-user-grob-properties): fixed
15371         typo s/ly:dimension ?/ly:dimension?/
15372
15373         * input/regression/lily-in-scheme.ly: 
15374         * input/regression/music-function.ly: 
15375         * ly/spanners-init.ly (assertBeamSlope): 
15376         * scm/music-functions.scm (def-grace-function): add the paper
15377         argument to music function definitions.
15378
15379 2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15380
15381         * lily/moment.cc (LY_DEFINE):
15382         ly:moment-main-{denominator,numberator}, new function.
15383
15384         * lily/score-engraver.cc (typeset_all): assign to column on basis
15385         of axis-group-parent-X setting.
15386
15387         * lily/axis-group-engraver.cc (process_acknowledged_grobs): do
15388         add_element() on basis of axis-group-parent-Y setting.
15389
15390         * lily/grob.cc: add axis-group-parent-{XY} properties.
15391
15392         * input/regression/spacing-stick-out.ly: new file.
15393
15394         * lily/simple-spacer.cc (add_columns): use binary search for
15395         setting column rods. Changes O(n^2) to O(n log(n)) for
15396         constructing spacing problem from columns.
15397         (add_columns): read allow-outside-line to make sure no texts stick
15398         out.
15399         (solve): Simple_spacer::is_active() only determines
15400         satisfies_constraints_ for non-ragged typesetting.
15401
15402         * lily/simultaneous-music.cc (to_relative_octave): only set
15403         old_relative_used if return pitch actually changed.
15404
15405         * scm/define-context-properties.scm
15406         (all-user-translation-properties): change to match implementation.
15407
15408         * python/lilylib.py: Replace re.match by re.search and adds "-c
15409         showpage" to the gs command line (Johannes Schindelin)
15410
15411         * scm/framework-ps.scm (output-preview-framework): sanitize bbox
15412         before processing. Prevents crash when inf is in the extent.
15413
15414         * scm/define-markup-commands.scm (note-by-number): add "s" to
15415         "noteheads-" glyphname.
15416  
15417         * lily/parser.yy (Generic_prefix_music): supply parser argument to
15418         music function as well.
15419         
15420 2004-11-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15421
15422         * VERSION: release 2.5.2
15423
15424         * Documentation/user/changing-defaults.itely (Creating titles):
15425         add breakbefore variable.
15426
15427         * lily/paper-book.cc (set_system_penalty): new function. Set
15428         penalty_ based on breakBefore setting
15429
15430         * lily/context-specced-music-iterator.cc (construct_children):
15431         interpret special context id $uniqueContextId 
15432
15433         * lily/context.cc (create_unique_context): new method. Move
15434         creation of unique (\new) contexts into interpreting phase. This
15435         makes
15436
15437           foo= \new Staff ..
15438           << \foo \foo >>
15439
15440         produce 2 staves.
15441         
15442
15443         * scm/define-music-properties.scm (all-music-properties): add
15444         quoted-voice-direction
15445
15446         * ly/music-functions-init.ly: killCues function.
15447
15448         * scm/music-functions.scm (cue-substitute): move creation of voice
15449         contexts further to the back. 
15450
15451 2004-11-25  Werner Lemberg  <wl@gnu.org>
15452
15453         * tex/GNUmakefile ($(outdir)/latin1.enc): Replace `/minus' with
15454         `/hyphen' in encoding vector to get correct glyph name for EC fonts.
15455
15456 2004-11-24  Erik Sandberg  <ersa9195@student.uu.se>
15457
15458         * buildscripts/guile-gnome.sh: Fixed typo.
15459
15460 2004-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15461
15462         * lily/lexer.ll: add < >  to markup lexer mode (backportme)
15463
15464         * scripts/abc2ly.py (dump_slyrics): add ord(). 
15465
15466         * lily/note-heads-engraver.cc (process_music): add shapeNoteStyles
15467         to regular engraver. 
15468
15469 2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15470
15471         * mf/feta-bolletjes.mf (triangle): rewrite solfa heads.
15472
15473 2004-11-22  Jan Nieuwenhuizen  <janneke@gnu.org>
15474
15475         * scm/define-markup-commands.scm (fill-line): Typo.
15476
15477         * buildscripts/guile-gnome.sh (GGVERSION): Build update for 2.7.96
15478         and newer.
15479
15480 2004-11-22  Erik Sandberg  <ersa9195@student.uu.se>
15481
15482         * ly/dynamic-scripts-init.ly: Fixed typo.
15483
15484 2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15485
15486         * mf/feta-bolletjes.mf (overdone_heads): cleanup triangle
15487         note-head, to have different attachment points for up and down.
15488
15489         * mf/feta-bolletjes.mf: merge solfa heads into main note heads.
15490
15491         * mf/feta-generic.mf (else): remove solfa.
15492
15493         * mf/feta-bolletjes.mf (tishape): remove unicode test.
15494
15495         * scm/define-context-properties.scm
15496         (all-user-translation-properties): add shapeNoteStyles property.
15497
15498         * lily/shape-note-heads-engraver.cc (process_music): new file.
15499
15500         * lily/event.cc (transpose): call Event::transpose() for
15501         transposing the tonic.
15502
15503 2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
15504
15505         * scm/output-gnome.scm: Save some pointers about pango/fontconfig
15506         Unicode/OpenType and AFM.
15507
15508         * lily/include/guile-compatibility.hh (scm_from_bool): Add.
15509
15510 2004-11-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15511
15512         * lily/grob.cc (Grob): idem. Plugs mem leaks. 
15513
15514         * lily/context.cc (Context): unprotect key from ctor.
15515
15516         * scm/stencil.scm (stack-lines): return empty-stencil if argument
15517         is '()
15518         (stack-stencils): idem.
15519
15520         * Documentation/user/changing-defaults.itely (Creating titles):
15521         document new title layout options.
15522
15523         * lily/parser.yy (lilypond_header_body): copy previous
15524         $globalheader if present.
15525
15526         * lily/ly-module.cc (LY_DEFINE): rename ly:import-module to
15527         ly:module-copy
15528         
15529         * scm/page-layout.scm (marked-up-headfoot): remove old functions.
15530
15531         * scm/titling.scm: remove old titling functions
15532
15533         * lily/stencil.cc (translate): remove absolute dimension.
15534
15535         * ly/titling-init.ly (oddFooterMarkup): new file. Generate titles
15536         via markup.
15537
15538         * scm/page-layout.scm (marked-up-headfoot): create header/footer
15539         field from user-supplied markup
15540
15541         * scm/define-markup-commands.scm (on-the-fly): new markup
15542         command. Enter SCM markup procedure directly in Scheme.
15543         (fromproperty): new markup command. Read markup from props argument.
15544
15545         * scm/titling.scm (marked-up-title): create title via
15546         user-specified markup. 
15547
15548         * scm/define-markup-commands.scm (column): remove empty stencils
15549         from column.
15550
15551         * lily/ly-module.cc (LY_DEFINE): use ly_module_lookup(). This does
15552         not have side-effect of creating variable stub.
15553
15554         * lily/stencil-scheme.cc (LY_DEFINE): add ly:stencil-empty?
15555
15556 2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
15557
15558         * scm/encoding.scm (coding-alist): 
15559         * scm/font.scm (add-ec-fonts):
15560         * ly/paper-defaults.ly: Use actual name for EC fontencoding:
15561         Extended-TeX-Font-Encoding---Latin.
15562
15563         * lily/side-position-interface.cc (general_side_position): Add
15564         actual offset to error message (avoid constant error messages).
15565
15566         * lily/all-font-metrics.cc (find_font): Add "lm" to try-AFM-first
15567         block.
15568
15569         * lily/font-select.cc (select_encoded_font)
15570         (get_font_by_mag_step, get_font_by_design_size): 
15571         * lily/modified-font-metric.cc (Modified_font_metric): 
15572         * lily/paper-def.cc (find_scaled_font): Add font_encoding parameter.
15573
15574         * scm/encoding.scm (coding-alist): Add fetaDynamic.
15575         (read-encoding-file): Bugfix: do not require space after bracket.
15576
15577         * scm/font.scm (add-cork-lm-fonts): Remove lmbxi8 and lmbxi14,
15578         these do not exist.
15579
15580 2004-11-20  Graham Percival  <gperlist@shaw.ca>
15581
15582         * Documentation/user/notation.itely: added info about typesetting
15583         boxed bar numbers.
15584
15585 2004-11-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15586
15587         * flower/interval.cc (T_to_string): gcc4 fixes.
15588
15589         * scm/define-markup-commands.scm (fill-line): use
15590         stack-stencils. This fixes problems with putting already centered
15591         stencils in a line.
15592
15593         * VERSION: release 2.5.1
15594
15595         * lily/bar-line.cc (get_staff_bar_size): add line thickness.
15596
15597 2004-11-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15598
15599         * input/example-[1-3].ly: simplify.
15600
15601         * lily/cluster-engraver.cc (try_music): react to busy-playing-event
15602
15603         * scm/output-ps.scm (new-text): new function. Use glyphshow to
15604         show glyphs.
15605
15606         * scm/encoding.scm (decode-byte-string): new function.
15607
15608         * scripts/convert-ly.py (conv): add warning about
15609         set-global-staff-size.
15610
15611         * Doxyfile: add. 
15612
15613         * scripts/convert-ly.py (conv): add raggedlastbottom rule
15614         (conv): warn for TextSpanner split.
15615         (conv): warn for textheight.
15616
15617 2004-11-19  Jan Nieuwenhuizen  <janneke@gnu.org>
15618
15619         * GNUmakefile.in (install-WWW): Invoke install-info, so that when
15620         building the documentation, info with images are installed.
15621         (final-install): Fix description.  Mention sourcing of login
15622         scripts (instead of running).
15623
15624 2004-11-18  Jan Nieuwenhuizen  <janneke@gnu.org>
15625
15626         * Debian lmodern support.  Note that LilyPond will issue warnings
15627         
15628             no such encoding: "FontSpecific"
15629
15630           The font selection mechanism wants to get the encoding from the
15631           font itself, but the idea of lmodern is that it is usable with
15632           different encodings, ie, Lily should get the encoding from the
15633           font tree, rather than the font itself.  This would require some
15634           more work.
15635         
15636         * configure.in: Test for and accept lmodern if EC fonts not found.
15637
15638         * scm/framework-tex.scm (font-load-command): TeX font name
15639         mangling for latin1 encoded cork-lm fonts.
15640         (convert-to-ps): Load lm.map if available.
15641
15642         * ly/paper-defaults.ly: Use cork-lm encoding if ec is not
15643         available.
15644
15645         * scm/encoding.scm (coding-alist): Add cork-lm encoding.
15646
15647         * scm/font.scm: Add header.  Autoload cork-lm and ec fonts if
15648         available.
15649
15650         * lily/kpath.cc (ly_kpathsea_find_file): Rename.  Do not use
15651         path for absolute file name, that is silly.
15652
15653         * lily/score-engraver.cc (initialize): 
15654
15655         * Documentation/user/GNUmakefile (local-install-info): Invoke
15656         install-info --remove first.
15657
15658         * #include cleanup (Andreas Scherer).
15659
15660 2004-11-18  Heikki Junes  <hjunes@cc.hut.fi>
15661
15662         * input/test/script-abbreviations.ly: fix typos.
15663
15664 2004-11-17  Werner Lemberg  <wl@gnu.org>
15665
15666         * python/lilylib.py (options_help_str): Support pretty-printing of
15667         newlines in fourth element of option description.
15668
15669         * scripts/lilypond-book.py (option_definitions): Use new lilylib
15670         feature.
15671         Sort options.
15672
15673         * Documentation/user/lilypond-book.itely: Finish update.
15674
15675 2004-11-17  Jan Nieuwenhuizen  <janneke@gnu.org>
15676
15677         * Documentation/user/macros.itexi: Add comment about \command.
15678
15679         * Documentation/user/lilypond.tely:
15680         * Documentation/user/lilypond-book.itely: Fix names of lilypond
15681         and lilypond-book nodes, so that `info lilypond' visits the manual
15682         at top level, and `info lilypond-book' visits the lilypond-book
15683         section.
15684
15685         * Documentation/user/GNUmakefile (local-install-info): Fix rules
15686         and packager messages.
15687
15688         * lily/pangofc-afm-decoder.cc: Update test.
15689
15690 2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
15691
15692         * scm/lily-library.scm (char->unicode-index): New function.
15693
15694         * scm/output-gnome.scm: 
15695         * scm/output-svg.scm: Cleanup.  Map custom fonts to PUA.
15696
15697         * Proper naming of file name throughout; s/filename/file[-_]name/.
15698
15699         * lily/modified-font-metric.cc ("ly:font-encoding"): New function.
15700
15701         * lily/pangofc-afm-decoder.cc (pango_fc_afm_get_glyph): Map onto PUA.
15702
15703 2004-11-16  Werner Lemberg  <wl@gnu.org>
15704
15705         * scripts/lilypond-book.py: The Lord has commanded me to use only
15706         tabs for indentation.  Your humble servant obeys.
15707
15708 2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
15709
15710         * scm/output-svg.scm: Font fixes.  Sodipodi now groks svg
15711         including font, if LilyPond-feta font is only feta font in path.
15712
15713         * scm/output-gnome.scm (text): Revert to file name of font if font
15714         has no name.  Fixes ec font selection.
15715         (char): Bugfix: do not utf8 twice.  Fixes clefs.
15716
15717         * scm/framework-svg.scm:
15718         * scm/output-svg.scm: New file.  TODO: figure out how to
15719         do character by index in font.
15720
15721         * scm/output-sodipodi.scm: Remove.
15722
15723         * scm/output-ps.scm (stem): Remove.
15724
15725 2004-11-15  Jan Nieuwenhuizen  <janneke@gnu.org>
15726
15727         * scm/output-gnome.scm (beam): New function.
15728         (slur): Round corners.
15729         (round-filled-box): Round corners.
15730
15731 2004-11-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15732
15733         * scm/output-gnome.scm (beam): add function.
15734         (draw-line): new routine.
15735         (dashed-line): stub; call draw-line
15736         (polygon): new routine.
15737
15738 2004-11-15  Werner Lemberg  <wl@gnu.org>
15739
15740         * Documentation/user/lilypond-book.itely: Revise section on
15741         lilypond-book options.
15742         Other minor fixes.
15743
15744         * scripts/lilypond-book.py: Change indentation to 4.
15745         Minor formatting.
15746
15747 2004-11-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15748
15749         * lily/system.cc (apply_tweaks): new function. Run tweaks on all
15750         grobs that have tweaks specced.
15751         
15752 2004-11-14  Heikki Junes  <hjunes@cc.hut.fi>
15753
15754         * Documentation/user/sound-output.itexi: add code snippets for MIDI.
15755
15756 2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
15757
15758         * lily/font-metric.cc (get_indexed_char_stencil): Bugfix: get
15759         actual char #, not 0 based index.
15760
15761         * lily/system-start-delimiter.cc (staff_brace): Start at 65.
15762
15763         * mf/feta-beugel.mf: Actually start at char #65.  Add header.
15764         Warning: do make -C mf clean.
15765
15766         * lily/context-property.cc: Compile fix.
15767
15768         * scm/output-gnome.scm: Add ec-fonts-mftraced to ~/.fonts.conf.
15769         Grok ec-fonts, braces and dynamics.
15770
15771         * scm/framework-gnome.scm (gnome-main): Register braces with pango.
15772
15773 2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15774
15775         * lily/include/tweak-registration.hh: new file.
15776
15777         * lily/tweak-registration.cc: new file.
15778
15779         * scm/framework-gnome.scm (save-tweaks): use new key mechanism for
15780         saving tweaks.
15781
15782         * scm/output-gnome.scm (text): comment dribble.
15783
15784 2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
15785
15786         * lily/pangofc-afm-decoder.cc (main): Test more feta fonts.
15787
15788         * scm/output-gnome.scm (bezier-sandwich): New function.  Reset
15789         path-def before using.  Fixes muchtomany slurs in wrong places
15790         bug.
15791
15792 2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15793
15794         * lily/grob-scheme.cc (LY_DEFINE): add new function ly:grob-key.
15795
15796         * lily/include/object-key-undumper.hh (Module): new file.
15797
15798         * lily/object-key-undumper.cc (Module): New file. Deserialize
15799         keys. SCM bindings
15800
15801         * lily/object-key-dumper.cc (Object_key_dumper): idem.
15802         Provide SCM bindings.
15803
15804         * lily/include/object-key-dumper.hh (class Object_key_dumper): 
15805         new file. Serialize object keys.
15806         
15807         * lily/object-key.cc (dump): new function.
15808         (as_scheme): new virtual function
15809         (undump): new function
15810         (undumpers): new table.
15811
15812         * lily/include/global-context.hh (Context): take \score key upon init.
15813
15814         * lily/object-key-dumper.cc (serialize_key): new file.
15815
15816         * lily/include/object-key-dumper.hh (class Object_key_dumper): new file.
15817
15818         * lily/lily-lexer.cc: remove \quote.
15819
15820         * lily/lookup.cc (triangle): rewrite, obviating symmetric_x_triangle().
15821
15822         * lily/context.cc (Context): take key argument in ctor.
15823         (create_context): new function
15824
15825         * lily/grob.cc (Grob): take key argument in ctor.  
15826
15827         * lily/lilypond-key.cc (do_compare): new file.
15828
15829         * lily/object-key.cc (Object_key): new file.
15830
15831         * lily/include/object-key.hh (class Object_key): new file.
15832
15833         * lily/include/lilypond-key.hh (class Lilypond_context_key): new file.
15834
15835 2004-11-13  Graham Percival  <gperlist@shaw.ca>
15836
15837         * Documentation/user/lilypond-book.itely: add small warning about
15838         noindent default in lilypond-book.
15839
15840         * Documentation/user/converters.itely: add examples for convert-ly.
15841
15842         * Documentation/user/examples.itely: change version string in templates
15843         to 2.4.0.
15844
15845 2004-11-12  Karl Hammar  <karl@aspodata.se>
15846
15847         * GNUmakefile.in (local-WWW-post): `find ...` overflows the
15848         cmdline, use xargs instead (backportme)
15849
15850 2004-11-10  Andreas Scherer  <andreas_mutopia@freenet.de>
15851         
15852         * Documentation/user/: Numerous fixes in the user manual.
15853
15854 2004-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15855
15856         * lily/parser.yy (re_rhythmed_music): search music expression for
15857         context-id, surround by \new Voice if not found. Fixes:
15858         addlyrics-second-staff.ly
15859
15860         * VERSION: 2.5.0 released.
15861         
15862 2004-11-12  Jan Nieuwenhuizen  <janneke@gnu.org>
15863
15864         * Documentation/index.html.in: Fix url to one big page.  (backportme)
15865
15866         * Documentation/user/GNUmakefile: Separate rules for split and
15867         unsplit html documents.  Remove perl massaging.  (backportme)
15868
15869 2004-11-11  Graham Percival  <gperlist@shaw.ca>
15870
15871         * Documentation/user/lilypond-book.itely: add short warning about
15872         \lilypond{} in LaTeX docs.
15873
15874 2004-11-11  Jan Nieuwenhuizen  <janneke@gnu.org>
15875
15876         * stepmake/aclocal.m4: Barf if kpathsea/kpathsea.h is not
15877         found.  (backportme)
15878
15879         * Documentation/topdocs/INSTALL.texi (ec-fonts-mtraced): Add
15880         version requirement.  (backportme)
15881
15882         * configure.in: Be explicit about old versions of
15883         ec-fonts-mtraced.  (backportme)
15884
15885         * lily/context-selector.cc (set_tweaks): New function.
15886         * lily/grob-selector.cc (set_tweaks): (Re)set hash table.  Fixes
15887         web with -DTWEAK.
15888
15889         * Documentation/user/introduction.itely (Automated engraving):
15890         Remove fragment option.  Fixes web.
15891
15892         * lily/context-property.cc (make_item_from_properties):
15893         * lily/context.cc (add_context)[TWEAK]: Tweak registration behind
15894         #ifdef.
15895
15896         * scm/define-context-properties.scm
15897         (all-internal-translation-properties): Add tweakRank and tweakCount.
15898
15899         * lily/grob.cc: 
15900         * scm/define-grob-properties.scm (all-internal-grob-properties):
15901         Add tweak-rank and tweak-count.
15902
15903 2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
15904
15905         * scm/output-gnome.scm (string->utf8-string, char->utf8-string):
15906         New function.
15907         (text): Use them.
15908
15909         * scm/framework-gnome.scm (item-event): Add support from TLA.  Support
15910         animated/opaque grob dragging tweaks.
15911
15912         * buildscripts/guile-gnome.sh: Update.
15913
15914 2004-11-10  Mats Bengtsson  <mabe@s3.kth.se>
15915
15916         * scm/define-grobs.scm (all-grob-descriptions): Added
15917         line-interface to the LigatureBracket object.
15918
15919 2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
15920
15921         * scm/framework-gnome.scm (item-event): Support non-animated mouse
15922         dragging tweaks.
15923
15924         * lily/lily-guile.cc (ly_to_string, ly_to_symbol): New function.
15925
15926         * lily/context-selector.cc (store_context): New function.
15927
15928         * lily/grob-selector.cc (register_grob)[TWEAK]: Apply tweak.
15929         (store_grob): New function.
15930         (identify_grob): Add Moment parameter.
15931
15932         * lily/lily-parser.cc (parse_file)[TWEAK]: Read .ly.t file if it
15933         exists.
15934
15935         * scm/framework-gnome.scm (save-tweaks): Write as alist.
15936
15937 2004-11-09  Jan Nieuwenhuizen  <janneke@gnu.org>
15938
15939         * scm/framework-gnome.scm (item-event): Print grob id.
15940         (save-tweaks): New function.
15941         (tweak): New funtion.
15942         (item-event): Use it, bound to arrow keys.
15943
15944         * lily/context-property.cc (make_item_from_properties): Register grob.
15945         * lily/context.cc (add_context): Register context.
15946
15947         * lily/include/context-selector.hh:
15948         * lily/include/grob-selector.hh:
15949         * lily/context-selector.cc:
15950         * lily/grob-selector.cc: New file.
15951
15952 2004-11-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15953
15954         * lily/slur.cc: add 'positions to interface
15955
15956         * lily/main.cc: reinstate PS as standard output format. 
15957
15958         * scm/framework-tex.scm (output-preview-framework): print systems
15959         up to first non title system.
15960
15961         * lily/grace-engraver.cc (start_translation_timestep): split
15962         scm_cadddr
15963         
15964 2004-11-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15965
15966         * lily/quote-iterator.cc (Module): remove old quote-iterator
15967
15968         * scm/define-music-types.scm (music-descriptions): move
15969         NewQuoteMusic over QuoteMusic
15970
15971         * Documentation/user/notation.itely (Formatting cue notes): use
15972         \cueDuring.
15973
15974         * lily/new-quote-iterator.cc (quote_ok): new function.
15975
15976         * input/regression/quote-cue-during.ly: new file.
15977
15978         * input/regression/quote-grace.ly: new file.
15979
15980         * scm/define-context-properties.scm (Module): change definition of
15981         graceSettings
15982
15983         * lily/context-property.cc (Module): rename from
15984         translator-property.cc
15985
15986         * lily/context.cc (context_name_symbol): new function
15987
15988         * lily/grace-engraver.cc: new file. Set properties for grobs based
15989         on the grace-ness of now_moment().
15990
15991         * scm/music-functions.scm (add-grace-property): use list
15992         iso. vector for graceSettings
15993         remove set-{start,stop}-grace-properties. 
15994
15995         * lily/new-quote-iterator.cc (construct_children): set
15996         quote_outlet_ if no quoted-context-{id,type} specified.
15997
15998         * scripts/convert-ly.py (conv): \quote -> \quoteDuring.
15999
16000         * lily/parser.yy (command_element): remove \quote.
16001
16002         * ly/music-functions-init.ly (location): add quoteDuring music
16003         function. 
16004
16005         * lily/lexer.ll: allow \encoding in lyrics as well.  Remove
16006         optional semicolon. (backportme)
16007
16008 2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
16009
16010         * python/GNUmakefile (STEPMAKE_TEMPLATES): Unset USER_LDFLAGS, no
16011         need to link to GUILE et al.
16012
16013 2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16014
16015         * scm/define-music-properties.scm (all-music-properties): add
16016         quoted-context-type, quoted-context-id.
16017
16018         * scm/lily.scm (type-check-list): new function.
16019         
16020         * scm/lily-library.scm: new file. Generic library routines.
16021
16022         * lily/parser.yy (Generic_prefix_music): move typechecking out of
16023         parser.
16024
16025         * ly/music-functions-init.ly: add quoteDuring function.
16026
16027         * lily/include/music-iterator.hh (class Music_iterator): rename
16028         set_translator -> set_context
16029
16030         * lily/parser.yy (Generic_prefix_music_scm): add
16031         MUSIC_FUNCTION_SCM_SCM_MUSIC
16032
16033         * scm/lily.scm (sanitize-command-option): new function. (backportme)
16034
16035         * scm/framework-tex.scm (header): sanitize TeX paper size.
16036         (backportme)
16037
16038 2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
16039
16040         * elisp/lilypond-indent.el (LilyPond-indent-level): 2 is now standard.
16041
16042         * tex/lilyponddefs.tex: If no inputencoding use latin1.  (backportme)
16043
16044         * scm/framework-tex.scm (font-load-command): Use T1 if no
16045         font-encoding set.  (backportme)
16046
16047         * scm/lily.scm (postscript->pdf): Remove .pdf file if it
16048         exists before converting.  (backportme)
16049
16050         * scm/framework-tex.scm (convert-to-dvi): Remove .dvi file if it
16051         exists before converting.  (backportme)
16052         (convert-to-ps): Remove .ps file if it exists before
16053         converting.  (backportme)
16054
16055         * lily/lexer.ll: Remove extra progress newline, use present tense.
16056
16057         * scm/paper.scm (paper-alist): public.
16058         * scm/framework-tex.scm (convert-to-ps):
16059         * scm/lily.scm (postscript->pdf): Do not leak papersizename into
16060         command line.
16061
16062 2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16063
16064         * scm/lily.scm (ly:system): add > /dev/null 2>&1 . (backportme)
16065
16066         * lily/recording-group-engraver.cc (derived_mark): mark
16067         now_events_. (backportme)
16068
16069 2004-11-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16070
16071         * mf/GNUmakefile: use Fedora-3 in download link. (backportme.)
16072
16073         * scm/framework-tex.scm (convert-to-dvi): use ly:system for
16074         invoking latex. (backportme.)
16075
16076         * lily/stem.cc (off_callback): center stems for all rest stems.
16077
16078 2004-11-05  Werner Lemberg  <wl@gnu.org>
16079
16080         * Documentation/user/lilypond.tely: Add more guidelines for writing
16081         lilypond texinfo documents.
16082
16083 2004-11-05  Heikki Junes  <hjunes@cc.hut.fi>
16084
16085         * Documentation/index.html.in: remove <hr>.
16086
16087         * THANKS: change 2.3 to 2.4.
16088
16089 2004-11-05  Jan Nieuwenhuizen  <jannneke@gnu.org>
16090
16091         * scm/output-gnome.scm: More fontconfig comment.
16092
16093 2004-11-05  Pedro Kroger  <kroeger@pedrokroeger.net>
16094
16095         * GNUmakefile.in ($(builddir)/share/lilypond-force): create the
16096         <package> directory in $(builddir)/share according with
16097         PACKAGE_NAME defined in the VERSION file.
16098
16099 2004-11-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16100
16101         * lily/beam.cc (rest_collision_callback): use local beam
16102         multiplicity.
16103
16104         * input/regression/stem-stemlet.ly: new file.
16105
16106         * lily/stem.cc (add_head): store rests as well.
16107
16108         * scm/define-grob-properties.scm (all-user-grob-properties): add
16109         stemlet-length
16110
16111         * lily/stem.cc: store rests as well.
16112         
16113         * input/regression/new-slur.ly: mention forcing.
16114
16115 2004-11-04  Werner Lemberg  <wl@gnu.org>
16116
16117         * Documentation/user/*: A new round of layout fixes and document
16118         structure cleanup.
16119
16120 2004-11-04  Heikki Junes <hjunes@cc.hut.fi>
16121
16122         * Documentation/user/lilypond.tely: changes 2.3.x to 2.5.x.
16123
16124 2004-11-04  Jan Nieuwenhuizen  <janneke@gnu.org>
16125
16126         * Documentation/topdocs/INSTALL.texi (Top): Remove geometry.
16127
16128 2004-11-03  Jan Nieuwenhuizen  <janneke@gnu.org>
16129
16130         * Documentation/topdocs/INSTALL.texi (Top): Fix geometry url (dax).
16131
16132         * lily/lily-parser.cc (LY_DEFINE): Remove "Now " from message.
16133
16134         * lily/main.cc (main): Invoke identify.
16135
16136         * scm/lily.scm (postscript->pdf): Remove progress newline.
16137         Write progress to stderr.
16138
16139         * lily/paper-book.cc (output): Remove progress newline.
16140
16141         * scm/framework-tex.scm (convert-to-dvi, convert-to-ps): Call
16142         gettext on user messages, and remove whitespace.
16143
16144         * lily/paper-outputter.cc (get_paper_outputter): Add progress newline.
16145
16146         * scripts/lilypond-latex.py (program_name): Bugfix: use only basename of
16147         argv[0] (Thomas Scharkowski).
16148
16149         * configure.in: Bugfix: add REQUIRED parameter to STEPMAKE_TEXMF
16150         call (carlyannehorse).  Also check for mf and mf-nowin.  Add check
16151         for ec-fonts-mtraced.
16152
16153         * GNUmakefile.in (builddir-exec): Add symlink tex/out.  Fixes
16154         --srcdir build (Bertalan).
16155
16156         * stepmake/aclocal.m4 (STEPMAKE_GUILE_DEVEL): Check for guile
16157         headers and library too (Laura Conrad).
16158
16159         * Documentation/topdocs/INSTALL.texi (Top): Mention development
16160         package for guile too (Laura Conrad).
16161
16162         * lily/main.cc (usage): Typo.
16163
16164 2004-11-02  Werner Lemberg  <wl@gnu.org>
16165
16166         * Documentation/user/notation.ly: More fixes to improve appearance.
16167
16168         * tex/texinfo.tex: Updated from texinfo CVS -- this version provides
16169         better output for multicolumn tables.
16170
16171 2004-11-01  Mats Bengtsson  <mabe@s3.kth.se>
16172
16173         * lily/main.cc (dir_info): Fixed typo in the printouts.
16174
16175 2004-11-01  Werner Lemberg  <wl@gnu.org>
16176
16177         * buildscripts/mf-to-table.py (write_fontlist): Improve formatting
16178         of output.
16179         Set `per_line' to 2; replace hard-coded value with it.
16180
16181         * Documentation/user/*: Many fixes to improve appearance of
16182         printed manual.
16183
16184 2004-11-01  Werner Lemberg  <wl@gnu.org>
16185
16186         * Documentation/user/changing-defaults.itely,
16187         Documentation/user/notation.ly,
16188         Documentation/user/programming-interface.itely: Use @/.
16189         Fix formatting of some lilypond snippets and tables.
16190
16191         * scripts/lilypond-book.py (compose_ly): Provide useful default
16192         for LINEWIDTH in `override'.
16193
16194 2004-10-31  Graham Percival  <gperlist@shaw.ca>
16195
16196         * Documentation/user/invoking.itely: change "3.0" -> "2.4"
16197
16198 2004-10-31  Werner Lemberg  <wl@gnu.org>
16199
16200         Resetting @exampleindent to `5' gives ugly results with texinfo's
16201         DVI output.  Use `@format @exampleindent 0 ... @end format' instead
16202         (if not quoting) to change @exampleindent only locally.
16203
16204         * scripts/lilypond-book.py (NOQUOTE): New variable.
16205         (output) [LATEX]: Remove AFTER and BEFORE.
16206         [TEXINFO]: Remove AFTER and BEFORE.
16207         Fix QUOTE and VERBATIM pattern.
16208         Add NOQUOTE pattern.
16209         (Lilypond_snippet) [output_info, output_latex]: Don't handle AFTER
16210         and BEFORE.
16211         [output_texinfo]: Use NOQUOTE.
16212
16213 2004-10-31  Graham Percival  <gperlist@shaw.ca>
16214
16215         * Documentation/user/changing-defaults.itely: clarify paper
16216         size commands with correct info.
16217
16218         * Documentation/user/lilypond-book.itely: add more docs for
16219         filename extensions.
16220
16221 2004-10-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16222
16223         * VERSION (PATCH_LEVEL): Branch lilypond_2_4, release 2.4.0
16224         (PATCH_LEVEL): start 2.5.0.
16225
16226 #Local variables:
16227 #coding: utf-8
16228 #End:
16229