]> git.donarmstrong.com Git - lilypond.git/blob - ChangeLog
Info about adding names to pianostaffs and other contexts, thanks Marcus!
[lilypond.git] / ChangeLog
1 2006-10-04  Graham Percival  <gpermus@gmail.com>
2
3         * Documentation/user/advanced-notation.itely: added
4         info about instrument names for piano or other contexts,
5         thanks Marcus!
6
7 2006-10-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
8
9         * mf/feta-bolletjes.mf (solfa_quarter_width): use
10         solfa_base_notewidth as unit for non-DO-notes too.
11
12         * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: update email.
13
14         * VERSION: release 2.9.21
15
16         * Documentation/topdocs/NEWS.tely (Top): simpler, more clearer override.
17
18 2006-10-04  Mats Bengtsson  <mabe@drongo.s3.kth.se>
19
20         * python/lilylib.py (progress): Minor fix.
21
22 2006-10-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
23
24         * lily/note-name-engraver.cc: doc engraver.
25
26         * scm/output-lib.scm (hairpin::calc-grow-direction): new function.
27
28         * lily/dynamic-engraver.cc (process_music): don't set grow-direction.
29
30         * scm/define-grobs.scm (all-grob-descriptions): calc duration-log
31         by callback.
32
33         * lily/stem-engraver.cc (make_stem): don't set duration-log
34
35         * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
36         write snippet-names binary.
37
38         * python/lilylib.py (system): use os.system for mingw32
39
40         * scripts/lilypond-book.py (bindir): use os.pathsep for prepending
41         to $PATH.
42
43         * scm/backend-library.scm: update email address.
44
45         * Documentation/topdocs/NEWS.tely (Top): add duration-log override
46         example.
47
48         * scm/define-grobs.scm (all-grob-descriptions): use callback to
49         calc dot count.
50
51         * lily/dots-engraver.cc (class Dots_engraver): new engraver:
52         handle dot creation separately.
53
54         * lily/tab-note-heads-engraver.cc (process_music): idem.
55
56         * lily/drum-note-engraver.cc (process_music): idem.
57
58         * lily/note-heads-engraver.cc (process_music): idem.
59
60         * lily/rest-engraver.cc: don't set duration-log.
61
62         * scm/output-lib.scm (string-number::calc-text): new function.
63         (note-head::calc-duration-log): new function.
64
65         * lily/fingering-engraver.cc (make_script): remove 'text setting.
66
67         * scm/output-lib.scm (fingering::calc-text): new function.
68
69 2006-10-04  Mats Bengtsson  <mabe@drongo.s3.kth.se>
70
71         * scripts/lilypond-book.py: Fix typo gs-load-font -> gs-load-fonts
72          and include-eps-font -> include-eps-fonts
73
74 2006-10-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
75
76         * lily/multi-measure-rest-engraver.cc: use internalBarNumber
77
78         * lily/timing-translator.cc: list properties.
79         (start_translation_timestep): update internalBarNumber too.
80
81         * scm/define-context-properties.scm
82         (all-user-translation-properties): add internalBarNumber.
83
84         * input/regression/spacing-no-note.ly: new file.
85
86         * buildscripts/output-distance.py (link_file): verbosity for OSError.
87
88         * lily/book.cc: #include cleanup.
89
90         * lily/include/lily-guile-macros.hh: add assert to
91         scm_or_str2symbol(SCM).
92
93         * VERSION (PATCH_LEVEL): bump version.
94
95         * lily/spacing-spanner.cc (musical_column_spacing): handle
96         musical->nonmusical spacing case, where there is no spacing
97         wish. Fixes issue #61.
98
99         * lily/pango-font.cc (text_stencil): allow 'tight' bounds.
100         (pango_item_string_stencil): use logical rect horizontally (to
101         preserve spaces), ink_rect vertically (for time signatures).
102
103         * lily/font-metric.cc (word_stencil): new interface function
104
105         * input/regression/utf-8-mixed-text.ly: new file.
106
107         * lily/percent-repeat-engraver.cc (listen_percent): remove
108         spurious warning.
109
110         * lily/phrasing-slur-engraver.cc (acknowledge_script): only ack
111         non-dynamic scripts. Fixes #30.
112
113         * lily/slur.cc (outside_slur_callback): make offset_scm optional.
114
115         * lily/beam.cc (rest_collision_callback): make prev_offset optional.
116
117         * lily/grob-closure.cc (chain_offset_callback): don't pass 0 but
118         SCM_UNDEFINED for non-existent data.
119
120         * lily/side-position-interface.cc (general_side_position): allow
121         optional current_offset argument for chaining, so combinations of side-position
122         and outside slur callback don't add up.  Fixes issue #92.
123
124         * lily/pango-font.cc (pango_item_string_stencil): use
125         logical_rect. This prevents spaces after words from disappearing,
126         issue #72.
127         
128         * VERSION: release 2.9.20
129
130 2006-10-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
131
132         * scm/define-grob-properties.scm (all-user-grob-properties):
133         mention stencil as user settable.
134
135 2006-10-02  Joe Neeman  <joeneeman@gmail.com>
136
137         * Documentation/user/page.itely (Page formatting): 
138         document auto-first-page-number
139
140         * lily/page-breaking.cc (find_chunks_and_breaks): 
141         * lily/paper-score.cc (calc_breaking): Follow changes to the
142         Constrained_breaking interface
143
144         * lily/constrained-breaking.cc (calc_subproblem): run the main loop
145         here backwards, as an optimisation
146         (initialize): new function; move most of the code in resize () here
147         (combine_demerits): cache ragged_right_
148         (Constrained_breaking): constructor now takes the Paper_score
149
150 2006-10-02  Erik Sandberg  <mandolaerik@gmail.com>
151         
152         * lily/lexer.ll, lily/parser.yy: Add EXPECT_NO_MORE_ARGS token, to
153         avoid parser lookahead for 0-ary functions.
154
155         * lily/translator.cc: Extract event classes from
156         IMPLEMENT_TRANSLATOR_LISTENER for documentation generation.
157
158 2006-10-02  Heikki Junes  <hjunes@gmail.com>
159
160         * po/fi.po: Fix spaces, commas etc. in Finnish translation using
161         KBabel fix tool.
162
163 2006-10-01  Nicolas Sceaux  <nicolas.sceaux@free.fr>
164
165         * scm/layout-page-layout.scm (page-breaking-wrapper): new
166         function. Call the page breaking function selected in the
167         `page-breaking' \paper variable, then the post processing function
168         chosen using the `page-post-process' \paper variable.
169         (line-height): new function. Return the height of a system.
170         (line-minimum-position-on-page): new function. Return the position
171         of a system on page (using the previous line position), only
172         considering between system padding.
173         (stretchable-line?): new function. Says whether a line can be
174         stretched (ie. is not a title nor a single staff system).
175         (page-maximum-space-left): new function. Computes space left on a
176         page, when all systems are separated by their padding.
177
178         * lily/page-breaking.cc (breaking::make_pages): Move page post
179         processing function call to page breaking wrapper (common to all
180         page breakers).
181
182         * lily/paper-book.cc (book::pages): call the page breaking
183         wrapper, instead of the page breaker directly
184
185         * ly/paper-defaults.ly: Add \paper variables for page breaking
186         wrapper and page post processing function. Make
187         `write-page-layout' value depend on the 'dump-tweaks option. Add a
188         `system-maximum-stretch-procedure' variable for holding a function
189         computing the maximum stretch a system allows.
190
191         * scm/layout-page-dump.scm (write-page-breaks): computes the
192         stretch to apply to systems on a page to minimize left
193         space. Dump this stretch length.
194
195         * ly/music-functions-init.ly (spacingTweaks): implement it. Read
196         the system-stretch property of the tweak data to stretch the
197         system.
198         (includePageLayoutFile): Void function which includes the
199         generated page-layout file if it exists and if the page layout
200         dumping is not asked.
201         (scoreTweak): if the score tweak named by the argument exists,
202         return it.
203
204 2006-10-01  Joe Neeman  <joeneeman@gmail.com>
205
206         * lily/page-spacing.cc (compress_lines, uncompress_solution):
207         handle correctly the case where there are multiple \noPageBreaks
208         in a row.
209
210 2006-09-30  Laura Conrad <lconrad@laymusic.org>
211
212         * abc2ly.py adds segno (S) and Coda (O) to articulations.
213         
214         * abc2ly.py fix so that entering " -- " will translate to a -- in
215         the lilypond instead of a " - - "
216         
217 2006-09-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
218
219         * lily/align-interface.cc: fix typo
220
221         * lily/dynamic-text-spanner.cc (print): Add a special case for
222         trill spanner right sides. 
223
224         * scm/define-grobs.scm (all-grob-descriptions): set padding to 0.1
225
226         * lily/align-interface.cc (get_extents_aligned_translates): add
227         support for padding variable.
228
229         * lily/break-align-interface.cc (self_align_callback): oops: use
230         loop variable in guard.
231
232         * input/regression/repeat-percent-grace.ly: new file.
233
234         * lily/percent-repeat-engraver.cc (start_translation_timestep):
235         remember first currentCommandColumn of a grace run. Fixes issue 70.
236
237         * lily/percent-repeat-iterator.cc (class Percent_repeat_iterator):
238         move class definition to CC file.
239
240         * lily/multi-measure-rest.cc (percent): use robust_relative_extent()
241
242         * lily/slash-repeat-engraver.cc (listen_percent): don't warn for
243         measure-long  repeats.
244
245         * flower/include/international.hh: include stdarg.h
246
247 2006-09-30  Joe Neeman  <joeneeman@gmail.com>
248
249         * lily/page-turn-page-breaking.cc (calc_demerits): now that we allow
250         put_systems_on_pages to return an empty result, we need to assign
251         demerits properly in that case.
252         (put_systems_on_pages): Make the number of pages depend on the
253         evenness of page_number. Add auto-first-page-number.
254         (calc_subproblem): ensure that the page-number is even for the
255         left-hand page. Warn if the first page-turn doesn't fit onto the
256         first (right-hand) page.
257
258         * lily/page-spacing.cc (solve): bug: demerits_ would always be inf
259         (min_page_count): make this publicly accessible
260         (min_page_count): fix a bug when there are forced page breaks that
261         was introduced when I made this loop run backwards
262         (space_systems_on_n_pages, space_systems_on_n_or_one_more_pages):
263         replace space_systems_on_min_pages with these two. The logic in
264         space_systems_on_min_pages was getting too convoluted and is better
265         contained in page-turn-page-breaking.
266
267         * lily/page-turn-engraver.cc (breakable_column): remove an always-true
268         conditional
269         (breakable_column): typo
270
271         * lily/source-file.cc (get_line): fix off-by-one error
272         and clean up some of the logic
273
274 2006-09-29  Joe Neeman  <joeneeman@gmail.com>
275
276         * lily/page-breaking.cc (make_pages): honour the first-page-number
277         property
278
279 2006-09-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
280
281         * VERSION (PACKAGE_NAME): bump version.
282
283 2006-09-26  Pal Benko  <benko.pal@gmail.com>
284
285         * scm/parser-clef.scm: add petrucci-f3 and -f4 clefs
286         (the latter is the same as petrucci-f which is kept for compatibility)
287
288 2006-09-26  Erik Sandberg  <mandolaerik@gmail.com>
289         
290         * lily/part-combine-iterator.cc: solo1-event -> solo-one-event
291
292 2006-09-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
293
294         * lily/global-context.cc (run_iterator_on_me): break out of loop
295         if moment doesn't increase.
296
297         * scm/define-grob-properties.scm (all-user-grob-properties): add
298         forced property.
299
300         * lily/accidental.cc (after_line_breaking): read forced property.
301
302         * lily/accidental-engraver.cc (process_acknowledged): set 'forced
303         property.
304
305         * input/regression/accidental-forced-tie.ly:  new file.
306
307 2006-09-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
308
309         * ly/engraver-init.ly: set ignoreFiguredBassRest in Staff context.
310
311         * lily/figured-bass-engraver.cc: only listen to rest events if
312         ignoreFiguredBassRest is not set.
313
314         * scm/define-context-properties.scm
315         (all-user-translation-properties): add ignoreFiguredBassRest property
316
317 2006-09-24  Joe Neeman  <joeneeman@gmail.com>
318
319         * lily/paper-book.cc (get_system_specs):
320         (set_system_penalty): fix breakbefore.
321         We used to set a penalty on the system after the break, now we
322         set a permission on the system before the break
323
324         * lily/grob-property.cc: add scm debugging hooks into
325         property modification
326
327         * lily/context-property.cc:
328         * lily/engraver.cc:
329         rename make_foo_from_properties to internal_make_foo and
330         move it from context-property.cc to a member function of
331         Engraver.
332         
333         * lily/include/lily-guile-macros.hh:
334         overload ly_symbol2scm macro so that there is no more need
335         to use internal_foo
336
337         * lily/volta-repeat-iterator.cc:
338         * lily/tweak-engraver.cc:
339         * lily/tuplet-bracket.cc:
340         * lily/span-bar-engraver.cc:
341         * lily/script-engraver.cc:
342         * lily/prob-scheme.cc:
343         * lily/pointer-group-interface.cc:
344         * lily/parser.yy:
345         * lily/grob-scheme.cc:
346         * lily/grob-property.cc:
347         * lily/context.cc:
348         * lily/context-property.cc:
349         * lily/break-substitution.cc:
350         * lily/break-align-engraver.cc:
351         * lily/axis-group-interface.cc:
352         * lily/align-interface.cc:
353         remove calls to internal_FOO
354
355         * lily/system-start-delimiter-engraver.cc:
356         * lily/parenthesis-engraver.cc:
357         * lily/accidental-engraver.cc:
358         remove calls to make_foo_from_properties
359
360 2006-09-23  Graham Percival  <gpermus@gmail.com>
361
362         * Documentation/user/programming-iterfaces.itely: fix
363         def-music-function -> define-music... leftover.
364
365 2006-09-23  Joe Neeman  <joeneeman@gmail.com>
366
367         * lily/page-spacing.cc (min_page_count): by running the loop
368         backwards, we can calculate ragged_last properly.
369
370 2006-09-22  Mats Bengtsson  <mabe@drongo.s3.kth.se>
371
372         * ly/titling-init.ly (scoreTitleMarkup): Rename (typo!?)
373         printfirst-page-number -> print-first-page-number
374
375         * python/convertrules.py: corresponding rule.
376
377         * Documentation/user/page.itely (Page formatting): Document the
378         default values of all page layout parameters. 
379
380 2006-09-22  Erik Sandberg  <mandolaerik@gmail.com>
381
382         * lily/lexer.ll: remove limitation on music function arity. New
383         mode extratoken, which inserts extra EXPECT_* tokens after
384         MUSIC_FUNCTION token. Junk all MUSIC_FUNCTION_* tokens.
385
386         * lily/parser.yy: Change grammar for music function accordingly.
387
388         * lily/include/lily-parser.hh: New method get_state, new member
389         hidden_state. Works around a problem when parser fetches
390         MUSIC_FUNCTION token but not the following EXPECT_* token.
391
392         * lily/translator.cc, lily/context.cc:, lily/translator-group.cc:
393         remove try_music
394
395         * lily/*-engraver.cc, lily/*-performer.cc: Remove all remaining
396         references to Music; use ASSIGN_EVENT_ONCE everywhere
397
398         * lily/grob-info.cc: junk *music_cause
399
400         * lily/music.cc: copy eventified articulations to stream event
401
402         * lily/part-combine-iterator.cc: Cleanup using enums
403
404         * lily/translator-group.cc: Junk OldMusicEvent, and associated
405         methods
406
407         * lily/include/engraver.hh: Junk music.hh include
408
409         * lily/stream-event.cc: Changed constructors
410
411 2006-09-21  Graham Percival  <gpermus@gmail.com>
412
413         * Documentation/user/tweaks.itely (Fitting music onto fewer
414         pages): change settings to avoid warning messages.
415
416 2006-09-21  Mats Bengtsson  <mabe@drongo.s3.kth.se>
417
418         * Documentation/user/tweaks.itely (Fitting music onto fewer
419         pages): Add between-system-space setting. 
420
421 2006-09-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
422
423         * lily/accidental-placement.cc (calc_positioning_done): don't
424         trigger Y-extent calculation too early. Use pure_height instead.
425
426         * lily/scale.cc (LY_DEFINE): new file. 
427
428 2006-09-20  Joe Neeman  <joeneeman@gmail.com>
429
430         * lily/page-breaking.cc (find_chunks_and_breaks): ignore breaks
431         that happen at the start of a score: having a zero-length
432         chunk was messing up min_system_count calculations.
433
434         * lily/source-file.cc (get_line): lower_bound, not
435         binary_search. Fixes problem where point-and-click would
436         always point to the first line.
437
438 2006-09-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
439
440         * lily/accidental-placement.cc (calc_positioning_done): also put
441         stems into accidental support. 
442
443         * lily/tie-engraver.cc (process_music): also set tieMelismaBusy if
444         event_ detected.
445
446         * scm/script.scm (default-script-alist): avoid-slur and
447         slur-padding for portato script.
448
449         * lily/stem-tremolo.cc (translated_stencil): new function. 
450         (height): use new function. Fixes tremolos on whole notes.
451
452         * lily/slur-scoring.cc (get_best_curve): don't crash if no optimal
453         slur found.
454
455 2006-09-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
456
457         * scripts/abc2ly.py (try_parse_comment): idem.
458
459         * scripts/lilypond-book.py (find_toplevel_snippets): use 'foo' in
460         bar_string iso. string.find()
461
462         * lily/*.cc: idem.
463
464         * lily/slur.cc (get_curve): always use scm_is_pair() looping
465         scheme lists.  
466
467 2006-09-18  Graham Percival  <gpermus@gmail.com>
468
469         * Documentation/user/basic-notation.itely: add bug
470         warning about ties and octavation/clef.
471
472 2006-09-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
473
474         * VERSION (PACKAGE_NAME): release 2.9.18
475
476 2006-08-29  Milan Zamazal  <pdm@brailcom.org>
477
478         * elisp/lilypond-mode.el (LilyPond-command-alist): Don't try to
479         figure out midi file names right here.
480         
481 2006-09-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
482
483         * scm/framework-ps.scm (dump-stencil-as-EPS): naming pad-eps-boxes.
484
485         * scm/backend-library.scm: option naming:  gs-font-load*s*
486
487         * scm/framework-eps.scm (dump-stencils-as-EPSes): rename option to
488         include-eps-fonts
489
490 2006-09-17  Joe Neeman  <joeneeman@gmail.com>
491
492         * scm/define-music-types.scm (music-descriptions): remove
493         BreakEvent and fix {Page,Line}{Break,Turn}Event so
494         Music::to_event doesn't complain.
495
496         * lily/accidental-placement.cc (ape_compare):
497         * lily/semi-tie.cc (compare): 
498         * lily/note-column.cc (shift_compare): replace by XXX_less
499
500         * lily/tie-formatting-problem.cc (set_chord_outline): 
501         * lily/tie-column.cc (calc_positioning_done): 
502         * lily/system.cc (post_processing)
503         (get_paper_system): 
504         * lily/stem.cc (note_head_positions)
505         (calc_positioning_done): 
506         * lily/spanner.cc (do_break_processing)
507         (find_broken_piece): 
508         * lily/span-bar.cc (print): 
509         * lily/semi-tie-column.cc (calc_positioning_done): 
510         * lily/rest-collision.cc (calc_positioning_done): 
511         * lily/program-option.cc (get_help_string): 
512         * lily/note-collision.cc (get_clash_groups):
513         * lily/new-fingering-engraver.cc (position_scripts):
514         * lily/keyword.cc (Keyword_table):
515         * lily/hara-kiri-group-spanner.cc (request_suicide):
516         * lily/grob-pq-engraver.cc (stop_translation_timestep):
517         * lily/accidental-placement.cc (calc_positioning_done):
518         (stagger_apes):
519         * lily/beam.cc (get_beam_segments):
520         * lily/grob-array.cc (remove_duplicates):
521         use new vector_sort
522         
523         * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily:
524         ragged-last-bottom = ##f (test the new page breaker)
525
526         * flower/include/std-vector.hh (vector_sort): use STL sort stuff
527
528         * scm/define-context-properties.scm
529         (all-internal-translation-properties): remove properties that
530         were used to communicate page-turn stuff to the paper-column
531         engraver.
532
533         * lily/lily-guile.cc (robust_scm2string): new function
534
535         * lily/paper-column-engraver.cc: Clean up page turn stuff
536
537         * lily/page-turn-engraver.cc: Re-write the page turn logic here
538         instead of cluttering up paper-column-engraver.cc
539
540 2006-09-17  Nicolas Sceaux  <nicolas.sceaux@free.fr>
541
542         * scm/layout-page-dump.scm (scm): export utility function names,
543         to allow user writing cutsom dumping functions.
544
545         * scm/layout-page-layout.scm: export utility function names to
546         enable custom page breaking function writing. Tabify.
547         (line-next-space): use ?-suffix only for predicates
548         (page-maximum-space-to-fill): new function. Return the space
549         between first and bottom system of a page, to give to
550         space-systems.
551         (space-systems): use a space-to-fill argument (for instance as
552         computed by page-maximum-space-to-fill) instead of computing
553         internaly this space with the page height. That way, the caller
554         can adjust the space to use.
555         (make-page-from-systems, walk-paths): compute space to fill before
556         calling space-systems.
557
558 2006-09-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
559
560         * scm/script.scm (default-script-alist): set paddings for every
561         type here, increase for portato mark.
562
563         * scm/lily.scm (define-scheme-options): typo: add s, so it is 
564         -dinclude-eps-fonts
565
566 2006-09-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
567
568         * scm/define-grobs.scm (all-grob-descriptions): oops, typo:
569         use spanner::set-spacing-rods
570
571         * lily/note-column.cc: reformat.
572
573         * lily/rest-collision.cc (calc_positioning_done): fix whole/half
574         step positioning for note/rest combinations.
575
576         * input/regression/rest-note-collision.ly: new file.
577
578         * scm/define-grobs.scm (all-grob-descriptions): add
579         springs-and-rods
580
581         * flower/include/std-vector.hh: switch off again.
582
583         * VERSION (PATCH_LEVEL): bump to 2.9.18
584
585         * flower/include/std-string.hh: idem.
586
587         * flower/include/std-vector.hh (_GLIBCXX_DEBUG): set if NDEBUG not set.
588
589 2006-09-15  Mats Bengtsson  <mabe@drongo.s3.kth.se>
590
591         * ly/engraver-init.ly: Make FiguredBass accepted in GrandStaff and
592         PianoStaff. 
593
594 2006-09-08  Joe Neeman  <joeneeman@gmail.com>
595
596         * Documentation/user/page.itely: update page breaking documentation
597
598 2006-09-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
599
600         * lily/note-collision.cc (calc_positioning_done): only access
601         first head if available.
602
603         * lily/tuplet-engraver.cc: add tupletFullLengthNote to description.
604
605         * scm/framework-ps.scm (output-preview-framework): use new name.
606
607         * lily/program-option.cc (internal_set_option): use new names.
608
609         * Documentation/user/SConscript (lilypond_book_flags): update -d
610         variable names.
611
612         * Documentation/user/lilypond-book.itely (Inserting LilyPond
613         output into other programs): new variable names.
614
615         * scm/lily.scm (define-scheme-options): uniformize var names.
616
617         * lily/tuplet-engraver.cc (listen_tuplet_span): verify that
618         tuplets_ is non-empty before popping.
619
620 2006-09-07  Joe Neeman  <joeneeman@gmail.com>
621
622         * lily/spanner.cc (find_broken_piece): 
623         * lily/spacing-spanner.cc (get_columns): 
624         * lily/source-file.cc (get_line): 
625         * lily/simple-spacer.cc (get_column_description): 
626         * lily/keyword.cc (lookup): 
627         use the new binary search.
628
629         * flower/include/std-vector.hh: replace binary_search with
630         a more STL-like version
631
632 2006-09-04  Michael Welsh Duggan  <md5i@cs.cmu.edu>
633
634         * lily/tie-performer.cc: remove unused last_event_ property.
635         (class Tie_performer): add now_tied_heads_ property for
636         partially-tied heads.
637         (acknowledge_audio_element): when adding an Audio_note, put the
638         note in now_tied_heads_ if the audio note is partially tied.
639         (stop_translation_timestep): always include entries in
640         now_tied_heads_ in heads_to_tie_.
641
642         * lily/drum-note-performer.cc (process_music): look for tie-events
643         in the articulations; pass to Audio_note constructor.
644
645         * lily/note-performer.cc (process_music): look for tie-events in
646         the articulations; pass to Audio_note constructor.
647
648         * lily/audio-item.cc (Audio_note): Initialize tie_event_ in
649         constructor.
650
651         * lily/include/audio-item.hh (class Audio_note): add tie_event_.
652         include initializer in constructor.
653
654 2006-09-02  Joe Neeman  <joeneeman@gmail.com>
655
656         * lily/simple-spacer.cc (get_line_forces): Ignore loose columns
657         unless they are breakable. This fixes discrepancies between the forces
658         calculated here and the forces calculated in get_line_configuration.
659
660         * lily/grob.cc (pure_relative_y_coordinate): fix some
661         mis-estimation that was happening with piano staves.
662
663         * lily/constrained-breaking.cc (resize): don't choke if we get a
664         measure that won't fit on a line.
665         (combine_demerits): don't consider uniformity when ragged
666
667         * lily/page-spacing.cc (solve): why the f* were there two of these?
668         (calc_subproblem): properly handle the case where a system is taller
669         than the page.
670
671         * lily/system.cc (get_paper_system): ensure that all the permissions
672         and penalties are passed to the paper systems.
673
674         * lily/page-breaking.cc (create_system_list): support system-count.
675
676         * scm/define-grobs.scm (pure-print-callbacks): add
677         ly:script-interface::print
678
679         * lily/page-spacing.cc (min_page_count): fix calculation of min
680         pages if we are ragged and there are non-zero springs.
681
682         * scm/layout-page-layout.scm: if the pure-height estimates are under
683         the real height, allow space-systems to ignore padding if it is
684         needed in order to fit the systems on one page
685
686         * lily/optimal-page-breaking.cc (try_page_spacing): fix reading
687         ragged properties
688         (solve): fix performance problem. Make sure we always get at least
689         one solution
690
691         * lily/page-breaking.cc (make_pages): include write-page-breaks
692         and page-stencil
693
694         * lily/paper-score.cc (calc_breaking): remove Gourlay breaker
695
696         * scm/define-grobs.scm: add the new slur-callback
697         fix pure-relevant to not exclude grobs whose extent is already
698         calculated
699
700         * ly/paper-defaults.ly: make ly:optimal-breaking the new default
701         page breaker
702
703         * lily/slur.cc (pure_height): new callback to estimate the height
704         of a slur
705
706 2006-09-02  Graham Percival  <gpermus@gmail.com>
707
708         * Documentation/user/invoking.itely: small update on
709         MacOS X notes; thanks Trevor!
710
711 2006-09-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
712
713         * VERSION (MY_PATCH_LEVEL): release 2.9.17
714
715         * lily/lexer.ll: accept EOF in all states.
716
717         * lily/tempo-performer.cc (Tempo_performer): initialize last_tempo_.
718
719         * lily/source-file.cc (Source_file): always 0-terminate character
720         array, to prevent Flex from barfing.
721
722         * lily/global-context.cc (get_output): robustness: don't crash if
723         no Score context found.
724
725         * lily/include/book.hh (class Book): idem.
726
727         * lily/include/context-def.hh (struct Context_def): idem.
728
729         * lily/include/score.hh (class Score): don't derive from Input.
730
731         * lily/book.cc (Book): add a copy ctor. 
732
733         * buildscripts/output-distance.py (FileLink.calc_distance): count
734         orphans in distance too.
735
736         * python/midi.c (midi_parse_track): robustness: don't read past
737         end of string.
738
739         * ly/performer-init.ly: add Control_track_performer, move
740         Tempo_performer and Time_signature_performer to Score.        
741
742         * lily/score-performer.cc (acknowledge_audio_elements): override
743         from base class: add to audio-columns
744
745         * lily/control-track-performer.cc (add_text): new file: generate
746         the control track.
747
748         * lily/performance.cc: move output_header_track to
749         Control_track_performer ()
750
751         * lily/midi-walker.cc (Midi_walker): get channel in constructor.
752
753         * lily/include/midi-item.hh (class Midi_channel_item): insert
754         class into hierarchy, for items that can have a channel setting. Dehungarify.
755
756         * lily/include/performer.hh (class Performer): remove
757         play_element();  move functionality into announce/acknowledge.
758
759         * lily/audio-staff.cc (output): remove channel_ from Midi_track.
760
761         * lily/tie-engraver.cc (stop_translation_timestep): only wipe
762         heads_to_tie_ if there are new heads to tie.  Fixes polyphony in ties.
763
764 2006-08-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
765
766         * lily/tie-engraver.cc (stop_translation_timestep): robustness for
767         ambituses.
768
769         * lily/all-font-metrics.cc: remove TFM support.
770
771         * lily/include/tfm.hh: remove TFM support, TFM reader.
772
773         * lily/include/binary-source-file.hh: remove Binary_source_file.
774
775 2006-08-27  Graham Percival  <gpermus@gmail.com>
776
777         * Documentation/topdocs/NEWS.itely: add @c marker for
778         stuff I've processed.
779
780         * Documentation/user/ various: info from NEWS.
781
782 2006-08-27  Joe Neeman  <joeneeman@gmail.com>
783
784         * lily/paper-column-engraver.cc (finalize): Oops, this change
785         should have gone in on 2006-08-23
786
787 2006-08-26  Mats Bengtsson  <mabe@s3.kth.se>
788
789         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use double
790         quotes to quote arguments. Fixes Windows problem.
791
792         * python/lilylib.py (progress): idem
793
794 2006-08-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
795
796         * scripts/musicxml2ly.py: fix for importing
797         minor key signatures from MusicXML.  (Phillip Kirlin)
798
799 2006-08-24  Phillip Kirlin  <pkirlin@acm.org>
800
801         * python/musicxml.py: 
802         (Attributes.get_key_signature): now correctly retrieves mode from 
803         MusicXML. 
804
805 2006-08-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
806
807         * lily/parser.yy (output_def_body): take ownership of identifier
808         back to C++.
809
810         * Documentation/user/advanced-notation.itely (Metronome marks):
811         update use of \tempo in \midi.
812
813         * VERSION: release 2.9.16
814         
815 2006-08-24  Erik Sandberg  <mandolaerik@gmail.com>
816
817         * input/mutopia/*: upgrade to new midi tempo syntax (repairs make
818         web partially)
819
820 2006-08-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
821
822         * input/regression/tie-chord-partial.ly: clarify example.
823
824         * scm/define-music-properties.scm (all-music-properties): remove
825         untied.
826
827         * ly/music-functions-init.ly: remove \untied.
828
829         * lily/tie-engraver.cc (struct Head_event_tuple): store both
830         stream events and music events.
831         (stop_translation_timestep): search acknowledged heads for
832         tie-event.
833
834         * input/regression/tie-chord-partial.ly: new file.
835
836         * scm/define-markup-commands.scm (char): use ly:wide-char->utf-8
837         for \char markup command.
838
839         * scm/define-event-classes.scm (unlistened-music-event-classes): idem.
840
841         * scm/define-music-types.scm (music-descriptions): consistency:
842         Use solo-{one,two}-event iso. solo-[12]-event.
843
844         * lily/part-combine-engraver.cc (process_music):
845         Use solo-{one,two}-event iso. solo-[12]-event.
846
847         * ly/declarations-init.ly (partCombineListener): add Timing as
848         alias
849
850         * flower/std-string.cc (string_copy): use copy ()
851
852         * lily/source-file.cc (Source_file): use copy(). Remove contents_str0()
853
854 2006-08-24  Graham Percival  <gpermus@gmail.com>
855
856         * Documentation/user/changing-defaults.itely, global.itely,
857         lilypond-book.itely, page.itely: minor changes from mailist.
858
859 2006-08-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
860
861         * buildscripts/mutopia-index.py (allfiles): filter lily-XXX and
862         snippet-map
863
864         * scm/define-context-properties.scm
865         (translator-property-description): robustness: detect type errors
866         in property definitions.
867
868         * lily/parser.yy (score_body): protect SCORE_IDENTIFIER result
869         after getting it from SCM. 
870
871         * lily/smobs.cc (protect_smob): switch off fancy smob protection
872         for now. 
873
874         * lily/include/performer.hh (class Performer): strip get_tempo()
875         method.
876
877         * lily/midi-def.cc: strip file.
878
879         * lily/lexer.ll (Lily_lexer): don't protect hash key separately.
880
881         * lily/include/context-def.hh (struct Context_def): use
882         VIRTUAL_COPY_CONSTRUCTOR().
883
884         * lily/source-file.cc: smobification.
885
886         * lily/include/source-file.hh (class Source_file): smobify
887         Source_file. Trim redundant members.
888
889         * lily/parser.yy (Lily_lexer::try_special_identifiers): unprotect
890         clones after creation. This plugs a huge memory leak.
891
892         * python/convertrules.py (FatalConversionError.sub_tempo):
893         complete rule for \midi{ \tempo }
894
895         * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): idem.
896
897         * input/mutopia/F.Schubert/morgenlied.ly (pianoLH): update tempo.
898
899 2006-08-23  Joe Neeman  <joeneeman@gmail.com>
900
901         * input/regression/optimal-page-breaking-hstretch.ly: test for
902         ragged-last-bottom also
903
904         * lily/paper-column-engraver.cc (finalize): make the end of a score
905         breakable by default. This is to balance out a change in behaviour
906         of the page-turn-breaker which no longer makes the end of a score
907         breakable.
908
909         * lily/paper-book.cc (pages): set the systems_ once the pages are
910         broken
911
912         * lily/page-turn-page-breaking.cc (calc_subproblem): use the new
913         Page_breaking interface.
914
915         * lily/page-breaking.cc (class Page_breaking): make the interface
916         more consistent and provide abstractions for dealing with
917         Line_divisions.
918
919         * lily/optimal-page-breaking.cc (solve): use a more straightforward
920         algorithm. Use the new interface to Page_breaking.
921
922         * lily/page-spacing.cc: better support for ragged-bottom and
923         ragged-last-bottom
924
925 2006-08-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
926
927         * python/convertrules.py (conv): warning on \tempo{}
928
929         * ly/performer-init.ly: set tempoWholesPerMinute.
930
931         * ly/midi-init.ly: remove \midi
932
933         * lily/tempo-performer.cc: look at tempoWholesPerMinute to set
934         MIDI tempo.
935
936         * lily/metronome-engraver.cc (process_music): use tempoUnitCount
937         tempoUnitDuration for determining what to print.
938
939         * lily/lyric-extender.cc: typo.
940
941         * lily/parser.yy (output_def_body): disallow \tempo in \midi{}
942
943         * lily/duration-scheme.cc (LY_DEFINE): ly:duration-length: new
944         function.
945
946         * scm/lily.scm (define-scheme-options): alphabetize, add eps-pad-boxes.
947
948         * scm/framework-ps.scm (dump-stencil-as-EPS): only pad boxes if
949         eps-pad-boxes is set.
950
951         * scripts/lilypond-book.py (main): use -deps-pad-boxes.
952
953         * THANKS: update sponsors.
954
955         * ly/english.ly: quarter tone naming (thanks, Trevor Baca)
956
957         * Documentation/topdocs/NEWS.tely (Top): doc new feature.
958
959         * input/regression/tie-chord-untied.ly: new file.
960
961         * lily/tie-engraver.cc (acknowledge_note_head): check 'untied property.
962
963         * scm/define-music-properties.scm (all-music-properties): add
964         'untied property.
965
966         * buildscripts/mutopia-index.py (allfiles): look for .ly rather
967         than .ly.txt.
968         (headertext_nopics): sanitize no-examples text.
969
970         * scm/page.scm (make-page-stencil): don't rely on extents of
971         page-stencil. This fixes spurious space around .EPS files produced
972         with the EPS backend.
973
974 2006-08-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
975
976         * lily/stencil-scheme.cc (LY_DEFINE): make extent arguments optional.
977
978         * lily/hara-kiri-engraver.cc (process_music): remember
979         keepAliveInterfaces after processing \set
980
981         * lily/lyric-extender.cc (print): support left/right-padding for
982         extenders.
983
984         * scm/documentation-generate.scm (string-append): revert lilypond/
985         path, doc why.
986
987 2006-08-20  Graham Percival  <gpermus@gmail.com>
988
989         * Documentation/user/lilypond.tely: clarification to
990         license presentation (not to actual license).
991
992         * Documentation/user/basic-notation.itely,
993         instrument-notation.itely: minor changes.
994
995         * input/ {regression, test}/+.ly: clarification to
996         text (you can click on examples).  Thanks, Mats!
997
998         * input/manual/bar-lines.ly: adds ||: repeats.
999
1000 2006-08-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
1001
1002         * make/ly-vars.make (OMF_FILES): strip ps.gz from OMF_FILES 
1003
1004         * scm/documentation-lib.scm (texi-file-head): category LilyPond.
1005
1006         * Documentation/user/lilypond.tely: strip lilypond/ from info
1007         links, rename to category LilyPond
1008
1009         * lily/pango-font.cc (description_string): new function.
1010
1011         * VERSION: release 2.9.15
1012
1013         * lily/spacing-engraver.cc (stop_translation_timestep): use
1014         Dscho's fix for spacing spanner. 
1015
1016         * scm/define-music-types.scm (music-descriptions): use
1017         apply-output-event for ApplyOutputEvent
1018
1019         * lily/output-property-engraver.cc (listen_apply_output): rename
1020         from listen_layout_instruction.
1021
1022         * lily/piano-pedal-engraver.cc (struct Pedal_type_info): new
1023         function protect()
1024
1025 2006-08-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
1026
1027         * scm/lily.scm (lilypond-all): option read-file-list: substitute
1028         commandline args with contains, split by \n.
1029
1030         * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
1031         write snippet-names file, call with -dread-file-list. Fixes
1032         command limitations on 64-bit systems.
1033
1034         * input/regression/stencil-color-rotation.ly: new file.
1035
1036         * lily/include/translator.hh (struct Acknowledge_information):
1037         revert: don't use Protected_scm in global objects, as GUILE can't
1038         handle gc_unprotect from automated destructors on MacOS X.
1039  
1040         * lily/grob.cc (get_print_stencil): use retval.expr() as base for
1041         color, not the original stencil. Fixes combinations of
1042         color/transparency/rotation. 
1043
1044         * scripts/lilypond-book.py (main): add --formats=eps for
1045         texinfo/latex.
1046
1047         * lily/spacing-engraver.cc (stop_translation_timestep): don't
1048         crash if spacing_ is nonexistent.
1049
1050 2006-08-14  Mats Bengtsson  <mabe@s3.kth.se>
1051
1052         * scripts/lilypond-book.py (output): Remove obsolete(!?)
1053         \catcode`\@=12 in the LaTeX output.
1054
1055 2006-08-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
1056
1057         * scm/define-music-types.scm (music-descriptions):
1058         use sustain-event iso. sustain-pedal-event.
1059
1060 2006-08-11  Joe Neeman  <joeneeman@gmail.com>
1061
1062         * scripts/convert-ly.py: honour the -n command-line switch
1063
1064 2006-08-10  Han-Wen Nienhuys  <hanwen@lilypond.org>
1065
1066         * scm/output-lib.scm (bar-line::calc-glyph-name): add dashed liine
1067         break specification.
1068
1069 2006-08-10  Joe Neeman  <joeneeman@gmail.com>
1070
1071         * Documentation/user: convert-ly the user manual
1072
1073 2006-08-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
1074
1075         * stepmake/aclocal.m4: version check patch (thanks MWD)
1076
1077         * ly/music-functions-init.ly: robustness. Don't crash if
1078         currentBarNumber is not a number.
1079
1080         * VERSION (PATCH_LEVEL): bump.
1081
1082 2006-08-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
1083
1084         * stepmake/aclocal.m4: better version check; handle fooX.Y
1085         binaries too.
1086
1087         * ly/performer-init.ly: instrument name fixup.
1088
1089         * input/manual/chord-names-jazz.ly (banterProperties):
1090         instrumentName update
1091
1092         * scm/define-event-classes.scm (lambda): use ly:is-listened-event-class
1093
1094         * lily/ly-module.cc (ly_module_symbols): use ly_hash_table_keys
1095
1096         * lily/translator.cc (LY_DEFINE): ly:is-listened-event-class: new
1097         function. Use hash tables to check membership.
1098
1099         * lily/general-scheme.cc (LY_DEFINE): new function.
1100
1101         * lily/piano-pedal-engraver.cc (struct Pedal_type_info): idem
1102
1103         * lily/include/translator.hh (struct Acknowledge_information): add
1104         Protected_scm
1105
1106         * ly/music-functions-init.ly: change name to BreathingEvent
1107
1108         * input/regression/*.ly: apply it.
1109
1110         * python/convertrules.py (conv): better instrumentName conversion
1111         rule.
1112
1113         * scm/define-music-types.scm (music-descriptions): add
1114         line-break-event to LineBreakEvent music
1115
1116         * lily/music.cc (to_event): don't crash if music type not set.
1117
1118         * lily/spacing-loose-columns.cc (set_loose_columns): don't barf if
1119         spacing not set.
1120
1121         * lily/spacing-engraver.cc (stop_translation_timestep): set
1122         spacing for proportional notation too.
1123
1124         * scm/translation-functions.scm (format-bass-figure): inspect
1125         stream-event.
1126
1127         * scripts/lilypond-book.py (bindir): add bindir to $PATH.
1128
1129 2006-08-08  Joe Neeman  <joeneeman@gmail.com>
1130
1131         * lily/include/constrained-breaking.hh: add Line_details (Prob*)
1132
1133         * scm/page.scm (make-page): make it friendlier to call (esp. from C++)
1134
1135         * scm/layout-page-layout.scm (make-page-from-systems): new function
1136         (optimal-page-breaks): use the new page-breaking calling convention
1137
1138         * scm/define-context-properties.scm (all-user-translation-properties):
1139         add revokePageTurns
1140
1141         * lily/paper-column-engraver.cc (stop_translation_timestep): add
1142         revokePageTurns  functionality. If there is a special barline within
1143         the breakable region, break there instead of at the end of the region.
1144
1145         * lily/paper-book.cc (pages): use the new page-breaking calling
1146         convention
1147
1148 2006-08-07  Erik Sandberg  <mandolaerik@gmail.com>
1149
1150         * lily/lexer.ll, lily/source-file.cc: Add \sourcefileline command
1151
1152         * scripts/lilypond-book.py: insert \sourcefileline command in
1153         output, so lilypond error messages refer to the spot in the
1154         original .lytex / .itely sourcefile.
1155
1156 2006-08-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
1157
1158         * lily/spacing-loose-columns.cc (set_loose_columns): oops: use
1159         space to next column for distance to fixed col.
1160
1161         * VERSION (PACKAGE_NAME): release 2.9.14
1162
1163         * lily/pitched-trill-engraver.cc (make_trill): do set_parent also
1164         if no accidental.
1165
1166         * lily/accidental-engraver.cc (process_acknowledged): don't create
1167         accidental for trill span event. This fixes spurious accidentals
1168         on trills.
1169
1170 2006-08-04  Mats Bengtsson  <mabe@s3.kth.se>
1171
1172         * scm/define-grob-properties.scm (all-user-grob-properties):
1173         Clarify documentation of side-axis and direction. Thanks to Paul
1174         for the inspiration.
1175
1176         * lily/bar-line.cc: Add documentation for "||:" also in the
1177         interface documentation.
1178
1179 2006-08-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
1180
1181         * lily/spacing-loose-columns.cc (set_loose_columns): bugfix.
1182
1183         * lily/paper-column.cc (set_system): new function.
1184
1185         * lily/spacing-engraver.cc (stop_translation_timestep): store
1186         SpacingSpanner refs in Paper_column.
1187
1188         * lily/spacing-loose-columns.cc (set_loose_columns): rewrite
1189         compute loose clique spacing using GraceSpacing/SpacingSpanner.
1190
1191 2006-08-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
1192
1193         * lily/beam-engraver.cc (listen_beam): add method for
1194         Grace_beam_engraver too.
1195
1196 2006-08-03  Mats Bengtsson  <mabe@s3.kth.se>
1197
1198         * python/convertrules.py: Fix indentation bug that broke
1199         conversion of files older than 1.3.117.
1200         Fix escape error in the description for 2.9.6.
1201
1202 2006-08-02  Erik Sandberg  <mandolaerik@gmail.com>
1203
1204         * lily/*-engraver.cc: convert all try_music functions to listen_*
1205         functions.
1206
1207         * lily/piano-pedal-engraver.cc: some additional cleanups: use
1208         enums to represent pedal types, and calculate more data statically.
1209
1210         * scm/part-combiner.scm (recording-group-emulate): create a
1211         softcoded substitute for recording-group-engraver.cc.
1212
1213         * lily/music.cc: make a common transpose function for events and
1214         music
1215
1216         * ly/declarations-init.ly: change melisma/melismaEnd. Eliminates
1217         ManualMelismaEvent, and obsoletes Melisma_translator.
1218
1219 2006-08-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
1220
1221         * input/test/instrument-name-align.ly: update version.
1222
1223 2006-08-02  Mats Bengtsson  <mabe@s3.kth.se>
1224
1225         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
1226         Doc the --pdf flag to lilypond-book.
1227
1228 2006-07-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
1229
1230         * Documentation/topdocs/NEWS.tely (Top): add description.
1231
1232         * input/regression/tuplet-full-length-note.ly: add file.
1233
1234         * lily/instrument-name-engraver.cc (acknowledge_axis_group):
1235         always store axis group.
1236
1237 2006-07-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
1238
1239         * input/regression/instrument-switch.ly: new file.
1240
1241         * lily/instrument-switch-engraver.cc (process_music): new file.
1242
1243         * ly/engraver-init.ly: add Instrument_switch_engraver
1244
1245         * ly/music-functions-init.ly: \instrumentSwitch
1246
1247         * scm/define-context-properties.scm
1248         (all-user-translation-properties): add instrumentCueName
1249
1250         * scm/define-grobs.scm (all-grob-descriptions): add InstrumentSwitch
1251
1252 2006-07-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
1253
1254         * ly/music-functions-init.ly: music function \transposition.
1255
1256         * lily/parser.yy (command_element): softcode \transposition.
1257
1258         * lily/fall-engraver.cc (process_music): delta-pitch -> delta-step.
1259         (process_music): oops.
1260
1261         * lily/instrument-name-engraver.cc (start_spanner): new
1262         function. Create spanner when property changes.
1263         (stop_spanner): new function.
1264
1265         * python/convertrules.py (conv): add rule.
1266
1267         * lily/instrument-name-engraver.cc: shortVocalName iso. vocNam,
1268         shortInstrumentName iso. instr.
1269
1270         * scm/output-ps.scm (dashed-line): add phase argument to
1271         dashed-line.
1272
1273         * lily/bar-line.cc (dashed_bar_line): new function.
1274         (compound_barline): support \bar "dashed". 
1275
1276         * lily/lily-parser-scheme.cc (LY_DEFINE): only write
1277         --output=DIR to DIR/BASE if it is a dir. 
1278
1279         * flower/file-name.cc (file_part): new function
1280         (dir_part): new function
1281
1282         * lily/lily-parser-scheme.cc (LY_DEFINE): 
1283
1284         * DEDICATION: update
1285
1286 2006-07-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
1287
1288         * lily/instrument-name-engraver.cc: formatting.
1289
1290         * python/convertrules.py (conv): bugfix for \epsfile.
1291
1292 2006-07-25  Joe Neeman  <joeneeman@gmail.com>
1293
1294         * lily/grob.cc:
1295         
1296         * lily/gourlay-breaking.cc: Oops, these should have been included
1297         in my last commit
1298
1299 2006-07-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
1300
1301         * scripts/*.py (program_name): cleanup relocation snippets.
1302
1303         * scripts/convert-ly.py (datadir): remove LILYPONDPREFIX support.
1304
1305 2006-07-24  Joe Neeman  <joeneeman@gmail.com>
1306
1307         * scm/define-grobs.scm (all-grob-descriptions): make NonMusicalPaperColumn
1308         page-breakable by default
1309
1310         * scm/layout-page-layout.scm (space-systems): fix bug where the force isn't
1311         correctly calculated for a single-system page
1312
1313         * scm/lily-library.scm (interval-sane?): also check that the first number is no
1314         bigger than the second number
1315
1316         * lily/simple-spacer.cc (solve): allow compression even when ragged (but we
1317         acknowledge that we aren't satisfying constraints)
1318
1319         * lily/hara-kiri-group-spanner.cc (request_suicide): give equal treatment to
1320         non-Items
1321
1322         * lily/grob.cc (pure_height): add minimum-Y-extent
1323
1324         * lily/gourlay-breaking.cc (solve): don't ignore a compression force, even if we're
1325         ragged
1326
1327         * lily/constrained-breaking.cc: convert code to use new Matrix class
1328         (get_best_solution): new function
1329
1330         * scm/page.scm (make-page-stencil): don't crash if we annotate-layout when there
1331         is a page with no systems
1332
1333 2006-07-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
1334
1335         * VERSION (PACKAGE_NAME): release 2.9.13
1336
1337         * scm/define-grobs.scm (all-grob-descriptions): remove stray
1338         assignment.
1339
1340 2006-07-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
1341
1342         * Documentation/topdocs/NEWS.tely (Top): doc new features.
1343
1344         * scm/output-lib.scm (grace-spacing::calc-shortest-duration): new
1345         function.
1346
1347         * scm/define-grob-properties.scm (all-user-grob-properties):
1348         remove grace-space-factor.
1349
1350         * scm/define-grob-interfaces.scm (grace-spacing-interface): add
1351         grace-spacing-interface
1352         (spacing-options-interface): add.
1353
1354         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add Grace_spacing_engraver
1355
1356         * lily/spacing-options.cc (get_duration_space): move function from spacing-basic.cc
1357
1358         * lily/spacing-basic.cc (note_spacing): do init_from_grob on
1359         GraceSpacing object.
1360
1361         * lily/note-spacing.cc: fix prop list formatting
1362
1363         * lily/beaming-pattern.cc (de_grace): new function. Sensible
1364         beaming for grace notes too.
1365
1366         * input/regression/spacing-grace.ly: update.
1367
1368         * lily/grace-spacing-engraver.cc: new file.
1369
1370         * lily/spacing-spanner.cc: add strict-grace-spacing.
1371
1372 2006-07-20  Graham Percival  <gpermus@gmail.com>
1373
1374         * lily/parser.yy: compile fix.
1375
1376 2006-07-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
1377
1378         * scm/define-grobs.scm (all-grob-descriptions): typo.
1379
1380         * scm/framework-eps.scm (dump-stencils-as-EPSes): just strip
1381         .eps extension from includegraphics.
1382
1383         * scripts/lilypond-book.py (main): add support for --pdf. 
1384
1385         * lily/spacing-spanner.cc (calc_common_shortest_duration): use
1386         callback to compute common shortest duration.
1387         (set_springs): typo.
1388
1389         * scm/define-grob-properties.scm (all-user-grob-properties): add
1390         strict-grace-spacing.
1391
1392         * lily/spacing-determine-loose-columns.cc (is_loose_column):
1393         support float_grace_columns_.
1394
1395         * lily/spacing-options.cc (init_from_grob): new file.
1396
1397         * Documentation/topdocs/NEWS.tely (Top): doc tupletFullLengthNote.
1398
1399         * input/regression/spacing-loose-grace.ly: new file.
1400
1401         * Documentation/topdocs/NEWS.tely (Top): document new feature.
1402
1403         * lily/tuplet-engraver.cc (struct Tuplet_description): read
1404         tupletFullLengthNote too. Choose right bound depending on value.
1405
1406         * input/regression/tuplet-full-length-note.ly: new file.
1407
1408 2006-07-19  Erik Sandberg  <mandolaerik@gmail.com>
1409
1410         * lily/*-performer.cc: Converted try_music to listen_*
1411
1412         * lily/grob-info.cc, lily/engraver.cc: represent the cause of grob
1413         as a stream-event internally. Introduce event_cause (), deprecate
1414         music_cause ().
1415
1416         * scm/define-music-types.scm: Removed BusyPlayingEvent
1417         
1418 2006-07-19  Mats Bengtsson  <mabe@s3.kth.se>
1419
1420         * Documentation/user/advanced-notation.itely (Font selection):
1421         Document how to get a list of available fonts using 'lilypond
1422         -dshow-available-fonts blabla'.
1423
1424 2006-07-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
1425
1426         * GNUmakefile.in: filter lily-XXX.pdf files.
1427
1428         * scm/define-grob-interfaces.scm (bend-after-interface): add thickness.
1429
1430         * scm/define-grob-properties.scm (all-internal-grob-properties):
1431         remove delta-pitch. Use delta-position everywhere.
1432
1433         * scm/output-lib.scm (fall::print): use new order.
1434
1435         * scm/output-ps.scm (path): reorder arguments.
1436
1437         * scm/output-svg.scm (path): support for path primitive.
1438
1439         * input/regression/bend-after.ly: new file.
1440
1441         * Documentation/user/GNUmakefile ($(outdir)/%.pdf): foolproof
1442         recipe for eps -> pdf conversion.
1443
1444 2006-07-19  Erik Sandberg  <mandolaerik@gmail.com>
1445
1446         * lily/parser.yy, lily/lexer.ll: added some simplifications by
1447         Angelo Contardi.
1448
1449 2006-07-19  Graham Percival  <gpermus@gmail.com>
1450
1451         * input/manual/screech-boink.ly: moved to here.
1452
1453         * input/screech-boink.ly: deleted.
1454
1455         * scm/define-grob-properties.scm: clarify doc string.
1456
1457 2006-07-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
1458
1459         * Documentation/topdocs/NEWS.tely (Top): doc new feature.
1460
1461         * scm/output-ps.scm (path): define path.
1462
1463         * scm/define-stencil-commands.scm
1464         (ly:register-stencil-expression): add path.
1465
1466         * scm/define-music-properties.scm (all-music-properties): add delta-pitch.
1467
1468         * ly/engraver-init.ly: add Fall_engraver
1469
1470         * lily/parser.yy (music_function_event): allow musicfunction
1471         without music arg as music_function_event.
1472
1473         * lily/grob-scheme.cc (LY_DEFINE):
1474         ly:grob-robust-relative-extent. New function.
1475
1476         * scm/define-grobs.scm (all-grob-descriptions): add BendAfter
1477
1478         * scm/define-music-types.scm (music-descriptions): add BendAfterEvent.
1479
1480         * scm/output-lib.scm (fall::print): new function
1481
1482         * lily/fall-engraver.cc (stop_fall): new file.
1483
1484         * ly/music-functions-init.ly: alphabetise.
1485
1486         * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): pdf iso. eps as
1487         base.
1488
1489 2006-07-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
1490
1491         * VERSION (PATCH_LEVEL): bump version. Release 2.9.12
1492
1493         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
1494         doc pdftex usage.
1495
1496         * lily/translator-group.cc (connect_to_context): non const error message.
1497
1498         * Documentation/user/GNUmakefile ($(outdir)/%.pdf): update to use PDF
1499
1500         * scm/paper.scm (internal-set-paper-size): define landscape to #f
1501         if unset.
1502
1503         * scm/framework-ps.scm (convert-to-pdf): swap h and w in case of landscape. 
1504
1505         * stepmake/stepmake/texinfo-rules.make: strip DVI support.
1506
1507         * scm/framework-eps.scm (dump-stencils-as-EPSes): generate
1508         systems.pdftex too.
1509
1510         * scm/backend-library.scm (postscript->pdf): use -dEPSCrop for PDF.
1511
1512         * make/lilypond-vars.make (TEXINPUTS): add pdf output format.
1513
1514         * Documentation/topdocs/NEWS.tely (Top): add pdftex note.
1515
1516         * scm/output-ps.scm (resetrotation): use gsave/grestore for rotation.
1517
1518         * lily/main.cc (parse_argv): don't overwrite previous --formats string.
1519
1520         * scm/backend-library.scm (postscript->pdf): strip .eps too. 
1521
1522 2006-07-14  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1523
1524         * scm/layout-page-layout.scm: Define module, tidy code, use more
1525         functions iso. a single big one.
1526
1527         * scm/layout-page-dump.scm: move page dump functions used in two
1528         pass spacing to this file. Define module.
1529
1530         * scm/lily.scm (ly:load): don't load layout-page-layout.scm
1531          (separate module)
1532
1533         * ly/paper-defaults.ly: use module layout-page-layout.
1534
1535 2006-07-14  Erik Sandberg  <mandolaerik@gmail.com>
1536
1537         * lily/music.cc: Revised MusicEvent event class. It now contains
1538         event data directly instead of encapsulating it in music. The
1539         previously used class is renamed to OldMusicEvent.
1540
1541         * lily/stream-event.cc: Stream events are now probs.
1542         
1543         * lily/translator-group.cc, lily/translator.cc: Translators can
1544         now listen directly to stream events, by using macros
1545         [DECLARE,IMPLEMENT]_TRANSLATOR_LISTENER.
1546
1547         * lily/arpeggio-engraver.cc: Converted to use new event system
1548
1549         * THANKS: Corrected spelling mistake.
1550
1551 2006-07-12  Graham Percival  <gpermus@gmail.com>
1552
1553         * Documentation/user/SConscript, make/lilypond-vars.make,
1554         input/GNUmakefile: doc build looks in input/manual instead
1555         of input/test/
1556
1557         * input/manual/ GNUmakefile, SConscript: build files for
1558         input/manual/
1559
1560         * input/test/ various: some files moved to input/manual/ 
1561
1562         * Documentation/user/basic-notation.itely: small updates;
1563         thanks Kieren and Charles!
1564
1565 2006-07-12  Han-Wen Nienhuys  <hanwen@lilypond.org>
1566
1567         * VERSION (PACKAGE_NAME): release 2.9.11
1568
1569         * Documentation/topdocs/NEWS.tely (Top): update prop value 
1570
1571         * Documentation/user/basic-notation.itely (Tuplets): new property
1572         value.
1573
1574 2006-07-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
1575
1576         * python/convertrules.py (conv): tweaks. 
1577
1578         * VERSION (PATCH_LEVEL): bump version.
1579
1580         * python/convertrules.py (conv): add rule for
1581         tupletNumberFormatFunction.
1582
1583         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
1584         tupletNumberFormatFunction.
1585
1586         * scm/define-grobs.scm (all-grob-descriptions): calc TupletNumber
1587         text through 'text callback.
1588
1589         * lily/time-scaled-music-iterator.cc (construct_children): copy
1590         tweaks generated events.
1591
1592         * scm/define-context-properties.scm
1593         (all-user-translation-properties): remove tupletNumberFormatFunction
1594
1595         * lily/tuplet-engraver.cc (process_music): don't read
1596         tupletNumberFormatFunction
1597
1598         * scm/output-lib.scm (tuplet-number::calc-fraction-text): new
1599         function.
1600
1601 2006-07-11  Erik Sandberg  <mandolaerik@gmail.com>
1602
1603         * lily/global-context-scheme.cc: Separated ly:run-translator into
1604         smaller pieces.
1605
1606         * lily/score-engraver.cc, lily/score-performer.cc,
1607         scm/define-context-properties.scm: Make paper/midi output
1608         accessable as a context property.
1609
1610         * lily/score-translator.cc, lily/score-context.cc: Removed.
1611
1612 2006-07-07  Guido Amoruso  <guidonte@katamail.com>
1613
1614         * scm/ps-to-png.scm (Module): 
1615         * scm/framework-tex.scm (Module): 
1616         * scm/framework-ps.scm (Module): 
1617         * scm/backend-library.scm (Module): 
1618         * scm/framework-ps.scm: invoke gs with "-dDEVICEWIDTHPOINTS" and
1619         "dDEVICEHEIGHTPOINTS".
1620
1621 2006-07-04  Graham Percival  <gpermus@gmail.com>
1622
1623         * Documentation/user/ various: general improvements to
1624         "working with lilypond files" section.
1625
1626 2006-07-03  Erik Sandberg  <mandolaerik@gmail.com>
1627
1628         * lily/sequential-iterator.cc: Change the default get_music_list
1629         to read elements-callback music property
1630
1631         * scm/define-music-types.scm, scm/music-functions.scm: Cleaner
1632         processing of multimeasure rests. Softcoded
1633         sequential-music-iterator.
1634
1635         * lily/sequential-music-iterator.cc: Removed.
1636
1637 2006-06-28  Graham Percival  <gpermus@gmail.com>
1638
1639         * Documentation/user/basic-notation.itely: clarify \repeatTie.
1640
1641 2006-06-27  Erik Sandberg  <mandolaerik@gmail.com>
1642
1643         * lily/parser.yy: Wrap non-post-events in EventChords before
1644         assigning them to identifiers.
1645
1646 2006-06-27  Mats Bengtsson  <mabe@s3.kth.se>
1647
1648         * lily/bar-line.cc (compound_barline): Fix parenthesis error,
1649         gives correct vertical placement of \bar ":" in all staff
1650         sizes. Thanks Martial!
1651
1652 2006-06-26  Graham Percival  <gpermus@gmail.com>
1653
1654         * Documentation/user/invoking.itely : minor update from mailist.
1655
1656 2006-06-26  Erik Sandberg  <mandolaerik@gmail.com>
1657
1658         * lily/ various: Introduce stream events of types Prepare,
1659         OneTimeStep, CreateContext, AnnounceNewContext, RemoveContext,
1660         ChangeContext, SetProperty, RevertProperty, Override and Revert.
1661
1662         * lily/global-context*.cc: Time is now -inf before iteration
1663         starts.
1664
1665         * lily/include/context.hh: Removed unique_, init_
1666
1667         * Documentation/topdocs/NEWS: Make the feathered beam example
1668         avoid triggering a bug.
1669
1670 2006-06-24  Graham Percival  <gpermus@gmail.com>
1671
1672         * Documentation/user/ various: small additions from mailist.
1673
1674 2006-06-22  Mats Bengtsson  <mabe@s3.kth.se>
1675
1676         * ly/performer-init.ly: Add some missing links in the context
1677         hierarchy for MIDI output. There are probably some more missing!
1678
1679 2006-06-21  Graham Percival  <gpermus@gmail.com>
1680
1681         * Documentation/user/ various: minor spelling fixes;
1682         thanks Dave Luttinen!
1683
1684         * Documentation/user/ various: small clarifications;
1685         thanks Anthony Youngman!
1686
1687 2006-06-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
1688
1689         * po/fr.po: add \n appropriately.
1690
1691         * lily/lexer.ll: remove ? from version-seen?  
1692
1693 2006-06-19  John Mandereau  <john.mandereau@free.fr>
1694
1695         * po/fr.po; update translation, by Jean-Charles Malahieude and
1696         John Mandereau.
1697
1698 2006-06-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
1699
1700         * THANKS: add Markus Schneider.
1701
1702         * lily/tab-staff-symbol-engraver.cc: derive from Engraver, not
1703         Staff_symbol_engraver
1704
1705         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): don't
1706         replace staff_engraver
1707
1708         * lily/staff-symbol-engraver.cc (stop_spanner): announce end of
1709         spanner.
1710
1711         * lily/staff-collecting-engraver.cc
1712         (acknowledge_end_staff_symbol): new function
1713
1714         * lily/volta-engraver.cc (acknowledge_end_staff_symbol): new function. 
1715
1716         * lily/staff-collecting-engraver.cc
1717         (acknowledge_end_staff_symbol): new function.
1718
1719         * lily/main.cc: switch on relocation by default.
1720
1721 2006-06-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
1722
1723         * lily/spacing-spanner.cc (musical_column_spacing): set
1724         compound_fixed_note_space to 0.0. Document why.
1725
1726         * lily/simple-spacer.cc (is_sane): also have a kludge for numeric
1727         range of inverse_hooke_
1728         (Simple_spacer): init completely.
1729         (fits): const
1730         (get_line_configuration): don't use cols.resize(); it introduces
1731         initialized data.
1732
1733         * scm/framework-ps.scm (dump-page): add setstrokeadjust. 
1734
1735         * ps/music-drawing-routines.ps: remove selectfont L1 hack.
1736
1737         * lily/beaming-pattern.cc (best_splitpoint_index): urg, 2nd
1738         try. Divide by beatlength.
1739
1740         * input/regression/beaming-ternary-metrum.ly: update doc.
1741         add beatLength hack.
1742
1743         * scm/music-functions.scm (make-time-signature-set): add
1744         standard-beat-grouping. 
1745
1746 2006-06-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
1747
1748         * input/regression/tie-whole.ly: new file.
1749
1750         * lily/tie-formatting-problem.cc (set_column_chord_outline): don't
1751         cross center of note head in case of invisible stem. 
1752
1753 2006-06-16  Graham Percival  <gpermus@gmail.com>
1754
1755         * Documentation/user/ various: small fixes from mailist.
1756
1757 2006-06-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
1758
1759         * lily/breathing-sign.cc (offset_callback): idem.
1760
1761         * lily/align-interface.cc (align_to_fixed_distance): remove
1762         hungarian suffix.
1763
1764         * lily/beaming-pattern.cc (count_factor_twos): oops. We want
1765         x%2==0.
1766
1767 2006-06-15  Han-Wen Nienhuys  <hanwen@lilypond.org>
1768
1769         * VERSION (PACKAGE_NAME): release 2.9.9
1770
1771         * ly/lilypond-book-preamble.ly: add \version
1772
1773 2006-06-14  Han-Wen Nienhuys  <hanwen@lilypond.org>
1774
1775         * scripts/lilypond-book.py (PREAMBLE_LY): include
1776         lilypond-book-preamble.ly
1777
1778         * lily/stem.cc (get_beaming): return max of 0 and
1779         scm_ilength. Fixes slurring from/to beams.
1780
1781         * ly/lilypond-book-preamble.ly: new file.
1782
1783         * lily/slur.cc: add inspect-index feature.
1784
1785 2006-06-13  Graham Percival  <gpermus@gmail.com>
1786
1787         * Documentation/user/tutorial.itely: trivial fix.
1788
1789 2006-06-13  Erik Sandberg  <mandolaerik@gmail.com>
1790
1791         * lily/parser.yy, scm/ly-syntax-constructors.scm: Produce almost
1792         all non-event music in the parser via MAKE_SYNTAX.
1793
1794         * lily/parser-scheme.cc: Add ly:parser-error function
1795
1796         * scm/paper.scm: fix typo
1797
1798 2006-06-13  Han-Wen Nienhuys  <hanwen@lilypond.org>
1799
1800         * THANKS: add RT.
1801
1802         * lily/font-config.cc (init_fontconfig): add warning if cache_file
1803         is null.
1804
1805         * buildscripts/output-distance.py (test_compare_signatures):
1806         timing routines.
1807         (read_signature_file): use new signature format.
1808
1809         * scm/stencil.scm (write-system-signature): simpler signature
1810         format.
1811
1812         * lily/stem.cc (calc_stem_end_position): calc quantized-positions
1813         for beamed case. 
1814
1815         * lily/note-spacing.cc (stem_dir_correction): don't inspect
1816         stem_end_position, but estimate instead. 
1817
1818         * lily/tuplet-bracket.cc (calc_positions): look at
1819         stem-end-position for tuplet bracket slope. Fixes sloped tuplet
1820         brackets narrower than beams. 
1821
1822         * lily/lexer.ll: set version-seen? even if version is
1823         INVALID. 
1824
1825         * lily/rest.cc (y_offset_callback): bugfix: decide position
1826         override based on scm_is_number(). Fixes \rest on center staff
1827         line. 
1828
1829         * lily/beaming-pattern.cc (best_splitpoint_index): fix beaming
1830         patterns for 16th triplets.
1831
1832 2006-06-10  Graham Percival  <gpermus@gmail.com>
1833
1834         * Documentation/user/ page.itely, global.itely: editing
1835         and reorg.
1836
1837         * Documentation/user/ various: findex -> funindex.
1838
1839 2006-06-10  Erik Sandberg  <mandolaerik@gmail.com>
1840
1841         * lily/time-scaled-music-iterator.cc: Use tupletSpannerDuration to
1842         insert extra tuplet events.
1843
1844 2006-06-10  Graham Percival  <gpermus@gmail.com>
1845
1846         * Documentation/user/programming-interfaces.itely: add
1847         info from NEWS.
1848
1849         * python/convertrules.py: add annotatefoo -> annotate-foo
1850         rules.
1851
1852         * Documentation/user/global.itely: start editing.
1853
1854         * Documentation/user/page.itely: major editing, new spacing
1855         docs.
1856
1857 2006-06-10  Han-Wen Nienhuys  <hanwen@lilypond.org>
1858
1859         * scm/define-markup-commands.scm (wordwrap-markups): use
1860         output-def 'line-width if undefined.
1861
1862         * HACKING: trim outdated info.
1863
1864 2006-06-09  Mats Bengtsson  <mabe@s3.kth.se>
1865
1866         * scm/define-grobs.scm (all-grob-descriptions): Add
1867         line-spanner-interface to all grobs that already have
1868         text-spanner-interface or dynamic-text-spanner-interface
1869
1870         * scm/page.scm: Rename annotate{headers,systems,page}->
1871         annotate-*
1872
1873         * input/regression/page-spacing.ly,
1874         input/regression/page-layout-manual-position.ly: idem
1875
1876 2006-06-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
1877
1878         * lily/line-spanner.cc: cleanup property list.
1879
1880         * scripts/lilypond-book.py (find_toplevel_snippets): don't use
1881         generator expressions (2.3 compat). 
1882
1883 2006-06-09  Mats Bengtsson  <mabe@s3.kth.se>
1884
1885         * lily/vertical-align-engraver.cc: Make sure that the
1886         align{Above,Below}Context properties are included in the automatic
1887         documentation.
1888
1889 2006-06-08  Joe Neeman  <joeneeman@gmail.com>
1890
1891         * scm/paper-system.scm (paper-system-annotate): also annotate the
1892         estimated pure-Y-extent
1893
1894         * scm/define-grobs.scm: add pure-Y-extent and pure-Y-offset functions
1895
1896         * lily/system.cc (break_into_pieces): set the estimated height
1897         of each child system
1898
1899         * lily/stem.cc (pure_height): new pure-Y-extent callback
1900
1901         * lily/staff-symbol-referencer.cc (callback): don't destroy
1902         the staff-position property
1903
1904         * lily/hara-kiri-group-spanner.cc (request_suicide): split
1905         consider_suicide into two functions
1906
1907         * lily/constrained-breaking.cc (resize): use the new pure
1908         callbacks to estimate the height of a system
1909
1910         * lily/axis-group-interface.cc (pure_group_height): new
1911         side-effect-free VerticalAxisGroup height-callback
1912
1913         * lily/align-interface.cc (get_extents_aligned_translates):
1914         split align_elements_to_extents into two functions
1915         (get_pure_child_y_translation): new function
1916
1917         * lily/grob.cc: new functions for pure-Y-extent and pure-Y-offset
1918
1919         * lily/item.cc: new functions pure_is_visible and spanned_rank_iv
1920
1921         * lily/paper-score.cc: cache break_indices and columns
1922
1923         * lily/side-position-interface.cc: new pure-Y-extent callbacks
1924         
1925 2006-06-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
1926
1927         * lily/font-config.cc (init_fontconfig): do the init if
1928         cache_file, but don't look at cache_file.
1929
1930         * input/regression/quote-tie.ly: new file.
1931
1932         * lily/tie-engraver.cc (struct Head_event_tuple): add end_moment_
1933         to Head_event_tuple, so we deal gracefully with ties on
1934         cue-endings.
1935
1936         * lily/pango-font.cc (pango_item_string_stencil): type correctness
1937         for FcChar8*
1938
1939 2006-06-08  Graham Percival  <gpermus@gmail.com>
1940
1941         * input/test/ smart-transpose.ly, reverse-music.ly:
1942         \applyMusic to music functions update, thanks Michael!
1943
1944 2006-06-07  Graham Percival  <gpermus@gmail.com>
1945
1946         * input/test/ add-staccato.ly, add-text-script.ly,
1947         unfold-all-repeats.ly, music-box.ly: \applyMusic to
1948         music functions update, thanks to Michael Meixner.
1949
1950         * Documentation/user/music-glossary.tely: small fix
1951         from Francisco.
1952
1953         * Documentation/user/ various: minor additions from mailist.
1954
1955         * Documentation/user/lilypond.tely, basic-notation.itely:
1956         small test of @funindex.  (works here)
1957
1958         * input/test/font-table.ly: reduce size to partially
1959         de-ugly version in manual.
1960
1961         * Documentation/user/page.itely: new file (split former
1962         "global issues" into "page settings" and "non-musical
1963         output".
1964
1965         * Documentation/user/ various: fix @ref{}s to match
1966         new chapter names (above).
1967
1968 2006-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
1969
1970         * SConstruct (LILYPONDPREFIX): Bootstrap fix.
1971
1972 2006-06-06  Graham Percival  <gpermus@gmail.com>
1973
1974         * Documentation/user/advanced-notation.itely: add example
1975         for segno/coda on barline.
1976
1977         * tex/texinfo.tex: merge from upstream.
1978
1979 2006-06-06  Jan Nieuwenhuizen  <janneke@gnu.org>
1980
1981         * scripts/lilypond-book.py (process_snippets): Argument fix.
1982
1983         * SConstruct:
1984         * buildscripts/builder.py:
1985         * lily/SConscript: 
1986         * mf/SConscript: 
1987         * Documentation/user/SConscript:  More SCons fixes.
1988
1989 2006-06-03  Jan Nieuwenhuizen  <janneke@gnu.org>
1990
1991         * lily/font-config.cc (init_fontconfig): Only initialize if
1992         global cache_file is found.
1993
1994 2006-06-06  Erik Sandberg  <mandolaerik@gmail.com>
1995
1996         * ly/music-functions-init.ly: Updated \overrideProperty to use the
1997         new \applyOutput.
1998
1999 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
2000
2001         * VERSION (PACKAGE_NAME): release 2.9.8
2002
2003         * lily/ledger-line-engraver.cc (stop_translation_timestep): new
2004         function. Delay ledger modifying ledgered grobs to
2005         stop_translation_timestep(), to ensure that we're ledgering
2006         according to the new spanner.
2007         (acknowledge_staff_symbol): don't check for non-NULL
2008         staff_sym->get_bound()
2009
2010         * lily/staff-symbol-engraver.cc (start_spanner): set left bound on
2011         creation.
2012
2013         * Documentation/pictures/GNUmakefile (XPM_FILES): src-wildcard for
2014         pictures too.
2015
2016         * GNUmakefile.in (dist-toplevel-txt-files): dist aclocal.m4
2017         directly from srcdir/stepmake/aclocal.m4
2018         
2019         * Documentation/misc/GNUmakefile (TEXTS): use src-wildcard for
2020         disting MISC files.
2021
2022         * lily/simple-spacer.cc (get_column_desc): desc -> description.
2023
2024 2006-06-06  Joe Neeman  <joeneeman@gmail.com>
2025
2026         * lily/simple-spacer.cc (get_line_configuration): add
2027         keep-inside-line rods
2028         (struct Column_desc): add constructor
2029         (struct Rod_desc): add constructor
2030         (get_line_forces): check for forced page breaks here too
2031
2032         * lily/instrument-name-engraver.cc (acknowledge_axis_group): prevent
2033         support/elements cycles between InstrumentNames and AxisGroups
2034
2035 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
2036
2037         * config.make.in (METAFONT): remove MAKEINFO_VERSION
2038
2039         * stepmake/stepmake/topdocs-targets.make (make-txt-files): define
2040         make-txt-files target.
2041
2042         * stepmake/stepmake/toplevel-targets.make (do-top-doc): use
2043         make-txt-files target.
2044
2045         * configure.in (LINK_GXX_STATICALLY): $srcdir for readlink.py
2046
2047         * stepmake/stepmake/generic-vars.make (distdir): create dist in
2048         top-build-dir.
2049
2050 2006-06-06  Jürgen Reuter  <reuter@ipd.uka.de>
2051
2052         * Documentation/user/instrument-notation.itely,
2053         input/regression/breathing-sign-ancient.ly,
2054         input/test/divisiones.ly: Removed redundant property settings for
2055         vaticana contexts.
2056
2057         * ly/gregorian-init.ly: Rewrote \versus and \responsum in order to
2058         fix lyrics alignment problems.  They are implemented now as scheme
2059         functions that add the appropriate unicode char to the first lyric
2060         event rather than adding a separate lyric event.  Minor edit of
2061         comments.
2062
2063 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
2064
2065         * GNUmakefile.in (dist-toplevel-txt-files): new target. Don't
2066         pollute src dir with built .txt files, but install directly from
2067         Documentation/topdocs/out/
2068
2069         * buildscripts/output-distance.py
2070         (ComparisonData.create_html_result_page): put version/directories
2071         in table header.
2072
2073         * Documentation/topdocs/NEWS.tely (Top): document spacing section
2074         feature.
2075
2076         * configure.in (LINK_GXX_STATICALLY): use readlink.py to resolve links.
2077         Patch by Karl Hammar
2078         
2079         * buildscripts/readlink.py: add  file.
2080         Patch by Karl Hammar
2081
2082 2006-06-06  Joe Neeman  <joeneeman@gmail.com>
2083
2084         * lily/tuplet-number.cc (print): prevent stencil from being
2085         garbage collected.
2086
2087 2006-06-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
2088
2089         * scm/stencil.scm (write-system-signature): explicitly 
2090         -well, superfluously- close output port.
2091
2092         * buildscripts/output-distance.py (main): oops. Add extra argument.
2093
2094 2006-06-05  Graham Percival  <gpermus@gmail.com>
2095
2096         * Documentation/user/music-glossary.tely: clarified example
2097         from Francisco Vila, thanks!
2098
2099 2006-06-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
2100
2101         * input/regression/spacing-section.ly: new file.
2102
2103         * lily/input.cc (programming_error): new function.
2104
2105         * lily/spacing-engraver.cc (try_music): new function. Accept
2106         spacing-section-event
2107
2108         * lily/spacing-spanner.cc (set_springs): take slices of all
2109         columns for spacing.
2110
2111         * lily/include/paper-column.hh (class Paper_column): add
2112         Paper_column::compare.
2113
2114         * ly/spanners-init.ly (newSpacingSection): add newSpacingSection.
2115
2116         * scm/define-music-types.scm (music-descriptions): add
2117         SpacingSectionEvent
2118
2119         * lily/music-iterator.cc (report_event): use programming_error for
2120         sending non-event error.
2121
2122         * lily/input.cc (programming_error): new function
2123
2124         * buildscripts/output-distance.py (main): use compare-XXX for
2125         compare files.
2126         (main): --threshold option, default at 0.30
2127
2128         * output-distance.py (main): add --threshold option.
2129
2130 2006-06-04  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2131
2132         * scm/paper-system.scm (paper-system-annotate): fix problem when
2133         annotating an empty system
2134
2135 2006-06-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
2136
2137         * GNUmakefile.in: reinstate old web tar/copying.
2138
2139 2006-06-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
2140
2141         * lily/lyric-combine-music-iterator.cc (find_voice): return 0 if
2142         nothing changes. (Erik S) 
2143
2144         * lily/percent-repeat-iterator.cc (get_music_list): fix repeat
2145         count. (Erik S)
2146
2147 2006-05-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2148
2149         * scm/define-markup-commands.scm (whiteout): do not force
2150         foreground color of argument markup to black.
2151
2152         * scm/stencil.scm (annotate-y-interval): put arrow dimension at
2153         the left of the arrow, instead of below the arrow name, so that,
2154         when two little arrows are vertically stacked, their dimensions
2155         and name should not overlap. Add a color key parameter.
2156
2157         * scm/paper-system.scm (paper-system-annotate): Annotate
2158         next-space+next-padding instead of next-space. Annotate space
2159         between next-padding and next-space+padding, respectively, and
2160         following system extent and refpoint-Y-extent. Use colors.
2161
2162         * scm/page.scm (annotate-page): translate annotations slightly to
2163         the right.
2164
2165 2006-06-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
2166
2167         * lily/figured-bass-position-engraver.cc (acknowledge_end_slur):
2168         fix for x-staff slurs. Thanks Joe!
2169
2170         * buildscripts/output-distance.py
2171         (SystemLink.output_expression_change_count): keep track of changed
2172         details, and dump in details html page.
2173  
2174         * input/regression/figured-bass-staff.ly: add note about setting
2175         properties in Staff context.
2176
2177         * lily/figured-bass-position-engraver.cc (acknowledge_slur):
2178         add slurs and ties to support too.
2179
2180         * buildscripts/output-distance.py (main): set dest_dir
2181         argument. Add --max-count option.
2182
2183 2006-06-02  Jürgen Reuter  <reuter@ipd.uka.de>
2184
2185         * ly/gregorian-init.ly: Converted to utf-8.  Added memorable
2186         shortcuts for special unicode chars that are useful in chant
2187         notation.  Revised exisiting and added new comments.
2188
2189 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
2190
2191         * make/mutopia-rules.make: remove duplicate recipe.
2192
2193 2006-06-02  Werner Lemberg  <wl@gnu.org>
2194
2195         * tex/texinfo.cnf: Fix typo (\euro -> \minus).
2196         Add support for U+0132 (IJ) and U+0133 (ij).
2197
2198 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
2199
2200         * buildscripts/output-distance.py (FileLink): new class. collect
2201         info systems from one .ly file. 
2202         (FileLink.link_files_for_html): further tweaks.
2203
2204 2006-06-02  Graham Percival  <gpermus@gmail.com>
2205
2206         * tex/texinfo.tex: partial fix for @funindex.
2207
2208         * Documentation/user/macros.tely: uncomment @funindex (doesn't
2209         break anything).
2210
2211 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
2212
2213         * make/mutopia-vars.make (ly_examples): replace .ly.txt with .ly
2214
2215         * tex/texinfo.tex (sectionheading, q.v.): call \quoteexpand for
2216         @example too. Backportme.
2217
2218 2006-06-02  Graham Percival  <gpermus@gmail.com>
2219
2220         * tex/texinfo.cnf: added UTF-8 support for texinfo; patch
2221         from Werner Lemberg.
2222
2223 2006-06-02  Paco (Francisco Vila)  <fravd@ya.com>
2224
2225         * Documentation/user/music-glossary.tely: additional spanish
2226         updates and a lyrics fix in an example.
2227
2228 2006-06-02  Jürgen Reuter  <reuter@ipd.uka.de>
2229
2230         * scm/define-grob-properties.scm: Previous patch contained
2231         spurious line from another patch not yet committed.  Fixed.
2232
2233         * scm/define-grob-properties.scm: Add missing doc strings for
2234         ancient notation.
2235
2236 2006-06-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
2237
2238         * buildscripts/output-distance.py
2239         (ComparisonData.write_text_result_page): separate the scores, sort
2240         by geo_score.
2241
2242         * scm/framework-eps.scm (output-classic-framework): start at 1 for
2243         system signatures.
2244
2245         * buildscripts/output-distance.py (me_path): use argv[0] for
2246         sys.path extension
2247         (ComparisonData.img_cell): use colored borders.
2248
2249         * scm/stencil.scm (write-system-signature): escape newlines too.
2250         (write-system-signature): use (1,-1) interval for empty interval
2251
2252 2006-01-01  Graham Percival  <gpermus@gmail.com>
2253
2254         * Documentation/user/music-glossary.tely: Spanish updates
2255         from Francisco Vila.
2256
2257         * Documentation/user/lilypond-book.itely: addition from
2258         Vaclav Smilauer.
2259
2260         * Documentation/user/ various: edits, small additions
2261         from mailist, etc.
2262
2263 2006-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
2264
2265         * GNUmakefile.in (tree-lib-prefix-current):
2266         (tree-share-prefix-current): Use version number in tree, add
2267         `current' symlinks.
2268
2269 2006-06-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
2270
2271         * GNUmakefile.in: write VERSION, again.
2272
2273         * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
2274         $(outdir)/%.ly $(outdir)/%.ps): dump sigs for normal files too.
2275
2276         * stepmake/aclocal.m4: robuster version detection.
2277
2278         * buildscripts/output-distance.py
2279         (ComparisonData.create_html_result_page): copy only if file
2280         exists, fixup src paths.
2281
2282         * stepmake/bin/add-html-footer.py (built): junk gulp_file()
2283
2284 2006-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
2285
2286         * stepmake/aclocal.m4: Robustification for (gcc) version detection.
2287         Another datarootdir reto.
2288
2289         * cygwin/postinstall-lilypond.sh: Do not fail if info docs aren't
2290         available.  This should be moved to postinstall-lilypond-doc.
2291
2292 2006-05-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
2293
2294         * GNUmakefile.in: simplify local-WWW-post. 
2295         remove -type l from find.
2296
2297         * buildscripts/output-distance.py (ComparisonData.compare_trees):
2298         fixes. Don't follow symlinks.
2299         (ComparisonData.create_html_result_page): remove previous results.
2300         insert ../python in path.
2301
2302         * scripts/lilypond-book.py (PREAMBLE_LY): spacing fixes.
2303
2304 2006-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
2305
2306         * config.make.in (datadir): Add datarootdir to silence autoconf.
2307
2308         * stepmake/aclocal.m4: Update for autoconf-2.59d.
2309
2310 2006-05-31  Erlend Aasland  <erlenda@gmail.com>
2311
2312         * dynamic-engraver.cc: fix bug (dynamics collide with accidentals)
2313
2314         * scm/output-ps.scm (repeat-slash): fix a bug that made repeat
2315         slash beams too wide.
2316
2317 2006-05-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
2318
2319         * VERSION: release 2.9.7
2320         
2321 2006-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
2322
2323         * lily/relocate.cc (read_relocation_dir): Do not blindly
2324         dereference DIR.
2325
2326 2006-05-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
2327
2328         * lily/parser.yy: replace THIS by PARSER
2329
2330         * Documentation/index.html.in: add link to test-results.html page.
2331
2332         * Documentation/topdocs/NEWS.tely (Top): update NEWS entry.
2333
2334         * scm/translation-functions.scm (format-bass-figure): translate
2335         digits over 10 to the left
2336
2337         * scm/define-markup-commands.scm (translate-scaled): new markup.
2338
2339         * mf/feta-nummer-code.mf (code): overshoot the topright tip of the
2340         7 glyph. 
2341
2342         * ly/engraver-init.ly: add Figured_bass_engraver
2343
2344         * lily/engraver-group.cc (acknowledge_grobs): use start/stop drul.
2345
2346         * lily/figured-bass-engraver.cc (clear_spanners): use everywhere.
2347
2348         * lily/score-engraver.cc (announce_grob): only note START announces.
2349
2350         * lily/include/engraver-group.hh (Translator_group):
2351         acknowledge_hash_table_ is now drul.
2352
2353         * lily/engraver.cc (announce_end_grob): new method.
2354
2355         * lily/include/grob-info.hh (class Grob_info): add start_end_ member.
2356
2357         * lily/translator-dispatch-list.cc (create): take start_end argument.
2358
2359         * lily/include/translator.hh (TRANSLATOR_DECLARATIONS): change
2360         acknowledge_static_array_ to drul
2361
2362         * lily/include/translator.icc (ADD_END_ACKNOWLEDGER): new macro.
2363
2364         * scm/define-grob-interfaces.scm
2365         (bass-figure-alignment-interface): add bass-figure-alignment-interface
2366
2367         * scm/define-grobs.scm (all-grob-descriptions): add
2368         BassFigureAlignmentPositioning
2369
2370         * ly/Welcome-to-LilyPond-MacOS.ly: include in LilyPond, so version
2371         number stays up to date. Backportme.
2372
2373 2006-05-30  Mats Bengtsson  <mabe@s3.kth.se>
2374
2375         * Documentation/user/basic-notation.itely (Bar lines): Document
2376         the "||:" bar type. 
2377
2378 2006-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
2379
2380         * buildscripts/builder.py: Remove --ly option/target from mf-to-table.
2381
2382         * scripts/lilypond-book.py: Bugfix: do not blindly attempt
2383         .../current hack if LILYPONDPREFIX is fine.  Fixes `scons doc'
2384         build.
2385
2386         * Resurrect `scons lily' build.
2387
2388         * SConstruct (symlink_tree): Bugfix: link
2389         music-drawing-routines.ps to file iso directory.
2390
2391         * lily/SConscript: Remove kpath-guile from LIBS.
2392
2393         * SConstruct (libdir_package_version): Typo.
2394         (configure): Comment-out fontforge for lack of fontforge.pc .
2395         Also add libdir* to environment.
2396
2397 2006-05-30  Graham Percival  <gpermus@gmail.com>
2398
2399         * Documentation/user/ various: minor additions from mailist and
2400         editing.
2401
2402 2006-05-30  Paco <fravd@ya.com>
2403
2404         * Documentation/user/music-glossary.tely: numerous corrections and
2405         some new translations.
2406
2407 2006-05-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
2408
2409         * BackportmeStart.
2410         
2411         * buildscripts/output-distance.py
2412         (ComparisonData.create_html_result_page): new routine: summarise
2413         results in HTML page with images. 
2414         (ComparisonData.create_text_result_page): create summary text files too.
2415
2416         * GNUmakefile.in (web-ext): package .signature files too. They
2417         compress well. 
2418
2419         * scm/stencil.scm (write-system-signature): typo.
2420
2421         * GNUmakefile.in: create web-root/VERSION to help upload scripts.
2422
2423         * scm/stencil.scm (write-system-signature): better escaping.
2424         only write signature for music systems, not for markup systems.
2425
2426         * scm/framework-ps.scm (output-framework): dump-signatures support
2427         for plain output.
2428
2429         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): add -ddump-signatures.
2430
2431         * scm/framework-ps.scm (write-preamble): redefine mark_URI to nop
2432         for -dno-point-and-click
2433
2434         * lily/grob.cc (get_print_stencil): don't read
2435         point_and_click_global to determine whether to set grob-cause.
2436
2437 2006-05-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
2438
2439         * buildscripts/output-distance.py (main): new function.
2440         (ComparisonData): new class.
2441
2442         * lily/ledger-line-engraver.cc (acknowledge_staff_symbol): be more
2443         careful with generating new LedgerLineSpanners.
2444
2445         * lily/ledger-line-spanner.cc (set_spacing_rods): suicide if no staff.
2446
2447         * ly/engraver-init.ly: remove Ledger_line_engraver from Voice
2448         context. This fixes double ledger lines in output. 
2449
2450         * lily/system.cc (get_paper_system): remove 3 layer limit.
2451
2452         * buildscripts/output-distance.py (SystemLink.distance): new
2453         file. Compare signatures.
2454
2455         * python/safeeval.py (SafeEval.visitUnarySub): new file.
2456
2457         * lily/grob-array.cc (remove_duplicates): rename from
2458         uniq(). Sort before calling uniq() so it actually works.
2459
2460 2006-05-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
2461
2462         * scripts/lilypond-book.py (Lilypond_file_snippet.ly): strip
2463         \version from lilypond file snippet.
2464         (Lilypond_file_snippet.ly): oops. typo.
2465         (find_toplevel_snippets): urgh. again.
2466
2467         * lily/system.cc (get_paper_systems): uniq all_elements_ , to
2468         prevent duplicated broken items in output.
2469
2470         * scm/framework-eps.scm (output-classic-framework): only dump if
2471         dump-signatures is set.
2472
2473         * scm/lily.scm (define-scheme-options): add dump-signatures option.
2474
2475         * scm/stencil.scm (write-system-signature): new routine: write
2476         python parseable signature of a separate paper system.
2477         BackportmeEnd.
2478         
2479 2006-05-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
2480
2481         * lily/stanza-number-engraver.cc (process_music): use is_markup()
2482         iso is_string().
2483         include header.
2484
2485 2006-05-25  Erik Sandberg  <mandolaerik@gmail.com>
2486
2487         * translator-group.cc: send music events to engravers in
2488         non-bottom contexts.
2489
2490         * tuplet-engraver.cc: process tuplet brackets in correct order.
2491
2492 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
2493
2494         * stepmake/aclocal.m4: STEPMAKE_PYTHON(): clear cached value since
2495         arg 2 might point us to a new binary (patch by Karl Hammar)
2496         
2497 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
2498
2499         * VERSION (PACKAGE_NAME): release 2.9.6
2500
2501         * Documentation/topdocs/NEWS.tely (Top): trim explanation. 
2502
2503         * Documentation/user/*.itely: 2nd
2504         attempt: replace funindex -> findex globally.
2505
2506 2006-05-24  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2507
2508         * input/no-notation/display-lily-tests.ly: fix \applyOutput
2509         test. Add \break, \pageBreak, \pageTurn, etc, tests.
2510
2511         * scm/define-music-display-methods.scm: display methods for
2512         breaks. Fix \applyOutput.
2513
2514 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
2515
2516         * Documentation/user/macros.itexi: comment out funindex expansion. 
2517
2518         * Documentation/user/music-glossary.tely: junk \oldaddlyrics
2519         everywhere.
2520
2521         * GNUmakefile.in: fix wildcarding for scrips/out/ links. Thanks
2522         Karl Hammar. Backportme.
2523  
2524         * Documentation/user/advanced-notation.itely (Balloon help): idem.
2525
2526         * Documentation/user/changing-defaults.itely (Creating contexts): idem.
2527
2528         * Documentation/user/programming-interface.itely (Running a
2529         function on all layout objects): idem.
2530
2531         * Documentation/user/introduction.itely (Automated engraving):
2532         update \applyOutput syntax
2533
2534         * lily/lyric-combine-music-iterator.cc (start_new_syllable):
2535         remove debugging hook.
2536
2537         * configure.in (LINK_GXX_STATICALLY): use "" to allow $
2538         expansion. 
2539
2540         * Documentation/user/GNUmakefile (TEXI2DVI_FLAGS): add -E.
2541
2542         * stepmake/stepmake/texinfo-rules.make ($(outdir)/%.dvi): add
2543         TEXI2DVI_FLAGS to texi2dvi invocation. 
2544
2545 2006-05-24  Erik Sandberg  <mandolaerik@gmail.com>
2546
2547         * lily/chord-tremolo-*.cc: Reworked how \repeat "tremolo"
2548         works. More work is done by iterator now, and engraver has been
2549         very much simplified.
2550
2551         * lily/translator-group.cc: try_music is now invoked through a
2552         listener
2553
2554         * lily/*-iterator.cc: Massive cleanups. Junked
2555         try_music_in_children globally. Renamed try_music to report_event,
2556         and made that method descend to a bottom context automatically.
2557
2558         * lily/event-iterator.cc: New file.
2559
2560         * lily/output-property-iterator.cc,
2561         lily/old-lyric-combine-music-iterator.cc: Removed.
2562
2563         * python/convert-rules.py: Modified the syntax for \applyOutput.
2564
2565 2006-05-23  Graham Percival  <gpermus@gmail.com>
2566
2567         * stepmake/stepmake/texinfo-rules.make: added -E, allows pdf doc
2568         creation.
2569
2570         * Documentation/user/ various: stuff that might have helped
2571         to fix the pdf creation, plus some minor doc additions.
2572
2573         * Documentation/user/changing-defaults.itely: remove @b from
2574         @b{ @internasref{foo}}; this breaks texi2dvi -E.
2575
2576 2006-05-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
2577
2578         * lily/beaming-pattern.cc (beamify): deal with negative start
2579         moments for beaming patterns.
2580
2581 2006-05-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
2582
2583         * lily/beaming-info.cc (beamify): new function: read beatLength
2584         and beatGrouping from context. 
2585
2586         * input/regression/beam-beat-grouping.ly (Module): new file.
2587
2588         * input/regression/beam-unconnected-beamlets.ly (Module): new file.
2589
2590         * lily/beam.cc (get_beam_segments): generate events for
2591         max_connect_ case too.
2592         (get_beam_segments): read Stem::max-beam-connect.
2593
2594         * input/regression/beam-single-stem.ly: new file.
2595
2596         * lily/stem.cc (set_beaming): use #f as signaling value for
2597         beamcount 0.
2598
2599         * lily/beam-engraver.cc (typeset_beam): set right bound if unset.
2600
2601         * lily/beam.cc (set_beaming): read clip-edges property.
2602         (calc_direction): don't suicide for single stem.
2603
2604         * lily/beaming-info.cc (best_splitpoint_index): take bool*
2605         argument, remove 1<<15 hack. Remove clip_edges() 
2606
2607         * lily/hairpin.cc (print): only do padding for nonmusical bounds
2608
2609 2006-05-21  Graham Percival  <gpermus@gmail.com>
2610
2611         * Documentation/user/basic-notation.itely: reorg.
2612
2613         * Documentation/user/ various: minor fixes.
2614
2615 2006-05-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
2616
2617         * lily/stencil-expression.cc (register_stencil_head): opps, append
2618         to cdr of static SCM object.
2619
2620 2006-05-19  Graham Percival  <gpermus@gmail.com>
2621
2622         * Documentation/user/README.txt, lilypond.tely, macros.itexi:
2623         update framework for command index.  DOC WRITERS: use @funindex
2624         instead of @cindex @code{}.
2625
2626         * Documentation/user/ various: replace @cindex @code{} => @funindex
2627
2628 2006-05-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
2629
2630         * lily/beam.cc (set_stem_lengths): trigger 'beaming callback, in
2631         case positions is set manually. 
2632
2633 2006-05-18  Erik Sandberg  <mandolaerik@gmail.com>
2634         
2635         * scm/ly-syntax-constructors.scm: New file. Converted a few syntax
2636         rules to Scheme.
2637
2638 2006-05-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
2639
2640         * Documentation/user/changing-defaults.itely (Contexts explained):
2641         use absolute dimension for @image.
2642
2643         * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): generate PNG
2644         out image for illustration too.
2645         ($(outdir)/%.png): add more png <-> eps rules. 
2646
2647 2006-05-17  Graham Percival  <gpermus@gmail.com>
2648
2649         * Documentation/user/ various: remove trailing whitespace, cosmetic
2650         change to reduce changes produced by diff.
2651
2652 2006-05-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
2653
2654         * lily/main.cc (do_chroot_jail): correctness tweak.
2655
2656         * python/lilylib.py (system): import subprocess in system () only.
2657
2658         * scripts/*.py: use TARGET_PYTHON iso PYTHON. Backportme.
2659
2660         * make/substitute.make (ATVARIABLES): add TARGET_PYTHON as subst
2661         variable. Backportme.
2662
2663 2006-05-17  Erik Sandberg  <mandolaerik@gmail.com>
2664         
2665         * lily/parser.yy: Change all syntax rules of type Music to SCM type
2666
2667 2006-05-17  Werner Lemberg  <wl@gnu.org>
2668
2669         * lily/lexer.ll (init_signature_has_table): Add
2670         `scm-scm-music-music'.
2671
2672         * lily/parser.yy (MUSIC_FUNCTION_SCM_SCM_MUSIC_MUSIC): New token.
2673         (Generic_prefix_music_scm): Add rule for it.
2674
2675         * lily/quote-iterator.cc (Quote_iterator::process): Handle
2676         `quoted-transposition' property.
2677
2678         * ly/music-functions-init.ly (transposedCueDuring): New function.
2679
2680         * scm/define-music-properties.scm (all-music-properties): Updated.
2681
2682         * Documenation/topdocs/NEWS.itely: Document it.
2683
2684 2006-05-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
2685
2686         * python/lilylib.py (system): move import subprocess to system()
2687         definition. 
2688
2689         * python/convertrules.py (conv): fix convert-ly rules for 2.9.4
2690
2691         * VERSION (PATCH_LEVEL): release 2.9.5
2692         
2693         * Documentation/topdocs/INSTALL.texi (Top): update versions and
2694         build instructions. 
2695
2696         * ly/engraver-init.ly: switch on hairpinToBarline by default.
2697
2698 2006-05-16  Graham Percival  <gpermus@gmail.com>
2699
2700         * Documentation/user/basic-notation.itely: editing from Dave, thanks!
2701
2702         * Documentation/user/ various: minor fixes.
2703
2704 2006-05-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
2705
2706         * Documentation/topdocs/NEWS.tely (Top): add hairpinToBarline feature.
2707
2708 2006-05-16  Mats Bengtsson  <mabe@s3.kth.se>
2709
2710         * Documentation/user/advanced-notation.itely (Instrument names):
2711         Modified obsolete instruction on how to move instrument names away
2712         from the staves. Hmm, at second thought the bug probably has been
2713         solved, so the full bug description should probably be removed.
2714
2715 2006-05-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
2716
2717         * lily/dynamic-engraver.cc (typeset_all): hang ending on
2718         currentCommandColumn. 
2719
2720         * lily/hairpin.cc (print): also add padding for non-neighbor
2721         hairpin bounds.
2722
2723         * scm/define-context-properties.scm
2724         (all-user-translation-properties): add hairpinToBarline
2725
2726         * input/regression/hairpin-to-barline.ly: new file.
2727
2728         * lily/context.cc (internal_send_stream_event): thinko fix.
2729
2730         * lily/tie.cc (set_default_control_points): robustness fix.
2731
2732         * python/musicxml.py (Part.interpret): don't complain about
2733         incomplete measures.
2734
2735         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): only add
2736         new music if last_event_chord() returned None.
2737
2738         * python/musicxml.py (Part.interpret): skip back over chord notes.
2739
2740 2006-05-16  Erik Sandberg  <mandolaerik@gmail.com>
2741         
2742         * lily/percent-repeat-engraver.cc, lily/parser.yy,
2743         lily/define-music-types.cc, lily/percent-repeat-iterator.cc,
2744         lily/slash-repeat-engraver.cc,
2745         lily/include/percent-repeat-iterator.hh: Rework percent repeats:
2746         iterator sends PercentEvents
2747
2748         * lily/time-scaled-music-iterator.cc, lily/tuplet-engraver.cc:
2749         rework tuplets: send start/stop events to engraver
2750
2751         * lily/context.cc, lily/music.cc, lily/context-scheme.cc: Add
2752         dispatchers event-source and events-below to Context
2753         
2754 2006-05-15  Graham Percival  <gpermus@gmail.com>
2755
2756         * Documentation/user/README.txt: update info for doc writers.
2757
2758         * Documentation/user/programming-interface.itely: integrate
2759         Nicolas' fixes for chapter rewrite.
2760
2761         * Documentation/user/ various: minor fixes.
2762
2763 2006-05-15  Han-Wen Nienhuys  <hanwen@lilypond.org>
2764
2765         * lily/clef-engraver.cc: cleanup.
2766
2767         * Documentation/user/GNUmakefile: dist context-example.eps too.
2768
2769         * lily/key-engraver.cc (create_key): use
2770         explicitKeySignatureVisibility for cancellation too. 
2771
2772         * lily/font-config.cc (init_fontconfig): don't close file if
2773         f==NULL. 
2774
2775 2006-05-15  Erlend Aasland  <erlenda@gmail.com>
2776
2777         * Documentation/topdocs/NEWS.tely: niente and rotation news
2778
2779 2006-05-14  Erlend Aasland  <erlenda@gmail.com>
2780
2781         * lily/include/stencil.hh
2782         * lily/stencil.cc (rotate): new function. Makes it possible
2783         to rotate a stencil around a given offset.
2784
2785         * lily/grob.cc (get_print_stencil): add rotation support
2786
2787         * lily/stencil-interpret.cc (interpret_stencil_expression):
2788         add rotation support
2789
2790         * lily/stencil-scheme.cc (ly:stencil-rotate): new function
2791
2792         * scm/define-grob-properties.scm: add 'rotation property
2793
2794         * scm/define-markup-commands.scm: add rotate markup command
2795         
2796         * scm/output-ps.scm: add rotation support in PostScript backend
2797
2798         * scm/output-svg.scm: add rotation support in SVG backend
2799
2800 2006-05-13  Graham Percival  <gpermus@gmail.com>
2801
2802         * Documentation/user/music-glossary.itely: French correction.
2803
2804         * Documentation/user/programming-interface.itely: major
2805         new docs, some reorg, some info from Nicolas.
2806
2807         * Documentation/user/ various: small fixes.
2808
2809 2006-05-12  Mats Bengtsson  <mabe@s3.kth.se>
2810
2811         * Documentation/user/programming-interface.itely (Markup
2812         programmer interface): Remove duplicate text.
2813
2814 2006-05-12  Graham Percival  <gpermus@gmail.com>
2815
2816         * Documentation/user/context-example.eps: new file.
2817
2818         * Documentation/user/changing-defaults.itely: set up file to
2819         use eps image.
2820
2821         * Documentation/user/programming-interface.itely: changes
2822         from mailist.
2823
2824 2006-05-12  Han-Wen Nienhuys  <hanwen@lilypond.org>
2825
2826         * configure.in (LINK_GXX_STATICALLY): python 2.4 req.
2827
2828 2006-05-11  Graham Percival  <gpermus@gmail.com>
2829
2830         * Documentation/user/programming-interface.itely: first round of
2831         editing and merging emails from Nicolas.
2832
2833         * Documentation/user/scheme-tutorial: minor edit.
2834
2835 2006-05-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
2836
2837         * python/musicxml.py (Xml_node.__init__): _attribute_dict stores
2838         XML attributes.
2839         (Xml_node.message): use it.
2840
2841         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): 
2842         oops. Add duration argument.
2843
2844 2006-05-10  Joe Neeman  <joeneeman@gmail.com>
2845
2846         * lily/paper-column-engraver.cc (make_columns):
2847         * scm/define-grobs.scm: Revert my previous change and set the default
2848         in define-grobs.scm instead.
2849
2850 2006-05-09  Graham Percival  <gpermus@gmail.com>
2851         
2852         * Documentation/user/changing-defaults.itely: general editing,
2853         info about \set and \override.
2854
2855         * Documentation/user/tweaking.itely, advanced-notation.itely:
2856         fixes from Dave Luttinen, thanks!
2857
2858 2006-05-09  Joe Neeman  <joeneeman@gmail.com>
2859
2860         * lily/paper-column-engraver.cc (make_columns): By default, a column
2861         needs to be breakable.
2862
2863 2006-05-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
2864
2865         * scripts/musicxml2ly.py (musicxml_clef_to_lily): use new
2866         Attributes methods
2867         (musicxml_time_to_lily): idem
2868         (musicxml_key_to_lily): idem
2869         (instrument_drumtype_dict): dict for supported drumtypes.
2870         (LilyPondVoiceBuilder.__init__): new class: sanely keep track of
2871         moments and pending mm rests
2872         (musicxml_voice_to_lily_voice): rewrite to use LilyPondVoiceBuilder
2873         (musicxml_voice_to_lily_voice): strip KeyChangeEvents for drums.
2874         (musicxml_voice_to_lily_voice): add mode change.
2875         (option_parser): lxml.etree (http://codespeak.net/lxml/) for more
2876         speed and less memory usage (factor 5 to 10).
2877         (convert): write -defs.ly  and driver file separately so people
2878         can script their own part extraction.
2879
2880         * python/musicxml.py (minidom_demarshal_node): new function:
2881         separate minidom handling.
2882         (lxml_demarshal_node): new function: support lxml.etree too.
2883         (Xml_node.message): new function: verbose error message, with XML
2884         path to offending node.
2885         (Attributes.get_measure_length): sane interface to MusicXML attributes.
2886         (Part_list.generate_id_instrument_dict): new method: collect
2887         instrument names, to be able to set drum_type.
2888         (Part.interpret): handle underfull measures
2889         (Part.interpret): assign instrument names.
2890
2891         * python/musicexp.py (Output_printer.close): new method
2892         (MusicWrapper.print_ly): new class: support other modes,
2893         eg. \drummode
2894         (BarCheck.print_ly): new class. Support bar checks, with comments
2895         and fancy barchecks. 
2896         (NoteEvent.__init__): also set drum_type for drum notes.
2897         (MultiMeasureRest.lisp_expression): dump mm rests.
2898
2899         * lily/paper-column-engraver.cc (stop_translation_timestep): set
2900         line-break-permission if forbidBreak is not set.
2901
2902 2006-05-09  Joe Neeman  <joeneeman@gmail.com>
2903
2904         * scm/define-context-properties.scm:
2905         * scm/define-grob-properties.scm:
2906         * scm/define-grobs.scm:
2907         * scm/define-music-display-methods.scm:
2908         * scm/define-music-properties.scm:
2909         * scm/define-music-types.scm:
2910         * scm/music-functions.scm:
2911         * ly/declarations-init.ly:
2912         * lily/include/constrained-breaking.hh:
2913         * lily/system.cc:
2914         * lily/spaceable-grob.cc:
2915         * lily/simple-spacer.cc:
2916         * lily/paper-score.cc:
2917         * lily/paper-column.cc:
2918         * lily/paper-column-engraver.cc:
2919         * lily/item.cc:
2920         * lily/gourlay-breaking.cc:
2921         * lily/constrained-breaking.cc:
2922         * python/convertrules.py:
2923         Change "penalty", "page-penalty" and "breakable" to "line-break-penalty",
2924         "page-break-penalty" and "line-break-permission".
2925         Add "page-break-permission", "page-turn-permission" and "page-turn-penalty".
2926         Replace BreakEvent with LineBreakEvent, PageBreakEvent and PageTurnEvent.
2927
2928         * lily/bar-engraver.cc:
2929         * lily/beam-engraver.cc:
2930         * lily/forbid-break-engraver.cc:
2931         * lily/ligature-engraver.cc:
2932         * lily/paper-column-engraver.cc:
2933         * lily/percent-repeat-engraver.cc:
2934         * lily/score-engraver.cc:
2935         * lily/score-engraver.hh:
2936         * lily/paper-column-engraver.hh:
2937         Inter-engraver communication regarding line breaks is done through context
2938         properties (Score.forbidBreak) instead of function calls.
2939
2940 2006-05-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
2941
2942         * VERSION (PACKAGE_NAME): release 2.9.4
2943
2944 2006-05-08  Graham Percival  <gpermus@gmail.com>
2945
2946         * Documentation/user/working.itely: proofreading from Dave
2947         Luttinen, thanks.
2948
2949         * Doucmentation/user/README.txt: updated with manual style info.
2950
2951         * Documentation/user/ various: trim linewidth to 78 chars.
2952
2953 2006-05-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
2954
2955         * scm/define-grob-properties.scm (all-internal-grob-properties):
2956         remove chord-tremolo property.
2957
2958         * lily/beam.cc (get_beam_segments): don't use stem position as
2959         base for broken ends.
2960
2961 2006-05-06  Graham Percival  <gpermus@gmail.com>
2962
2963         * Documentation/user/putting.itely: proofreading from Dave
2964         Luttinen, thanks!
2965
2966         * Documentation/user/ various: more reorg and clarifications.
2967
2968 2006-05-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
2969
2970         * scm/lily.scm (TEX_STRING_HASHLIMIT): move from framework-texstr.scm.
2971
2972         * ly/music-functions-init.ly: new function featherDurations
2973
2974         * lily/beam.cc: read grow-direction for feathered beaming.
2975
2976         * Documentation/topdocs/NEWS.tely (Top): typo.
2977
2978 2006-05-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
2979
2980         * lily/include/beam.hh (struct Beam_stem_segment): add gapped_ for
2981         tremolo beams.
2982
2983 2006-05-05  Erik Sandberg  <mandolaerik@gmail.com>
2984         * lily/context.cc, lily/global-context.cc: Added 'unique' member,
2985         used by music streams.
2986
2987         * lily/dispatcher.cc, lily/dispatcher-scheme.cc,
2988         lily/stream-event.cc, lily/stream-event-scheme.cc,
2989         lily/listener.cc, lily/scheme-listener.cc,
2990         lily/scheme-listener-scheme.cc, lily/include/dispatcher.hh,
2991         lily/include/stream-event.hh, lily/include/listener.hh,
2992         lily/include/scheme-listener.hh, scm/define-event-classes.scm:
2993         Created data structures for music streams.
2994         
2995 2006-05-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
2996
2997         * lily/beam.cc (get_beam_segments): new function. Reorganise the
2998         construction of a beam. 
2999         (print): rewrite. 
3000
3001         * flower/include/std-vector.hh (default_compare): use only one comparison.
3002
3003         * scm/define-markup-commands.scm (note-by-number): remove debug display.
3004         (note-by-number): further attachment fixes.
3005
3006         * scm/lily-library.scm (ordered-cons): new function.
3007         (interval-index): new function
3008
3009         * lily/note-head-scheme.cc (LY_DEFINE): new file.
3010
3011         * lily/note-head.cc (get_stem_attachment): new function.
3012
3013         * scm/define-markup-commands.scm (note-by-number): read 'style
3014         property. 
3015
3016         * input/regression/markup-note.ly: show note-head style option.
3017
3018         * mf/feta-bolletjes.mf (overdone_heads): fix attachment points for
3019         triangle head.
3020
3021 2006-05-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
3022
3023         * mf/GNUmakefile (NCSB_OTFS): remove old ncsb detection further.
3024
3025         * configure.in (LINK_GXX_STATICALLY): fix for ncsb detection.
3026
3027         * lily/include/constrained-breaking.hh: GCC 4 fix.
3028
3029 2006-05-04  Joe Neeman  <joeneeman@gmail.com>
3030
3031         * lily/simple-spacer.cc: Remove class Simple_spacer_wrapper.
3032         Replace it with functions get_line_forces and get_line_configuration.
3033         (class Simple_spacer): Make data private.
3034         Rewrite compression algorithm to be faster and simpler.
3035
3036         * lily/simple-spacer-scheme.cc (ly_solve_rod_and_spring_problem):
3037         * lily/gourlay-breaking.cc (solve):
3038         * lily/constrained_breaking.cc (space_line):
3039         Change it to the new simple-spacer code.
3040
3041         * lily/paper-score.cc (get_paper_systems):
3042         (Paper_score):
3043         (process):
3044         Delay breaking the systems until they are requested.
3045         (find_break_indices):
3046         Use vsize for indices.
3047         (calc_breaking):
3048         Move the "Calculating line breaks" message here.
3049
3050         * lily/system.cc (pre_processing):
3051         Move the "Calculating line breaks" message away from here.
3052         (break_into_pieces):
3053         Allow multiple calls to this function in sequence (with touching-but-
3054         not-overlapping breakpoints).
3055
3056         * lily/constrained-breaking.cc:
3057         Replace most of the get_XXXX functions with get_line_details.
3058         Only calculate the force for each line. Calculate configurations only
3059         for the lines we will actually use.
3060         Replace cols_ with lines_.
3061
3062 2006-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3063
3064         * mf/GNUmakefile (depth): remove FC_FIND.
3065
3066         * config.make.in (NCSB_SOURCE_FILES): subst NCSB_SOURCE_FILES
3067
3068         * configure.in (LINK_GXX_STATICALLY): call fc-match from within configure.
3069
3070         * scm/framework-ps.scm (write-preamble): new function.
3071         (write-preamble): load mac fonts via fondu, even if gs-font-load
3072         is set.
3073
3074 2006-05-03  Werner Lemberg  <wl@gnu.org>
3075
3076         * mf/GNUmakefile (FC_FIND): Fix typo.
3077
3078 2006-05-03  Erlend Aasland  <erlenda@gmail.com>
3079
3080         * stepmake/stepmake/generic-targets.make (cvs-clean): also remove out-www dirs.
3081
3082 2006-05-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
3083
3084         * stepmake/aclocal.m4: run python-config for crosscompiling
3085         flags. 
3086
3087         * scripts/lilypond-book.py (Lilypond_file_snippet.my_system): add
3088         -f png for HTML, TEXINFO formats. 
3089
3090         * input/tutorial/lbook-html-test.html: new file.
3091
3092         * lily/include/tie-formatting-problem.hh (class
3093         Tie_formatting_problem): index Chord_outline_map by Tuple2 for
3094         [column, direction]. This fixes laissez vibrer ties.
3095  
3096         * flower/include/tuple.hh (struct Tuple2): new file.
3097
3098         * mf/GNUmakefile (FC_FIND): new function. Find ncsb using
3099         $(FCMATCH), only if $(NCSB_DIR) not set. 
3100
3101         * configure.in (LINK_GXX_STATICALLY): only warn if $NCSB_DIR set.
3102
3103         * config.make.in (DOCUMENTATION): set FCMATCH.  
3104
3105         * autogen.sh (srcdir): don't set --with-ncsb-dir. 
3106
3107 2006-05-03  Graham Percival  <gpermus@gmail.com>
3108
3109         * Documentation/user/ various: final round of reorg.
3110
3111         * Documentation/user/instrument-notation.itely: some more
3112         fixes from Eduardo, thanks!
3113
3114 2006-05-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
3115
3116         * VERSION (PACKAGE_NAME): release 2.9.3
3117
3118         * flower/file-path.cc (is_dir): canonicalize file name before stat'ing.
3119
3120         * lily/relocate.cc (framework_relocation): remove old relocation stuff.
3121
3122 2006-05-01  Mats Bengtsson  <mabe@s3.kth.se>
3123
3124         * scm/define-grob-properties.scm (all-user-grob-properties):
3125         Correct typo, thanks to Eduardo.
3126
3127 2006-05-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
3128
3129         * scripts/GNUmakefile (SEXECUTABLES): remove lilypond-ps2png.scm
3130
3131         * buildscripts/lilypond-words.py (F): indent fix.
3132
3133         * input/regression/tie-arpeggio-collision.ly: new file.
3134
3135         * lily/tie-formatting-problem.cc (set_column_chord_outline): new
3136         function: store outlines per column rank.
3137
3138         * lily/include/tie-configuration.hh (class Tie_configuration): add
3139         column_ranks_ to specification and configuration, to distinguish
3140         between ties for different heads in arpegiated chords.
3141
3142         * lily/relocate.cc (framework_relocation): use INSTALLER_PREFIX.
3143
3144         * *.py: more 4 space indents.
3145
3146         * autogen.sh (conf_flags): set sensible default for with-ncsb-dir
3147
3148 2006-05-01  Joe Neeman  <joeneeman@gmail.com>
3149
3150         * scm/lily-library.scm: Fix guile 1.6 compatibility in inf? and nan?
3151
3152 2006-05-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
3153
3154         * buildscripts/pfx2ttf.fontforge (err): create OTF files.
3155
3156         * scripts/abc2ly.py (dump_score): indent of 4 for python code. 
3157
3158         * configure.in (LINK_GXX_STATICALLY): remove locate() call.
3159
3160 2006-04-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3161
3162         * python/convertrules.py (conv): indent 4 for python files.
3163
3164 2006-04-29  Mats Bengtsson  <mabe@s3.kth.se>
3165
3166         * Documentation/user/changing-defaults.itely (Creating contexts):
3167         Clarify \new semantics.
3168
3169 2006-04-28  Graham Percival  <gpermus@gmail.com>
3170
3171         * Documentation/user/ various: major new sections in the
3172         Learning manual, slight reorg elsewhere.
3173
3174 2006-04-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
3175
3176         * mf/GNUmakefile (MFTRACE_FLAGS): add $(outdir) to $(ENCODING_FILE) 
3177
3178         * scm/framework-ps.scm (output-framework): remove PageMedia
3179
3180 2006-04-27  Graham Percival  <gpermus@gmail.com>
3181
3182         * Documentation/user/ tweaks.itely, working.itely: new
3183         files, being more advanced "learning manual" chapters.
3184
3185         * Documentation/user/ tutorial, putting, lilypond: reorg.
3186
3187 2006-04-26  Graham Percival  <gpermus@gmail.com>
3188
3189         * input/regression/lyric-combine-polyphonic.ly: fixed test
3190         (no more "can't find context `one'" error).
3191
3192 2006-04-25  Joe Neeman <joeneeman@gmail.com>
3193
3194         * lily/stem-tremolo.cc (print): fix whole note tremolo placement
3195
3196         * input/regression/stem-tremolo.ly: add 2 more whole note examples
3197         
3198 2006-04-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3199
3200         * lily/relocate.cc (read_relocation_dir): new function.
3201
3202 2006-04-26  Graham Percival  <gpermus@gmail.com>
3203
3204         * Documentation/user/instrument-notation.itely: a few more fixes
3205         from Eduardo, thanks!
3206
3207         * Documentation/user/README.txt: new file; contains info on
3208         style that used to be in lilypond.tely.
3209
3210         * Documentation/user/ various: first round of doc reorg.
3211
3212         * Documentation/user/baer-flat-bw.png: remove alpha bit from
3213         graphic; this probably causes problems on some pdf
3214         viewers, notably Adobe Acrobat.
3215
3216 2006-04-24  Graham Percival  <gpermus@gmail.com>
3217
3218         * Documentation/user/instrument-notation.itely: many alterations
3219         to Vocal music, from Eduardo Viera.
3220
3221 2006-04-23  Graham Percival  <gpermus@gmail.com>
3222
3223         * Documentation/user/instrument-notation.itely: fix \new
3224         instead of \context problem.
3225
3226 2006-04-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3227
3228         * lily/relocate.cc (expand_environment_variables): new function.
3229         (read_line): id.
3230         (read_relocation_file): id.
3231
3232         * scm/stencil.scm (eps-file->stencil): fix EPS PS embedding code 
3233
3234 2006-04-21  Erlend Aasland  <erlenda@gmail.com>
3235
3236         * ly/engraver-init.ly: remove old comments from TabVoice
3237
3238 2006-04-20  Graham Percival  <gpermus@gmail.com>
3239
3240         * Documentation/user/instrument-notation.itely: added Erlend's
3241         latest doc patch, thanks!
3242
3243 2006-04-19  Erlend Aasland <erlenda@gmail.com>
3244
3245         * lily/include/slur.hh:
3246         * lily/slur.cc:
3247         * lily/phrasing-slur-engraver.cc:
3248         * lily/slur-engraver.cc: Fix 'cut & paste' code by merging
3249         acknowledge_extra_object () from Phrasing_slur_engraver:: and
3250         Slur_engraver:: and putting it in
3251         Slur::auxiliary_acknowledge_extra_object ().
3252
3253         * ps/music-drawing-routines.ps (draw_dashed_slur): fix another bug
3254
3255         * lily/note-collision.cc: fix a comment
3256
3257 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
3258
3259         * stepmake/bin/add-html-footer.py: fix footer position in
3260         generated html files: before </body> and </html> tags.
3261
3262 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
3263
3264         * scripts/GNUmakefile: revert last "fix", which rather broke make.
3265         Earlier successive `make' commands finally compiled ok.
3266
3267         * Documentation/topdocs/INSTALL.texi: require mftrace 1.1.19.
3268
3269 2006-04-18  Erlend Aasland <erlenda@gmail.com>
3270
3271         * lily/include/stem-tremolo.hh:
3272         * lily/stem-tremolo.cc: move rotated_box () to Lookup:: and update
3273         callers.
3274
3275         * lily/lookup.cc:
3276         * lily/include/lookup.hh: add rotated_box ()
3277
3278 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
3279
3280         * scripts/GNUmakefile: bugfix: run help2man only after scripts have 
3281         been generated. Fixes "can't get `--help'" bug after make clean.
3282
3283         * THANKS: alphabetize contributors.
3284
3285 2006-04-17  Graham Percival  <gpermus@gmail.com>
3286
3287         * Documentation/user/instrument-notation.itely: added Erlend's
3288         tabs and banjo doc patch.  Thanks!
3289
3290 2006-04-17  Erlend Aasland  <erlenda@gmail.com>
3291
3292         * scm/define-grobs.scm: fix stem-attachment for tablature note heads.
3293
3294         * ps/music-drawing-routines.ps (draw_dashed_line): fix dash pattern bug.
3295
3296         * scm/output-lib.scm: add some more predefined string tunings.
3297
3298         * Documentation/user/instrument-notation.itely: and doc them.
3299
3300 2006-04-16  Jürgen Reuter  <reuter@ipd.uka.de>
3301
3302         * ly/engraver.ly: Remove obsolete comments.
3303
3304         * ly/gregorian-init.ly: Define default layout block.
3305
3306         * input/puer-fragment.ly: Updated and extended.
3307
3308 2006-04-15  Jan Nieuwenhuizen  <janneke@gnu.org>
3309
3310         * lily/lily-parser-scheme.cc: Use them to fix --output=DIR/BASE
3311         pdf conversion behaviour.
3312
3313         * flower/file-name.cc (dir_name)
3314         (get_working_directory): Move from relocate.cc.
3315
3316         * lily/relocate.cc (setup_paths): Remove rogue stat calls.
3317         
3318         * lily/relocate.cc: Encapsulate sys/stat.h in
3319         HAVE_STAT_H.
3320
3321 2006-04-14  Graham Percival  <gpermus@gmail.com>
3322
3323         * Documentation/user/ various: small updates from Cameron
3324         and Juergen, thanks!
3325
3326         * Documentation/user/ various: small updates of my own.
3327
3328         * THANKS: 2.7 -> 2.8.
3329
3330 2006-04-11  Graham Percival  <gpermus@gmail.com>
3331
3332         * scm/define-context-properties.scm: typo.
3333
3334         * Documentation/user/ : many more small updates.
3335
3336 2006-04-13  Jürgen Reuter  <reuter@ipd.uka.de>
3337
3338         * scm/define-music-types.scm: disposed "docme".
3339
3340 2006-04-11  Erlend Aasland  <erlenda@gmail.com>
3341
3342         * lily/hairpin.cc: make niente circles a bit smaller.
3343
3344 2006-04-10  Erlend Aasland  <erlenda@gmail.com>
3345
3346         * mf/GNUmakefile: remove redundant mftrace check. Also remove
3347         get-pfa and get-*-fonts targets.
3348
3349 2006-04-10  Graham Percival  <gpermus@gmail.com>
3350
3351         * THANKS, Documentation/user/ basic-notation, advanced-notation,
3352         music-glossary, programming-interface: more minor fixes
3353         from mailist.
3354
3355         * scm/define-grob-properties.scm: clarified direction, thanks Mats!
3356
3357         * scm/define-context-properties.scm: another old \property update.
3358         This time tested for compiling!
3359
3360 2006-04-10  Erlend Aasland  <erlenda@gmail.com>
3361
3362         * mf/GNUmakefile: fix for mftrace version >= 1.2.0
3363
3364 2006-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
3365
3366         * scm/define-context-properties.scm (all-user-translation-properties): 
3367         * Documentation/user/global.itely (Page formatting): Compile fix.
3368
3369 2006-04-09  Mats Bengtsson  <mabe@s3.kth.se>
3370
3371         * Documentation/user/advanced-notation.itely (Polymetric
3372         notation): Update the example to use the "+" symbol and add link
3373         to input/test/compound-time.ly.
3374
3375 2006-04-08  Graham Percival  <gpermus@gmail.com>
3376
3377         * scm/define-grob-properties.scm: clarify docs for #'direction.
3378
3379         * scm/define-context-properties.scm: update old \property override.
3380
3381         * Documentation/user/ advanced-notation, global, lilypond-book:
3382         more minor doc updates.
3383
3384 2006-04-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
3385
3386         * lily/parser.yy (Generic_prefix_music_scm): append lists, not objects.
3387
3388         * scm/backend-library.scm (search-gs): oops.
3389
3390 2006-04-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
3391
3392         * scripts/lilypond-book.py (output): use base, not filename for href.
3393
3394         * scm/backend-library.scm: only look for gs.
3395
3396         * scripts/lilypond-book.py (output): fix printfilename.
3397
3398         * lily/parser.yy (music_function_musicless_prefix): fold together
3399         definitions of signature (SCM*) (Music|post_event|chord_body_element)
3400
3401         * lily/slur.cc (print): only set font-size if not set yet.
3402
3403         * lily/slur-configuration.cc (add_score): improved layout of debug
3404         scoring output.
3405
3406 2006-04-05  David Feuer  <David.Feuer@gmail.com>
3407
3408         * music-drawing-routines.ps (draw_round_box): removed testing artifact.
3409         (draw_circle): Hopefully fixed regression.
3410         Improved documentation for several procedures.
3411         
3412 2006-03-04  Werner Lemberg  <wl@gnu.org>
3413
3414         * ly/engraver-init.ly (\Score): Add beam-event to quotedEventTypes.
3415
3416 2006-04-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
3417
3418         * scripts/musicxml2ly.py (bindir): add dynamic
3419         relocation. 
3420
3421 2006-04-04  Graham Percival  <gpermus@gmail.com>
3422
3423         * Documentation/user/ basic-notation, advanced-notation, putting,
3424         instrument-notation, invoking, lilypond, THANKS: another ream of small
3425         fixes from the Doc Helpers.
3426
3427 2006-04-03  David Feuer  <David.Feuer@gmail.com>
3428
3429         * music-drawing-routines.ps: remove superfluous gsave/grestore pairs.
3430
3431         * lilyponddefs.ps (set-ps-scale-to-lily-scale): Fixed code duplication.
3432
3433         * Cleaned up interfaces between PostScript and Scheme, and moved
3434         computations from PostScript to Scheme:
3435
3436         * music-drawing-routines.ps
3437         (*SF, stroke_and_fill): new procedures.  Replaced stroke and fill
3438         with stroke_and_fill throughout.
3439         (euclidean_length, print_letter, draw_box): Deleted unused
3440         procedures.  If someone needs draw_box, implement it using
3441         draw_round_box; don't duplicate code.
3442         (print_glyphs, draw_round_box, draw_polygon, draw_repeat_slash):
3443         Refactored/cleaned up interfaces.
3444         (mark_URI): Moved.
3445
3446         * output-ps.scm: reordered arguments to PostScript functions to
3447         match new interfaces
3448         (glyph-string): Rewrote glyph-string.
3449         (grob-cause): Replaced string-append with format.
3450         (repeat-slash): Rewrote to do computation here.
3451         (round-filled-box): Rewrote to do computation here.
3452
3453 2006-04-04  Erlend Aasland  <erlenda@gmail.com>
3454
3455         * stepmake/stepmake/generic-targets.make: add cvs-clean target
3456
3457         * stepmake/stepmake/toplevel- targets.make: print help info about
3458         cvs-clean
3459
3460 2006-04-03  Erlend Aasland  <erlenda@gmail.com>
3461
3462         * input/regression/hairpin-circled.ly: new file
3463
3464 2006-04-03  Erlend Aasland  <erlenda@gmail.com>
3465
3466         * lily/hairpin.cc (print): add support for circled tip
3467
3468         * scm/define-grob-properties.scm: add circled-tip parameter
3469
3470         * scm/define-grobs.scm: init circled-tip to false
3471         
3472 2006-04-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
3473
3474         * scm/music-functions.scm (quote-substitute): set
3475         iterators-ctor. 
3476
3477 2006-03-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
3478
3479         * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): set
3480         BSTINPUTS. 
3481
3482         * Documentation/topdocs/AUTHORS.texi (Top): add David Feuer.
3483
3484         * scm/output-ps.scm (glyph-string): revert cid selectfont.
3485
3486 2006-03-31  David Feuer  <david.feuer@gmail.com>
3487         
3488         * scm/framework-ps.scm:
3489         
3490         * scm/output-ps.scm: glyph-string now produces smaller, more
3491         readable, and probably faster PostScript.  Several findfont
3492         scalefont setfont instances changed to selectfont
3493         Hacked-up string-appends changed to formats.
3494
3495         * ps/music-drawing-routines.ps: add print_letter, print_glyphs.
3496         
3497 2006-03-30  Graham Percival  <gpermus@gmail.com>
3498
3499         * scm/lily-library.scm: make "no version" warning message more polite.
3500
3501         * lily/music.cc: add double quotes to failed octave check.
3502
3503         * Documentation/user/ advanced-notation, changing-defaults,
3504         instrument-notation, invoking, music-glossary: whole bunch of minor
3505         fixes from mailist.
3506
3507 2006-03-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
3508
3509         * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): use
3510         $(buildscriptdir) iso. depth.
3511
3512         * VERSION (PACKAGE_NAME): release 2.9.1
3513
3514 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
3515
3516         * lily/pango-font.cc (pango_item_string_stencil): more robustness.
3517
3518         * VERSION (PATCH_LEVEL): bump version number.
3519
3520         * flower/include/guile-compatibility.hh (scm_from_uint32): add
3521         scm_from_uint32 ()
3522
3523         * lily/pango-font.cc (pango_item_string_stencil): use
3524         scm_from_uint32 ()
3525
3526         * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
3527         $(outdir)/emmentaler-%.svg): remove canary.
3528
3529         * lily/pango-font.cc (pango_item_string_stencil): only use uXXX
3530         glyphnames if we have a ttf font.
3531
3532 2006-03-30  Mats Bengtsson  <mabe@s3.kth.se>
3533
3534         * Documentation/user/advanced-notation.itely (Font selection):
3535         Corrected reference to the font-family-override.ly example.
3536
3537 2006-03-30  Joe Neeman  <joeneeman@gmail.com>
3538         
3539         * lily/chord-tremolo-engraver.cc (acknowledge_stem): set the
3540         stem-tremolo object in the stem (or else the stem might not be
3541         long enough).
3542
3543 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
3544
3545         * lily/ttf.cc (print_trailer): only print existing glyphs.
3546
3547 2006-03-30  Joe Neeman  <joeneeman@gmail.com>
3548
3549         * lily/stem-tremolo.cc (print): for whole notes (and breves, etc.)
3550         position the tremolo based on the position of the notehead.
3551
3552         * input/regression/stem-tremolo.ly: add example of unbeamed eighth
3553         notes and update the texidoc line with the new positioning rules.
3554         
3555 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
3556
3557         * lily/ttf.cc (print_trailer): don't always use uXXX glyphname.
3558
3559         * scripts/lilypond-book.py (Module): set default for linewidth if
3560         preamble not found.
3561
3562 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
3563
3564         * VERSION (PACKAGE_NAME): release 2.9.0.
3565
3566         * input/regression/stem-tremolo-position.ly: new file.
3567
3568         * lily/stem-tremolo.cc: remove Stem_tremolo::dim_callback
3569
3570 2006-03-28  Joe Neeman  <joeneeman@gmail.com>
3571
3572         * lily/stem-tremolo.cc (print): position
3573         the tremolo depending only on the end of the stem
3574         and not on the notehead
3575         (raw_stencil): center, on the middle staff line, the
3576         flag that is closest to the end of the stem (previously
3577         the bottom flag)
3578         (calc_width): add this callback to shorten a tremolo when
3579         it is beamed or it is stemup with a flag
3580         (style): add this callback to make a tremolo rectangular when
3581         it is beamed or it is stemup with a flag
3582         (rotated_box): this is like Lookup::beam but makes a rotated
3583         rectangle instead of a parallelogram
3584
3585         * lily/stem.cc (calc_stem_info): make sure the stem
3586         is long enough to fit the tremolo
3587         (calc-length): reduce the length of tremolo stems since the
3588         tremolo code is now capable of better positioning
3589
3590         * scm/define-grobs.scm: make calc_width the default beam-width
3591         callback for stem-tremolo and add the style callback
3592                 
3593 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
3594
3595         * lily/tuplet-bracket.cc (calc_control_points): handle suicide
3596         case. 
3597
3598 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
3599
3600         * lily/ttf.cc (make_index_to_charcode_map): restore old
3601         cmap. 
3602
3603 2006-03-28  Werner Lemberg  <wl@gnu.org>
3604
3605         * lily/pango-font.cc (get_unicode_name): Fix `uXXXXX' glyph names.
3606
3607 2006-03-28  Graham Percival  <gpermus@gmail.com>
3608
3609         * THANKS: update for 2.9, add section for Documentation helpers.
3610
3611         * Documentation/topdocs/NEWS.tely: compile fix.
3612
3613         * Documentation/user/ basic-notation, global, advanced-notation,
3614         examples.itely: minor fixes from mailist.
3615
3616 2006-03-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
3617
3618         * mf/feta-bolletjes.mf: match width of solfa notes with normal
3619         note heads. 
3620
3621         * lily/ttf.cc (print_trailer): use it.
3622
3623         * lily/pango-font.cc (get_unicode_name): new function.
3624
3625         * lily/ttf.cc (make_index_to_charcode_map): move function from
3626         open-type-font.cc
3627         (print_trailer): substitute uniXXXX name if applicable. 
3628
3629         * lily/pango-font.cc (get_index_to_charcode_map): new function.
3630         (pango_item_string_stencil): use it to generate uniXXXX names.
3631
3632         * mf/feta-bolletjes.mf (overdone_heads): add small style (ugly)
3633         note heads, for uniform widths in shape note output.
3634         (overdone_heads): hmm. remove them again.
3635
3636         * scripts/lilypond-book.py (output): add links to filenames.
3637
3638         * Documentation/topdocs/INSTALL.texi (Top): update versions.
3639
3640         * lily/note-collision.cc (get_clash_groups): only consider when
3641         Note_column::dir <> CENTER. 
3642
3643         * scripts/lilypond-book.py (get_option_parser): init output_name
3644         to ''. 
3645
3646 2006-03-24  Graham Percival  <gpermus@gmail.com>
3647
3648         * Documentation/topdocs/NEWS.tely: add @end itemize
3649
3650         * Documentation/user/ global, advanced-notation: minor
3651         stuff from mailist.
3652
3653 2006-03-23  Graham Percival  <gpermus@gmail.com>
3654
3655         * Documentation/user/ lilypond.tely, music-glossary,
3656         preface: housekeeping; 2005->2006, remove "notes for 2.6"
3657
3658 2006-03-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
3659
3660         * mf/GNUmakefile: don't install .enc files.
3661
3662         * Documentation/topdocs/NEWS.tely: clear for 2.9 cycle.
3663
3664         * VERSION (PATCH_LEVEL): bump to 2.9.0
3665
3666 2006-03-22  Graham Percival  <gpermus@gmail.com>
3667
3668         * Documentation/user/advanced-notation.itely: minor fixes
3669         from mailist.
3670
3671 2006-03-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
3672
3673         * Documentation/topdocs/AUTHORS.texi (Top): add Joe Neeman.
3674
3675         * branch lilypond_2_8
3676
3677 2006-03-22  Han-Wen Nienhuys  <lilydev@localhost.localdomain>
3678
3679         * scripts/lilypond-book.py (samefile): new function, for windoze
3680         compatibility.
3681
3682 2006-03-21  Graham Percival  <gpermus@gmail.com>
3683
3684         * ly/engraver-init.ly: add info about StaffGroup.
3685
3686 2006-03-21  Han-Wen Nienhuys  <lilydev@localhost.localdomain>
3687
3688         * input/regression/stem-direction-context.ly: idem.
3689
3690         * Documentation/topdocs/NEWS.tely (Top): fix interpolation example.
3691
3692         * THANKS: add Mats.
3693
3694         * input/regression/page-layout-twopass.ly: comment out \markup so
3695         tweak-file is left.
3696
3697         * lily/instrument-name-engraver.cc (finalize): add to instrument
3698         name global System. This also fixes chopped instrument names, but
3699         doesn't crash when there are slurs/beams.
3700
3701         * lily/slur-configuration.cc (add_score): disallow negative slur
3702         scores.
3703         
3704 2006-03-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3705
3706         * scm/framework-ps.scm (dump-stencil-as-EPS): remove debugging code.
3707
3708         * lily/instrument-name-engraver.cc (process_music): kludge: add
3709         InstrumentName spanner to axis group of left bound. Fixes chopped
3710         off instrument names in EPS images.
3711
3712         * input/regression/lyric-hyphen-retain.ly: elaborate explanation.
3713
3714         * scripts/abc2ly.py (option_parser): update to 2.7.40
3715
3716 2006-03-20  Graham Percival  <gpermus@gmail.com>
3717
3718         * THANKS: move small doc contributors to SUGGESTIONS.
3719
3720         * Documentation/user/ basic-notation, advanced-notation,
3721         global: small changes from mailist.
3722
3723 2006-03-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3724
3725         * Documentation/user/advanced-notation.itely (Text marks): update
3726         for new rehearsalMarkAlignSymbol convention.
3727
3728         * VERSION (PATCH_LEVEL): bump version.
3729
3730         * input/test/instrument-name-align.ly: new file.
3731
3732         * scm/define-markup-commands.scm (hcenter-in): add hcenter-in.
3733
3734         * input/test/instrument-name-align.ly: new file. Document how to
3735         align instrument names.
3736
3737         * lily/mark-engraver.cc: remove properties.
3738
3739         * scm/define-context-properties.scm
3740         (all-user-translation-properties): remove align symbol properties
3741         for barnumber/reh. mark.
3742
3743         * lily/break-align-interface.cc (self_align_callback): new
3744         interface, new function. Look at complete alignment. This handles
3745         tunable break alignments in case break-align-symbols are missing.
3746
3747         * lily/bar-number-engraver.cc (acknowledge_break_alignment): new function
3748
3749         * lily/mark-engraver.cc (acknowledge_break_alignment): new function.
3750
3751         * python/convertrules.py (conv): mark/bar number alignment rule.
3752
3753         * lily/break-align-interface.cc (calc_positioning_done): also
3754         store offset from last visible break-alignment to its
3755         neighbor. This makes alignment on non-visible objects more reliable.
3756
3757         * po/lilypond.pot (Module): ran po-replace.
3758
3759         * input/regression/tie-single-manual.ly (Module): new file.
3760
3761         * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
3762         look at has_manual_position_.
3763         (from_ties): set has_manual_position_ if tie has staff-position set.
3764
3765         * lily/tuplet-bracket.cc (calc_positions): idem.
3766
3767         * lily/tuplet-number.cc (print): don't print tupletnumber if it
3768         doesn't span time.
3769
3770 2006-03-19  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3771
3772         * scm/define-markup-commands.scm (smallCaps): new markup command
3773         for turning a text to small caps using smaller font size and upper
3774         casing.
3775
3776 2006-03-17  Graham Percival  <gpermus@gmail.com>
3777
3778         * Documentation/user/ examples, instrument-notation,
3779         advnaced-notation: minor fixes from mailist.
3780
3781 2006-03-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3782
3783         * Documentation/user/tutorial.itely (First steps): change example
3784         to verbatim.  
3785
3786 2006-03-17  Graham Percival  <gpermus@gmail.com>
3787
3788         * Documentation/user/ examples, advanced: minor changes from mailist.
3789
3790         * THANKS: add Geoff Horton, for documentation stuff.
3791
3792 2006-03-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3793
3794         * python/lilylib.py (system): revert have_select kludge.
3795
3796         * Documentation/user/tutorial.itely (Commenting input files):
3797         update version numbers in doc. 
3798
3799         * scm/define-grob-interfaces.scm (multi-measure-interface): add
3800         bound-padding to multi-measure-interface
3801
3802 2006-03-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3803
3804         * input/test/engraver-example.ily: update version number.
3805
3806         * VERSION (PACKAGE_NAME): release 2.7.39
3807
3808         * lily/note-spacing.cc (get_spacing): heighten threshold where
3809         accidentals/arpeggios influence previous spacing fully.
3810
3811         * lily/rest.cc (y_offset_callback): only use direction if
3812         staff-position wasn't set before.
3813
3814         * lily/bar-number-engraver.cc: add support for
3815         barNumberAlignSymbol. 
3816         add ADD_ACKNOWLEDGER() call for break_aligned. Fixes bar-number-breathe
3817
3818         * lily/pointer-group-interface.cc (set_ordered): new function. 
3819         (add_unordered_grob): new function.
3820
3821         * lily/grob-array.cc (Grob_array): grob-arrays are always assumed
3822         to ordered, unless the opposite has been proved.  This fixes
3823         random reordering of large object groups across linebreaks,
3824         eg. beams.
3825
3826         * lily/main.cc (do_chroot_jail): printf format fix.
3827
3828         * lily/tie-formatting-problem.cc (generate_configuration):
3829         multiply y-shift for dot with direction.
3830  
3831         * scm/define-markup-commands.scm (note-by-number): put (magstep
3832         size) in y-attach too.
3833
3834         * Documentation/topdocs/NEWS.tely (Top): show override.
3835
3836         * scm/define-grobs.scm (all-grob-descriptions): reinstate neutral
3837         direction for stems.
3838         
3839 2006-03-15  Graham Percival  <gpermus@gmail.com>
3840
3841         * Documentation/user/ changing-defaults, global: minor
3842         fixes from mailist.
3843
3844 2006-03-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3845
3846         * lily/lexer.ll (Lily_lexer): bump required version to 2.7.38
3847
3848         * lily/spacing-spanner.cc (musical_column_spacing): crude fix for
3849         breakable items after uniformly stretched notes.
3850
3851         * lily/tie-formatting-problem.cc (set_chord_outline): initialize
3852         outline with outer edge of note heads. This prevents infinity
3853         problems with tied whole notes.
3854
3855         * scripts/lilypond-book.py (do_file): use os.popen
3856
3857         * python/convertrules.py (conv): add rule for Stem #'beamed-*
3858
3859 2006-03-14 Erik Sandberg  <mandolaerik@gmail.com>
3860
3861         * Documentation/user/invoking.itely: Add ragged-right to bug report
3862         guidelines.
3863
3864 2006-03-14  Graham Percival  <gpermus@gmail.com>
3865
3866         * Documentation/user/global.itely: small fix from mailist.
3867
3868 2006-03-14  Mats Bengtsson  <mabe@s3.kth.se>
3869
3870         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use the
3871         file descriptor returned by tempfile.mkstemp() when writing
3872         to tmpfile and closing it. Solves problem with unlink(tmpfile)
3873         on mingw.
3874
3875 2006-03-14  Jan Nieuwenhuizen  <janneke@gnu.org>
3876
3877         * po/fi.po: newline bugfix.
3878
3879 2006-03-12  Jan Nieuwenhuizen  <janneke@gnu.org>
3880
3881         * scm/paper.scm (paper-alist): Rounding fixes.
3882
3883 2006-03-13  Graham Percival  <gpermus@gmail.com>
3884
3885         * Documentation/user/ changing-defaults, instrument-notation,
3886         tutorial: small fixes from mailist, mostly from Mats.  Thanks!
3887
3888 2006-03-13 Heikki Junes  <hjunes@cc.hut.fi>
3889
3890         * po/fi.po: update.
3891
3892 2006-03-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3893
3894         * stepmake/bin/add-html-footer.py (mail_address_url): don't add
3895         mailto: to http:// 
3896
3897         * python/lilylib.py (print_environment): move ps_page_count to
3898         lilypond-book.py
3899
3900 2006-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3901
3902         * Documentation/user/music-glossary.tely (G clef): fix clef alignments.
3903
3904         * scm/framework-ps.scm (embed-document): new function. Use to
3905         embed PFA files.
3906
3907         * ly/engraver-init.ly: init rehearsalMarkAlignSymbol to staff-bar.
3908
3909 2006-03-12  Mats Bengtsson  <mabe@s3.kth.se>
3910
3911         * Documentation/user/instrument-notation.itely (Setting simple
3912         songs): Added \book{...} around the full example, so the separate
3913         markups are included in the printed example. 
3914
3915 2006-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3916
3917         * scripts/lilypond-book.py (get_latex_textwidth): explicitly close
3918         tmphandle.
3919
3920         * python/lilylib.py (system): rewrite system() using
3921         subprocess. Remove >& redirection trickery.
3922
3923 2006-03-11  Graham Percival  <gpermus@gmail.com>
3924
3925         * Documentation/user/ changing-defaults, global, scheme-tutorial,
3926         notation-appendices.itely: minor fixes from mailist.
3927
3928 2006-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3929
3930         * Documentation/user/GNUmakefile ($(outdir)/lilypond.html):
3931         unsplit man also needs images.
3932
3933         * tex/texinfo.tex (sectionheading, q.v.): relax after \char'15.
3934
3935         * VERSION (PACKAGE_NAME): 2.7.38 released.
3936
3937 2006-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3938
3939         * scripts/lilypond-book.py (get_latex_textwidth): look for latex
3940         log in output dir.
3941
3942 2006-03-08  Johannes Schindelin  <Johannes.Schindelin@gmx.de>
3943
3944         * lily/audio-column.cc, lily/score-performer.cc: MIDI output now
3945         respects the Score.skipTypesetting property.
3946         
3947 2006-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3948
3949         * scm/framework-ps.scm (ps-embed-cff): no Setup section in
3950         Prolog. No %%EOF after CFF file.
3951
3952 2006-03-08  Joe Neeman  <joeneeman@gmail.com>
3953         
3954         * lily/constrained-breaking.cc (get_max_systems): used to return a
3955         much too big value
3956         (combine_demerits): use pointers to reduce copying data
3957         (calc_subproblem): idem
3958         (get_page_penalty): add page turn penalties
3959         
3960 2006-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3961
3962         * Documentation/user/invoking.itely (Invoking lilypond): better
3963         explanation of -e usage.
3964
3965         * lily/main.cc (main_with_guile): don't append to
3966         init_scheme_code_string
3967
3968         * tex/texinfo.tex (sectionheading, q.v.): don't center @image.
3969
3970         * Documentation/user/invoking.itely: add note about MacOS X scripts.
3971
3972         * scripts/convert-ly.py (do_options): don't print help for
3973         --show-rules rule.
3974
3975         * tex/texinfo.tex: patch texinfo.tex to leave single quotes in
3976         @code and @example. Update from texinfo.tex from CVS.
3977
3978 2006-03-08  Graham Percival  <gpermus@gmail.com>
3979
3980         * Documentation/user/scheme-tutorial.itely: clarifies distances
3981         measured in staff-spaces.
3982
3983 2006-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3984
3985         * lily/slur.cc (outside_slur_callback): only calculate offsets if
3986         consider[k] is true.
3987
3988         * scm/output-ps.scm (grob-cause): put numbers to ~$ (Thanks Johannes!)
3989
3990         * lily/spacing-basic.cc (standard_breakable_column_spacing): also
3991         consider columns that have originals.  Unifies spacing for mm
3992         rests around line breaks.
3993
3994         * lily/multi-measure-rest.cc (set_spacing_rods): read bound-padding.
3995         (set_text_rods): idem.
3996         (calculate_spacing_rods): new function: share code between
3997         set_text_rods and set_spacing_rods.
3998         (set_text_rods): take extents of bounds into account.  
3999
4000 2006-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4001
4002         * Documentation/user/basic-notation.itely (Writing music in
4003         parallel): don't use relative.
4004
4005 2006-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4006
4007         * ly/music-functions-init.ly (Module): add shiftDurations
4008
4009         * ly/drumpitch-init.ly (drumPitchNames): add tamtam.
4010
4011         * scm/paper.scm (paper-alist): no decimals for Ax paper sizes. 
4012
4013         * ly/engraver-init.ly: init vocalName to nil.
4014
4015 2006-03-05 Erik Sandberg  <mandolaerik@gmail.com>
4016
4017         * scm/music-functions.scm (music->make-music): bugfix,
4018         KeyChangeEvents are now handled correctly.
4019
4020         * scripts/lilypond-book.py: Add --debug option.
4021
4022 2006-03-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4023
4024         * python/lilylib.py: add tempfile.
4025
4026 2006-03-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4027
4028         * VERSION (PACKAGE_NAME): release 2.7.37
4029
4030         * python/lilylib.py (ps_page_count): remove make_ps_images().
4031         (ps_page_count): remove mkdir_p
4032         (system): remove cleanup_temp.
4033         (exit): remove lilypond_version_(check)
4034         (error_log): remove pseudo_filter_p
4035         remove read_pipe
4036         remove cp_to_dir
4037         remove identify
4038
4039         * scripts/lilypond-book.py (Lilypond_snippet.compose_ly): don't
4040         use __main__
4041
4042         * lily/accidental-engraver.cc (make_standard_accidental): only add
4043         support for side-axis is X_AXIS. Fixes text-spacing-accidental.ly
4044
4045         * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
4046         $(outdir)/emmentaler-%.svg): rewrite without functions; too many
4047         Make incompatibilities.
4048
4049         * scm/output-ps.scm (grob-cause): replace backslashes by /
4050         (glyph-string): use ~$ for less decimals for glyph-string and grob-cause.
4051
4052 2006-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
4053
4054         * cygwin/GNUmakefile: Install fixes.
4055
4056         * scripts/GNUmakefile (SEXECUTABLES): Install fix: remove mup2ly.
4057
4058         * lily/note-head.cc (head::get_balltype): Compile fix.
4059
4060         * flower/file-name.cc (dos_to_posix): Flower string fix.
4061
4062 2006-03-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4063
4064         * python/lilylib.py: pychecker cleanups.
4065
4066         * scripts/lilypond-book.py
4067         (Lilypond_snippet.output_print_filename): pychecker cleanups
4068
4069         * scripts/midi2ly.py (Key.dump): pychecker cleanups.
4070
4071         * python/lilylib.py (underscore): remove identify() , warranty()
4072
4073         * ps/music-drawing-routines.ps: change Border routine for GSView
4074         compatibility.
4075
4076         * lily/stem.cc (height): use quantize-positions.  This triggers
4077         set_stem_lengths, so scripts on beamed stems are handled correctly.
4078
4079         * lily/side-position-interface.cc (aligned_side): check if edges
4080         of script are inside staff. Fixes accent of edge of the staff.
4081
4082         * input/regression/staccato-pos.ly: more examples.
4083
4084         * stepmake/aclocal.m4 (depth): fix bashism.
4085
4086         * lily/lyric-combine-music-iterator.cc: move from
4087         new-lyric-combine-iterator.cc
4088         (process): add pending_grace_lyric_ member to delay lyrics on
4089         grace notes.
4090
4091         * lily/system-start-text.cc (print): suicide if we don't have any
4092         elements. Fixes hara kiri'd instrument names.
4093
4094         * scripts/mup2ly.py (Module): remove.
4095
4096 2006-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4097
4098         * Documentation/user/global.itely (A single music expression):
4099         close @lilypond properly
4100
4101         * lily/volta-bracket.cc (modify_edge_height): change from
4102         after_line_breaking_callback. Suicide last bracket if appropriate.
4103  
4104         * python/lilylib.py: strip getopt support
4105
4106         * scripts/etf2ly.py (do_options): use optparse
4107
4108         * scripts/midi2ly.py: optparse, strip lilylib copy. 
4109
4110         * scripts/abc2ly.py (voices): use optparse.
4111
4112         * stepmake/stepmake/generic-vars.make: new function absdir.
4113
4114         * scripts/convert-ly.py (bindir): use optparse, argv[0] relocation.
4115
4116         * scripts/lilypond-book.py (find_file): use global_options for
4117         include path
4118
4119         * scm/ps-to-png.scm (ps-page-count): prevent null characters
4120         entering C code.
4121
4122 2006-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4123
4124         * python/lilylib.py (get_global_option): ughness for extracting
4125         global options from lilylib.
4126         (NonDentedHeadingFormatter.format_heading): move from musicxml2ly
4127
4128         * scripts/lilypond-book.py (get_option_parser): use optparse for
4129         option handling.  Put options in global_options variable.
4130
4131 2006-02-28  Heikki Junes  <hjunes@cc.hut.fi>
4132
4133         * Documentation/index.html.in: clarify.
4134
4135 2006-02-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4136
4137         * scm/layout-page-layout.scm (write-page-breaks): add a
4138         music-system-heights property to the page layout output.
4139
4140         * scm/page.scm (make-page-stencil): take footer into account when
4141         computing the 'space-left page property
4142         (annotate-space-left): take footer into account when annonating
4143         space left.
4144
4145 2006-02-28  Graham Percival  <gpermus@gmail.com>
4146
4147         * Documentation/user/ advanced-notation, global: more (final)
4148         docs for music expressions, removed special fermatas.
4149
4150 2006-02-27  Graham Percival  <gpermus@gmail.com>
4151
4152         * Documentation/user/ basic-notation, global: minor changes
4153         from mailist.
4154
4155 2006-02-26  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4156
4157         * scm/framework-ps.scm:         
4158         * scm/lily-library.scm (nan?, inf?): Move guile 1.6 compatibility
4159         layer for inf? and nan? from framework-ps to lily-library.
4160
4161 2006-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4162
4163         * mf/GNUmakefile ($(outdir)/emmentaler-$(1).otf
4164         $(outdir)/emmentaler-$(1).svg): remove backslashes from define endef.
4165
4166         * buildscripts/substitute-encoding.py (Module): remove file.
4167
4168         * mf/GNUmakefile: more PFA strippage.
4169
4170         * mf/aybabtu.pe.in (i): remove PFAaybabtu generation
4171
4172         * buildscripts/gen-emmentaler-scripts.py (i): remove PFAemmentaler
4173         generation
4174
4175         * scm/framework-ps.scm: remove font name munging.
4176
4177         * Documentation/topdocs/INSTALL.texi (Top): bump GS requirement.
4178
4179 2006-02-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4180
4181         * scm/markup.scm (define-markup-command): change
4182         def-markup-command to define-markup-command
4183
4184         * scm/music-functions.scm (define-music-function): change
4185         def-music-function to define-music-function.
4186
4187         * python/convertrules.py (conv): rules for def-music-function
4188         and def-markup-commands
4189
4190         * Documentation/user/programming-interface.itely,
4191         input/no-notation/display-lily-tests.ly,
4192         input/regression/lily-in-scheme.ly,
4193         input/regression/markup-user.ly,
4194         input/regression/music-function.ly, input/regression/tie-chord.ly,
4195         scm/fret-diagrams.scm, ly/music-functions-init.ly,
4196         ly/gregorian-init.ly: use new macro names (define-music-function,
4197         define-markup-command).
4198
4199 2006-02-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4200
4201         * scripts/lilypond-book.py (main): write Makefile dependencies file. 
4202         (output): add comments to lp-book latex output.
4203
4204         * GNUmakefile.in (footifymail): use gmane address for webpage bug
4205         address.
4206
4207 2006-02-23  Graham Percival  <gpermus@gmail.com>
4208
4209         * Documentation/user/ tutorial, global: minor changes.
4210
4211 2006-02-23  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4212
4213         * mf/GNUmakefile: add '\' in multi-line "define ... endef"
4214         blocks (for make 3.80)
4215
4216         * scm/parser-ly-from-scheme.scm (ly:parse-string-result): add
4217         \notemode so that user should not have to explicitely type it.
4218
4219         * scm/define-music-display-methods.scm: various
4220         fixes (ApplyOutputEvent, ApplyContext; \new, \context and derived
4221         constructs)
4222
4223         * input/no-notation/display-lily-tests.ly: new tests for
4224         \applyOutput and \applyContext
4225
4226 2006-02-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4227
4228         * lily/constrained-breaking.cc: patch by Joe Neeman: "I have
4229         changed it slightly so that the number of systems returned by
4230         solve () will be the same as the last value passed to resize
4231         (). I've also added more documentation, removed casts, fixed style
4232         problems and put in some recovery if constraints aren't satisfied."
4233
4234 2006-02-23  Jan Nieuwenhuizen  <janneke@gnu.org>
4235
4236         * elisp/lilypond-mode.el (count-matches-as-number): New funtion
4237         for emacs < 22 compatibility.
4238         (count-rexp): Use it.
4239         (LilyPond-string-current-midi, LilyPond-string-all-midi): Remove
4240         substring juggling (Milan Zamazal).
4241
4242 2006-02-23  Graham Percival  <gpermus@gmail.com>
4243
4244         * Documentation/user/ basic-notation, advanced-notation,
4245         global.itely, invoking.itely, tutorial,itely:
4246         minor fixes from mailist.
4247
4248         * scm/define-markup-commands.scm: improve docs of \filled-box.
4249
4250 2006-02-23  Heikki Junes  <hjunes@cc.hut.fi>
4251
4252         * Documentation/index.html.in: changes concern the previous release.
4253
4254         * input/regression/+.ly: cultivate typographical terminology.
4255
4256 2006-02-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4257
4258         * scm/define-grob-interfaces.scm (parentheses-interface): add
4259         padding to parentheses-interface.
4260
4261         * Documentation/user/GNUmakefile: remove $(CROSS) support from
4262         Documentation/user/GNUmakefile. Use --disable-documentation for that.
4263
4264         * VERSION (PATCH_LEVEL): release 2.7.36
4265
4266         * lily/slur.cc: add avoid-slur (ugh.)
4267         
4268         * lily/slur-configuration.cc (fit_factor): oops, skip point if
4269         intersection gets smaller. This fixes slurs over extreme points.
4270
4271         * lily/melody-engraver.cc (stop_translation_timestep): ignore
4272         stems with neutral-direction set.
4273
4274         * lily/piano-pedal-engraver.cc (create_text_grobs): idem.
4275
4276         * lily/open-type-font.cc (load_table): format error.
4277
4278         * lily/change-iterator.cc (process): format fix.
4279
4280         * flower/include/international.hh (_f): idem.
4281
4282         * flower/include/std-string.hh: add format printf attribute.
4283
4284         * scm/define-grobs.scm (all-grob-descriptions): height of all
4285         PedalLineSpanner is Y-extent property. Fixes pedal-ped.ly
4286
4287         * lily/ambitus-engraver.cc (finalize): use grob_array. This fixes
4288         ambitus lines.
4289
4290         * input/regression/beam-cross-staff-slope.ly: remove decrescendo.
4291
4292 2006-02-22 Erik Sandberg  <mandolaerik@gmail.com>
4293
4294         * input/regression/: upgraded syntax for some files.
4295
4296         * THANKS: Add bughunters.
4297
4298 2006-02-22  Graham Percival  <gpermus@gmail.com>
4299
4300         * Documentation/user/ invoking.itely, advanced-notation.itely,
4301         global.itely: long-awaited "let's make chapter 10 not suck"
4302         update.  Rearrange chapter 10; now called "global issues",
4303         addresses file structure, etc.  Some info from other files
4304         moved into global.itely.
4305
4306 2006-02-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4307
4308         * lily/accidental-engraver.cc (acknowledge_rhythmic_head): also
4309         catch trill-span-event notes.
4310
4311         * Documentation/user/examples.itely (Ancient notation templates): typo.
4312         (Jazz combo): typo.
4313
4314         * scripts/lilypond-book.py (main): scrap invokes_lilypond(). 
4315
4316         * Documentation/user/basic-notation.itely (Ties): document \repeatTie.
4317
4318         * Documentation/topdocs/NEWS.tely (Top): document \repeatTie.
4319
4320         * scm/define-music-types.scm (music-descriptions): add RepeatTieEvent
4321
4322         * lily/repeat-tie-engraver.cc (acknowledge_note_head): new file. cut & paste
4323         froum Laissez_vibrer_engraver.
4324
4325         * ly/declarations-init.ly (repeatTie): add \repeatTie
4326
4327         * scm/define-grobs.scm (all-grob-descriptions): add RepeatTie, RepeatTieColumn
4328
4329         * scm/define-grob-properties.scm (all-user-grob-properties): add
4330         head-direction property.
4331
4332         * lily/tie-formatting-problem.cc (from_semi_ties): rename from
4333         from_lv_ties. Take head direction argument.
4334
4335         * lily/semi-tie-column.cc: rename from
4336         laissez-vibrer-tie-column.cc. Rename class too.
4337
4338         * lily/semi-tie.cc: rename from laissez-vibrer-tie.cc. Rename
4339         class too.
4340
4341         * lily/paper-score.cc (find_break_indices): move from Break_algorithm.
4342
4343         * lily/break-algorithm.cc (find_break_indices): remove linewidth <
4344         0 case.
4345         (find_breaks): idem.
4346
4347 2006-02-21  Graham Percival  <gpermus@gmail.com>
4348
4349         * Documentation/user/advanced-notation.itely: fixed make-moment]
4350         example.
4351
4352         * Documentation/user/basic-notation.itely: more clarification to
4353         transpose.
4354
4355 2006-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4356
4357         * lily/include/constrained-breaking.hh (class
4358         Constrained_breaking): new file.
4359
4360         * lily/constrained-breaking.cc (resize): new file.
4361
4362         * lily/gourlay-breaking.cc (do_solve): ragged-last iso raggedlast
4363
4364         * Documentation/user/advanced-notation.itely (Clusters): insert
4365         end ignore too.
4366
4367         * lily/tie-column.cc (calc_positioning_done): support for
4368         tie-score debugging
4369
4370         * lily/tie-formatting-problem.cc
4371         (generate_extremal_tie_variations): factor out.
4372         (score_ties_configuration): annotate all tie 
4373         (print_ties_configuration): new routine.
4374         (generate_configuration): nudge extremal ties outside of the head
4375         Y extents.
4376         (score_ties_configuration): oops. convert to staff-space before
4377         determining position symmetry.
4378
4379 2006-02-20  Graham Percival  <gpermus@gmail.com>
4380
4381         * Documentation/user/*-notation.itely: misc minor editing,
4382         shifting doc sections around.
4383
4384         * Documentation/user/*-notation-itely, global.itely,
4385         changing-defaults.itely: added new stuff from NEWS.
4386
4387 2006-02-20  Heikki Junes  <hjunes@cc.hut.fi>
4388
4389         * po/fi.po: update.
4390
4391 2006-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4392
4393         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): don't run
4394         lilypond --verbose for lp-book.
4395
4396         * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
4397         $(outdir)/%.ly $(outdir)/%.ps): use $(srcdir) iso $(shell pwd).
4398
4399         * make/lysdoc-rules.make ($(outdir)/collated-files.tely): use
4400         $(buildscript-dir) iso. absolute depth.
4401
4402         * buildscripts/genicon.py (dir): thinko.
4403
4404         * Documentation/pictures/GNUmakefile ($(outdir)/%.ico): typo.
4405
4406 2006-02-19 Erik Sandberg  <mandolaerik@gmail.com>
4407
4408         * scm/output-lib.scm: swap darkcyan/darkyellow
4409
4410         * THANKS: Add bughunters.
4411
4412 2006-02-19  Graham Percival  <gpermus@gmail.com>
4413
4414         * Documentation/user/programming-interfaces.itely: fixed example.
4415
4416         * Documentation/user/instrument-notation.itely: fix @{ @}.
4417
4418         * scm/script.scm: add avoid-slur for \open.
4419
4420 2006-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4421
4422         * lily/tie-formatting-problem.cc (score_configuration): use
4423         sliding score for min-length. 
4424
4425         * Documentation/pictures/GNUmakefile (local-dist): loose the rule
4426         spaghetti for icons.
4427
4428         * buildscripts/genicon.py (program_name): new file.
4429
4430         * lily/tie-formatting-problem.cc (set_chord_outline): put dots
4431         in outline too.  
4432         (generate_configuration): for small ties, also look for collisions
4433         at Y + DIR*h + DELTA_Y.
4434         (get_variations): consider variation for dot positions too.
4435
4436         * lily/side-position-interface.cc (aligned_side): take abs for
4437         quantized rounded position. Fixes tenuto below staff.
4438
4439         * scm/stencil.scm (annotate-y-interval): robustify: print nan/inf
4440         markers when necessary.
4441
4442         * lily/program-option.cc (internal_set_option): add
4443         strict_infinity_checking option.
4444
4445         * scm/output-lib.scm (cyan): swap yellow and cyan.
4446
4447 2006-02-19  Graham Percival  <gpermus@gmail.com>
4448
4449         * darwin.patch: trivial linenumber update.
4450
4451         * Documentation/user/ {various}: `\context foo = named' changed
4452         to `\new foo = "name"' in docs.
4453
4454 2006-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4455
4456         * scm/stencil.scm (annotate-y-interval): use it.
4457
4458         * scm/lily-library.scm (interval-sane?): new function.
4459
4460         * buildscripts/mf-to-table.py (Char_metric.__init__): remove
4461         tfm_checksum stuff.
4462
4463         * lily/tie-formatting-problem.cc (from_lv_ties): add heads for
4464         common refpoint.
4465
4466         * flower/include/std-vector.hh (iterof): add iterof macro.
4467
4468         * lily/enclosing-bracket.cc (width): new function.
4469
4470         * lily/align-interface.cc (align_elements_to_extents): reinstate
4471         warning.
4472
4473 2006-02-18  Heikki Junes  <hjunes@cc.hut.fi>
4474
4475         * Documentation/index.html.in: fix spelling: thankyous.
4476
4477 2006-02-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4478
4479         * lily/lyric-hyphen.cc: typo.
4480
4481 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4482
4483         * stepmake/stepmake/c++-rules.make ($(outdir)/%.cc
4484         $(outdir)/%.hh): generate h and c in one rule; otherwise -jX
4485         builds don't work. 
4486
4487         * VERSION: release 2.7.35
4488
4489         * lily/beam.cc (get_default_dir): oops. Take abs () for
4490         extremes[DOWN].
4491         (get_default_dir): use extreme position criterion only in absence
4492         of forced stem directions.
4493
4494         * VERSION (PATCH_LEVEL): bump VERSION.
4495
4496         * mf/GNUmakefile: explicit rules for emmentaler/aybabtu
4497         dependencies. Necessary for -jX builds.  
4498
4499 2006-02-17  Jan Nieuwenhuizen  <janneke@gnu.org>
4500
4501         * lily/relocate.cc (setup_paths): Yet another const fix.
4502
4503 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4504
4505         * configure.in (HOST_ARCH): determine HOST_ARCH in configure.
4506
4507         * lily/relocate.cc (setup_paths): oops.
4508
4509 2006-02-17  Heikki Junes  <hjunes@cc.hut.fi>
4510
4511         * Documentation/index.html.in: order links: html before PDF.
4512
4513 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4514
4515         * lily/tie-column-format.cc (Module): remove.
4516
4517         * lily/relocate.cc (setup_paths): GCC 4.2 fixes: const correctness.
4518
4519         * lily/text-spanner.cc (print): idem.
4520
4521         * lily/dynamic-text-spanner.cc (print): only print line if longer
4522         than dash-period.
4523
4524         * lily/auto-change-iterator.cc (change_to): formatting.
4525
4526         * lily/beam.cc (get_default_dir): take extreme note head as input
4527         for stem direction.
4528
4529         * lily/tie.cc (get_default_dir): only look directions for visible
4530         stems. 
4531
4532         * lily/side-position-interface.cc (aligned_side): oops. Don't
4533         mutiply with direction. This fixes quantized (staccato, tenuto)
4534         scripts below notes.
4535
4536         * lily/lyric-hyphen.cc (set_spacing_rods): oops. Multiply with
4537         direction. Fixes c-lyrics-center-align.ly
4538
4539 2006-02-16  Jan Nieuwenhuizen  <janneke@gnu.org>
4540
4541         * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Add copy
4542         constructor.
4543
4544         * lily/std-string.cc:
4545         * lily/include/std-vector.hh (split_string): Move and rename from
4546         lily/include/misc.hh, lily/misc.cc.  Update callers.
4547
4548 2006-02-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4549
4550         * lily/include/pango-font.hh: HAVE_PANGO_FT2 iso. HAVE_PANGO_16
4551
4552 2006-02-16  Jan Nieuwenhuizen  <janneke@gnu.org>
4553
4554         * flower/test-file.cc: New file.
4555
4556         * stepmake/stepmake/test-vars.make (TEST_MODULE_LIBES): Fixes for
4557         libraries.
4558
4559         * flower/GNUmakefile (TEST_MODULE_LIBS): Link to flower lib.
4560
4561 2006-02-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4562
4563         * flower/include/file-storage.hh: remove file.
4564
4565         * lily/include/midi-item.hh (class Midi_track): idem.
4566
4567         * lily/include/source.hh (class Sources): idem.
4568
4569         * lily/include/performance.hh (class Performance): use vector
4570         iso. Cons<>
4571
4572         * flower/include/cons.hh (class Cons): remove file.
4573
4574         * flower/include/flower-proto.hh: remove template cruft.
4575
4576         * lily/include/font-metric.hh: use size_t not vsize for indices.
4577
4578         * flower/include/flower-proto.hh (Module): remove std-vector.hh
4579         from proto.
4580
4581         * lily/include/all-font-metrics.hh: use HAVE_PANGO_FT2
4582
4583         * lily/include/paper-book.hh (class Paper_book):
4584         make get_system_specs() public.
4585
4586         * scm/layout-page-layout.scm (optimal-page-breaks): only consider
4587         the force=10000 case if we don't have a current-best. 
4588
4589         * lily/tuplet-bracket.cc (get_bounds): don't do (size() - 1) for
4590         vsize 
4591
4592         * flower/include/flower-proto.hh: remove outdated templates.
4593
4594         * scm/page.scm: use annotate-spacing
4595
4596 2006-02-15  Graham Percival  <gpermus@gmail.com>
4597
4598         * scm/translation-functions.scm: circle patch from Erlend, thanks!
4599
4600         * THANKS: moved Erlend Aasland to contributors.
4601
4602 2006-02-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4603
4604         * config.hh.in: remove HAVE_PANGO_16
4605
4606         * lily/tuplet-bracket.cc (calc_positions): multiply with
4607         staff-space for beam case. This fixes tuplets+beams on scaled
4608         staves.
4609
4610         * config.hh.in: remove all Kpathsea related defines.
4611
4612         * lily/dot-column.cc (side_position): reach stem via dots->
4613         head->stem. Inspect all stems for dot collisions. 
4614
4615         * lily/dot-column-engraver.cc (class Dot_column_engraver): excise
4616         stem handling.
4617
4618         * lily/bar-number-engraver.cc (process_music): document function
4619         of whichBar.
4620
4621         * lily/score.cc (default_rendering): add pscore, not systems
4622         themselves.
4623
4624         * lily/paper-book.cc (get_system_specs): separate generation of
4625         titles and systems.
4626
4627         * flower/include/std-vector.hh: don't include config.hh
4628
4629 2006-02-15  Jan Nieuwenhuizen  <janneke@gnu.org>
4630
4631         * flower/include/std-vector.hh: Better wrapper compatibility with
4632         std::vector.
4633
4634         * flower/include/flower-proto.hh: Remove cheap forward declaration
4635         attempts.
4636
4637         * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): Bugfix.
4638
4639 2006-02-14  Graham Percival  <gpermus@gmail.com>
4640
4641         * Documentation/user/invoking.itely: add warning about command line.
4642
4643 2006-02-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4644
4645         * lily/include/lily-proto.hh: add Prob, rm Page.
4646
4647         * flower/include/std-vector.hh (VPOS): use 64 bit-proof version.
4648
4649         * VERSION: release 2.7.34
4650
4651         * lily/relocate.cc (framework_relocation): show canary if
4652         GHOSTSCRIPT_VERSION undefined.
4653
4654         * GNUmakefile.in: remove $(VERSION) symlink.
4655
4656         * lily/relocate.cc (setup_paths): add + 
4657
4658 2006-02-13  Heikki Junes  <hjunes@cc.hut.fi>
4659
4660         * Documentation/index.html.in: specify sizes for all big HTML pages.
4661
4662 2006-02-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4663
4664         * config.hh.in: remove @FRAMEWORKDIR@
4665
4666         * lily/system-start-text.cc (get_stencil): new file: separate out
4667         system-start-delimiter text support.
4668
4669         * input/**ly: replace \context with \new where appropriate.
4670         
4671         * THANKS: add Don.
4672
4673         * lily/slur-scoring.cc (get_base_attachments): use
4674         robust_relative_extent. This fixes problems with empty paper-columns. 
4675
4676 2006-02-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4677
4678         * Documentation/topdocs/NEWS.tely (Top): document \new syntax.
4679
4680         * scm/define-music-properties.scm (all-music-properties):
4681         create-new property.
4682
4683         * lily/context-specced-music-iterator.cc (construct_children):
4684         inspect 'create-new property iso. magical $uniqueContextId context
4685         id.
4686
4687         * lily/parser.yy (optional_id): allow \new "Bar" = "foo" too.
4688
4689         * lily/context-key-manager.cc (Module): new file. Encapsulate
4690         object key generation.
4691
4692         * lily/include/context-key-manager.hh (Module): new file.
4693
4694 2006-02-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4695
4696         * scm/define-grobs.scm (all-grob-descriptions): center instrument
4697         names vertically
4698
4699         * configure.in (LINK_GXX_STATICALLY): strip -DSTRING_UTILS_INLINED
4700         options.
4701         (reloc_b): excise --enable-framework-dir
4702
4703         * lily/relocate.cc (framework_relocation): use getenv
4704         LILYPOND_GS_VERSION or -DGHOSTSCRIPT_VERSION to set GS version.
4705
4706 2006-02-11  Jan Nieuwenhuizen  <janneke@gnu.org>
4707
4708         * flower/include/std-string.hh: 
4709         * flower/include/std-vector.hh: Finish std:: conversion; move
4710         flower extensions from std:: namespace.  Update users.
4711
4712         * lily/include/lily-proto.hh: Replace Link_array__*_ macros by
4713         their expansion to vector<*>.  Update users.
4714
4715 2006-02-10  Graham Percival  <gpermus@gmail.com>
4716
4717         * Documentation/user/invoking.itely: add example to File structure.
4718
4719         * Documentation/user/ instrument-notation.itely, cheatsheet.itely,
4720         examples.itely, putting.itely: {\new|\context} Lyrics \lyricsto.
4721
4722 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4723
4724         * ly/paper-defaults.ly: typo.
4725
4726         * lily/parenthesis-engraver.cc (acknowledge_grob): don't do
4727         set_parent() for parentheses. This will make it show up in bbox
4728         calculations.
4729
4730         * scm/output-lib.scm (parentheses-item::print): rewrite, using
4731         ly:grob-common* functions.
4732
4733         * lily/grob-scheme.cc (LY_DEFINE):
4734         ly:grob-common-refpoint-of-array: new function 
4735         ly:grob-common-refpoint: new function 
4736         ly:grob-relative-coordinate: new function 
4737
4738         * lily/instrument-name-engraver.cc (process_music): use
4739         Text_interface::is_markup(). This fixes \markup on instrument names.  
4740
4741         * scm/define-grobs.scm (all-grob-descriptions): set line-thickness
4742         for ties and slurs.
4743
4744         * lily/slur.cc (print): idem.
4745
4746         * lily/tie.cc: add line-thickness for ties. 
4747
4748 2006-02-10  Jan Nieuwenhuizen  <janneke@gnu.org>
4749
4750         * scm/output-svg.scm: Document diversion from GNU coding standards
4751         as a workaround for a bug in Microsoft Internet Explorer.
4752
4753 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4754
4755         * lily/instrument-name-engraver.cc (process_music): use
4756         is_markup() iso. is_string()
4757
4758         * Documentation/user/changing-defaults.itely (Module): add menu entry.
4759
4760         * lily/percent-repeat-engraver.cc (process_music): only look at
4761         main_part_ for % repeats.
4762
4763         * lily/stem-tremolo.cc (get_beam_translation): new function.
4764         (calc_slope): new function.
4765         (height): don't use real slope.
4766
4767 2006-02-10  Jürgen Reuter  <reuter@ipd.uka.de>
4768
4769         * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: add
4770         new connect-to-neighbor, control-points and staff-padding
4771         properties to make ligature brackets showing up again.
4772
4773 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4774
4775         * VERSION: release 2.7.33
4776
4777         * lily/relocate.cc (prefix_relocation): oops. One TOPLEVEL_VERSION
4778         too many.
4779
4780         * Documentation/user/changing-defaults.itely (Difficult tweaks):
4781         remove applyOutput example.
4782         (Objects connected to the input): document \tweak, \parenthesize
4783
4784         * lily/relocate.cc (prefix_relocation): allow "current"
4785         iso. TOPLEVEL_VERSION for share/lilypond/ suffix. This makes
4786         changing VERSION in a lily tree less painful.
4787
4788         * input/regression/parenthesize.ly: new file. 
4789
4790         * scm/output-lib.scm (parenthesize-element): new function.
4791
4792         * scm/define-grobs.scm (all-grob-descriptions): add ParenthesesItem.
4793
4794         * lily/parenthesis-engraver.cc (acknowledge_grob): new file.
4795
4796         * lily/accidental-engraver.cc (make_standard_accidental): reroute
4797         cause: accidentals are caused by note heads, not note events. 
4798
4799 2006-02-08  Graham Percival  <gpermus@gmail.com>
4800
4801         * darwin.patch: small patch from Erlend, thanks!
4802
4803         * Documentation/user/basic-notation.itely: add stem-neutral example.
4804
4805         * Documentation/user/putting.itely: clarifications.
4806
4807 2006-02-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4808
4809         * Documentation/topdocs/NEWS.tely (Top): remove internal cleanup
4810         note, add more guidelines to what should go into NEWS.
4811
4812         * input/sakura-sakura.ly: document how to override font.
4813
4814         * input/regression/font-family-override.ly:  doc -dshow-available-fonts
4815
4816 2006-02-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4817
4818         * lily/midi-item.cc (to_string): truncate time sig at 255 beats.
4819
4820 2006-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
4821
4822         * scripts/convert-ly.py (lilypond_version_re_str): Move from
4823         convertrules.  Add explicit grouping, needed for python2.2.
4824
4825 2006-02-07  Jan Nieuwenhuizen  <janneke@gnu.org>
4826
4827         * Documentation/topdocs/NEWS.tely (Top): Mention code cleanup.
4828
4829 2006-02-07  Graham Percival  <gpermus@gmail.com>
4830
4831         * Documentation/user/global.itely: fix line-width in (text) docs.
4832
4833         * Documentation/user/lilypond-book.itely: same.
4834
4835 2006-02-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4836
4837         * VERSION (PACKAGE_NAME): release 2.7.32
4838
4839         * Documentation/topdocs/NEWS.tely (Top): document new variable
4840         naming.
4841
4842         * flower/include/array.icc (Message): remove file.
4843
4844         * flower/include/std-vector.hh: make sure vsize and VPOS are
4845         defined for binary_search_bounds().
4846
4847         * flower/std-string.cc (std): add to_string(long unsigned).
4848
4849         * configure.in (gui_b): excise std_string option.
4850         (gui_b): excise std_vector option.
4851
4852         * flower/string.cc (Module): excise flower array & string
4853
4854         * flower/include/std-string.hh: excise flower string.
4855
4856         * {ly,lily,scm}/*: use dashes in \paper and \layout variables
4857
4858         * python/convertrules.py (lilypond_version_re_str): require
4859         only numbers and dots in \version string.
4860
4861 2006-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4862
4863         * lily/system-start-delimiter.cc (print): allow style = text too.
4864
4865         * lily/system-start-delimiter-engraver.cc
4866         (acknowledge_system_start_text): new function, also add add to
4867         support of system-start-text (instrument names). This fixes
4868         instrument names on piano staves.
4869
4870         * lily/instrument-name-engraver.cc: rewrite. Use
4871         system-start-delimiter approach. This save memory and cpu.
4872
4873         * scm/define-grobs.scm (all-grob-descriptions): remove
4874         instrument-name from break-alignment.
4875
4876         * mf/GNUmakefile ($(NCSB_TTFS)): depend on pfx2ttf script too.
4877
4878 2006-02-05  Jan Nieuwenhuizen  <janneke@gnu.org>
4879
4880         * stepmake/stepmake/generic-vars.make (LOOP): Add PLUS to keep -j
4881         jobserver going.
4882
4883         * configure.in (std_vector): On by default.
4884
4885         * lily/include/font-metric.hh:
4886         * lily/include/tfm-reader.hh: 
4887         * lily/include/spanner.hh: Use unsigned for indices and sizes.
4888         Update users.
4889
4890         * Documentation/user/changing-defaults.itely: Fix link v2.5, out-www.
4891
4892 2006-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4893
4894         * VERSION (PACKAGE_NAME): 2.7.31
4895
4896         * scm/framework-ps.scm (dump-stencil-as-EPS): don't hardcode left
4897         EPS edge at 0, but take minimum with left-overshoot. This fixes
4898         cut off system start delims. 
4899
4900         * lily/instrument-name-engraver.cc (stop_translation_timestep):
4901         hack: add to axis group if not added yet. This fixes hara kiri'd
4902         piano staves.
4903
4904         * lily/hara-kiri-group-spanner.cc
4905         (force_hara_kiri_in_y_parent_callback): fix signatures.
4906
4907         * lily/hairpin.cc (print): check next hairpin to see whether or
4908         not to be continuing.
4909
4910 2006-02-04  Jan Nieuwenhuizen  <janneke@gnu.org>
4911
4912         * Remove trailing whitespace from makefiles.
4913         
4914         * flower/include/std-vector.hh: Add binary_search_bounds workaround
4915         for earlier gcc.
4916
4917         * .cvsignore: Add out*, out-www, config-*.  Remove lots of cruft.
4918
4919         * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Workaround.
4920
4921         * config.hh.in (HAVE_STL_DATA_METHOD): Add.
4922
4923         * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): New function.
4924
4925         * configure.in: Use it.
4926
4927 2006-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4928
4929         * scm/music-functions.scm (pitch-of-note): new function.
4930
4931         * ly/music-functions-init.ly: add \octave and \addquote
4932
4933         * lily/parser.yy (music_function_chord_body): softcode \octave.
4934         (lilypond_header): softcode \addquote
4935
4936 2006-02-03  Jan Nieuwenhuizen  <janneke@gnu.org>
4937
4938         * flower/include/std-vector.hh[STD_VECTOR]: Do not include
4939         array.hh, parray.hh at all.  Getting ready to flip the
4940         configure default.
4941
4942         * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
4943
4944         * lily/source-file.cc (file::get_line): Help binary_search_bounds
4945         a bit.
4946
4947         * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
4948
4949 2006-02-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4950
4951         * flower/include/array.hh: typo. 
4952
4953 2006-02-02  Graham Percival  <gpermus@gmail.com>
4954
4955         * Documentation/user/advanced-notation.itely: doc "\#" in text.
4956
4957 2006-02-03  Jan Nieuwenhuizen  <janneke@gnu.org>
4958
4959         * flower/include/pqueue.hh: Derive from std::vector.
4960
4961         * flower/include/parray.hh: Conform to std::vector interface.
4962         Update users.
4963
4964 2006-02-02  Graham Percival  <gpermus@gmail.com>
4965
4966         * Documentation/topdocs/NEWS.itely: grammar fix from Laura.
4967
4968 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4969
4970         * flower/file-path.cc (is_file): remove if 0 section.
4971
4972         * buildscripts/pfx2ttf.fontforge (err): robustness fix for
4973         selecting afii61352.
4974
4975 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
4976
4977         * flower/include/std-vector.hh (boundary): Oops, reverse.
4978
4979         * flower/string-convert.cc (convert::unsigned_string): Bugfix:
4980         remove superfluous `d'.
4981
4982         * flower/include/std-vector.hh (boundary, top): Detach from class.
4983         Remove empty vector shell.
4984
4985         * flower/include/array.hh (reverse, swap): Detach from class.
4986         Update users.
4987         
4988         * flower/include/std-vector.hh
4989         * flower/include/array.hh (concat): Globally change to insert ().
4990
4991         
4992         * flower/include/std-vector.hh
4993         * flower/include/parray.hh
4994         * flower/include/array.hh (elem, elem_ref): Globally replace by
4995         at ().
4996
4997 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4998
4999         * Documentation/topdocs/NEWS.tely (Top): use ly: prefix for members.
5000
5001         * python/convertrules.py (FatalConversionError.sub_cxx_id):
5002         anticipate on identifier substitutions.
5003
5004 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
5005
5006         * flower/include/std-vector.hh (insert): Remove, replace by
5007         std::vector interface.  Update callers.
5008
5009         * flower/include/array.icc (insert): Change signature to
5010         match std::vector interface.
5011         
5012         * flower/include/array.icc (vector_sort): Bugfix.
5013
5014 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5015
5016         * lily/parser.yy (output_def_head_with_mode_switch): new
5017         production. Result: dashes and underscores may be used in the
5018         \paper block.
5019
5020         * lily/lexer.ll: add DASHED_WORD.  Accept in INITIAL mode.
5021
5022         * python/convertrules.py (conv): oops. One slash too much.
5023
5024 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
5025
5026         * flower/include/std-vector.hh (sort): Remove, replace by
5027         ::vector_sort.  Update callers.
5028
5029         * flower/include/std-vector.hh (slice): Remove.  Update callers.
5030         (sort): Bugfix.
5031
5032         * flower/test-std.cc (vector_sort): New test.
5033
5034 2006-02-01  Graham Percival  <gpermus@gmail.com>
5035
5036         * Documentation/user/putting.itely: fixes from Erik.
5037
5038 2006-02-01  Jan Nieuwenhuizen  <janneke@gnu.org>
5039
5040         * flower/test-std.cc: Add simple unit test for vector migration.
5041
5042         * stepmake/stepmake/test*: Unit test support.
5043
5044         * flower/include/std-vector.hh (del): Remove.  Use erase (),
5045         update callers.
5046
5047         * flower/include/array.hh (begin, end): Add.
5048         (del, get): Remove.
5049
5050 2006-02-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5051
5052         * lily/include/lily-guile-macros.hh (MAKE_SCHEME_CALLBACK): use
5053         std::string not String. 
5054
5055         * lily/context-def.cc (path_to_acceptable_context): use INT_MAX
5056         iso UINT_MAX.
5057
5058         * lily/prob.cc (Prob): copy type_ too.
5059
5060         * lily/lily-guile.cc (mangle_cxx_identifier): new
5061         function. Class_bla::foo_bar_[px] ->
5062         ly:class-bla::foo-bar[?!]. Changes throughout
5063
5064 2006-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5065
5066         * flower/include/guile-compatibility.hh (scm_from_unsigned): add scm_from_unsigned().
5067
5068         * lily/beam.cc (calc_direction): take dir from visible stem in
5069         degenerate case.
5070
5071 2006-01-31  Jan Nieuwenhuizen  <janneke@gnu.org>
5072
5073         * lily/melody-spanner.cc (spanner::calc_neutral_stem_direction):
5074         Fix -1, >=0 boundary checks for unsigned vsize.
5075
5076         * lily/separating-group-spanner.cc (spanner::find_rods): Fix >=0
5077         loop for unsigned vsize.
5078
5079         * configure.in (--enable-std-vector): New option.
5080         (--enable-std-string): On by default.
5081
5082         * flower/include/std-vector.hh: New file.  Enable switch to
5083         std::vector, update client code.
5084
5085 2006-01-30  Graham Percival  <gpermus@gmail.com>
5086
5087         * scm/document-translation.scm: clarify "this context is also
5088         known as".  Thanks, Werner!
5089
5090         * Documentation/user/putting.itely: small fixes from Don Blaheta.
5091
5092         * Documentation/user/invoking.itely: small fix from Don.
5093
5094 2006-01-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5095
5096         * scm/lily.scm (define-scheme-options): rename option
5097         preview-include-book-title to book-title-preview
5098         (define-scheme-options): move force-eps-font-include (from paper
5099         block) to eps-font-include -d option.
5100
5101         * VERSION (PATCH_LEVEL): release 2.7.30
5102
5103         * input/bach-schenker.ly (staffPiano): new file.
5104
5105         * buildscripts/pfx2ttf.fontforge: remove No. glyph from TTF file.
5106
5107         * Documentation/topdocs/NEWS.tely (Top): simplify NEWS entry, add
5108         credits to Nicolas.
5109
5110         * scm/define-markup-commands.scm (epsfile): add scaling to \epsfile.
5111
5112         * ps/lilyponddefs.ps: remove start-system, stop-system,
5113         start-page fluff. This saves putting { } code on the stack, fixing
5114         stack overflows when including EPS files.
5115
5116 2006-01-29  Graham Percival  <gpermus@gmail.com>
5117
5118         * Documentation/user/putting.itely: minor fixes (comments on -devel).
5119
5120 2006-01-29  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5121
5122         * Documentation/topdocs/NEWS.tely (Top): add \parallelMusic news.
5123
5124 2006-01-28  Graham Percival  <gpermus@gmail.com>
5125
5126         * Documentation/user/putting.itely: minor fixes (mostly tab->space).
5127
5128 2006-01-28  Jan Nieuwenhuizen  <janneke@gnu.org>
5129
5130         * input/mutopia/claop.py: Update.
5131
5132 2006-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5133
5134         * input/regression/completion-heads.ly (texidoc): fix.
5135
5136         * lily/staff-symbol-referencer.cc (on_staff_line): idem.
5137
5138         * lily/tie-formatting-problem.cc
5139         (set_ties_config_standard_directions): use abs iso fabs for ints.
5140
5141         * Documentation/topdocs/INSTALL.texi (Top): document ncsb requirement.
5142
5143         * mf/feta-bolletjes.mf (overdone_heads): solfa_noteheight, a
5144         little less than noteheight, to prevent overlaps in chords.
5145
5146         * lily/note-collision.cc (check_meshing_chords): wipe upper FA
5147         head, and fudge stem-attachment.
5148
5149         * scm/lily-library.scm (not): define hash-for-each for guile 1.6
5150
5151         * lily/slur-scoring.cc (get_best_curve): handle opt_idx < 0 case.
5152
5153 2006-01-27  Jan Nieuwenhuizen  <janneke@gnu.org>
5154
5155         * lily/main.cc (main): Debugging aid: catch exceptions.
5156
5157         * flower/std-string.cc (to_string): Robustification.  Fixes midi
5158         output with std::string.
5159
5160 2006-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5161
5162         * Documentation/topdocs/INSTALL.texi (Top): remove libkpathsea notes.
5163
5164 2006-01-26  Jan Nieuwenhuizen  <janneke@gnu.org>
5165
5166         * Fix -DSTRING_UTILS_INLINED.
5167
5168 2006-01-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5169
5170         * VERSION (PATCH_LEVEL): release 2.7.29
5171
5172         * lily/relocate.cc (setup_paths): mingw uses std string too.
5173
5174         * lily/*.cc: various fixes for substr(ARG).
5175
5176         * lily/sustain-pedal.cc (print): 
5177
5178         * flower/file-name.cc (slashify): use std strings.
5179
5180         * flower/string-convert.cc: remove publib.h
5181
5182         * scm/define-markup-commands.scm (verbatim-file): new markup
5183         command \verbatim-file
5184
5185         * Documentation/topdocs/NEWS.tely: fixup URLs
5186
5187         * input/regression/alignment-vertical-manual-setting.ly (Module):
5188         new file.
5189
5190         * lily/align-interface.cc (align_elements_to_extents): overwrite
5191         translations with numbers in alignment-offsets from left bound
5192
5193         * scm/page.scm (make-page-stencil): read X-offset from paper-system.
5194         (page-translate-systems): new function: take into account Y-offset.
5195
5196         * Documentation/topdocs/NEWS.tely (Top): document new features.
5197
5198         * input/regression/page-layout-manual-position.ly (Module): new
5199         file.
5200
5201 2006-01-26  Jan Nieuwenhuizen  <janneke@gnu.org>
5202
5203         * flower/file-path.cc (path::parse_path): Oops.
5204
5205         * Finish std::string interface.  For now, use std:: marker
5206         throughout for easy s/r.
5207
5208 2006-01-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5209
5210         * Documentation/user/putting.itely (Score is a single musical
5211         expression): typo.
5212         (Score is a single musical expression): more typos.
5213
5214         * scm/page.scm (annotate-space-left): thinko.
5215         (annotate-page): more thinkos.
5216
5217 2006-01-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5218
5219         * scm/layout-page-layout.scm (write-page-breaks): record tweaks
5220         for different \score blocks separately.
5221         (post-process-pages): put write-page-layout into paper block.
5222
5223         * lily/output-def.cc (get_parser): new file.
5224
5225         * lily/output-def-scheme.cc (LY_DEFINE): ly:output-def-parser, new
5226         file.
5227
5228         * lily/include/output-def.hh (class Output_def): add parser_ member.
5229
5230         * input/regression/page-layout-twopass.ly (Module): new file.
5231
5232         * scm/lily.scm: remove cpp hack.
5233
5234         * lily/lyric-engraver.cc (get_voice_to_lyrics): use NPOS everywhere.
5235
5236 2006-01-25  Jan Nieuwenhuizen  <janneke@gnu.org>
5237
5238         * GNUmakefile.in (c-clean): New target.
5239
5240         * flower/include/std-string.hh: String/std::string compatibility:
5241         Use NPOS for `not found' (iso -1), use ssize for length () and pos
5242         type.
5243
5244         * flower/rational.cc: 
5245         * flower/include/rational.hh: 
5246
5247         * flower/offset.cc: 
5248         * flower/include/offset.hh: 
5249
5250         * flower/interval.cc: 
5251         * flower/include/interval.hh: 
5252
5253         * flower/string-convert.cc: 
5254         * flower/include/string-convert.hh: Use std::string [interface].
5255         Update callers.
5256
5257 2006-01-25  Heikki Junes  <hjunes@cc.hut.fi>
5258
5259         * Documentation/index.html.in: clean up.
5260
5261 2006-01-25  Graham Percival  <gpermus@gmail.com>
5262
5263         * Documentation/user/putting.itely: another new untested doc section.
5264
5265 2006-01-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5266
5267         * scm/layout-page-layout.scm (write-page-breaks): write
5268         \spacingTweaks #ALIST. Handle grace timing.
5269
5270         * scm/: more imports.
5271
5272         * scm/page.scm (make-page): add footer/header.
5273         (annotate-space-left): revise: only take page argument.
5274         (layout->page-init): new function.
5275
5276         * scm/layout-page-layout.scm (write-page-breaks): preliminary
5277         version of the system/spacing/linebreak hack writing to the output
5278
5279         * lily/prob-scheme.cc (LY_DEFINE): take optional 'key val args in
5280         ly:make-prob.
5281
5282         * lily/grob-scheme.cc (LY_DEFINE): ly:spanner-get-bound ->
5283         ly:spanner-bound
5284
5285 2006-01-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5286
5287         * scm/stencil.scm (annotate-y-interval): move from layout-page-layout.scm
5288
5289         * scm/paper-system.scm (paper-system-annotate): new file. Handle paper-system.
5290
5291         * scm/layout-page-layout.scm (optimal-page-breaks): move all page
5292         handling to page.scm
5293
5294         * lily/prob-scheme.cc (LY_DEFINE): new file.
5295         (LY_DEFINE): functions ly:make-prob , ly:prob-type? , ly:prob-(set-)property(!)
5296
5297         * lily/music-scheme.cc (LY_DEFINE): rewrite get/set property using
5298         prob functions.
5299
5300         * lily/music.cc (derived_mark): derive Music from Prob.
5301
5302         * lily/paper-system.cc (LY_DEFINE): derive from Prob.
5303
5304         * lily/prob.cc (Module): Implement Prob (Property Object), object
5305         with shared and r/w property alists.  
5306
5307         * lily/include/prob.hh (Module): new file. Declare Prob.
5308
5309         * flower/string.cc: remove is_empty().
5310
5311         * flower/include/string.hh (class String): remove String:: qualifier.
5312
5313         * buildscripts/analyse-cxx-log.py: new file. Read compile log to
5314         substitute appropriate functions.
5315
5316         * flower/include/string.hh (class String): remove to_str0 and
5317         is_empty(). S&R everywhere.
5318
5319 2006-01-23  Graham Percival  <gpermus@gmail.com>
5320
5321         * Documentation/user/basic-notation.itely: add hairpin
5322         after-linebreak tweak to commonprop.
5323
5324         * Documentation/user/putting.itely: added two new sections.
5325
5326 2006-01-23  Jan Nieuwenhuizen  <janneke@gnu.org>
5327
5328         * flower/international.cc: 
5329         * flower/include/international.hh: 
5330
5331         * flower/getopt-long.cc: 
5332         * flower/include/getopt-long.hh: Use std::string [interface].
5333         Update callers.
5334
5335         * flower/include/std-string.hh: Oops, bugfix for --disable-std-string.
5336
5337         * stepmake/stepmake/executable-rules.make: Add dependency on
5338         module libraries.
5339
5340 2006-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
5341
5342         * flower/file-path.cc: 
5343         * flower/include/file-path.hh: Use std::string [interface].
5344         Update callers.
5345
5346         * flower/direction.cc: 
5347         * flower/axis.cc: Unused.  Remove.
5348
5349         * configure.in (--enable-std-string): New option.
5350
5351         * flower/std-string.cc: 
5352         * flower/include/std-string.hh: New file.
5353
5354         * flower/file-name.cc[STD_STRING]:
5355         * flower/include/file-name.hh[STD_STRING]: Use it.  Update callers.
5356
5357 2006-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5358
5359         * scm/output-svg.scm (placebox): no GNU coding standards in SVG output. 
5360
5361         * scm/define-markup-commands.scm (with-dimensions):
5362         with-dimensions markup command.
5363
5364         * input/test/font-table.ly: use it.
5365
5366         * lily/open-type-font.cc (glyph_list): new function.
5367
5368         * lily/open-type-font-scheme.cc (LY_DEFINE): ly:otf-glyph-list function.
5369
5370         * lily/ttf.cc: remove ly:font-glyph-list scheme function
5371
5372 2006-01-22  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5373
5374         * ly/music-functions-init.ly (parallelMusic): new music function
5375         for parallel music entry.
5376
5377         * scm/define-music-properties.scm (all-music-properties): new
5378         'void music property
5379
5380         * scm/music-functions.scm (ly:music-message): make public, to be
5381         used in music function definitions
5382
5383         * scm/lily-library.scm (collect-music-for-book): discard music
5384         when the 'void property is set.
5385
5386 2006-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5387
5388         * lily/ttf.cc (LY_DEFINE): store name before destroying face.
5389
5390         * mf/GNUmakefile: idem.
5391
5392         * buildscripts/mf-to-table.py (help): excise fetaXXlist.ly support.
5393
5394         * stepmake/bin/install.py (dest): Only chmod/chown just created directories
5395
5396         * Documentation/user/notation-appendices.itely (The Feta font):
5397         use it.
5398
5399         * input/test/font-table.ly: new file. Generate font table within lily.
5400
5401         * Documentation/user/notation-appendices.itely (The Feta font):
5402         use new font-table.ly file. 
5403
5404         * stepmake/stepmake/install-out-targets.make
5405         (local-install-outfiles): only create directory if
5406         $(INSTALLATION_OUT_DIR) is defined. This fixes install on Gentoo.
5407
5408 2006-01-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5409
5410         * lily/ttf.cc (LY_DEFINE): new function ly:font-glyph-list.
5411
5412         * VERSION (PACKAGE_NAME): release 2.7.28
5413
5414         * scm/framework-ps.scm (write-preamble): use it to pick exactly
5415         the right font from a Mac dfont.
5416         (write-preamble): don't forget directory, only look at files.
5417
5418         This fixes problems with TTF files in dfonts that don't match
5419         their PostScript names.
5420          
5421         * lily/ttf.cc (LY_DEFINE): ly:ttf-ps-name: new routine to extract
5422         PS name from TTF font.
5423
5424         * input/regression/tie-manual.ly: document new feature.
5425
5426         * Documentation/topdocs/NEWS.tely (Top): add tie NEWS.
5427
5428         * VERSION (MY_PATCH_LEVEL): bump to .28
5429
5430         * Documentation/user/basic-notation.itely (Ties): add tie examples
5431         refs.
5432
5433         * lily/tie-formatting-problem.cc (score_ties_configuration):
5434         symmetry penalties for outer ties.
5435
5436 2006-01-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5437
5438         * lily/tie-formatting-problem.cc (generate_configuration) 
5439         (set_manual_tie_configuration): skip non-pair manual
5440         tie-configuration, so you can set individual ties as
5441
5442           #'tie-configuration = #'((7 . 1) #t (-3 . 1))
5443
5444         * input/regression/tie-chord.ly: use generateTiePattern to
5445         simplify file.
5446
5447         * lily/tie-formatting-problem.cc (peak_around): new function.
5448         (score_configuration): use sliding criterion for staff line collisions. 
5449         (score_configuration): idem for dot collisions.
5450         (generate_configuration): use separate stem_gap for gap to stem.
5451
5452         * lily/include/tie-formatting-problem.hh (struct Tie_details):
5453         separate penalty factors for x and y distance.
5454         (struct Tie_details): separate penalties for tip and center line collisions.
5455
5456 2006-01-19 Han-Wen Nienhuys  <hanwen@xs4all.nl>
5457
5458         * lily/tie-formatting-problem.cc (generate_configuration): make
5459         large ties avoid stafflines in the horizontal section.
5460         (score_configuration): use softcoded penalties
5461         (score_aptitude): idem.
5462
5463         * lily/tie-helper.cc (from_grob): softcode tie details
5464
5465         * lily/staff-symbol-referencer.cc (on_staff_line): new function
5466
5467         * lily/staff-symbol-referencer.cc (on_line): rename from
5468         on_staffline 
5469
5470 2006-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5471
5472         * ly/music-functions-init.ly: remove duplicate tag.
5473
5474         * lily/include/*.hh: GCC 4.1 fixes.
5475
5476 006-01-16  Erlend Aasland  <erlenda@gmail.com>
5477
5478         * Documentation/user/global.itely: fix typos; @bugs -> @refbugs
5479
5480         * scm/define-music-types.scm: fix bug in desc. string
5481         for OverrideProperty
5482
5483 2006-01-15 Erik Sandberg  <mandolaerik@gmail.com>
5484
5485         * scripts/lilypond-book.py: bugfix
5486
5487         * scm/define-music-types.scm: fix typos.
5488
5489 2006-01-14  Graham Percival  <gpermus@gmail.com>
5490
5491         * Documentation/user/ basic-notation.itely, global.itely,
5492         advanced-notation.itely, instrument-notation.itely: small
5493         additions (bugs and commonly tweaked properties).
5494
5495 2006-01-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5496
5497         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): generic
5498         detection of mingw build.
5499         (MINGW_BUILD): opps.
5500
5501 2006-01-12  Jan Nieuwenhuizen  <janneke@gnu.org>
5502
5503         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Add
5504         i686-mingw32.
5505
5506 2006-01-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5507
5508         * scm/music-functions.scm (skip->rest): add skip->rest
5509
5510 2006-01-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5511
5512         * lily/font-config.cc (init_fontconfig): call FcConfigBuildFonts()
5513         explicitly.
5514
5515         * lily/font-config-scheme.cc (LY_DEFINE): also display font and
5516         config dirs. Aids debugging. 
5517         (display_config): also display config files.
5518
5519 2006-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5520
5521         * VERSION: release 2.7.27
5522
5523         * lily/bar-line.cc (calc_bar_size): inspect staff->extent (Y_AXIS)
5524         for determining bar size.
5525
5526         * lily/staff-symbol.cc (print): place lines at distance line-positions
5527
5528         * scm/define-grob-properties.scm (all-user-grob-properties): add
5529         line-positions.
5530
5531         * lily/staff-symbol.cc (height): new function.
5532
5533         * input/regression/staff-line-positions.ly:  new file.
5534
5535 2006-01-06  Graham Percival  <gpermus@gmail.com>
5536
5537         * input/test/add-staccato.ly: remove reference to old file.
5538
5539 2006-01-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5540
5541         * scripts/lilypond-book.py (invokes_lilypond): allow . in path to
5542         lilypond binary too.
5543
5544 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5545
5546         * make/mutopia-rules.make (Module): use LILYPOND_BINARY
5547
5548 2006-01-06  Jan Nieuwenhuizen  <janneke@gnu.org>
5549
5550         * scripts/midi2ly.py: Bugfix: Declare datadir.
5551
5552         * make/ly-rules.make:
5553         * make/mutopia-rules.make: Use LILYPOND_BINARY (WAS: LILYPOND, but
5554         that seems to be gone). Fixes make web.
5555
5556         * The grand 2005-2006 replace.
5557
5558         * VERSION (MY_PATCH_LEVEL): Stay on .26 for now.
5559
5560 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5561
5562         * make/lilypond-vars.make: set LILYPOND_BINARY variable
5563         (LILYPOND_BOOK_LILYPOND_FLAGS): new variable
5564         LILYPOND_BOOK_LILYPOND_FLAGS to hold system dependent settings,
5565         like -dgs-font-load.
5566
5567         * Documentation/user/GNUmakefile ($(outdir)/interfaces.itexi):
5568         remove absolute path to lilypond binary.
5569         
5570 2006-01-05 Pedro Kroeger    <kroeger@pedrokroeger.net>
5571
5572         * configure.in (NCSB_DIR): fix --with-ncsb-dir option.
5573
5574 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5575
5576         * make/lilypond-vars.make: support LILYPOND_EXTERNAL_BINARY variable.
5577
5578         * mf/GNUmakefile: remove broken dvips map symlink.
5579
5580 2006-01-04  Jan Nieuwenhuizen  <janneke@gnu.org>
5581
5582         * lily/main.cc: 
5583         * configure.in: Cosmetic fixes.
5584
5585 2006-01-04  Mats Bengtsson  <mabe@s3.kth.se>
5586
5587         * Documentation/user/music-glossary.tely (Pitch names): Added
5588         Spanish pitch names and durations, thanks to Ernesto Gancedo
5589
5590 2006-01-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5591
5592         * scm/lily.scm (define-scheme-options): use quasi-quote for option
5593         init. Fixes verbose printing of .scm files.
5594
5595         * stepmake/aclocal.m4: add spaces before - options.
5596         
5597 2006-01-03  Jan Nieuwenhuizen  <janneke@gnu.org>
5598
5599         * lily/relocate.cc (setup_paths): Bugfix: do not store result
5600         of path search in local block variable.
5601
5602 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5603
5604         * configure.in (NCSB_DIR): --enable-ncsb-dir
5605         (LINK_GXX_STATICALLY): denko.
5606
5607         * mf/GNUmakefile ($(NCSB_TTFS)): NCSB_DIR iso. NCSB_PATH. 
5608
5609         * configure.in (LINK_GXX_STATICALLY): --enable-ncsb-path option. 
5610         use locate to find c059033l.pfb. 
5611         
5612 2006-01-02  Jan Nieuwenhuizen  <janneke@gnu.org>
5613
5614         * lily/tie-formatting-problem.cc
5615         (problem::generate_base_chord_configuration): Use my_round (was
5616         round).
5617
5618         * lily/source-file.cc (file::get_counts)[!HAVE_MBRTOWC]: Bugfix,
5619         do not invoke mbrtowc.
5620
5621         * lily/relocate.cc (setup_paths): Add more debugging verbosity.
5622
5623 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5624
5625         * scm/lily.scm (lilypond-all): oops. remove debugging hack.
5626
5627 2005-01-02  Heikki Junes  <hjunes@cc.hut.fi>
5628
5629         * Documentation/user/invoking.itely (svg): revise.
5630
5631 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5632
5633         * lily/lexer.ll: use sourcefilename iso. renameinput.
5634
5635 2006-01-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5636
5637         * mf/GNUmakefile ($(NCSB_TTFS)): revise rule. Create
5638         <PostScriptName>.ttf instead of c059XXXttf.
5639
5640         * lily/program-option.cc (LY_DEFINE): special support for
5641         --verbose, so it works before option init too.
5642  
5643         * mf/GNUmakefile (local-install): oops.
5644
5645         * lily/lyric-hyphen.cc (print): oops.
5646
5647         * buildscripts/pfx2ttf.fontforge: new file.
5648         
5649         * mf/GNUmakefile (NCSB_PATH): add vars for NCSB.
5650         ($(outdir)/%.ttf): new rule. 
5651
5652         * scm/define-grobs.scm (all-grob-descriptions): add font-interface
5653         to LyricHyphen.
5654
5655         * lily/lyric-hyphen.cc (print): multiply hyphen height by
5656         font-size
5657
5658 2005-12-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5659
5660         * VERSION: release 2.7.26
5661         
5662         * mf/GNUmakefile (install-fc-cache): remove old font.cache-1 files.
5663
5664 2005-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5665
5666         * lily/font-config.cc (init_fontconfig): verbosity.
5667
5668         * THANKS: add Muziekacademie Lede. 
5669
5670         * scripts/musicxml2ly.py (print_voice_definitions): new function 
5671         (print_score_setup): new function
5672         (convert): read part definition to output staves properly.
5673
5674         * python/musicxml.py (Measure.get_notes): new class. Wrap lists of
5675         Music_xml notes.
5676
5677         * python/musicexp.py (Output_printer.__init__): use _ in data
5678         members.
5679         (Output_printer.unformatted_output): new function: no formatting,
5680         but count braces.
5681         (Duration.get_length): remove isinstance() checks for
5682         Output_printer everywhere.
5683
5684         * input/regression/lyrics-bar.ly (texidoc): add
5685         Separating_line_group_engraver.
5686
5687 2005-12-29  Jan Nieuwenhuizen  <janneke@gnu.org>
5688
5689         * lily/relocate.cc (framework_relocation): New function,
5690         factored from set_relocation ().
5691         (prefix_relocation): Rename from set_relocation ().
5692         (setup_paths): Use it.
5693
5694 2005-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5695
5696         * scm/*.scm: use LEFT/RIGHT/UP/DOWN etc. iso. magical
5697         numbers. Patch by Erlend Aasland.
5698
5699 2005-12-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5700
5701         * lily/font-config.cc (init_fontconfig): print warning if cache
5702         file is not existant.
5703
5704         * lily/main.cc: don't use #ifdef but #if
5705
5706 2005-12-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5707
5708         * lily/grob-property.cc (internal_set_property): don't abort on
5709         calculation-in-progress.
5710
5711         * lily/beam.cc (get_default_dir): robustness: don't divide by zero.
5712
5713         * lily/tuplet-bracket.cc (calc_control_points): oops: typo. Read
5714         connect-to-neighbor property not connect-to-other
5715
5716         * lily/program-option.cc (LY_DEFINE): remove Protected_scm global variable.
5717         (LY_DEFINE): oops. don't forget protection.
5718
5719         * flower/parse-afm.cc (Module): strip AFM handling completely.
5720
5721         * lily/stencil-expression.cc: idem.
5722
5723         * lily/grob-interface-scheme.cc (LY_DEFINE): idem.
5724
5725         * lily/function-documentation.cc (ly_add_function_documentation):
5726         use static member iso. Protected_scm
5727
5728         * lily/main.cc: use ifdef ARGV0_RELOCATION iso. MINGW
5729
5730         * config.make.in (prefix): remove HAVE_KPATHSEA_SO
5731
5732 2005-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
5733
5734         * lily/relocate.cc (set_env_dir): New function.
5735         (set_relocation): Use it to fix setting PANGO_PREFIX.
5736
5737 2005-12-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5738
5739         * input/regression/stem-direction-context.ly: remove rest.
5740
5741         * lily/melody-engraver.cc (process_music): restart for bar lines.
5742         (acknowledge_slur): restart for slurs.
5743
5744 2005-12-27  Heikki Junes  <hjunes@cc.hut.fi>
5745
5746         * Documentation/user/invoking.itely: describe how to view SVG 
5747         output using Inkscape which replace embedded fonts with OTF fonts.
5748
5749 2005-12-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5750
5751         * lily/relocate.cc (set_relocation): set PANGO_PREFIX
5752
5753 2005-12-23  Jan Nieuwenhuizen  <janneke@gnu.org>
5754
5755         * lily/melody-engraver.cc (class Melody_engraver): Remove lying
5756         comment.
5757
5758 2005-12-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5759
5760         * VERSION (PACKAGE_NAME): release 2.7.25
5761
5762         * Documentation/topdocs/NEWS.tely (Top): document new feature.
5763
5764         * input/regression/stem-direction-context.ly: new file.
5765
5766         * lily/relocate.cc (set_relocation): add PANGO_PREFIX
5767
5768         * lily/melody-engraver.cc (acknowledge_stem): restart MelodyItem
5769         on rest.
5770
5771         * ly/engraver-init.ly: add Melody_engraver
5772
5773         * lily/beam.cc (calc_direction): use default-direction
5774         iso. get_default_direction()
5775
5776         * scm/define-grob-properties.scm (all-user-grob-properties): add
5777         default-direction property.
5778
5779         * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem.
5780
5781         * lily/stem.cc (calc_default_direction): remove
5782         Stem::get_default_direction, use default-direction with callback
5783         instead.
5784
5785         * lily/melody-spanner.cc (calc_neutral_stem_direction): 
5786
5787         * lily/melody-engraver.cc: new file. Acknowledge stems for
5788         interpolated stem directions. 
5789
5790         * lily/melody-spanner.cc: new file. Interpolate stem directions.
5791
5792         * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem
5793
5794         * lily/slur-configuration.cc (fit_factor): more robust check for
5795         point in curve X-extent.
5796
5797         * lily/slur.cc (outside_slur_callback): return offset_scm, not 0.
5798         (outside_slur_callback): check for 'outside avoidance.
5799
5800         * lily/slur-configuration.cc (score_extra_encompass): don't use
5801         bound->column() == avoid->column() for checking extents, as this
5802         doesn't work for accidentals. 
5803
5804         * lily/slur-engraver.cc (acknowledge_extra_object): remove
5805         DynamicText hardcoding.
5806
5807         * lily/slur-scoring.cc (enumerate_attachments): robustness: don't
5808         crash if bound stem is NULL
5809
5810         * lily/piano-pedal-performer.cc: patch by MWD for enabling piano
5811         pedals.
5812
5813 2005-12-22  Graham Percival  <gpermus@gmail.com>
5814
5815         * scm/define-markup-commands.scm: typo.  @code{\raise}
5816         => @code{\\raise}.
5817
5818         * darwin.patch: now used again, includes a
5819         required patch from fink.
5820
5821 2005-12-21  Heikki Junes  <hjunes@cc.hut.fi>
5822
5823         * po/TODO: mention gtranslator along with kbabel.
5824         * po/fi.po: update translations.
5825
5826 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
5827
5828         * lily/relocate.cc (setup_paths): Bugfix.
5829
5830 2005-12-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5831
5832         * lily/slur-configuration.cc (score_extra_encompass): don't use
5833         "avoid" choice for avoid-slur.
5834
5835         * stepmake/bin/install.py (dest): don't create existing dir.
5836
5837 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
5838
5839         * stepmake/bin/install.py: Remove file before copying.
5840
5841         * config.make.in: 
5842         * stepmake/aclocal.m4: Do not substitute INSTALL.
5843
5844 2005-12-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5845
5846         * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
5847         depend on link-tree.
5848
5849         * lily/relocate.cc (setup_paths): only check path for non-absolute
5850         dir without directory part.
5851
5852         * flower/file-name.cc (is_absolute):  new method.
5853         (is_absolute): check root_ too.
5854
5855 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
5856
5857         * lily/relocate.cc (setup_paths) [__MINGW32__]: Comment-out broken
5858         relocation code.  Oops, don't comment out too much.
5859
5860         * stepmake/stepmake/generic-vars.make (INSTALL): Assign INSTALL_PY
5861         iso itself.
5862
5863         * lily/relocate.cc [HAVE_GETTEXT]: Include libintl.h.  Fixes mingw
5864         compile.
5865
5866 2005-12-20  Jan Nieuwenhuizen  <janneke@gnu.org>
5867
5868         * .cvsignore: Add install-sh.
5869
5870         * autogen.sh (srcdir): Typo.
5871
5872 2005-12-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5873
5874         * autogen.sh (srcdir): urg. Touch install-sh.
5875
5876         * stepmake/bin/install-sh (Module): remove.
5877
5878         * stepmake/stepmake/generic-vars.make (INSTALL): add $(INSTALL).
5879
5880         * lily/include/relocate.hh: new file.
5881
5882         * lily/relocate.cc: new file. Contain relocation logic.
5883
5884         * lily/main.cc (setup_paths): fix: LILYPOND_RELOCATE_PREFIX.
5885         (main): read LILYPOND_VERBOSE as the first thing.
5886
5887         * stepmake/aclocal.m4: remove INSTALL variable.
5888
5889         * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
5890         separate target for making font symlinks.
5891         (documentation-dir): use $(if $(findstring )) for switching off
5892         Documentation.
5893
5894         * stepmake/stepmake/help2man-vars.make (OUT_DIST_FILES): only do
5895         something if DOCUMENTATION is no.
5896
5897 2005-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5898
5899         * VERSION: release 2.7.24
5900
5901         * lily/script-column-engraver.cc (stop_translation_timestep):
5902         delay adding to script-column.
5903
5904         * lily/tuplet-bracket.cc (print): suicide if no control-points. 
5905
5906         * python/convertrules.py (conv): rule for number-visibility
5907
5908         * lily/slur-configuration.cc (score_extra_encompass): different
5909         distance measure for avoid and inside avoidance.
5910         (score_extra_encompass): use 1/(distance+eps) as penalty.
5911
5912         * lily/slur-scoring.cc (generate_avoid_offsets): use 'inside
5913         encompass objects for generating slur curves.
5914
5915         * lily/slur.cc: use details iso. slur-details property.
5916
5917         * input/regression/slur-tuplet.ly: new file.
5918
5919         * lily/slur-engraver.cc (acknowledge_tuplet_number): new function.  
5920
5921         * flower/include/offset.hh (class Offset): new operator /=
5922
5923         * lily/tuplet-number.cc (print): new file, new interface.
5924
5925         * scm/define-grob-properties.scm (all-user-grob-properties):
5926         remove number-visibility property.
5927
5928         * lily/tuplet-bracket.cc (calc_control_points): new function
5929         (calc_connect_to_neighbors): new function.
5930         (print): remove text handling for tuplet numberdef.
5931
5932         * lily/tuplet-engraver.cc (struct Tuplet_description): create
5933         TupletNumbers too. 
5934
5935         * lily/lily-guile.cc (robust_scm2booldrul): new function
5936
5937         * scm/define-grobs.scm (all-grob-descriptions): new grob TupletNumber
5938
5939         * lily/tuplet-bracket.cc (calc_position_and_height): use
5940         staff-padding to control whether tuplet brackets are over staves.
5941
5942         * lily/grob.cc (suicide): clear dim_caches_.
5943
5944         * lily/dimension-cache.cc (clear): new function.
5945
5946         * lily/grob.cc (extent): swap order of min-extent and extent
5947         calculations. This fixes hara kiri staves. 
5948
5949 2005-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
5950
5951         * lily/main.cc: Nitpick: relocation is not based on path, but on
5952         directory (location).
5953
5954 2005-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5955
5956         * lily/main.cc (setup_paths): read LILYPOND_RELOCATE_PREFIX
5957
5958         * stepmake/stepmake/install-targets.make (local-uninstall): idem.
5959
5960         * stepmake/stepmake/install-out-targets.make (local-install-outfiles): idem.
5961
5962         * stepmake/stepmake/help2man-targets.make (install-help2man): idem.
5963
5964         * stepmake/stepmake/generic-vars.make (Module): idem.
5965
5966         * stepmake/stepmake/executable-targets.make (default): use it.
5967
5968         * stepmake/bin/install.py (create_dir): new file. Replace install-sh.
5969
5970         * make/GNUmakefile: don't install make rules.
5971
5972         * lily/main.cc (setup_paths): don't inspect $PATH for argv0 with
5973         slashes.
5974         (prepend_env_path): more verbosity.
5975
5976 2005-12-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5977
5978         * GNUmakefile.in: add dir argument for find command.
5979
5980         * lily/parser.yy (bass_figure): set_spot() for bass figures. This
5981         fixes weird line numbers for point & click.
5982
5983         * lily/source-file.cc (get_counts): init line/column/char counts.
5984
5985 2005-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5986
5987         * lily/main.cc: remove ARGV0_RELOCATION, instead use --relocate.
5988
5989 2005-12-16  Graham Percival  <gpermus@gmail.com>
5990
5991         * Documentation/user/basic-notation.itely, advanced-notation.itely:
5992         minor fixes from Fredric.  Thanks!
5993
5994 2005-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5995
5996         * ly/music-functions-init.ly: add \bar and \clef music function 
5997
5998         * lily/lily-lexer.cc: idem.
5999
6000         * lily/parser.yy (FIXME): remove BAR and CLEF.
6001
6002 2005-12-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6003
6004         * Documentation/topdocs/NEWS.tely (Top): doc string argument change.
6005
6006         * lily/parser.yy (Generic_prefix_music_scm): allow strings as
6007         function arguments too
6008
6009         * lily/main.cc (set_relocation): new function.
6010
6011         * scripts/musicxml2ly.py (convert): add \version
6012
6013         * lily/tie.cc: remove get_default_attachments()
6014
6015         * VERSION (PACKAGE_NAME): release 2.7.23
6016         
6017         * lily/chord-tremolo-engraver.cc (acknowledge_stem): use
6018         ultimate_music_cause(). This fixes core dumps in unfold-all-repeats.ly
6019
6020         * Documentation/topdocs/NEWS.tely (Top): document new feature.
6021
6022         * lily/tie-formatting-problem.cc (score_ties): new function
6023         (get_variations): new function. Try flipping dirs for collisions.
6024         (generate_optimal_chord_configuration): new function. 1-opt search
6025         for better configuration.
6026
6027         * lily/tie-configuration.cc: new file.
6028
6029         * lily/tie.cc: junk Tie::get_configuration()
6030
6031         * lily/tie-formatting-problem.cc (score_ties_aptitude): new function.
6032         (score_ties_configuration): new function.
6033         (generate_ties_configuration): new function.
6034         (generate_base_chord_configuration): new function.
6035         (set_ties_config_standard_directions): Move body from tie-column-format.cc 
6036         (set_manual_tie_configuration): Move body from tie-column-format.cc 
6037
6038         * input/regression/tie-dot.ly: new file.
6039
6040         * lily/tie-formatting-problem.cc (score_configuration): score
6041         tie/dot collisions.
6042
6043         * lily/tie-helper.cc (get_transformed_bezier): new function
6044
6045         * Documentation/topdocs/NEWS.tely (Top): strip out-www.
6046
6047         * stepmake/stepmake/python-module-vars.make (SHARED_FLAGS): use
6048         -undefined suppress iso. -framework Python 
6049
6050         * scm/define-grobs.scm (all-grob-descriptions): set
6051         springs-and-rods (thanks Joe Neeman!)
6052
6053 2005-12-12  Nicolas Sceaux  <nicolas.sceaux@free.fr>
6054
6055         * input/no-notation/display-lily-tests.ly (test): 
6056         * scm/display-lily.scm (tag->lily-string): the syntax for tags has
6057         changed from \tag #'(a b) to \tag #'a \tag #'b
6058
6059 2005-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6060
6061         * Documentation/topdocs/NEWS.tely: strip out-www.
6062
6063         * lily/include/grob-interface.hh: include lily-guile.hh not libguile.h
6064
6065         * config.make.in (AR): add AR and RANLIB
6066
6067         * flower/libc-extension.cc: include cassert
6068
6069         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): more robust
6070         darwin check.
6071
6072 2005-12-11  Graham Percival  <gpermus@gmail.com>
6073
6074         * stepmake/stepmake/generic-vars.make: define DARWIN_BUILD.
6075
6076         * stepmake/stepmake/python-modules-vars.make: define
6077         SHARED_FLAGS for OSX.  Thanks Johannes Schindelin!
6078
6079         * THANKS: added Johannes Schindelin.
6080
6081 2005-12-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6082
6083         * python/midi.c (pymidi_parse): use memcmp() iso. strcmp().
6084
6085         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
6086         Span_arpeggio_engraver, add Tweak_engraver to Score context. 
6087
6088         * lily/parser.yy: reorganize file layout.
6089
6090         * ly/music-functions-init.ly: add tweak music function.
6091
6092         * lily/grob-info.cc (ultimate_music_cause): new function:
6093         recursively lookup causes. 
6094
6095         * lily/parser.yy (chord_body_element): allow music functions for
6096         post-events, allow music functions for chord elements. 
6097  
6098         * lily/font-config-scheme.cc (display_fontset): add cast.
6099
6100         * python/convertrules.py (FatalConversionError.sub_syms): \tag
6101         #'(a b) -> \tag #'a \tag #'b rule.
6102
6103         * python/musicexp.py (Output_printer.dump_version): new function
6104
6105 2005-12-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6106
6107         * lily/parser.yy (FIXME): remove \tag
6108         (FIXME): remove tag_music() function.
6109
6110         * lily/lily-lexer.cc: remove \tag
6111
6112         * ly/music-functions-init.ly: define music-function "tag"
6113
6114         * lily/parser.yy (chord_body_element): allow tags in chord bodies.
6115
6116 2005-12-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6117
6118         * VERSION (PATCH_LEVEL): release 2.7.22
6119
6120         * input/regression/lyric-hyphen-retain.ly: renew.
6121
6122         * scm/define-grobs.scm (all-grob-descriptions): add LyricSpace
6123         grob
6124
6125         * lily/lyric-hyphen.cc (set_spacing_rods): use minimum-distance
6126         iso. minimum-length property for rods.
6127
6128         * lily/hyphen-engraver.cc (acknowledge_lyric_syllable): create
6129         LyricSpace item to keep lyrics spaced apart.
6130
6131         * ly/engraver-init.ly: remove Separating_line_group_engraver
6132
6133         * Documentation/user/music-glossary.tely: do setfilename before
6134         music-glossary.
6135
6136 2005-12-07  Heikki Junes  <hjunes@cc.hut.fi>
6137
6138         * Documentation/user/lilypond-book.itely: use `,´ after xref:
6139         See xref documentation, for example.
6140
6141 2005-12-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6142
6143         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): use
6144         pending_skip iso. ly_voice[-1]
6145         (main): add if __main__ for debugging.
6146
6147         * python/musicxml.py (Accidental.__init__): new class.
6148
6149         * scripts/musicxml2ly.py (progress): new function
6150         (musicxml_key_to_lily): don't barf on modeless keys.
6151         (create_skip_music): new function.
6152         (musicxml_spanner_to_lily_event): new function. Handle beams too.
6153         (musicxml_note_to_lily_main_event): new function.
6154
6155         * python/musicexp.py (Music.__init__): add comment field.
6156         (NestedMusic.append): new routine.
6157         (SequentialMusic.print_ly): print comment.
6158         (ArpeggioEvent.ly_expression): new class
6159         (BeamEvent.ly_expression): new class
6160         (NoteEvent.__init__): support for cautionary/forced accs.
6161
6162         * lily/lookup.cc (slur): normal order for array loop.
6163
6164         * scm/framework-ps.scm (dump-stencil-as-EPS): set left X of bbox
6165         to 0.0.
6166
6167         * ly/engraver-init.ly: set bar-size, so bar-lines aren't
6168         collapsed.
6169
6170 2005-12-06 Erik Sandberg  <mandolaerik@gmail.com>
6171
6172         * scm/music-functions.scm: Make phrasing slurs follow voice direction
6173
6174         * scripts/lilypond-book.py: Introduce option
6175             --preserve-line-breaks, for usage with srcltx
6176
6177 2005-12-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6178
6179         * scm/output-lib.scm (print-circled-text-callback): draw circle
6180         around text using make-circle-markup.
6181
6182         * Documentation/user/*: strip out-www from file names.
6183
6184 2005-12-05  Heikki Junes  <hjunes@cc.hut.fi>
6185
6186         * Documentation/user/lilypond.tely (direntry): remove empty lines;
6187         fixes invalid info entry issue with makeinfo 4.8 in debian sid.
6188
6189 2005-12-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6190
6191         * Documentation/user/GNUmakefile: idem.
6192
6193         * Documentation/user/macros.itexi: strip out-www
6194
6195         * python/rational.py: python 2.3 compat.
6196
6197         * VERSION (PATCH_LEVEL): release 2.7.21
6198
6199         * scripts/musicxml2ly.py (NonDentedHeadingFormatter.format_headi):
6200         option formatting, lilypond style.
6201
6202         * python/musicexp.py: grab from Ikebana: a library for composing
6203         ly music expressions. 
6204         (Output_printer): class for advanced .ly printing.
6205         (eg. tupletting) 
6206
6207         * python/musicxml.py: new file. Read MusicXML MiniDOM tree, and
6208         convert to pythonesque structure.
6209
6210         * python/rational.py: PD rational number class.
6211
6212         * Documentation/user/converters.itely (Invoking musicxml2ly):  new node.
6213
6214 2005-12-04  Erik Sandberg  <mandolaerik@gmail.com>
6215
6216         * lily/part-combine-iterator.cc: Minor bugfix
6217         
6218         * THANKS: Update bughunters
6219
6220 2005-12-02  Werner Lemberg  <wl@gnu.org>
6221
6222         * mf/README: Document process for proper mf2pt1 conversion.
6223
6224         * mf/feta-beugel.mf (draw_brace): Fix path to assure clean
6225         overlapping.
6226
6227         * mf/feta-harmonica.mf: Removed.  Unused.
6228
6229 2005-12-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6230
6231         * scripts/lilypond-book.py (do_file): fix thinkos.
6232
6233 2005-12-01  Jan Nieuwenhuizen  <janneke@gnu.org>
6234
6235         * lily/GNUmakefile ($(outdir)/FlexLexer.h):
6236         ($(outdir)/parser.cc): 
6237         ($(outdir)/lexer.cc): Bugfix: depend on config.h.
6238
6239 2005-11-30  Pedro Kröger  <kroeger@pedrokroeger.net>
6240
6241         * ly/titling-init.ly (tagline): it should be a space between
6242         "Music engraving by LilyPond" and the version number.
6243
6244 2005-12-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6245
6246         * VERSION (PACKAGE_NAME): release 2.7.20
6247
6248 2005-11-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6249
6250         * scm/define-markup-commands.scm (pad-to-box): new markup command.
6251
6252         * scm/define-grobs.scm (all-grob-descriptions): set thickness to
6253         1.0.
6254         (all-grob-descriptions): don't shift RehearsalMark arbitrarily.
6255
6256 2005-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6257
6258         * configure.in (LINK_GXX_STATICALLY): remove kpathsea checks.
6259
6260         * kpath-guile/: remove directory
6261
6262         * scm/kpathsea.scm (ly:kpathsea-expand-variable): new
6263         file. Encapsulate kpathsea using commandline tools.
6264
6265         * lily/all-font-metrics.cc (kpathsea_find_file): use (scm
6266         kpathsea) module.
6267
6268 2005-11-29  Mats Bengtsson  <mabe@s3.kth.se>
6269
6270         * Documentation/user/advanced-notation.itely (Setting automatic
6271         beam behavior): Correct a few typos. Thanks to David Bobroff.
6272
6273         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use
6274         \usepackage instead of \RequirePackage. Thanks to Bernard Hurley.
6275
6276 2005-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6277
6278         * scripts/*.py: gmane address for bugs.
6279
6280 2005-11-28 Pal Benko <benkop@freestart.hu>
6281         
6282         * make/ly-rules.make: add -f switch to mv
6283
6284         * scm/output-libs.scm: add new bar symbol "." for punctus divisionis
6285
6286         * lily/bar-line.cc: interpret it
6287
6288 2005-11-28  Jan Nieuwenhuizen  <janneke@gnu.org>
6289
6290         * configure.in (--disable-documentation): New switch.
6291
6292         * GNUmakefile.in: Use it.
6293
6294         * stepmake/aclocal.m4: Use AC_ARG_ENABLE for kpatsea.
6295
6296 2005-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6297
6298         * scripts/lilypond-book.py (do_file): search chunks for
6299         \\begin{document}
6300
6301         * GNUmakefile.in: add copy step in between so we can lose the
6302         out-www directories.
6303
6304 2005-11-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6305
6306         * lily/pango-font.cc (pango_item_string_stencil): put
6307         geometry.width into glyph-string too.
6308
6309 2005-11-26  Nicolas Sceaux  <nicolas.sceaux@free.fr>
6310
6311         * scm/define-music-display-methods.scm (RevertProperty):
6312         (OverrideProperty): Use grob-property-path property, a list of
6313         symbols, instead of grob-property, which used to be a single
6314         symbol.
6315         (BassFigureEvent): a figure can be a plain number, not necessarily a
6316         markup.
6317
6318 2005-11-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6319
6320         * VERSION: release 2.7.19
6321         
6322         * lily/figured-bass-engraver.cc (process_music): check
6323         figuredBassCenterContinuations first.
6324
6325         * scm/translation-functions.scm (format-bass-figure): make double
6326         sharp larger. 
6327
6328         * lily/mark-engraver.cc: read rehearsalMarkAlignSymbol to
6329         determine X-parent.
6330
6331         * lily/system-start-delimiter-engraver.cc: move from
6332         Nested_system_start_delimiter_engraver, rename
6333         Nested_system_start_delimiter_engraver ->
6334         System_start_delimiter_engraver.
6335
6336         * lily/nested-system-start-delimiter-engraver.cc (from_list): read
6337         bracket type from hierarchy.
6338
6339 2005-11-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6340
6341         * lily/rest.cc (y_offset_callback): read staff-position.
6342
6343         * scm/define-grob-properties.scm (all-user-grob-properties): don't
6344         mark after-line-breaking-callback as internal.
6345
6346         * lily/self-aligment-interface.cc: remove self-[XY]-offset.
6347
6348 2005-11-25  Werner Lemberg  <wl@gnu.org>
6349
6350         * mf/feta-banier.mf ("d3"): Make `flare' equal to `staff_space'.
6351
6352 2005-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6353
6354         * stepmake/bin/add-html-footer.py (do_file): add google
6355
6356         * lily/staff-symbol-engraver.cc (process_music): bugfix: stop
6357         staff if first_start_ is true.
6358
6359 2005-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6360
6361         * scripts/midi2ly.py (split_track): add __repr__ members.
6362         (track_first_item): only return Item if not None. This fixes a
6363         problem when dumping a track that starts with an empty channel.
6364
6365         * python/midi.c: doc module.
6366
6367 2005-11-22  Mats Bengtsson  <mabe@s3.kth.se>
6368
6369         * Documentation/user/global.itely (Creating MIDI files): Fix
6370         compilation problem.
6371
6372 2005-11-22  Graham Percival  <gpermus@gmail.com>
6373
6374         * Documentation/user/basic-notation.itely: clarify dynamic
6375         padding text.
6376
6377         * Documentation/user/advanced-notation.itely: add unicode
6378         escape control example, whatever that is.  :)
6379
6380         * Documentation/user/global.itely: added "removing dynamics
6381         from MIDI" code.
6382
6383 2005-11-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6384
6385         * VERSION (PATCH_LEVEL): release 2.7.18
6386
6387         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): replace
6388         System_start_delimiter_engraver by
6389         Nested_system_start_delimiter_engraver.
6390
6391         * lily/nested-system-start-delimiter-engraver.cc (struct
6392         Bracket_nesting_node): new class.
6393         (struct Bracket_nesting_group): new class
6394         (struct Bracket_nesting_staff): new class.
6395         (process_music): create hierarchy of grobs. This allows separate
6396         tuning of different SSDs. 
6397
6398         * scm/define-grobs.scm (all-grob-descriptions): new Grob SystemStartSquare
6399         (all-grob-descriptions): remove old NestedSystemStartDelimiter.
6400
6401 2005-11-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6402
6403         * lily/side-position-interface.cc (aligned_side): multiply
6404         staff_radius by 2.
6405
6406         * lily/script-engraver.cc (make_script_from_event): allow setting
6407         values to '()
6408
6409 2005-11-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6410
6411         * lily/system-start-delimiter.cc (line_bracket): don't shorten height.
6412
6413         * scm/define-grobs.scm (all-grob-descriptions): new grob
6414         NestedSystemStartDelimiter.
6415
6416         * input/regression/system-start-heavy-bar.ly: new file.
6417
6418         * lily/nested-system-start-delimiter-engraver.cc: new file.
6419
6420         * lily/nested-system-start-delimiter.cc: new file.
6421
6422         * input/regression/system-start-nesting.ly: new file.
6423
6424         * scm/define-grobs.scm (all-grob-descriptions): use X side
6425         positioning for positioning braces for nested contexts.
6426
6427         * lily/system-start-delimiter.cc (print): don't divide extent by
6428         staff_space.
6429         (print): use style iso. glyph.
6430         (staff_bracket): translate glyph inside routine already.
6431
6432 2005-11-18  Michael Welsh Duggan <md5i@cs.cmu.edu>
6433
6434         * lily/vaticana-ligature-engraver.cc: fixed 2 typos in glyph
6435         names.
6436
6437 2005-11-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6438
6439         * scm/define-context-properties.scm
6440         (all-user-translation-properties): rename figuredBassFormatter
6441         from newFiguredBassFormatter.
6442
6443         * scm/define-grobs.scm (all-grob-descriptions): move from NewBassFigure
6444
6445         * lily/figured-bass-engraver.cc: move from new-figured-bass-engraver.cc
6446
6447         * lily/stem.cc (calc_stem_info): trigger beaming calculation.
6448
6449         * lily/beam.cc (calc_beaming): new function.
6450         (calc_shorten): new function.
6451
6452         * THANKS: add Edward Neeman.
6453
6454         * input/regression/accidental-clef-change.ly: new file.
6455
6456         * lily/note-collision.cc (check_meshing_chords): don't merge fa heads.
6457
6458         * scm/define-grobs.scm (all-grob-descriptions): add Y-offset property.
6459
6460         * lily/clef-engraver.cc (inspect_clef_properties): reset
6461         localKeySignature for clef changes.
6462
6463 2005-11-17  Mats Bengtsson  <mabe@s3.kth.se>
6464
6465         * python/midi.c: PyMIDINIT_FUNC isn't defined in Python < 2.3 
6466         add dummy definition that works in Linux and add information in
6467         INSTALL.texi on the specific Python requirements for Cygwin/Mingw.
6468
6469         * Documentation/user/changing-defaults.itely (Modifying context
6470         plug-ins): Add index for \with.
6471
6472         * Documentation/user/music-glossary.tely (dal segno): Updated
6473         example to version >=2.6.
6474
6475 2005-11-16  Mats Bengtsson  <mabe@s3.kth.se>
6476
6477         * Documentation/user/instrument-notation.itely (Printing chord
6478         names): Reorder \chordmode and \repeat in one example.
6479
6480 2005-11-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6481
6482         * VERSION: release 2.7.17
6483         
6484         * Documentation/topdocs/NEWS.tely (Top): add note about
6485         refactoring.
6486
6487         * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
6488         new function. Search region of 3 positions for best tie.
6489         (score_configuration): new function.
6490         (score_aptitude): new function.
6491         (generate_configuration): new function.
6492         (get_configuration): new function.
6493         (Tie_formatting_problem): new function
6494
6495         * input/regression/page-top-space.ly: a6 for page-top-space demo. 
6496
6497         * stepmake/aclocal.m4: use $(if ) for config-FOOF.make
6498
6499         * THANKS: add Eduardo Vieira & Ralph Little
6500
6501         * mf/feta-bolletjes.mf (solfa_quarter_width): make solfa heads
6502         narrower.
6503
6504         * lily/include/tie-formatting-problem.hh (class
6505         Tie_formatting_problem): add Tie_details to
6506         Tie_formatting_problem. Update calling conventions.
6507
6508         * stepmake/aclocal.m4: oops. Include $CONFIGFILE.make, not
6509         config.make.
6510
6511         * Documentation/user/lilypond.tely: remove musedata2ly entry.
6512
6513 2005-11-16  Jürgen Reuter  <reuter@ipd.uka.de>
6514
6515         * lily/ligature-engraver.cc, lily/include/ligature-engraver.hh,
6516         scm/define-context-properties.scm: Maintenance bugfix: make
6517         ligature brackets work again by removing obsolete ligature
6518         primitive callback push/pop.
6519
6520         * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: do
6521         not call Tuplet_bracket::calc_direction.  Removed obsolete gap
6522         value.
6523
6524 2005-11-15  Jan Nieuwenhuizen  <janneke@gnu.org>
6525
6526         * stepmake/aclocal.m4 (depth): Explain why absolute directory is
6527         used and do not call it a path.
6528         (FLEXLEXER_FILE): Rename from FLEXLEXER_PATH and add file name.
6529
6530 2005-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6531
6532         * lily/include/tie-formatting-problem.hh (class
6533         Tie_formatting_problem): new file.
6534
6535         * lily/tie-formatting-problem.cc (common_x_refpoint): new file.
6536
6537         * Documentation/misc/ChangeLog-2.3:  new file.
6538
6539         * lily/audio-staff.cc (output): degarianize.
6540
6541 2005-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
6542
6543         * stepmake/stepmake/python-module-rules.make ($(outdir)/%.pyc):
6544         Unset PYTHONOPTIMIZE.  Fixes install if set.
6545
6546 2005-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6547
6548         * python/convertrules.py (conv): add warning about drums. 
6549
6550         * make/stepmake.make: include toplevel-version.make after config.make.
6551
6552         * stepmake/aclocal.m4 (depth): make sure $srcdir is absolute.
6553         also allow python2.4
6554
6555         * config.make.in (configure-srcdir): remove GXX GCC vars.
6556
6557         * stepmake/aclocal.m4: don't do non-srcdir build with
6558         symlinks. Use inclusion, so the src directory name can be changed.
6559
6560 2005-11-13  Jan Nieuwenhuizen  <janneke@gnu.org>
6561
6562         * make/mutopia-vars.make:
6563         * make/ly-vars.make: Use src-wildcard iso wildcard for source
6564         files.
6565
6566 2005-11-13  Werner Lemberg  <wl@gnu.org>
6567
6568         * mf/feta-arrow.mf: For all glyphs, don't mirror `currentpicture'
6569         but the affected path.  This ensures that the (overlapping) outlines
6570         have the same direction, which is a necessary prerequisite for
6571         FontForge's algorithm to remove overlaps.
6572         Formatting.
6573
6574         * mf/feta-haak.mf: Formatting.
6575         (draw_bracket): Slightly modify outline to avoid an unnecessary
6576         corner.
6577         Don't use ad-hoc values for `leave_angle' and `tip_angle' but derive
6578         them from the affected paths.
6579
6580 2005-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6581
6582         * mf/README: remove xpm / accordion notes.
6583
6584         * lily/tie-column-format.cc (set_chord_outline): add dots into
6585         skyline extents. This fixes tie formatting if the left head has dots.
6586
6587         * lily/tie.cc (get_configuration): only shift tie by a whole staff
6588         space inside the staff.
6589         (get_configuration): shift another position if necessary in case
6590         of left head tie  
6591
6592 2005-11-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6593
6594         * stepmake/stepmake/texinfo-vars.make (GENERATE_OMF): use
6595         buildscript-dir iso. $(depth)/buildscripts.
6596
6597         * tex/GNUmakefile (local-uninstall): remove
6598         music-drawing-routines.ps juggling.
6599
6600         * stepmake/stepmake/install-targets.make (local-install-files):
6601         prepend src-dir to install targets.
6602
6603         * lily/system-start-delimiter-engraver.cc
6604         (acknowledge_system_start_delimiter): use
6605         add_offset_callback(). This fixes translation of nested
6606         staffgroups.
6607
6608         * lily/grob-closure.cc (add_offset_callback): only encaps in
6609         simple_closure if it's a procedure.
6610         
6611         * lily/span-bar.cc (calc_glyph_name): read glyph-name, not glyph
6612         from bar-line.
6613
6614         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
6615         remove-empty where pertinent.
6616
6617 2005-11-12  Graham Percival  <gpermus@gmail.com>
6618
6619         * Documentation/user/instrument-notation.itely: added
6620         Cameron Horsburgh's multiple stanzas docs.  Thanks!
6621
6622 2005-11-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6623
6624         * lily/GNUmakefile
6625         ($(top-build-dir)/Documentation/pictures/$(outbase)/lilypond.ico):
6626         make picture in builddir, not srcdir.
6627
6628 2005-11-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6629
6630         * VERSION: release 2.7.16
6631         
6632         * scripts/lilypond-book.py (main): use commands.mkarg () to quote
6633         shell arguments. 
6634
6635 2005-11-10  Mats Bengtsson  <mabe@s3.kth.se>
6636
6637         * Documentation/user/examples.itely (Piano templates): Minor
6638         modification to the Piano centered lyrics example.
6639
6640 2005-11-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6641
6642         * scripts/lilypond-invoke-editor.scm (run-browser): look at
6643         $BROWSER.
6644
6645         * Documentation/user/point-and-click.itely: simplify p&c
6646         instruction: don't configure firefox. Put lilypond-invoke-editor
6647         in front of the browser.
6648
6649         * scripts/lilypond-invoke-editor.scm (run-editor): new function.
6650         (run-browser): new function.
6651
6652         * lily/parser.yy (Lily_lexer): recognize Book
6653
6654         * lily/book.cc (clone): new function
6655
6656         * lily/parser.yy (book_body): allow BOOK_IDENTIFIER.
6657
6658 2005-11-10  Jürgen Reuter  <reuter@ipd.uka.de>
6659
6660         * lily/vaticana-ligature.cc, lily/vaticana-ligature-engraver.cc:
6661         Maintenance bugfix: reduce number of font related warnings by
6662         updating naming conventions for glyph-name.
6663
6664 2005-11-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6665
6666         * scm/define-grobs.scm (all-grob-descriptions): add
6667         rhythmic-grob-interface to TabNoteHead.
6668
6669         * scm/layout-beam.scm (check-quant-callbacks): remove
6670         set_stem_lengths()
6671
6672 2005-11-08  Jürgen Reuter  <reuter@ipd.uka.de>
6673
6674         * ly/gregorian-init.ly (divisiones): Maintenance bugfix: vertical
6675         alignment of centered divisiones.
6676
6677         * scm/scripts.scm (articulations): Maintenance bugfix:
6678         follow-into-staff -> quantize-position.
6679
6680         * lily/vaticana-ligature-engraver.cc (transform_heads): Bugfix:
6681         plica head in porrectus deminutus.
6682
6683 2005-11-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6684
6685         * make/lilypond.fedora.spec.in (Group): add %clean section.
6686
6687         * lily/tuplet-bracket.cc (print): change check: remove bracket if
6688         less then 1/5th of total length.  
6689         (print): use gap too.  Fixes tupletUp-single-bracket.ly
6690
6691         * scm/music-functions.scm (glue-mm-rest-texts): also put other
6692         events into EventChord. This fixes textspanners on mm rests. Fixes
6693         spanner-rest.ly
6694
6695         * lily/side-position-interface.cc (get_axis): read side-axis
6696         (set_axis): set side-axis.
6697
6698         * scm/define-grobs.scm (all-grob-descriptions): add side-axis
6699         properties everywhere.
6700
6701         * lily/spacing-spanner.cc (breakable_column_spacing): add
6702         average-spacing-wishes. Take maximum if not set.
6703         (musical_column_spacing): idem. Fixes: spacing-keysig-note.ly
6704
6705         * scm/define-grobs.scm (all-grob-descriptions): add
6706         average-spacing-wishes.
6707
6708         * lily/grob-closure.cc (add_offset_callback): bugfix: properly add
6709         offset callbacks. This fixes alignment for Fingering objects.
6710
6711         * scm/define-grobs.scm (all-grob-descriptions): tiny bit less
6712         space for key - timesig combination. 
6713
6714         * input/regression/script-stem-tremolo.ly (Module): new file.
6715
6716         * scm/define-grobs.scm (all-grob-descriptions): decrease distance
6717         to key sig.
6718
6719         * lily/dynamic-engraver.cc (acknowledge_stem_tremolo): new function.
6720         Fixes: c-tremolo-script.ly.
6721         
6722         * lily/text-engraver.cc (acknowledge_stem_tremolo): new function.
6723
6724         * lily/script-engraver.cc (acknowledge_stem_tremolo): new function.
6725         
6726         * scm/define-grobs.scm (all-grob-descriptions): remove
6727         self-X-offset. Fixes alignment of octavate-8.
6728
6729         * scripts/lilypond-book.py (datadir): look in
6730         LILYPONDPREFIX/share/lilypond/current/
6731
6732         * GNUmakefile.in: symlink current to <VERSION>. 
6733
6734 2005-11-07  Pedro Kroger  <kroeger@pedrokroeger.net>
6735
6736         * lily/main.cc: eps listed as a backend.
6737
6738 2005-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6739
6740         * scm/lily-library.scm (print-music-as-book): quote $defaultpaper.
6741
6742 2005-11-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6743
6744         * lily/include/score.hh (class Score): remove texts_ member.
6745
6746         * lily/beam.cc (set_stem_lengths): force direction callback.
6747         (print): read quantized-positions, so we can force
6748         Beam::set_stem_lengths to occur.
6749         (rest_collision_callback): use common X parent. 
6750
6751 2005-11-03  Jan Nieuwenhuizen  <janneke@gnu.org>
6752
6753         * flower/file-path.cc (find): Bugfix: Return name of file found.
6754
6755         * lily/main.cc (setup_paths): Bugfix for argv0 logic.
6756         (setup_paths)[__CYGWIN__ || __MINGW32__]: Normalize argv0.
6757         (setup_paths)[__MINGW32__]: Also look for argv0 + .exe.
6758
6759 2005-11-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6760
6761         * flower/offset.cc: idem.
6762
6763         * mf/*.mf: update email address.
6764
6765         * lily/font-config-scheme.cc:  new file.
6766
6767         * GNUmakefile.in (SUBDIRS): remove debian/ directory.
6768
6769         * lily/*:  cs.uu.nl -> xs4all.nl
6770
6771         * VERSION (PATCH_LEVEL): release 2.7.15
6772
6773         * make/lilypond.mandrake.spec.in (Module): remove Mandrake & Suse
6774         spec files.
6775
6776         * make/lilypond.fedora.spec.in: add %{libdir}/lilypond/
6777
6778 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6779
6780         * GNUmakefile.in: bugfix: encapsulate mkdir && cd in parens.   
6781
6782         * lily/staff-performer.cc (process_music): add audio
6783         elements. This makes MIDI instrument changes work once again.
6784
6785         * lily/main.cc (LY_DEFINE): add gmane address.
6786
6787         * lily/beam.cc: remove calc_positions()
6788
6789         * lily/include/grob.hh (class Grob): move pscore, dim_cache_,
6790         original_ in private scope.
6791         (class Grob): drop pscore_ pointer, change to output_def pointer.
6792         (class Grob): cleanup class definition.
6793
6794         * ly/spanners-init.ly (assertBeamQuant): use make-simple-closure.
6795
6796 2005-11-02  Jan Nieuwenhuizen  <janneke@gnu.org>
6797
6798         * lily/main.cc (setup_paths)[__MINGW32__]: Do not assume argv0 is
6799         absolute.  Better diagnostics.
6800
6801         * GNUmakefile.in: Add bin/ to tree and populate with some links.
6802         This makes lilypond run from the build directory using argv0
6803         relocation (without any --prefix or LILYPONDPREFIX setting).
6804
6805 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6806
6807         * Documentation/topdocs/NEWS.tely (Top): document new backend design.
6808
6809         * scm/define-grobs.scm: purge self-[XY]-offset variables, replace
6810         with simple-closure.
6811
6812         * lily/self-aligment-interface.cc (set_align_self): new function
6813         (set_center_parent): new function.
6814
6815         * lily/side-position-interface.cc (set_axis): new function.
6816
6817         * lily/new-fingering-engraver.cc (position_scripts): use drul for
6818         generic code. 
6819
6820         * scm/define-grob-properties.scm (all-user-grob-properties):
6821         remove [XY]-offset-callbacks add [YX]-offset
6822         
6823 2005-11-02  Mats Bengtsson  <mabe@s3.kth.se>
6824
6825         * scm/define-grobs.scm (all-grob-descriptions): Added space-alist
6826         entry for time signatures after breathing signs. Bug report by
6827         Scott Russell.
6828
6829 2005-11-01  Jan Nieuwenhuizen  <janneke@gnu.org>
6830
6831         * lily/main.cc (setup_paths)[!__MINGW32__]: Bugfix: if argv0 is
6832         not absolute, make it absolute using PATH.
6833
6834 2005-10-28  Jan Nieuwenhuizen  <janneke@gnu.org>
6835
6836         * python/midi.c (initmidi): Fix type for mingw.
6837
6838 2005-10-27  Jan Nieuwenhuizen  <janneke@gnu.org>
6839
6840         * stepmake/stepmake/compile-vars.make (SHARED_FLAGS): Support mingw.
6841
6842         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Detect mingw
6843         cross compiling.
6844
6845         * stepmake/aclocal.m4: Support python cross compiling.
6846
6847         * stepmake/stepmake/python-module-vars.make (SHARED_MODULE_SUFFIX):
6848         Add mingw section.
6849
6850 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6851
6852         * scm/output-lib.scm (chain-grob-member-functions): replace
6853         chained-callback.cc
6854
6855         * lily/chained-callback.cc (Module): remove file.
6856
6857         * lily/rest-collision.cc (force_shift_callback_rest): change to
6858         chained callback.
6859
6860         * lily/rest.cc (y_offset_callback): merge function of 3 callbacks. 
6861
6862         * lily/grob.cc (y_parent_positioning): remove axis argument from
6863         parent_positioning callbacks.
6864         (Grob): junk init code
6865         (get_offset): use generic property callbacks for
6866         X-offset, Y-offset. Remove Grob::{add,has}_offset_callback.
6867         (axis_parent_positioning): new function
6868         (axis_offset_symbol): new function
6869         (chain_offset_callback): new function
6870         (add_offset_callback): new function
6871
6872         * lily/beam.cc (rest_collision_callback): change signature; this
6873         is now a chained callback.
6874
6875         * lily/include/dimension-cache.hh (class Dimension_cache): remove
6876         callback administration.
6877
6878         * lily/simple-closure.cc: new file. Smob type that allows "grob
6879         member functions",
6880
6881             (ly:make-simple-closure FUNC A B)
6882
6883         is evaluated as (FUNC grob A B). This allows chaining of callbacks
6884         in various ways.
6885
6886         * lily/slur-engraver.cc (acknowledge_extra_object): use chained
6887         callbacks.
6888
6889         * lily/slur.cc (outside_slur_callback): take 2 arguments.
6890
6891         * lily/rest.cc (polyphonic_offset_callback): remove.
6892
6893         * lily/script-engraver.cc (try_music): remove bool* argument.
6894
6895         * scm/script.scm (default-script-alist): set quantize-position
6896         appropriately.
6897
6898         * lily/script-engraver.cc: remove follow_into_staff_ special coding. 
6899
6900         * lily/side-position-interface.cc (aligned_side): move staff
6901         position quantization from
6902         Side_position_interface::quantised_position().
6903         (quantised_position): remove
6904         
6905 2005-10-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6906
6907         * input/regression/beam-quant-standard.ly: reindent, set
6908         debug-beam-quanting to #t.
6909
6910         * lily/beam-concave.cc (calc_concaveness): set concaveness to
6911         10000 if this is a "hard" concave beam.
6912
6913         * lily/beam.cc (calc_least_squares_positions): change from
6914         calc_least_squares_dy
6915         (set_stem_lengths): this is now a chained callback.
6916
6917         * lily/context-property.cc (execute_general_pushpop_property):
6918         bugfix override with procedure should have effect.
6919
6920         * scm/define-grob-properties.scm (all-internal-grob-properties):
6921         remove position-callbacks.
6922
6923         * scm/define-grobs.scm (all-grob-descriptions): use
6924         ly:make-callback-chain for positions property.
6925
6926         * scm/layout-beam.scm (check-quant-callbacks): return list of
6927         chained callbacks.
6928
6929         * scm/lily.scm (type-p-name-alist): add callback-chain
6930
6931         * lily/lily-guile.cc (type_check_assignment): type check failure
6932         is warning not message.
6933
6934         * lily/grob-property.cc (try_callback): walk callback chain if
6935         appropriate.
6936
6937         * lily/chained-callback.cc: new file. new smob type.
6938
6939         * lily/lily-guile.cc (procedure_arity): new function.
6940
6941 2005-10-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6942
6943         * Documentation/topdocs/INSTALL.texi (Top): add perl flex bison.
6944
6945 2005-10-25  John Mandereau  <john.mandereau@free.fr>
6946  
6947         * Documentation/user/instrument-notation.itely (Figured bass):
6948         describe new features
6949
6950 2005-10-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6951
6952         * lily/beam.cc (calc_least_squares_dy): use property callback.
6953
6954         * lily/beam-concave.cc (calc_concaveness): use property callback.
6955
6956         * ly/paper-defaults.ly: move fixed dimensions from paper.scm 
6957
6958 2005-10-25  Jan Nieuwenhuizen  <janneke@gnu.org>
6959
6960         * HACKING: Update.
6961
6962 2005-10-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6963
6964         * scm/layout-page-layout.scm (page-headfoot): annotate
6965         pagetopspace too.
6966
6967         * scm/stencil.scm (dimension-arrows): shorten arrowed lines a bit. 
6968
6969         * scm/layout-page-layout.scm (annotate-y-interval): y-annotation
6970         doesn't take y-space.
6971
6972         * scm/paper.scm (paper-alist): fix A7 dimensions. 
6973
6974 2005-10-24  Jan Nieuwenhuizen  <janneke@gnu.org>
6975
6976         * stepmake/stepmake/generic-vars.make (DIST_FILES): Fix
6977         src-wildcard, remove $(wildcard).
6978
6979         * po/GNUmakefile (PO_FILES): 
6980         * ps/GNUmakefile (PS_FILES): 
6981         * tex/GNUmakefile (TEX_FILES): 
6982         * cygwin/GNUmakefile (POSTINSTALLS):
6983         * vim/GNUmakefile (EXTRA_DIST_FILES): Bugfix: [etags sr?] missed
6984         some wildcard calls.
6985
6986 2005-10-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6987
6988         * THANKS: add Thomas Bushnell.
6989
6990 2005-10-23  Jan Nieuwenhuizen  <janneke@gnu.org>
6991
6992         * scm/lily.scm: Remove horrendous running-from-gui? kludge.
6993         (lilypond-main): Redirect to gui-main if 'gui is set.
6994
6995         * scripts/midi2ly.py (datadir): Add libdir iso datadir to path,
6996         for alternative installations kludging s/share/lib/g
6997         LILYPONDPREFIX. 
6998
6999         * SConstruct (libdir_package_version): Define.
7000
7001         * python/SConscript: 
7002         * python/GNUmakefile (INSTALLATION_OUT_DIR): Install binary .so
7003         module in libdir.  
7004
7005 2005-10-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7006
7007         * lily/main.cc: clarify --safe.
7008
7009 2005-10-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7010
7011         * VERSION: release 2.7.14
7012         
7013         * Documentation/user/*.itely: remove minimumVerticalExtent.
7014
7015         * scm/define-grobs.scm (all-grob-descriptions): remove
7016         RemoveEmptyVerticalGroup
7017
7018         * lily/hara-kiri-engraver.cc (get_spanner): create VerticalAxisGroup.
7019
7020         * lily/include/lily-guile.hh (GUILE_ELLIPSIS): define to get clean
7021         compile on MOSX
7022
7023         * python/convertrules.py (conv): add rules.
7024
7025         * lily/grob.cc: remove is_empty()
7026
7027         * lily/grob-property.cc: remove add_to_list_property().
7028
7029         * scripts/convert-ly.py (datadir): add prefix switching hack to
7030         .py too.
7031
7032         * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily (cresc): remove
7033         space-function tweak.
7034
7035         * lily/grob.cc: remove X-extent-callback / Y-extent-callback.
7036
7037         * scm/define-grob-properties.scm (all-user-grob-properties):
7038         remove callback property.
7039
7040         * lily/include/grob.hh (class Grob): remove property_callbacks_
7041         member. Properties of procedure type are assumed to be callbacks.
7042
7043         * lily/ligature-engraver.cc (override_stencil_callback):
7044         rewrite. Use noteHeadLigaturePrimitive as source.
7045
7046         * scm/define-grob-properties.scm (all-internal-grob-properties):
7047         remove ligature-primitive-callback
7048
7049         * lily/include/dimension-cache.hh (class Dimension_cache): make
7050         class, with Grob as friend.
7051
7052         * lily/grob.cc: remove set_extent_callback(), set_extent() and
7053         has_extent_callback()
7054
7055         * scm/translation-functions.scm (format-new-bass-figure): read
7056         figuredBassPlusDirection
7057
7058         * scm/define-context-properties.scm
7059         (all-user-translation-properties): add figuredBassPlusDirection.
7060
7061         * lily/staff-spacing.cc (next_notes_correction): oops. Init wishes.
7062
7063         * lily/align-interface.cc (set_ordered): new function.
7064
7065         * lily/grob.cc (flush_extent_cache): rewrite.
7066
7067         * lily/dimension-cache.cc (Dimension_cache): cache extent as
7068         Interval pointer directly.
7069
7070         * lily/main.cc (setup_paths): insert extra / .
7071         (setup_paths): junk cff entry.
7072
7073         * lily/font-config.cc (init_fontconfig): only add type1 / otf
7074         directories.
7075
7076         * lily/axis-group-engraver.cc (finalize): remove
7077         extraVerticalExtent, minimumVerticalExtent verticalExtent.
7078
7079         * lily/grob.cc (Grob): don't set extent from ctor.
7080         (extent): use property callbacks. 
7081
7082         * lily/axis-group-interface.cc: remove set_axes() function.
7083
7084         * lily/grob-property.cc (del_property): new function.
7085
7086 2005-10-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7087
7088         * lily/font-config.cc (init_fontconfig): resurrect mf/out/ check.
7089         
7090 2005-10-20  Jan Nieuwenhuizen  <janneke@gnu.org>
7091
7092         * stepmake/stepmake/script-vars.make (PYTHON_SCRIPTS_IN): Oops.  Add.
7093
7094 2005-10-19  Jan Nieuwenhuizen  <janneke@gnu.org>
7095
7096         * mf/SConscript: Updates.
7097
7098         * lily/GNUmakefile (OUT_DIST_FILES): Bugfix.
7099
7100         * stepmake/stepmake/*:
7101         * */GNUmakefile:
7102         * config.make.in:
7103         * GNUmakefile.in:
7104         * stepmake/aclocal.m4: Friendlier --srcdir build, allowing `make'
7105         from any directory in build-dir.  Cleanups.
7106
7107         * make/srcdir.make.in: Remove.
7108
7109         * lily/main.cc (setup_paths): Fix and document build-dir hack.
7110
7111         * SConstruct (CheckYYCurrentBuffer): Use TryCompile (there is no
7112         main).
7113
7114         * lily/SConscript: Remove ttftools.
7115
7116         * SConstruct: Resurrect.
7117
7118 2005-10-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7119
7120         * lily/tuplet-bracket.cc (print): use dy iso. positions[RIGHT] for
7121         Y coordinate. 
7122
7123         * lily/paper-book.cc (add_score_title): put Paper_score title into
7124         systems_ list.
7125
7126         * scm/translation-functions.scm (format-new-bass-figure): also
7127         allow plus in combination with _
7128
7129 2005-10-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7130
7131         * VERSION: 2.7.13 released.
7132
7133         * lily/note-collision.cc (check_meshing_chords): don't wipe
7134         stencil, merely set transparent.
7135
7136         * Documentation/topdocs/NEWS.tely (Top): mention John Mandereau. 
7137         (Top): document #'callbacks.
7138         (Top): document nested \override.
7139
7140         * input/regression/figured-bass.ly: update for slash and pluses.
7141
7142         * input/regression/figured-bass-continuation-forbid.ly (Module):
7143         new file.
7144
7145         * scm/translation-functions.scm (format-new-bass-figure): use
7146         slashed-digit if diminished is set.
7147         (format-new-bass-figure): add + if 'augmented is set.
7148
7149         * scm/define-markup-commands.scm (slashed-digit): new command slashed-digit.
7150
7151         * input/test/piano-staff-distance.ly: remove file.
7152
7153         * Documentation/user/advanced-notation.itely (Formatting cue
7154         notes): use length-fraction for making stems/beams smaller.
7155
7156         * lily/parser.yy (bass_figure): accept \+ \! and / as figured bass
7157         modifications.
7158
7159         * lily/new-figured-bass-engraver.cc: new property
7160         centerFiguredBassContinuations
7161
7162         * Documentation/user/changing-defaults.itely (Difficult tweaks):
7163         use callbacks.
7164
7165         * lily/context-property.cc (execute_general_pushpop_property):
7166         robustness checks.
7167
7168         * input/regression/override-nest.ly: new file.
7169
7170         * python/convertrules.py (FatalConversionError.subber): conversion
7171         rule for #'callbacks
7172
7173         * input/regression/override-nest.ly: new function.
7174
7175         * lily/parser.yy (music_property_def): allow \override #'a #'b =
7176         #c too. 
7177
7178         * lily/context-property.cc (lookup_nested_property): new function.
7179         (evict_from_alist): new function.
7180         (general_pushpop_property): new function.
7181         (execute_general_pushpop_property): rewrite. Support nested
7182         properties too.
7183
7184 2005-10-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7185
7186         * lily/beam.cc: use length-fraction too.
7187
7188         * scm/define-grob-properties.scm (all-user-grob-properties):
7189         remove property flag-width-function
7190         (all-user-grob-properties): remove space-function.
7191
7192         * scm/layout-beam.scm: remove flag-width-function.
7193
7194         * lily/beam.cc: remove flag-width-function
7195
7196         * scm/layout-beam.scm: remove beam dir functions.
7197
7198         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): use length-fraction.
7199
7200         * lily/stem.cc (calc_length): multiply with length_fraction. Makes
7201         for easier grace tweaks.
7202
7203         * lily/beam.cc: remove dir-function.
7204
7205         * lily/system.cc (pre_processing): use callback to trigger spacing procedures.
7206
7207         * lily/grob.cc: remove spacing-procedure.
7208
7209         * lily/note-head.cc (calc_stem_attachment): new function.
7210         (internal_print): use callback to get glyph-name.
7211
7212         * lily/grob-property.cc (get_interfaces): new function.
7213
7214         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-interfaces
7215
7216         * lily/stem.cc (calc_stem_end_position): new function.
7217         (calc_length): new function.
7218         document details for stem.
7219         remove Stem::get_direction()
7220
7221         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-set-callback! 
7222
7223         * lily/grob-property.cc (set_callback): new function.
7224
7225         * lily/script-engraver.cc (make_script_from_event): don't trigger callback.
7226
7227         * lily/item-scheme.cc: new file.
7228
7229         * lily/bar-line.cc (before_line_breaking): remove function.
7230         remove bar-size-procedure, break-glyph-function
7231
7232         * lily/clef-engraver.cc (set_glyph): use glyph iso. glyph-name
7233
7234         * lily/clef.cc (before_line_breaking): change to calc_glyph_name.
7235
7236         * lily/system-start-delimiter.cc (print): suicide from
7237         here. Remove after_line_breaking_callback.
7238
7239         * lily/script-interface.cc (calc_direction): use callback for direction.
7240
7241         * lily/side-position-interface.cc (aligned_side): don't use
7242         Side_position_interface::get_direction directly. Use callback. 
7243
7244         * lily/grob.cc (get_stencil): simplify: use callback mechanism to
7245         calculate stencil.
7246         (get_print_stencil): rename from get_stencil: create stencil with
7247         transparency, color and cause. 
7248
7249         * scm/define-grobs.scm: change print-function to stencil callback everywhere.
7250
7251         * python/convertrules.py (conv): insert temporary warning rule.
7252
7253         * lily/multi-measure-rest.cc (set_text_rods): use stencil directly.
7254
7255         * lily/grob-property.cc (try_callback): remove marker if applicable.
7256
7257         * lily/grob.cc: elucidate doc about after/before-line-breaking
7258
7259         * lily/slur-scoring.cc (enumerate_attachments): robustness fix.
7260
7261         * lily/stem.cc (height): idem.
7262
7263         * lily/stem-tremolo.cc: idem.
7264
7265         * lily/slur.cc (height): don't use get_uncached_stencil()
7266
7267         * lily/rest.cc (y_offset_callback): use offset callback
7268         iso. after-line-breaking callback.
7269
7270         * lily/grob.cc: change after/before-line-breaking-callback to
7271         after/before-line-breaking dummy properties.
7272
7273         * lily/include/grob.hh: remove Grob_status.
7274
7275         * scm/define-context-properties.scm
7276         (all-user-translation-properties): remove verticalAlignmentChildCallback
7277
7278         * lily/tuplet-bracket.cc: use positions property iso. left,right-position.
7279         (calc_direction): use callback
7280         (calc_positions): use callback.
7281
7282         * lily/tie.cc (calc_direction): use callback. Only call parent
7283         positioning for more than one tie.
7284
7285         * lily/tie-column.cc (calc_positioning_done): use callback
7286
7287         * lily/slur-scoring.cc (calc_control_points): use callback
7288
7289         * lily/slur.cc (calc_direction): use callback.
7290
7291         * lily/note-collision.cc (force_shift_callback): remove.
7292
7293         * lily/dot-column.cc (force_shift_callback): remove. Use
7294         other_axis_parent_positioning.
7295
7296         * lily/grob.cc (other_axis_parent_positioning): new function.
7297         (same_axis_parent_positioning): new function
7298
7299         * lily/align-interface.cc (alignment_callback): remove function.
7300
7301         * lily/note-collision.cc (calc_positioning_done): use callback.
7302
7303         * lily/laissez-vibrer-tie.cc (calc_control_points): use callback.
7304         (calc_direction): idem.
7305         remove print function.
7306
7307         * lily/laissez-vibrer-tie-column.cc (calc_positioning_done): use callback.
7308
7309         * lily/dot-column.cc (calc_positioning_done): use callback.
7310
7311         * lily/break-align-interface.cc (calc_positioning_done): use callback.
7312
7313         * lily/beam.cc (calc_direction): use pseudo-property for beam
7314         direction callback.
7315         (calc_positions): use callback 
7316
7317         * lily/align-interface.cc (calc_positioning_done): use
7318         callback. Fold fixed  distance and normal alignment in one function.
7319
7320         * lily/stem.cc (calc_stem_end_position): use callback.
7321         (calc_positioning_done): idem.
7322         (calc_direction): idem.
7323         (calc_stem_end_position): idem
7324         (calc_stem_info): idem.
7325
7326         * lily/grob-property.cc (get_property_data): new function: 
7327         (try_callback): new function.
7328
7329         * scm/define-grob-properties.scm (all-user-grob-properties): doc
7330         callbacks property.
7331
7332         * lily/break-align-interface.cc: remove Break_align_interface::alignment_callback.
7333
7334 2005-10-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7335
7336         * lily/tie.cc (get_position): robustness fix. Don't crash if a
7337         tie
7338         has no heads.
7339         
7340         * lily/include/*.hh (Module): compile fixes.
7341
7342 2005-10-14  Heikki Junes <hjunes@cc.hut.fi>
7343
7344         * elisp/lilypond-font-lock.el, elisp/lilypond-indent.el: Avoid nil 
7345         as an argument for char-syntax: use (char-syntax (or nil 0)) 
7346         instead of (char-syntax nil), thanks to Milan Zamazal.
7347
7348 2005-10-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7349
7350         * make/lilypond.fedora.spec.in (Group): add lilypond-internals to
7351         dist.
7352
7353         * lily/tuplet-bracket.cc: check columns of bounds, not bounds
7354         themselves.
7355
7356 2005-10-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7357
7358         * flower/include/virtual-methods.hh (VIRTUAL_COPY_CONSTRUCTOR):
7359         add class_name() method.
7360
7361         * lily/music-scheme.cc: remove ly:music-name.
7362
7363 2005-10-11  Jan Nieuwenhuizen  <janneke@gnu.org>
7364
7365         * cygwin/postinstall-lilypond.sh: Remove cruft.
7366
7367         * cygwin/postremove-lilypond.sh: Remove.
7368
7369         * cygwin/GNUmakefile (default): Remove postremove rules.
7370
7371 2005-10-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7372
7373         * ly/titling-init.ly (evenHeaderMarkup): use space in header on
7374         even header too.
7375         
7376         * scm/define-markup-commands.scm (wordwrap-string): bugfix for
7377         MacOS 9 users.
7378
7379         * lily/hara-kiri-group-spanner.cc (consider_suicide): only
7380         consider break index for broken spanner.
7381
7382         * scm/define-markup-commands.scm (wordwrap-string): remove \r
7383         characters from string before splitting.
7384
7385 2005-10-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7386
7387         * scm/framework-ps.scm (output-preview-framework): use
7388         is-book-title to determine whether to chop off the booktitle.
7389
7390         * lily/paper-book.cc (systems): init from book-title-properties
7391         (add_score_title): init score-title-properties.
7392
7393         * ly/paper-defaults.ly: add {score,book}-title-properties.
7394
7395         * scm/document-backend.scm (lookup-interface): error message if
7396         using unknown interface.
7397
7398         * lily/volta-bracket.cc (after_line_breaking): new function. Set
7399         edge-height.
7400
7401         * lily/horizontal-bracket.cc (make_enclosing_bracket): rename from
7402         make_bracket.
7403         (make_bracket): new function.
7404
7405         * scm/lily.scm (define-scheme-options): add paper-size option.
7406
7407         * ly/declarations-init.ly (laissezVibrer): get paper size from
7408         -dpaper-size
7409
7410         * scm/translation-functions.scm: use \fontsize for changing the
7411         fontsize.
7412
7413         * scm/define-grobs.scm (all-grob-descriptions): set
7414         between-length-limit to 1.0
7415
7416         * lily/tie-helper.cc: add between_length_limit_ detail property.
7417
7418         * mf/feta-bolletjes.mf: typos.
7419
7420         * lily/note-head.cc (internal_print): don't shadow idx
7421         parameter. This fixes wrong attachment for do shape heads.
7422
7423 2005-10-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7424
7425         * scm/parser-ly-from-scheme.scm: rename from ly-from-scheme.scm
7426
7427         * scm/parser-clef.scm (supported-clefs): rename from clef.scm
7428
7429         * scm/layout-slur.scm: rename from slur.scm
7430
7431         * scm/layout-page-layout.scm: rename from page-layout.scm
7432
7433         * scm/layout-beam.scm: rename from beam.scm
7434
7435         * scm/define-grob-interfaces.scm (bass-figure-interface): add
7436         bass-figure-interface
7437
7438         * lily/new-figured-bass-engraver.cc (process_music): add
7439         implicitBassFigures property.
7440         
7441         * scm/define-markup-commands.scm (pad-x): new markup.
7442
7443         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set
7444         minimumVerticalExtent on FiguredBass context.
7445
7446         * lily/figured-bass-continuation.cc (center_on_figures): kludge in
7447         case the continuation crosses a line break.
7448
7449 2005-10-09  Jan Nieuwenhuizen  <janneke@gnu.org>
7450
7451         * flower/file-name.cc (dos_to_posix)[__CYGWIN__]: Return
7452         unconverted value if cygwin_conv_to_posix_path () fails.  Fixes
7453         absolute file name bug.  
7454
7455 2005-10-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7456
7457         * VERSION (PACKAGE_NAME): release 2.7.12
7458
7459         * input/regression/figured-bass-continuation-center.ly: new file.
7460
7461         * input/regression/beam-outside-beamlets.ly: new file.
7462
7463         * lily/beam.cc (set_beaming): don't clip edges.
7464         (connect_beams): don't clip edges.
7465
7466         * lily/beaming-info.cc (clip_edges): new function.
7467
7468         * lily/enclosing-bracket.cc (struct Enclosing_bracket): new file.
7469
7470         * Documentation/user/instrument-notation.itely (Figured bass):
7471         demonstrate extenders, update seealso links.
7472
7473         * scm/titling.scm (marked-up-headfoot): change tagline
7474         handling. tagline = ##f will blank the tagline as well.
7475
7476 2005-10-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7477
7478         * Documentation/topdocs/NEWS.tely: add entry for Figured bass.
7479
7480         * lily/new-figured-bass-engraver.cc (struct
7481         New_figured_bass_engraver): add new_music_found_ member.
7482
7483         * lily/lilypond-version.cc (Lilypond_version): deal with
7484         incorrectly formatted version strings. 
7485
7486         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): switch on
7487         New_figured_bass_engraver by default.
7488
7489         * lily/ttf.cc (print_trailer): only define glyph names when
7490         FT_Face has FT_FACE_FLAG_GLYPH_NAMES
7491
7492 2005-10-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7493
7494         * lily/horizontal-bracket.cc (make_bracket): new function.
7495
7496         * scm/define-grobs.scm (all-grob-descriptions): new grobs
7497         NewBassFigure, BassFigureBracket, BassFigureContinuation,
7498         BassFigureLine, BassFigureAlignment
7499
7500         * lily/new-figured-bass-engraver.cc (process_music): new file.
7501
7502         * lily/figured-bass-continuation.cc: new file.
7503
7504         * lily/include/horizontal-bracket.hh (struct Horizontal_bracket):
7505         new file.
7506
7507 2005-10-04  Mats Bengtsson  <mabe@s3.kth.se>
7508
7509         * scripts/lilypond-book.py: Bug fix, put the quote around the
7510         actual score for LaTeX documents.
7511
7512         * scm/define-grobs.scm (all-grob-descriptions): Change
7513         collapse-height of the SystemStartBracket grob to 5.0, 
7514         so the bracket disappears for single stave score lines (similarly
7515         to SystemStartBraces). 
7516
7517         * Documentation/user/advanced-notation.itely (Polymetric
7518         notation): Clarify the use of compressMusic.
7519
7520         * Documentation/user/basic-notation.itely (Grace notes): Clarify
7521         that the grace spacer note in other staves need the same duration
7522         and document the stroke-style property.
7523
7524 2005-10-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7525
7526         * Documentation/user/global.itely (Vertical spacing): document
7527         alignment-extra-space and fixed-alignment-extra-space.
7528
7529         * Documentation/topdocs/NEWS.tely (Top): add entry.
7530
7531         * input/regression/alignment-vertical-spacing.ly: new file.
7532
7533         * python/convertrules.py (conv): add rule.
7534
7535         * ly/music-functions-init.ly: rename outputProperty to overrideProperty
7536
7537         * lily/align-interface.cc (stretch_after_break): new
7538         function. Read fixed-alignment-extra-space property.
7539         (align_elements_to_extents): read alignment-extra-space property.
7540
7541         * lily/lily-guile.cc (robust_scm2dir): new function.
7542
7543         * scm/page-layout.scm (page-headfoot): annotate headsep and footsep.
7544         (annotate-space-left): new function. Annotate space left on page. 
7545         (annotate-y-interval): new function.
7546         (paper-system-annotate-last): new function. Annotate bottom-space.
7547
7548         * mf/feta-beugel.mf (y): 
7549
7550 2005-10-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7551
7552         * VERSION (PACKAGE_NAME):  release 2.7.11
7553
7554         * scm/lily-library.scm (interval-translate): new function
7555         (interval-center): new function. 
7556
7557         * scm/page-layout.scm (paper-system-annotate): new function. Add
7558         arrows for dimensions.
7559  
7560         * scm/stencil.scm (dimension-arrows): new function.
7561
7562         * Documentation/user/global.itely (Vertical spacing): mention annotatespacing
7563
7564         * input/regression/page-spacing.ly: add annotatespacing
7565
7566         * lily/paper-system-scheme.cc (LY_DEFINE): remove ly:paper-system-{extent,stencil}
7567         (LY_DEFINE): new function ly:paper-system-set-property!
7568
7569         * Documentation/user/global.itely (Paper size): explain how to add
7570         sizes.
7571
7572         * scm/paper.scm (paper-alist): rename tabloid paper to 11x17 to
7573         correspond to GS's definition.
7574
7575         * lily/tuplet-bracket.cc (after_line_breaking): suicide empty
7576         tuplet bracket.
7577         (print): only connect to next bracket if the next one is alive.
7578         (print): set padding to 0.0 if the bound is a breakable
7579         column. This makes tupletFullLength brackets reach up to the staff
7580         line if it doesn't connect to the next line.
7581
7582 2005-09-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7583
7584         * lily/bar-number-engraver.cc: correct docs.
7585
7586         * scm/output-lib.scm (first-bar-number-invisible): rename from
7587         default-bar-number-visibility
7588
7589 2005-09-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7590
7591         * scm/define-music-properties.scm (all-music-properties): remove
7592         predicate property.
7593
7594 2005-09-28  Heikki Junes  <hjunes@cc.hut.fi>
7595
7596         * po/fi.po: refresh.
7597
7598 2005-09-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7599
7600         * input/regression/hara-kiri-pianostaff.ly (disappear): remove
7601         superfluous s1.
7602         (disappear): bugfix.
7603
7604         * lily/stem-tremolo.cc (raw_stencil): read slope property.
7605
7606         * lily/include/paper-system.hh (class Paper_system): remove
7607         staff_extents_ member.
7608
7609         * lily/paper-system-scheme.cc (LY_DEFINE): remove.
7610
7611         * lily/include/paper-system.hh (class Paper_system): remove
7612         number_ variable. Remove is_title_. Remove break_before_penalty_
7613
7614         * lily/paper-book.cc (systems): use 'number property iso. number_
7615         member.
7616
7617         * lily/paper-system-scheme.cc: remove ly:paper-system-break-before-penalty
7618         remove ly:paper-system-number.
7619
7620         * scm/lily-library.scm (paper-system-title?): new function.
7621
7622         * lily/book.cc (process): bugfix: flip ?: cases. 
7623
7624         * Documentation/user/changing-defaults.itely (Difficult tweaks):
7625         add outputProperty.
7626
7627         * ly/music-functions-init.ly: add outputProperty music function.
7628
7629         * scm/paper.scm (set-paper-dimension-variables): add pagetopspace
7630
7631         * scm/page-layout.scm (ly:optimal-page-breaks): read next-space
7632         and next-padding.
7633         (optimal-page-breaks): rename from ly:optimal-page-breaks.
7634
7635         * lily/paper-system-scheme.cc (LY_DEFINE): new function.
7636
7637         * lily/paper-system.cc (internal_get_property): new function.
7638
7639         * Documentation/user/global.itely (Vertical spacing): refer to
7640         page-spacing.ly
7641
7642         * scm/page-layout.scm (ly:optimal-page-breaks): add support for
7643         pagetopspace
7644
7645         * input/regression/page-spacing.ly: new file.
7646
7647         * input/regression/page-top-space.ly: new file.
7648
7649         * lily/spacing-spanner.cc: cmath -> math.h
7650
7651         * lily/paper-system.cc (read_left_bound): new function. Read
7652         line-break-system-details from left bound to determine extents.
7653  
7654         * Documentation/user/programming-interface.itely (Using LilyPond
7655         syntax inside Scheme): change applyxxx -> applyXxx.
7656
7657         * ly/music-functions-init.ly: add outputProperty music function.
7658
7659         * lily/parser.yy (Generic_prefix_music_scm): add scm-scm-scm signature.
7660
7661         * lily/grob-scheme.cc (LY_DEFINE): add ! to ly:grob-suicide! name.
7662
7663         * python/convertrules.py (conv): rule
7664
7665         * ly/music-functions-init.ly: applyxxx -> applyXxx
7666
7667         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): alias
7668         TabVoice to Voice.
7669
7670 2005-09-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7671
7672         * flower/include/real.hh: include <math.h> iso. <cmath>
7673
7674         * flower/include/offset.hh: include real.hh
7675
7676 2005-09-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7677
7678         * Documentation/user/changing-defaults.itely (Difficult tweaks):
7679         fix example, now that 'interfaces is no longer directly available.
7680
7681         * lily/book.cc (process): don't crash if paper == NULL.
7682
7683         * po/fr.po: update.
7684
7685 2005-09-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7686
7687         * scm/define-music-types.scm (music-descriptions): set length and
7688         start-callback for QuoteMusic
7689
7690 2005-09-15  Mats Bengtsson  <mabe@s3.kth.se>
7691
7692         * lily/tie.cc (get_configuration): Replace fabs -> abs for integer
7693         arguments. Fixes compilation error with gcc 3.3.
7694
7695 2005-09-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7696
7697         * VERSION: release 2.7.10
7698
7699         * stepmake/stepmake/python-module-rules.make
7700         ($(outdir)/%$(SHARED_MODULE_SUFFIX)): SHARED_FLAGS at the end.  
7701
7702         * lily/*.cc: remove <cmath> everywhere. <cmath> is included from
7703         real.hh
7704
7705 2005-09-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7706
7707         * stepmake/stepmake/c++-vars.make (#EXTRA_CXXFLAGS): don't add
7708         -Werror. Otherwise GCC barfs over various optimizations.
7709
7710         * scm/define-grob-properties.scm (all-internal-grob-properties):
7711         add note-head property
7712
7713         * Documentation/user/instrument-notation.itely (Laissez vibrer
7714         ties): new node.
7715
7716         * input/regression/laissez-vibrer-ties.ly: new file.
7717
7718         * lily/laissez-vibrer-engraver.cc: new file.    
7719
7720         * lily/include/tie-column-format.hh: new file.
7721
7722         * lily/tie-column-format.cc: new file. 
7723
7724         * lily/tie-column.cc (set_manual_tie_configuration): new function.
7725
7726         * lily/laissez-vibrer-tie.cc: new file.
7727
7728         * lily/include/laissez-vibrer-tie.hh: new file.
7729
7730         * ly/engraver-init.ly: add Laissez_vibrer_engraver
7731
7732         * ly/declarations-init.ly (laissezVibrer): add \laissezVibrer
7733
7734         * scm/define-grobs.scm (all-grob-descriptions): add
7735         LaissezVibrerTie, LaissezVibrerTieColumn
7736
7737         * lily/tie-column.cc (set_tie_config_directions): new function
7738         (final_shape_adjustment): new function.
7739         (shift_small_ties): new function.
7740
7741         * scm/define-music-types.scm (music-descriptions): add LaissezVibrerEvent
7742
7743         * lily/include/tie.hh (struct Tie_details): add x_gap_
7744         (struct Tie_configuration): add head_position_
7745
7746         * lily/tie-column.cc (set_chord_outline): new function.
7747
7748         * mf/cmr.enc.in:  remove file.
7749
7750 2005-09-11  Graham Percival  <gpermus@gmail.com>
7751
7752         * Documentation/user/examples.itely: typo fix.  Thanks, Matevž
7753
7754 2005-09-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7755
7756         * mf/feta-banier.mf: make vertical stem 1/2 stemthickness wide to
7757         reduce aliasing effects.
7758
7759         * lily/tie-column.cc (set_chord_outlines): bugfix: insert complete
7760         box in skyline.
7761
7762 2005-09-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7763
7764         * lily/tie.cc (get_configuration): don't crash if left_dot is NULL.
7765
7766         * flower/include/real.hh: std::fabs too.
7767
7768 2005-09-08  Jan Nieuwenhuizen  <janneke@gnu.org>
7769
7770         * Documentation/user/lilypond.tely: Spell Baßtuba in UTF-8 (Werner). 
7771
7772         * lily, flower: Include C++ iso C headers.  Import namespace std
7773         throughout.
7774
7775         * lily/side-position-interface.cc: 
7776         * lily/scm-hash.cc: 
7777         * lily/note-head.cc: 
7778         * lily/include/includable-lexer.hh: 
7779         * flower/include/string-data.icc: Remove using std::*.
7780
7781         * lily, flower: Include C++ iso C headers.  Import namespace std
7782         throughout.
7783
7784         * lily/side-position-interface.cc: 
7785         * lily/scm-hash.cc: 
7786         * lily/note-head.cc: 
7787         * lily/include/includable-lexer.hh: 
7788         * flower/include/string-data.icc: Remove using std::*.
7789
7790         * Documentation/user/instrument-notation.itely (Entering lyrics):
7791         Multiple latin-1->utf-8 conversion fix.
7792
7793         * Documentation/user/*tely: Update Emacs cookie to utf-8.
7794
7795 2005-09-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7796
7797         * lily/tie.cc (get_configuration): also avoid dots for non-space
7798         situations.
7799
7800 2005-09-07  Jan Nieuwenhuizen  <janneke@gnu.org>
7801
7802         * Documentation/user/instrument-notation.itely: Bugfix.
7803
7804 2005-09-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7805
7806         * tex/GNUmakefile: don't install texinfo.tex
7807
7808         * tex/ : cleanup: remove unused files.
7809
7810         * lily/general-scheme.cc: remove my_{isinf,isnan}.
7811
7812         * flower/include/real.hh: using std::{isnan,isinf}
7813         
7814         * VERSION (PATCH_LEVEL): release 2.7.9
7815
7816 2005-09-05  Graham Percival  <gpermus@gmail.com>
7817
7818         * Documentation/user/ instrument-notation.itely,
7819         advanced-notation.itely: minor tweaks.
7820
7821         * input/test/script-chart.ly: add item padding.
7822
7823 2005-09-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7824
7825         * flower/offset.cc: use math.h iso. <cmath>
7826
7827         * scm/ps-to-png.scm (make-ps-images): use png16m again, for sake
7828         of IE users.
7829
7830         * scm/framework-eps.scm (dump-stencils-as-EPSes): cleanup.
7831         (widen-left-stencil-edges): new function. Fix alignment problems
7832         with LaTeX includegraphics.
7833
7834         * lily/text-interface.cc (interpret_markup): use abort().
7835
7836 2005-09-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7837
7838         * input/regression/tie-chord.ly (testLong): add a chord in 4ths
7839
7840         * lily/tie.cc (get_configuration): update bezier shape as we
7841         change Y positions.
7842         (get_configuration): don't move large ties if we're outside of the
7843         staff.
7844
7845 2005-09-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7846
7847         * scm/define-markup-commands.scm (strut): swap X and Y dims.
7848         
7849 2005-09-03  Jan Nieuwenhuizen  <janneke@gnu.org>
7850
7851         * .cvsignore: Add auto-generated configure files and then some.
7852
7853 2005-09-02  Jan Nieuwenhuizen  <janneke@gnu.org>
7854
7855         * scm/define-grobs.scm (DynamicLineSpanner): Add
7856         X-extent-callback.  Fixes hairpin-slur collision.
7857
7858 2005-08-31  Graham Percival  <gpermus@gmail.com>
7859
7860         * Documentation/user/advanced-notation.itely,
7861         basic-notation.itely: minor changes.
7862
7863 2005-08-31  Mats Bengtsson  <mabe@s3.kth.se>
7864
7865         * scm/framework-eps.scm (dump-stencils-as-EPSes): Insert a
7866         \linebreak between each .eps file if \betweenLilyPondSystem is
7867         undefined. 
7868
7869         * Documentation/user/lilypond-book.itely (Integrating LaTeX and
7870         music): Document the \linebreak
7871
7872         * Documentation/user/lilypond-book.itely,
7873         input/tutorial/lbook-latex-test.tex,
7874         Documentation/user/examples.itely: Remove \usepackage{graphics}
7875
7876 2005-08-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7877
7878         * mf/aybabtu.pe.in (i): don't merge alphabet into aybabtu.
7879
7880         * lily/ly-module.cc (make_stand_in_procs_weak): 1.6.4 and earlier
7881         compat bugfix.
7882
7883         * scripts/lilypond-book.py (PREAMBLE_LY): define
7884         inside-lilypond-book
7885         (modify_preamble): new function. Insert \RequirePackage{graphics}
7886         when no {graphics found in preamble.  
7887
7888 2005-08030  Graham Percival  <gpermus@gmail.com>
7889
7890         * Documentation/user/basic-notation.itely, global.itely,
7891         tutorial.itely: misc small changes.
7892
7893 2005-08-30  Jan Nieuwenhuizen  <janneke@gnu.org>
7894
7895         * stepmake/aclocal.m4: Include MY_PATCH_LEVEL in config.make's
7896         VERSION.
7897
7898 2005-08-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7899
7900         * lily/tie-column.cc (new_directions): put Tie down on center
7901         staff line. 
7902
7903         * lily/script-interface.cc (before_line_breaking): use
7904         Grob::programming_error
7905
7906         * scm/ps-to-png.scm (make-ps-images): use pngalpha device.
7907
7908         * scripts/lilypond-book.py (get_latex_textwidth): oops. Take [0]
7909         of splitext.
7910
7911 2005-08-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7912
7913         * VERSION (PACKAGE_NAME): VERSION release 2.7.8
7914
7915 2005-08-29  Werner Lemberg  <wl@gnu.org>
7916
7917         * mf/GNUmakefile: Add `-f' flag to `rm' command while removing
7918         the `*.scale.pfa' files to avoid warnings.
7919
7920 2005-08-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7921
7922         * lily/tempo-performer.cc (process_music): idem.
7923
7924         * lily/midi-def.cc (get_tempo): Rational to int conversion bug.
7925
7926 2005-08-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7927
7928         * Documentation/user/advanced-notation.itely (Text markup): not a
7929         fragment.
7930
7931         * lily/midi-item.cc (to_string): use to_int() iso. int cast.
7932
7933         * lily/staff-performer.cc (initialize): add tempo/name to
7934         audio_staff_
7935
7936
7937 2005-08-26  Graham Percival  <gpermus@gmail.com>
7938
7939         * Documentation/user/advanced.itely: add text-only example.
7940
7941         * Documentation/user/invoking.itely: add index entries for
7942         convert-ly.
7943
7944         * Documentation/user/ tutorial.itely, basic-notation.itely:
7945         small fixes suggested by Steve D.  Thanks!
7946
7947 2005-08-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7948
7949         * input/regression/markup-bidi-pango.ly: new file.
7950
7951         * lily/pango-font.cc (pango_item_string_stencil): make Mingw code
7952         standard. Remove #ifdef. Remove memleak.
7953         (text_stencil): use text_dir to decide how to composite items.
7954         (text_stencil): determine uniform text direction for the entire
7955         string.
7956
7957         * scripts/lilypond-book.py (output_name): remove
7958         latex_filter_cmd. Non-portable to non-Unix systems. 
7959         (get_latex_textwidth): use File.write and os.unlink() instead.
7960
7961         * THANKS: add Vicente & Trevor.
7962
7963         * lily/grob.cc (discretionary_processing): look up origin for
7964         programming_error too. 
7965
7966         * input/regression/tie-broken.ly: new file.
7967
7968         * lily/tie-column.cc (set_chord_outlines): set outline for line
7969         break case too.
7970         
7971 2005-08-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7972
7973         * lily/pango-font.cc (text_stencil): don't translate glyphs in
7974         unscaled transform, just translate stencils.
7975
7976         * ly/performer-init.ly: init timing to #t.  Fixes bar checks in
7977         MIDI.
7978
7979         * scm/define-markup-commands.scm (wordwrap-string): use
7980         text-direction
7981         (wordwrap-stencils): idem.
7982         (line): idem.
7983         (fill-line): idem.
7984         (wordwrap-stencils): translate last line to right for
7985         text-direction = LEFT.
7986
7987         * scm/define-grob-properties.scm (all-user-grob-properties): add
7988         text-direction.
7989
7990 2005-08-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
7991
7992         * lily/lily-parser.cc (Lily_parser): also copy output_basename_
7993         when copying a Lily_parser object.
7994
7995 2005-08-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7996
7997         * scm/define-markup-commands.scm (null): add null markup.
7998
7999 2005-08-25  Mats Bengtsson  <mabe@s3.kth.se>
8000
8001         * lily/item.cc: Add documentation of center-invisible
8002
8003 2005-08-24  Graham Percival  <gpermus@gmail.com>
8004
8005         * Documentation/user/advanced-notation.itely: add info about
8006         raising text.
8007
8008         * Documentation/user/programming-interface.itely: fix example
8009         involving raised text.
8010
8011 2005-08-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8012
8013         * lily/beam.cc (print): fix X start/end points of isolated
8014         beamlets.
8015
8016         * scm/output-ps.scm (grob-cause): escape spaces in URLs.
8017
8018         * lily/multi-measure-rest.cc (set_text_rods): new function.
8019
8020         * lily/vertical-align-engraver.cc (process_music): call
8021         Align_interface::set_axis(). This forces #'elements to be ordered,
8022         preventing random vertical reordering of staves.
8023
8024         * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
8025         add avoid-slur property. 
8026
8027         * Documentation/user/basic-notation.itely (Measure repeats): add
8028         countPercentRepeats example.
8029
8030         * Documentation/user/advanced-notation.itely (Other text markup
8031         issues): remove remark about normal-font.  We have \normal-text
8032
8033         * input/regression/tie-chord.ly: add note about remaining bugs.
8034
8035         * lily/tie.cc (print): try Tie_column::set_directions () if
8036         control-points not yet defined.
8037
8038 2005-08-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8039
8040         * lily/system-start-delimiter.cc (staff_brace): don't remove brace
8041         extent. This fixes braces falling out of the EPS bbox.
8042
8043         * mf/feta-beugel.mf (braces_per_font): make brace glyph align
8044         exactly to bbox.
8045
8046 2005-08-23  Graham Percival  <gpermus@gmail.com>
8047
8048         * {various} : change #up->#UP and #down->#DOWN.
8049
8050         * ly/titling-init.ly: Spacing fix when using printallheaders=##t.
8051
8052         * Documentation/user/advanced-notation.itely: clarify
8053         what objects handles text on a multimeasure rest.
8054
8055 2005-08-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8056
8057         * VERSION (PATCH_LEVEL): release 2.7.7
8058
8059 2005-08-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8060
8061         * make/lilypond-vars.make: set -dgs-font-load for "make web" 
8062
8063         * Documentation/topdocs/INSTALL.texi (Top): add GS bugfix requirement.
8064
8065         * input/regression/*.ly: formatting clean-up. Default layout
8066         before music expression.
8067
8068         * input/mutopia/R.Schumann/GNUmakefile (examples): switch off
8069         romanze28-2 example.
8070
8071         * scm/ps-to-png.scm: remove dir-re function.
8072         (make-ps-images): generate page names, instead of globbing them.
8073         This brings down LilyPond memory usage for make web by a factor
8074         10. 
8075
8076         * scripts/lilypond-book.py (Lilypond_snippet.png_is_outdated):
8077         don't use glob. With 3000 files, globbing
8078         Documentation/user/out-www/ can take too much time. 
8079         
8080         * lily/lily-guile.cc (gulp_file_to_string): take size argument.
8081
8082         * lily/general-scheme.cc (LY_DEFINE): take optional size argument.
8083
8084         * input/regression/tie-manual.ly: new file
8085
8086         * input/regression/tie-chord.ly: update.
8087
8088         * flower/include/interval.hh (struct Interval_t): 
8089
8090         * lily/tie.cc (distance): new function 
8091         (height): new function.
8092         (init): new function
8093         (Tie_details): new struct.
8094
8095         * lily/skyline.cc (skyline_height): new function.
8096
8097         * lily/tie-column.cc (set_chord_outlines): new function.
8098         (new_directions): read tie-configuration
8099
8100         * lily/skyline.cc: fix ASCII art.
8101         
8102 2005-08-22  Mats Bengtsson  <mabe@s3.kth.se>
8103
8104         * python/convertrules.py (string_or_scheme): Fix spelling error
8105
8106 2005-08-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8107         
8108         * lily/tie-column.cc (set_directions): set directions only once.
8109         (add_configuration): new function.
8110
8111         * lily/tie.cc (set_control_points): new function
8112
8113         * lily/tie-column.cc (new_directions): new function.
8114
8115         * ly/music-functions-init.ly: set 'pitch property
8116         iso. trill-pitch. This makes \relative work with \pitchedTrill
8117
8118         * lily/tie.cc (get_configuration): new function. Don't generate
8119         control points, rather, generate configuration.
8120         remove head-pair property.
8121
8122         * lily/include/tie.hh (struct Tie_configuration): new struct.
8123
8124 2005-08-22  Heikki Junes  <hjunes@cc.hut.fi>
8125
8126         * Documentation/topdocs/NEWS.tely: clarify.
8127
8128 2005-08-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8129
8130         * lily/tie.cc: remove minimum-length
8131
8132         * scm/define-grob-properties.scm (all-user-grob-properties):
8133         remove staffline-clearance, y-offset 
8134
8135         * input/regression/tie-dots.ly (Module): remove.
8136
8137         * lily/tie.cc (get_control_points): rewrite. Put short ties in
8138         staff-spaces, make long ties cross staff lines. Avoid flags and dots.
8139
8140         * input/regression/tie-single.ly: new file.
8141
8142 2005-08-21  Graham Percival  <gpermus@gmail.com>
8143
8144         * ly/bagpipe.ly: fix compile problem.
8145
8146 2005-08-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8147
8148         * lily/midi-item.cc (name): new method.
8149
8150         * lily/staff-performer.cc (acknowledge_audio_element): use
8151         signature of baseclass.
8152
8153         * lily/engraver-group.cc (do_announces): move recursion call out
8154         of while loop. 
8155
8156         * lily/drum-note-performer.cc (class Drum_note_performer): use
8157         process_music everywhere.
8158
8159         * ly/performer-init.ly: add default children everywhere.
8160
8161         * lily/paper-book.cc (output): call paper-book-write-midis
8162         directly: always write MIDI, even if no \layout {} block. 
8163
8164 2005-08-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8165
8166         * VERSION (PACKAGE_NAME): release 2.7.6
8167
8168         * lily/percent-repeat-engraver.cc (try_music): don't print warning
8169         about not being able to handle repeat.
8170
8171 2005-08-19  Jan Nieuwenhuizen  <janneke@gnu.org>
8172
8173         * Documentation/user/examples.itely (Piano templates):
8174         * lily/include/performer-group.hh: Remove last traces of
8175         Performer_group_performer.  Fixes make web.
8176
8177 2005-08-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8178
8179         * Documentation/user/examples.itely (Piano templates): change
8180         Engraver_group_engraver -> Engraver_group
8181
8182         * lily/ly-module.cc (make_stand_in_procs_weak): only kludge if
8183         scm_stand_in_procs is not weak_any.
8184
8185         * lily/volta-bracket.cc (print): don't use strcmp().
8186
8187         * lily/volta-engraver.cc (process_music): use
8188         Text_interface::is_markup() for setting the 'text property of the
8189         volta bracket.
8190
8191         * input/mutopia/claop.py (accents): update syntax to 2.6
8192
8193         * scm/define-context-properties.scm
8194         (all-user-translation-properties): add countPercentRepeats.
8195
8196         * Documentation/user/basic-notation.itely (Measure repeats): add
8197         isolated percent example.
8198
8199 2005-08-18  Graham Percival  <gpermus@gmail.com>
8200
8201         * input/ {various}: change direction #1, #-1 to
8202         #up/#down or \fooUp, \fooDown.
8203
8204         * Documentation/user/music-glossary.tely: #-1 to #down.
8205
8206         * ly/bagpipe.ly, engraver-init.ly, property-init.ly: #1
8207         to #up, #-1 to #down.
8208
8209 2005-08-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8210
8211         * lily/include/engraver-group.hh: rename.
8212
8213         * lily/include/performer-group.hh: rename.
8214
8215 2005-08-18  Mats Bengtsson  <mabe@s3.kth.se>
8216
8217         * input/test/script-abbreviations.ly: Removed some old LaTeX
8218         left overs.
8219
8220 2005-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
8221
8222         * python/convertrules.py (conv): inside-slur -> avoid-slur.
8223         Remove functions.  Remove if 1: constructs, reindent.
8224
8225         * scripts/convert-ly.py (add_version): Add functions from
8226         convertrules.py
8227
8228         * scm/script.scm (default-script-alist):
8229         s/priority/script-priority.  Fixes script stacking.  Backportme.
8230         (Fermata): Very low priority.
8231
8232 2005-08-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8233
8234         * input/regression/*.ly: remove superfluous \score blocks. Reindent.
8235
8236         * input/regression/slur-script.ly: remove padding tweaks. Add
8237         comment strings.
8238
8239         * lily/note-spacing.cc (get_spacing): remove kludge for EOL wide
8240         time sigs and related stuff.
8241
8242         * scm/define-grob-properties.scm (all-user-grob-properties): add
8243         @code{} tags to property description.
8244
8245         * lily/include/line-group-group-engraver.hh (Module): remove file.
8246
8247         * python/convertrules.py (conv): add rule for
8248         Engraver_group_engraver -> Engraver_group.
8249
8250         * lily/include/performer-group-performer.hh: analogous.
8251
8252         * lily/include/engraver-group-engraver.hh: rename to Engraver_group.
8253
8254         * lily/context-def.cc (instantiate): check for
8255         Engraver_group_engraver and Performer_group_performer not
8256         Engraver/Performer. Fixes crashes when doing \with { \consists .. }
8257  
8258 2005-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
8259
8260         * input/les-nereides.ly: Remove three fingering tweaks, update
8261         remaining one.
8262
8263         * input/regression/slur-script-inside.ly: Update, fix doc.
8264
8265         * scm/script.scm: Update to avoid-slur.
8266
8267         * scm/define-grob-properties.scm (avoid-slur): New property.
8268
8269         * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
8270         * lily/slur-engraver.cc (acknowledge_extra_object): Invoke
8271         outside_slur_callback if avoid-slur != #'inside.
8272
8273         * scm/define-grobs.scm (Fingering, Textscript): No
8274         inside-slur/outside-slur preference.
8275         (DynamicLineSpanner): Always outside slur.
8276
8277         * input/regression/slur-script.ly: More tests.
8278
8279 2005-08-17  Graham Percival  <gpermus@gmail.com>
8280
8281         * Documentation/user/lilypond-book: fix notime entry.
8282
8283         * Documentation/user/advanced-notation.itely: add info on
8284         getting an I rehearsal mark.
8285
8286         * Documentation/user/putting.itely: reinstate "I", re-enforce
8287         the fact that \override numbers are the result of
8288         experimentation and personal taste.
8289
8290         * Documentation/user/invoking.itely: update convert-ly bugs.
8291
8292 2005-08-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8293
8294         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set timing
8295         to #t.
8296
8297         * lily/timing-translator.cc (initialize): don't initialize timing.
8298
8299         * input/regression/stem-spacing.ly (Module): remove file.
8300
8301         * input/regression/spacing-stick-out.ly: specify Score context for
8302         \override
8303
8304         * input/regression/clefs.ly: remove spurious {}s 
8305
8306 2005-08-17  Heikki Junes  <hjunes@cc.hut.fi>
8307
8308         * Documentation/topdocs/NEWS.tely,
8309         input/regression/repeat-percent-count.ly: clarify a bit.
8310
8311 2005-08-16  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8312
8313         * input/no-notation/display-lily-tests.ly: delete
8314         display-lily-init call.
8315
8316         * ly/music-functions-init.ly (displayLilyMusic): move
8317         display-lily-init call at top level, so that the user should not
8318         have to call it.
8319
8320         * scm/define-music-display-methods.scm (note-name->lily-string):
8321         retrieve note names directly from pitchnames using new function `rassoc'.
8322         (display-lily-init): note names list construction removed.
8323
8324 2005-08-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8325
8326         * THANKS: spello.
8327
8328         * lily/lily-parser.cc (get_header): copy module, instead of
8329         returning it.
8330
8331         * Documentation/topdocs/NEWS.tely (Top): add entry for percent
8332         counters.
8333
8334         * Documentation/user/basic-notation.itely (Measure repeats): add
8335         links to Counter grobs.
8336
8337         * scm/define-grobs.scm (all-grob-descriptions): add
8338         DoublePercentRepeatCounter
8339         (all-grob-descriptions): add PercentRepeatCounter
8340
8341         * lily/percent-repeat-engraver.cc (class Percent_repeat_engraver):
8342         also create counter grobs.
8343
8344         * lily/separation-item.cc (extremal_break_aligned_grob): don't
8345         return grob without space-alist.
8346
8347         * input/proportional.ly: tune staff-padding.
8348
8349         * input/regression/repeat-percent-count.ly: new file. 
8350
8351 2005-08-16  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8352
8353         * input/no-notation/display-lily-tests.ly: moved from
8354         input/regression/ to input/no-notation. Be sure to call
8355         `display-lily-init' before trying to use the display function.
8356
8357 2005-08-16  Mats Bengtsson  <mabe@s3.kth.se>
8358
8359         * scripts/lilypond-book.py (option_definitions): Don't localize
8360         the empty string. Fixes bug when --psfonts was used with
8361         non-English locale.
8362
8363 2005-08-15  Graham Percival  <gpermus@gmail.com>
8364
8365         * lily/tuplet-bracket.cc: simple build fix.
8366
8367         * Documentation/user/putting.itely: use "we" instead of "I".
8368
8369         * Documentation/user/basic-notation.itely: cautionary accidentals
8370         work with naturals, too.
8371
8372 2005-08-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8373
8374         * lily/tuplet-bracket.cc (calc_position_and_height): add
8375         staff-padding support.
8376
8377         * input/proportional.ly: set staff-padding.
8378         
8379         * VERSION (PATCH_LEVEL): release 2.7.5
8380
8381         * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): text formatting
8382         fixes. Remove tweaks.
8383
8384         * input/regression/tuplet-slope.ly: add a test case.
8385
8386         * lily/tuplet-bracket.cc (calc_position_and_height): revert
8387         erroneous fix. Add spanner bounds to offset array with relative X
8388         positions.
8389
8390         * ly/engraver-init.ly: add Rest_engraver only once.
8391
8392         * scm/define-music-display-methods.scm (KeyChangeEvent): only do
8393         (*parser*) lookup if (*parser*) != #f.
8394
8395 2005-08-15  Jan Nieuwenhuizen  <janneke@gnu.org>
8396
8397         * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
8398         Cut-and paste update.
8399
8400         * input/regression/slur-script.ly: Add example of reverting
8401         inside-slur for fingering.
8402
8403         * scm/define-grobs.scm (DynamicLineSpanner, Fingering,
8404         TextScript): Explicitly set inside-slur #f, forcing these out of slur.
8405
8406         * lily/slur-engraver.cc (acknowledge_extra_object): Only invoke
8407         outside_slur_callback if inside-slur == #f (as opposed to unset).
8408
8409 2005-08-14  Jan Nieuwenhuizen  <janneke@gnu.org>
8410
8411         * tex/GNUmakefile (INSTALLATION_FILES): Remove enc symlink setup,
8412         encoding files are already removed.
8413
8414 2005-08-15  Mats Bengtsson  <mabe@s3.kth.se>
8415
8416         * Documentation/user/advanced-notation.itely (Instrument names):
8417         Document a workaround for instrument names that collide with
8418         system start braces/brackets.
8419
8420 2005-08-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8421
8422         * lily/rest-collision.cc (do_shift): spello.
8423
8424         * input/proportional.ly: use #'used property. Set break-overshoot
8425         property.
8426
8427         * mf/feta-arrow.mf: center on arrow tip center, iso. tip edge.
8428
8429         * lily/paper-column.cc: add #'used property
8430
8431         * lily/mark-engraver.cc (stop_translation_timestep): set grob
8432         array for staves found.
8433
8434         * lily/metronome-engraver.cc (stop_translation_timestep): set grob
8435         array for stavesFound.
8436
8437         * lily/staff-spacing.cc (next_note_correction): add fixed and
8438         space to calling convention. This fixes spacing of accidentals
8439         after barlines.
8440
8441         * input/regression/spacing-accidental-stretch.ly: add barline -
8442         accidental case.
8443
8444         * scm/framework-ps.scm (page-header): add version number to
8445         creator
8446         (eps-header): idem.
8447
8448         * mf/feta-bolletjes.mf: swap d0 and u0 fa heads.
8449         
8450 2005-08-13  Graham Percival  <gpermus@gmail.com>
8451
8452         * Documentation/user/global.itely: add "fit as much as
8453         possible onto this page" example (Vertical spacing).
8454
8455 2005-08-13  Jan Nieuwenhuizen  <janneke@gnu.org>
8456
8457         * *: Nitpick run.
8458
8459         * buildscripts/fixcc.py: Fixes.
8460
8461 2005-08-12  Graham Percival  <gpermus@gmail.com>
8462
8463         * Documentation/user/advanced-notation.itely: add markup
8464         example to Text spanners.
8465
8466 2005-08-12  Mats Bengtsson  <mabe@s3.kth.se>
8467
8468         * Documentation/user/basic-notation.itely (Ties): Add example of
8469         tying a tremolo to a chord. Thanks to Steve Doonan. 
8470
8471         * lily/tie-engraver.cc: Add tieWaitForNote to the list of read
8472         properties and move tieMelismaBusy to the list of written
8473         properties. 
8474
8475 2005-08-12  Heikki Junes  <hjunes@cc.hut.fi>
8476
8477         * po/TODO: suggest to use a dedicated tool like kbabel.
8478
8479         * po/fi.po: update using kbabel.
8480
8481 2005-08-12  Jan Nieuwenhuizen  <janneke@gnu.org>
8482
8483         * *: Remove obsolete files.  Nitpick run.
8484
8485         * lily/lily-guile.cc (parse_symbol_list): Bugfix.
8486
8487 2005-08-11  Jan Nieuwenhuizen  <janneke@gnu.org>
8488
8489         * mf/GNUmakefile (get-*-fonts): Rename from get-*-pfa.  Copy SVG
8490         too.
8491
8492         * Documentation/topdocs/NEWS.tely (Top): Add slur script feature.
8493
8494         * lily/lily-guile.cc (parse_symbol_list): Rewrite.  Grok multiple
8495         whitespace as symbol separator.
8496
8497         * lily/side-position-interface.cc: Add slur-padding.
8498
8499         * input/regression/slur-script.ly: Fixed.  Backportme?  This is
8500         quite a large fix, and it never worked in a stable release; so not
8501         really a regression.
8502
8503         * lily/phrasing-slur-engraver.cc (class Phrasing_slur_engraver):
8504         Update cut and paste code from Slur_engraver.
8505
8506         * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
8507         Add.
8508
8509         * scm/define-grobs.scm (DynamicLineSpanner): Add
8510         dynamic-line-spanner-interface.
8511         (DynamicLineSpanner, TextScript, Fingering): Add slur-padding.
8512
8513 2005-08-09  Jan Nieuwenhuizen  <janneke@gnu.org>
8514
8515         * lily/slur-engraver.cc (acknowledge_extra_object): Bugfix: use
8516         to_boolean () so that non-set 'inside-slur means false.
8517
8518         * lily/slur.cc (outside_slur_callback): Bugfixes: make sure that
8519         slur has control-points.  Skip script without direction.  Always
8520         do_shift if script inside slur, even if slur not contained in
8521         script y-extent.  Increment k in loop.
8522
8523 2005-08-11  Mats Bengtsson  <mabe@s3.kth.se>
8524
8525         * scm/define-markup-commands.scm: Improved regexp to search for
8526         EPS bounding boxes and corrected call to ly:warning.
8527
8528 2005-08-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8529
8530         * Documentation/user/programming-interface.itely (Displaying music
8531         expressions): doc for \displayLilyMusic. Also some precisions in
8532         "Markup construction in Scheme"
8533
8534 2005-08-10  Mats Bengtsson  <mabe@s3.kth.se>
8535
8536         * scm/define-markup-commands.scm (normal-text): Added 2 new
8537         markup commands, \normal-text and \medium (the latter thanks to
8538         Bruce Fairchild). 
8539
8540 2005-08-08  Graham Percival  <gpermus@gmail.com>
8541
8542         * Documentation/user/programming-interface.itely: fix @{ @}.
8543
8544         * scm/define-markup-commands.scm: add linewidth info to
8545         \justify and \wordwrap, add "upright is the opposite of italic".
8546
8547         * Documentation/user/advanced-notation.itely: shaped->shape,
8548         add (cons (markup "foo")) type of example to text markup,
8549         reword multi-measure rests section.
8550
8551         * lily/note-heads-engraver.cc: changed Shaped->Shape in a
8552         comment.  No actual code was touched.
8553
8554         * Documentation/user/invoking.itely: add more info about
8555         \include.  Thanks, Bruce!
8556
8557         * THANKS: add Bruce Fairchild, alphabetise.
8558
8559         * Documentation/user/global.itely: document \score{\header{}}
8560         behavior.
8561
8562         * Documentation/user/basic-notation.itely: reword multi-measure
8563         rest discussion in Rests.
8564
8565 2005-08-08  Mats Bengtsson  <mabe@s3.kth.se>
8566
8567         * Documentation/user/programming-interface.itely (Markup
8568         construction in Scheme): Corrected example and tried to clarify
8569         the implicit \line in the table.
8570
8571 2005-08-07  Graham Percival  <gpermus@gmail.com>
8572
8573         * Documentation/user/instrument-notation.itely: moved
8574         some bagpipe info back into the bagpipe section.  Somehow
8575         it ended up in the "other vocal issues" section?!  :o_O
8576
8577 2005-08-07  Jan Nieuwenhuizen  <janneke@gnu.org>
8578
8579         * scm/framework-ps.scm (dir-join): Rename from path-join (joins
8580         directories, not paths).
8581
8582 2005-08-06  Jan Nieuwenhuizen  <janneke@gnu.org>
8583
8584         * scm/framework-ps.scm (munge-lily-font-name): Bugfix: Munge only
8585         plain emmentaler/aybabtu.  Backportme.
8586
8587         * lily/tuplet-bracket.cc (calc_position_and_height): Bugfix:
8588         missing dir correction.
8589
8590 2005-08-05  Graham Percival  <gperlist@shaw.ca>
8591
8592         * scm/define-markup-commands: fix reversed justify/wordwrap
8593         doc strings.
8594
8595 2005-08-05  Jürgen Reuter  <reuter@ipd.uka.de>
8596
8597         * lily/ligature-engaver.cc, lily/coherent-ligature-engaver.cc,
8598         lily/gregorian-ligature-engaver.cc,
8599         lily/include/ligature-engraver.hh,
8600         lily/include/coherent-ligature-engraver.hh,
8601         lily/include/gregorian-ligature-engraver.hh: make these classes
8602         truely abstract.  This should fix some internal oddities such as
8603         duplicate as well as dead translator/property declarations, and
8604         also some dead code.
8605
8606         * lily/ligature-bracket-engraver.cc, lily/ligature-engraver.cc:
8607         bugfix: avoid message "junking empty ligature" on ligature
8608         brackets by collecting dummy grobs.
8609
8610 2005-08-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8611
8612         * lily/tuplet-bracket.cc (print): default right overshoot to 0.0
8613
8614         * input/proportional.ly (staffKind): bugfix.
8615         (staffKind): updates by Trevor Baca.
8616
8617         * scm/define-grobs.scm (all-grob-descriptions): remove arrows as
8618         default layout. 
8619
8620         * lily/tuplet-bracket.cc (print): check whether edge-text is a
8621         pair.
8622
8623         * lily/beam.cc (rest_collision_callback): call position_beam() if
8624         necessary.
8625
8626         * VERSION: release 2.7.4
8627
8628         * input/regression/spacing-uniform-stretching.ly: new file.
8629
8630         * lily/spacing-loose-columns.cc (set_loose_columns): use robust_relative_extent().
8631
8632         * Documentation/topdocs/NEWS.tely (Top): add Nicolas as
8633         contributor.
8634
8635         * lily/include/ly-module.hh: define MODULE_GC_KLUDGE globally.
8636
8637         * input/proportional.ly: new file.
8638
8639         * lily/tuplet-bracket.cc (after_line_breaking): don't suicide if
8640         columns is empty
8641
8642         * lily/tuplet-engraver.cc (finalize): new function. Reset right
8643         bounds to currentCommandColumn for the last step.
8644         (start_translation_timestep): if tupletFullLength is set, set
8645         bound to Paper Column
8646
8647         * input/regression/tuplet-full-length.ly (indent): new file.
8648
8649         * lily/spacing-loose-columns.cc (set_loose_columns): space a whole
8650         clique of loose columns, eg. a set of grace notes in strict
8651         notespacing.
8652
8653         * input/regression/spacing-strict-spacing-grace.ly: new file.
8654
8655         * lily/key-signature-interface.cc: change property name to
8656         alteration-alist
8657
8658         * lily/key-engraver.cc (read_event): read keyAlterationOrder, not
8659         keyAccidentalOrder
8660
8661         * python/convertrules.py (conv): keyAccidentalOrder ->
8662         keyAlterationOrder
8663
8664         * lily/key-engraver.cc (create_key): always print a cancellation
8665         for going to C-major/A-minor, regardless of printKeyCancellation.
8666         (create_key): remove typecheck for visibility. This fixes key
8667         signature not being printed.
8668
8669         * lily/spacing-determine-loose-columns.cc: new file.
8670
8671         * input/regression/spacing-strict-notespacing.ly: new file.
8672
8673         * lily/spacing-spanner.cc (generate_springs): rename from
8674         do_measure. 
8675         (generate_pair_spacing): new function.
8676         (init, generate_pair_spacing): set between-cols for floating
8677         nonmusical columns.
8678
8679         * lily/spaceable-grob.cc (get_spring): new function. 
8680
8681         * lily/tuplet-bracket.cc (print): on the left, the overshoot is
8682         relative to the right edge of the prefatory matter.
8683
8684         * lily/beam.cc (print): read break-overshoot to determine where to
8685         stop/start broken beams.
8686
8687         * input/regression/spanner-break-overshoot.ly: new file.
8688
8689 2005-08-04  Graham Percival  <gperlist@shaw.ca>
8690
8691         * ly/bagpipe.ly: updated.
8692
8693         * Documentat/user/instrument.itely: un-comment out bagpipe example.
8694
8695 2005-08-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8696
8697         * lily/dynamic-engraver.cc (acknowledge_slur): add slur to
8698         support: now (de)crescs avoid slurs as well.
8699
8700         * Documentation/user/instrument-notation.itely (Bagpipe example):
8701         comment out non-functioning bagpipe example.
8702         (Bagpipe definitions): idem.
8703
8704         * Documentation/topdocs/NEWS.tely (Top): add uniform-stretching example.
8705         (Top): add proportionalNotationDuration example.
8706
8707         * input/regression/spacing-proportional.ly: new file.
8708
8709         * lily/tuplet-bracket.cc (parallel_beam): broken bracket never is
8710         synched to a beam.
8711
8712         * lily/beam.cc (shift_region_to_valid): divide by zero fix. This
8713         fixes beams with a single stem (eg. beams across linebreaks.)
8714
8715         * lily/parser.yy (simple_string): allow \new STRING_IDENTIFIER.
8716
8717         * flower/rational.cc (operator +): prevent overflow. This fixes
8718         heavily nested tuplets.
8719
8720         * lily/auto-beam-engraver.cc (derived_mark): new method. Yes. We
8721         have to protect even those unlikely to be corrupted data members.  
8722
8723 2005-08-04  Graham Percival  <gperlist@shaw.ca>
8724
8725         * ly/bagpipe.ly: new file.
8726
8727         * THANKS: added Sven Axelsson.
8728
8729 2005-08-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8730
8731         * lily/spacing-engraver.cc (stop_translation_timestep): directly
8732         copy proportionalNotationDuration into currentMusicalColumn if
8733         set.
8734
8735         * lily/spacing-spanner.cc (musical_column_spacing): if
8736         uniform-stretching set, fixed space is 0.0
8737
8738         * input/regression/spacing-multi-tuplet.ly: show
8739         uniform-stretching property.
8740
8741         * lily/spacing-spanner.cc (effective_shortest_duration): new function.
8742
8743         * lily/include/spacing-spanner.hh (class Spacing_spanner): new file.
8744         (struct Spacing_options): new struct.
8745
8746         * lily/spacing-basic.cc: new file.
8747
8748         * lily/spacing-spanner.cc (note_spacing): remove outdated code:
8749         delta_t doesn't have to be smaller than shortest_playing_len
8750
8751 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8752
8753         * input/regression/markup-arrows.ly:  new file.
8754
8755         * lily/tuplet-bracket.cc: document new behavior.
8756
8757         * input/regression/tuplet-broken.ly: new file. Demonstrate tuplets
8758         with line breaks.
8759
8760         * scm/define-markup-commands.scm (arrow-head): arrow-head markup command.
8761
8762         * scm/define-grobs.scm (all-grob-descriptions): set arrows as
8763         default 
8764
8765         * lily/tuplet-bracket.cc: add edge-text property.
8766         add break-overshoot.
8767         (print): read break-overshoot.
8768         (print): read edge-text, add stencils.
8769
8770         * mf/feta-arrow.mf: new file.
8771
8772         * mf/feta-generic.mf: add feta-arrow.
8773
8774 2005-08-03  Mats Bengtsson  <mabe@s3.kth.se>
8775
8776         * Documentation/user/lilypond-book.itely (An example of a
8777         musicological document): Added flag -o to dvips for people who use
8778         the default setting in teTeX where output is sent to the printer. 
8779
8780         * Documentation/user/global.itely (Vertical spacing): Added
8781         reference to the Axis_group_engraver which documents the *Extent
8782         properties.
8783
8784 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8785
8786         * Documentation/user/basic-notation.itely (Tuplets): add note
8787         about nested tuplets. Remove BUG. 
8788
8789         * input/regression/tuplet-nest.ly: update: remove manual hack. 
8790
8791         * lily/tuplet-bracket.cc (print): use robust_scm2drul
8792         (print): manually call print() for subtuplets.
8793         (calc_position_and_height): add subtuplets to the
8794         support. Vertically shift outer tuplet 
8795
8796         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): set
8797         remove-first for Lyrics, ChordNames and FiguredBass
8798
8799         * scm/define-grob-properties.scm (all-internal-grob-properties):
8800         use ly:grob-array? iso. grob-list?
8801         (all-internal-grob-properties): add tuplets grob-array.
8802
8803         * lily/tuplet-bracket.cc (add_tuplet_bracket):
8804         new function
8805
8806 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8807
8808         * input/test/time-signature-staff.ly: new file.
8809
8810         * ly/declarations-init.ly (center): escape to Scheme. Fixes
8811         spurious #<Music FingerEvent> errors. Backportme.
8812
8813 2005-08-03  Mats Bengtsson  <mabe@s3.kth.se>
8814
8815         * Documentation/user/programming-interface.itely (Markup
8816         construction in Scheme): Corrected markup syntax in the
8817         translation table.
8818
8819 2005-08-03  Graham Percival  <gperlist@shaw.ca>
8820
8821         * Documentation/user/instrument-notation.itely: small update
8822         to bagpipe notation docs; thanks Sven!
8823
8824         * Documentation/user/basic-notation.itely: add link about trills.
8825
8826 2005-08-02  Graham Percival  <gperlist@shaw.ca>
8827
8828         * Documentation/user/music-glossary: remove accidentally committed
8829         fink patch.
8830
8831 2005-08-02  Yoshinobu Ishizaki  <isizaki@mte.biglobe.ne.jp>
8832
8833         * lily/lily-parser.cc (get_header): new function. Enable multiple
8834         \header definitions.
8835
8836         * lily/parser.yy (lilypond_header_body): use get_header.
8837
8838         * ly/init.ly:
8839         * scm/lily-library.scm (print-score-with-defaults): renamed
8840         $globalheader to $defaultheader
8841             
8842         * Documentation/user/global.itely (Creating titles): added short
8843         explanation that multiple headers are useable.
8844
8845
8846 2005-08-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8847
8848         * lily/module-scheme.cc (LY_DEFINE): new file. 
8849
8850         * Documentation/user/advanced-notation.itely (Font selection): add
8851         doco for make-pango-font-tree.
8852
8853 2005-07-31  Graham Percival  <gperlist@shaw.ca>
8854
8855         * Documentation/user/music-glossary: more languages
8856         for tenuto.
8857
8858         * Docuemntation/user/instrument-notation.itely: minor
8859         update for bagpipe example.
8860
8861 2005-07-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8862
8863         * input/regression/+.ly (TODO): add some text.
8864
8865 2005-07-28  Graham Percival  <gperlist@shaw.ca>
8866
8867         * Documentation/user/invoking.itely: \score begins with music.
8868
8869         * Documentation/user/ basic-notation.itely,
8870         instrument-notation.itely: minor changes.
8871
8872         * Documentation/user/music-glossary.itely: began tenuto entry.
8873
8874 2005-07-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8875
8876         * scm/output-socket.scm (bezier-sandwich): add bezier-sandwich
8877
8878         * mf/feta-bolletjes.mf: swap up and down for aiken heads.
8879
8880 2005-07-27  Graham Percival  <gperlist@shaw.ca>
8881
8882         * Documentation/user/examples.itely: remove bagpipe template.
8883
8884         * Documentation/user/instrument-notation.itely: add bagpipe
8885         section, maybe fix quotes in lyrics.  I hate text encoding.
8886         Clarify chord durations, more bagpipe stuff.
8887
8888 2005-07-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8889  
8890         * lily/accidental-engraver.cc: formatting fixes.
8891
8892         * lily/spacing-spanner.cc (prune_loose_columns): right-items is a
8893         grob-array.
8894
8895         * lily/arpeggio.cc (print): suicide arpeggio for single notehead.
8896
8897         * lily/note-column.cc (arpeggio): new function.
8898
8899         * lily/note-spacing.cc (get_spacing): also take arpeggio into
8900         account for spacing.
8901
8902 2005-07-25  Jan Nieuwenhuizen  <janneke@gnu.org>
8903
8904         * lily/main.cc (sane_setenv)[!ARGV0_RELOCATION]: Also define.
8905         (setup_guile_env): Use it instead of nonstandard setenv.  Fixes
8906         mingw build.
8907         
8908 2005-07-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8909
8910         * scm/lily.scm (lilypond-all): clear anonymous modules after
8911         processing files.
8912
8913 2005-07-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8914
8915         * flower/include/guile-compatibility.hh (SCM_I_CONSP): add
8916         SCM_I_CONSP
8917
8918         * VERSION: 2.7.3 released
8919
8920         * Documentation/user/invoking.itely (Invoking lilypond): add
8921         LILYPOND_GC_YIELD documentation.
8922
8923         * lily/*: cleanups: use scm_from_int iso. scm_int2num. Idem for
8924         scm_from_real / scm_make_real.
8925
8926         * lily/main.cc (setup_guile_env): new function. Set GC min_yields
8927         higher. This increases memory footprint, but provides overall
8928         speedup of 15 to 20%. 
8929
8930         * lily/include/translator.hh (class Translator): remove
8931         PRECOMPUTED_VIRTUAL everywhere.
8932
8933         * lily/include/lily-guile.hh: inline scm_c[ad]r, scm_is_pair.
8934
8935         * lily/context.cc (now_mom): non-recursive now_mom() 
8936
8937         * lily/include/profile.hh: new file.
8938
8939         * lily/profile.cc: new file.
8940
8941         * lily/grob.cc (Grob::Grob): look properties up directly.
8942
8943         * lily/open-type-font.cc (get_indexed_char): cache index -> bbox
8944         lookups.
8945
8946         * lily/include/box.hh (class Box): smob Box type.
8947
8948         * lily/smobs.cc (protect_smob): O(1) GC (un)protection.
8949
8950         * lily/include/smobs.hh (DECLARE_BASE_SMOBS): add methods
8951         protect() and unprotect(). Use throughout.
8952
8953 2005-07-24  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8954
8955         * Documentation/topdocs/NEWS.tely: new item for \displayLilyMusic
8956
8957         * scm/define-music-display-methods.scm (markup->lily-string):
8958         markup elements can also be strings (without simple-markup
8959         appended)
8960
8961 2005-07-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8962
8963         * lily/context.cc (where_defined): also assign value in
8964         where_defined().
8965
8966         * lily/bezier.cc (get_other_coordinate): use curve_coordinate
8967         (curve_coordinate): new function
8968
8969         * lily/simple-spacer.cc (add_columns): only add rods between
8970         column i and begin/end if keep-inside-line is set (this repleces
8971         allow-outside-line as default)
8972
8973 2005-07-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8974
8975         * lily/tuplet-engraver.cc (start_translation_timestep): only read
8976         tupletSpannerDuration if applicable.
8977
8978         * lily/font-size-engraver.cc (process_music): read fontSize only
8979         once per timestep.
8980
8981         * lily/engraver*cc: use throughout.
8982         
8983         * lily/include/translator.icc (ADD_ACKNOWLEDGER): new macro.
8984
8985         * lily/translator.cc (add_acknowledger): new file. Directly jump
8986         into an Engraver::acknowledge_xxx () method based on a grobs
8987         interface-list.
8988
8989         * lily/include/translator-dispatch-list.hh (class
8990         Engraver_dispatch_list): new struct, new file.
8991
8992         * scm/define-context-properties.scm
8993         (all-internal-translation-properties): remove acceptHashTable,
8994         acknowledgeHashTable
8995
8996         * lily/translator-group.cc (mark_smob): idem for acceptHashTable.
8997
8998         * lily/engraver-group-engraver.cc (Engraver_group_engraver):
8999         change acknowledgeHashTable to C++ member. 
9000
9001         * lily/rest-collision.cc (do_shift): use extract_grob_set().
9002
9003 2005-07-22  Nicolas Sceaux  <nicolas.sceaux@free.fr>
9004
9005         * scm/display-lily.scm: new file. Define a `display-lily-music'
9006         function, that displays the music expression given as an argument,
9007         using LilyPond notation.
9008
9009         * scm/define-music-display-methods.scm: new file. Implementation
9010         of display methods for each music type.
9011
9012         * ly/music-functions-init.ly (displayLilyMusic): new function for
9013         displaying music with LilyPond notation.
9014
9015         * input/regression/display-lily-tests.ly: new regression test file
9016         for `display-lily-music'.
9017
9018         * scm/markup.scm: remove obsolete debugging code (for printing
9019         markups with LilyPond notation).
9020
9021         * scm/define-music-types.scm (music-name-to-property-table):
9022         * scm/clef.scm (supported-clefs): export, in order to be accessible
9023         from the (scm display-lily) module.
9024
9025 2005-07-22  Jan Nieuwenhuizen  <janneke@gnu.org>
9026
9027         * Documentation/topdocs/NEWS.tely (Top): Typo.
9028
9029 2005-07-22  Heikki Junes  <hjunes@cc.hut.fi>
9030
9031         * Documentation/index.html.in, Documentation/texinfo.css,
9032           stepmake/bin/text2html.py, buildscripts/mutopia-index.py,
9033           Documentation/bibliography/index.html.in,
9034           Documentation/bibliography/html-long.bst: revert css-width patch,
9035           it does not work with IE6.
9036
9037 2005-07-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9038
9039         * Documentation/texinfo.css: revert 760px hack. 
9040
9041         * VERSION: release 2.7.2
9042
9043         * Documentation/topdocs/NEWS.tely (Top): mention barNumberCheck
9044
9045         * Documentation/user/basic-notation.itely (Barnumber check): add
9046         section.
9047
9048         * scm/music-functions.scm (skip-to-last): new function. Show only
9049         last showLastLength part of the \score.
9050
9051         * lily/moment-scheme.cc (LY_DEFINE): new function ly:moment-sub
9052
9053         * python/convertrules.py (conv): add ly:x-moment rule
9054
9055         * lily/moment-scheme.cc (LY_DEFINE): rename ly:X-moment  -> ly:moment-X
9056
9057         * Documentation/topdocs/NEWS.tely (Top): add new feature.
9058
9059         * Documentation/user/instrument-notation.itely (Flexibility in
9060         alignment): options in subsections.
9061
9062         * lily/lyric-engraver.cc (process_music): don't typeset text for _
9063         syllable text. Instead, assume that the previous lyric text is a
9064         melismated text.
9065
9066         * Documentation/index.html.in: revert 800x600 change.
9067
9068 2005-07-19  Jan Nieuwenhuizen  <janneke@gnu.org>
9069
9070         * lily/main.cc (main): Remove invalid handle kludge.
9071
9072         * scm/lily.scm (running-from-gui?): WINDOWS: check -dgui.
9073         (lambda): add gui define.
9074
9075 2005-07-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9076
9077         * Documentation/topdocs/NEWS.tely (Top): add note about Musica ficta.
9078
9079         * Documentation/user/instrument-notation.itely (Musica ficta
9080         accidentals): add section Musica ficta accidentals
9081
9082         * lily/accidental-engraver.cc (make_suggested_accidental): new
9083         function.
9084         (make_standard_accidental): move into new function.
9085         (create_accidental): new function.
9086
9087         * scm/define-grobs.scm (all-grob-descriptions): new Grob
9088         AccidentalSuggestion
9089
9090         * lily/output-def-scheme.cc (LY_DEFINE): take default  argument.
9091
9092         * lily/output-def.cc (lookup_variable): return SCM_UNDEFINED if
9093         undefined.
9094
9095         * Documentation/user/global.itely (Page formatting): document
9096         horizontalshift.
9097
9098         * scm/page-layout.scm (default-page-music-height):
9099         horizontalshift: new variable, shift all systems by
9100         horizontalshift to the right, to make space for instrument names.
9101
9102         * scm/paper.scm (set-paper-dimension-variables): add horizontalshift
9103
9104         * lily/input-scheme.cc (LY_DEFINE): take format commands.
9105
9106 2005-07-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9107
9108         * lily/note-column.cc (dir): idem.
9109
9110         * lily/spacing-spanner.cc (Module): idem.
9111
9112         * lily/script-column.cc (before_line_breaking): use extract_grob_set()
9113
9114         * lily/include/paper-column.hh (class Paper_column): add
9115         non-static get_rank() member.
9116
9117         * VERSION: release 2.7.1
9118         
9119         * scm/framework-null.scm: new file, used for benchmarking.
9120
9121 2005-07-20  Heikki Junes  <hjunes@cc.hut.fi>
9122
9123         * Documentation/topdocs/INSTALL.texi, configure.in: fix
9124         version dependencies for fontforge and gs.
9125
9126         * Documentation/index.html.in, Documentation/texinfo.css,
9127         stepmake/bin/text2html.py, buildscripts/mutopia-index.py,
9128         Documentation/bibliography/index.html.in, 
9129         Documentation/bibliography/html-long.bst: optimize width of
9130         html for a 800x600 screen (width:760), increases printability
9131         when 'fit to page' is not set and readability in wide screens.
9132
9133         * stepmake/bin/add-html-footer.py: add missing </p>.
9134
9135 2005-07-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9136
9137         * scm/define-markup-commands.scm (beam): use polygon in beam
9138         command.
9139
9140         * lily/grob-pq-engraver.cc (stop_translation_timestep): save up
9141         all acknowledged grobs, and do potentially expensive merge and
9142         write in one go.
9143
9144         * buildscripts/mf-to-table.py (write_fontlist): enforce noBreak.
9145
9146         * configure.in (reloc_b): add --enable-static-gxx to statically
9147         link to libstdc++
9148
9149         * lily/GNUmakefile (static-gxx-libs): new target
9150         static-gxx-libs. Create symlink to libstdc++.a
9151
9152         * lily/new-lyric-combine-music-iterator.cc: rename to
9153         Lyric_combine_music_iterator
9154
9155         * lily/lyric-combine-music-iterator.cc
9156         (Old_lyric_combine_music_iterator): rename to
9157         Old_lyric_combine_music_iterator
9158
9159         * lily/*-engraver.cc (various): remove double use of
9160         PRECOMPUTED_VIRTUAL function: only use
9161         start_translation_timestep() and stop_translation_timestep(), not
9162         both.
9163
9164         * lily/break-substitution.cc (fast_substitute_grob_array): do
9165         fast_substitute_grob_array for all unordered grob_arrays.
9166         (substitute_grob): return Grob *. Saves packing/unpacking SCMs.
9167         (substitute_grob_array): optimize.
9168
9169         * lily/align-interface.cc (set_axis): set ordered_ for 'elements
9170
9171         * lily/include/grob-array.hh (class Grob_array): ordered_ member.
9172
9173         * lily/parser.yy: revert $globalheader patch.
9174         
9175         * lily/include/translator.icc
9176         (IMPLEMENT_FETCH_PRECOMPUTABLE_METHODS): directly jump into
9177         Translator methods, without _static helper.
9178  
9179         * lily/grob-smob.cc (derived_mark): rename from
9180         do_derived_mark(). Return void.
9181
9182         * scm/define-context-properties.scm
9183         (all-internal-translation-properties): remove tweakCount/tweakRank.
9184
9185         * scm/output-lib.scm (begin-of-line-invisible): use vectors for
9186         predefined break-visibilities.
9187
9188         * lily/item.cc (handle_prebroken_dependencies): use a vector of 3
9189         booleans for break-visibility.
9190
9191         * Documentation/topdocs/NEWS.tely (Top): add note about engravers.
9192
9193         * python/convertrules.py (conv): rule for Timing_translator. 
9194
9195         * lily/include/translator.icc: new file. 
9196
9197         * lily/paper-column-engraver.cc (process_music): new
9198         file. Separate Paper_column factory from Score_engraver.
9199
9200         * lily/vertically-spaced-context-engraver.cc: administer
9201         spaceable-staves property of System.
9202
9203         * lily/translator-group-ctors.cc: new file.
9204
9205         * lily/context-property.cc (make_grob_from_properties): construct
9206         the right Grob class programmatically, looking at the class entry
9207         for the meta property.
9208
9209         * lily/break-align-engraver.cc (stop_translation_timestep): call
9210         Break_align_interface::add_element() directly.
9211
9212         * lily/context.cc (measure_position): measure_position() is now a
9213         normal function.
9214
9215         * lily/include/translator.hh (class Translator): rename
9216         process_acknowledged_grobs() to process_acknowledged() and move to
9217         Translator.
9218
9219         * scm/define-grobs.scm (all-grob-descriptions): add a 'class meta
9220         field for each grob description.
9221
9222         * lily/include/translator-group.hh (class Translator_group):
9223         change to base class. Separate class from Translator. This gets
9224         rid of virtual inheritance for Engravers/Performers.
9225
9226         * lily/staff-performer.cc (class Staff_performer): derive
9227         Staff_performer from Performer, not Performer_group_performer 
9228
9229         * Lily/translator-group.cc (precomputed_recurse_over_translators):
9230         new function.
9231         (precompute_method_bindings): new function. Precompute lists of
9232         Translators, so we only call methods (process_music,
9233         start_translation_timestep, etc.) for Translators needing
9234         it. Also: dispose of pointer-to-member-function calls.
9235
9236         * lily/engraver-group-engraver.cc: remove engraver_each,
9237         recurse_down_engravers ()
9238
9239         * lily/note-head.cc (internal_print): only call
9240         glyph-name-procedure if style != default. 
9241
9242 2005-07-16  Graham Percival  <gperlist@shaw.ca>
9243
9244         * ly/titling-init.ly: add printallheaders option.
9245
9246         * Documentation/user/global.itely: document printallheaders.
9247
9248 2005-07-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9249
9250         * lily/system.cc (do_derived_mark): don't mark from object_alist_
9251         anymore, but do it centrally.  
9252
9253         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
9254         hammer hack.
9255
9256         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-object
9257
9258         * scm/output-lib.scm: remove hammer-print-function.
9259
9260         * lily/include/pointer-group-interface.hh (extract_grob_set): new
9261         macro. Declare a Link_array<Grob> and fill it from a grob.
9262         (extract_item_set): idem for item.
9263
9264         * lily/break-substitution.cc: add header.
9265         (fast_substitute_grob_array): rewrite for Grob_arrays.
9266         (substitute_grob_array): idem.
9267
9268         * lily/group-interface.cc (add_thing): remove file.
9269
9270         * flower/include/parray.hh (class Link_array): slice() is const.
9271
9272         * lily/include/grob-array.hh: new file.
9273
9274         * lily/grob-array.cc (spanner): new file.
9275
9276         * lily/beam-quanting.cc (fill): read details property from beam.
9277
9278         * lily/beam.cc: support details property.
9279
9280         * total speedups below: approx 10%.
9281
9282         * lily/include/beam.hh: new struct, softcode beam quanting parameters
9283
9284         * lily/include/grob.hh (class Grob): add interfaces_ member.
9285
9286         * lily/bezier.cc (init_polynomial_cache): new function: cache
9287         binom(3,j) t^j (1-t)^{3-j}
9288         (curve_point): opps, actually use the cache for t^j , (1-t)^j! 
9289
9290         * lily/*.cc: substitution throughout.
9291
9292         * lily/grob-property.cc (internal_get_object): new routine.
9293         (internal_set_object): idem. Store grob refrences in separate
9294         alist. This saves processing time, since properties aren't
9295         break-substituted, and the per grob namespace is smaller, both for
9296         grobs and non-grob properties.
9297
9298         * scm/define-grob-properties.scm (all-internal-grob-properties):
9299         remove center-element.
9300
9301         * lily/grob.cc: remove tweak-count, tweak-rank.
9302
9303 2005-07-15  Graham Percival  <gperlist@shaw.ca>
9304
9305         * Documentation/user/lilypond-book.itely: fixes example.
9306
9307 2005-07-15  Nicolas Sceaux  <nicolas.sceaux@free.fr>
9308
9309         * Documentation/user/global.itely (Creating titles):    
9310         * Documentation/user/examples.itely (All headers): change the
9311         place of \header in \score blocks (after music block) to make
9312         examples compile (cf. changes on parser.yy on 2005-07-10)
9313
9314 2005-07-13  Graham Percival  <gperlist@shaw.ca>
9315
9316         * python/convertrules.py: add exc -> ecc rule.
9317
9318         * scripts/convert-ly.py: add location of convertrules.py
9319         in a comment.
9320
9321         * Documentation/user/changing-defaults.itely: fix language.
9322
9323 2005-07-12  Jan Nieuwenhuizen  <janneke@gnu.org>
9324
9325         * lily/lily-parser-scheme.cc (LY_DEFINE): Guile 1.6 fix.
9326
9327 2005-07-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9328
9329         * scm/output-socket.scm (grob-bbox): don't use inf? 
9330
9331         * flower/include/rational.hh: add operator bool() 
9332
9333         * scm/define-music-types.scm (music-descriptions): remove
9334         internal-class-name properties.
9335
9336         * lily/include/event.hh: remove file.
9337
9338         * lily/include/music-constructor.hh: remove file.
9339
9340         * lily/parser.yy (Lily_lexer): check EVENT_IDENTIFIER using 'event
9341         in 'types property.
9342
9343         * lily/music.cc (duration_length_callback): new function.
9344
9345         * lily/event.cc: remove file.
9346
9347         * lily/music-constructor.cc: remove file.
9348
9349         * lily/music-scheme.cc (LY_DEFINE): rename to ly:make-music
9350
9351         * lily/context.cc (get_grob_key): nop if use_object_keys not set.
9352         (get_context_key): idem.
9353
9354         * scm/lily.scm (lambda): new option object-keys (default to #f)
9355
9356         * scm/output-svg.scm (utf-8-string): rename  from utf8-string.
9357
9358         * scm/output-gnome.scm: remove beam routine.
9359
9360         * scm/output-ps.scm (scm): idem.
9361
9362         * scm/output-svg.scm: remove beam.
9363
9364         * ps/music-drawing-routines.ps: remove draw_beam.
9365
9366         * lily/lookup.cc (beam): use round_filled_polygon() for beam.
9367
9368         * flower/include/guile-compatibility.hh (scm_from_locale_string):
9369         add scm_from_locale_string compatibility glue. 
9370
9371 2005-07-13  Yoshinobu Ishizaki  <isizaki@mte.biglobe.ne.jp>
9372
9373         * scripts/lilypond-book.py: Prevent occuring error when
9374         'lilypond-book --output=foo/ somefile.ly' is executed multiple
9375         times and target file shoud be overwritten.  (Error message said
9376         'input file and output file is same'.)
9377
9378 2005-07-13  Graham Percival  <gperlist@shaw.ca>
9379
9380         * input/regression/slur-extreme.ly,
9381         input/regression/slur-scoring.ly, lily/slur-configuration.cc,
9382         lily/slur.cc, mf/feta-din-code.mf, mf/feta-timesig.mf,
9383         mf/parmesan-heads.mf, scm/define-grob-properties.scm: Change
9384         "excentricity" to "eccentricity".
9385
9386         * Documentation/user/converters.itely: fix URL for Noteedit and
9387         Rosegarden.
9388
9389         * THANKS: added Yoshinobu Ishizaki.
9390
9391 2005-07-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9392
9393         * scm/define-markup-commands.scm (justify-field): add. 
9394
9395         * scm/define-grobs.scm (all-grob-descriptions): decrease font size.
9396
9397 2005-07-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9398
9399         * lily/lookup.cc (filled_box): express filled_box with
9400         round_filled_box
9401
9402         * scm/midi.scm (paper-book-write-midis): new function. Write all
9403         performances in numbered MIDI files.
9404
9405         * lily/performance-scheme.cc (LY_DEFINE): new file.
9406         (LY_DEFINE): new function ly:performance-write.
9407
9408         * lily/lily-parser-scheme.cc (LY_DEFINE): ly:parser-output-name:
9409         new function.
9410         (LY_DEFINE): change name ly:parser-define -> ly:parser-define!
9411
9412         * scm/framework-*.scm: use port arguments throughout.
9413
9414         * lily/include/lily-guile.hh: rename ly_c_X_p -> ly_is_X
9415
9416         * lily/paper-outputter.cc (Paper_outputter): take port argument.
9417
9418         * lily/paper-outputter-scheme.cc (LY_DEFINE): take port argument.
9419
9420         * scm/framework-texstr.scm (output-framework): 
9421
9422         * input/regression/repeat-fold.ly (texidoc): remove TeX strings.
9423
9424         * scm/output-lib.scm (tablature-stem-attachment-function):
9425         tablature stem attachment fix. 
9426
9427 2005-07-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9428
9429         * lily/bezier.cc: hardcode binomial coefficients of order 3.
9430
9431         * lily/include/music-wrapper.hh: remove Music_wrapper as Music subtype.
9432
9433         * scm/define-music-types.scm (music-descriptions): don't use
9434         Music_wrapper type.
9435
9436         * lily/paper-column.cc (print): print moment too.
9437
9438         * scripts/mup2ly.py (cp_to_dir): remove 1.5.2 compat glue.  
9439         remove compatibility cruft.
9440
9441         * lily/parser.yy (score_body): \score can only begin with Music. 
9442
9443         * lily/score-scheme.cc (LY_DEFINE): rename scorify to
9444         make-score. Take music argument only. Move parser interaction to
9445         Scheme.
9446
9447         * scm/lily-library.scm (scorify-music): new function.
9448
9449         * python/lilylib.py (datadir): remove 2.1 compat kludge.
9450         (datadir): remove resource import.
9451         (print_environment): remove get_bbox()
9452         (cp_to_dir): remove pre 1.5.2 compat glue.
9453
9454 2005-07-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9455
9456         * lily/include/simple-spacer.hh (Module): idem.
9457
9458         * lily/include/spring.hh (struct Spring): store inverse
9459         strength. This prevents division by zero.
9460
9461         * VERSION: release 2.7.0
9462         
9463         * lily/include/music.hh (class Music): remove Music::duration_log()
9464
9465         * lily/stem-engraver.cc (make_stem): take duration log from event.
9466
9467         * lily/chord-tremolo-engraver.cc: don't ack note-head-interface.
9468
9469 2005-07-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9470
9471         * scm/lily.scm (ly:load): load autochange.scm
9472
9473         * Documentation/user/tutorial.itely (Running LilyPond for the
9474         first time): remove reference to DVI/TeX
9475
9476         * scm/define-markup-commands.scm (text): add \text markup command.
9477
9478         * configure.in (reloc_b): bump requirement to Python 2.2.
9479
9480         * lily/include/dots.hh (class Dots): make has_interface() static.
9481
9482         * python/convertrules.py (conv): add rule for ly:grob-default-font
9483
9484         * scm/define-grobs.scm (all-grob-descriptions): reorganize in
9485         alphabetical order.
9486
9487         * input/regression/trill-spanner-pitched.ly: new file.
9488
9489         * lily/font-interface-scheme.cc (LY_DEFINE): function
9490         ly:grob-default-font (changed from get-default-font).
9491
9492         * lily/axis-group-interface-scheme.cc (LY_DEFINE): new file.
9493
9494         * lily/note-head.cc (internal_print): if style is not a symbol,
9495         set style to 'default. 
9496         (internal_print): no style suffix if glyph-name-procedure not
9497         set. Default to quarter head.
9498
9499         * scm/define-grobs.scm (Module): new grob TrillPitchHead.
9500
9501         * scm/define-music-properties.scm (all-music-properties): add trill-pitch.
9502
9503         * ly/music-functions-init.ly: \pitchedTrill
9504
9505         * lily/pitched-trill-engraver.cc (acknowledge_grob): new file.
9506
9507         * ly/Welcome_to_LilyPond.ly: update to 2.6.0
9508
9509         * lily/trill-spanner-engraver.cc (finalize): rename req -> event
9510
9511         * scm/define-markup-commands.scm (pad-markup): pad-markup command.
9512
9513         * po/fr.po: update
9514
9515         * po/de.po: update.
9516
9517 2005-07-06  Graham Percival  <gperlist@shaw.ca>
9518
9519         * Documentation/user/changing-defaults.itely: add link
9520         to grob-iterface.
9521
9522         * Documentation/user/advanced-notation.itely: add material
9523         to Setting automatic beam behaviour.  Thanks, Joe!
9524
9525         * Documentation/user/lilypond.itely: change encoding to utf-8.
9526
9527 2005-07-01  Mats Bengtsson  <mabe@s3.kth.se>
9528
9529         * Documentation/user/advanced-notation.itely (Setting automatic
9530         beam behavior): Correct the documentation of
9531         revert-auto-beam-setting (backportme)
9532
9533 2005-07-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9534
9535         * lily/ly-module.cc (ly_make_anonymous_module): define
9536         %module-public-interface of module. 
9537
9538         * lily/lily-parser.cc (print_smob): allow printing of parser smob
9539         without lexer.
9540
9541 2005-07-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9542
9543         * input/regression/fret-diagrams.ly: stretch example.
9544
9545 2005-06-30  Jan Nieuwenhuizen  <janneke@gnu.org>
9546
9547         * cygwin/GNUmakefile ($(outdir)/%.sh): Bugfix: use TAB (Bertalan
9548         Fodor).
9549
9550 2005-06-30  Graham Percival  <gperlist@shaw.ca>
9551
9552         * Documentation/topdocs/AUTHORS.texi: update personal web address.
9553
9554         * Documentation/user/examples.itely, lilypond-book.itely:
9555         change \RequirePackage to \usepackage.
9556
9557         * Documentation/user/global.itely: document copyright and tagline.
9558
9559 2005-06-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9560
9561         * Documentation/user/basic-notation.itely (Transpose): remove link
9562         to nonexistent UntransposableMusic.
9563
9564         * scm/output-svg.scm: remove old definitions.
9565
9566         * scripts/lilypond-book.py (do_file): search for kpsewhich before
9567         invoking.
9568
9569         * python/lilylib.py (search_exe_path): new function.
9570
9571 2005-06-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9572
9573         * python/lilylib.py (mkdir_p): remove setup_environment()
9574         (backportme)
9575
9576         * buildscripts/mutopia-index.py (headertext): trim text.
9577
9578         * Documentation/topdocs/NEWS.tely (Top): refresh.
9579
9580         * scm/define-markup-commands.scm (wordwrap-string): new function:
9581         split string in paras and words.
9582         (wordwrap-markups): new function.
9583         (wordwrap-stencils): new function. 
9584         (justify): use it.
9585         (wordwrap): use it.
9586         (wordwrap-string): use it
9587         (justify-string): use it.
9588
9589         * scm/lily-library.scm (regexp-split): new function.
9590
9591         * scm/define-markup-commands.scm: remove encoded-simple. 
9592         remove font-markup.
9593         (fontsize): remove old version  of fontsize.
9594         (wordwrap): new markup function. Wrap into paragraphs.
9595
9596         * VERSION: Branch lilypond_2_6
9597         (MINOR_VERSION): go to 2.7.0
9598
9599 2005-06-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9600
9601         * po/zh_TW.po: update from translation project.
9602
9603 2005-06-28  Graham Percival  <gperlist@shaw.ca>
9604
9605         * scm/midi.scm: compile fix.
9606
9607 2005-06-28  Mats Bengtsson  <mabe@s3.kth.se>
9608
9609         * scripts/lilypond-book.py : Fix embarrassing bug in my previous
9610         patch. Now, the tempfile module is loaded too, not only used.
9611
9612 2005-06-28  Stephen Charles McCarthy  <stecmccarthy@hotpop.com>
9613
9614         * scm/midi.scm: changed midi volumes in absolute-volume-alist from
9615         0.05 - 1.00 to 0.25 - 1.00
9616
9617         * scm/midi.scm: moved the default-instrument-equalizer procedure
9618         to just under the insturment-equalizer-alist it takes as an
9619         argument.
9620
9621 2005-06-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9622
9623         * Documentation/user/advanced-notation.itely (Font selection):
9624         remove CMR note.
9625
9626         * scm/framework-ps.scm (write-preamble): ly:warning iso. ly:warn 
9627
9628 2005-06-28  Jan Nieuwenhuizen  <janneke@gnu.org>
9629
9630         * THANKS: Add UTF-8 marker.
9631
9632         * Documentation/user/point-and-click.itely (http): Update: use
9633         lilypond-invoke-editor.  Fix: instruct to use user.js.
9634
9635 2005-06-27  Graham Percival  <gperlist@shaw.ca>
9636
9637         * ly/titling-init.ly: implements printpagenumber, increases
9638         space between dedication and title (to avoid collisions with
9639         "g" and "q" in dedication), and nicer logic about copyright
9640         and instrument fields being printed on the first page.
9641         Thanks Vincent!
9642
9643         * Documentation/user/global.itely: document printpagenumber.
9644
9645 2005-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
9646
9647         * Documentation/topdocs/NEWS.tely: Update to 2.6.
9648
9649 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9650
9651         * THANKS: update to 2.6
9652
9653         * VERSION: 2.6.0 released.
9654
9655 2005-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
9656
9657         * cygwin/GNUmakefile (OUT_POSTREMOVES): Reinclude install script
9658         rule, errorneously removed probably because of misleading comment.
9659
9660 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9661
9662         * python/lilylib.py (datadir): py2exe comments.
9663
9664         * Documentation/topdocs/INSTALL.texi (Top): remove EC fonts requirement.
9665
9666         * configure.in (reloc_b): make fontconfig REQUIRED.
9667
9668 2005-06-27  Heikki Junes <hjunes@cc.hut.fi>
9669
9670         * po/fi.po: add latest translations.
9671
9672 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9673
9674         * ChangeLog: recode utf-8
9675
9676         * Documentation/pictures/lilypond.xpm (Module): edited photo as
9677         logo.
9678
9679         * Documentation/user/examples.itely (Module): 2.4.0 -> 2.6.0
9680
9681         * input/*.ly (Module): 2.4 -> 2.6 grand convert-ly s/r. 
9682
9683         * python/convertrules.py (do_conversion): don't print program_name
9684         from within a module
9685
9686         * configure.in (reloc_b): bump fontforge requirement to 20050624.
9687
9688         * python/convertrules.py (conv): add 2.6.0 dummy rule.
9689
9690 2005-06-23  Graham Percival  <gperlist@shaw.ca>
9691
9692         * Documentation/user/lilypond-book.itely,
9693         Documentation/user/examples.itely: add \RequirePackage{graphics}.
9694
9695         * ly/titling.ly: checks printfirstpagenumber, adds meter, and
9696         fixes baseline-skip.  Thanks Vincent!
9697
9698         * Documentation/user/advanced-notation.itely, global.itely:
9699         moved "Selecting font sizes" to global, since it deals with
9700         notation font size, not text fonts.
9701
9702 2005-06-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9703
9704         * buildscripts/gen-emmentaler-scripts.py (notice): add GPL notice
9705         to fonts.
9706
9707 2005-06-23  Mats Bengtsson  <mabe@s3.kth.se>
9708
9709         * scripts/lilypond-book.py (LATEX_DOCUMENT): More or less ugly
9710         workaround since /dev/stdin doesn't work on Cygwin. Using a
9711         temporary file in the current directory since latex doesn't
9712         understand the path name to the default TMP in Cygwin (at least on
9713         win XP).
9714         
9715         * Documentation/user/global.itely (Creating titles): Correct
9716         misprint in example. Thanks to Rob Vlasaty.
9717
9718 2005-06-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9719
9720         * VERSION (PATCH_LEVEL): release 2.5.32
9721
9722         * lily/lily-parser-scheme.cc (LY_DEFINE): don't set 'parser
9723         variable in lily module
9724
9725         * scm/framework-ps.scm (output-classic-framework): error message
9726         regarding the classic framework.
9727
9728         * Documentation/user/henle-flat-gray.png (Module): new file.
9729
9730         * Documentation/user/baer-flat-gray.png (Module): new file.
9731
9732         * scm/output-lib.scm (fret-number-tablature-format): vcenter and
9733         whiteout for markups.
9734
9735         * buildscripts/substitute-encoding.py (note_glyph): include _ in
9736         regex too. This fixes change clef appearance in PDF. 
9737
9738         * ttftool/include/*: remove.
9739
9740         * configure.in (reloc_b): remove TTFTOOL_ENDIAN
9741
9742         * config.make.in (WINDRES): remove TTFTOOL_ENDIAN.
9743
9744         * lily/GNUmakefile (MODULE_INCLUDES): remove ttftool
9745
9746         * ttftool/*: remove ttftool subdirectory.
9747
9748         * GNUmakefile.in (SUBDIRS): remove ttftool subdirectory.
9749
9750         * lily/ttf.cc (print_header): new file. Convert to type42, using
9751         FreeType to parse the TTF. 
9752
9753         * ttftool/parse.c (readPostTable): ugh. Kludge: nglyphs in maxp
9754         and post table may differ. Pass around post_nglyphs as well.
9755
9756 2005-06-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9757
9758         * ly/music-functions-init.ly (musicMap): new music function
9759         musicMap. 
9760         
9761 2005-06-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9762
9763         * make/mutopia-rules.make: anti-alias-factor = 2
9764
9765         * scm/ps-to-png.scm (make-ps-images): cleanup multipage vs. single
9766         page switch.
9767
9768         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): set
9769         anti-alias-factor for lilypond-book runs.
9770
9771         * scm/ps-to-png.scm (scale-down-image): new function.
9772         (my-system): new function.
9773         (make-ps-images): blow up GS resolution by anti-alias-factor,
9774         scale down image by anti-alias-factor.  This improves appearance
9775         of bitmaps
9776         (make-ps-images): remove showpage. Fixes spurious empty png at
9777         end.
9778
9779         * scm/framework-ps.scm (write-preamble): downcase filename before
9780         string-matching. Should fix .TTF files (as opposed to ttf files)  
9781
9782         * Documentation/user/tutorial.itely (Running LilyPond for the
9783         first time): separate subsections for windows, macos and unix.  
9784
9785         * Documentation/user/invoking.itely (Updating files with
9786         convert-ly): add MacOS X note.
9787
9788 2005-06-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9789
9790         * Documentation/user/introduction.itely (Engraving): don't include
9791         file optical-spacing, add directly.
9792
9793         * lily/paper-outputter.cc (file): open file in binary mode. This
9794         fixes OTF embedding on windows.
9795
9796 2005-06-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9797
9798         * scm/framework-ps.scm (write-preamble): remove debugging output.
9799
9800         * mf/aybabtu.pe.in (i): don't generate aybabtu.cff
9801
9802         * mf/GNUmakefile ($(outdir)/fonts.cache-1): create font cache for
9803         outdir.
9804         (install-fc-cache): install font cache in installation directories.
9805
9806 2005-06-17  Jan Nieuwenhuizen  <janneke@gnu.org>
9807
9808         * scm/editor.scm (editor-command-template-alist): Use char iso
9809         column, except for Emacs.
9810         (get-editor-command): Substitute char too (Bertalan Fodor).
9811
9812 2005-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
9813
9814         * scm/ps-to-png.scm (make-ps-images): Use ~S instead of single
9815         quoted ~s.  This should fix PNG output on Windows; single quotes
9816         are regular characters on Windows.
9817
9818 2005-06-16  Graham Percival  <gperlist@shaw.ca>
9819
9820         * Documentation/user/basic-notation.itely: include ChoirStaff
9821         in System start delimiters.
9822
9823         * Documentation/user/putting.itely: new doc section on
9824         fixing overlapping notation.
9825
9826 2005-06-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9827
9828         * Documentation/user/global.itely (Paper size): \paper is in
9829         \book, not \score.
9830
9831         * make/mutopia-rules.make: -ddelete-intermediate-files
9832
9833         * ly/engraver-init.ly: make Staff default child of ChoirStaff.
9834
9835 2005-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
9836
9837         * ChangeLog: Recode utf-8.
9838
9839         * python/GNUmakefile (INSTALLATION_OUT_DIR): Install .so module in
9840         datadir with .py modules.
9841
9842 2005-06-15  Heikki Junes  <hjunes@cc.hut.fi>
9843
9844         * Documentation/user/basic-notation.itely (Ties): add tieDashed.
9845
9846 2005-06-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9847
9848         * make/mutopia-rules.make: switch off ps, p&c for lilypond runs.
9849         
9850         * scm/framework-ps.scm (write-preamble): remove status check.
9851
9852         * Documentation/user/invoking.itely (Updating files with
9853         convert-ly): remove -o option.
9854
9855         * VERSION (PACKAGE_NAME): release 2.5.31
9856
9857         * scm/framework-ps.scm (write-preamble): use ly:system.
9858         (write-preamble): verbosity.
9859
9860         * scripts/convert-ly.py: cleanup. Use lilylib. Use convertrules.
9861
9862         * python/convertrules.py: new file. Store conversion rules
9863         separately.
9864
9865 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9866
9867         * scm/backend-library.scm (postprocess-output): remove debugging gobs.
9868
9869 2005-06-14  Mats Bengtsson  <mabe@s3.kth.se>
9870
9871         * Documentation/topdocs/NEWS.tely (Top): Corrected name of
9872         \musicDisplay 
9873
9874         * Documentation/user/instrument-notation.itely (More stanzas): Add
9875         reference to StanzaNumber.
9876
9877 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9878
9879         * THANKS: separate section for website translators.
9880
9881 2005-06-14  Graham Percival  <gperlist@shaw.ca>
9882
9883         * Documentation/topdocs/INSTALL.texi: update vim info;
9884         thanks Simon Bailey!
9885
9886         * Documentation/user/advanced-notation.itely: included
9887         color names.
9888
9889         * Documentation/user/advanced-notation.itely,
9890         Documentation/usr/notation-appendices.itely: moved
9891         color names into an appendix.
9892
9893 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9894         
9895         * lily/program-option.cc (LY_DEFINE): new function ly_add_option.
9896
9897         * scm/lily.scm (lambda): initialize program options from here.
9898
9899         * scm/framework-*.scm: add header info.
9900
9901         * lily/main.cc (parse_argv): only set output format to pdf if no
9902         other format specified.
9903
9904         * scm/backend-library.scm (postprocess-output): process
9905         'delete-intermediate-files after running convert-to-*. This fixes
9906         PNG generation when 'delete-intermediate-files is set.
9907         
9908 2005-06-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9909
9910         * buildscripts/mutopia-index.py (list_item): thinko. Fixes png
9911         links on website. 
9912
9913 2005-06-13  Graham Percival  <gperlist@shaw.ca>
9914
9915         * Documentation/topdocs/INSTALL.texi,
9916         Documentation/user/lilypond-book.itely: typos.
9917
9918 2005-06-12  Pal Benko  <benkop@freestart.hu>
9919
9920         * elisp/lilypond-mode.el (LilyPond-command-alist: 2PS): space
9921         added between program name and switch; -b changed to -f not
9922         to generate pdf
9923
9924 2005-06-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9925
9926         * elisp/lilypond-mode.el (LilyPond-command-alist): remove 2midi
9927         (LilyPond-command-alist): use -f ps (thanks to Pal Benko)
9928
9929         * input/sakura-sakura.ly: add \midi.
9930
9931         * buildscripts/mutopia-index.py (find): use /usr/bin/find
9932         iso. python find. 
9933
9934         * ttftool/test.c (main): cosmetics.
9935
9936         * ttftool/util.c (surely_lseek): use stdio FILE's for I/O 
9937
9938         * ttftool/test.c: new file. If compiled with -DTEST_TTFTOOL,
9939         create a ttf2ps binary.
9940
9941         * scm/ps-to-png.scm (make-ps-images): fix rename-page-1 functionality.
9942
9943         * scm/backend-library.scm (postscript->png): set rename-page-1 to
9944         true.
9945
9946 2005-06-11  Graham Percival <gperlist@shaw.ca>
9947
9948         * Documentation/user/lilypond-book.itely: add warning about
9949         the font warnings in dvips.
9950
9951 2005-06-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9952
9953         * THANKS: typo
9954
9955         * mf/GNUmakefile ($(outdir)/$(redhat-package)): Fedora-4 url.
9956
9957         * GNUmakefile.in: remove links for .map, .enc
9958         don't fail if out/ doesn't exist yet.
9959
9960 2005-06-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9961
9962         * ttftool/util.c (surely_read): return nbytes
9963
9964         * stepmake/bin/text2html.py (txt2html): add utf-8 marker. 
9965
9966         * VERSION (PACKAGE_NAME): release 2.5.30
9967
9968         * flower/string-convert.cc (precision_string): >? fix.
9969
9970         * scm/ps-to-png.scm (make-ps-images): search-gs for multipage too.
9971         (make-ps-images): add verbose -q too.
9972
9973         * lily/default-actions.cc (Module): new file. default
9974         {book,score}-print functions.
9975
9976         * scm/ly-from-scheme.scm (ly:parse-string-result): use new setup:
9977         pass results via parseStringResult, lookup via ly:parser-lookup.  
9978
9979         * lily/lily-parser.cc (Lily_parser): only clone lexer in
9980         constructors.
9981         (parse_file): encapsulate do_yyparse() in scm_set_current_module()
9982         (parse_string): idem.
9983
9984         * ly/spanners-init.ly (assertBeamQuant): don't use #{ #} in init.
9985
9986         * lily/main.cc (main_with_guile): copy be_verbose_global into
9987         ly_set_option()
9988
9989 2005-06-10  Jan Nieuwenhuizen  <janneke@gnu.org>
9990
9991         * scm/backend-library.scm (postscript->pdf):
9992         * scm/ps-to-png.scm (make-ps-images): Do not use gs -q switch in
9993         verbose mode.  Search for several names of gs executable.
9994
9995 2005-06-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9996
9997         * lily/ly-module.cc (ly_make_anonymous_module): call make-module
9998         directly. This fixes a massive memory leak, provided you use CVS
9999         GUILE.
10000
10001 2005-06-10  Erik Sandberg  <ersa9195@student.uu.se>
10002
10003         * ly/property-init.ly: Added tieDashed.
10004
10005         * THANKS: Added some bughunters for 2.5.
10006
10007 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10008
10009         * lily/program-option.cc: add debug-gc option.
10010
10011         * lily/include/lily-guile-macros.hh: don't protect exported module
10012         objects.
10013
10014         * lily/include/lily-parser.hh (class Lily_parser): remove beam_check().
10015
10016         * scm/backend-library.scm (postscript->pdf): use
10017         delete-intermediate-files iso. running-from-gui? 
10018
10019         * ttftool/util.c (surely_read): robustness. Allow read() to return
10020         less bytes than requested, as per posix standards.
10021
10022         * lily/pfb.cc (LY_DEFINE): set ttf_verbosity from ttf-verbosity
10023         program option.
10024
10025         * ttftool/include/ttftool.h ("C"): rename verbosity to
10026         ttf_verbosity. Add to public interface.
10027
10028         * scm/music-functions.scm (unfold-repeats): remove debugging display.
10029
10030         * lily/program-option.cc: rename from scm-option.cc
10031
10032         * lily/scm-option.cc (LY_DEFINE): handle no-foobar option setting.
10033         (get_help_string): Print pretty help string.
10034
10035         * scripts/lilypond-book.py (PREAMBLE_LY): add no-point-and-click
10036         to snippet preamble.
10037
10038         * lily/scm-option.cc: remove command-line-settings option. Fold
10039         all command-line options plus default settings in a generic
10040         interface. 
10041
10042         * flower/getopt-long.cc (table_string): indent 2nd lines of help
10043         texts too.
10044
10045 2005-06-09  Jan Nieuwenhuizen  <janneke@gnu.org>
10046
10047         * flower/file-name.cc: Bugfix: only append DIRSEP if BASE_
10048         or EXT_ components non-empty.
10049
10050 2005-06-08  Jan Nieuwenhuizen  <janneke@gnu.org>
10051
10052         * scm/lily.scm (running-from-gui?): Export.
10053
10054         * lily/lily-parser-scheme.cc (ly:parse-file): Use it to generate
10055         output in .ly source directory.
10056
10057 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10058
10059         * ttftool/util.c (surely_lseek): more verbosity.
10060
10061         * lily/include/lily-proto.hh: add Context_def. This fixes FC4
10062         compile.
10063
10064         * lily/parser.yy (Repeated_music): remove >? 
10065
10066         * scm/backend-library.scm (postscript->pdf): Support for
10067         -dgs-font-load=1
10068
10069         * scm/framework-ps.scm (write-preamble): make font loading
10070         switchable to GS via --define-default gs-font-load=1
10071
10072 2005-06-09  Graham Percival  <gperlist@shaw.ca>
10073
10074         * Documentation/user/global.itely: added \layout docs.
10075
10076 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10077
10078         * lily/lily-parser-scheme.cc: add unistd.h
10079
10080 2005-06-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10081
10082         * scm/editor.scm: add char argument.
10083
10084         * scripts/lilypond-invoke-editor.scm (dissect-uri): add char. 
10085
10086         * ttftool/util.c (syserror): use errno for better error reporting.
10087
10088         * lily/source-file.cc (get_counts): new function. Calc column,
10089         line and char count in one go.
10090
10091         * lily/binary-source-file.cc (quote_input): rename to quote_input
10092
10093         * lily/input.cc (set): new function.
10094
10095 2005-06-08  Jan Nieuwenhuizen  <janneke@gnu.org>
10096
10097         * flower/file-path.cc (find): Bugfix.  Append rather than prepend
10098         directory part of file name to search directory.
10099
10100         * lily/lily-parser-scheme.cc (ly:parse-file): Prepend cwd to
10101         search path and chdir to DIR if --outname=DIR used.
10102
10103         * lily/main.cc (prepend_env_path): Bugfix: Check directory
10104         existence before appending original path.
10105
10106 2005-06-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10107
10108         * ttftool/parse.c (readNamingTable): verbosity for "bad TTF
10109         file" massage.
10110
10111         * Documentation/user/GNUmakefile (TEXINPUTS): set TEXINPUTS so our
10112         texinfo.tex is always used.
10113         
10114 2005-06-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10115
10116         * flower/include/axis.hh: rename from axes.hh
10117
10118         * lily/include/text-interface.hh (Module): rename from text-item.hh
10119
10120         * VERSION (PATCH_LEVEL): release 2.5.29
10121
10122         * ttftool/parse.c (readNamingTable): handle Apple/8bit encoding too.
10123
10124         * scm/framework-ps.scm (font-file-as-ps-string): new function.
10125         (handle-macfont): new function. Call fondu for Native mac fonts.
10126
10127         * scm/define-markup-commands.scm (fill-line): handle text-widths =
10128         '() case.
10129
10130 2005-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
10131
10132         * scm/ps-to-png.scm (make-ps-images): Bugfix: `Pages: 1\n' is not
10133         multi-page.  Fix .eps regular expression.
10134
10135 2005-06-07  Graham Percival  <gperlist@shaw.ca>
10136
10137         * Documentation/user/putting.itely: add info on modifying templates.
10138
10139         * Documentation/user/lilypond.itely, converters.itely, invoking.itely:
10140         misc small changes.
10141
10142 2005-06-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10143
10144         * scm/ps-to-png.scm (make-ps-images): no paper size for multi-page.
10145
10146         * scripts/lilypond-ps2png.scm
10147
10148         * VERSION (PACKAGE_NAME): release 2.5.28
10149
10150 2005-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
10151
10152         * lily/main.cc (prepend_env_path): Do not append /, that does not
10153         work.  Localedir lives in datadir, not in prefix.
10154
10155         * scm/framework-ps.scm (write-preamble): Remove load-font-via-GS
10156         hack for windows.
10157
10158         * flower/include/file-cookie.hh: Compile fix.
10159
10160 2005-06-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10161
10162         * ly/engraver-init.ly: add \defaultchild to InnerStaffGroup. 
10163
10164         * scm/ps-to-png.scm (gulp-port): rename from read. Don't redefine
10165         system primitives.
10166         (gulp-port): using read-string!/partial. We don't want to read an
10167         entire PS file  (GUILE 1.6 limits strings to 16M) 
10168
10169         * scm/define-grobs.scm (all-grob-descriptions): remove arch-*
10170         properties. Add font-interface. 
10171
10172         * scm/define-grob-properties.scm (all-user-grob-properties):
10173         remove old bracket properties.
10174
10175         * scm/x11-color.scm: reformat. 
10176
10177         * lily/ledger-line-engraver.cc (acknowledge_grob): create new
10178         LedgerLineSpanner if new StaffSymbol is found. 
10179
10180         * lily/staff-symbol-engraver.cc (acknowledge_grob): also set
10181         staff-symbol for finishing staff. 
10182
10183         * lily/GNUmakefile (OUT_DIST_FILES): don't dist Flex output
10184
10185         * scm/output-svg.scm (setcolor): implement (re)setcolor with <g>
10186         change black to currentColor everywhere. This fixes color support
10187         in SVG.
10188
10189 2005-06-06  Carl Sorensen  <carldsorensen@comcast.net>
10190
10191         * input/regression/fret-diagrams.ly: new file to test fret diagram
10192         capability
10193
10194         * scm/output-tex.scm: remove white-dot and white-text
10195
10196         * scm/output-ps.scm: remove white-dot and white-text
10197
10198         * scm/fret-diagrams.scm (sans-serif-stencil-white): removed -- 
10199         using ly:stencil-in-color instead
10200         (draw-dots) : remove call to white-dot
10201
10202 2005-06-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10203
10204         * flower/memory-stream.cc (Memory_out_stream): remove fopencookie
10205         support.
10206
10207         * ttftool/ttfps.c: use lily_cookie functions everywhere. 
10208
10209         * flower/include/file-cookie.hh: new file. lily_cookie extension 
10210
10211         * flower/file-cookie.cc: new file. lily_cookie extension.
10212         
10213 2005-06-06  Jan Nieuwenhuizen  <janneke@gnu.org>
10214
10215         * scm/editor.scm (editor-command-template-alist): Add syn
10216         editor (Jaap [de Vos]).
10217
10218 2005-06-05  Jan Nieuwenhuizen  <janneke@gnu.org>
10219
10220         * scripts/lilypond-ps2png.scm:
10221         * scm/ps-to-png.scm: New file.
10222
10223         * scm/backend-library.scm (postscript->png): Use it.
10224
10225         * scripts/lilypond-ps-to-png.py: Remove file.
10226
10227         * python/lilylib.py (get_bbox, make_ps_images): Remove.
10228
10229 2005-06-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10230
10231         * lily/auto-beam-engraver.cc (acknowledge_grob): remove dead code.
10232
10233         * scm/auto-beam.scm (default-auto-beam-check): only forbid beam
10234         start on grace moment. Fixes autobeam-grace.ly.
10235
10236         * lily/auto-beam-engraver.cc (process_acknowledged_grobs): don't
10237         process anything unless we're at the end of a pending beam. Fixes
10238         syncopated 8ths beamed across a beat.
10239
10240 2005-06-03  Jan Nieuwenhuizen  <janneke@gnu.org>
10241
10242         * scm/editor.scm (editor-command-template-alist): Start emacs if
10243         emacslient fails.
10244
10245         * lily/main.cc (setup_localisation): Listen to LILYPOND_LOCALEDIR.
10246
10247         * flower/file-path.cc (is_file, is_dir): Export.
10248
10249         * lily/main.cc (prepend_env_path, set_env_file): Use them.
10250
10251 2005-06-02  Mats Bengtsson  <mabe@s3.kth.se>
10252
10253         * lily/easy-notation.cc: Added include cctype to correct
10254         compilation error.
10255
10256 2005-06-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10257
10258         * scm/backend-library.scm (postscript->pdf): set resolution to
10259         1200, so bitmap fonts aren't that ugly. 
10260
10261         * Documentation/topdocs/NEWS.tely (Top): add entry about font family.
10262
10263         * lily/dynamic-engraver.cc (acknowledge_grob): only center on
10264         parent if we have a notehead. Fixes incorrect offsets when
10265         Paper_column is very wide in the X direction.
10266
10267         * input/regression/font-family-override.ly (Module): new file.
10268
10269         * scm/font.scm (make-pango-font-tree): new function.
10270
10271         * lily/beam.cc (before_line_breaking): remove warning about less
10272         than 2 visible stems. We still get a warning when there is only
10273         one stem.
10274
10275 2005-06-01  Werner Lemberg  <wl@gnu.org>
10276
10277         * buildscripts/substitute-encoding.py: Handle PFAemmentaler-xx.pfa
10278         correctly.
10279
10280 2005-06-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10281
10282         * lily/slur-scoring.cc (generate_avoid_offsets): new
10283         function. Generate avoid offsets once per slur.
10284
10285         * lily/slur.cc (add_extra_encompass): add dependency to
10286         extra-encompass object. This fixes bugs/c-phrasing-slur.ly
10287
10288         * lily/stencil.cc (is_empty): check dim_ field for is_empty()
10289         too. Fixes inf error with added bass notes.
10290
10291         * scripts/lilypond-book.py (do_options): --psfonts doesn't take
10292         argument anymore.
10293
10294         * make/ly-vars.make (DVIPS_FLAGS): use .psfonts as extension.
10295
10296         * input/tutorial/lbook-latex-test.tex: add line length test.
10297
10298         * scripts/lilypond-book.py (set_default_options): new
10299         function. Call this before dissecting snippets, so linewidth
10300         settings reach the snippets.
10301
10302 2005-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
10303
10304         * scm/lily.scm (PLATFORM, slashify): Remove double slashes.
10305
10306 2005-06-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10307
10308         * input/mutopia/R.Schumann/romanze-op28-2.ly (leftb): bugfix.
10309
10310 2005-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
10311
10312         * stepmake/aclocal.m4: More autopackage friendliness.
10313
10314 2005-05-31  Graham Percival  <gperlist@shaw.ca>
10315
10316         * Documentation/index.html.in: remove link to LSR.
10317
10318         * Documentation/user/global.itely: remove duplicate
10319         "dedication" \header{} section.
10320
10321 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10322
10323         * VERSION (PACKAGE_NAME): release 2.5.27.
10324
10325         * lily/lily-parser-scheme.cc (LY_DEFINE): unprotect paper
10326         too. Plugs memory leak.
10327
10328         * make/lilypond.fedora.spec.in (Group): remove
10329         lilypond-pdfpc-helper.
10330
10331         * scripts/GNUmakefile (SEXECUTABLES): remove
10332         lilypond-pdfpc-helper. Use lilypond-invoke-editor instead.
10333
10334         * scm/font.scm (make-century-schoolbook-tree): add Mono as
10335         'typewriter family.
10336
10337         * lily/score.cc (Score): unprotect copy of Output_def. Plugs
10338         memory leak.
10339
10340         * lily/parser.yy (score_body): don't clone Score, that's done in
10341         Lily_lexer::try_special_identifiers(). This fixes a memory leak.
10342
10343         * lily/score-engraver.cc (derived_mark): new function.
10344         (initialize): unprotect Paper_score. This fixes a memory leak.
10345
10346         * lily/score-performer.cc (derived_mark): new function.
10347
10348         * lily/score-translator.cc (get_output): use SCM for get_output() call.
10349
10350         * stepmake/aclocal.m4: put FlexLexer.h test in conftest.cc. Fixes
10351         spurious warning.
10352
10353         * scm/font.scm (make-century-schoolbook-tree): use Sans for sans
10354         serif.
10355
10356 2005-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
10357
10358         * configure.in (reloc_b): Add --enable-relocation.
10359
10360 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10361
10362         * lily/pfb.cc (LY_DEFINE): show file name when loading PFB. 
10363
10364         * input/regression/alignment-order.ly: add Staff example.
10365
10366 2005-05-31  John Mandereau   <john.mandereau@free.fr>
10367
10368         * po/fr.po: update.
10369
10370 2005-05-31  Graham Percival  <gperlist@shaw.ca>
10371
10372         * Documentation/index.html.in: add link to LSR.
10373
10374 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10375
10376         * scm/define-stencil-commands.scm (Module): new file. Register all
10377         allowed stencil expression heads in a central place.
10378
10379         * lily/stencil-scheme.cc (LY_DEFINE): check is_stencil_head in
10380         ly:make-stencil
10381
10382         * lily/stencil-expression.cc (all_stencil_heads): registering
10383         stencil expressions.
10384
10385         * lily/stencil-interpret.cc: new file. Stencil expression
10386         interpreting.
10387
10388         * input/xiao-haizi-guai-guai.ly: move file back.
10389
10390 2005-05-30  Graham Percival  <gperlist@shaw.ca>
10391
10392         * Documentation/user/advanced.itely, converters.itely,
10393         instrument-notation.itely, lilypond-book.itely: misc small
10394         changes.
10395
10396 2005-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
10397
10398         * lily/lexer.ll: Skip UTF-8 BOM at BOF.
10399
10400         * make/lilypond.fedora.spec.in: Fix source url.
10401
10402         * cygwin: Update from mingw patches.
10403
10404         * scm/editor.scm (editor-command-template-alist): Use jedit
10405         -reuseview (Bertalan), add uedit (Patrick Huberts).
10406
10407         * input/xiao-hai-zi-guai-guai.ly: Rename from
10408         xiao-haizi-guai-guai.ly.
10409
10410         * input/*: Reindent, do not use TAB.
10411
10412         * Documentation/pictures/ly.xpm: Bugfix: do not anti-alias against
10413         white background.
10414
10415 2005-05-29  Jan Nieuwenhuizen  <janneke@gnu.org>
10416
10417         * scm/framework-ps.scm (dump-stencil-as-EPS): Add silly fix for
10418         numerical overflow error.
10419
10420 2005-05-29 Laura Conrad <lconrad@laymusic.org>
10421         
10422         * abc2ly.py: fix to syntax error in multi-part output.
10423
10424 2005-05-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10425
10426         * lily/span-bar.cc (print): sort bar line extents. Fixes problem
10427         with disappearing span bars when alignAboveContext is active
10428
10429         * lily/property-iterator.cc (check_grob): use is-grob?
10430         object-property. Fixes crash-key-sig-font-size.ly. 
10431
10432 2005-05-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10433
10434         * lily/bar-line.cc (print): don't round barlines; this produces
10435         odd aliasing effects in Acroread.
10436
10437         * lily/timing-engraver.cc (process_music): robustness fix.
10438
10439         * lily/context-def.cc (filter_engravers): bugfix.
10440
10441 2005-05-28  Jan Nieuwenhuizen  <janneke@gnu.org>
10442
10443         * lily/lilypond.rc.in: Add ly-icon.
10444
10445         * lily/GNUmakefile: 
10446         * Documentation/pictures/GNUmakefile (OUT_DIST_FILES): Add ly-icon
10447         rules.
10448
10449 2005-05-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10450
10451         * lily/stencil-scheme.cc (LY_DEFINE): ly:stencil-in-color
10452
10453         * ps/music-drawing-routines.ps: 
10454
10455         * scm/output-ps.scm: remove draw ez_ball.
10456
10457         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
10458         EasyNotation context definition.
10459
10460         * lily/easy-notation.cc (brew_ez_stencil): new file. Use
10461         Text_interface and color for making easy note heads.
10462
10463         * lily/stencil.cc (with_color): new function.
10464
10465         * ps/music-drawing-routines.ps: remove draw_zigzag_line
10466
10467         * lily/line-spanner.cc (zigzag_stencil): rewrite to use draw-line
10468         output routine. Zigzag now works in SVG too.
10469
10470         * scm/output-tex.scm (filledbox): idem.
10471
10472         * scm/output-svg.scm (filledbox): idem.
10473
10474         * scm/output-ps.scm (lily-def): remove horizontal-line. 
10475
10476         * lily/lookup.cc (horizontal_line): use draw-line. 
10477
10478         * lily/system-start-delimiter.cc: remove old staff bracket code.
10479
10480         * mf/feta-haak.mf: further tweaks.
10481
10482         * lily/system-start-delimiter.cc (staff_bracket): use glyphs.
10483
10484         * mf/feta-generic.mf: include feta-haak.
10485
10486         * mf/feta-haak.mf: rewrite. Make separate glyphs for the tips 
10487
10488         * scm/framework-ps.scm (write-preamble): only load fonts if their
10489         filename is a string. 
10490
10491 2005-05-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10492
10493         * scm/output-svg.scm (circle): support circle.
10494         (bracket): stub for bracket.
10495
10496         * scripts/lilypond-book.py (main): make sure --psfonts warning is
10497         correct.
10498
10499 2005-05-26  Graham Percival  <gperlist@shaw.ca>
10500
10501         * Documentation/user/lilypond.tely, advanced-notation.itely,
10502         basic-notation.itely, instrument-notation.itely, global.itely,
10503         introduction.itely, tutorial.itely: rearranging, editing,
10504         clean-up.
10505
10506         * mf/GNUmakefile: change a "make -C" to "${MAKE} -C", required
10507         for compiling on FreeBSD.
10508
10509 2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10510
10511         * lily/pfb.cc (LY_DEFINE): progress indication for opening ttf and
10512         otf files.
10513
10514         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly (lower):
10515         bugfixes.
10516
10517         * VERSION: 2.5.26 released.
10518
10519         * scm/titling.scm (marked-up-headfoot): revert Pedro's patch. 
10520
10521 2005-05-25  Pedro Kroger  <kroeger@pedrokroeger.net>
10522
10523         * scm/titling.scm (marked-up-headfoot): doesn't print pagenumbers
10524         if printpagenumber is false.
10525
10526 2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10527
10528         * lily/font-config.cc (init_fontconfig): comment out FontConfig
10529         cache warning.
10530
10531         * lily/tie.cc (print): support dotted ties.
10532         
10533 2005-05-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10534
10535         * scm/define-grobs.scm (all-grob-descriptions): switch off
10536         debugging
10537         (all-grob-descriptions): Arpeggio has Y-extent.
10538
10539         * scm/define-music-properties.scm (all-music-properties): document
10540         length-callback and start-callback as "read-only".
10541
10542         * scm/music-functions.scm (unfold-repeats): rewrite. Cannot set
10543         length-callback after creation. 
10544
10545         * scripts/convert-ly.py (conv): unfoldrepeats -> unfoldRepeats,
10546         compressmusic -> compressMusic.
10547
10548         * ly/music-functions-init.ly (oldaddlyrics): idem.
10549
10550         * lily/parser.yy: NewLyricCombineMusic ->
10551         LyricCombineMusic. LyricCombineMusic -> OldLyricCombineMusic.
10552
10553 2005-05-24  Pedro Kroger  <kroeger@pedrokroeger.net>
10554
10555         * ly/Welcome_to_LilyPond.ly: typo.
10556
10557 2005-05-24  Graham Percival  <gperlist@shaw.ca>
10558
10559         * Documentation/user/lilypond.tely: move changing-defaults to be
10560         before global issues.
10561
10562         * Documentation/user/basic-notation.itely: move Transpose section
10563         here from advanced/Other.
10564
10565         * Documentation/user/changing-defaults.itely,
10566         advanced-notation.itely: move Fonts to advanced, edit.
10567
10568 2005-05-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10569
10570         * lily/parser.yy (bare_int): remove rule.  From now on, we require
10571         # before negative integers.
10572
10573 2005-05-23  Graham Percival  <gperlist@shaw.ca>
10574
10575         * ly/property.ly: Update tieDotted to have the same form as slurDotted.
10576
10577         * Documentation/user/lilypond.tely: change Unified index to
10578         LilyPond index.
10579
10580         * Documentation/user/advanced-notation.itely,
10581         instrument-notation.itely: editing.
10582
10583 2005-05-23  Jan Nieuwenhuizen  <janneke@gnu.org>
10584
10585         * scm/lily.scm (lilypond-all): Bugfix: return failed.
10586
10587         * lily/main.cc (setup_paths)[__MINGW32__]: Normalize LILYPONDPREFIX.
10588
10589 2005-05-21  Jan Nieuwenhuizen  <janneke@gnu.org>
10590
10591         * lily/general-scheme.cc (ly:stderr-redirect): Rename from
10592         ly:port-move.  Needs to be stderr-specific on mingw.
10593         Run fixcc.
10594
10595 2005-05-20  Jan Nieuwenhuizen  <janneke@gnu.org>
10596
10597         * lily/general-scheme.cc (ly:port-move): Remove.
10598
10599         * scm/backend-library.scm (postscript->pdf): Remove -dSAFER in
10600         windows.
10601
10602         * lily/main.cc (setup_paths) [ARGV0_RELOCATION]: Reinstate GS_*
10603         variables.  This eliminates the need for a gs.bat wrapper, which
10604         opens a console.
10605
10606         * scripts/lilypond-invoke-editor.scm (running-from-gui?): 
10607         * scm/lily.scm (running-from-gui?): 
10608         * lily/main.cc[MINGW]: Remove isatty inversion, this is an
10609         artifact of not compiling with -mwindows.
10610
10611         * scm/editor.scm: Define PLATFORM.
10612
10613 2005-05-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10614
10615         * scripts/lilypond-book.py (PREAMBLE_LY): add marker, where people
10616         can start to cut & paste lilypond-book fragments.  
10617
10618         * scm/define-music-types.scm (music-descriptions): remove
10619         UntransposableMusic
10620
10621 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10622
10623         * scm/output-ps.scm (glyph-string): remove / before CIDs.
10624
10625 2005-05-20  Graham Percival  <gperlist@shaw.ca>
10626
10627         * Documentation/user/instrument-notation.itely: remove *Engraver.
10628
10629         * Documentation/user/advanced-notation.itely: edit, rearrange.
10630
10631 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10632
10633         * scm/output-ps.scm (glyph-string): take cid? argument. Use
10634         findresource iso. findfont for CID CFF fonts.
10635
10636         * VERSION (PACKAGE_NAME): release 2.5.25
10637
10638         * ly/Welcome_to_LilyPond.ly: add  \version
10639
10640 2005-05-20  Graham Percival  <gperlist@shaw.ca>
10641
10642         * Documentation/user/programming-interface.itely: move
10643         \displayMusic into its own section.
10644
10645         * Documentation/user/basic-notation.itely: finish editing.
10646
10647 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10648
10649         * flower/file-path.cc (find): don't throw away file_name.dir, but
10650         append to it. Fixes \include with directories.
10651
10652         * flower/include/file-path.hh (class File_path): don't derive from
10653         Array<String>.
10654
10655         * flower/include/file-name.hh (class File_name): remove to_str0()
10656
10657         * lily/hara-kiri-engraver.cc (acknowledge_grob): split
10658         Hara_kiri_engraver in separate file.
10659
10660         * lily/slur-configuration.cc (score_encompass): oops, <? to min()
10661         translation went wrong. Fixes vertically translated slurs.
10662
10663 2005-05-19  Graham Percival  <gperlist@shaw.ca>
10664
10665         * Documentation/user/basic-notaton.itely: editing.
10666
10667 2005-05-18  Graham Percival  <gperlist@shaw.ca>
10668
10669         * Documentation/user/macros.itexi, basic-notation.itely:
10670         add @commonprop (commonly used properties) macro.
10671
10672 2005-05-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10673
10674         * ly/Welcome_to_LilyPond.ly: talk about icon, not program.
10675
10676         * scripts/lilypond-book.py (invokes_lilypond): new function
10677         (main): only run fontextract if invokes_lilypond() is true.
10678
10679         * lily/function-documentation.cc (ly_add_function_documentation):
10680         duh, use !=
10681
10682         * Documentation/topdocs/INSTALL.texi (Top): add MacOS command.
10683
10684         * stepmake/aclocal.m4: remove kpathsea warning, change to OPTIONAL.
10685
10686         * scm/lily.scm (running-from-gui?): lowercase Darwin.
10687
10688         * lily/function-documentation.cc (ly_add_function_documentation):
10689         use scm_hash_table_p() for checking.
10690
10691 2005-05-18  Jan Nieuwenhuizen  <janneke@gnu.org>
10692
10693         * Documentation/user/advanced-notation.itely (Text scripts):
10694         Change nonexisting @internalsref{Text markup} to @ref{Text
10695         markup}.  Change @internalsref{Text script} to
10696         @internalsref{TextScript}.
10697
10698         * lily/main.cc (setup_paths): Bugfix: pangorc is not pango.modules.
10699
10700 2005-05-17  Graham Percival  <gperlist@shaw.ca>
10701
10702         * Documentation/user/tutorial.itely, basic-notation.itely,
10703         changing-defaults.itely: remove duplicate cindex entries
10704         that appear on the same page.
10705
10706         * scm/define-grobs.scm: change default padding for TextSpanner.
10707
10708         * Documentation/topdocs/AUTHORS.texi: update email address.
10709
10710         * Documentation/user/global.itely: add info about \include.
10711
10712 2005-05-17  Jan Nieuwenhuizen  <janneke@gnu.org>
10713
10714         * scm/backend-library.scm (postscript->pdf): Remove (useless) .ps
10715         when running-from-gui.
10716
10717         * scm/editor.scm (get-editor): Add platform defaults.
10718
10719         * scm/backend-library.scm (postscript->pdf): Typo.
10720
10721 2005-05-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10722
10723         * scm/lily.scm (running-from-gui?): Darwin never runs from GUI.
10724
10725         * lily/font-config.cc (init_fontconfig): add warning about cache.
10726
10727 2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
10728
10729         * lily/main.cc (setup_paths)[ARGV0_RELOCATION]: Remove GS_*.
10730
10731 2005-05-16  Mats Bengtsson  <mabe@s3.kth.se>
10732
10733         * lily/horizontal-bracket.cc (print): Take care of the direction
10734         property so brackets above the stave point downwards. 
10735
10736         * scm/define-grobs.scm (all-grob-descriptions): Set staff-padding
10737         for HorizontalBracket so it doesn't end up within the stave.
10738
10739 2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
10740
10741         * lily/GNUmakefile (default): Typo.
10742
10743         * scm/lily.scm (PLATFORM): Export.
10744
10745         * scm/framework-ps.scm (write-preamble)[MINGW]: Use
10746         load-font-via-GS, ttftool or fopencookie is broken on windows.
10747         
10748         * scm/backend-library.scm (postscript->pdf)[MINGW]: Do not use
10749         -dSAFER, that is broken on windows.
10750
10751 2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10752
10753         * lily/GNUmakefile ($(outdir)/FlexLexer.h): conditional dependency
10754         for FlexLexer.h
10755
10756         * scripts/lilypond-invoke-editor.scm: remove stray -
10757
10758 2005-05-15  Jan Nieuwenhuizen  <janneke@gnu.org>
10759
10760         * lily/lily-guile.cc (ly_scm2newstr): Use scm_i_string_length.
10761         Fixes deprecation warning.
10762
10763         * flower/include/string.icc (to_string): Only inline if
10764         -DSTRING_UTILS_INLINED.
10765
10766         * lily/pango-font.cc (pango_item_string_stencil): Normalize file
10767         name.  Remove windows comment.
10768
10769         * scm/editor.scm (slashify): New function.
10770         (get-editor-command): Use it.
10771         (get-command-template): Do not alter editor command if
10772         environment value includes `%(file)s' magic.
10773
10774         * scripts/lilypond-invoke-editor.scm (unquote-uri): New function.
10775         (dissect-uri): Use it.
10776         (unquote-uri): Bugfix.
10777
10778 2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10779
10780         * scm/framework-ps.scm (write-preamble): add TTF rule.
10781
10782         * Documentation/topdocs/README.texi (Top): remove note about
10783         xdelta.
10784
10785         * Documentation/topdocs/INSTALL.texi (Top): remove Flex
10786         requirement.
10787
10788         * stepmake/aclocal.m4: STEPMAKE_FLEXLEXER_LOCATION: new
10789         function. Figure out where FlexLexer.h lives
10790
10791         * lily/GNUmakefile (OUT_DIST_FILES): dist lexer.cc and FlexLexer.h
10792         
10793 2005-05-14  Jan Nieuwenhuizen  <janneke@gnu.org>
10794
10795         * scripts/lilypond-invoke-editor.scm (dissect-uri): Handle URIs
10796         with Windows root in file name.
10797
10798         * scm/backend-library.scm (ly:system): Only redirect output (using
10799         system and shell, ugh) if /dev/null is writable.
10800
10801         * Documentation/pictures/GNUmakefile [PLATFORM_WINDOWS]: Build
10802         windows icon.
10803
10804         * scm/lily.scm (is-absolute?): New function.  Fixes absolute files
10805         on Mingw.
10806
10807         * scm/output-ps.scm (grob-cause): Use it.  Fixes PDF point and
10808         click.
10809
10810         * flower/file-path.cc (is_dir, is_file): New function.  Actually
10811         use result of stat when available.
10812
10813         * flower/file-path.cc (find): Use it.  Refactor.  Fixes Mingw,
10814         absolute file name and root.
10815
10816         * scm/lily.scm (PLATFORM): On mingw, slashify getcwd.
10817
10818         * scm/editor.scm (get-editor-command): Typo: do not apply editor.
10819
10820         * flower/file-name.cc (slashify): Bugfix, do substitute if no
10821         slashes in file name.
10822
10823 2005-05-13  Jan Nieuwenhuizen  <janneke@gnu.org>
10824
10825         * Documentation/user/preface.itely (Preface): Run
10826         texinfo-all-menus-update.
10827
10828         * scm/editor.scm (get-editor-command): Bugfix: allow full
10829         LYEDITOR setting, partial XEDITOR setting.  With typo fix.
10830
10831         * Documentation/pictures/lilypond-48.xpm: New file.
10832
10833         * flower/file-path.cc (to_string): Bugfix: use PATHSEP.
10834
10835         * ly/Welcome_to_LilyPond.ly: New file.
10836
10837         * lily/main.cc (main): Only identify if we have a terminal.
10838
10839         * scm/backend-library.scm (postscript->png)
10840         (postscript->pdf): Fix file name quoting for GS/MINGW (ie,
10841         non-/bin/sh).
10842
10843 2005-05-13  Heikki Junes  <hjunes@cc.hut.fi>
10844
10845         * Documentation/topdocs/AUTHORS.texi: polish, update.
10846
10847 2005-05-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10848
10849         * Documentation/user/preface.itely (Notes for version 2.6): new
10850         notes for 2.6
10851
10852         * lily/dynamic-engraver.cc (stop_translation_timestep): first set
10853         finished_span_, then call typeset_all(). Fixes spurious "Hairpin
10854         is not fully contained" warnings.
10855
10856         * lily/slur-scoring.cc (get_bound_info): remove warning.
10857
10858         * lily/staff-symbol-engraver.cc (process_music): start initial
10859         spanner in process_music(). This fixes overrides of StaffSymbol
10860         properties.
10861
10862         * scm/framework-pdf.scm (Module): remove.
10863
10864         * Documentation/topdocs/AUTHORS.texi (AUTHORS): clean up, update.
10865
10866         * lily/ambitus-engraver.cc: formatting cleanups.
10867
10868         * mf/feta-solfa.mf (Module): remove.
10869
10870         * ChangeLog: more details about contributions.
10871
10872 2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10873
10874         * lily/align-interface.cc (align_elements_to_extents): warn if
10875         called too early. Fixes: disappearing-staff-lines.ly
10876
10877         * VERSION (PACKAGE_NAME): release 2.5.24
10878
10879 2005-05-12  Jan Nieuwenhuizen  <janneke@gnu.org>
10880
10881         * stepmake/aclocal.m4: Typo.
10882
10883         * flower/string.cc (substitute): Take two strings or two
10884         characters.  Update callers.
10885
10886 2005-05-11  Jan Nieuwenhuizen  <janneke@gnu.org>
10887
10888         * flower/file-name.cc (File_name): Slashify.
10889
10890         * scm/lily.scm: Use gui-main iso lilypond-main on MINGW.
10891
10892         * scripts/GNUmakefile (SEXECUTABLES): Add lilypond-invoke-editor.
10893
10894         * stepmake/aclocal.m4 (STEPMAKE_WINDOWS): New function.
10895
10896         * configure.in (gui_b): Use it.
10897
10898         * lily/lilypond.rc.in: New file.
10899
10900         * lily/GNUmakefile[PLATFROM_WINDOWS]: Compile it into executable.
10901
10902 2005-05-12  Graham Percival  <gperlist@shaw.ca>
10903
10904         * Documentation/user/advanced-notation.itely: edit of Text
10905         section; clarify text scripts vs. text markup.
10906
10907 2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10908
10909         * lily/multi-measure-rest-engraver.cc
10910         (Multi_measure_rest_engraver): init bar_seen_ to true. Notice
10911         separation items on start. Fixes mm rests in start of score.
10912
10913         * lily/slur-scoring.cc (move_away_from_staffline): robustness,
10914         don't access StaffSymbol if not there.
10915         Fixes: crash-staff-symbol-engraver.ly.
10916
10917         * lily/instrument-name-engraver.cc (class
10918         Instrument_name_engraver): data member first_. Create
10919         InstrumentName on start. 
10920
10921 2005-05-12  Graham Percival  <gperlist@shaw.ca>
10922
10923         * Documentation/user/instrument-notation.itely: add guitar
10924         position.
10925
10926         * Documentation/user/introduction.itely,
10927         Documentation/user/lilypond.tely,
10928         Documentation/user/tutorial.itely: begin pruning
10929         unused (duplicated) cindex entries and misc cleanup.
10930
10931 2005-05-12  Mats Bengtsson  <mabe@s3.kth.se>
10932
10933         * input/test/volta-chord-names.ly: Bring the explanation up to
10934         date.
10935
10936 2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
10937
10938         * Documentation/topdocs/{AUTHORS.texi,INSTALL.texi,README.texi}:
10939         Specify `@documentencoding utf-8' for html, ignore warnings.
10940
10941 2005-05-11  Erik Sandberg  <ersa9195@student.uu.se>
10942
10943         * THANKS: Added bughunters.
10944
10945 2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
10946
10947         * lily/main.cc: update help string for `lilypond -H'.
10948
10949         * po/fi.po: update.
10950         
10951 2005-05-10  Graham Percival  <gperlist@shaw.ca>
10952
10953         * Documentation/user/advanced-notation.itely: minor fixes.
10954
10955 2005-05-10  Jan Nieuwenhuizen  <janneke@gnu.org>
10956
10957         * scm/editor.scm: New module.
10958
10959         * scm/lily.scm (gui-main): Use it.
10960
10961         * scm/framework-gnome.scm (spawn-editor): Use it.
10962
10963         * scripts/lilypond-invoke-editor.scm: Use it in new script.
10964
10965 2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10966
10967         * scm/framework-ps.scm (load-font-via-GS):  new function.
10968
10969         * lily/pango-font.cc (pango_item_string_stencil): add support for
10970         CID keyed font.
10971
10972         * scm/output-ps.scm (glyph-string): add support for CID keyed font.
10973
10974 2005-05-10  Graham Percival  <gperlist@shaw.ca>
10975
10976         * Documentation/user/basic-notation.itely: add @ref.
10977
10978         * Documentation/user/advanced-notation.itely: add example
10979         of 5/8 beaming.
10980
10981 2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10982
10983         * scripts/lilypond-pdfpc-helper.py (ly_pc_editor): robustness fixes.
10984
10985         * scm/backend-library.scm (postscript->pdf): Invoke gs instead of
10986         going through ps2pdf wrappers.
10987
10988 2005-05-09  Jürgen Reuter  <reuter@ipd.uka.de>
10989
10990         * Documentation/user/instrument-notation.itely: petrucci note
10991         heads: updated docu
10992
10993         * input/regression/note-head-style.ly: updated regression test;
10994         indentation fixes
10995
10996         * ly/engraver-init.ly: MensuralVoiceContext: use petrucci note
10997         heads as default
10998
10999         * mf/parmesan-heads.mf: minor editing; use musicological names
11000         (rather than optical description) as note head names
11001
11002         * scm/output-lib.scm: complete petrucci heads
11003
11004 2005-05-09  Pal Benko  <benkop@freestart.hu>
11005
11006         * mf/parmesan-heads.mf: add petrucci heads (like neo-mensural
11007         heads, but bigger)
11008
11009 2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
11010
11011         * lily/main.cc (main_with_guile): Remove no files check.
11012
11013         * lily/main.cc (ly:usage): Export to Scheme.
11014
11015         * scm/lily.scm (no-files-handler): New function.
11016
11017         * scm/lily.scm (lilypond-main): Use it.
11018
11019         * configure.in (gui_b): Add mbrtowc checking.
11020         Resurrect [utf8/]wchar.h checking.
11021
11022 2005-05-09  Mats Bengtsson  <mabe@s3.kth.se>
11023
11024         * Documentation/user/advanced-notation.itely (Metronome marks):
11025         Add link to the program reference for MetronomeMark
11026
11027         * Documentation/user/lilypond-book.itely (An example of a
11028         musicological document): Correct the example using psfonts 
11029
11030 2005-05-09  Heikki Junes  <hjunes@cc.hut.fi>
11031
11032         * po/fi.po: update after a lesson how to update entries against
11033         source.
11034         
11035         * po/TODO: document the lesson.
11036
11037 2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11038
11039         * configure.in (gui_b): remove wcrtomb checking.
11040
11041         * lily/general-scheme.cc (LY_DEFINE): hand-convert utf8 to 32
11042         bits. Patch by Matthias Neeracher. <neeracher@mac.com>
11043
11044 2005-05-09  Mats Bengtsson  <mabe@s3.kth.se>
11045
11046         * scripts/convert-ly.py: In the conversion to version 1.9.0, 
11047         keep Scheme expressions and strings unmodified when doing the
11048         conversion to postfix notation for slurs and beams. Should
11049         hopefully solve most related conversion problems. 
11050
11051         * Documentation/user/lilypond-book.itely : Clarify and correct how
11052         to call dvips with -h psfonts.
11053
11054 2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
11055
11056         * Documentation/user/instrument-notation.itely (Entering lyrics):
11057         Typo.  Fixes build.
11058
11059 2005-05-09  Graham Percival  <gperlist@shaw.ca>
11060
11061         * Documentation/user/lilypond-book.itely: document PSFONTS file.
11062
11063         * Documentation/user/lilypond.tely, lilypond-book.itely,
11064         tutorial.itely: change references to 2.5.x to 2.6.x.
11065
11066         * Documentation/user/instrument-notation.itely: clarified \addlyrics
11067         vs \lyricmode.
11068
11069         * Documentation/user/invoking.itely: remove old info about
11070         lilypond-profile.
11071
11072         * Documentation/topdocs/INSTALL.texi: remove old info about
11073         lilypond-profile, add warning about needing international fonts
11074         to build docs.
11075
11076 2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11077
11078         * lily/include/grob-info.hh (class Grob_info): make data member
11079         private. Changes throughout.
11080
11081         * input/regression/alignment-order.ly: new file. 
11082
11083         * lily/vertical-align-engraver.cc (acknowledge_grob): read
11084         alignAboveContext and alignBelowContext
11085
11086 2005-05-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11087
11088         * lily/pfb.cc (LY_DEFINE): add cast.
11089
11090         * scm/framework-ps.scm (write-preamble): embed CFFs if file name
11091         matches .otf
11092         (write-preamble): warn about unknown fonts.
11093
11094         * lily/pfb.cc (Module): new function ly:otf->cff
11095
11096         * lily/open-type-font.cc (get_otf_table): use ::get_otf_table
11097         (get_otf_table): new function.
11098
11099 2005-05-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11100
11101         * scm/backend-library.scm (postscript->png): call lilypond-ps2png
11102         iso. ps2png.
11103
11104 2005-05-06  Heikki Junes  <hjunes@cc.hut.fi>
11105
11106         * po/fi.po: apply second round of update.
11107
11108 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11109
11110         * scm/x11-color.scm (make-x11-color-handler): don't use
11111         #\sp. Apparently doesn't work on all platforms. 
11112
11113 2005-05-06  Graham Percival  <gperlist@shaw.ca>
11114
11115         * Documentation/user/advanced-notation.itely, putting.itely,
11116         tutorial.itely, global.itely, introduction.itely: really minor fixes.
11117
11118 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11119
11120         * VERSION (PACKAGE_NAME): release 2.5.23
11121
11122 2005-05-06  Jan Nieuwenhuizen  <janneke@gnu.org>
11123
11124         * Documentation/topdocs/AUTHORS.texi: Remove texinfo @accents,
11125         convert to utf-8.
11126
11127         * THANKS: Add translators for this release, convert to utf-8.
11128
11129         * mf/GNUmakefile (MFTRACE_FLAGS):
11130         * buildscripts/substitute-encoding.py (outdir): Build fix: pass
11131         outdir as option (WAS: hardcoded).
11132
11133 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11134
11135         * lily/staff-symbol-engraver.cc (Staff_symbol_engraver): init
11136         finished_span_
11137
11138         * THANKS: add Hans Forbrich.
11139
11140         * Documentation/topdocs/NEWS.tely (Top): document new feature.
11141
11142         * Documentation/user/basic-notation.itely (Staff symbol): document
11143         start/stop staff. Reference to ossia.ly
11144
11145         * input/test/ossia.ly: new example using stop and startStaff.
11146
11147         * lily/timing-engraver.cc: remove Timing_engraver::initialize(),
11148         in other words, don't create "|" barline at start of the score.
11149         (start_translation_timestep): don't set whichBar for start of score.
11150
11151         * input/regression/staff-halfway.ly: use new functionality.
11152
11153         * lily/staff-symbol-engraver.cc (try_music): take StaffSpanEvents,
11154         start and stop staff based on events.
11155
11156         * scm/define-music-types.scm (music-descriptions): add StaffSpanEvent
11157
11158         * ly/declarations-init.ly (startStaff, stopStaff): new identifiers.
11159
11160 2005-05-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11161
11162         * Documentation/user/programming-interface.itely (How markups work
11163         internally ): remove \encoding reference.
11164
11165 2005-05-04  Mats Bengtsson  <mabe@s3.kth.se>
11166
11167         * scripts/convert-ly.py: Attempt to do a smarter update of 
11168         text markups from versions < 1.9.0 with arbitrary nesting.
11169
11170 2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
11171
11172         * po/fi.po: convert to utf-8, and update.
11173
11174 2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11175
11176         * make/lilypond.suse.spec.in: update from suse 2.4 package.
11177
11178         * lily/*.cc: more <? >? to min/max changes
11179
11180         * lily/include/interpretation-context-handle.hh: rename
11181         Interpretation_context_handle to Context_handle.
11182
11183 2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
11184
11185         * input/regression/GNUmakefile (local_delete): use `find` together 
11186         with `xargs` to avoid too long argument-lists in cmd line.
11187
11188 2005-05-04  Graham Percival  <gperlist@shaw.ca>
11189
11190         * Documentation/user/introduction.itely: updates "About this manual".
11191
11192         * Documentation/user/advanced-notation.itely,
11193         invoking.itely: minor fixes.
11194
11195 2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11196
11197         * COPYING: add font exception. Update FSF address. 
11198
11199         * lily/context-def.cc (path_to_acceptable_context): bugfix, depth
11200         should be taken without child context.
11201
11202         * ly/chord-modifiers-init.ly (blackTriangleMarkup): use it.
11203
11204         * scm/define-markup-commands.scm (triangle): new command, as
11205         robust replacement for unicode Delta/Triangle.
11206
11207 2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11208
11209         * ps/music-drawing-routines.ps: add fillp argument.
11210
11211         * lily/lookup.cc (round_filled_polygon): polygon takes filled? argument
11212
11213         * lily/font-config.cc (init_fontconfig): don't add cff/
11214
11215         * VERSION (PACKAGE_NAME): release 2.5.22
11216
11217         * mf/GNUmakefile: remove cff/cff.ps/.map install rules.
11218
11219         * lily/grace-engraver.cc (consider_change_grace_settings): use
11220         is_alias(). Fixes problem with CueVoice grace notes. 
11221
11222         * lily/simultaneous-music-iterator.cc (construct_children): call
11223         Music_iterator::quit() for iterators that start out invalid. This
11224         fixes indefinitely continuing contexts.
11225
11226         * buildscripts/substitute-encoding.py: new file
11227
11228         * Documentation/user/basic-notation.itely (Basic polyphony): fix
11229         missing @end 
11230
11231         * scripts/lilypond-book.py (write_if_updated): print file name.
11232
11233         * Documentation/user/basic-notation.itely (Explicitly
11234         instantiating voices): idem.
11235
11236         * Documentation/user/advanced-notation.itely (Text spanners):
11237         remove stray { } 
11238
11239         * lily/context.cc (default_child_context_name): the default child
11240         is now first in accepts_list_.
11241
11242         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
11243         \defaultchild to all relevant contexts.  This fixes:
11244         drums-pitch.ly.
11245
11246         (Probably also fixes similar problems with ancient
11247         transcriptions getting CueVoices instead of the desired voices.)
11248  
11249         * lily/context-def.cc (get_default_child): new function.
11250         (get_accepted): place default child in front of list.
11251
11252         * lily/parser.yy (FIXME): add DEFAULTCHILD token.
11253
11254         * lily/include/context-def.hh (struct Context_def): add
11255         default_accept_
11256
11257 2005-05-03  Graham Percival  <gperlist@shaw.ca>
11258
11259         * scm/define-grobs.scm: remove "remove-first" line, since
11260         the absent property is set to #f anyway.
11261
11262         * Documentation/user/basic-notation.itely,
11263         advanced-notation.itely, instrument-notation.itely: minor
11264         fixes.
11265
11266         * ly/property-init.ly: add textSpanner{Up,Down,Neutral}.
11267
11268         * Documentation/user/advanced-notation.itely,
11269         changing-defaults.itely: consolidate Text stuff in
11270         advanced notation.
11271
11272         * Documentation/user/global.itely: better docs for \header.
11273
11274         * Documentation/user/putting.itely: new chapter; placeholder
11275         for future expansion.
11276
11277         * Documentation/user/examples.itely: moved "suggestions for
11278         writing LP files" section into putting.itely.
11279
11280         * Documentation/user/lilypond.itely: added new chapter,
11281         fixed the short table of contents.
11282
11283 2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11284
11285         * lily/beam-quanting.cc (quanting): robustness fix, don't produce
11286         infinity for unfeasible beams.
11287
11288         * make/lilypond.fedora.spec.in (Group): idem.
11289
11290         * scripts/GNUmakefile (SEXECUTABLES): rename ps2png to lilypond-ps2png
11291
11292         * mf/GNUmakefile (ALL_GEN_FILES): remove .map
11293
11294         * scm/framework-ps.scm (write-preamble): extract CFF from OTF
11295         fonts directly.
11296
11297         * buildscripts/gen-emmentaler-scripts.py (i): idem.
11298
11299         * mf/GNUmakefile: remove all CFF rules.
11300
11301         * scm/framework-ps.scm (ps-embed-cff): reinstate.
11302
11303         * lily/open-type-font-scheme.cc (LY_DEFINE):
11304         new function ly:otf-font-table-data.
11305         (LY_DEFINE): new function otf-font?
11306
11307 2005-05-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11308
11309         * mf/GNUmakefile ($(outdir)/lilypond.map): remove rule.
11310         ($(outdir)/Fontmap.lily): idem.
11311
11312         * buildscripts/gen-emmentaler-scripts.py (i): load fetaXX encoding
11313         for PFAEmmentaler-XXX.pfa. 
11314
11315         * Documentation/user/music-glossary.tely (accidental): NL
11316         translation of accidental.
11317
11318 2005-05-02  Jan Nieuwenhuizen  <janneke@gnu.org>
11319
11320         * flower/include/international.hh: Bugfix: include "string.hh".
11321
11322         * lily/include/mingw-compatibility.hh: New file.
11323
11324         * flower/include/libc-extension.hh (memrev): Rename from strrev.
11325
11326         * configure.in: Search for mingw wcrtomb library.
11327
11328 2005-05-02  Mats Bengtsson  <mabe@s3.kth.se>
11329
11330         * scripts/convert-ly.py: Bug fix
11331
11332         * Documentation/user/changing-defaults.itely (Common tweaks):
11333         Added example where the context has to be specified explicitly
11334         (MetronomeMark). 
11335
11336 2005-05-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11337
11338         * scripts/lilypond-book.py (ly_options): set timing to #f for
11339         notime option.
11340
11341         * scripts/convert-ly.py (conv): typo.
11342
11343         * flower/*.cc: remove <? and >?
11344         
11345         * lily/*.cc: remove <? and >?
11346
11347         * lily/tweak-registration.cc (insert_tweak_from_file): Make sure
11348         that 0x0 isn't passed into scm_cons(). Fixes crash with tweak
11349         editor.
11350
11351 2005-04-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11352
11353         * lily/part-combine-engraver.cc: add space to variable list.
11354
11355 2005-04-30  Graham Percival  <gperlist@shaw.ca>
11356
11357         * scm/define-grobs.scm: changed RemoveEmptyVerticalGroup's
11358         remove-first to false (matches docs)
11359
11360         * Documentation/user/advanced-notation.itely: corrected docs
11361         concerning remove-first.
11362
11363 2005-04-29  Mats Bengtsson  <mabe@s3.kth.se>
11364
11365         * lily/part-combine-engraver.cc: make sure that the relevant
11366         properties are included in the documentation.
11367
11368 2005-04-28  Graham Percival  <gperlist@shaw.ca>
11369
11370         * Documentation/user/lilypond-book.itely: Bernard's docs
11371         for \betweenLilyPondSystem.
11372
11373 2005-04-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11374
11375         * Documentation/topdocs/INSTALL.texi (Top): remove TeX outdated
11376         remarks.
11377
11378 2005-04-28  Pal Benko  <benkop@freestart.hu>
11379
11380         * lily/mensural-ligature.cc (brew_flexa): apply thickness property
11381         only on vertical lines of flexa shape, and use a constant
11382         thickness value for horizontal lines (patch slightly modified by
11383         Jürgen Reuter)
11384
11385         * lily/include/mensural-ligature.hh: make 2 comments clearer
11386
11387 2005-04-28  Jürgen Reuter  <reuter@ipd.uka.de>
11388
11389         * lily/vaticana-ligature-engraver.cc (need_extra_space): renamed
11390         to need_extra_horizontal_space; bugfix: use class scope to avoid
11391         global namespace pollution
11392
11393         * Documentation/user/instrument-notation.itely (ligatures): added
11394         comment on possible future syntax change and how to work around
11395
11396         * lily/vaticana-ligature-engraver.cc, mf/parmesan-heads.mf
11397         (epiphonus, cephalicus): fine-tune shape of plica head for narrow
11398         intervals (fixes agnus dei example)
11399
11400         * Documentation/user/instrument-notation.itely (white mensural
11401         ligatures): selected a more illustrative example
11402
11403 2005-04-28  Heikki Junes <hjunes@cc.hut.fi>
11404
11405         * Documentation/index.html.in: specify utf-8 charset in meta content.
11406
11407 2005-04-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11408
11409         * python/lilylib.py (make_ps_images): bugfixes; GS can produce
11410         empty 2nd page for single page.
11411
11412         * scm/lily.scm: remove p&c definitions.
11413
11414         * po/zh_TW.po (Module): new translation.
11415
11416         * lily/lily-guile.cc (ly_chain_assoc): remove.
11417
11418         * lily/general-scheme.cc (LY_DEFINE): export ly:chain_assoc_get
11419         (LY_DEFINE): recurse, iso. calling ly_chain_assoc.
11420
11421 2005-04-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11422
11423         * lily/beaming-info.cc: remove infinity_i
11424
11425         * scripts/abc2ly.py (out_filename): fix thinko with \version.
11426
11427 2005-04-26  Graham Percival  <gperlist@shaw.ca>
11428
11429         * Documentation/user/basic-notation.itely,
11430         instrument-notation.itely, advanced-notation.itely,
11431         changing-defaults.itely: minor fixes.  Added docs
11432         for colors to advanced-notation.itely.
11433
11434         * Documentation/user/advanced-notation.itely: fixed compile
11435         problem and added Bernard's x11-color doc patch.
11436
11437 2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
11438
11439         * scm/output-ps.scm (grob-cause): Yet another fix, hope it's
11440         alright this time round.
11441
11442 2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11443
11444         * Documentation/topdocs/INSTALL.texi (Top): idem.
11445
11446         * Documentation/topdocs/README.texi (Top): remove clean-fonts refs.
11447
11448         * VERSION (MAJOR_VERSION): release 2.5.21
11449
11450         * scm/output-ps.scm (grob-cause): bugfix.
11451
11452 2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
11453
11454         * cygwin/*: Update.
11455
11456         * cygwin/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Remove profile
11457         stuff.
11458
11459         * scm/output-ps.scm (grob-cause): Bugfix.
11460
11461         * scm/lily.scm (ly:load): Remove x11-color.
11462
11463         * stepmake/aclocal.m4 (STEPMAKE_GET_EXECUTABLE): Bugfix: do not
11464         quote executable, fixes getting version from program --with
11465         --options.
11466         (STEPMAKE_KPATHSEA): Bugfix for Cygwin cross building: use
11467         $ac_exeect.
11468
11469         * Documentation/user/GNUmakefile: Only build music-glossary with
11470         rendered lilypond snippets during web.
11471
11472 2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11473
11474         * po/de.po: update.
11475
11476         * lily/GNUmakefile (OUT_DIST_FILES): don't dist lexer.cc
11477
11478 2005-04-22  Laura Conrad <lconrad@laymusic.org>
11479  
11480         * scripts/abc2ly:
11481         second title line append with punctuation dash character;
11482         encode abc2ly python strings in utf-8
11483        
11484 2005-04-21  Laura Conrad <lconrad@laymusic.org>
11485
11486         * scripts/abc2ly fix chords (again)
11487  
11488 2005-04-22  Bernard Hurley  <bernard@fong-hurley.org.uk>
11489
11490         * scm/x11-color.scm: new file
11491         All x11 color names can be accessed with:
11492         #(x11-color 'ColorName),
11493         #(x11-color "ColorName") or:
11494         #(x11-color "color name")
11495         If the x11 color name is not recognised then it defaults
11496         to black
11497
11498         * scm/lily.scm: amended to call scm/x11-color.scm
11499
11500 2005-04-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11501
11502         * Documentation/user/invoking.itely (Reporting bugs): comment out
11503         reference to online PNG bug repository.
11504
11505 2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
11506
11507         * lily/translator-scheme.cc (ly:translator-property): Remove.
11508         Update callers.
11509
11510         * lily/context-scheme.cc (ly:context-now): Move from translator.
11511         Update callers.
11512
11513 2005-04-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11514
11515         * input/regression/grid-lines.ly (skips): refine example.
11516
11517         * scm/define-context-properties.scm
11518         (all-user-translation-properties): doc autoBeamCheck
11519
11520         * input/regression/grid-lines.ly (Module): new file.
11521
11522         * lily/grid-point-engraver.cc (Module): new file.
11523
11524         * lily/grid-line.cc (Module): new file.
11525
11526         * lily/grid-line-span-engraver.cc (Module): new file.
11527
11528         * lily/grid-line-interface.cc (Module): new file.
11529
11530 2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
11531
11532         * scm/auto-beam.scm (revert-property-setting): Bugfixes: add
11533         missing parameter, actualy cdr through list.  Actually return a
11534         list with ENTRY removed (was '()).
11535
11536         * scripts/convert-ly.py: Update.  Print warning if file cannot be
11537         opened.
11538         (do_conversion): Fix printing of continuation comma.
11539
11540         * Documentation/user/advanced-notation.itely (Beam formatting):
11541         Remove refbugs about compound time and mixed duration.
11542
11543         * scm/auto-beam.scm (default-auto-beam-settings): Write out all
11544         modulo moments explicitely.
11545
11546         * lily/moment.cc (operator %): New function.
11547
11548         * lily/moment-scheme.cc (ly:mod-moment): Wrap it.
11549
11550         * lily/translator-scheme.cc (ly:translator-now,
11551         ly:translator-property): New function.
11552
11553         * scm/auto-beam.scm (default-auto-beam-check): New function.
11554
11555         * lily/auto-beam-engraver.cc (test_moment): Use it.
11556
11557         * flower/rational.cc (operator %): Bugfix.
11558
11559 2005-04-21  Erik Sandberg  <ersa9195@student.uu.se>
11560
11561         * scripts/abc2ly: Bugfix
11562
11563 2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11564
11565         * python/fontextract.py (write_extracted_fonts): bugfix, too many
11566         %'s on EndFont comment.
11567
11568         * lily/ledger-line-spanner.cc: some more words of explanation.
11569
11570 2005-04-20  John Williams <williams@tni.com>  
11571         
11572         * scripts/lilypond-book.py: htmlquote bugfix.
11573         Allow snippets to be given distinct filenames.
11574         Allow the default alt text to be overridden.
11575
11576 2005-04-20  Erik Sandberg  <ersa9195@student.uu.se>
11577
11578         * ly/performer-init.ly: Bugfix
11579
11580         * THANKS: Added bughunters.
11581
11582 2005-04-20  Jan Nieuwenhuizen  <janneke@gnu.org>
11583
11584         * SConstruct (test_lib): Bump mftrace requirement to 1.1.9.
11585
11586         * lily/auto-beam-engraver.cc (test_moment): Test exact measure
11587         position (was: use modulo measure length).
11588
11589         * configure.in (no gui_b): Remove optional gtk+ requirement.
11590
11591 2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11592
11593         * Documentation/user/basic-notation.itely (Pitches): add
11594         LedgerLineSpanner.
11595
11596         * lily/dynamic-engraver.cc (process_music): set right bound to
11597         script if present. Else, do not set.
11598         (acknowledge_grob): only set right bound of finished spanner to
11599         note column if no other bound is set.
11600
11601         * python/lilylib.py (make_ps_images): switch back to png16m.
11602         
11603 2005-04-19  Jan Nieuwenhuizen  <janneke@gnu.org>
11604
11605         * scripts/lilypond-book.py (write_if_updated): Bugfix for not
11606         writing up to date file.  Add dvips usage suggestion.
11607
11608         * scripts/convert-ly.py: Fix error message.
11609         Print usage if no files on command line.
11610         (usage): Add example usage.
11611
11612         * input/test/compound-time.ly: New file.
11613
11614         * input/test/circle.ly: New file.
11615
11616         * Documentation/topdocs/NEWS.tely: Use them.
11617
11618         * input/test/boxed-stencil.ly: Remove \score.
11619
11620         * buildscripts/mf-to-table.py (base): Add .log dependency.
11621
11622         * mf/GNUmakefile: Add PFAemmentaler and PFAaybabtu dependencies on
11623         pfa's.  Add .log dependency
11624
11625         * scm/define-markup-commands.scm (lower): New command.
11626
11627         * elisp/lilypond-mode.el (LilyPond-pdf-command): New command,
11628         make it default.
11629
11630 2005-04-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11631
11632         * lily/dynamic-engraver.cc (acknowledge_grob): add note-column
11633         also to finished cresc as right bound. This fixes:
11634         skip-string-decresc.ly
11635
11636         * lily/slur-scoring.cc (get_bound_info): robustness: substitute
11637         relative_coordinate if extent is empty.
11638
11639         * lily/stem.cc (width_callback): determine correct extent if flag
11640         is not there. This fixes slur-no-flag.ly
11641
11642         * lily/grace-engraver.cc (consider_change_grace_settings): new
11643         function.
11644         (initialize): also consider_change_grace_settings() on
11645         initialization. Fixes large grace notes at start of score.
11646
11647         * lily/break-align-interface.cc (do_alignment): don't translate if
11648         total_extent is empty.
11649
11650         * buildscripts/lilypond-{login,profile}.sh (Module): remove file.
11651
11652 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11653
11654         * scm/output-ps.scm (grob-cause): don't add cwd if path starts
11655         with slash.
11656
11657 2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
11658
11659         * stepmake/aclocal.m4: Remove tfm_path.
11660
11661 2005-04-18  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11662
11663         * scm/music-functions.scm (markup-expression->make-markup): fix
11664         bug with cons arguments of markup commands.
11665         (music->make-music): fix music expression property list building
11666
11667 2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
11668
11669         * aclocal.m4: Massage package names.
11670
11671         * SCons updates.
11672
11673 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11674
11675         * VERSION (PACKAGE_NAME): release 2.5.20
11676
11677         * lily/stem.cc (calc_stem_info): add minimum Y extent of
11678         stem-tremolo.  Fixes: bugs/tremolo-stem-length-beamed
11679
11680         * lily/percent-repeat-engraver.cc (try_music): add measure before
11681         next_moment to future processing moment. Fixes:
11682         percent-repeat-mm-rest.ly
11683         (process_music): don't add moment for 2nd time.
11684
11685         * input/regression/repeat-percent.ly: add mmrests as extra test.
11686
11687         * lily/axis-group-engraver.cc (acknowledge_grob): read
11688         keepAliveInterfaces to decide what to kill.
11689
11690         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add
11691         percent-repeat-interface to keepAliveInterfaces. This fixes
11692         percent-repeat-harakiri.
11693
11694 2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
11695
11696         * SCons updates.
11697
11698 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11699
11700         * config.make.in (TTFTOOL_ENDIAN): rm TFM_PATH
11701
11702         * aclocal.m4: remove --enable-tfm-path configure option
11703
11704         * input/test/ancient-font.ly (lowerStaff): clef name errors.
11705
11706         * scm/backend-library.scm (postscript->png): newline after
11707         finishing command.
11708
11709         * lily/paper-score-scheme.cc (LY_DEFINE): new file.
11710         (LY_DEFINE): ly:paper-score-paper-systems: new function 
11711
11712         * lily/score-scheme.cc (LY_DEFINE): require music argument. 
11713
11714         * lily/score.cc (default_rendering): use Music_output too.
11715
11716         * input/test/chord-names-languages.ly (Module): rename file.
11717
11718         * lily/text-spanner.cc: add bound-padding.
11719
11720         * lily/paper-book.cc (systems): accept Paper_score
11721         iso. Paper_system vector. 
11722
11723         * input/regression/line-arrows.ly: new file.
11724
11725         * lily/paper-score.cc (process): run get_paper_systems() only once.
11726
11727         * lily/line-spanner.cc (line_stencil): add arrows.
11728
11729 2005-04-18  Jonatan Liljedahl  <lijon@kymatica.com>
11730
11731         * lily/line-interface.cc (make_arrow): new function. 
11732         (arrows): idem.
11733
11734 2005-04-18  Mathieu Giraud  <magiraud@free.fr>
11735
11736         * input/test/chord-names-german.ly: update for italian/french
11737         chords.
11738         
11739         * Documentation/user/instrument-notation.itely (Printing chord
11740         names): update.
11741
11742 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11743
11744         * lily/include/paper-score.hh (class Paper_score): remove unused
11745         prototypes.
11746
11747         * lily/book.cc (process): add -COUNT to midi output.
11748
11749         * lily/score.cc (book_rendering): remove outname argument
11750         (book_rendering): return list of Music_outputs. 
11751
11752         * lily/global-context-scheme.cc (LY_DEFINE): remove outname argument.
11753
11754         * lily/book.cc (process): loop over Music_outputs returned from
11755         Score::book_rendering().
11756
11757         * lily/*.cc (width_callback): remove spurious "unused" warnings
11758         for assert (axis==[XY]_AXIS); 
11759
11760         * lily/include/music-output.hh (class Music_output): smobify class.
11761
11762         * lily/include/paper-score.hh (class Paper_score): make members
11763         private.
11764
11765         * lily/performance.cc (process): return #f iso. #<undefined>. This
11766         prevents #<undefined> leaking into GUILE-userspace.
11767
11768 2005-04-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11769
11770         * config.hh.in: remove HAVE_PANGO_FC_FONT_MAP_ADD_DECODER_FIND_FUNC.
11771
11772 2005-04-17  Mathieu Giraud  <magiraud@free.fr>
11773
11774         * scm/chord-name.scm : support for italian and french
11775         chords names.
11776
11777         * scm/chord-ignatzek-names.scm (ignatzek-chord-names): add
11778         a space defined by chordPrefixSpacer when the root name is
11779         direclty followed by a prefix.
11780
11781         * ly/engraver-init.ly : chordPrefixSpacer       
11782         * scm/define-context-properties.scm : chordPrefixSpacer
11783         * ly/property-init.ly : italianChords, frenchChords 
11784
11785 2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
11786
11787         * mf/feta-din.mf: Remove.
11788
11789         * mf/GNUmakefile (fontdir): Bugfix.
11790
11791         * mf/SConstruct: Some updates.
11792
11793         * SConstruct: Require pkg-config.
11794         (test_program): Bugfix for double digit version compares, use
11795         integer (not string-) compare.
11796         Optionally require gs 8.14.
11797
11798         * stepmake/aclocal.m4 (STEPMAKE_PANGO_FT2): Define HAVE_PANGO16 too.
11799
11800         * lily/*: s/ifdef HAVE_*/if have/.
11801
11802         * SConstruct (test_lib): New function.  Update pkg-config and some
11803         other requirements.
11804
11805         * configure.in: Require pkg-config.  Enforce REQUIRE and version for
11806         freetype, pangof2t.
11807
11808 2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
11809
11810         * po/lilypond.pot, ...: Update using bison-CVS.
11811
11812         * python/lilylib.py (make_ps_images): Fixo.
11813
11814 2005-04-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11815
11816         * python/lilylib.py (make_ps_images): typo.
11817
11818         * configure.in (gui_b): make bison optional.
11819
11820         * lily/GNUmakefile (OUT_DIST_FILES): dist parser and lexer.
11821
11822 2005-04-16  Bernard Hurley  <bernard@fong-hurley.org.uk>
11823
11824         * framework-eps.scm: code added so that a macro \betweenLilyPondSystem
11825         with one parameter can be defined in a LaTeX file when processed
11826         by lilypond-book this will be evaluated between the systems of
11827         a multi-system score. The parameter is the number of systems processed.
11828
11829 2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
11830
11831         * python/lilylib.py (make_ps_images): Escape newline.
11832
11833         * Documentation/user/music-glossary.tely: Run
11834         texinfo-all-menus-update.
11835
11836 2005-04-14  Jan Nieuwenhuizen  <janneke@gnu.org>
11837
11838         * scm/lily-library.scm (old-relative-not-used-message)
11839         (version-not-seen-message): Add input-file-name-location to message.
11840
11841         * lily/parser.yy (lilypond): Add token aliases.
11842
11843         * Documentation/user/music-glossary.tely (accidental): Fixes.  Do
11844         not confuse with alteration.
11845         (alteration): Add.
11846
11847 2005-04-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11848
11849         * python/lilylib.py (make_ps_images): use -dEPSCrop
11850
11851         * VERSION (PACKAGE_NAME): release 2.5.19 
11852
11853         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
11854         only put xrefs in info documentation.
11855
11856         * make/ly-rules.make ($(outdir)/%.html.omf): transplant .dvi ->
11857         .pdf rule to tex-rules.make.
11858
11859         * scm/framework-eps.scm (dump-stencils-as-EPSes): remove comments
11860         from -systems.* output.
11861
11862         * stepmake/stepmake/tex-rules.make ($(outdir)/%.pdf): make PDF
11863         directly, remove -$(PAGESIZE) target.
11864
11865         * input/test/embedded-postscript.ly: update.
11866
11867 2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11868
11869         * make/lysdoc-targets.make (local-WWW): remove ps.gz target.
11870
11871         * Documentation/user/changing-defaults.itely (Font selection):
11872         document font-name.
11873
11874         * input/regression/font-name.ly: show Pango fonts for
11875         font-name. Update example. 
11876
11877         * lily/pango-select.cc (properties_to_pango_description): don't
11878         convert symbol font-size to number, but use to lookup.
11879
11880         * python/fontextract.py (write_extracted_fonts): add VMusage 0.
11881
11882         * scm/framework-ps.scm (write-preamble): use (NAME . CONTENTS) and
11883         (NAME . FILE-NAME) tuples for font descriptions. 
11884         (write-preamble): display BeginFont DSC comments.
11885
11886         * python/fontextract.py (write_extracted_fonts): new file. Extract
11887         font resources from a PS file.
11888
11889         * scripts/lilypond-book.py (option_definitions): --psfonts option.
11890         (Compile_error.process_include): do_file returns chunks.
11891
11892         * make/ly-vars.make (DVIPS_FLAGS): don't load .map file.
11893
11894         * make/lysdoc-targets.make: .texi is .PRECIOUS
11895
11896         * scripts/lilypond-book.py (write_if_updated): new function.
11897
11898 2005-04-13  Jan Nieuwenhuizen  <janneke@gnu.org>
11899
11900         * scm/framework-eps.scm (dump-stencils-as-EPSes): Massage messages.
11901
11902 2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11903
11904         * scm/framework-eps.scm (dump-stencils-as-EPSes): no massages.
11905
11906         * input/regression/markup-syntax.ly: remove \score.
11907
11908         * scm/define-markup-commands.scm (draw-circle): add fill argument
11909
11910         * scm/stencil.scm (make-circle-stencil): add fill argument
11911
11912         * ps/music-drawing-routines.ps: add fill argument.
11913
11914         * ly/performer-init.ly: add CueVoice to MIDI too.
11915
11916         * ps/music-drawing-routines.ps: new routine BeginEPSF /
11917         EndEPSF.
11918
11919         * input/regression/markup-eps.ly: new file.
11920
11921         * scm/framework-ps.scm (write-preamble): change order: vars should
11922         be inited before procedures.
11923
11924         * scm/output-ps.scm (glyph-string): break lines. 255 chars is max
11925         for EPS files.
11926
11927         * scm/define-markup-commands.scm (epsfile): add epsfile command.
11928
11929 2005-04-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11930
11931         * configure.in (gui_b): add check for ghostscript 8.15
11932
11933 2005-04-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11934
11935         * lily/hairpin.cc (after_line_breaking): suicide the hairpinlet at
11936         start of line. Fixes cresc-after-newline.ly
11937
11938         * lily/source-file.cc (file_line_column_string): use get_column().
11939
11940 2005-04-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11941
11942         * lily/source-file.cc (get_column): utf-8 support for column numbers.
11943
11944 2005-04-12  Jan Nieuwenhuizen  <janneke@gnu.org>
11945
11946         * lily/*: use message () iso progress_indication () for messages.
11947         Revise/uniformise user messages.
11948
11949         * flower/warn.cc (progress_indication): New function.
11950         (message): Use it.  Fixes newline problems.
11951
11952         * config.make.in (webdir): Sort out install dirs.
11953
11954         * stepmake/stepmake/generic-targets.make (final-install): Bugfix.
11955
11956         * python/lilylib.py (command_name): Bugfix.
11957         (make_ps_images):
11958
11959 2005-04-11  Pedro Kroger  <kroeger@pedrokroeger.net>
11960
11961         * lily/main.cc: --help says what types of backends are availabe
11962
11963 2005-04-11  Jan Nieuwenhuizen  <janneke@gnu.org>
11964
11965         Fix ./VERSION dependency, and without need to reconfigure.
11966
11967         * lily/main.cc (setup_paths): Update.
11968
11969         * stepmake/bin/make-version.py (defs): Add TOPLEVEL_VERSION define..
11970
11971         * config.hh.in (LILYPOND_DATADIR): Remove TOPLEVEL_VERSION.
11972
11973         * scripts/convert-ly.py (\markup): Fix too simplistic regexps.
11974         Add \line for some simplistic cases.
11975
11976         * lily/GNUmakefile (main.o): Add missing dependency on version.hh.
11977
11978 2005-04-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11979
11980         * elisp/lilypond-mode.el (LilyPond-lilypond-command): command used
11981         to compile LY files (useful for adding eg. "-I" args)
11982         (LilyPond-command-alist): use `LilyPond-lilypond-command'. Add a
11983         2Gnome command for gnome backend.
11984         (LilyPond-command-formatgnome): call the 2Gnome command. key
11985         binding: C-c C-g
11986
11987 2005-04-10  Jan Nieuwenhuizen  <janneke@gnu.org>
11988
11989         * Documentation/user/GNUmakefile (lilypond/index.html): Bugfix:
11990         depend on all PNG images.
11991
11992 2005-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
11993
11994         * GNUmakefile.in: Bugfix: also link .map files.
11995
11996 2005-04-09  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11997
11998         * scm/music-functions.scm (music->make-music): generate 
11999         a (make-music ...) sexpr from a music expression.
12000         (display-scheme-music): use guile pretty printer to display the
12001         make-music sexpr.
12002
12003 2005-04-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12004
12005         * ly/engraver-init.ly: reindent.
12006         Add CueVoice.
12007
12008         * scm/music-functions.scm (music-pretty-string): handle moments
12009         too.
12010         (music-pretty-string): only print non-empty lists.
12011         (cue-substitute): create CueVoice context, which has smaller type.
12012
12013         * lily/moment-scheme.cc (LY_DEFINE): new methods
12014         ly:moment-grace-{numerator,denominator}
12015
12016         * lily/context-handle.cc: remove quit() method. 
12017
12018         * lily/font-config.cc (init_fontconfig): be verbose about font path.
12019         (init_fontconfig): success is 0, not !0
12020
12021 2005-04-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12022
12023         * mf/feta-nummer-code.mf (code): add plus glyph.
12024
12025         * lily/tie.cc (print): idem.
12026
12027         * lily/slur.cc (print): don't use thickness property for
12028         slur shape-thickness.
12029
12030         * lily/stencil-scheme.cc (LY_DEFINE): don't reverse the order
12031         while adding stencils.
12032
12033         * scm/define-markup-commands.scm (with-color): with-color markup
12034         command.
12035         (whiteout): new markup command 
12036         (filled-box): new markup command
12037
12038 2005-04-07  Jan Nieuwenhuizen  <janneke@gnu.org>
12039
12040         * Documentation/topdocs/NEWS.tely (Top): Make tex-able.  Handy
12041         test for PDF docs.
12042
12043         * mf/GNUmakefile (lilypond.map): Add PFAEmmentaler,
12044         PFAAybabtu-Regular.  Fixes feta font in PDFs.
12045         
12046         Notes for tetex-3.0 make web:
12047            psclean.map: s/uhv8a/uhvr8a/
12048            config.ps add:
12049                 p +psfonts_t1.map
12050                 p +psclean.map
12051                 p +typeface.map
12052
12053 2005-04-06  Nicolas Sceaux  <nicolas.sceaux@free.fr>
12054
12055         * scm/music-functions.scm (music-pretty-string): fix bug with
12056         string argument.
12057
12058 2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
12059
12060         * stepmake/bin/add-html-footer.py (i18n): Bugfix.
12061
12062 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12063
12064         * scripts/lilypond-book.py (Lilypond_snippet.__init__): 
12065         only process options if they're there.
12066         (write_file_map): add version-seen? to snippet-map.ly
12067
12068 2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
12069
12070         * scripts/lilypond-book.py (split_options): Bugfix.  Small code
12071         formatting cleanups.
12072
12073         * mf/GNUmakefile: Rewrite $addprefix, $addsuffix using % short-forms.
12074         Add PFAaybabtu.pfa dependency on aybabtu.subfonts.
12075
12076 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12077
12078         * scm/framework-ps.scm (ps-font-command): don't hash, just use
12079         name directly.
12080
12081         * lily/main.cc (setup_paths): either add mf/out to search path or 
12082         fonts/{otf,type1,etc}
12083         
12084         * lily/font-config.cc (init_fontconfig): either add mf/out to
12085         FontConfig or fonts/{otf,type1,etc}
12086
12087         * GNUmakefile.in: don't put mf/ link in share/ dir.
12088
12089         * lily/staff-spacing.cc: move same-direction-correction to
12090         note-spacing-interface
12091
12092         * scm/lily.scm (lilypond-main): use variable argument count for
12093         exception handler.
12094
12095         * lily/font-config.cc (init_fontconfig): add operator pacification
12096         message.
12097
12098         * mf/aybabtu.pe.in (i): generate PFAAybabtu.pfa
12099
12100         * buildscripts/gen-emmentaler-scripts.py (i): generate
12101         PFAEmmentaler as well.
12102
12103         * scm/framework-ps.scm (munge-lily-font-name): new function
12104         (write-preamble): hack: insert PFA equivalent of CFF into
12105         .PS. This makes LilyPond output printable on normal PS printers
12106         again.
12107
12108         * buildscripts/gen-emmentaler-scripts.py (i): generate
12109         PFAEmmentaler.pfa aswell.
12110
12111 2005-04-06  John Williams <williams@tni.com>  
12112         
12113         * scripts/lilypond-book.py: refactor the compose_ly procedure.
12114         
12115 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12116
12117         * scm/page-layout.scm (default-page-make-stencil): always combine
12118         the header stencil, even if empty. This prevents the body text to
12119         reach up to the margins.
12120
12121         * po/rw.po (Module): new file, for Kinyarwanda.
12122
12123         * input/test/spacing-optical.ly (Module): new file.
12124
12125         * lily/staff-spacing.cc: add same-direction-correction
12126
12127 2005-04-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12128
12129         * Documentation/user/introduction.itely (Engraving): Comment-out
12130         non-existent file.
12131
12132 2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12133
12134         * scm/define-grob-properties.scm (all-user-grob-properties): add
12135         same-direction-correction
12136
12137         * VERSION: release 2.5.18
12138
12139 2005-04-05  Jan Nieuwenhuizen  <janneke@gnu.org>
12140
12141         * lily/grob.cc (mark_smob): Check pscore->layout_ before
12142         dereferencing.  Fixes make web.
12143
12144         * lily/midi-stream.cc: Handle unwritable midi file.  Include
12145         errno.h.
12146
12147         * Documentation/user/: Fix links.
12148
12149 2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12150
12151         * lily/text-interface.cc (Module): rename from text-item.cc
12152
12153         * input/regression/apply-output.ly (texidoc): function naming fix.
12154
12155         * lily/time-signature-performer.cc (derived_mark): new function.
12156
12157         * lily/lily-parser-scheme.cc:  print mapped file name for progress
12158
12159         * scripts/lilypond-book.py (find_linestarts): new function.
12160         (find_toplevel_snippets): keep track of line numbers.
12161
12162         * lily/key-performer.cc (try_music): remove FIXME warning, gobble
12163         all key changes.
12164
12165         * ly/declarations-init.ly (partCombineListener): use
12166         ignoreBarChecks. Fixes: warn-partcombine-barcheck.ly
12167
12168         * lily/bar-check-iterator.cc (process): ignoreBarChecks property.
12169
12170 2005-04-04  Jan Nieuwenhuizen  <janneke@gnu.org>
12171
12172         * lily/text-item.cc: Fix link.
12173
12174         * Documentation/user/changing-defaults.itely (Changing defaults):
12175         Fix programs reference links.
12176
12177         * Documentation/user/music-glossary.tely: Convert to utf-8.
12178
12179 2005-04-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12180
12181         * make/lilypond-vars.make: remove TEXMF from variables.
12182         remove DEB_BUILD pk font variables.
12183         remove GUILE_LOAD_PATH
12184         remove TeX memory vars.
12185
12186 2005-04-04  Werner Lemberg  <wl@gnu.org>
12187
12188         * lilypond/scm-option.cc (ly_option_usage): Add final newline.
12189
12190 2005-04-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12191
12192         * ps/lilyponddefs.ps: remove reencode-font
12193
12194         * lily/simple-spacer.cc (add_columns): also compare
12195         directly. Column rank doesn't distinguish between broken and
12196         unbroken columns. This fixes large spaces before time sig changes.
12197
12198         * Documentation/user/point-and-click.itely: document ly:set-option.
12199
12200         * lily/grob.cc (get_uncached_stencil): only set grob-cause if
12201         point_and_click_global is set.
12202
12203         * lily/scm-option.cc (LY_DEFINE): add point-and-click
12204         ly:set-option argument.
12205
12206 2005-04-03  Jan Nieuwenhuizen  <janneke@gnu.org>
12207
12208         * GNUmakefile.in: Include symlinks in webball.
12209
12210         * Documentation/user/GNUmakefile (source-links): Add symlinks to
12211         source dir for split and non-split manuals.
12212
12213         * Documentation/user/*y: Fix @uref/@inputfile links for
12214         split/non-split HTML documents.
12215
12216         * Documentation/user/GNUmakefile (local-WWW): Do not generate
12217         .ps.gz.
12218         
12219 2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
12220
12221         * GNUmakefile.in: Add newline.
12222
12223 2005-04-01  Erlend Aasland  <erlenda@gmail.com>
12224
12225         * tex/lilyponddefs.tex: use color instead of xcolor
12226         * scm/output-tex.scm: minor editing
12227
12228 2005-04-02  Nicolas Sceaux  <nicolas.sceaux@free.fr>
12229
12230         * scm/music-functions.scm (display-scheme-music): pretty printer
12231         for music expressions.
12232
12233 2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
12234
12235         * buildscripts/install-info-html.sh (index_file): Fix link.
12236
12237 2005-04-01  Jan Nieuwenhuizen  <janneke@gnu.org>
12238
12239         * input/test/dynamic-extra.ly (piuf): Use utf-8 iso TeX accent.
12240
12241         * Documentation/index.html.in: Add size estimates with some big pages.
12242
12243         * Documentation/user/tutorial.itely (Running LilyPond for the
12244         first time): Add/replace some @rglos links.  TODO: add more
12245         @rglos links in tutorial, test non-intrusiveness (.css).
12246
12247         * stepmake/bin/add-html-footer.py (do_file): Remove info's
12248         annoying's indication of referencing external document.
12249
12250         * Documentation/user/GNUmakefile: Split version of glossary too.
12251         * Documentation/user/macros.itexi (@rglos): Have makeinfo produce
12252         links, not only for html.
12253
12254         * Documentation/user/introduction.itely: Fix some links for other
12255         than html, do not use `here' as link name.
12256
12257 2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
12258
12259         * scm/documentation-generate.scm (string-append): Fix @usermanref,
12260         @glossaryref.
12261
12262 2005-03-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12263
12264         * scm/page-layout.scm (default-page-make-stencil): only add header
12265         if existing and not empty. Fixes spurious programming error.
12266
12267         * lily/span-bar.cc (print): don't make rounded edges for spanbars.
12268
12269 2005-03-31  Erlend Aasland  <erlenda@gmail.com>
12270
12271         * scm/output-tex.scm: implement {re,}setcolor
12272         * tex/lilyponddefs.tex: use color package
12273
12274 2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
12275
12276         * GNUmakefile.in (local-WWW-post): Restore .htaccess and .html
12277         additions to website.
12278
12279         * Documentation/user/lilypond.tely: Remove reference to ps.gz.
12280
12281         * Documentation/user/macros.itexi: Fix @usermanref html links in
12282         split documents: use @inforef.
12283
12284 2005-03-30  Graham Percival  <gperlist@shaw.ca>
12285
12286         * Documentation/user/programming-interface.itely: minor fix.
12287
12288         * Documentation/user/advanced-notation.itely: added info to
12289         Metronome markings.
12290
12291 2005-03-30  Jan Nieuwenhuizen  <janneke@gnu.org>
12292
12293         * scm/output-lib.scm (make-stencil-boxer): Junk code duplication,
12294         use box-stencil.  Remove y-padding argument.
12295         (make-stencil-circler): New function.
12296
12297         * buildscripts/lilypond-words.py (F): 
12298         * elisp/SConscript (a): 
12299         * elisp/GNUmakefile (LILYPOND_WORDS_DEPENDS):
12300         * vim/SConscript (a): 
12301         * vim/GNUmakefile (LILYPOND_WORDS_DEPENDS): Update.
12302
12303         * lily/general-scheme.cc: Build fix.
12304
12305         * scm/markup.scm:
12306         * input/regression/markup-scheme.ly: 
12307         * input/regression/markup-syntax.ly: Drop 'new-' from name.
12308
12309         * scm/stencil.scm (make-circle-stencil): New function.
12310
12311         * scm/define-markup-commands.scm (draw-circle): Use it.  New
12312         name (was cicle).  Update callers.
12313         (circle): New markup command, similar to box.
12314
12315         * scm/stencil.scm (circle-stencil): New function.
12316
12317 2005-03-29  David Jedlinsky  <lilypond@ipnh.com>
12318
12319         * configure.in: Detect libutf8/wchar.h variant.
12320
12321         * stepmake/aclocal.m4: Modify shared size test.
12322
12323 2005-03-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12324
12325         * make/lilypond.fedora.spec.in (Group): remove texmf profile stuff.
12326
12327 2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12328
12329         * scripts/convert-ly.py (conv): add stencil-aligned-to! rule.
12330         
12331         * VERSION (PACKAGE_NAME):  release 2.5.17
12332
12333 2005-03-29  Jan Nieuwenhuizen  <janneke@gnu.org>
12334
12335         * scm/backend-library.scm (postscript->png): Fix comment and png
12336         message.
12337
12338         * GNUmakefile.in (link-tree): Fix locales.
12339
12340 2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12341
12342         * lily/stencil-scheme.cc (LY_DEFINE): change to
12343         ly:stencil-aligned-to, non mutating.
12344
12345         * scm/safe-lily.scm (lambda): remove ly:stencil-set-extent!
12346
12347         * lily/stencil-scheme.cc: remove ly:stencil-set-extent!
12348
12349         * lily/quote-iterator.cc (derived_mark): call
12350         Music_wrapper_iterator::derived_mark() too.
12351
12352         * lily/grace-engraver.cc (derived_mark): change signature, add
12353         const.
12354
12355 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12356
12357         * SConstruct (symlink): 
12358         * GNUmakefile.in (link-tree): Add scripts to prefix.
12359
12360         * lily/general-scheme.cc (ly:effective-prefix): New function.
12361
12362         * scm/backend-library.scm (postscript->png): Use it.
12363
12364 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12365
12366         * lily/paper-score.cc (process): don't delete grobs after
12367         producing stencils. 
12368
12369         * scm/part-combiner.scm (determine-split-list): switch off
12370         debugging info.
12371
12372         * scm/backend-library.scm (postscript->png): explicitly use ps2png.py
12373         if available.
12374
12375         * scm/define-context-properties.scm
12376         (all-user-translation-properties): add stringNumberOrientations.
12377
12378         * lily/new-fingering-engraver.cc (position_scripts): make generic,
12379         so fingering and string-numbers are separately controlled.
12380
12381 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12382
12383         * stepmake/aclocal.m4: Fix shared size test: add missing comma, do
12384         not use debugging.
12385
12386 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12387
12388         * GNUmakefile.in (local-WWW-post): remove UTF8 .htaccess.
12389
12390         * config.hh.in: add HAVE_FONTCONFIG.
12391
12392         * Documentation/user/instrument-notation.itely (String number
12393         indications): new node.
12394
12395         * input/regression/new-markup-syntax.ly (texidoc): add circle.
12396
12397         * lily/new-fingering-engraver.cc (add_string): new function. 
12398         (acknowledge_grob): accept string-number-event as well.
12399
12400         * scm/define-markup-commands.scm (circle): new markup command.
12401
12402         * scm/output-lib.scm (print-circled-text-callback): new function.
12403
12404         * lily/GNUmakefile: move ifeq after include stepmake.make.
12405
12406 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12407
12408         * config.make.in (HAVE_LIBKPATHSEA_SO):
12409         * stepmake/aclocal.m4: Also subst HAVE_LIBKPATHSEA_SO.
12410
12411         * lily/GNUmakefile (MODULE_LDFLAGS): Only if not HAVE_KPATHSEA_SO,
12412         add KPATHSEA_LIBS.
12413
12414         * debian/watch: 
12415         * debian/control: Update.
12416
12417 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12418
12419         * input/test/title-markup.ly (spaceTest): remove.
12420
12421         * input/test/embedded-tex.ly (Module): remove.
12422
12423         * input/test/music-box.ly: use 'name property, not ly:music-name.
12424
12425         * lily/GNUmakefile (MODULE_LDFLAGS): add KPATHSEA_LIBS.
12426
12427         * stepmake/aclocal.m4: STEPMAKE_FONTCONFIG: add.
12428
12429 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12430
12431         * Documentation/topdocs/INSTALL.texi (Top): Remove information
12432         about xdeltas.  Add information about CVS.
12433
12434         * scm/lily.scm (lilypond-main): Fix invocation of handler,
12435         gracefully handle failed files.
12436
12437         * lily/GNUmakefile (MODULE_LDFLAGS): Remove KPATHSEA_LIBS.
12438
12439         * Documentation/topdocs/INSTALL.texi (Top): Whitespace and other
12440         small fixes.
12441
12442         * scm/framework-tex.scm (convert-to-ps): Proper option spacing.
12443         No unnecessarily specific i18n messages.  Remove stray `1'.
12444
12445 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12446
12447         * buildscripts/lys-to-tely.py (strip_extension): add utf-8
12448         documentencoding
12449
12450         * scm/documentation-lib.scm (texi-file-head): set utf-8
12451         documentencoding.
12452
12453         * ly/chord-modifiers-init.ly (whiteTriangleMarkup): use the greek
12454         Delta, not the Symbol one. 
12455
12456         * mf/GNUmakefile ($(outdir)/lilypond.map): add -Regular to Aybabtu
12457         for the .map file.
12458
12459         * Documentation/topdocs/INSTALL.texi (Top): add running
12460         requirement as compilation requirement.
12461
12462 2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12463
12464         * buildscripts/mutopia-index.py (headertext): add h1 header and
12465         utf-8 charset meta field.
12466
12467         * input/GNUmakefile: prune example list.
12468
12469         * scm/framework-tex.scm (convert-to-ps): add -ofoo.ps to dvips
12470         options.
12471
12472         * lily/slur-scoring.cc (get_base_attachments): only look at stem
12473         extent for visible stems.
12474
12475         * lily/grob.cc (mark_smob): mark \layout block from Grob::mark_smob().
12476
12477 2005-03-27  Jan Nieuwenhuizen  <janneke@gnu.org>
12478
12479         * Documentation/topdocs/INSTALL.texi (Top): Updates.
12480
12481         * scripts/convert-ly.py: Python 2.2 compatibility (thanks Mats).
12482
12483 2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12484
12485         * lily/slur-scoring.cc (get_base_attachments): robustness. Don't
12486         pass inf/nan into slur scoring.
12487
12488         * ly/titling-init.ly (oddHeaderMarkup): don't show page no. on 1st
12489         page.
12490
12491         * scripts/abc2ly.py (dump_voices): use alphabet().
12492
12493 2005-03-27  Jeff Smith <whydoubt@yahoo.com>
12494         
12495         * mf/GNUmakefile (depth): use $(FONTFORGE). 
12496
12497 2005-03-27 Matthias Neeracher <neeracher@mac.com>
12498         
12499         * flower/include/virtual-methods.hh: simplify. Patch by
12500
12501 2005-03-25  John Williams <williams@tni.com>  
12502
12503         * scripts/lilypond-book.py (main): add png for HTML too, guess
12504         only if necessary. 
12505
12506 2005-03-25  Graham Percival  <gperlist@shaw.ca>
12507
12508         * Documentation/topdocs/INSTALL.texi: now recommends
12509         lexer-gcc-3.1.sh for gcc 3.1.1 or higher.
12510
12511         * Documentation/user/basic-notation.itely,
12512         Documentation/user/tutoria.itely: warn about
12513         only one (phrasing) slur at once.
12514
12515 2005-03-24  Pedro Kroger  <kroeger@pedrokroeger.net>
12516
12517         * ly/music-functions-init.ly (removeWithTag): fixed to return "music".
12518
12519 2005-03-23  Graham Percival  <gperlist@shaw.ca>
12520
12521         * Documentation/user/basic-notation.itely: fixed info about
12522         ending a (de)cresc.
12523
12524         * Documentation/user/lilypond-book.itely: fixed
12525         lilypond-book filter example and warned about not doing
12526         --filter and --process at the same time.
12527
12528 2005-03-23  Mats Bengtsson  <mabe@s3.kth.se>
12529
12530         * lily/parser.yy (bass_number),
12531         Documentation/user/instrument-notation.itely (Figured bass): 
12532         Add the possibility to use text markup in figured bass. 
12533
12534 2005-03-19  Graham Percival  <gperlist@shaw.ca>
12535
12536         * Documentation/user/global.itely: added info about naming
12537         identifiers and breakbefore.
12538
12539         * Documentation/user/invoking.itely: added info about batch
12540         processing files with convert-ly, removed references to TeX
12541         in the jail section.
12542
12543         * Documentation/user/examples.itely: possibly fixed piano
12544         dynamics.
12545
12546         * Documentation/user/advanced-notation.itely: added info
12547         about removing other types of Staff.
12548
12549         * Documentation/user/instrument-notation.itely: possibly
12550         fixed piano staff line switch.
12551
12552         * Documentation/user/changing-defaults.itely: added info
12553         about using normal font in titles.
12554
12555 2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12556
12557         * VERSION (PATCH_LEVEL): release 2.5.16
12558
12559         * make/ly-vars.make (DVIPS_FLAGS): include lilypond.map path
12560         explicitly.
12561
12562 2005-03-18  Jan Nieuwenhuizen  <janneke@gnu.org>
12563
12564         * scm/framework-tex.scm (convert-to-dvi): Barf if NAME contains
12565         whitespace.
12566
12567         * python/lilylib.py (make_ps_images):
12568         * scm/backend-library.scm (postscript->pdf, postscript->png):
12569         Quote file name.  Use format rather than string-append juggling.
12570
12571 2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12572
12573         * python/lilylib.py (make_ps_images): add x to -g argument. 
12574
12575         * lily/key-performer.cc (create_audio_elements): don't use
12576         scm_eval_string. Check for minor 3rd directly.
12577   
12578         * input/mutopia/J.S.Bach/baerenreiter-sarabande.ly
12579         (sarabandeCelloGlobal): key is D minor, not F major.
12580
12581 2005-03-17  Jan Nieuwenhuizen  <janneke@gnu.org>
12582
12583         Fix truncated --png output (Peter Danenberg).
12584         
12585         * python/lilylib.py (make_ps_images):
12586         * scripts/ps2png.py (copyright): Grok --papersize option.
12587
12588         * scm/backend-library.scm (postscript->png): Add parameter
12589         PAPERSIZE.  Update callers.
12590
12591         * scm/output-gnome.scm (music-font?): Bugfix: use "Emmentaler".
12592         Fixes symbol placement.
12593
12594         * lily/spanner.cc: 
12595         * lily/stencil.cc: Use "libc-extension.hh" (WAS:
12596         <libc-extension.hh>).
12597
12598 2005-03-16  Jan Nieuwenhuizen  <janneke@gnu.org>
12599
12600         * Nitpick run.
12601
12602         * buildscripts/fixcc.py: Update.
12603
12604         Builddir run fixes.
12605
12606         * HACKING (datadir): Add VERSION.
12607
12608         * GNUmakefile.in (linktree): Bugfix: outconfdirs are one dir
12609         higher up.
12610
12611 2005-03-15  Werner Lemberg  <wl@gnu.org>
12612
12613         * mf/feta-klef.mf (draw_gclef): Move z10' slightly so that the
12614         diagonal stem doesn't become thinner.
12615
12616 2005-03-15  Jan Nieuwenhuizen  <janneke@gnu.org>
12617
12618         * buildscripts/fixcc.py: Fixes (Werner).
12619
12620 2005-03-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12621
12622         * mf/GNUmakefile ($(outdir)/lilypond.map): capitalize
12623         Emmentaler/Aybabtu.
12624
12625         * GNUmakefile.in: fix lilypond-words path.
12626
12627         * po/tr.po: update to 2.3.21
12628
12629         * lily/new-fingering-engraver.cc (position_scripts): take priority
12630         from head position.
12631
12632         * input/regression/finger-chords-order.ly (texidoc): new file.
12633
12634 2005-03-14  Jan Nieuwenhuizen  <janneke@gnu.org>
12635
12636         * make/ly-rules.make: 
12637         * stepmake/aclocal.m4: 
12638         * Documentation/user/GNUmakefile: Remove old makeinfo compatibility.
12639
12640         * buildscripts/fixcc.py (rules): Leave space after operator.
12641
12642 2005-03-14  Werner Lemberg  <wl@gnu.org>
12643
12644         * mf/feta-klef.mf (draw_gclef): Replace `simple_serif' for
12645         top of the glyph with smooth curve.
12646
12647 2005-03-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12648
12649         * Documentation/user/global.itely (Page layout): remove
12650         printpagenumber.
12651
12652 2005-03-13  Jürgen Reuter  <reuter@ipd.uka.de>
12653
12654         * input/regression/mensural-ligatures.ly: new file (with examples
12655         compiled by Pal Benko).
12656
12657         * Documentation/user/instrument-notation.itely: Bugfix: yet some
12658         other "custodes.*-u0" -> "custodes.*.u0" renaming victims in
12659         musicglyph access.  Many small beautifications in ancient
12660         examples.
12661
12662         * input/test/divisiones.ly: fixed indentation; small
12663         beautifications
12664
12665         * ly/engraver-init.ly: added FIXME comment
12666
12667         * scripts/lilypond-book.py,
12668         Documentation/user/lilypond-book.itely: added music fragment
12669         option "packed" to lilypond-book
12670
12671         * Documentation/user/instrument-notation.itely: Bugfix: added
12672         missing LedgerLineSpanner color setting in several places.  Added
12673         music fragment option "packed" to VaticanaContext example.
12674
12675 2005-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12676
12677         * scm/define-grobs.scm (all-grob-descriptions): switch off
12678         Hyphen_spanner::set_spacing_rods 
12679
12680         * lily/lyric-hyphen.cc (print): add padding between syllable and
12681         hyphen.
12682         (print): shorten hyphen in tight situations (determine using
12683         minimum-length)
12684
12685         * scm/paper.scm (layout-set-staff-size): increase blotdiameter to
12686         0.4pt.
12687
12688 2005-03-13  Jan Nieuwenhuizen  <janneke@gnu.org>
12689
12690         * ly/titling-init.ly (bookTitleMarkup): Refinements.
12691
12692         * input/regression/page-breaks.ly (paper): Set not raggedlastbottom,
12693         header/footer markings for regression-test.
12694
12695         * scm/backend-library.scm (output-scopes, header-to-file): Move
12696         from framework-tex.scm.
12697
12698         * scm/framework-ps.scm (output-framework)
12699         (output-preview-framework):
12700         * scm/framework-eps.scm (output-classic-framework)
12701         (output-framework): Use it.  Fixes collated files.
12702
12703 2005-03-12  Jan Nieuwenhuizen  <janneke@gnu.org>
12704
12705         * input/sakura-sakura.ly: 
12706         * input/xiao-haizi-guai-guai.ly: Add from Debian package (Anthony).
12707
12708         * buildscripts/guile-gnome.sh: Update.
12709
12710         * mf/GNUmakefile (aybabtu.otf): Add dependency on .pe.
12711
12712         * mf/aybabtu.pe.in: Capitalize Aybabtu.
12713
12714 2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12715
12716         * lily/separating-group-spanner.cc (find_rods): oops. Fix the real
12717         culprit: always exit the loop if we find a rod, even if it has
12718         distance < 0. 
12719
12720         * lily/ledger-line-spanner.cc (set_spacing_rods): rewrite to O(n)
12721         algorithm.
12722
12723         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
12724         $(outdir)/%.svg $(outdir)/%.pfa): add --simplify.
12725
12726         * scm/output-svg.scm (dashed-line): new  function body.
12727         
12728         * GNUmakefile.in: create .htaccess.
12729
12730 2005-03-11  Jan Nieuwenhuizen  <janneke@gnu.org>
12731
12732         * Documentation/topdocs/NEWS.tely (Top): Fix text example.
12733
12734 2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12735
12736         * VERSION (PACKAGE_NAME): release 2.5.15
12737
12738         * scm/output-{pdf,pdftex,sketch}.scm (Module): remove bitrotted files.
12739
12740         * scm/framework-svg.scm (output-framework): put scaling in
12741         document header. Apply scaling only once.
12742         (output-framework): dump page size in px, not mm. 
12743
12744         * scm/lily-library.scm (modified-font-metric-font-scaling): rename
12745         from font-size.
12746
12747         * lily/paper-outputter-scheme.cc (LY_DEFINE):
12748         ly:outputter-output-scheme, new function.
12749
12750         * scm/output-svg.scm (pango-description-to-svg-font): new function
12751
12752 2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12753
12754         * Documentation/user/GNUmakefile (deep-symlinks): remove outimages
12755         target.
12756
12757         * input/typography-demo.ly: new file.
12758
12759 2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
12760
12761         * Documentation/user/global.itely (File structure): Add markup blocks
12762         to toplevel expressions.
12763         (Multiple movements, Creating titles): Add markup blocks.
12764
12765         * lily/stencil-scheme.cc: Use "libc-extension.hh" (WAS:
12766         <libc-extension.hh>).
12767
12768         * lily/accidental.cc (accurate_boxes): Compile fix: 1.51 was broken.
12769
12770         * flower
12771         * lily
12772         * kpath-guile: Nitpick run: buildscripts/fixcc.py.
12773
12774 2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12775
12776         * lily/accidental.cc: special bboxes for natural. 
12777
12778         * mf/feta-toevallig.mf: make stems heavier.
12779
12780         * lily/dynamic-text-spanner.cc (print): add bound padding for edge
12781         texts as well.
12782
12783         * mf/feta-klef.mf: revise. 
12784
12785         * mf/feta-schrift.mf: make thinning of accent less pronounced.
12786
12787         * mf/feta-klef.mf: add rounded curve at top. 
12788         make thinnib a little heavier.
12789
12790 2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
12791
12792         * lily/parser.yy (book_body): Oops, allow \markup in \book too.
12793
12794         * buildscripts/fixcc.py: New file.
12795
12796         * input/regression/utf8.ly: Update Debian font description.
12797
12798 2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
12799
12800         * stepmake/aclocal.m4: Fix test.
12801
12802 2005-03-09  Graham Percival  <gperlist@shaw.ca>
12803
12804         * Documentation/user/invoking.itely: added Sebastino Vigna's
12805         docs for the --jail option.
12806
12807 2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12808
12809         * lily/stem.cc (print): only produce stemlets if there are no
12810         noteheads on this stem.
12811
12812         * lily/note-spacing.cc (stem_dir_correction): robustness fix:
12813         don't crash on stemlet (visible stem without heads).
12814
12815         * scm/define-grobs.scm (all-grob-descriptions): junk LeftEdge for
12816         unbroken situations. 
12817
12818         * scm/output-lib.scm (center-invisible): new function.
12819
12820         * lily/spacing-loose-columns.cc (set_loose_columns): use spacing
12821         wishes to determine loose column space.
12822
12823         * lily/font-config.cc (init_fontconfig): add
12824         fonts/{otf,type1,cff}  to path.
12825
12826         * lily/main.cc (setup_paths): add fonts/{otf,svg,tfm,cff} to path
12827
12828         * mf/GNUmakefile (Module): install all fonts under otf/
12829
12830         * scm/framework-ps.scm (Module): read fonts from fonts/extension,
12831         replace /fonts/otf/ by /ps/ 
12832
12833         
12834 2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
12835
12836         * lily/paper-book.cc (classic_output): Reinstate header_0_ hack.
12837
12838         * lily/book.cc (process): Oops, add score_.header_.
12839
12840         * lily/paper-book.cc: Fold hearders, score and texts into scores_.
12841
12842         * lily/parser.yy: Handle toplevel and book texts as score.
12843
12844         * scm/page-layout.scm (default-page-make-stencil):
12845         Bugfix: (page-properties rename.
12846
12847         * scm/backend-library.scm (ly:system): Typo.
12848
12849 2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12850
12851         * stepmake/stepmake/executable-targets.make (installexe): don't
12852         strip installed executables
12853
12854         * lily/font-select.cc (get_font_by_design_size): revert
12855         pango_description_string as well.
12856
12857         * lily/system.cc (set_loose_columns): put loose column just left
12858         of next column.
12859
12860         * lily/include/group-interface.hh (extract_grob_array): rename
12861         from Pointer_group_interface__extract_grobs
12862
12863         * input/regression/ledger-line-minimum.ly (texidoc): new file.
12864
12865         * lily/ledger-line-spanner.cc (set_spacing_rods): new
12866         function. Keep ledgered note heads at a minimum distance.
12867         Introduce minimum-length-fraction
12868         (print): introduce length-fraction property.
12869
12870 2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12871
12872         * tex/GNUmakefile: remove latin1.enc rules.
12873
12874 2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
12875
12876         * scm/titling.scm: Typo.
12877
12878         * input/regression/score-text.ly: Really add.
12879
12880         * lily/score.cc: Bugfixes for SCM header_ and texts_ members.
12881
12882 2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12883
12884         * lily/open-type-font-scheme.cc:  new file.
12885
12886 2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
12887
12888         * scm/titling.scm (layout-extract-page-properties): Rename from
12889         page-properties.  Update callers.
12890
12891         * lily/lexer.ll (Lily_lexer):
12892         * lily/parser.yy: Junk lyric_markup state.
12893
12894         * Documentation/topdocs/NEWS.tely (Top): Mention markup text feature.
12895
12896         * scripts/lilypond-book.py (PREAMBLE_LY): toplevel-music-handler:
12897         Add texts parameter.
12898
12899 2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
12900
12901         * lily/lexer.ll (lyric_markup): New mode.
12902         (Lily_lexer::push_lyric_markup_state): New method.
12903         (MARKUPCOMMAND): Markup during lyric mode returns LYRIC_MARKUP.
12904
12905         * lily/parser.yy (book_body):
12906         (toplevel_expression): Grok \markup texts.
12907
12908         * lily/score-scheme.cc (ly:music-scorify): 
12909         * scm/lily-library.scm (collect-music-for-book): Take texts
12910         parameter.
12911
12912         * lily/score.cc (texts_): New member.
12913
12914         * lily/paper-book.cc (systems): Format score texts.
12915
12916         * score-text.ly: New file.
12917
12918         * ttftool/SConscript:
12919         * kpath-guile/SConscript: New file.
12920
12921         * lily/SConscript:
12922         * SConstruct: Update.
12923
12924 2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12925
12926         * VERSION (PACKAGE_NAME): release 2.5.14
12927
12928 2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
12929
12930         * lily/main.cc: Add dummy xgettext markers.
12931
12932 2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12933
12934         * make/lilypond.fedora.spec.in (Requires): scrap kpathsea/tex
12935         requirements
12936
12937         * stepmake/aclocal.m4: check dynamic link, by checking if kpathsea
12938         executable is < 40k
12939
12940         * lily/main.cc (setup_paths): remove tfm1 tfm2 tfm3 include path
12941         hack.
12942
12943 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12944
12945         * flower/libc-extension.cc:
12946         * flower/include/libc-extension.hh: [Open]BSD simply cast
12947         cookie/funopen declarations.
12948
12949         * stepmake/aclocal.m4: Check for libkpathsea.so.
12950
12951         * kpath-guile/kpath.c (ly_kpathsea_expand_variable): Use
12952         dl_kpse_find_file.
12953
12954 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12955
12956         * kpath-guile/kpath.c (open_library): dlopen libkpathsea.so
12957         (open_library): alternative for static library.
12958
12959 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12960
12961         * configure.in: Set TTFTOOL_ENDIAN iso global CFLAGS.
12962
12963         * ttftool/GNUmakefile (MODULE_CFLAGS): Add $(TTFTOOL_ENDIAN).
12964
12965         Drop run-time dependency on teTeX.
12966
12967         * lily/kpath.cc (initialize_kpathsea): dlopen libkpathsea.
12968
12969         * stepmake/aclocal.m4 (STEPMAKE_KPATHSEA): Do not include
12970         KPATHSEA_LIBS in LIBS.
12971         (STEPMAKE_DLOPEN): New function.
12972
12973         * lily/font-config.cc (init_fontconfig): Use dir for directory,
12974         not path.
12975
12976         * flower/file-path.cc (directories): Rename from paths, as this
12977         return an array of directories (a single path).
12978
12979 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12980
12981         * lily/GNUmakefile (MODULE_LIBS): link with kpath-guile
12982
12983         * lily/all-font-metrics.cc (kpathsea_find_file): wrapper around
12984         new ly:kpathsea-find-file
12985
12986         * kpath-guile/kpath.c: new file. Put kpath bindings in lib.
12987
12988         * kpath-guile/GNUmakefile: new file
12989
12990         * buildscripts/gen-emmentaler-scripts.py (i): generate
12991         emmentaler-X.fontname as well.
12992
12993         * buildscripts/ps-embed-cff.py: new script
12994
12995         * scm/lily-library.scm: remove ps-embed-cff.
12996
12997         * scm/framework-ps.scm (write-preamble): don't use kpathsea for
12998         font loading. 
12999
13000         * scm/font.scm (add-music-fonts): load dynamics/numbers through
13001         fontconfig as well.
13002
13003         * lily/font-config.cc (init_fontconfig): add cff/ too.
13004
13005         * ly/generate-embedded-cff.ly: capitalize.
13006
13007         * lily/pango-select.cc (select_pango_font): use ::find_pango_font,
13008         so as to register the pango font.
13009
13010         * lily/font-config.cc (init_fontconfig): add
13011         prefix/{otf,type1,mf/out} to fontconfig path.
13012
13013         * lily/main.cc: only look at one prefix directory, LILYPONDPREFIX
13014         overrides all. 
13015
13016         * configure.in (gui_b): remove ec mftrace check
13017
13018         * config.hh.in: use lilypond-Major.Minor as data directory.
13019
13020         * scm/framework-ps.scm (dump-page): use output-units for landscape.
13021
13022         * buildscripts/gen-emmentaler-scripts.py (i): lower case file
13023         name.
13024
13025 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
13026
13027         * lily/main.cc (do_chroot_jail): Small cleanups.  Avoid constant
13028         error messages.
13029
13030         * flower/libc-extension.cc:
13031         * flower/include/libc-extension.hh: [Open]BSD fixes for
13032         cookie/funopen declarations.
13033
13034 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13035
13036         * buildscripts/gen-emmentaler-scripts.py (outdir): capitalize
13037         emmentaler.
13038
13039         * lily/score-engraver.cc (initialize): remove check for ecrm10 /
13040         lcrm10.
13041
13042         * scm/define-markup-commands.scm (fontsize): new markup
13043         command. Also set baseline-skip
13044
13045 2005-03-06 Sebastiano Vigna <vigna@dsi.unimi.it>.
13046         
13047         * lily/main.cc (do_chroot_jail): paranoia security for webserver
13048         use.
13049
13050 2005-03-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13051
13052         * stepmake/bin/add-html-footer.py (do_file): make wiki link optional.
13053
13054         * lily/pdf.cc: remove PDF related files
13055
13056 2005-03-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13057
13058         * ly/deutsch.ly: add quarter tones, patch by Arno Waschk.
13059         <hamamatsu@gmx.de>
13060
13061 2005-03-05  Graham Percival  <gperlist@shaw.ca>
13062
13063         * Documentation/user/advanced-notation.itely: first draft
13064         of reorg done.
13065
13066         * Documentation/user/global.itely: fixed (sub)section
13067         bits of MIDI.
13068
13069 2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
13070
13071         * cygwin/mknetrel (extras): Bufix (Bertalan).
13072
13073         * Documentation/user/basic-notation.itely (Chords): @ref fix.
13074         * Documentation/user/instrument-notation.itely (Introducing chord
13075         names): Compile fix: must have unique name.
13076
13077 2005-03-02  Graham Percival  <gperlist@shaw.ca>
13078
13079         * Documentation/user/instrument-notation.itely: reorg.
13080
13081 2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
13082
13083         * scm/output-gnome.scm:
13084         * scm/output-svg.scm: Fix font scaling.
13085
13086 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13087
13088         * ly/titling-init.ly (tagline): Use Engraving.  Add comment about
13089         what link to use best.
13090
13091         * Documentation/user/instrument-notation.itely (Ancient accidentals): 
13092         * Documentation/user/tutorial.itely (Automatic and manual beams):
13093         Fix @ref.
13094
13095         * lily/tweak-registration.cc (replace_grob_tweak): New function.
13096         * lily/tweak-registration-scheme.cc (LY_DEFINE): Wrap it.
13097         * scm/framework-gnome.scm (tweak): Use it.
13098
13099 2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13100
13101         * Documentation/topdocs/NEWS.tely (Top): elucidate GS problem.
13102
13103         * scm/output-ps.scm (white-text): reinstate white-text
13104
13105 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13106
13107         * scm/output-ps.scm (offset-add): Remove.
13108
13109         * scm/lily-library.scm (offset-flip-y): New function.
13110         * scm/framework-gnome.scm (tweak): Use it.
13111
13112         * scm/output-gnome.scm (grob-cause): Add parameter.
13113
13114         * scm/lily.scm (ly:all-stencil-expressions): Add url-link.
13115         * scm/output-ps.scm (url-link): Move.
13116         (white-text): Warn user about brokenness.
13117
13118         * Documentation/topdocs/NEWS.tely: Be more accurate and respectful
13119         wrt ghostscript.
13120
13121 2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13122
13123         * lily/slash-repeat-engraver.cc (try_music): always make slashes
13124         if body length smaller than measure length.
13125
13126         * scm/define-markup-commands.scm (with-url): oops. use Y extent
13127         for Y.
13128
13129         * ly/titling-init.ly (tagline): put default tagline in \paper
13130
13131 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13132
13133         * lily/kpath.cc: 
13134         * lily/pdf.cc (Pdf_file): Use more generic error messages.
13135
13136         * scm/lily-library.scm (version-not-seen-message): New function.
13137         * ly/init.ly: Use it.
13138
13139         * scm/page-layout.scm (ly:optimal-page-breaks): Display page
13140         breaks as progess.
13141
13142         * scripts/lilypond-book.py (do_process_cmd): Do not lump
13143         whitespace with l10n message.
13144
13145         * scm/framework-tex.scm (convert-to-ps):
13146         (convert-to-dvi): Do not use overly specific l10n messages.
13147
13148         * ly/titling-init.ly (bookTitleMarkup): Add baseline skips from 2.4.
13149
13150         * tex/GNUmakefile $(outdir)/latin1.enc: Build fix:
13151         merge stderr with stdout.  
13152
13153 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13154
13155         * flower/libc-extension.cc: Tested BSD compile fix (Matthias
13156         Neeracher).
13157
13158 2005-02-29  Graham Percival  <gperlist@shaw.ca>
13159
13160         * Documentation/user/instrument-notation.teily: moved
13161         \arpeggio to Basic.
13162
13163         * Documentation/user/advanced-notation.itely: Articulation to
13164         Basic, a bunch of stuff from Basic moved to Advanced.
13165
13166         * Documentation/user/basic.itely: swapped various sections,
13167         reorganized Basic.
13168
13169 2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
13170
13171         * flower/memory-stream.cc: 
13172         * flower/libc-extension.cc: Remove obsolete #undefs.
13173
13174         * flower/include/libc-extension.hh: Bugfix for BSD, place #ifdef
13175         more carefully.
13176
13177 2005-02-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13178
13179         * make/lilypond.fedora.spec.in (Requires): add GS 8.15 as
13180         dependency.
13181
13182         * VERSION (PACKAGE_NAME): release 2.5.13
13183
13184         * GNUmakefile.in (web-ext): don't ship ps.gz
13185
13186         * tex/GNUmakefile ($(outdir)/latin1.enc): redirect stderr to
13187         stdout
13188
13189 2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
13190
13191         * lily/general-scheme.cc (LY_DEFINE): Compile fix for systems
13192         without libintl.  Now it compiles too.
13193
13194 2005-02-28  Graham Percival  <gperlist@shaw.ca>
13195
13196         * Documentation/user/basic-notation.itely,
13197         instument-notation.itely, advanced-notation.itely:
13198         split up contents of notation.itely.
13199
13200         * Documentation/user/notation.itely: file removed.
13201
13202         * Documentation/user/invoking.itely, converters.itely:
13203         moved convert-ly info to invoking.itely.
13204
13205         * Documentation/user/global.itely, changing-defaults.itely,
13206         sound-output.itexi: moved global settings, file layout, and
13207         sound into global.itely.
13208
13209         * Documentation/user/sound-output.itexi: file removed.
13210
13211         * Documentation/user/lilypond.tely: removed links to
13212         notation.itely and sound.itely.
13213
13214 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13215
13216         * scm/output-ps.scm (grob-cause): only do mark_URI if non-empty.
13217
13218         * scm/framework-ps.scm (write-preamble): remove pdf-viewer code.
13219  
13220         * THANKS: add sponsor.
13221
13222         * scm/define-markup-commands.scm (with-url): new markup command.
13223
13224         * scm/page-layout.scm (TAGLINE): add www.lilypond.org with URL to
13225         tagline.
13226         
13227         * scm/output-tex.scm (url-link): stub.
13228
13229         * scm/output-ps.scm (url-link): new function.
13230
13231         * lily/lily-parser-scheme.cc (LY_DEFINE): deprecate
13232         ly:set-point-and-click
13233
13234 2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
13235
13236         * ps/music-drawing-routines.ps (mark_file_line): Switch Action
13237         based on pdf-viewer setting.
13238
13239         * scm/framework-ps.scm (write-preamble): Find and set preferred
13240         pdf-viewer.
13241
13242 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13243
13244         * Documentation/user/point-and-click.itely: update for PDF point &
13245         click.
13246
13247         * scripts/lilypond-pdfpc-helper.py: new file. Invoke different
13248         editors based on EDITOR setting.
13249
13250 2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
13251
13252         * scm/*: Oops, more grand 2005 replace bits.
13253
13254 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13255
13256         * ps/music-drawing-routines.ps: new routine: insert PDF mark
13257
13258         * scm/output-ps.scm (grob-cause): point & click support for
13259         PostScript
13260
13261 2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13262
13263         * lily/input-scheme.cc (LY_DEFINE): rename to
13264         ly:input-file-line-column
13265
13266 2005-02-26  Graham Percival  <gperlist@shaw.ca>
13267
13268         * Documentation/user/examples.itely: small fix from Steve Doonan.
13269
13270         * Documentation/user/scheme-tutorial.itely: small fix from Steve Doonan.
13271
13272         * THANKS: added Yuval Harel.
13273
13274         * Documentation/user/{various}: inserted two spaces after a period.
13275
13276         * Documentation/user/lilypond.tely: added framework for reorg.
13277
13278         * Documentation/user/basic-notation.itely, instrument-notation.itely,
13279         advanced-notation.itely, global.itely: new files, placeholder for
13280         future reorg.
13281
13282 2005-02-26 Yuval Harel  <yuvalh@hotpop.com>
13283
13284         * Documentation/user/notation.itely: revamped Polyphony section
13285         
13286 2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13287
13288         * Documentation/user/lilypond-book.itely (Music fragment options):
13289         doc fontload.
13290
13291         * Documentation/user/changing-defaults.itely (Text encoding): add
13292         fontload option to utf8 include
13293
13294         * scripts/lilypond-book.py (compose_ly): add fontload option
13295
13296         * scm/framework-eps.scm (dump-stencils-as-EPSes): add
13297         force-eps-font-include option.
13298
13299         * ly/chord-modifiers-init.ly (blackTriangleMarkup): reinstate
13300         black triangle
13301
13302         * Documentation/user/invoking.itely (Editor support): remove
13303         lilypond-latex section.
13304
13305         * scripts/lilypond-latex.py (Module): remove script.
13306
13307         * cygwin/lily-wins.py (stat): write to .lylog, so as not to
13308         overwrite .log. 
13309
13310         * lily/main.cc: remove -m, --no-layout
13311
13312         * flower/include/libc-extension.hh: add ALIAS_FILE_TO_FILECOOKIE
13313         to define. We don't want to override fprintf everywhere.
13314
13315 2005-02-26  Jan Nieuwenhuizen  <janneke@gnu.org>
13316
13317         * cygwin/lilypond.hint: 
13318         * cygwin/README.in: Update dependencies.
13319
13320         * stepmake/aclocal.m4 (STEPMAKE_PANGO, STEPMAKE_PANGO_FT2):
13321         Bugfix: do not pollute CPPFLAGS, LIBS.
13322
13323         * cygwin/mknetrel (extras): Cross compile fixes.
13324
13325         * ttftool/util.c: 
13326         * ttftool/ttfps.c: 
13327         * ttftool/ps.c: #include libc-extension.hh
13328
13329         * flower/include/libc-extension.hh:
13330         * flower/libc-extension.cc (fopencookie)[!HAVE_FOPENCOOKIE]: Add
13331         wrapper using funopen.
13332         (fopencookie, handle_cookie_io_fclose, handle_cookie_io_fprintf,
13333         handle_cookie_io_fprintf): Add wrappers catching Memory_out_stream.
13334
13335         * config.hh.in:
13336         * configure.in (AC_CHECK_FUNCS): Add fopencookie, funopen.
13337         (AC_CHECK_HEADERS): Add libio.h
13338
13339         * scripts/convert-ly.py: Uniformize, internationalize.
13340         (2.5.2): Remove fatal encoding rule.
13341         (2.5.13): Handle latin1 encoding gracefully.
13342
13343 2005-02-23  Jan Nieuwenhuizen  <janneke@gnu.org>
13344
13345         * HACKING: Fix line breaks.
13346
13347 2005-02-23  Werner Lemberg  <wl@gnu.org>
13348
13349         * mf/graycx.mf, mf/graylj.mf: Removed.  Any decent TeX distribution
13350         contains those two files.
13351
13352 2005-02-21  Werner Lemberg  <wl@gnu.org>
13353
13354         * mf/feta-nummer-code.mf ("Numeral 5"): Include intersection point
13355         to improve overlap removal process.
13356
13357         * mf/feta-slag.mf (draw_trillelement): Add parameter to control
13358         left and right ending.  This ensures better overlapping.
13359         Update all callers.
13360         ("lineprall"): Don't use draw_gridline to get better overlapping.
13361
13362 2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13363
13364         * scm/lily-library.scm (ps-embed-cff): add \n after EndResource
13365
13366         * Documentation/topdocs/NEWS.tely (Top): oops.
13367
13368 2005-02-21  Pedro Kroger  <kroeger@pedrokroeger.net>
13369
13370         * HACKING: new file.
13371
13372         * input/regression/utf8.ly (portuguese): added a portuguese example
13373         to show latin1 accents.
13374
13375 2005-02-21  Pal Benko  <benkop@freestart.hu>
13376
13377         * lily/mensural-ligature-engraver.cc:
13378         * lily/mensural-ligature.cc:
13379         * lily/include/mensural-ligature.hh: new algorithm implemented
13380
13381         * scm/define-grob-properties.scm: join-left killed (add-join may
13382         be used); join-left-amount changed to join-right-amount
13383
13384 2005-02-21  Graham Percival  <gperlist@shaw.ca>
13385
13386         * Documentation/user/notation.itely: small but urgent fix.
13387
13388 2005-02-21  Jürgen Reuter  <reuter@ipd.uka.de>
13389
13390         * lily/duration-scheme.cc: bugfix: correct parameters to
13391         SCM_ASSERT_TYPE.
13392
13393         * THANKS: added Pal.
13394
13395         * Documentation/user/notation.itely: bugfix: unTeXified
13396         $\\backslash$.  Bugfix: yet another glyph renaming victim:
13397         "timesig.*x/y" -> "timesig.*xy".
13398
13399 2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13400         
13401         * VERSION (PACKAGE_NAME): release 2.5.12
13402
13403 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13404
13405         * ly/engraver-init.ly: set tieWaitForNote to #t by default
13406
13407         * configure.in (gui_b): bump GUILE requirement to 1.6.5 
13408
13409         * Documentation/topdocs/NEWS.tely: add inputfileref macro.
13410
13411         * scm/framework-ps.scm (supplies-or-needs): uniq font name list.
13412
13413 2005-02-20  Jan Nieuwenhuizen  <janneke@gnu.org>
13414
13415         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly: recode
13416         latin1..utf-8.
13417
13418         * input/regression/stanza-number.ly:
13419         * input/regression/utf8.ly (hebrew): Use addlyrics.  Update.
13420
13421         * lily/tie-engraver.cc (acknowledge_grob): Compile fix.
13422
13423 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13424
13425         * Documentation/topdocs/NEWS.tely (Top): only mention 2.5
13426         NEWS. Refer to website for older news.  
13427
13428         * stepmake/bin/add-html-footer.py (i18n): don't strip .PNG /
13429         .HTML. This should be done for specific servers only.
13430
13431         * Documentation/topdocs/NEWS.tely (Top): move to .tely. Add some
13432         .ly image examples.
13433
13434         * scm/define-grobs.scm (all-grob-descriptions): put ledger lines
13435         in layer 0 too.
13436
13437         * scm/define-context-properties.scm
13438         (all-user-translation-properties): add tieWaitForNote
13439
13440         * scm/define-grobs.scm (all-grob-descriptions): add
13441         Tie_column::before_line_breaking
13442
13443         * lily/tie.cc (get_column_rank): new function
13444
13445         * lily/tie-column.cc (before_line_breaking): new function.
13446         (werner_directions): take into account ties that start on
13447         different columns.  
13448
13449         * lily/score-engraver.cc (set_columns): move add_column() so we
13450         have column rank available.
13451
13452         * lily/tie.cc (get_column_rank): new function.
13453
13454         * input/regression/utf8.ly (japanese): add japanese lyrics.
13455
13456         * lily/pfb.cc (LY_DEFINE): ly:ttf->pfa, new function.
13457
13458         * THANKS: add Steve D
13459
13460         * ttftool/*.c: add TTF -> Type42 conversion library. Based on
13461         Public Domain work by Juliusz Chroboczek <jch@pps.jussieu.fr>
13462
13463 2005-02-20  Tatsuya Ono  <tats_ono@infoseek.jp>
13464
13465         * mf/parmesan-heads.mf: "0harmonic" -> "s0harmonic"
13466         to show harmonic notes
13467         * scm/define-markup-commands.scm: in \markup-by-number
13468         "dots-dot" -> "dots.dot" to show dotted notes
13469
13470 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13471
13472         * flower/include/memory-stream.hh (class Memory_out_stream): new file.
13473
13474         * flower/memory-stream.cc (writer): new file.
13475
13476         * configure.in: add endian test.
13477
13478 2005-02-19  Jürgen Reuter  <reuter@ipd.uka.de>
13479
13480         * Documentation/user/examples.itely: small
13481         simplification/beautification
13482
13483         * Documentation/user/notation.ietly: bugfix: fixed many artefacts
13484         from the "x-y-z"->"x.y.z" renaming of glyphs throughout the whole
13485         notation manual.
13486
13487         * lily/mensural-ligature.cc: bugfix: another few victims of the
13488         "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
13489
13490         * ly/gregorian-init.ly: commit some experimental code for hi-level
13491         ligature input language lying around here for several months.
13492
13493         * lily/mensural-ligature-engraver.cc: bugfix: another victim of
13494         the "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
13495
13496         * lily/vaticana-ligature-engraver.cc: bugfix: another few
13497         "x-y-z"->"x.y.s-z" fixes.
13498
13499 2005-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13500
13501         * scm/framework-pdf.scm (scm): new file
13502
13503         * lily/include/pdf.hh (class Pdf_file): new file.
13504
13505         * lily/pdf.cc (write_trailer): new file.
13506
13507 2005-02-18  Erlend Aasland  <erlenda@gmail.com>
13508
13509         * input/regression/color.ly: new file
13510
13511         * lily/stencil.cc (interpret_stencil_expression):
13512         when a color expression is encountered: save current color,
13513         process the rest of the expression, and restore previous color.
13514
13515         * lily/system.cc (get_line): check all grobs for color property and
13516         prepare the stencil scheme expressions for further processing.
13517         Fix layer-loop.
13518
13519         * scm/define-grob-properties.scm: introduce the color property.
13520
13521         * scm/output-lib.scm: color helper functions.
13522
13523         * scm/output-ps.scm: introduce setcolor/resetcolor.
13524
13525 2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
13526
13527         * ly/*.ly, input/regression/*.ly: Added missing \version
13528         statements in some files.
13529
13530 2005-02-15  Graham Percival  <gperlist@shaw.ca>
13531
13532         * Documentation/user/notation.itely: minor editing.
13533
13534         * Documentation/user/converters.itely: updated convert-ly bugs.
13535
13536         * Documentation/user/lilypond-book.itely: add info about using
13537         feta characters in latex.
13538
13539 2005-02-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13540
13541         * scripts/convert-ly.py: new slur dash patch by Bertalan Fodor.
13542
13543 2005-02-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13544
13545         * scm/define-grob-properties.scm (all-user-grob-properties):
13546         removed 'dashed property.
13547
13548 2005-02-13  Nicolas Sceaux  <nicolas.sceaux@free.fr>
13549
13550         * scm/lily.scm (define-safe-public): new macro for defining
13551         variables that can be used in --safe mode. Use it in *.scm
13552         instead of manually setting safe-objects in safe-lily.scm.
13553
13554 2005-02-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13555         
13556         * lily/slur.cc: Slur-dash patch by Bertalan.
13557
13558         * ly/engraver-init.ly (EasyNotation): glyph name dash -> period.
13559
13560         * stepmake/bin/add-html-footer.py (do_file): do i18n only once. 
13561
13562 2005-02-10  Jan Nieuwenhuizen  <janneke@gnu.org>
13563
13564         * stepmake/aclocal.m4: teTeX-3.0 inimf fix.  Comment-out.
13565
13566 2005-02-09  Jan Nieuwenhuizen  <janneke@gnu.org>
13567
13568         * mf/GNUmakefile: teTeX-3.0 install fix.
13569
13570         * Cygwin patch from Bertalan.
13571
13572         * stepmake/stepmake/metafont-rules.make: Remove bashism.
13573
13574 2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
13575
13576         * GNUmakefile.in: 
13577         * SConstruct (symlink): teTeX-3.0 build fix: add map symlink.
13578
13579         * tex/GNUmakefile: teTeX-3.0 fix: install .enc in fonts/enc.  Add
13580         2.0.x compatibility.
13581
13582 2005-02-08  Werner Lemberg  <wl@gnu.org>
13583
13584         * mf/feta-din-code.mf: Format; clean up code.
13585         Replace `---' with `--' plus explicit path directions.
13586         (linethickness#, stafflinethickness#): Remove.
13587         ("dynamic f"): Replace `draw' with `draw_rounded_block'.
13588         ("dynamic s"): Improve shape.
13589         ("dynamic p"): Improve shape.
13590         Replace `draw' with better outline approximation.
13591         ("dynamic r"): Improve shape.
13592         Don't call `fill' and `draw' at the same time.
13593
13594 2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
13595
13596         * SConstruct (symlink):
13597         * GNUmakefile.in ($(builddir)/share/lilypond-force): teTeX-3.0
13598         build fix: add enc symlink.
13599
13600         * lily/general-scheme.cc: Compile fixes: include wchar.h, string.h.
13601
13602         Support for DESTDIR besides prefix=/foo
13603
13604         * vim/GNUmakefile (local-install): Use $(INSTALL) -d iso mkdir.
13605
13606         * stepmake/stepmake/*.make:
13607         * */GNUmakefile:
13608         * GNUmakefile.in: Prepend $(DESTDIR) to installation directory.
13609
13610         * config.make.in (prefix): Remove broken $(DESTDIR) hack.
13611
13612         * stepmake/aclocal.m4: Use %0.f iso %d to quiet gawk < 3.1.4 and
13613         mawk in fontforge (date) test.
13614
13615 2005-02-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13616
13617         * scm/font.scm (make-century-schoolbook-tree): add NCS as
13618         font-family=roman. Add Luxi Sans as sans
13619
13620 2005-02-07  Graham Percival  <gperlist@shaw.ca>
13621
13622         * Documentation/user/notation.itely: add warning about
13623         percent repeats and Voice contexts.
13624
13625         * Documentation/user/lilypond-book.itely: clarified the
13626         necessity of dvips -u arguments.
13627
13628 2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
13629
13630         * THANKS: Added a bunch of bug hunters.
13631
13632 2005-02-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13633
13634         * scm/framework-ps.scm (output-preview-framework): bugfix.
13635
13636         * ly/chord-modifiers-init.ly (ignatzekExceptionMusic): use unicode
13637         o/ for chord modifier..
13638
13639         * lily/general-scheme.cc (LY_DEFINE): new function ly:wide-char->utf-8.
13640
13641         * lily/drum-note-performer.cc:  remove unused (thanks Michael
13642         Welsh Duggan). 
13643
13644 2005-02-06  Jan Nieuwenhuizen  <janneke@gnu.org>
13645
13646         * Documentation/user/changing-defaults.itely (Text encoding): Clarify.
13647
13648         * ly/titling-init.ly: Do not also print intstrument in header on
13649         first page.  Do not print page number on first and only page.
13650
13651 2005-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13652
13653         * input/regression/*.ly: remove old-relative everywhere
13654
13655         * lily/music-sequence.cc (simultaneous_relative_callback): do
13656         what-if analysis on copy, not on original. Fixes old-relative
13657         compatibility.
13658
13659         * scm/backend-library.scm (postscript->png): space before
13660         --verbose.
13661         
13662 2005-02-05  Werner Lemberg  <wl@gnu.org>
13663
13664         * mf/feta-autometric.mf (fet_beginchar): Check whether `feta_group'
13665         is defined.
13666
13667         * mf/feta-alphabet.mf: Define `staffsize#'.
13668         Include `feta-params.mf'.
13669         s/staffheight/design_size/.
13670
13671         * mf/feta-alphabet??.mf: s/staffheight/design_size/.
13672
13673         * mf/feta-alphabet26.mf: Fix a serious bug (design size off by 8pt).
13674
13675         * mf/feta-nummer-code.mf: Reformatted.
13676         (draw_six): Use outline intersection to avoid a self-intersecting
13677         path.
13678         ("Numeral comma"): Fix serious outline glitches.  This slightly
13679         changes the glyph shape.
13680         ("Numeral dash"): Use `draw_rounded_block'.
13681         ("Numeral dot"): Use `drawdot'.
13682         ("Numeral 1"): Assure identical tangent directions for the
13683         intersection points of paths.  The glyph shape improvement is only
13684         visible at very high magnifications.
13685         ("Numeral 2"): Use `solve' macro to make the lower right part of
13686         the glyph outline touch the x axis exactly.  This changes the
13687         glyph shape.
13688         Minor fixes for better overlap removal support.
13689         ("Numeral 4"): Make lefter corner `rounder'.
13690         ("Numeral 5"): Assure identical tangent directions for the
13691         intersection points of paths.  This improves the glyph shape at
13692         high magnifications.
13693         ("Numeral 7"): Use `solve' macro to make the upper right part of
13694         the glyph outline touch the metrics box exactly.  This changes the
13695         glyph shape.
13696         Avoid corner in the upper left part of the glyph (causing a minor
13697         shape change).
13698
13699         * mf/feta-ital-*.mf: Removed.  Unused.
13700
13701 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13702
13703         * VERSION (PATCH_LEVEL): release 2.5.11
13704
13705         * input/regression/fill-line-test.ly: new file.
13706
13707         * buildscripts/gen-emmentaler-scripts.py (i): insert dash in
13708         emmentaler name, eg. emmentaler-23. 
13709
13710 2005-02-04  Christian Hitz  <chhitz@gmx.net>
13711
13712         * scm/scm/define-markup-commands.scm (fill-line): rework for better
13713         alignment with centered texts
13714
13715         * scm/stencil.scm (stack-stencils-padding-list): new function, takes a
13716         list of paddings
13717
13718 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13719
13720         * mf/GNUmakefile ($(outdir)/lilypond.map): add aybabtu to .map file.
13721
13722         * lily/note-column.cc (translate_rests): call flush_extent_cache()
13723         of parents when translating rests. Fixes: c-chord-rest.ly 
13724
13725         * lily/include/dimension-cache.hh (struct Dimension_cache): add
13726         dimension_callback_ member.
13727
13728         * lily/grob.cc (flush_extent_cache): new function. Force recompute
13729         of extents.
13730
13731 2005-02-04  Jan Nieuwenhuizen  <janneke@gnu.org>
13732
13733         * all but lily/*: The grand 2004/2005 replace.
13734
13735 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13736
13737         * lily/*: add space after ,  
13738
13739         * scm/music-functions.scm (has-request-chord): don't use
13740         ly:music-name anywhere. Fixes <<\\>> notation. 
13741
13742         * scm/define-markup-commands.scm (box): use font-size for
13743         padding. Fixes boxed-rehearsal-marks.ly
13744
13745         * lily/parser.yy (assignment_id): allow LYRICS_STRING as
13746         identifier definition too, so foo = \lyrics { ...   } bar = #1
13747         doesn't complain about "bar" being LYRICS_STRING.
13748
13749         * lily/paper-def.cc (find_pango_font): new routine; Store
13750         pango_fonts in hash tab too. This is necessary for retrieving
13751         Pango_fonts::physical_font_tab() later on.
13752  
13753         * lily/pango-font.cc (pango_item_string_stencil): bugfix: don't
13754         crash if psname is null.
13755
13756         * lily/lily-guile.cc (ly_hash2alist): new function
13757
13758         * Documentation/user/changing-defaults.itely (Text encoding):
13759         rewrite. 
13760
13761         * lily/pango-font.cc (physical_font_tab): new member. Store PSname
13762         -> font_filename mapping.
13763
13764         * lily/pango-font-scheme.cc (LY_DEFINE): new file. New function
13765         ly_pango_font_physical_fonts
13766
13767         * scm/framework-ps.scm (supplies-or-needs): extract names from
13768         physical Pango_fonts.
13769
13770         * utf8.ly: new file.
13771
13772 2005-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13773
13774         * Documentation/user/changing-defaults.itely (Page layout): add
13775         doco about systemSeparatorMarkup.
13776
13777         * scm/page-layout.scm (default-page-make-stencil): add-to-page
13778         function.
13779         (default-page-make-stencil): insert system separators.
13780
13781         * scm/define-markup-commands.scm (hcenter): add
13782         (beam): add.
13783
13784 2005-02-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13785
13786         * scm/output-ps.scm (ez-ball): reinstate ez notation.
13787
13788 2005-02-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13789
13790         * lily/main.cc: Spell backend consistently.  Sort options.
13791
13792 2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13793
13794         * scripts/lilypond-book.py (Module): revert @include.
13795         
13796 2005-01-31  Jan Nieuwenhuizen  <janneke@gnu.org>
13797
13798         * scripts/lilypond-book.py: Resurrect HTML links to .ly source.
13799         Bugfix: @include .tex (not .texi).  Small cleanups.
13800
13801         * stepmake/bin/add-html-footer.py (i18n): New function.
13802
13803 2005-01-31  Werner Lemberg  <wl@gnu.org>
13804
13805         * mf/feta-nummer.mf: Removed.  Unused.
13806
13807 2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13808
13809         * lily/ : 2004 -> 2005 s&r
13810
13811         * scm/file-cache.scm (cached-file-contents): add file. Read each
13812         file only once.
13813
13814         * scm/font.scm (add-pango-fonts): change order. Medium weight is
13815         now default.
13816
13817         * VERSION: release 2.5.10
13818         
13819         * mf/GNUmakefile (INSTALLATION_OUT_FILES4): install cff.ps files.
13820
13821         * make/ly-rules.make ($(outdir)/%.texi): detect new EOF marker.
13822
13823         * scm/framework-ps.scm (dump-stencil-as-EPS): robustness: ensure
13824         that both X and Y extents of bbox are non-nil.
13825
13826 2005-01-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13827
13828         * scm/chord-name.scm (alteration->text-accidental-markup): change
13829         - to . 
13830
13831         * scm/output-ps.scm (utf8-string): add utf8-string for completeness.
13832
13833         * scm/framework-ps.scm (dump-stencil-as-EPS): new function
13834
13835         * Documentation/user/invoking.itely (Invoking lilypond): add note
13836         about EPS backend.
13837
13838         * scm/framework-eps.scm: new file: create per-system/per-page EPS
13839         files for inclusion in lilypond-book document.
13840
13841         * input/tutorial/lbook-latex-test.tex: rename from lilbook.tex
13842
13843         * input/tutorial/lbook-texi-test.texi: new file.
13844
13845         * scm/safe-lily.scm (safe-objects): add
13846         {begin,end}-of-line-(in)?visible as safe.
13847  
13848 2005-01-30  Graham Percival  <gperlist@shaw.ca>
13849
13850         * Documentation/user/changing-defaults.itely: fixed example
13851         of (dynamics).
13852
13853 2005-01-29  Graham Percival  <gperlist@shaw.ca>
13854
13855         * lily/main.cc: fix info about -o=FILE.
13856
13857 2005-01-29  Werner Lemberg  <wl@gnu.org>
13858
13859         * mf/feta-toevallig.mf ("Natural"): Completely changed the
13860         construction to assure smooth transition from straight to curved
13861         lines.
13862
13863 2005-01-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13864
13865         * lily/stencil.cc (moved_to_edge): don't halt on adding empty
13866         stencils.
13867
13868         * ps/lilyponddefs.ps: add start-page, start-system doesn't
13869         translate to top of page. Fixes alignment problems of
13870         lilypond-generated EPS files.
13871
13872 2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13873
13874         * scm/part-combiner.scm (analyse-spanner-states): trigger on
13875         crescendo-end as well, since Decrescendo maybe ended with Stop
13876         Crescendo.). Fixes: partcombine-diminuendo.ly
13877
13878         * scm/script.scm (default-script-alist): swap portato symbols.
13879
13880         * lily/instrument-name-engraver.cc (acknowledge_grob): typo.
13881
13882         * lily/paper-outputter-scheme.cc (LY_DEFINE):
13883         ly:outputter-port. New function.
13884
13885         * scm/framework-ps.scm (output-classic-framework): dump a
13886         -systems.texi too
13887         (output-classic-framework): dump multiple systems on an "infinite"
13888         page EPS including fonts. 
13889
13890         * scripts/lilypond-book.py (Lilypond_snippet.ly_is_outdated): use
13891         .eps files for both texi and tex formats. Use PNG coming from
13892         lilypond.
13893         
13894 2005-01-28  Graham Percival  <gperlist@shaw.ca>
13895
13896         * Docuemntation/user/invoking.itely: fix info about -o=FILE.
13897
13898         * scripts/lilypond-latex.py: fix info about -o=FILE.
13899
13900 2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13901
13902         * ly/generate-embedded-cff.ly: write .cff.ps files.
13903
13904         * mf/GNUmakefile ($(outdir)/lilypond.map): add .cff.ps to .map file.
13905
13906         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
13907         $(outdir)/%.svg $(outdir)/%.pfa): remove --simplify
13908
13909 2005-01-28  Jan Nieuwenhuizen  <janneke@gnu.org>
13910
13911         * lily/include/guile-compatibility.hh (SCM_VECTOR_P): Compile fix.
13912
13913 2005-01-28  Werner Lemberg  <wl@gnu.org>
13914
13915         * mf/feta-macros.mf (soft_start_penstroke, soft_end_penstroke): New
13916         macros.
13917         (draw_bulb): Improved.
13918
13919         * mf/feta-pendaal.mf ("Pedal asterisk"): Remove workaround for
13920         metapost bug.
13921         (draw_pedal_P): Use soft_end_penstroke.
13922         (draw_pedal_d): Use soft_start_penstroke.
13923
13924         * mf/feta-schrift.mf ("Trill (`tr')"): Remove redundant point in
13925         path.
13926         ("Varied Coda"): Move some points to avoid fontforge warnings.  This
13927         doesn't change the glyph shape.
13928
13929         * mf/feta-accordion.mf ("accOldEE"): Draw glyph differently (without
13930         changing the shape) to avoid fontforge warnings.
13931
13932         * mf/feta-klef.mf (draw_tab_T, draw_tab_A, draw_tab_B): Use
13933         soft_end_penstroke and fix glyph shape.
13934
13935 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13936
13937         * lily/*.cc: Scheme deprecation of SCM_VECTOR_* 
13938
13939 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13940
13941         * scm/define-markup-commands.scm (line): filter out empty stencils
13942         from line command.
13943
13944         * lily/stencil-scheme.cc (LY_DEFINE): only allow finite real
13945         amount.
13946
13947 2005-01-27  Graham Percival  <gperlist@shaw.ca>
13948
13949         * Documentation/user/notation.itely: added info about what
13950         \voiceFoo does.  Also rewrote warning about marks at
13951         a line break.
13952
13953         * Documentation/user/changing-defaults.itely: added info
13954         about putting dynamics in parenthesis and brackets.
13955
13956 2005-01-27  Werner Lemberg  <wl@gnu.org>
13957
13958         * mf/feta-schrift.mf ("Trill (`tr')"): Fix typo.
13959
13960 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13961
13962         * mf/feta-schrift.mf: reverse u and d portato. Fixes:
13963         portato-direction.ly
13964
13965         * lily/beam.cc (consider_auto_knees): add beam height to
13966         threshold. Fixes: knee-multiple-beam.ly
13967
13968         * lily/instrument-name-engraver.cc (acknowledge_grob): also ignore
13969         pedal line spanners. Fixes: instrument-center-pedal.ly
13970
13971         * lily/auto-beam-engraver.cc (acknowledge_grob): stop beam
13972         if encountering barline. Fixes: auto-beam-repeat.ly
13973
13974 2005-01-26  Werner Lemberg  <wl@gnu.org>
13975
13976         * mf/feta-slag.mf (draw_trillelement): Fix shape to get clean
13977         overlapping.
13978
13979         * mf/feta-toevallig.mf (draw_meta_sharp): Fix shape to avoid curves
13980         with inflections for the 1/2 sharp glyph.
13981
13982         * mf/feta-schrift.mf ("Trill (`tr')"): Fix start position of
13983         connection between `t' and `r'.
13984         Unify bulb with the rest of `r' to avoid grazing outlines which
13985         confuses the overlap removal algorithm of fontforge.
13986
13987         * mf/feta-bolletjes.mf (draw_slash): Fix shape to avoid curves with
13988         inflections.
13989         (draw_cross): Fix shape to have uniform thickness in corners.
13990
13991         * mf/feta-pendaal.mf (draw_pedal_P): Break shape into smaller pieces
13992         to avoid an uneven number of self-intersections; this confuses
13993         fontforge.
13994         Fix a slight bug in the shape at left bottom (which is visible only
13995         at high magnifications).
13996         `Center' the stem horizontally to avoid overlapping.
13997
13998 2005-01-24  Werner Lemberg  <wl@gnu.org>
13999
14000         * mf/feta-autometric.mf (fet_beginfont): Set font_coding_scheme
14001         to `asis'.
14002         (fet_begingroup): Save group name in string `feta_group'.
14003         (fet_endgroup): Updated.
14004         (fet_beginchar): Emit `glyph_name' special for mf2pt1.
14005
14006         * mf/feta-bolletjes.mf: s/p/pat/ for paths.
14007
14008         * mf/feta-pendaal.mf ("Pedal asterisk"): Add workaround for bug
14009         in metapost.
14010
14011 2005-01-24  Graham Percival  <gperlist@shaw.ca>
14012
14013         * Documentation/user/notation.itely: really minor editing.
14014
14015 2005-01-22  Graham Percival  <gperlist@shaw.ca>
14016
14017         * Documentation/user/examples.itely: minor editing.
14018
14019         * Documentation/user/changing-defaults.itely: minor editing.
14020
14021         * Documentation/user/notation.itely: clarified info on polyphony
14022         and \addlyrics.
14023
14024 2005-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
14025
14026         * scm/output-gnome.scm: 
14027         * scm/output-svg.scm:
14028         * scm/lily-library.scm (font-name-style): Update font name
14029         kludging for fontconfig use.
14030
14031 2005-01-20  Erlend Aasland  <erlenda@gmail.com>
14032
14033         * scm/define-markup-commands.scm: Document right-align and
14034         larger markup commands. Remove "TODO" from the topmost comment
14035         "each markup function should have a doc string." More consistent
14036         use of new-lines.
14037
14038 2005-01-22  Graham Percival  <gperlist@shaw.ca>
14039
14040         * Documentation/user/changing-defaults: removed info about
14041         copyright symbol, since it's likely to change soon.
14042         Added info about betweensystemspace.
14043
14044         * Documentation/user/notation.itely: minor fixes.
14045
14046         * Documentation/user/lilypond.tely,
14047         Documentation/user/music-glossary.tely: changed copyright
14048         date to 2005 instead of 2004.
14049
14050         * input/test/volta-chord-names.ly: added old example back.
14051
14052 2005-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14053
14054         * mf/feta-beugel.mf: use design size 20 (not 15).
14055
14056         * mf/aybabtu.pe.in: scale brace fonts to design sizes.
14057         change name to aybabtu completely
14058
14059 2005-01-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14060
14061         * buildscripts/gen-emmentaler-scripts.py (outdir): add
14062         design_size to fontname
14063
14064 2005-01-19  Werner Lemberg  <wl@gnu.org>
14065
14066         * mf/feta-accordion.mf, mf/feta-klef.mf, mf/feta-pendaal.mf,
14067         mf/feta-schrift.mf: s/p/pat/ if a path variable.
14068
14069         * mf/feta-autometric.mf (set_char_box): Add code which emits
14070         specials for mf2pt1 if run with metapost.
14071         (to_bp): New macro for mf2pt1.
14072
14073 2005-01-18  Graham Percival  <gperlist@shaw.ca>
14074
14075         * Documentation/user/changing-defaults: added info on
14076         creating a copyright symbol.
14077
14078 2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14079
14080         * VERSION: release 2.5.9
14081         
14082 2005-01-18  Erlend Aasland  <erlenda@gmail.com>
14083
14084         * scm/auto-beam.scm: Simplify score-override-auto-beam-setting
14085
14086         * Documentation/user/notation.itely: Document
14087         score-override-auto-beam-setting Fix documentation for
14088         revert-auto-beam-setting.
14089
14090 2005-01-18  Werner Lemberg  <wl@gnu.org>
14091
14092         * scm/framework-ps.scm (ps-embed-cff): Fix DSC comments.
14093         (procset): New function to define a procset resource.
14094         (ps-embed-pfa): New function to define a font resource.
14095         (setup): New function to define a `Setup' environment.
14096         (preamble): Use new functions.
14097
14098         * ps/lilypond.defs (init-lilypond-parameters): New function to
14099         get rid of directly executed PS code.  Used in scm/framework-ps.scm.
14100
14101 2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14102
14103         * mf/GNUmakefile (MFTRACE_FLAGS): add --no-afm to MFTRACE_FLAGS
14104
14105 2005-01-17  Erlend Aasland  <erlenda@gmail.com>
14106
14107         * scm/define-markup-commands.scm: Change number->markletter-string
14108         to take two arguments (vector number). Add number->mark-alphabet-vector
14109         and markalphabet markup command.
14110
14111         * scm/translation-functions.scm: Add format-mark-box-alphabet,
14112         format-mark-alphabet, format-mark-box-barnumbers and
14113         format-mark-barnumbers. Fix bug in format-mark-box-numbers.
14114
14115 2005-01-17  Graham Percival  <gperlist@shaw.ca>
14116
14117         * Documentation/user/examples.itely: add SATB automatic piano
14118         reduction template.
14119
14120         * Documentation/user/notation.itely: added info about changing
14121         partcombine texts.  Also adds examples of alternate lyrics.
14122
14123         * Documentation/user/changing-defaults.itely: added warning
14124         about \RemoveEmptyStaffContext overriding previous changes.
14125
14126 2005-01-17  Werner Lemberg  <wl@gnu.org>
14127
14128         * buildscripts/mf-to-table.py: Use `FetaAlphabetEncoding' for
14129         feta-alphabet*.
14130
14131 2005-01-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14132
14133         * python/lilylib.py (make_ps_images): don't do final showpage for
14134         multi-page documents.
14135         
14136         * VERSION (MY_PATCH_LEVEL): release 2.5.8
14137
14138 2005-01-16  Graham Percival  <gperlist@shaw.ca>
14139
14140         * Documentation/user/lilypond.tely: changed order of appendices;
14141         unified index should be last.
14142
14143         * Documentation/user/notation.itely: add example of key signatures
14144         and info about Staff.printKeyCancellation.
14145
14146 2005-01-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14147
14148         * lily/include/repeated-music.hh (class Repeated_music): change
14149         into "namespace" class.
14150
14151         * lily/event.cc: remove Key_change_event.
14152
14153         * lily/include/transposed-music.hh (class Transposed_music): remove.
14154
14155         * lily/transposed-music.cc: remove
14156
14157         * lily/include/relative-music.hh: remove.
14158
14159         * lily/include/music-sequence.hh (struct Music_sequence): change
14160         into "namespace" class.
14161
14162         * lily/untransposable-music.cc (Module): remove
14163
14164         * lily/include/un-relativable-music.hh (Module): remove
14165
14166         * lily/include/untransposable-music.hh (Module): remove
14167
14168         * lily/include/music-list.hh (Module): remove file
14169
14170         * lily/un-relativable-music.cc: remove file.
14171
14172 2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
14173
14174         * lily/parser.yy: Compile fix.
14175
14176 2005-01-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14177
14178         * lily/include/music.hh (class Music): unvirtualize transpose().
14179
14180         * lily/sequential-music.cc: remove file.
14181
14182         * lily/include/lyric-combine-music.hh ("music.hh"): remove file.
14183
14184         * lily/slur-scoring.cc (get_best_curve): only switch on
14185         DEBUG_SLUR_SCORING for non NDEBUG builds.
14186
14187         * lily/include/music.hh (class Music): replace Music::start_mom()
14188         by start-callback property
14189
14190         * lily/include/grace-music.hh: remove file. 
14191
14192         * lily/stem.cc (height): robustness fix.
14193
14194         * lily/time-scaled-music.cc: remove file.
14195
14196         * lily/include/music.hh (class Music): include SCM init argument.
14197         (class Music): replace Music::get_length() virtual by
14198         length-callback property everywhere.
14199
14200         * scripts/convert-ly.py (conv): add  # to \property scalar value.
14201
14202         * mf/GNUmakefile: don't install *list.ly
14203
14204 2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
14205
14206         * mf/GNUmakefile (CFF_FILES): Bugfix: only big cheeses and braces.
14207
14208 2005-01-12  Werner Lemberg  <wl@gnu.org>
14209
14210         This patch addresses the following problems in the feta sources
14211         files which contribute to the fetaXX fonts.
14212
14213         . Many fixes for rasterization at low resolutions (consistent use of
14214           `vround' and `hround', integer shift values for paths, applying
14215           `eps' for mirrored paths, use of `define_whole_pixels' and
14216           friends, etc.) -- while this probably looks like a waste of time
14217           it has revealed deficiencies in some glyph shapes.  See comment at
14218           the end of feta-params.mf how vertical symmetry is achieved.
14219
14220         . The `---' operator has been replaced everywhere with `--'; this
14221           both improves and considerably reduces the font size after
14222           conversion with mf2pt1.
14223
14224         These change aren't explicitly mentioned below since virtually all
14225         glyphs are affected.
14226
14227         Other notable differences:
14228
14229         . Glyphs from feta-accordion.mf now have charboxes around the
14230           outline.
14231
14232         . Fixed incorrect charbox for `accDot'.
14233
14234         . The `rcomma' and `lcomma' glyphs were distorted due to a typo.
14235
14236         . Fixed position of the bow in the `upprall' glyph and its siblings.
14237
14238         . The bulb size in the `2/2 meter' and `4/4 meter' glyphs is now
14239           dependent on the staff line thickness to avoid touching the middle
14240           staff line at smaller sizes.
14241
14242         . Largely extended output for feta-testXX: Where useful, glyphs
14243         are shown both between and on staff lines.
14244
14245
14246         * mf/feta-params.mf (staff_space_rounded,
14247         stafflinethickness_rounded, linethickness_rounded,
14248         ledgerlinethickness_rounded, stemthickness_rounded): New variables.
14249         Update all code which uses them where appropriate.
14250         (feta_eps, feta_shift, feta_space_shift, feta_offset, feta_fillpen):
14251         New variables used to control rasterization at low resolutions.  Set
14252         to zero if feta code is processed with metapost.
14253
14254         * mf/feta-macros.mf (draw_staff, draw_staff_outline): Updated.
14255         (draw_rounded_block, draw_square_block): Updated to use `--' only.
14256         (flare_path): Updated.
14257         Make it work with `filldraw' (but only circular pens).
14258         (hfloor, vfloor, hceiling, vceiling): New macros.
14259
14260         * mf/feta-accordion.mf ("accDiscant", "accFreebase", "accStdbase"):
14261         Use `draw' again in mf mode to have good pixel dropout control.
14262         Fix intersection points of horizontal lines with circle.
14263         ("accDot"): Fix parameters for set_char_box.
14264         ("accOldEE"): Use `draw' again in mf mode to have good pixel dropout
14265         control.
14266
14267         * mf/feta-banier.mf: Updated.
14268
14269         * mf/feta-bolletjes.mf (remember_pic): New variable, used for
14270         testing.
14271         (undraw_inside_ellipse): Remove `center' argument.  Update all
14272         callers.
14273         (draw_brevis): New macro, called by "Brevis notehead".
14274         (draw_whole_triangle_head): New macro, called by "Whole
14275         trianglehead".
14276         (draw_small_triangle_head): Use `filldraw'.
14277
14278         * mf/feta-eindelijk.mf: Remove useless global group.
14279         Updated.
14280
14281         * mf/feta-klef.mf (draw_c_clef): Correct point positions for using
14282         `filldraw'.
14283
14284         * mf/feta-pendaal.mf: Updated.
14285
14286         * mf/feta-puntje.mf: Updated.
14287
14288         * mf/feta-schrift.mf (draw_very_long_fermata): Simplified to use
14289         less points.
14290         ("Flageolet"): Use `draw' again in mf mode to have good pixel
14291         dropout control.
14292         ("Varied Coda"): Use `draw_block'.
14293         (draw_comma): Fix typo.
14294         (draw_arpeggio_arrow): Use `draw' also in mf mode to have good
14295         pixel dropout control.
14296
14297         * mf/feta-slag.mf ("upprall", "downprall", "lineprall"): Fix start
14298         position of bow.
14299
14300         * mf/feta-timesig.mf (draw_C): Reduce bulb size for smaller design
14301         sizes.
14302
14303         * mf/feta-toevallig.mf (remember_pic): New variable, used for
14304         testing.
14305         (draw_meta_sharp): Much simplified.
14306         ("Sharp", "1/2 Sharp", "3/4 Sharp"): Don't rotate but shift.
14307
14308         * mf/feta-test-generic.mf: Include all files as in feta-generic.mf.
14309
14310 2005-01-13  Mats Bengtsson  <mabe@s3.kth.se>
14311
14312         * Documentation/user/notation.itely (Ancient rests): Fix typo
14313         (thanks Anthony)
14314
14315 2005-01-13  Jan Nieuwenhuizen  <janneke@gnu.org>
14316
14317         * scm/auto-beam.scm (score-override-auto-beam-setting): New function.
14318
14319         * lily/main.cc (setup_paths): Add cff.
14320
14321         * mf/GNUmakefile (foe): Include actual target %.cff.
14322         (INSTALLATION_OUT_SUFFIXES): Install CFF and SVG fonts too.
14323
14324 2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14325
14326         * lily/include/lily-lexer.hh (class Lily_lexer): lose hungarian _b
14327         suffix for main_input_b_.
14328
14329         * scm/music-functions.scm (toplevel-music-functions):
14330         precompute music lengths for music expressions.  
14331
14332 2005-01-11  Nicolas Sceaux  <nicolas.sceaux@free.fr>
14333
14334         * lily/include/input.hh (class Input): new `end_' slot for end of
14335         input. Renamed defined_str0_ to start_.
14336
14337         * lily/input.cc (Input): Add Input::Input (Input const &) and
14338         remove Input::Input (Source_file*, char const *). Use the new
14339         slots.
14340         (set_location): method used by bison to propagate input
14341         locations (YYLLOC_DEFAULT).
14342         (end_line_number, end_column_number, step_forward): new methods
14343         
14344         * lily/input-scheme.cc (ly:input-both-locations): new function,
14345         similar to ly:input-location, but also return the end line and
14346         column.
14347
14348         * lily/include/includable-lexer.hh: 
14349         * lily/includable-lexer.cc: 
14350         * lily/include/lily-lexer.hh (class Lily_lexer): 
14351         * lily/lily-lexer.cc (add_lexed_char): Move add_lexed_char from
14352         Includable_lexer to Lily_lexer, in order to update lexloc (the
14353         yylloc), a new slot of Lily_lexer.
14354         (here_input, LexerError): simplify by using the lexloc slot (aka
14355         yylloc)
14356
14357         * lily/lexer.ll: #define yylloc to use input locations (it may
14358         be useless here?). Fixed the #embedded_scm rule (step the location
14359         forward in order to skip the sharp sign before parsing the scheme
14360         expression)
14361
14362         * lily/include/lily-parser.hh (class Lily_parser): 
14363         * lily/lily-parser.cc: Remove push_spot(), pop_spot() and
14364         here_input()
14365         (parser_error): overload for more precise locations of errors.
14366
14367         * lily/parser.yy (YYLTYPE): set location type to Input
14368         (YYLLOC_DEFAULT): use Input::set_location()
14369         (yylex): add the YYLTYPE* location parameter.
14370         Clean push_spot()/pop_spot()/here_input(), and use @$, @1, etc.
14371         Give an Input parameter to THIS->parser-error() for more accurate
14372         messages.
14373
14374 2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14375
14376         * stepmake/aclocal.m4: do NDEBUG for optimizing builds.
14377
14378         * lily/include/beam.hh (DEBUG_QUANTING): performance: only switch
14379         on BEAMQUANTING for non-NDEBUG builds.
14380
14381         * lily/stem.cc (head_count): performance: avoid String::String()
14382         inside oft called function.
14383
14384 2005-01-09  Graham Percival  <gperlist@shaw.ca>
14385
14386         * Documentation/user/examles.itely: attempted fix for broken
14387         string quartet template.
14388
14389         * Documentation/user/notation.itely: remove unnecessary broken
14390         link.
14391
14392 2005-01-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14393
14394         * VERSION (PACKAGE_NAME): release 2.5.7
14395
14396 2005-01-09  Jan Nieuwenhuizen  <janneke@gnu.org>
14397
14398         * config.make.in (METAFONT): Append -progname=mf, fixes use with
14399         mf-nowin for teTeX-3.0.  Backportme.
14400
14401         * scm/output-svg.scm (utf8-string): New function.
14402
14403         * scm/output-gnome.scm (utf8-string): New function.
14404         (otf-name-mangling): Remove.
14405
14406         * lily/pango-font.cc (Pango_font): Use font string iso font
14407         filename for utf8-text.
14408
14409         * buildscripts/gen-emmentaler-scripts.py: Remove designsize from
14410         name.
14411
14412 2005-01-08  Graham Percival  <gperlist@shaw.ca>
14413
14414         * Documentation/user/notation.itely: add info about
14415         Staff.extraNatural = ##f in Pitches section.  Also
14416         fixed some minor issues in the Vocal music section.
14417
14418 2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14419
14420         * scm/output-ps.scm (white-text): comment out Helvetica font,
14421         which is broken for my GS install.
14422
14423         * lily/pango-font.cc (pango_item_string_stencil): use ink_rect,
14424         which provides a tighter bbox.
14425
14426         * scm/define-grobs.scm (all-grob-descriptions): remove all
14427         extra-offsets from definitions.
14428
14429 2005-01-08  Erlend Aasland  <erlenda@gmail.com>
14430
14431         * scm/output-lib.scm: Rename guitar-tunings to guitar-tuning and
14432         add tuning for 4-string bass and some common 4/5-string banjo
14433         tunings.  New function (four-string-banjo) turns a 5-string tuning
14434         into a 4-string tuning.  New function
14435         (fret-number-tablature-format-banjo) computes correct fret numbers
14436         on 5-string banjos.
14437
14438         * ly/engraver-init.ly: Default stringTunings = #guitar-tuning
14439         Add beam correction to TabVoice.
14440
14441         * scm/define-grobs.scm: Adjust notehead offset. Print fret numbers
14442         using bold font; makes tabs more readable.
14443
14444 2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14445
14446         * lily/font-select.cc (get_font_by_design_size): don't make
14447         Modified_font_metric; this causes trouble, since we don't know the
14448         font magnification from inside Pango_font::text_stencil()
14449
14450         * lily/all-font-metrics.cc (find_pango_font): take magnification argument.
14451
14452         * Documentation/user/notation.itely (The Lyrics context): comment out
14453         broken {Small ensembles} link.
14454
14455         * scm/framework-svg.scm (output-framework): change calling convention.
14456
14457         * lily/object-key-dumper-scheme.cc: new file.
14458
14459         * lily/object-key-undumper-scheme.cc: new file.
14460
14461         * lily/tweak-registration-scheme.cc: new file.
14462
14463         * lily/pango-select.cc (symbol_to_pango_variant): init local variable.
14464
14465         * Documentation/user/examples.itely (String quartet): uncomment
14466         broken example.
14467
14468         * lily/font-config.cc: new file.
14469
14470 2005-01-08  Jan Nieuwenhuizen  <janneke@gnu.org>
14471
14472         * scm/output-svg.scm: 
14473         * scm/output-gnome.scm: s/bigcheese/emmentaler.
14474
14475         * lily/score-engraver.cc (MUSIC_FONT): Use emmentaler20.
14476
14477 2005-01-07  Jan Nieuwenhuizen  <janneke@gnu.org>
14478
14479         * lily/general-scheme.cc (LY_DEFINE): Use snprintf (WAS: sprintf).
14480         Add headers.
14481
14482         * lily/GNUmakefile (general-scheme.o): Add version.hh dependency.
14483
14484 2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14485
14486         * mf/GNUmakefile (debian-mirror): rename bigcheese to emmentaler.
14487
14488         * lily/include/main.hh: lose _b hungarian suffixes for global
14489         variables.
14490
14491         * lily/include/lily-guile-macros.hh: new file.
14492
14493         * lily/pango-select-scheme.cc (LY_DEFINE): new file.
14494
14495         * lily/general-scheme.cc: new file. 
14496
14497         * lily/font-select.cc (get_font_by_design_size): retrieve
14498         PangoFont for (designsize . "pango-descr") entries.
14499
14500         * lily/lily-parser-scheme.cc: new file.
14501
14502         * lily/output-def-scheme.cc: new file.
14503
14504         * lily/paper-book-scheme.cc: new file.
14505
14506         * lily/duration-scheme.cc (LY_DEFINE): new file.
14507
14508         * lily/pitch-scheme.cc:  new file.
14509
14510         * scm/font.scm (add-cmr-fonts): use real dimens in font selection.
14511
14512 2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14513
14514         * lily/dimensions.cc (LY_DEFINE): add ly:{inch,cm,mm,bp,pt}.
14515
14516 2005-01-06  Graham Percival  <gperlist@shaw.ca>
14517
14518         * Documentation/user/notation.itely: minor editing.
14519
14520         * Documentation/user/changing-defaults: minor editing.
14521
14522         * Documentation/user/examples.itely: add template for
14523         string quartet part extraction; demonstrates tag.
14524
14525 2005-01-06  Erlend Aasland  <erlenda@gmail.com>
14526
14527         * Documentation/user/notation.itely: documents
14528         format-mark-box-letters and format-mark-box-numbers
14529
14530         * scm/define-context-properties.scm: change comment.
14531
14532 2005-01-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14533
14534         * scm/framework-ps.scm (output-classic-framework): new function:
14535         dump systems as separate .eps files (without fonts) and write a
14536         single collecting .tex file.
14537
14538 2005-01-05  Mats Bengtsson  <mabe@s3.kth.se>
14539
14540         * Documentation/user/notation.itely (Setting simple songs):
14541         Correct several errors in the equivalent formulation of
14542         \addlyrics. 
14543         (The Lyrics context): Corrected link to the SATB example.
14544
14545 2005-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14546
14547         * scm/lily.scm (completize-formats): new function
14548         (postprocess-output): new function
14549
14550         * lily/paper-book.cc (classic_output): change calling
14551         convention. Give basename as first argument. 
14552         remove Paper_book::post_processing().
14553
14554         * lily/lily-guile.cc (LY_DEFINE): ly:output-backend, new function.
14555
14556 2005-01-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14557
14558         * lily/paper-outputter.cc (LY_DEFINE): new function
14559         ly:outputter-close.
14560
14561         * lily/main.cc: change --format,-f to --backend,-b
14562
14563         * lily/include/main.hh: rename format to backend.
14564
14565         * scm/translation-functions.scm (format-mark-box-numbers): add.
14566         patch by Erlend Aasland
14567
14568 2005-01-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14569
14570         * lily/pango-font.cc (text_stencil): dump string as
14571         (utf-8-string FONTDESC UTF8) for use in -f gnome, -f svg.
14572
14573 2005-01-03  Jan Nieuwenhuizen  <janneke@gnu.org>
14574
14575         * configure.in (gui_b): Remove handy developer-only
14576         PKG_CONFIG_PATH settings that cater for Jan-and-Han-Wen ~/usr/pkg/
14577         CVS source installations (but break other non-default but correct
14578         PKG_CONFIG_PATH setups), as this is no longer developer-only.
14579
14580         * SConstruct: 
14581         * ps/GNUmakefile (INSTALLATION_FILES): teTeX-3.0
14582         compatibility (backportme).
14583
14584         * GNUmakefile.in: teTeX-3.0 compatibility (backportme).
14585
14586 2005-01-03  Werner Lemberg  <wl@gnu.org>
14587
14588         Prepare glyph shapes for mf2pt1 conversion.
14589
14590         * mf/feta-accordion.mf (accreg_pen): Removed.  No longer used.
14591         (accDiscant, accFreebase, accStdbase): Replace `draw' with
14592         `penstroke'.
14593         (accDot): Use `drawdot'.
14594         (accBayanbase): Replace `draw' with `draw_gridline'.
14595         (print_penpos): Moved to feta-macros.mf.
14596         (accOldEE): Replace `filldraw' with `penstroke'.
14597         Replace `draw' with `penstroke' and `drawdot'.
14598
14599         * mf/feta-banier.mf: Code clean-up.
14600         ("grace dash (up)", "grace dash (down)"): Replace `draw' with
14601         `fill'.
14602
14603         * mf/feta-bolletjes (draw_cross): Remove call to `labels'.
14604
14605         * mf/feta-eindelijk.mf (draw_rest_bulb, draw_eigth_rest): Add
14606         paremeter to control drawing of labels.  Update all callers.
14607
14608         * mf/feta-klef.mf (draw_c_clef): Use `&' not `..' to connect paths.
14609         (new_bulb): Return a bulb as a single path.  To do that, it now
14610         takes some more parameters.  Updated all callers.
14611         (draw_gclef): Major clean-up.  `draw' has been replaced with
14612         `penstroke', unnecessary outlines have been removed.
14613         Remove (unused) gnome-canvas code.
14614
14615         * mf/feta-macros.mf (print_penpos): New macro (from
14616         feta-accordion.mf).
14617         Other minor fixes.
14618
14619         * mf/feta-pendaal.mf ("Pedal asterisk"): Use `undrawdot'.
14620         ("Pedal dot"): Use `drawdot'.
14621         (draw_pedal_P): Add parameter to control drawing of labels.  Update
14622         all callers.
14623         Fix shape at top.
14624         (draw_pedal_e): Add parameter to control drawing of labels.  Update
14625         all callers.
14626         (draw_pedal_d): Add parameter to control drawing of labels.  Update
14627         all callers.
14628         Revert drawing direction.
14629
14630         * mf/feta-schrift.mf (draw_fermata): Use single path.
14631         (draw_short_fermata): Replace `filldraw' with `fill'.
14632         (draw_long_fermata, draw_very_long_fermata): Replace calls to
14633         `draw_rounded_block' with a single path.
14634         ("Thumb"): Draw full circle instead of mirroring segments.
14635         (draw_accent): New macro.
14636         ("> accent", "espr"): Use it.
14637         (draw_marcato): Replace `filldraw' and `draw' with `fill'.
14638         ("open (unstopped)"): Draw full circle instead of mirroring
14639         segments.
14640         (draw_vee): Removed.
14641         ("Upbow"): Use `draw_accent' instead of `draw_vee'.
14642         ("Downbow"): Replace calls to `draw_rounded_block' with a single
14643         path.
14644         ("Trill (`tr')"): Replace overlapping loop drawn with `draw' with
14645         partial pieces drawn with `fill' -- these do still overlap with the
14646         stem of the `t' but just once, not multiple times so that fontforge
14647         can handle it gracefully.
14648         Change other parts of the glyph so that fontforge's overlapping
14649         algorithm reliably works.
14650         (draw_heel): Replace `draw' with `fill'.
14651         (draw_toe): Use `draw_accent' instead of `draw_vee'.
14652         ("Flageolet"): Replace `draw' with `penstroke'.
14653         ("Segno"): Replace `filldraw' with `penstroke'.
14654         Replace `draw' with `drawdot'.
14655         ("Coda"): Replace `fill' with `penstroke', using a single path.
14656         ("Varied Coda"): Use less overlapping paths.
14657         (draw_arpeggio_arrow): Replace `filldraw' with `fill', using a
14658         single path.
14659
14660         * mf/feta-slag.mf (draw_trillelement): Put `clearxy' outside of
14661         group to better control the `labels' command.
14662         Rename argument to `offset' and use it actually.  Update all
14663         callers.
14664         Replace `filldraw' with `fill'.
14665         ("mordent", "prallmordent", "upmordent", "downmordent",
14666         "lineprall"): Replace `draw' with `draw_gridline'.
14667         ("upprall", "downprall"): Replace `draw' with `fill'.
14668
14669         * mf/feta-timesig.mf: Formatting.
14670
14671         * mf feta-toevallig.mf (draw_meta_flag): Move code to draw labels
14672         to...
14673         ("Flat"): Here.
14674         (draw_paren): Move code to draw labels to...
14675         ("Right Parenthesis"): Here.
14676
14677 2005-01-02  Graham Percival <gperlist@shaw.ca>
14678
14679         * Documentation/user/notation.itely: add example of \setTextDecresc
14680         and \setTextDim.
14681
14682 2005-01-02  Tatsuya Ono <tats_ono@infoseek.jp>
14683
14684         * scm/define-markup-commands.scm :  fix glyph-strings of
14685         accidentals and \note-by-number
14686
14687 2005-01-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14688
14689         * VERSION: 2.5.6 released.
14690         
14691         * ps/lilyponddefs.ps: put mm -> pt scaling in here.
14692
14693         * input/regression/new-markup-scheme.ly: oops. font-family=music
14694         -> font-encoding fetaMusic.  
14695
14696         * lily/main.cc: put default to PS.
14697
14698         * lily/tfm.cc: idem.
14699
14700         * lily/afm.cc: idem.
14701
14702         * lily/include/modified-font-metric.hh (struct
14703         Modified_font_metric): remove coding_scheme() method.
14704
14705         * input/mutopia/F.Schubert/morgenlied.ly: convert to utf8
14706
14707         * scripts/convert-ly.py (conv): crash on encountering \encoding.
14708
14709         * input/les-nereides.ly: convert to utf8
14710
14711         * lily/modified-font-metric.cc (text_dimension): idem.
14712
14713         * lily/parser.yy (TODO): idem.
14714
14715         * lily/include/lily-lexer.hh (class Lily_lexer): idem.
14716
14717         * lily/lexer.ll: remove encoding
14718
14719         * scm/framework-ps.scm (output-variables): separately scale the
14720         page to mm 
14721
14722         * lily/pango-font.cc (Pango_font): fix scaling.
14723
14724         * lily/font-metric.cc (design_size): design_size returns a
14725         dimension now as well.
14726
14727 2004-12-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14728
14729         * mf/GNUmakefile ($(outdir)/%.otf-table): use findstring. Fixes
14730         brace generation. 
14731
14732         * lily/text-metrics.cc (LY_DEFINE): use scm_c_make_hash_table().
14733
14734 2004-12-30  Jan Nieuwenhuizen  <janneke@gnu.org>
14735
14736         * mf/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Do not try to
14737         install unbuildable Fontmap and Fontmap.lily (Simon Aridis-Lang).
14738
14739 2004-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14740
14741         * mf/GNUmakefile ($(outdir)/%.otf-table): include parmesan20.lisp
14742         in first run as well.
14743
14744         * scm/paper.scm (layout-set-staff-size): use text-font-size in
14745         dimension less points (ie. 12 = 12 point)
14746
14747         * lily/pango-select.cc (select_pango_font): use find_scaled_font().
14748
14749         * lily/all-font-metrics.cc (find_pango_font): set description_
14750
14751         * lily/pango-font.cc (text_stencil): export size as well.
14752         (text_stencil): fix scaling and extents box.
14753
14754 2004-12-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14755
14756         * Documentation/topdocs/NEWS.texi (Top): add -f texstr
14757
14758         * Documentation/user/invoking.itely (Invoking lilypond): document
14759         texstr
14760
14761         * scripts/convert-ly.py (conv): add ancient rules.
14762
14763         * scm/clef.scm (c0-pitch-alist): replace - with .
14764
14765         * scripts/lilypond-book.py (process_snippets): add texstr support.
14766
14767         * scm/framework-texstr.scm (header): change extension to .textmetrics
14768
14769         * lily/lily-parser.cc (parse_file): do try_load_text_metrics for
14770         -f tex.
14771
14772         * lily/text-metrics.cc: new file.
14773         (try_load_text_metrics): new function
14774
14775         * lily/include/text-metrics.hh: new file.
14776
14777 2004-12-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14778
14779         * lily/include/lily-guile.hh (ly_lily_module_constant): rename
14780         ly_scheme_function to ly_lily_module_constant.
14781
14782         * lily/modified-font-metric.cc (text_dimension): try
14783         lookup_tex_text_dimension() first.
14784
14785         * lily/tfm.cc: new function ly:load-text-dimensions
14786
14787 2004-12-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14788
14789         * scm/output-texstr.scm (text): use \lilygetmetrics
14790
14791         * scm/framework-texstr.scm (header): dump in new format.
14792
14793         * tex/lilypond-tex-metrics: new file.
14794         
14795 2004-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
14796
14797         * lily/pango-font.cc (text_stencil): Quick try at glyph->charcode
14798         mapping.
14799         (index_to_charcode): New method.
14800
14801         * scm/output-ps.scm (glyph-string): 
14802         * scm/output-gnome.scm (glyph-string): Add FONT parameter.
14803
14804 2004-12-26  Jan Nieuwenhuizen  <janneke@gnu.org>
14805
14806         * scm/output-gnome.scm (FIXME-glyph-string): New function.  Cannot
14807         implement fully, need FONT to get to charcode.
14808
14809         * scm/lily.scm (ly:all-stencil-expressions): Add glyph-string.
14810
14811         * scm: Cleanups.
14812
14813         * Documentation/user/changing-defaults.itely: Fix internalsrefs
14814         {Tunable context properties},
14815         {All layout objects},
14816         {Music definitions}.
14817
14818 2004-12-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14819
14820         * VERSION: release 2.5.5
14821         
14822         * lily/main.cc: use TeX as default output format.
14823
14824         * flower/file-path.cc (find): try to open directly as well, so we
14825         find absolute path files. 
14826
14827         * lily/pango-select.cc: new file.
14828
14829         * scm/framework-ps.scm: remove all encoding code. 
14830         load pfb/pfa for PangoFont too.
14831         
14832         * lily/lily-guile.cc (ly_chain_assoc_get): new function.
14833
14834 2004-12-22  Werner Lemberg  <wl@gnu.org>
14835
14836         Prepare glyph shapes for mf2pt1 conversion.
14837
14838         * mf/feta-toevallig.mf ("Double Sharp"): Minor path fix.
14839
14840         * mf/feta-bolletjes.mf (penposx): New auxiliary macro.
14841         (define_triangle_shape): Use it to replace `draw' with `fill' and
14842         `unfill'.  Update all callers.
14843         (draw_slash): Replace `filldraw' with `fill'.  Update all callers.
14844         (draw_cross): Ditto.
14845         ("X-Circled notehead"): Replace `draw' with `fill' and `unfill'.
14846         Use penrazor for better conversion with mf2pt1.
14847         (generic_draw_solfa_note_shape, draw_solfa_note_shape,
14848         draw_solfa_quarter_note_shape, triangle): Removed.  Unused.
14849         (draw_do_head, draw_re_head, draw_mi_head, draw_fa_head,
14850         draw_la_head, draw_ti_head): Replace `filldraw' with
14851         `fill'.  Update all callers.
14852
14853 2004-12-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14854
14855         * lily/paper-book.cc (output): revert: only allow a single output
14856         format.
14857
14858         * lily/include/pango-font.hh: new file.
14859
14860         * lily/pango-font.cc: new file.
14861
14862         * lily/font-metric.cc (text_stencil): new routine
14863
14864         * lily/all-font-metrics.cc (find_pango_font): new routine.
14865
14866         * lily/include/font-metric.hh (struct Font_metric): add
14867         text_stencil()
14868
14869         * configure.in (PKG_CONFIG_PATH): require PANGO_FT2
14870
14871 2004-12-22  Werner Lemberg  <wl@gnu.org>
14872
14873         Prepare glyph shapes for mf2pt1 conversion.
14874
14875         * mf/feta-macros.mf, mf_feta-eindelijk.mf: Some formatting.
14876
14877         * mf/feta-toevallig.mf: Formatting.
14878         (draw_meta_sharp): Modify path to replace `filldraw' with `fill'.
14879         ("Natural"): Fix paths to allow better postprocessing.
14880         (draw_meta_flat): Use `z3l' as additional point in path to get
14881         better conversion with mf2pt1.
14882         Other minor cleanups.
14883         ("3/4 Flat"): Add auxiliary points and modify path to replace
14884         `draw' with `fill'.
14885         ("Double Sharp"): Mirror path segments instead of picture elements
14886         to get a single outline.
14887         Modify path to replace `filldraw' with `fill'.
14888
14889 2004-12-22  Graham Percival  <gperlist@shaw.ca>
14890
14891         * input/test/unfold-all-repeats.ly: added file back.
14892
14893         * Documentation/user/notation.itely,
14894         Documentation/user/programming-interface.itely
14895         Documentation/user/changing-defaults.itely: fixed misc broken
14896         links to input/test/ files.
14897
14898 2004-12-22  Jan Nieuwenhuizen  <janneke@gnu.org>
14899
14900         * tex/texinfo.tex: Update.  We should not be distributing this,
14901         but since we do, use latest version.
14902
14903         * Documentation/user/macros.itexi: Comment-out \fetaflat,
14904         \fetasharp.  Fixes make web.  FIXME: make usable (compatible?) TeX
14905         macros for feta glyphs.
14906
14907 2004-12-22  Graham Percival  <gperlist@shaw.ca>
14908
14909         * Documentation/user/changing-defaults.itely: fix index for set.
14910
14911         * Documentation/user/converters.itely: added convert-ly bugs list
14912         from CVS.
14913
14914 2004-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
14915
14916         * python/lilylib.py (setup_environment): Set GS_FONTPATH, GS_LIB
14917         to empty.  Fixes make web, using gs-gpl-8.01.  In fact,
14918         gs-afpl-8.50 has more trouble with make web (ie, uses *a lot* more
14919         resourses; 3x MAXSIZE, 4x MAXRSS, 1.5x user).
14920
14921         * mf/GNUmakefile (pfa_warning): Use less broken check.
14922
14923         * python/lilylib.py (setup_environment): Remove cruft from
14924         GS_FONTPATH.
14925
14926         * configure.in: Bump mftrace requirement to 1.1.1.
14927
14928 2004-12-20  Jan Nieuwenhuizen  <janneke@gnu.org>
14929
14930         * scm/output-svg.scm (beam): Use polygon.
14931
14932         * scm/lily-library.scm: Bugfix.
14933
14934         * Documentation/user/invoking.itely (Invoking lilypond): Bugfix.
14935
14936         * mf/GNUmakefile (ALL_GEN_FILES): Remove unbuildable Fontmap.lily.
14937
14938 2004-12-19  Werner Lemberg  <wl@gnu.org>
14939
14940         Prepare glyph shapes for mf2pt1 conversion.
14941
14942         * mf/feta-eindelijk: Some formatting.
14943         (multi_rest_x, multi_beam_height): Removed.  Unused.
14944         ("Quarter rest"): Use `intersectiontimes' to create a single
14945         outline.
14946         (rest_crook): Removed.  Unused.
14947         (draw_rest_bulb): Return path (without filling).  Update callers.
14948         Simplified.
14949         (draw_eighth_rest, "16th rest", "32th rest", "64th rest",
14950         "128th rest"): Simplify `pat'.
14951         Create single outline.
14952
14953 2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
14954
14955         * mf/GNUmakefile (ALL_GEN_FILES):
14956         (INSTALLATION_OUT_SUFFIXES): Remove unbuildable fonts.scale.
14957
14958         * scm/output-svg.scm (polygon, draw-line, dashed-line): New
14959         function.
14960
14961 2004-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14962
14963         * scm/output-texstr.scm (placebox): add routine
14964
14965         * VERSION (PACKAGE_NAME): release 2.5.4
14966
14967         * scm/framework-texstr.scm (output-framework): new file.  
14968
14969         * scm/output-texstr.scm: new file. Collect (TEXT . ) calls for TeX
14970         processing.
14971
14972         * Documentation/user/invoking.itely (Invoking lilypond): add SVG
14973
14974         * stepmake/stepmake/metafont-rules.make: make single SVG/PFA/PFB
14975         rule.
14976
14977         * configure.in (gui_b): bump mftrace requirement to 1.1.0
14978
14979         * mf/feta-bolletjes.mf (triangle): add s to 0triangle.
14980
14981         * mf/GNUmakefile (ALL_GEN_FILES): make SVG files too.
14982
14983 2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
14984
14985         * scm/framework-svg.scm (dump-page): Implement landscape.
14986
14987 2004-12-18  Jan Nieuwenhuizen  <janneke@gnu.org>
14988
14989         * lily/main.cc (setup_paths): Add svg to search path.
14990
14991         * scm/output-svg.scm:
14992         * scm/framework-svg.scm: Add pageSet.  Update.
14993         (dump-fonts): New function.
14994         (output-framework): Use it.
14995
14996         * mf/GNUmakefile: 
14997         * buildscripts/gen-bigcheese-scripts.py: Also generate SVG font.
14998
14999 2004-12-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15000
15001         * tex/lilyponddefs.tex: comment out new ifpdf code.
15002
15003 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
15004
15005         * GNUmakefile.in: 
15006         * SConstruct (symlink): Replace afm by otf.
15007
15008         * scm/framework-gnome.scm (gnome-main): Remove invocation of
15009         ly:pango-add-afm-decoder.
15010
15011         * lily/lily-guile.cc ("ly:pango-add-afm-decoder"): Build fix: Remove.
15012
15013 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15014
15015         * scm/output-ps.scm (new-text): don't access t glyph for getting
15016         space dimension.
15017
15018         * ly/init.ly: warn about \version
15019
15020         * lily/lexer.ll: set version-seen?
15021
15022 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
15023
15024         * scm/output-svg.scm (string->entities): Update.
15025
15026 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15027
15028         * lily/main.cc (setup_paths): replace afm by otf for path. 
15029
15030         * lily/pangofc-afm-decoder.cc: remove.
15031
15032         * lily/include/pangofc-afm-decoder.hh: remove.
15033
15034         * scm/framework-scm.scm (output-framework): new file.
15035
15036         * mf/GNUmakefile: remove SAUTER_FONTS.
15037         remove SVG/sodipodi hacks.
15038
15039         * scm/lily-library.scm (stderr): move stderr.
15040
15041         * mf/GNUmakefile: remove AFM support.
15042
15043         * buildscripts/mf-to-table.py (base): remove AFM support.
15044
15045         * lily/open-type-font.cc (design_size): use design_size
15046
15047 2004-12-17  Pedro Kroger  <kroeger@pedrokroeger.net>
15048
15049         * lily/font-metric.cc (LY_DEFINE): Fix the docstring.
15050
15051 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
15052
15053         * mf/GNUmakefile: Generate combined aybabtu info.
15054         * mf/aybabtu.pe.in (i): Load it.
15055
15056         * scm/framework-tex.scm (otf-font-load-command): Bugfix: subfonts
15057         are not symbols.
15058
15059         * lily/include/open-type-font.hh (count): New method.
15060
15061         * mf/aybabtu.pe.in: Typo.
15062
15063         * Documentation/user/out/lilypond-internals.nexi (Scheme
15064         functions): Typo.
15065
15066         * lily/include/guile-compatibility.hh (SCM_HASHTABLE_P): Add compat.
15067
15068 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15069
15070         * buildscripts/gen-bigcheese-scripts.py (i): use symbols for
15071         subfonts.
15072
15073         * scm/output-tex.scm (named-glyph): new function. This fixes TeX output.
15074
15075         * scm/framework-tex.scm (otf-font-load-command): load subfonts.
15076         (tex-font-command-raw): new function.
15077
15078         * lily/include/virtual-font-metric.hh (Module): remove file
15079
15080         * lily/virtual-font-metric.cc (Module): remove file.
15081         
15082
15083         * lily/open-type-font.cc (LY_DEFINE): ly:otf-font-glyph-info
15084         (get_indexed_char): read bbox from lily table if present.
15085
15086 2004-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15087
15088         * mf/GNUmakefile ($(outdir)/aybabtu.subfonts): rule for
15089         aybabtu.subfonts
15090
15091         * mf/feta-beugel.mf (y): don't number consecutively, instead, use
15092         global glyphname. Enables more than 64 glyphs in the OTF.
15093
15094 2004-12-16  Jan Nieuwenhuizen  <janneke@gnu.org>
15095
15096         * scm/font.scm (add-music-fonts): Load aybabtu iso all separate
15097         braces.
15098
15099         * lily/open-type-font.cc (design_size): Use 12 as default for
15100         design size.
15101
15102         * mf/aybabtu.pe.in: New file.  Merge all our braces.
15103
15104         * mf/GNUmakefile: Generate aybabtu.
15105
15106         * tex/lilyponddefs.tex: teTeX 3.0 pdfetex fix.
15107
15108 2004-12-14  Jan Nieuwenhuizen  <janneke@gnu.org>
15109
15110         * scm/lily-library.scm (char->unicode-index): Remove.
15111
15112         * scm/output-gnome.scm (text): Bugfix for plain string input.
15113         Updates.
15114
15115         * scm/output-svg.scm (svg-font): Add weight to font selection.
15116
15117 2004-12-14  Mats Bengtsson  <mabe@s3.kth.se>
15118
15119         * Documentation/topdocs/INSTALL.texi (Top): Point to
15120         buildscripts/out/clean-fonts instead of
15121         buildscripts/clean-fonts.sh. 
15122
15123 2004-12-13  Graham Percival  <gperlist@shaw.ca>
15124
15125         * input/regression/figured-bass.ly: attempt to clarify text.
15126
15127         * Documentation/user/notation.tely: add cindex for tag, attempt to
15128         add figured bass example.
15129
15130         * Documentation/user/changing-defaults: basic editing.
15131
15132 2004-12-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15133
15134         * buildscripts/gen-bigcheese-scripts.py (i): load .subfonts table. 
15135
15136         * lily/open-type-font.cc (LY_DEFINE): new function
15137         ly:font-sub-fonts
15138
15139         * lily/include/font-metric.hh (struct Font_metric): new method
15140         sub_fonts()
15141
15142         * lily/vaticana-ligature-engraver.cc (transform_heads): replace
15143         . with - in add.stem.
15144         
15145 2004-12-13  Jan Nieuwenhuizen  <janneke@gnu.org>
15146
15147         * scm/encoding.scm (coding-alist): Fix encodings for fetaNumber
15148         and fetaDynamic.
15149
15150         * lily/rest.cc (glyph_name): Change - to . .
15151
15152         * scm/output-gnome.scm (text): Hello world, again.
15153
15154         * scm/output-svg.scm (named-glyph): New function.  Hello world!
15155
15156         * lily/modified-font-metric.cc (index_to_charcode): New method.
15157
15158         * lily/include/font-metric.hh (index_to_charcode): New function.
15159
15160         * lily/font-metric.cc (ly:font-glyph-name-to-charcode): Use it in
15161         new function.
15162         (ly:font-glyph-to-index): Remove.
15163
15164 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15165
15166         * lily/open-type-font.cc (make_index_to_charcode_map): new method.
15167
15168         * mf/feta-autometric.mf (code): remove tex name from fet_beginchar.
15169
15170         * lily/open-type-font.cc (load_scheme_table): new function
15171
15172         * lily/dots.cc (print): replace - 
15173
15174         * lily/open-type-font.cc (attachment_point): new function.
15175         (load_table): read LILC table
15176
15177         * buildscripts/gen-bigcheese-scripts.py (Module): new
15178         file. Generate FF scripts.
15179
15180         * mf/feta-din10.mf: idem.
15181
15182         * mf/feta-nummer10.mf: remove mf files.
15183
15184         * mf/feta-alphabet.mf (dynamic_design_size): merge din and number font.
15185
15186 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
15187
15188         * lily/lily-guile.cc: Use scm_from_locale_stringn.
15189
15190         * lily/include/guile-compatibility.hh (scm_from_locale_stringn): Add
15191         compatibility.
15192
15193 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15194
15195         * lily/open-type-font.cc (get_indexed_char): scale metrics by
15196         design-size and units_per_EM.
15197
15198         * mf/bigcheese.pe.in: set PUA codepoints before loading din & nummer.
15199
15200 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
15201
15202         * mf/bigcheese.pe.in (i): Map to 0xe000 (PUA) for testing, which
15203         does not crash fontforge.
15204
15205         * scm/lily-library.scm (char->unicode-index): Hack to map onto
15206         PUA.
15207
15208 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15209
15210         * scm/framework-ps.scm (ps-embed-cff): new function.
15211
15212         * lily/lily-guile.cc (LY_DEFINE): make ly:gulp-file binary proof.
15213
15214 2004-12-12  Werner Lemberg  <wl@gnu.org>
15215
15216         * mf/bigcheese.pe.in: Add PUA mapping.
15217         Don't create Type 42 but bare CFF font.
15218
15219 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
15220
15221         * scm/output-gnome.scm (placebox): Hackery to get bigcheese symbols
15222         within canvas boundaries.
15223
15224         * mf/merge.pe.in: Set font names, version, license GPL.
15225
15226         * make/substitute.make: Add FONTFORGE.
15227
15228         * config.make.in (FONTFORGE): Add.
15229
15230         * configure.in (gui_b): Use PATH_PROG for fontforge.
15231
15232 2004-12-11  Graham Percival  <gperlist@shaw.ca>
15233
15234         * scm/define-markup-commands.scm: add baseline-skip to info
15235         about \column.
15236
15237 2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
15238
15239         * lily/font-metric.cc (ly:font-get-glyph-index): New function.
15240
15241         * scm/output-gnome.scm (named-glyph): Use it.
15242
15243         * scm/lily.scm (ly:all-stencil-expressions): Add named-glyph.
15244
15245         * flower/string.cc (substitute_char): Rename, rewrite, modify this.
15246         (upper_string, lower_string, reverse_string): Remove.
15247
15248         * configure.in (fontforge): Reinstate version check.
15249
15250         * ly/engraver-init.ly: Fix clef glyph names.
15251
15252         * lily/time-signature.cc (special_time_signature): Fix fraction
15253         glyph names.
15254
15255 2004-12-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15256
15257         * mf/merge.pe: new file.
15258
15259         * lily/freetype.cc: new file.
15260
15261         * lily/include/open-type-font.hh (class Open_type_font): new file.
15262
15263         * lily/include/freetype.hh: new file.
15264
15265         * lily/open-type-font.cc: new file.
15266
15267         * lily/all-font-metrics.cc (find_otf): new function.
15268
15269 2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
15270
15271         * lily/time-signature.cc (special_time_signature): Fix.
15272
15273         * configure.in (PKG_CONFIG_PATH): Remove stray `i'.  Check for
15274         GTK2 before checking for pango.  Fixes -fgnome.
15275
15276         * lily/font-metric.cc (LY_DEFINE): Also rename C name to match
15277         Scheme name.
15278
15279         * scm/define-markup-commands.scm:
15280         * scm/safe-lily.scm: Bugfix: ly:font-by-name.
15281
15282         * configure.in: Require makeinfo 4.7 (needed for @ifdocbook).
15283
15284         * stepmake/aclocal.m4 (STEPMAKE_GET_VERSION): Grok fontforge-like
15285         date versions.  Fixes configure.
15286         (STEPMAKE_CHECK_VERSION): Support optional actual program version
15287         argument.
15288
15289 2004-12-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15290
15291         * buildscripts/mf-to-table.py (write_ps_encoding): write real
15292         names in .enc
15293
15294         * lily/*.cc: use '.' iso. '-' for separating glyph name elements.
15295
15296 2004-12-09  Graham Percival  <gperlist@shaw.ca>
15297
15298         * Documentation/user/changing-defaults.itely: add info about
15299         make-dynamic-script
15300
15301         * Documentation/user/notation.itely: add link in dynamics to
15302         section about make-dynamic-script.
15303
15304 2004-12-09  Christian hitz  <chhitz@gmx.net>
15305
15306         * lily/lily-guile.cc: change MACOS_X to __APPLE__
15307
15308 2004-12-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15309
15310         * buildscripts/mf-to-table.py (parse_logfile): use . for
15311         concatting name and group.
15312         (parse_logfile): use M for Minus (negative.)
15313
15314         * lily/include/type-swallow-translator.hh
15315         (DECLARE_EVENT_SWALLOWER): ENTER_DESCRIPTION -> ADD_TRANSLATOR
15316
15317         * lily/*.cc: cosmetics around = sign.
15318
15319         * lily/paper-column.cc (Paper_column): copy rank_. This fixes
15320         lyric spacing on the penultimate column.
15321
15322 2004-12-05  Christian Hitz  <chhitz@gmx.net>
15323
15324         * configure.in:
15325         * lily/accidental-placement.cc:
15326         * lily/bar-line.cc:
15327         * lily/beam-concave.cc:
15328         * lily/beam-quanting.cc:
15329         * lily/beam.cc:
15330         * lily/bezier-bow.cc:
15331         * lily/bezier.cc:
15332         * lily/break-align-interface.cc:
15333         * lily/custos.cc:
15334         * lily/dimension-cache.cc:
15335         * lily/dot-column.cc:
15336         * lily/font-metric.cc:
15337         * lily/font-select.cc:
15338         * lily/gourlay-breaking.cc:
15339         * lily/grob-property.cc:
15340         * lily/grob.cc:
15341         * lily/lily-guile.cc:
15342         * lily/line-spanner.cc:
15343         * lily/lookup.cc:
15344         * lily/lyric-extender.cc:
15345         * lily/lyric-hyphen.cc:
15346         * lily/mensural-ligature.cc:
15347         * lily/midi-def.cc:
15348         * lily/misc.cc:
15349         * lily/note-collision.cc:
15350         * lily/note-column.cc:
15351         * lily/note-head.cc:
15352         * lily/paper-outputter.cc:
15353         * lily/percent-repeat-item.cc:
15354         * lily/rest-collision.cc:
15355         * lily/side-position-interface.cc:
15356         * lily/simple-spacer.cc:
15357         * lily/slur-configuration.cc:
15358         * lily/slur-scoring.cc:
15359         * lily/slur.cc:
15360         * lily/spaceable-grob.cc:
15361         * lily/spacing-spanner.cc:
15362         * lily/spanner.cc:
15363         * lily/staff-symbol-referencer.cc:
15364         * lily/stem.cc:
15365         * lily/stencil.cc:
15366         * lily/system-start-delimiter.cc:
15367         * lily/system.cc:
15368         * lily/text-item.cc:
15369         * lily/tie.cc:
15370         * lily/tuplet-bracket.cc:
15371         * lily/vaticana-ligature.cc: Fix for MacOS X: use <math.h> instead of
15372         <cmath> beacause isinf/isnan is undefined in <cmath>
15373
15374 2004-12-03  Mats Bengtsson  <mabe@s3.kth.se>
15375
15376         * cygwin/lily-wins.py (stat): remove old flag -p when calling lilypond.
15377
15378 2004-12-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15379
15380         * VERSION: release 2.5.3
15381         
15382 2004-11-29  Arno Waschk <arno@arnowaschk.de>
15383
15384         * mf/feta-schrift.mf: added <>-like articulation mark as "espressivo"
15385
15386 2004-12-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15387
15388         * scm/music-functions.scm (cue-substitute): voice counts start at 0.
15389
15390         * lily/note-head.cc (internal_print): always try the "s" head if
15391         u/d not found.
15392
15393         * scm/titling.scm (marked-up-headfoot): reinstate default tagline.
15394
15395 2004-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15396
15397         * mf/parmesan-heads.mf (overdone_heads): typos.
15398
15399 2004-11-30  Nicolas Sceaux  <nicolas.sceaux@free.fr>
15400
15401         * lily/parser.yy (markup): in markups, { .. } without command
15402         before are also flattened, ie \line must be explicitely used.
15403
15404         * Documentation/user/changing-defaults.itely:
15405         * Documentation/user/notation.itely: 
15406         * input/wilhelmus.ly: 
15407         * input/regression/instrument-name-markup.ly: 
15408         * input/regression/markup-score.ly: 
15409         * input/regression/new-markup-scheme.ly: 
15410         * input/regression/new-markup-syntax.ly: 
15411         * input/test/coriolan-margin.ly: use \line in markups where
15412         appropriate
15413         
15414 2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
15415
15416         * scm/new-markup.scm (map-markup-command-list): helper function
15417         used in parser.yy to map markup commands on a markup list.
15418
15419         * lily/parser.yy: get rid off < > in markups by treating { } as
15420         real lists.
15421
15422         * lily/lexer.ll: remove < > from markup lexer mode.
15423
15424         * scripts/convert-ly.py (conv): add rule for converting 
15425         \markup < > to \markup { }
15426
15427         * ly/titling-init.ly: 
15428         * input/test/coriolan-margin.ly: 
15429         * input/regression/new-markup-syntax.ly: 
15430         * input/regression/new-markup-scheme.ly: 
15431         * input/regression/multi-measure-rest-text.ly: 
15432         * input/regression/markup-stack.ly: 
15433         * input/regression/markup-score.ly: 
15434         * input/regression/instrument-name-markup.ly: 
15435         * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: 
15436         * input/mutopia/R.Schumann/romanze-op28-2.ly: 
15437         * input/mutopia/J.S.Bach/wtk1-fugue2.ly: 
15438         * input/wilhelmus.ly: 
15439         * Documentation/user/notation.itely: 
15440         * Documentation/user/music-glossary.tely: 
15441         * Documentation/user/changing-defaults.itely: change < > to { } in
15442         markups
15443
15444 2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15445
15446         * lily/accidental-placement.cc (position_accidentals): shortcut if
15447         no accidentals to place.
15448
15449 2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
15450
15451         * scm/define-grob-properties.scm (all-user-grob-properties): fixed
15452         typo s/ly:dimension ?/ly:dimension?/
15453
15454         * input/regression/lily-in-scheme.ly: 
15455         * input/regression/music-function.ly: 
15456         * ly/spanners-init.ly (assertBeamSlope): 
15457         * scm/music-functions.scm (def-grace-function): add the paper
15458         argument to music function definitions.
15459
15460 2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15461
15462         * lily/moment.cc (LY_DEFINE):
15463         ly:moment-main-{denominator,numberator}, new function.
15464
15465         * lily/score-engraver.cc (typeset_all): assign to column on basis
15466         of axis-group-parent-X setting.
15467
15468         * lily/axis-group-engraver.cc (process_acknowledged_grobs): do
15469         add_element() on basis of axis-group-parent-Y setting.
15470
15471         * lily/grob.cc: add axis-group-parent-{XY} properties.
15472
15473         * input/regression/spacing-stick-out.ly: new file.
15474
15475         * lily/simple-spacer.cc (add_columns): use binary search for
15476         setting column rods. Changes O(n^2) to O(n log(n)) for
15477         constructing spacing problem from columns.
15478         (add_columns): read allow-outside-line to make sure no texts stick
15479         out.
15480         (solve): Simple_spacer::is_active() only determines
15481         satisfies_constraints_ for non-ragged typesetting.
15482
15483         * lily/simultaneous-music.cc (to_relative_octave): only set
15484         old_relative_used if return pitch actually changed.
15485
15486         * scm/define-context-properties.scm
15487         (all-user-translation-properties): change to match implementation.
15488
15489         * python/lilylib.py: Replace re.match by re.search and adds "-c
15490         showpage" to the gs command line (Johannes Schindelin)
15491
15492         * scm/framework-ps.scm (output-preview-framework): sanitize bbox
15493         before processing. Prevents crash when inf is in the extent.
15494
15495         * scm/define-markup-commands.scm (note-by-number): add "s" to
15496         "noteheads-" glyphname.
15497  
15498         * lily/parser.yy (Generic_prefix_music): supply parser argument to
15499         music function as well.
15500         
15501 2004-11-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15502
15503         * VERSION: release 2.5.2
15504
15505         * Documentation/user/changing-defaults.itely (Creating titles):
15506         add breakbefore variable.
15507
15508         * lily/paper-book.cc (set_system_penalty): new function. Set
15509         penalty_ based on breakBefore setting
15510
15511         * lily/context-specced-music-iterator.cc (construct_children):
15512         interpret special context id $uniqueContextId 
15513
15514         * lily/context.cc (create_unique_context): new method. Move
15515         creation of unique (\new) contexts into interpreting phase. This
15516         makes
15517
15518           foo= \new Staff ..
15519           << \foo \foo >>
15520
15521         produce 2 staves.
15522         
15523
15524         * scm/define-music-properties.scm (all-music-properties): add
15525         quoted-voice-direction
15526
15527         * ly/music-functions-init.ly: killCues function.
15528
15529         * scm/music-functions.scm (cue-substitute): move creation of voice
15530         contexts further to the back. 
15531
15532 2004-11-25  Werner Lemberg  <wl@gnu.org>
15533
15534         * tex/GNUmakefile ($(outdir)/latin1.enc): Replace `/minus' with
15535         `/hyphen' in encoding vector to get correct glyph name for EC fonts.
15536
15537 2004-11-24  Erik Sandberg  <ersa9195@student.uu.se>
15538
15539         * buildscripts/guile-gnome.sh: Fixed typo.
15540
15541 2004-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15542
15543         * lily/lexer.ll: add < >  to markup lexer mode (backportme)
15544
15545         * scripts/abc2ly.py (dump_slyrics): add ord(). 
15546
15547         * lily/note-heads-engraver.cc (process_music): add shapeNoteStyles
15548         to regular engraver. 
15549
15550 2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15551
15552         * mf/feta-bolletjes.mf (triangle): rewrite solfa heads.
15553
15554 2004-11-22  Jan Nieuwenhuizen  <janneke@gnu.org>
15555
15556         * scm/define-markup-commands.scm (fill-line): Typo.
15557
15558         * buildscripts/guile-gnome.sh (GGVERSION): Build update for 2.7.96
15559         and newer.
15560
15561 2004-11-22  Erik Sandberg  <ersa9195@student.uu.se>
15562
15563         * ly/dynamic-scripts-init.ly: Fixed typo.
15564
15565 2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15566
15567         * mf/feta-bolletjes.mf (overdone_heads): cleanup triangle
15568         note-head, to have different attachment points for up and down.
15569
15570         * mf/feta-bolletjes.mf: merge solfa heads into main note heads.
15571
15572         * mf/feta-generic.mf (else): remove solfa.
15573
15574         * mf/feta-bolletjes.mf (tishape): remove unicode test.
15575
15576         * scm/define-context-properties.scm
15577         (all-user-translation-properties): add shapeNoteStyles property.
15578
15579         * lily/shape-note-heads-engraver.cc (process_music): new file.
15580
15581         * lily/event.cc (transpose): call Event::transpose() for
15582         transposing the tonic.
15583
15584 2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
15585
15586         * scm/output-gnome.scm: Save some pointers about pango/fontconfig
15587         Unicode/OpenType and AFM.
15588
15589         * lily/include/guile-compatibility.hh (scm_from_bool): Add.
15590
15591 2004-11-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15592
15593         * lily/grob.cc (Grob): idem. Plugs mem leaks. 
15594
15595         * lily/context.cc (Context): unprotect key from ctor.
15596
15597         * scm/stencil.scm (stack-lines): return empty-stencil if argument
15598         is '()
15599         (stack-stencils): idem.
15600
15601         * Documentation/user/changing-defaults.itely (Creating titles):
15602         document new title layout options.
15603
15604         * lily/parser.yy (lilypond_header_body): copy previous
15605         $globalheader if present.
15606
15607         * lily/ly-module.cc (LY_DEFINE): rename ly:import-module to
15608         ly:module-copy
15609         
15610         * scm/page-layout.scm (marked-up-headfoot): remove old functions.
15611
15612         * scm/titling.scm: remove old titling functions
15613
15614         * lily/stencil.cc (translate): remove absolute dimension.
15615
15616         * ly/titling-init.ly (oddFooterMarkup): new file. Generate titles
15617         via markup.
15618
15619         * scm/page-layout.scm (marked-up-headfoot): create header/footer
15620         field from user-supplied markup
15621
15622         * scm/define-markup-commands.scm (on-the-fly): new markup
15623         command. Enter SCM markup procedure directly in Scheme.
15624         (fromproperty): new markup command. Read markup from props argument.
15625
15626         * scm/titling.scm (marked-up-title): create title via
15627         user-specified markup. 
15628
15629         * scm/define-markup-commands.scm (column): remove empty stencils
15630         from column.
15631
15632         * lily/ly-module.cc (LY_DEFINE): use ly_module_lookup(). This does
15633         not have side-effect of creating variable stub.
15634
15635         * lily/stencil-scheme.cc (LY_DEFINE): add ly:stencil-empty?
15636
15637 2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
15638
15639         * scm/encoding.scm (coding-alist): 
15640         * scm/font.scm (add-ec-fonts):
15641         * ly/paper-defaults.ly: Use actual name for EC fontencoding:
15642         Extended-TeX-Font-Encoding---Latin.
15643
15644         * lily/side-position-interface.cc (general_side_position): Add
15645         actual offset to error message (avoid constant error messages).
15646
15647         * lily/all-font-metrics.cc (find_font): Add "lm" to try-AFM-first
15648         block.
15649
15650         * lily/font-select.cc (select_encoded_font)
15651         (get_font_by_mag_step, get_font_by_design_size): 
15652         * lily/modified-font-metric.cc (Modified_font_metric): 
15653         * lily/paper-def.cc (find_scaled_font): Add font_encoding parameter.
15654
15655         * scm/encoding.scm (coding-alist): Add fetaDynamic.
15656         (read-encoding-file): Bugfix: do not require space after bracket.
15657
15658         * scm/font.scm (add-cork-lm-fonts): Remove lmbxi8 and lmbxi14,
15659         these do not exist.
15660
15661 2004-11-20  Graham Percival  <gperlist@shaw.ca>
15662
15663         * Documentation/user/notation.itely: added info about typesetting
15664         boxed bar numbers.
15665
15666 2004-11-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15667
15668         * flower/interval.cc (T_to_string): gcc4 fixes.
15669
15670         * scm/define-markup-commands.scm (fill-line): use
15671         stack-stencils. This fixes problems with putting already centered
15672         stencils in a line.
15673
15674         * VERSION: release 2.5.1
15675
15676         * lily/bar-line.cc (get_staff_bar_size): add line thickness.
15677
15678 2004-11-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15679
15680         * input/example-[1-3].ly: simplify.
15681
15682         * lily/cluster-engraver.cc (try_music): react to busy-playing-event
15683
15684         * scm/output-ps.scm (new-text): new function. Use glyphshow to
15685         show glyphs.
15686
15687         * scm/encoding.scm (decode-byte-string): new function.
15688
15689         * scripts/convert-ly.py (conv): add warning about
15690         set-global-staff-size.
15691
15692         * Doxyfile: add. 
15693
15694         * scripts/convert-ly.py (conv): add raggedlastbottom rule
15695         (conv): warn for TextSpanner split.
15696         (conv): warn for textheight.
15697
15698 2004-11-19  Jan Nieuwenhuizen  <janneke@gnu.org>
15699
15700         * GNUmakefile.in (install-WWW): Invoke install-info, so that when
15701         building the documentation, info with images are installed.
15702         (final-install): Fix description.  Mention sourcing of login
15703         scripts (instead of running).
15704
15705 2004-11-18  Jan Nieuwenhuizen  <janneke@gnu.org>
15706
15707         * Debian lmodern support.  Note that LilyPond will issue warnings
15708         
15709             no such encoding: "FontSpecific"
15710
15711           The font selection mechanism wants to get the encoding from the
15712           font itself, but the idea of lmodern is that it is usable with
15713           different encodings, ie, Lily should get the encoding from the
15714           font tree, rather than the font itself.  This would require some
15715           more work.
15716         
15717         * configure.in: Test for and accept lmodern if EC fonts not found.
15718
15719         * scm/framework-tex.scm (font-load-command): TeX font name
15720         mangling for latin1 encoded cork-lm fonts.
15721         (convert-to-ps): Load lm.map if available.
15722
15723         * ly/paper-defaults.ly: Use cork-lm encoding if ec is not
15724         available.
15725
15726         * scm/encoding.scm (coding-alist): Add cork-lm encoding.
15727
15728         * scm/font.scm: Add header.  Autoload cork-lm and ec fonts if
15729         available.
15730
15731         * lily/kpath.cc (ly_kpathsea_find_file): Rename.  Do not use
15732         path for absolute file name, that is silly.
15733
15734         * lily/score-engraver.cc (initialize): 
15735
15736         * Documentation/user/GNUmakefile (local-install-info): Invoke
15737         install-info --remove first.
15738
15739         * #include cleanup (Andreas Scherer).
15740
15741 2004-11-18  Heikki Junes  <hjunes@cc.hut.fi>
15742
15743         * input/test/script-abbreviations.ly: fix typos.
15744
15745 2004-11-17  Werner Lemberg  <wl@gnu.org>
15746
15747         * python/lilylib.py (options_help_str): Support pretty-printing of
15748         newlines in fourth element of option description.
15749
15750         * scripts/lilypond-book.py (option_definitions): Use new lilylib
15751         feature.
15752         Sort options.
15753
15754         * Documentation/user/lilypond-book.itely: Finish update.
15755
15756 2004-11-17  Jan Nieuwenhuizen  <janneke@gnu.org>
15757
15758         * Documentation/user/macros.itexi: Add comment about \command.
15759
15760         * Documentation/user/lilypond.tely:
15761         * Documentation/user/lilypond-book.itely: Fix names of lilypond
15762         and lilypond-book nodes, so that `info lilypond' visits the manual
15763         at top level, and `info lilypond-book' visits the lilypond-book
15764         section.
15765
15766         * Documentation/user/GNUmakefile (local-install-info): Fix rules
15767         and packager messages.
15768
15769         * lily/pangofc-afm-decoder.cc: Update test.
15770
15771 2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
15772
15773         * scm/lily-library.scm (char->unicode-index): New function.
15774
15775         * scm/output-gnome.scm: 
15776         * scm/output-svg.scm: Cleanup.  Map custom fonts to PUA.
15777
15778         * Proper naming of file name throughout; s/filename/file[-_]name/.
15779
15780         * lily/modified-font-metric.cc ("ly:font-encoding"): New function.
15781
15782         * lily/pangofc-afm-decoder.cc (pango_fc_afm_get_glyph): Map onto PUA.
15783
15784 2004-11-16  Werner Lemberg  <wl@gnu.org>
15785
15786         * scripts/lilypond-book.py: The Lord has commanded me to use only
15787         tabs for indentation.  Your humble servant obeys.
15788
15789 2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
15790
15791         * scm/output-svg.scm: Font fixes.  Sodipodi now groks svg
15792         including font, if LilyPond-feta font is only feta font in path.
15793
15794         * scm/output-gnome.scm (text): Revert to file name of font if font
15795         has no name.  Fixes ec font selection.
15796         (char): Bugfix: do not utf8 twice.  Fixes clefs.
15797
15798         * scm/framework-svg.scm:
15799         * scm/output-svg.scm: New file.  TODO: figure out how to
15800         do character by index in font.
15801
15802         * scm/output-sodipodi.scm: Remove.
15803
15804         * scm/output-ps.scm (stem): Remove.
15805
15806 2004-11-15  Jan Nieuwenhuizen  <janneke@gnu.org>
15807
15808         * scm/output-gnome.scm (beam): New function.
15809         (slur): Round corners.
15810         (round-filled-box): Round corners.
15811
15812 2004-11-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15813
15814         * scm/output-gnome.scm (beam): add function.
15815         (draw-line): new routine.
15816         (dashed-line): stub; call draw-line
15817         (polygon): new routine.
15818
15819 2004-11-15  Werner Lemberg  <wl@gnu.org>
15820
15821         * Documentation/user/lilypond-book.itely: Revise section on
15822         lilypond-book options.
15823         Other minor fixes.
15824
15825         * scripts/lilypond-book.py: Change indentation to 4.
15826         Minor formatting.
15827
15828 2004-11-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15829
15830         * lily/system.cc (apply_tweaks): new function. Run tweaks on all
15831         grobs that have tweaks specced.
15832         
15833 2004-11-14  Heikki Junes  <hjunes@cc.hut.fi>
15834
15835         * Documentation/user/sound-output.itexi: add code snippets for MIDI.
15836
15837 2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
15838
15839         * lily/font-metric.cc (get_indexed_char_stencil): Bugfix: get
15840         actual char #, not 0 based index.
15841
15842         * lily/system-start-delimiter.cc (staff_brace): Start at 65.
15843
15844         * mf/feta-beugel.mf: Actually start at char #65.  Add header.
15845         Warning: do make -C mf clean.
15846
15847         * lily/context-property.cc: Compile fix.
15848
15849         * scm/output-gnome.scm: Add ec-fonts-mftraced to ~/.fonts.conf.
15850         Grok ec-fonts, braces and dynamics.
15851
15852         * scm/framework-gnome.scm (gnome-main): Register braces with pango.
15853
15854 2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15855
15856         * lily/include/tweak-registration.hh: new file.
15857
15858         * lily/tweak-registration.cc: new file.
15859
15860         * scm/framework-gnome.scm (save-tweaks): use new key mechanism for
15861         saving tweaks.
15862
15863         * scm/output-gnome.scm (text): comment dribble.
15864
15865 2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
15866
15867         * lily/pangofc-afm-decoder.cc (main): Test more feta fonts.
15868
15869         * scm/output-gnome.scm (bezier-sandwich): New function.  Reset
15870         path-def before using.  Fixes muchtomany slurs in wrong places
15871         bug.
15872
15873 2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15874
15875         * lily/grob-scheme.cc (LY_DEFINE): add new function ly:grob-key.
15876
15877         * lily/include/object-key-undumper.hh (Module): new file.
15878
15879         * lily/object-key-undumper.cc (Module): New file. Deserialize
15880         keys. SCM bindings
15881
15882         * lily/object-key-dumper.cc (Object_key_dumper): idem.
15883         Provide SCM bindings.
15884
15885         * lily/include/object-key-dumper.hh (class Object_key_dumper): 
15886         new file. Serialize object keys.
15887         
15888         * lily/object-key.cc (dump): new function.
15889         (as_scheme): new virtual function
15890         (undump): new function
15891         (undumpers): new table.
15892
15893         * lily/include/global-context.hh (Context): take \score key upon init.
15894
15895         * lily/object-key-dumper.cc (serialize_key): new file.
15896
15897         * lily/include/object-key-dumper.hh (class Object_key_dumper): new file.
15898
15899         * lily/lily-lexer.cc: remove \quote.
15900
15901         * lily/lookup.cc (triangle): rewrite, obviating symmetric_x_triangle().
15902
15903         * lily/context.cc (Context): take key argument in ctor.
15904         (create_context): new function
15905
15906         * lily/grob.cc (Grob): take key argument in ctor.  
15907
15908         * lily/lilypond-key.cc (do_compare): new file.
15909
15910         * lily/object-key.cc (Object_key): new file.
15911
15912         * lily/include/object-key.hh (class Object_key): new file.
15913
15914         * lily/include/lilypond-key.hh (class Lilypond_context_key): new file.
15915
15916 2004-11-13  Graham Percival  <gperlist@shaw.ca>
15917
15918         * Documentation/user/lilypond-book.itely: add small warning about
15919         noindent default in lilypond-book.
15920
15921         * Documentation/user/converters.itely: add examples for convert-ly.
15922
15923         * Documentation/user/examples.itely: change version string in templates
15924         to 2.4.0.
15925
15926 2004-11-12  Karl Hammar  <karl@aspodata.se>
15927
15928         * GNUmakefile.in (local-WWW-post): `find ...` overflows the
15929         cmdline, use xargs instead (backportme)
15930
15931 2004-11-10  Andreas Scherer  <andreas_mutopia@freenet.de>
15932         
15933         * Documentation/user/: Numerous fixes in the user manual.
15934
15935 2004-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15936
15937         * lily/parser.yy (re_rhythmed_music): search music expression for
15938         context-id, surround by \new Voice if not found. Fixes:
15939         addlyrics-second-staff.ly
15940
15941         * VERSION: 2.5.0 released.
15942         
15943 2004-11-12  Jan Nieuwenhuizen  <janneke@gnu.org>
15944
15945         * Documentation/index.html.in: Fix url to one big page.  (backportme)
15946
15947         * Documentation/user/GNUmakefile: Separate rules for split and
15948         unsplit html documents.  Remove perl massaging.  (backportme)
15949
15950 2004-11-11  Graham Percival  <gperlist@shaw.ca>
15951
15952         * Documentation/user/lilypond-book.itely: add short warning about
15953         \lilypond{} in LaTeX docs.
15954
15955 2004-11-11  Jan Nieuwenhuizen  <janneke@gnu.org>
15956
15957         * stepmake/aclocal.m4: Barf if kpathsea/kpathsea.h is not
15958         found.  (backportme)
15959
15960         * Documentation/topdocs/INSTALL.texi (ec-fonts-mtraced): Add
15961         version requirement.  (backportme)
15962
15963         * configure.in: Be explicit about old versions of
15964         ec-fonts-mtraced.  (backportme)
15965
15966         * lily/context-selector.cc (set_tweaks): New function.
15967         * lily/grob-selector.cc (set_tweaks): (Re)set hash table.  Fixes
15968         web with -DTWEAK.
15969
15970         * Documentation/user/introduction.itely (Automated engraving):
15971         Remove fragment option.  Fixes web.
15972
15973         * lily/context-property.cc (make_item_from_properties):
15974         * lily/context.cc (add_context)[TWEAK]: Tweak registration behind
15975         #ifdef.
15976
15977         * scm/define-context-properties.scm
15978         (all-internal-translation-properties): Add tweakRank and tweakCount.
15979
15980         * lily/grob.cc: 
15981         * scm/define-grob-properties.scm (all-internal-grob-properties):
15982         Add tweak-rank and tweak-count.
15983
15984 2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
15985
15986         * scm/output-gnome.scm (string->utf8-string, char->utf8-string):
15987         New function.
15988         (text): Use them.
15989
15990         * scm/framework-gnome.scm (item-event): Add support from TLA.  Support
15991         animated/opaque grob dragging tweaks.
15992
15993         * buildscripts/guile-gnome.sh: Update.
15994
15995 2004-11-10  Mats Bengtsson  <mabe@s3.kth.se>
15996
15997         * scm/define-grobs.scm (all-grob-descriptions): Added
15998         line-interface to the LigatureBracket object.
15999
16000 2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
16001
16002         * scm/framework-gnome.scm (item-event): Support non-animated mouse
16003         dragging tweaks.
16004
16005         * lily/lily-guile.cc (ly_to_string, ly_to_symbol): New function.
16006
16007         * lily/context-selector.cc (store_context): New function.
16008
16009         * lily/grob-selector.cc (register_grob)[TWEAK]: Apply tweak.
16010         (store_grob): New function.
16011         (identify_grob): Add Moment parameter.
16012
16013         * lily/lily-parser.cc (parse_file)[TWEAK]: Read .ly.t file if it
16014         exists.
16015
16016         * scm/framework-gnome.scm (save-tweaks): Write as alist.
16017
16018 2004-11-09  Jan Nieuwenhuizen  <janneke@gnu.org>
16019
16020         * scm/framework-gnome.scm (item-event): Print grob id.
16021         (save-tweaks): New function.
16022         (tweak): New funtion.
16023         (item-event): Use it, bound to arrow keys.
16024
16025         * lily/context-property.cc (make_item_from_properties): Register grob.
16026         * lily/context.cc (add_context): Register context.
16027
16028         * lily/include/context-selector.hh:
16029         * lily/include/grob-selector.hh:
16030         * lily/context-selector.cc:
16031         * lily/grob-selector.cc: New file.
16032
16033 2004-11-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16034
16035         * lily/slur.cc: add 'positions to interface
16036
16037         * lily/main.cc: reinstate PS as standard output format. 
16038
16039         * scm/framework-tex.scm (output-preview-framework): print systems
16040         up to first non title system.
16041
16042         * lily/grace-engraver.cc (start_translation_timestep): split
16043         scm_cadddr
16044         
16045 2004-11-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16046
16047         * lily/quote-iterator.cc (Module): remove old quote-iterator
16048
16049         * scm/define-music-types.scm (music-descriptions): move
16050         NewQuoteMusic over QuoteMusic
16051
16052         * Documentation/user/notation.itely (Formatting cue notes): use
16053         \cueDuring.
16054
16055         * lily/new-quote-iterator.cc (quote_ok): new function.
16056
16057         * input/regression/quote-cue-during.ly: new file.
16058
16059         * input/regression/quote-grace.ly: new file.
16060
16061         * scm/define-context-properties.scm (Module): change definition of
16062         graceSettings
16063
16064         * lily/context-property.cc (Module): rename from
16065         translator-property.cc
16066
16067         * lily/context.cc (context_name_symbol): new function
16068
16069         * lily/grace-engraver.cc: new file. Set properties for grobs based
16070         on the grace-ness of now_moment().
16071
16072         * scm/music-functions.scm (add-grace-property): use list
16073         iso. vector for graceSettings
16074         remove set-{start,stop}-grace-properties. 
16075
16076         * lily/new-quote-iterator.cc (construct_children): set
16077         quote_outlet_ if no quoted-context-{id,type} specified.
16078
16079         * scripts/convert-ly.py (conv): \quote -> \quoteDuring.
16080
16081         * lily/parser.yy (command_element): remove \quote.
16082
16083         * ly/music-functions-init.ly (location): add quoteDuring music
16084         function. 
16085
16086         * lily/lexer.ll: allow \encoding in lyrics as well.  Remove
16087         optional semicolon. (backportme)
16088
16089 2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
16090
16091         * python/GNUmakefile (STEPMAKE_TEMPLATES): Unset USER_LDFLAGS, no
16092         need to link to GUILE et al.
16093
16094 2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16095
16096         * scm/define-music-properties.scm (all-music-properties): add
16097         quoted-context-type, quoted-context-id.
16098
16099         * scm/lily.scm (type-check-list): new function.
16100         
16101         * scm/lily-library.scm: new file. Generic library routines.
16102
16103         * lily/parser.yy (Generic_prefix_music): move typechecking out of
16104         parser.
16105
16106         * ly/music-functions-init.ly: add quoteDuring function.
16107
16108         * lily/include/music-iterator.hh (class Music_iterator): rename
16109         set_translator -> set_context
16110
16111         * lily/parser.yy (Generic_prefix_music_scm): add
16112         MUSIC_FUNCTION_SCM_SCM_MUSIC
16113
16114         * scm/lily.scm (sanitize-command-option): new function. (backportme)
16115
16116         * scm/framework-tex.scm (header): sanitize TeX paper size.
16117         (backportme)
16118
16119 2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
16120
16121         * elisp/lilypond-indent.el (LilyPond-indent-level): 2 is now standard.
16122
16123         * tex/lilyponddefs.tex: If no inputencoding use latin1.  (backportme)
16124
16125         * scm/framework-tex.scm (font-load-command): Use T1 if no
16126         font-encoding set.  (backportme)
16127
16128         * scm/lily.scm (postscript->pdf): Remove .pdf file if it
16129         exists before converting.  (backportme)
16130
16131         * scm/framework-tex.scm (convert-to-dvi): Remove .dvi file if it
16132         exists before converting.  (backportme)
16133         (convert-to-ps): Remove .ps file if it exists before
16134         converting.  (backportme)
16135
16136         * lily/lexer.ll: Remove extra progress newline, use present tense.
16137
16138         * scm/paper.scm (paper-alist): public.
16139         * scm/framework-tex.scm (convert-to-ps):
16140         * scm/lily.scm (postscript->pdf): Do not leak papersizename into
16141         command line.
16142
16143 2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16144
16145         * scm/lily.scm (ly:system): add > /dev/null 2>&1 . (backportme)
16146
16147         * lily/recording-group-engraver.cc (derived_mark): mark
16148         now_events_. (backportme)
16149
16150 2004-11-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16151
16152         * mf/GNUmakefile: use Fedora-3 in download link. (backportme.)
16153
16154         * scm/framework-tex.scm (convert-to-dvi): use ly:system for
16155         invoking latex. (backportme.)
16156
16157         * lily/stem.cc (off_callback): center stems for all rest stems.
16158
16159 2004-11-05  Werner Lemberg  <wl@gnu.org>
16160
16161         * Documentation/user/lilypond.tely: Add more guidelines for writing
16162         lilypond texinfo documents.
16163
16164 2004-11-05  Heikki Junes  <hjunes@cc.hut.fi>
16165
16166         * Documentation/index.html.in: remove <hr>.
16167
16168         * THANKS: change 2.3 to 2.4.
16169
16170 2004-11-05  Jan Nieuwenhuizen  <jannneke@gnu.org>
16171
16172         * scm/output-gnome.scm: More fontconfig comment.
16173
16174 2004-11-05  Pedro Kroger  <kroeger@pedrokroeger.net>
16175
16176         * GNUmakefile.in ($(builddir)/share/lilypond-force): create the
16177         <package> directory in $(builddir)/share according with
16178         PACKAGE_NAME defined in the VERSION file.
16179
16180 2004-11-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16181
16182         * lily/beam.cc (rest_collision_callback): use local beam
16183         multiplicity.
16184
16185         * input/regression/stem-stemlet.ly: new file.
16186
16187         * lily/stem.cc (add_head): store rests as well.
16188
16189         * scm/define-grob-properties.scm (all-user-grob-properties): add
16190         stemlet-length
16191
16192         * lily/stem.cc: store rests as well.
16193         
16194         * input/regression/new-slur.ly: mention forcing.
16195
16196 2004-11-04  Werner Lemberg  <wl@gnu.org>
16197
16198         * Documentation/user/*: A new round of layout fixes and document
16199         structure cleanup.
16200
16201 2004-11-04  Heikki Junes <hjunes@cc.hut.fi>
16202
16203         * Documentation/user/lilypond.tely: changes 2.3.x to 2.5.x.
16204
16205 2004-11-04  Jan Nieuwenhuizen  <janneke@gnu.org>
16206
16207         * Documentation/topdocs/INSTALL.texi (Top): Remove geometry.
16208
16209 2004-11-03  Jan Nieuwenhuizen  <janneke@gnu.org>
16210
16211         * Documentation/topdocs/INSTALL.texi (Top): Fix geometry url (dax).
16212
16213         * lily/lily-parser.cc (LY_DEFINE): Remove "Now " from message.
16214
16215         * lily/main.cc (main): Invoke identify.
16216
16217         * scm/lily.scm (postscript->pdf): Remove progress newline.
16218         Write progress to stderr.
16219
16220         * lily/paper-book.cc (output): Remove progress newline.
16221
16222         * scm/framework-tex.scm (convert-to-dvi, convert-to-ps): Call
16223         gettext on user messages, and remove whitespace.
16224
16225         * lily/paper-outputter.cc (get_paper_outputter): Add progress newline.
16226
16227         * scripts/lilypond-latex.py (program_name): Bugfix: use only basename of
16228         argv[0] (Thomas Scharkowski).
16229
16230         * configure.in: Bugfix: add REQUIRED parameter to STEPMAKE_TEXMF
16231         call (carlyannehorse).  Also check for mf and mf-nowin.  Add check
16232         for ec-fonts-mtraced.
16233
16234         * GNUmakefile.in (builddir-exec): Add symlink tex/out.  Fixes
16235         --srcdir build (Bertalan).
16236
16237         * stepmake/aclocal.m4 (STEPMAKE_GUILE_DEVEL): Check for guile
16238         headers and library too (Laura Conrad).
16239
16240         * Documentation/topdocs/INSTALL.texi (Top): Mention development
16241         package for guile too (Laura Conrad).
16242
16243         * lily/main.cc (usage): Typo.
16244
16245 2004-11-02  Werner Lemberg  <wl@gnu.org>
16246
16247         * Documentation/user/notation.ly: More fixes to improve appearance.
16248
16249         * tex/texinfo.tex: Updated from texinfo CVS -- this version provides
16250         better output for multicolumn tables.
16251
16252 2004-11-01  Mats Bengtsson  <mabe@s3.kth.se>
16253
16254         * lily/main.cc (dir_info): Fixed typo in the printouts.
16255
16256 2004-11-01  Werner Lemberg  <wl@gnu.org>
16257
16258         * buildscripts/mf-to-table.py (write_fontlist): Improve formatting
16259         of output.
16260         Set `per_line' to 2; replace hard-coded value with it.
16261
16262         * Documentation/user/*: Many fixes to improve appearance of
16263         printed manual.
16264
16265 2004-11-01  Werner Lemberg  <wl@gnu.org>
16266
16267         * Documentation/user/changing-defaults.itely,
16268         Documentation/user/notation.ly,
16269         Documentation/user/programming-interface.itely: Use @/.
16270         Fix formatting of some lilypond snippets and tables.
16271
16272         * scripts/lilypond-book.py (compose_ly): Provide useful default
16273         for LINEWIDTH in `override'.
16274
16275 2004-10-31  Graham Percival  <gperlist@shaw.ca>
16276
16277         * Documentation/user/invoking.itely: change "3.0" -> "2.4"
16278
16279 2004-10-31  Werner Lemberg  <wl@gnu.org>
16280
16281         Resetting @exampleindent to `5' gives ugly results with texinfo's
16282         DVI output.  Use `@format @exampleindent 0 ... @end format' instead
16283         (if not quoting) to change @exampleindent only locally.
16284
16285         * scripts/lilypond-book.py (NOQUOTE): New variable.
16286         (output) [LATEX]: Remove AFTER and BEFORE.
16287         [TEXINFO]: Remove AFTER and BEFORE.
16288         Fix QUOTE and VERBATIM pattern.
16289         Add NOQUOTE pattern.
16290         (Lilypond_snippet) [output_info, output_latex]: Don't handle AFTER
16291         and BEFORE.
16292         [output_texinfo]: Use NOQUOTE.
16293
16294 2004-10-31  Graham Percival  <gperlist@shaw.ca>
16295
16296         * Documentation/user/changing-defaults.itely: clarify paper
16297         size commands with correct info.
16298
16299         * Documentation/user/lilypond-book.itely: add more docs for
16300         filename extensions.
16301
16302 2004-10-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16303
16304         * VERSION (PATCH_LEVEL): Branch lilypond_2_4, release 2.4.0
16305         (PATCH_LEVEL): start 2.5.0.
16306
16307 #Local variables:
16308 #coding: utf-8
16309 #End:
16310