]> git.donarmstrong.com Git - lilypond.git/blob - ChangeLog
* lily/pango-font.cc (text_stencil): allow 'tight' bounds.
[lilypond.git] / ChangeLog
1 2006-10-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
2
3         * lily/pango-font.cc (text_stencil): allow 'tight' bounds.
4         (pango_item_string_stencil): use logical rect horizontally (to
5         preserve spaces), ink_rect vertically (for time signatures).
6
7         * lily/font-metric.cc (word_stencil): new interface function
8
9         * input/regression/utf-8-mixed-text.ly: new file.
10
11         * lily/percent-repeat-engraver.cc (listen_percent): remove
12         spurious warning.
13
14         * lily/phrasing-slur-engraver.cc (acknowledge_script): only ack
15         non-dynamic scripts. Fixes #30.
16
17         * lily/slur.cc (outside_slur_callback): make offset_scm optional.
18
19         * lily/beam.cc (rest_collision_callback): make prev_offset optional.
20
21         * lily/grob-closure.cc (chain_offset_callback): don't pass 0 but
22         SCM_UNDEFINED for non-existent data.
23
24         * lily/side-position-interface.cc (general_side_position): allow
25         optional current_offset argument for chaining, so combinations of side-position
26         and outside slur callback don't add up.  Fixes issue #92.
27
28         * lily/pango-font.cc (pango_item_string_stencil): use
29         logical_rect. This prevents spaces after words from disappearing,
30         issue #72.
31         
32         * VERSION: release 2.9.20
33
34 2006-10-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
35
36         * scm/define-grob-properties.scm (all-user-grob-properties):
37         mention stencil as user settable.
38
39 2006-10-02  Joe Neeman  <joeneeman@gmail.com>
40
41         * Documentation/user/page.itely (Page formatting): 
42         document auto-first-page-number
43
44         * lily/page-breaking.cc (find_chunks_and_breaks): 
45         * lily/paper-score.cc (calc_breaking): Follow changes to the
46         Constrained_breaking interface
47
48         * lily/constrained-breaking.cc (calc_subproblem): run the main loop
49         here backwards, as an optimisation
50         (initialize): new function; move most of the code in resize () here
51         (combine_demerits): cache ragged_right_
52         (Constrained_breaking): constructor now takes the Paper_score
53
54 2006-10-02  Erik Sandberg  <mandolaerik@gmail.com>
55         
56         * lily/lexer.ll, lily/parser.yy: Add EXPECT_NO_MORE_ARGS token, to
57         avoid parser lookahead for 0-ary functions.
58
59         * lily/translator.cc: Extract event classes from
60         IMPLEMENT_TRANSLATOR_LISTENER for documentation generation.
61
62 2006-10-02  Heikki Junes  <hjunes@gmail.com>
63
64         * po/fi.po: Fix spaces, commas etc. in Finnish translation using
65         KBabel fix tool.
66
67 2006-10-01  Nicolas Sceaux  <nicolas.sceaux@free.fr>
68
69         * scm/layout-page-layout.scm (page-breaking-wrapper): new
70         function. Call the page breaking function selected in the
71         `page-breaking' \paper variable, then the post processing function
72         chosen using the `page-post-process' \paper variable.
73         (line-height): new function. Return the height of a system.
74         (line-minimum-position-on-page): new function. Return the position
75         of a system on page (using the previous line position), only
76         considering between system padding.
77         (stretchable-line?): new function. Says whether a line can be
78         stretched (ie. is not a title nor a single staff system).
79         (page-maximum-space-left): new function. Computes space left on a
80         page, when all systems are separated by their padding.
81
82         * lily/page-breaking.cc (breaking::make_pages): Move page post
83         processing function call to page breaking wrapper (common to all
84         page breakers).
85
86         * lily/paper-book.cc (book::pages): call the page breaking
87         wrapper, instead of the page breaker directly
88
89         * ly/paper-defaults.ly: Add \paper variables for page breaking
90         wrapper and page post processing function. Make
91         `write-page-layout' value depend on the 'dump-tweaks option. Add a
92         `system-maximum-stretch-procedure' variable for holding a function
93         computing the maximum stretch a system allows.
94
95         * scm/layout-page-dump.scm (write-page-breaks): computes the
96         stretch to apply to systems on a page to minimize left
97         space. Dump this stretch length.
98
99         * ly/music-functions-init.ly (spacingTweaks): implement it. Read
100         the system-stretch property of the tweak data to stretch the
101         system.
102         (includePageLayoutFile): Void function which includes the
103         generated page-layout file if it exists and if the page layout
104         dumping is not asked.
105         (scoreTweak): if the score tweak named by the argument exists,
106         return it.
107
108 2006-10-01  Joe Neeman  <joeneeman@gmail.com>
109
110         * lily/page-spacing.cc (compress_lines, uncompress_solution):
111         handle correctly the case where there are multiple \noPageBreaks
112         in a row.
113
114 2006-09-30  Laura Conrad <lconrad@laymusic.org>
115
116         * abc2ly.py adds segno (S) and Coda (O) to articulations.
117         
118         * abc2ly.py fix so that entering " -- " will translate to a -- in
119         the lilypond instead of a " - - "
120         
121 2006-09-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
122
123         * lily/align-interface.cc: fix typo
124
125         * lily/dynamic-text-spanner.cc (print): Add a special case for
126         trill spanner right sides. 
127
128         * scm/define-grobs.scm (all-grob-descriptions): set padding to 0.1
129
130         * lily/align-interface.cc (get_extents_aligned_translates): add
131         support for padding variable.
132
133         * lily/break-align-interface.cc (self_align_callback): oops: use
134         loop variable in guard.
135
136         * input/regression/repeat-percent-grace.ly: new file.
137
138         * lily/percent-repeat-engraver.cc (start_translation_timestep):
139         remember first currentCommandColumn of a grace run. Fixes issue 70.
140
141         * lily/percent-repeat-iterator.cc (class Percent_repeat_iterator):
142         move class definition to CC file.
143
144         * lily/multi-measure-rest.cc (percent): use robust_relative_extent()
145
146         * lily/slash-repeat-engraver.cc (listen_percent): don't warn for
147         measure-long  repeats.
148
149         * flower/include/international.hh: include stdarg.h
150
151 2006-09-30  Joe Neeman  <joeneeman@gmail.com>
152
153         * lily/page-turn-page-breaking.cc (calc_demerits): now that we allow
154         put_systems_on_pages to return an empty result, we need to assign
155         demerits properly in that case.
156         (put_systems_on_pages): Make the number of pages depend on the
157         evenness of page_number. Add auto-first-page-number.
158         (calc_subproblem): ensure that the page-number is even for the
159         left-hand page. Warn if the first page-turn doesn't fit onto the
160         first (right-hand) page.
161
162         * lily/page-spacing.cc (solve): bug: demerits_ would always be inf
163         (min_page_count): make this publicly accessible
164         (min_page_count): fix a bug when there are forced page breaks that
165         was introduced when I made this loop run backwards
166         (space_systems_on_n_pages, space_systems_on_n_or_one_more_pages):
167         replace space_systems_on_min_pages with these two. The logic in
168         space_systems_on_min_pages was getting too convoluted and is better
169         contained in page-turn-page-breaking.
170
171         * lily/page-turn-engraver.cc (breakable_column): remove an always-true
172         conditional
173         (breakable_column): typo
174
175         * lily/source-file.cc (get_line): fix off-by-one error
176         and clean up some of the logic
177
178 2006-09-29  Joe Neeman  <joeneeman@gmail.com>
179
180         * lily/page-breaking.cc (make_pages): honour the first-page-number
181         property
182
183 2006-09-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
184
185         * VERSION (PACKAGE_NAME): bump version.
186
187 2006-09-26  Pal Benko  <benko.pal@gmail.com>
188
189         * scm/parser-clef.scm: add petrucci-f3 and -f4 clefs
190         (the latter is the same as petrucci-f which is kept for compatibility)
191
192 2006-09-26  Erik Sandberg  <mandolaerik@gmail.com>
193         
194         * lily/part-combine-iterator.cc: solo1-event -> solo-one-event
195
196 2006-09-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
197
198         * lily/global-context.cc (run_iterator_on_me): break out of loop
199         if moment doesn't increase.
200
201         * scm/define-grob-properties.scm (all-user-grob-properties): add
202         forced property.
203
204         * lily/accidental.cc (after_line_breaking): read forced property.
205
206         * lily/accidental-engraver.cc (process_acknowledged): set 'forced
207         property.
208
209         * input/regression/accidental-forced-tie.ly:  new file.
210
211 2006-09-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
212
213         * ly/engraver-init.ly: set ignoreFiguredBassRest in Staff context.
214
215         * lily/figured-bass-engraver.cc: only listen to rest events if
216         ignoreFiguredBassRest is not set.
217
218         * scm/define-context-properties.scm
219         (all-user-translation-properties): add ignoreFiguredBassRest property
220
221 2006-09-24  Joe Neeman  <joeneeman@gmail.com>
222
223         * lily/paper-book.cc (get_system_specs):
224         (set_system_penalty): fix breakbefore.
225         We used to set a penalty on the system after the break, now we
226         set a permission on the system before the break
227
228         * lily/grob-property.cc: add scm debugging hooks into
229         property modification
230
231         * lily/context-property.cc:
232         * lily/engraver.cc:
233         rename make_foo_from_properties to internal_make_foo and
234         move it from context-property.cc to a member function of
235         Engraver.
236         
237         * lily/include/lily-guile-macros.hh:
238         overload ly_symbol2scm macro so that there is no more need
239         to use internal_foo
240
241         * lily/volta-repeat-iterator.cc:
242         * lily/tweak-engraver.cc:
243         * lily/tuplet-bracket.cc:
244         * lily/span-bar-engraver.cc:
245         * lily/script-engraver.cc:
246         * lily/prob-scheme.cc:
247         * lily/pointer-group-interface.cc:
248         * lily/parser.yy:
249         * lily/grob-scheme.cc:
250         * lily/grob-property.cc:
251         * lily/context.cc:
252         * lily/context-property.cc:
253         * lily/break-substitution.cc:
254         * lily/break-align-engraver.cc:
255         * lily/axis-group-interface.cc:
256         * lily/align-interface.cc:
257         remove calls to internal_FOO
258
259         * lily/system-start-delimiter-engraver.cc:
260         * lily/parenthesis-engraver.cc:
261         * lily/accidental-engraver.cc:
262         remove calls to make_foo_from_properties
263
264 2006-09-23  Graham Percival  <gpermus@gmail.com>
265
266         * Documentation/user/programming-iterfaces.itely: fix
267         def-music-function -> define-music... leftover.
268
269 2006-09-23  Joe Neeman  <joeneeman@gmail.com>
270
271         * lily/page-spacing.cc (min_page_count): by running the loop
272         backwards, we can calculate ragged_last properly.
273
274 2006-09-22  Mats Bengtsson  <mabe@drongo.s3.kth.se>
275
276         * ly/titling-init.ly (scoreTitleMarkup): Rename (typo!?)
277         printfirst-page-number -> print-first-page-number
278
279         * python/convertrules.py: corresponding rule.
280
281         * Documentation/user/page.itely (Page formatting): Document the
282         default values of all page layout parameters. 
283
284 2006-09-22  Erik Sandberg  <mandolaerik@gmail.com>
285
286         * lily/lexer.ll: remove limitation on music function arity. New
287         mode extratoken, which inserts extra EXPECT_* tokens after
288         MUSIC_FUNCTION token. Junk all MUSIC_FUNCTION_* tokens.
289
290         * lily/parser.yy: Change grammar for music function accordingly.
291
292         * lily/include/lily-parser.hh: New method get_state, new member
293         hidden_state. Works around a problem when parser fetches
294         MUSIC_FUNCTION token but not the following EXPECT_* token.
295
296         * lily/translator.cc, lily/context.cc:, lily/translator-group.cc:
297         remove try_music
298
299         * lily/*-engraver.cc, lily/*-performer.cc: Remove all remaining
300         references to Music; use ASSIGN_EVENT_ONCE everywhere
301
302         * lily/grob-info.cc: junk *music_cause
303
304         * lily/music.cc: copy eventified articulations to stream event
305
306         * lily/part-combine-iterator.cc: Cleanup using enums
307
308         * lily/translator-group.cc: Junk OldMusicEvent, and associated
309         methods
310
311         * lily/include/engraver.hh: Junk music.hh include
312
313         * lily/stream-event.cc: Changed constructors
314
315 2006-09-21  Graham Percival  <gpermus@gmail.com>
316
317         * Documentation/user/tweaks.itely (Fitting music onto fewer
318         pages): change settings to avoid warning messages.
319
320 2006-09-21  Mats Bengtsson  <mabe@drongo.s3.kth.se>
321
322         * Documentation/user/tweaks.itely (Fitting music onto fewer
323         pages): Add between-system-space setting. 
324
325 2006-09-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
326
327         * lily/accidental-placement.cc (calc_positioning_done): don't
328         trigger Y-extent calculation too early. Use pure_height instead.
329
330         * lily/scale.cc (LY_DEFINE): new file. 
331
332 2006-09-20  Joe Neeman  <joeneeman@gmail.com>
333
334         * lily/page-breaking.cc (find_chunks_and_breaks): ignore breaks
335         that happen at the start of a score: having a zero-length
336         chunk was messing up min_system_count calculations.
337
338         * lily/source-file.cc (get_line): lower_bound, not
339         binary_search. Fixes problem where point-and-click would
340         always point to the first line.
341
342 2006-09-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
343
344         * lily/accidental-placement.cc (calc_positioning_done): also put
345         stems into accidental support. 
346
347         * lily/tie-engraver.cc (process_music): also set tieMelismaBusy if
348         event_ detected.
349
350         * scm/script.scm (default-script-alist): avoid-slur and
351         slur-padding for portato script.
352
353         * lily/stem-tremolo.cc (translated_stencil): new function. 
354         (height): use new function. Fixes tremolos on whole notes.
355
356         * lily/slur-scoring.cc (get_best_curve): don't crash if no optimal
357         slur found.
358
359 2006-09-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
360
361         * scripts/abc2ly.py (try_parse_comment): idem.
362
363         * scripts/lilypond-book.py (find_toplevel_snippets): use 'foo' in
364         bar_string iso. string.find()
365
366         * lily/*.cc: idem.
367
368         * lily/slur.cc (get_curve): always use scm_is_pair() looping
369         scheme lists.  
370
371 2006-09-18  Graham Percival  <gpermus@gmail.com>
372
373         * Documentation/user/basic-notation.itely: add bug
374         warning about ties and octavation/clef.
375
376 2006-09-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
377
378         * VERSION (PACKAGE_NAME): release 2.9.18
379
380 2006-08-29  Milan Zamazal  <pdm@brailcom.org>
381
382         * elisp/lilypond-mode.el (LilyPond-command-alist): Don't try to
383         figure out midi file names right here.
384         
385 2006-09-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
386
387         * scm/framework-ps.scm (dump-stencil-as-EPS): naming pad-eps-boxes.
388
389         * scm/backend-library.scm: option naming:  gs-font-load*s*
390
391         * scm/framework-eps.scm (dump-stencils-as-EPSes): rename option to
392         include-eps-fonts
393
394 2006-09-17  Joe Neeman  <joeneeman@gmail.com>
395
396         * scm/define-music-types.scm (music-descriptions): remove
397         BreakEvent and fix {Page,Line}{Break,Turn}Event so
398         Music::to_event doesn't complain.
399
400         * lily/accidental-placement.cc (ape_compare):
401         * lily/semi-tie.cc (compare): 
402         * lily/note-column.cc (shift_compare): replace by XXX_less
403
404         * lily/tie-formatting-problem.cc (set_chord_outline): 
405         * lily/tie-column.cc (calc_positioning_done): 
406         * lily/system.cc (post_processing)
407         (get_paper_system): 
408         * lily/stem.cc (note_head_positions)
409         (calc_positioning_done): 
410         * lily/spanner.cc (do_break_processing)
411         (find_broken_piece): 
412         * lily/span-bar.cc (print): 
413         * lily/semi-tie-column.cc (calc_positioning_done): 
414         * lily/rest-collision.cc (calc_positioning_done): 
415         * lily/program-option.cc (get_help_string): 
416         * lily/note-collision.cc (get_clash_groups):
417         * lily/new-fingering-engraver.cc (position_scripts):
418         * lily/keyword.cc (Keyword_table):
419         * lily/hara-kiri-group-spanner.cc (request_suicide):
420         * lily/grob-pq-engraver.cc (stop_translation_timestep):
421         * lily/accidental-placement.cc (calc_positioning_done):
422         (stagger_apes):
423         * lily/beam.cc (get_beam_segments):
424         * lily/grob-array.cc (remove_duplicates):
425         use new vector_sort
426         
427         * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily:
428         ragged-last-bottom = ##f (test the new page breaker)
429
430         * flower/include/std-vector.hh (vector_sort): use STL sort stuff
431
432         * scm/define-context-properties.scm
433         (all-internal-translation-properties): remove properties that
434         were used to communicate page-turn stuff to the paper-column
435         engraver.
436
437         * lily/lily-guile.cc (robust_scm2string): new function
438
439         * lily/paper-column-engraver.cc: Clean up page turn stuff
440
441         * lily/page-turn-engraver.cc: Re-write the page turn logic here
442         instead of cluttering up paper-column-engraver.cc
443
444 2006-09-17  Nicolas Sceaux  <nicolas.sceaux@free.fr>
445
446         * scm/layout-page-dump.scm (scm): export utility function names,
447         to allow user writing cutsom dumping functions.
448
449         * scm/layout-page-layout.scm: export utility function names to
450         enable custom page breaking function writing. Tabify.
451         (line-next-space): use ?-suffix only for predicates
452         (page-maximum-space-to-fill): new function. Return the space
453         between first and bottom system of a page, to give to
454         space-systems.
455         (space-systems): use a space-to-fill argument (for instance as
456         computed by page-maximum-space-to-fill) instead of computing
457         internaly this space with the page height. That way, the caller
458         can adjust the space to use.
459         (make-page-from-systems, walk-paths): compute space to fill before
460         calling space-systems.
461
462 2006-09-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
463
464         * scm/script.scm (default-script-alist): set paddings for every
465         type here, increase for portato mark.
466
467         * scm/lily.scm (define-scheme-options): typo: add s, so it is 
468         -dinclude-eps-fonts
469
470 2006-09-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
471
472         * scm/define-grobs.scm (all-grob-descriptions): oops, typo:
473         use spanner::set-spacing-rods
474
475         * lily/note-column.cc: reformat.
476
477         * lily/rest-collision.cc (calc_positioning_done): fix whole/half
478         step positioning for note/rest combinations.
479
480         * input/regression/rest-note-collision.ly: new file.
481
482         * scm/define-grobs.scm (all-grob-descriptions): add
483         springs-and-rods
484
485         * flower/include/std-vector.hh: switch off again.
486
487         * VERSION (PATCH_LEVEL): bump to 2.9.18
488
489         * flower/include/std-string.hh: idem.
490
491         * flower/include/std-vector.hh (_GLIBCXX_DEBUG): set if NDEBUG not set.
492
493 2006-09-15  Mats Bengtsson  <mabe@drongo.s3.kth.se>
494
495         * ly/engraver-init.ly: Make FiguredBass accepted in GrandStaff and
496         PianoStaff. 
497
498 2006-09-08  Joe Neeman  <joeneeman@gmail.com>
499
500         * Documentation/user/page.itely: update page breaking documentation
501
502 2006-09-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
503
504         * lily/note-collision.cc (calc_positioning_done): only access
505         first head if available.
506
507         * lily/tuplet-engraver.cc: add tupletFullLengthNote to description.
508
509         * scm/framework-ps.scm (output-preview-framework): use new name.
510
511         * lily/program-option.cc (internal_set_option): use new names.
512
513         * Documentation/user/SConscript (lilypond_book_flags): update -d
514         variable names.
515
516         * Documentation/user/lilypond-book.itely (Inserting LilyPond
517         output into other programs): new variable names.
518
519         * scm/lily.scm (define-scheme-options): uniformize var names.
520
521         * lily/tuplet-engraver.cc (listen_tuplet_span): verify that
522         tuplets_ is non-empty before popping.
523
524 2006-09-07  Joe Neeman  <joeneeman@gmail.com>
525
526         * lily/spanner.cc (find_broken_piece): 
527         * lily/spacing-spanner.cc (get_columns): 
528         * lily/source-file.cc (get_line): 
529         * lily/simple-spacer.cc (get_column_description): 
530         * lily/keyword.cc (lookup): 
531         use the new binary search.
532
533         * flower/include/std-vector.hh: replace binary_search with
534         a more STL-like version
535
536 2006-09-04  Michael Welsh Duggan  <md5i@cs.cmu.edu>
537
538         * lily/tie-performer.cc: remove unused last_event_ property.
539         (class Tie_performer): add now_tied_heads_ property for
540         partially-tied heads.
541         (acknowledge_audio_element): when adding an Audio_note, put the
542         note in now_tied_heads_ if the audio note is partially tied.
543         (stop_translation_timestep): always include entries in
544         now_tied_heads_ in heads_to_tie_.
545
546         * lily/drum-note-performer.cc (process_music): look for tie-events
547         in the articulations; pass to Audio_note constructor.
548
549         * lily/note-performer.cc (process_music): look for tie-events in
550         the articulations; pass to Audio_note constructor.
551
552         * lily/audio-item.cc (Audio_note): Initialize tie_event_ in
553         constructor.
554
555         * lily/include/audio-item.hh (class Audio_note): add tie_event_.
556         include initializer in constructor.
557
558 2006-09-02  Joe Neeman  <joeneeman@gmail.com>
559
560         * lily/simple-spacer.cc (get_line_forces): Ignore loose columns
561         unless they are breakable. This fixes discrepancies between the forces
562         calculated here and the forces calculated in get_line_configuration.
563
564         * lily/grob.cc (pure_relative_y_coordinate): fix some
565         mis-estimation that was happening with piano staves.
566
567         * lily/constrained-breaking.cc (resize): don't choke if we get a
568         measure that won't fit on a line.
569         (combine_demerits): don't consider uniformity when ragged
570
571         * lily/page-spacing.cc (solve): why the f* were there two of these?
572         (calc_subproblem): properly handle the case where a system is taller
573         than the page.
574
575         * lily/system.cc (get_paper_system): ensure that all the permissions
576         and penalties are passed to the paper systems.
577
578         * lily/page-breaking.cc (create_system_list): support system-count.
579
580         * scm/define-grobs.scm (pure-print-callbacks): add
581         ly:script-interface::print
582
583         * lily/page-spacing.cc (min_page_count): fix calculation of min
584         pages if we are ragged and there are non-zero springs.
585
586         * scm/layout-page-layout.scm: if the pure-height estimates are under
587         the real height, allow space-systems to ignore padding if it is
588         needed in order to fit the systems on one page
589
590         * lily/optimal-page-breaking.cc (try_page_spacing): fix reading
591         ragged properties
592         (solve): fix performance problem. Make sure we always get at least
593         one solution
594
595         * lily/page-breaking.cc (make_pages): include write-page-breaks
596         and page-stencil
597
598         * lily/paper-score.cc (calc_breaking): remove Gourlay breaker
599
600         * scm/define-grobs.scm: add the new slur-callback
601         fix pure-relevant to not exclude grobs whose extent is already
602         calculated
603
604         * ly/paper-defaults.ly: make ly:optimal-breaking the new default
605         page breaker
606
607         * lily/slur.cc (pure_height): new callback to estimate the height
608         of a slur
609
610 2006-09-02  Graham Percival  <gpermus@gmail.com>
611
612         * Documentation/user/invoking.itely: small update on
613         MacOS X notes; thanks Trevor!
614
615 2006-09-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
616
617         * VERSION (MY_PATCH_LEVEL): release 2.9.17
618
619         * lily/lexer.ll: accept EOF in all states.
620
621         * lily/tempo-performer.cc (Tempo_performer): initialize last_tempo_.
622
623         * lily/source-file.cc (Source_file): always 0-terminate character
624         array, to prevent Flex from barfing.
625
626         * lily/global-context.cc (get_output): robustness: don't crash if
627         no Score context found.
628
629         * lily/include/book.hh (class Book): idem.
630
631         * lily/include/context-def.hh (struct Context_def): idem.
632
633         * lily/include/score.hh (class Score): don't derive from Input.
634
635         * lily/book.cc (Book): add a copy ctor. 
636
637         * buildscripts/output-distance.py (FileLink.calc_distance): count
638         orphans in distance too.
639
640         * python/midi.c (midi_parse_track): robustness: don't read past
641         end of string.
642
643         * ly/performer-init.ly: add Control_track_performer, move
644         Tempo_performer and Time_signature_performer to Score.        
645
646         * lily/score-performer.cc (acknowledge_audio_elements): override
647         from base class: add to audio-columns
648
649         * lily/control-track-performer.cc (add_text): new file: generate
650         the control track.
651
652         * lily/performance.cc: move output_header_track to
653         Control_track_performer ()
654
655         * lily/midi-walker.cc (Midi_walker): get channel in constructor.
656
657         * lily/include/midi-item.hh (class Midi_channel_item): insert
658         class into hierarchy, for items that can have a channel setting. Dehungarify.
659
660         * lily/include/performer.hh (class Performer): remove
661         play_element();  move functionality into announce/acknowledge.
662
663         * lily/audio-staff.cc (output): remove channel_ from Midi_track.
664
665         * lily/tie-engraver.cc (stop_translation_timestep): only wipe
666         heads_to_tie_ if there are new heads to tie.  Fixes polyphony in ties.
667
668 2006-08-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
669
670         * lily/tie-engraver.cc (stop_translation_timestep): robustness for
671         ambituses.
672
673         * lily/all-font-metrics.cc: remove TFM support.
674
675         * lily/include/tfm.hh: remove TFM support, TFM reader.
676
677         * lily/include/binary-source-file.hh: remove Binary_source_file.
678
679 2006-08-27  Graham Percival  <gpermus@gmail.com>
680
681         * Documentation/topdocs/NEWS.itely: add @c marker for
682         stuff I've processed.
683
684         * Documentation/user/ various: info from NEWS.
685
686 2006-08-27  Joe Neeman  <joeneeman@gmail.com>
687
688         * lily/paper-column-engraver.cc (finalize): Oops, this change
689         should have gone in on 2006-08-23
690
691 2006-08-26  Mats Bengtsson  <mabe@s3.kth.se>
692
693         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use double
694         quotes to quote arguments. Fixes Windows problem.
695
696         * python/lilylib.py (progress): idem
697
698 2006-08-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
699
700         * scripts/musicxml2ly.py: fix for importing
701         minor key signatures from MusicXML.  (Phillip Kirlin)
702
703 2006-08-24  Phillip Kirlin  <pkirlin@acm.org>
704
705         * python/musicxml.py: 
706         (Attributes.get_key_signature): now correctly retrieves mode from 
707         MusicXML. 
708
709 2006-08-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
710
711         * lily/parser.yy (output_def_body): take ownership of identifier
712         back to C++.
713
714         * Documentation/user/advanced-notation.itely (Metronome marks):
715         update use of \tempo in \midi.
716
717         * VERSION: release 2.9.16
718         
719 2006-08-24  Erik Sandberg  <mandolaerik@gmail.com>
720
721         * input/mutopia/*: upgrade to new midi tempo syntax (repairs make
722         web partially)
723
724 2006-08-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
725
726         * input/regression/tie-chord-partial.ly: clarify example.
727
728         * scm/define-music-properties.scm (all-music-properties): remove
729         untied.
730
731         * ly/music-functions-init.ly: remove \untied.
732
733         * lily/tie-engraver.cc (struct Head_event_tuple): store both
734         stream events and music events.
735         (stop_translation_timestep): search acknowledged heads for
736         tie-event.
737
738         * input/regression/tie-chord-partial.ly: new file.
739
740         * scm/define-markup-commands.scm (char): use ly:wide-char->utf-8
741         for \char markup command.
742
743         * scm/define-event-classes.scm (unlistened-music-event-classes): idem.
744
745         * scm/define-music-types.scm (music-descriptions): consistency:
746         Use solo-{one,two}-event iso. solo-[12]-event.
747
748         * lily/part-combine-engraver.cc (process_music):
749         Use solo-{one,two}-event iso. solo-[12]-event.
750
751         * ly/declarations-init.ly (partCombineListener): add Timing as
752         alias
753
754         * flower/std-string.cc (string_copy): use copy ()
755
756         * lily/source-file.cc (Source_file): use copy(). Remove contents_str0()
757
758 2006-08-24  Graham Percival  <gpermus@gmail.com>
759
760         * Documentation/user/changing-defaults.itely, global.itely,
761         lilypond-book.itely, page.itely: minor changes from mailist.
762
763 2006-08-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
764
765         * buildscripts/mutopia-index.py (allfiles): filter lily-XXX and
766         snippet-map
767
768         * scm/define-context-properties.scm
769         (translator-property-description): robustness: detect type errors
770         in property definitions.
771
772         * lily/parser.yy (score_body): protect SCORE_IDENTIFIER result
773         after getting it from SCM. 
774
775         * lily/smobs.cc (protect_smob): switch off fancy smob protection
776         for now. 
777
778         * lily/include/performer.hh (class Performer): strip get_tempo()
779         method.
780
781         * lily/midi-def.cc: strip file.
782
783         * lily/lexer.ll (Lily_lexer): don't protect hash key separately.
784
785         * lily/include/context-def.hh (struct Context_def): use
786         VIRTUAL_COPY_CONSTRUCTOR().
787
788         * lily/source-file.cc: smobification.
789
790         * lily/include/source-file.hh (class Source_file): smobify
791         Source_file. Trim redundant members.
792
793         * lily/parser.yy (Lily_lexer::try_special_identifiers): unprotect
794         clones after creation. This plugs a huge memory leak.
795
796         * python/convertrules.py (FatalConversionError.sub_tempo):
797         complete rule for \midi{ \tempo }
798
799         * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): idem.
800
801         * input/mutopia/F.Schubert/morgenlied.ly (pianoLH): update tempo.
802
803 2006-08-23  Joe Neeman  <joeneeman@gmail.com>
804
805         * input/regression/optimal-page-breaking-hstretch.ly: test for
806         ragged-last-bottom also
807
808         * lily/paper-column-engraver.cc (finalize): make the end of a score
809         breakable by default. This is to balance out a change in behaviour
810         of the page-turn-breaker which no longer makes the end of a score
811         breakable.
812
813         * lily/paper-book.cc (pages): set the systems_ once the pages are
814         broken
815
816         * lily/page-turn-page-breaking.cc (calc_subproblem): use the new
817         Page_breaking interface.
818
819         * lily/page-breaking.cc (class Page_breaking): make the interface
820         more consistent and provide abstractions for dealing with
821         Line_divisions.
822
823         * lily/optimal-page-breaking.cc (solve): use a more straightforward
824         algorithm. Use the new interface to Page_breaking.
825
826         * lily/page-spacing.cc: better support for ragged-bottom and
827         ragged-last-bottom
828
829 2006-08-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
830
831         * python/convertrules.py (conv): warning on \tempo{}
832
833         * ly/performer-init.ly: set tempoWholesPerMinute.
834
835         * ly/midi-init.ly: remove \midi
836
837         * lily/tempo-performer.cc: look at tempoWholesPerMinute to set
838         MIDI tempo.
839
840         * lily/metronome-engraver.cc (process_music): use tempoUnitCount
841         tempoUnitDuration for determining what to print.
842
843         * lily/lyric-extender.cc: typo.
844
845         * lily/parser.yy (output_def_body): disallow \tempo in \midi{}
846
847         * lily/duration-scheme.cc (LY_DEFINE): ly:duration-length: new
848         function.
849
850         * scm/lily.scm (define-scheme-options): alphabetize, add eps-pad-boxes.
851
852         * scm/framework-ps.scm (dump-stencil-as-EPS): only pad boxes if
853         eps-pad-boxes is set.
854
855         * scripts/lilypond-book.py (main): use -deps-pad-boxes.
856
857         * THANKS: update sponsors.
858
859         * ly/english.ly: quarter tone naming (thanks, Trevor Baca)
860
861         * Documentation/topdocs/NEWS.tely (Top): doc new feature.
862
863         * input/regression/tie-chord-untied.ly: new file.
864
865         * lily/tie-engraver.cc (acknowledge_note_head): check 'untied property.
866
867         * scm/define-music-properties.scm (all-music-properties): add
868         'untied property.
869
870         * buildscripts/mutopia-index.py (allfiles): look for .ly rather
871         than .ly.txt.
872         (headertext_nopics): sanitize no-examples text.
873
874         * scm/page.scm (make-page-stencil): don't rely on extents of
875         page-stencil. This fixes spurious space around .EPS files produced
876         with the EPS backend.
877
878 2006-08-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
879
880         * lily/stencil-scheme.cc (LY_DEFINE): make extent arguments optional.
881
882         * lily/hara-kiri-engraver.cc (process_music): remember
883         keepAliveInterfaces after processing \set
884
885         * lily/lyric-extender.cc (print): support left/right-padding for
886         extenders.
887
888         * scm/documentation-generate.scm (string-append): revert lilypond/
889         path, doc why.
890
891 2006-08-20  Graham Percival  <gpermus@gmail.com>
892
893         * Documentation/user/lilypond.tely: clarification to
894         license presentation (not to actual license).
895
896         * Documentation/user/basic-notation.itely,
897         instrument-notation.itely: minor changes.
898
899         * input/ {regression, test}/+.ly: clarification to
900         text (you can click on examples).  Thanks, Mats!
901
902         * input/manual/bar-lines.ly: adds ||: repeats.
903
904 2006-08-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
905
906         * make/ly-vars.make (OMF_FILES): strip ps.gz from OMF_FILES 
907
908         * scm/documentation-lib.scm (texi-file-head): category LilyPond.
909
910         * Documentation/user/lilypond.tely: strip lilypond/ from info
911         links, rename to category LilyPond
912
913         * lily/pango-font.cc (description_string): new function.
914
915         * VERSION: release 2.9.15
916
917         * lily/spacing-engraver.cc (stop_translation_timestep): use
918         Dscho's fix for spacing spanner. 
919
920         * scm/define-music-types.scm (music-descriptions): use
921         apply-output-event for ApplyOutputEvent
922
923         * lily/output-property-engraver.cc (listen_apply_output): rename
924         from listen_layout_instruction.
925
926         * lily/piano-pedal-engraver.cc (struct Pedal_type_info): new
927         function protect()
928
929 2006-08-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
930
931         * scm/lily.scm (lilypond-all): option read-file-list: substitute
932         commandline args with contains, split by \n.
933
934         * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
935         write snippet-names file, call with -dread-file-list. Fixes
936         command limitations on 64-bit systems.
937
938         * input/regression/stencil-color-rotation.ly: new file.
939
940         * lily/include/translator.hh (struct Acknowledge_information):
941         revert: don't use Protected_scm in global objects, as GUILE can't
942         handle gc_unprotect from automated destructors on MacOS X.
943  
944         * lily/grob.cc (get_print_stencil): use retval.expr() as base for
945         color, not the original stencil. Fixes combinations of
946         color/transparency/rotation. 
947
948         * scripts/lilypond-book.py (main): add --formats=eps for
949         texinfo/latex.
950
951         * lily/spacing-engraver.cc (stop_translation_timestep): don't
952         crash if spacing_ is nonexistent.
953
954 2006-08-14  Mats Bengtsson  <mabe@s3.kth.se>
955
956         * scripts/lilypond-book.py (output): Remove obsolete(!?)
957         \catcode`\@=12 in the LaTeX output.
958
959 2006-08-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
960
961         * scm/define-music-types.scm (music-descriptions):
962         use sustain-event iso. sustain-pedal-event.
963
964 2006-08-11  Joe Neeman  <joeneeman@gmail.com>
965
966         * scripts/convert-ly.py: honour the -n command-line switch
967
968 2006-08-10  Han-Wen Nienhuys  <hanwen@lilypond.org>
969
970         * scm/output-lib.scm (bar-line::calc-glyph-name): add dashed liine
971         break specification.
972
973 2006-08-10  Joe Neeman  <joeneeman@gmail.com>
974
975         * Documentation/user: convert-ly the user manual
976
977 2006-08-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
978
979         * stepmake/aclocal.m4: version check patch (thanks MWD)
980
981         * ly/music-functions-init.ly: robustness. Don't crash if
982         currentBarNumber is not a number.
983
984         * VERSION (PATCH_LEVEL): bump.
985
986 2006-08-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
987
988         * stepmake/aclocal.m4: better version check; handle fooX.Y
989         binaries too.
990
991         * ly/performer-init.ly: instrument name fixup.
992
993         * input/manual/chord-names-jazz.ly (banterProperties):
994         instrumentName update
995
996         * scm/define-event-classes.scm (lambda): use ly:is-listened-event-class
997
998         * lily/ly-module.cc (ly_module_symbols): use ly_hash_table_keys
999
1000         * lily/translator.cc (LY_DEFINE): ly:is-listened-event-class: new
1001         function. Use hash tables to check membership.
1002
1003         * lily/general-scheme.cc (LY_DEFINE): new function.
1004
1005         * lily/piano-pedal-engraver.cc (struct Pedal_type_info): idem
1006
1007         * lily/include/translator.hh (struct Acknowledge_information): add
1008         Protected_scm
1009
1010         * ly/music-functions-init.ly: change name to BreathingEvent
1011
1012         * input/regression/*.ly: apply it.
1013
1014         * python/convertrules.py (conv): better instrumentName conversion
1015         rule.
1016
1017         * scm/define-music-types.scm (music-descriptions): add
1018         line-break-event to LineBreakEvent music
1019
1020         * lily/music.cc (to_event): don't crash if music type not set.
1021
1022         * lily/spacing-loose-columns.cc (set_loose_columns): don't barf if
1023         spacing not set.
1024
1025         * lily/spacing-engraver.cc (stop_translation_timestep): set
1026         spacing for proportional notation too.
1027
1028         * scm/translation-functions.scm (format-bass-figure): inspect
1029         stream-event.
1030
1031         * scripts/lilypond-book.py (bindir): add bindir to $PATH.
1032
1033 2006-08-08  Joe Neeman  <joeneeman@gmail.com>
1034
1035         * lily/include/constrained-breaking.hh: add Line_details (Prob*)
1036
1037         * scm/page.scm (make-page): make it friendlier to call (esp. from C++)
1038
1039         * scm/layout-page-layout.scm (make-page-from-systems): new function
1040         (optimal-page-breaks): use the new page-breaking calling convention
1041
1042         * scm/define-context-properties.scm (all-user-translation-properties):
1043         add revokePageTurns
1044
1045         * lily/paper-column-engraver.cc (stop_translation_timestep): add
1046         revokePageTurns  functionality. If there is a special barline within
1047         the breakable region, break there instead of at the end of the region.
1048
1049         * lily/paper-book.cc (pages): use the new page-breaking calling
1050         convention
1051
1052 2006-08-07  Erik Sandberg  <mandolaerik@gmail.com>
1053
1054         * lily/lexer.ll, lily/source-file.cc: Add \sourcefileline command
1055
1056         * scripts/lilypond-book.py: insert \sourcefileline command in
1057         output, so lilypond error messages refer to the spot in the
1058         original .lytex / .itely sourcefile.
1059
1060 2006-08-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
1061
1062         * lily/spacing-loose-columns.cc (set_loose_columns): oops: use
1063         space to next column for distance to fixed col.
1064
1065         * VERSION (PACKAGE_NAME): release 2.9.14
1066
1067         * lily/pitched-trill-engraver.cc (make_trill): do set_parent also
1068         if no accidental.
1069
1070         * lily/accidental-engraver.cc (process_acknowledged): don't create
1071         accidental for trill span event. This fixes spurious accidentals
1072         on trills.
1073
1074 2006-08-04  Mats Bengtsson  <mabe@s3.kth.se>
1075
1076         * scm/define-grob-properties.scm (all-user-grob-properties):
1077         Clarify documentation of side-axis and direction. Thanks to Paul
1078         for the inspiration.
1079
1080         * lily/bar-line.cc: Add documentation for "||:" also in the
1081         interface documentation.
1082
1083 2006-08-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
1084
1085         * lily/spacing-loose-columns.cc (set_loose_columns): bugfix.
1086
1087         * lily/paper-column.cc (set_system): new function.
1088
1089         * lily/spacing-engraver.cc (stop_translation_timestep): store
1090         SpacingSpanner refs in Paper_column.
1091
1092         * lily/spacing-loose-columns.cc (set_loose_columns): rewrite
1093         compute loose clique spacing using GraceSpacing/SpacingSpanner.
1094
1095 2006-08-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
1096
1097         * lily/beam-engraver.cc (listen_beam): add method for
1098         Grace_beam_engraver too.
1099
1100 2006-08-03  Mats Bengtsson  <mabe@s3.kth.se>
1101
1102         * python/convertrules.py: Fix indentation bug that broke
1103         conversion of files older than 1.3.117.
1104         Fix escape error in the description for 2.9.6.
1105
1106 2006-08-02  Erik Sandberg  <mandolaerik@gmail.com>
1107
1108         * lily/*-engraver.cc: convert all try_music functions to listen_*
1109         functions.
1110
1111         * lily/piano-pedal-engraver.cc: some additional cleanups: use
1112         enums to represent pedal types, and calculate more data statically.
1113
1114         * scm/part-combiner.scm (recording-group-emulate): create a
1115         softcoded substitute for recording-group-engraver.cc.
1116
1117         * lily/music.cc: make a common transpose function for events and
1118         music
1119
1120         * ly/declarations-init.ly: change melisma/melismaEnd. Eliminates
1121         ManualMelismaEvent, and obsoletes Melisma_translator.
1122
1123 2006-08-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
1124
1125         * input/test/instrument-name-align.ly: update version.
1126
1127 2006-08-02  Mats Bengtsson  <mabe@s3.kth.se>
1128
1129         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
1130         Doc the --pdf flag to lilypond-book.
1131
1132 2006-07-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
1133
1134         * Documentation/topdocs/NEWS.tely (Top): add description.
1135
1136         * input/regression/tuplet-full-length-note.ly: add file.
1137
1138         * lily/instrument-name-engraver.cc (acknowledge_axis_group):
1139         always store axis group.
1140
1141 2006-07-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
1142
1143         * input/regression/instrument-switch.ly: new file.
1144
1145         * lily/instrument-switch-engraver.cc (process_music): new file.
1146
1147         * ly/engraver-init.ly: add Instrument_switch_engraver
1148
1149         * ly/music-functions-init.ly: \instrumentSwitch
1150
1151         * scm/define-context-properties.scm
1152         (all-user-translation-properties): add instrumentCueName
1153
1154         * scm/define-grobs.scm (all-grob-descriptions): add InstrumentSwitch
1155
1156 2006-07-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
1157
1158         * ly/music-functions-init.ly: music function \transposition.
1159
1160         * lily/parser.yy (command_element): softcode \transposition.
1161
1162         * lily/fall-engraver.cc (process_music): delta-pitch -> delta-step.
1163         (process_music): oops.
1164
1165         * lily/instrument-name-engraver.cc (start_spanner): new
1166         function. Create spanner when property changes.
1167         (stop_spanner): new function.
1168
1169         * python/convertrules.py (conv): add rule.
1170
1171         * lily/instrument-name-engraver.cc: shortVocalName iso. vocNam,
1172         shortInstrumentName iso. instr.
1173
1174         * scm/output-ps.scm (dashed-line): add phase argument to
1175         dashed-line.
1176
1177         * lily/bar-line.cc (dashed_bar_line): new function.
1178         (compound_barline): support \bar "dashed". 
1179
1180         * lily/lily-parser-scheme.cc (LY_DEFINE): only write
1181         --output=DIR to DIR/BASE if it is a dir. 
1182
1183         * flower/file-name.cc (file_part): new function
1184         (dir_part): new function
1185
1186         * lily/lily-parser-scheme.cc (LY_DEFINE): 
1187
1188         * DEDICATION: update
1189
1190 2006-07-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
1191
1192         * lily/instrument-name-engraver.cc: formatting.
1193
1194         * python/convertrules.py (conv): bugfix for \epsfile.
1195
1196 2006-07-25  Joe Neeman  <joeneeman@gmail.com>
1197
1198         * lily/grob.cc:
1199         
1200         * lily/gourlay-breaking.cc: Oops, these should have been included
1201         in my last commit
1202
1203 2006-07-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
1204
1205         * scripts/*.py (program_name): cleanup relocation snippets.
1206
1207         * scripts/convert-ly.py (datadir): remove LILYPONDPREFIX support.
1208
1209 2006-07-24  Joe Neeman  <joeneeman@gmail.com>
1210
1211         * scm/define-grobs.scm (all-grob-descriptions): make NonMusicalPaperColumn
1212         page-breakable by default
1213
1214         * scm/layout-page-layout.scm (space-systems): fix bug where the force isn't
1215         correctly calculated for a single-system page
1216
1217         * scm/lily-library.scm (interval-sane?): also check that the first number is no
1218         bigger than the second number
1219
1220         * lily/simple-spacer.cc (solve): allow compression even when ragged (but we
1221         acknowledge that we aren't satisfying constraints)
1222
1223         * lily/hara-kiri-group-spanner.cc (request_suicide): give equal treatment to
1224         non-Items
1225
1226         * lily/grob.cc (pure_height): add minimum-Y-extent
1227
1228         * lily/gourlay-breaking.cc (solve): don't ignore a compression force, even if we're
1229         ragged
1230
1231         * lily/constrained-breaking.cc: convert code to use new Matrix class
1232         (get_best_solution): new function
1233
1234         * scm/page.scm (make-page-stencil): don't crash if we annotate-layout when there
1235         is a page with no systems
1236
1237 2006-07-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
1238
1239         * VERSION (PACKAGE_NAME): release 2.9.13
1240
1241         * scm/define-grobs.scm (all-grob-descriptions): remove stray
1242         assignment.
1243
1244 2006-07-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
1245
1246         * Documentation/topdocs/NEWS.tely (Top): doc new features.
1247
1248         * scm/output-lib.scm (grace-spacing::calc-shortest-duration): new
1249         function.
1250
1251         * scm/define-grob-properties.scm (all-user-grob-properties):
1252         remove grace-space-factor.
1253
1254         * scm/define-grob-interfaces.scm (grace-spacing-interface): add
1255         grace-spacing-interface
1256         (spacing-options-interface): add.
1257
1258         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add Grace_spacing_engraver
1259
1260         * lily/spacing-options.cc (get_duration_space): move function from spacing-basic.cc
1261
1262         * lily/spacing-basic.cc (note_spacing): do init_from_grob on
1263         GraceSpacing object.
1264
1265         * lily/note-spacing.cc: fix prop list formatting
1266
1267         * lily/beaming-pattern.cc (de_grace): new function. Sensible
1268         beaming for grace notes too.
1269
1270         * input/regression/spacing-grace.ly: update.
1271
1272         * lily/grace-spacing-engraver.cc: new file.
1273
1274         * lily/spacing-spanner.cc: add strict-grace-spacing.
1275
1276 2006-07-20  Graham Percival  <gpermus@gmail.com>
1277
1278         * lily/parser.yy: compile fix.
1279
1280 2006-07-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
1281
1282         * scm/define-grobs.scm (all-grob-descriptions): typo.
1283
1284         * scm/framework-eps.scm (dump-stencils-as-EPSes): just strip
1285         .eps extension from includegraphics.
1286
1287         * scripts/lilypond-book.py (main): add support for --pdf. 
1288
1289         * lily/spacing-spanner.cc (calc_common_shortest_duration): use
1290         callback to compute common shortest duration.
1291         (set_springs): typo.
1292
1293         * scm/define-grob-properties.scm (all-user-grob-properties): add
1294         strict-grace-spacing.
1295
1296         * lily/spacing-determine-loose-columns.cc (is_loose_column):
1297         support float_grace_columns_.
1298
1299         * lily/spacing-options.cc (init_from_grob): new file.
1300
1301         * Documentation/topdocs/NEWS.tely (Top): doc tupletFullLengthNote.
1302
1303         * input/regression/spacing-loose-grace.ly: new file.
1304
1305         * Documentation/topdocs/NEWS.tely (Top): document new feature.
1306
1307         * lily/tuplet-engraver.cc (struct Tuplet_description): read
1308         tupletFullLengthNote too. Choose right bound depending on value.
1309
1310         * input/regression/tuplet-full-length-note.ly: new file.
1311
1312 2006-07-19  Erik Sandberg  <mandolaerik@gmail.com>
1313
1314         * lily/*-performer.cc: Converted try_music to listen_*
1315
1316         * lily/grob-info.cc, lily/engraver.cc: represent the cause of grob
1317         as a stream-event internally. Introduce event_cause (), deprecate
1318         music_cause ().
1319
1320         * scm/define-music-types.scm: Removed BusyPlayingEvent
1321         
1322 2006-07-19  Mats Bengtsson  <mabe@s3.kth.se>
1323
1324         * Documentation/user/advanced-notation.itely (Font selection):
1325         Document how to get a list of available fonts using 'lilypond
1326         -dshow-available-fonts blabla'.
1327
1328 2006-07-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
1329
1330         * GNUmakefile.in: filter lily-XXX.pdf files.
1331
1332         * scm/define-grob-interfaces.scm (bend-after-interface): add thickness.
1333
1334         * scm/define-grob-properties.scm (all-internal-grob-properties):
1335         remove delta-pitch. Use delta-position everywhere.
1336
1337         * scm/output-lib.scm (fall::print): use new order.
1338
1339         * scm/output-ps.scm (path): reorder arguments.
1340
1341         * scm/output-svg.scm (path): support for path primitive.
1342
1343         * input/regression/bend-after.ly: new file.
1344
1345         * Documentation/user/GNUmakefile ($(outdir)/%.pdf): foolproof
1346         recipe for eps -> pdf conversion.
1347
1348 2006-07-19  Erik Sandberg  <mandolaerik@gmail.com>
1349
1350         * lily/parser.yy, lily/lexer.ll: added some simplifications by
1351         Angelo Contardi.
1352
1353 2006-07-19  Graham Percival  <gpermus@gmail.com>
1354
1355         * input/manual/screech-boink.ly: moved to here.
1356
1357         * input/screech-boink.ly: deleted.
1358
1359         * scm/define-grob-properties.scm: clarify doc string.
1360
1361 2006-07-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
1362
1363         * Documentation/topdocs/NEWS.tely (Top): doc new feature.
1364
1365         * scm/output-ps.scm (path): define path.
1366
1367         * scm/define-stencil-commands.scm
1368         (ly:register-stencil-expression): add path.
1369
1370         * scm/define-music-properties.scm (all-music-properties): add delta-pitch.
1371
1372         * ly/engraver-init.ly: add Fall_engraver
1373
1374         * lily/parser.yy (music_function_event): allow musicfunction
1375         without music arg as music_function_event.
1376
1377         * lily/grob-scheme.cc (LY_DEFINE):
1378         ly:grob-robust-relative-extent. New function.
1379
1380         * scm/define-grobs.scm (all-grob-descriptions): add BendAfter
1381
1382         * scm/define-music-types.scm (music-descriptions): add BendAfterEvent.
1383
1384         * scm/output-lib.scm (fall::print): new function
1385
1386         * lily/fall-engraver.cc (stop_fall): new file.
1387
1388         * ly/music-functions-init.ly: alphabetise.
1389
1390         * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): pdf iso. eps as
1391         base.
1392
1393 2006-07-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
1394
1395         * VERSION (PATCH_LEVEL): bump version. Release 2.9.12
1396
1397         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
1398         doc pdftex usage.
1399
1400         * lily/translator-group.cc (connect_to_context): non const error message.
1401
1402         * Documentation/user/GNUmakefile ($(outdir)/%.pdf): update to use PDF
1403
1404         * scm/paper.scm (internal-set-paper-size): define landscape to #f
1405         if unset.
1406
1407         * scm/framework-ps.scm (convert-to-pdf): swap h and w in case of landscape. 
1408
1409         * stepmake/stepmake/texinfo-rules.make: strip DVI support.
1410
1411         * scm/framework-eps.scm (dump-stencils-as-EPSes): generate
1412         systems.pdftex too.
1413
1414         * scm/backend-library.scm (postscript->pdf): use -dEPSCrop for PDF.
1415
1416         * make/lilypond-vars.make (TEXINPUTS): add pdf output format.
1417
1418         * Documentation/topdocs/NEWS.tely (Top): add pdftex note.
1419
1420         * scm/output-ps.scm (resetrotation): use gsave/grestore for rotation.
1421
1422         * lily/main.cc (parse_argv): don't overwrite previous --formats string.
1423
1424         * scm/backend-library.scm (postscript->pdf): strip .eps too. 
1425
1426 2006-07-14  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1427
1428         * scm/layout-page-layout.scm: Define module, tidy code, use more
1429         functions iso. a single big one.
1430
1431         * scm/layout-page-dump.scm: move page dump functions used in two
1432         pass spacing to this file. Define module.
1433
1434         * scm/lily.scm (ly:load): don't load layout-page-layout.scm
1435          (separate module)
1436
1437         * ly/paper-defaults.ly: use module layout-page-layout.
1438
1439 2006-07-14  Erik Sandberg  <mandolaerik@gmail.com>
1440
1441         * lily/music.cc: Revised MusicEvent event class. It now contains
1442         event data directly instead of encapsulating it in music. The
1443         previously used class is renamed to OldMusicEvent.
1444
1445         * lily/stream-event.cc: Stream events are now probs.
1446         
1447         * lily/translator-group.cc, lily/translator.cc: Translators can
1448         now listen directly to stream events, by using macros
1449         [DECLARE,IMPLEMENT]_TRANSLATOR_LISTENER.
1450
1451         * lily/arpeggio-engraver.cc: Converted to use new event system
1452
1453         * THANKS: Corrected spelling mistake.
1454
1455 2006-07-12  Graham Percival  <gpermus@gmail.com>
1456
1457         * Documentation/user/SConscript, make/lilypond-vars.make,
1458         input/GNUmakefile: doc build looks in input/manual instead
1459         of input/test/
1460
1461         * input/manual/ GNUmakefile, SConscript: build files for
1462         input/manual/
1463
1464         * input/test/ various: some files moved to input/manual/ 
1465
1466         * Documentation/user/basic-notation.itely: small updates;
1467         thanks Kieren and Charles!
1468
1469 2006-07-12  Han-Wen Nienhuys  <hanwen@lilypond.org>
1470
1471         * VERSION (PACKAGE_NAME): release 2.9.11
1472
1473         * Documentation/topdocs/NEWS.tely (Top): update prop value 
1474
1475         * Documentation/user/basic-notation.itely (Tuplets): new property
1476         value.
1477
1478 2006-07-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
1479
1480         * python/convertrules.py (conv): tweaks. 
1481
1482         * VERSION (PATCH_LEVEL): bump version.
1483
1484         * python/convertrules.py (conv): add rule for
1485         tupletNumberFormatFunction.
1486
1487         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
1488         tupletNumberFormatFunction.
1489
1490         * scm/define-grobs.scm (all-grob-descriptions): calc TupletNumber
1491         text through 'text callback.
1492
1493         * lily/time-scaled-music-iterator.cc (construct_children): copy
1494         tweaks generated events.
1495
1496         * scm/define-context-properties.scm
1497         (all-user-translation-properties): remove tupletNumberFormatFunction
1498
1499         * lily/tuplet-engraver.cc (process_music): don't read
1500         tupletNumberFormatFunction
1501
1502         * scm/output-lib.scm (tuplet-number::calc-fraction-text): new
1503         function.
1504
1505 2006-07-11  Erik Sandberg  <mandolaerik@gmail.com>
1506
1507         * lily/global-context-scheme.cc: Separated ly:run-translator into
1508         smaller pieces.
1509
1510         * lily/score-engraver.cc, lily/score-performer.cc,
1511         scm/define-context-properties.scm: Make paper/midi output
1512         accessable as a context property.
1513
1514         * lily/score-translator.cc, lily/score-context.cc: Removed.
1515
1516 2006-07-07  Guido Amoruso  <guidonte@katamail.com>
1517
1518         * scm/ps-to-png.scm (Module): 
1519         * scm/framework-tex.scm (Module): 
1520         * scm/framework-ps.scm (Module): 
1521         * scm/backend-library.scm (Module): 
1522         * scm/framework-ps.scm: invoke gs with "-dDEVICEWIDTHPOINTS" and
1523         "dDEVICEHEIGHTPOINTS".
1524
1525 2006-07-04  Graham Percival  <gpermus@gmail.com>
1526
1527         * Documentation/user/ various: general improvements to
1528         "working with lilypond files" section.
1529
1530 2006-07-03  Erik Sandberg  <mandolaerik@gmail.com>
1531
1532         * lily/sequential-iterator.cc: Change the default get_music_list
1533         to read elements-callback music property
1534
1535         * scm/define-music-types.scm, scm/music-functions.scm: Cleaner
1536         processing of multimeasure rests. Softcoded
1537         sequential-music-iterator.
1538
1539         * lily/sequential-music-iterator.cc: Removed.
1540
1541 2006-06-28  Graham Percival  <gpermus@gmail.com>
1542
1543         * Documentation/user/basic-notation.itely: clarify \repeatTie.
1544
1545 2006-06-27  Erik Sandberg  <mandolaerik@gmail.com>
1546
1547         * lily/parser.yy: Wrap non-post-events in EventChords before
1548         assigning them to identifiers.
1549
1550 2006-06-27  Mats Bengtsson  <mabe@s3.kth.se>
1551
1552         * lily/bar-line.cc (compound_barline): Fix parenthesis error,
1553         gives correct vertical placement of \bar ":" in all staff
1554         sizes. Thanks Martial!
1555
1556 2006-06-26  Graham Percival  <gpermus@gmail.com>
1557
1558         * Documentation/user/invoking.itely : minor update from mailist.
1559
1560 2006-06-26  Erik Sandberg  <mandolaerik@gmail.com>
1561
1562         * lily/ various: Introduce stream events of types Prepare,
1563         OneTimeStep, CreateContext, AnnounceNewContext, RemoveContext,
1564         ChangeContext, SetProperty, RevertProperty, Override and Revert.
1565
1566         * lily/global-context*.cc: Time is now -inf before iteration
1567         starts.
1568
1569         * lily/include/context.hh: Removed unique_, init_
1570
1571         * Documentation/topdocs/NEWS: Make the feathered beam example
1572         avoid triggering a bug.
1573
1574 2006-06-24  Graham Percival  <gpermus@gmail.com>
1575
1576         * Documentation/user/ various: small additions from mailist.
1577
1578 2006-06-22  Mats Bengtsson  <mabe@s3.kth.se>
1579
1580         * ly/performer-init.ly: Add some missing links in the context
1581         hierarchy for MIDI output. There are probably some more missing!
1582
1583 2006-06-21  Graham Percival  <gpermus@gmail.com>
1584
1585         * Documentation/user/ various: minor spelling fixes;
1586         thanks Dave Luttinen!
1587
1588         * Documentation/user/ various: small clarifications;
1589         thanks Anthony Youngman!
1590
1591 2006-06-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
1592
1593         * po/fr.po: add \n appropriately.
1594
1595         * lily/lexer.ll: remove ? from version-seen?  
1596
1597 2006-06-19  John Mandereau  <john.mandereau@free.fr>
1598
1599         * po/fr.po; update translation, by Jean-Charles Malahieude and
1600         John Mandereau.
1601
1602 2006-06-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
1603
1604         * THANKS: add Markus Schneider.
1605
1606         * lily/tab-staff-symbol-engraver.cc: derive from Engraver, not
1607         Staff_symbol_engraver
1608
1609         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): don't
1610         replace staff_engraver
1611
1612         * lily/staff-symbol-engraver.cc (stop_spanner): announce end of
1613         spanner.
1614
1615         * lily/staff-collecting-engraver.cc
1616         (acknowledge_end_staff_symbol): new function
1617
1618         * lily/volta-engraver.cc (acknowledge_end_staff_symbol): new function. 
1619
1620         * lily/staff-collecting-engraver.cc
1621         (acknowledge_end_staff_symbol): new function.
1622
1623         * lily/main.cc: switch on relocation by default.
1624
1625 2006-06-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
1626
1627         * lily/spacing-spanner.cc (musical_column_spacing): set
1628         compound_fixed_note_space to 0.0. Document why.
1629
1630         * lily/simple-spacer.cc (is_sane): also have a kludge for numeric
1631         range of inverse_hooke_
1632         (Simple_spacer): init completely.
1633         (fits): const
1634         (get_line_configuration): don't use cols.resize(); it introduces
1635         initialized data.
1636
1637         * scm/framework-ps.scm (dump-page): add setstrokeadjust. 
1638
1639         * ps/music-drawing-routines.ps: remove selectfont L1 hack.
1640
1641         * lily/beaming-pattern.cc (best_splitpoint_index): urg, 2nd
1642         try. Divide by beatlength.
1643
1644         * input/regression/beaming-ternary-metrum.ly: update doc.
1645         add beatLength hack.
1646
1647         * scm/music-functions.scm (make-time-signature-set): add
1648         standard-beat-grouping. 
1649
1650 2006-06-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
1651
1652         * input/regression/tie-whole.ly: new file.
1653
1654         * lily/tie-formatting-problem.cc (set_column_chord_outline): don't
1655         cross center of note head in case of invisible stem. 
1656
1657 2006-06-16  Graham Percival  <gpermus@gmail.com>
1658
1659         * Documentation/user/ various: small fixes from mailist.
1660
1661 2006-06-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
1662
1663         * lily/breathing-sign.cc (offset_callback): idem.
1664
1665         * lily/align-interface.cc (align_to_fixed_distance): remove
1666         hungarian suffix.
1667
1668         * lily/beaming-pattern.cc (count_factor_twos): oops. We want
1669         x%2==0.
1670
1671 2006-06-15  Han-Wen Nienhuys  <hanwen@lilypond.org>
1672
1673         * VERSION (PACKAGE_NAME): release 2.9.9
1674
1675         * ly/lilypond-book-preamble.ly: add \version
1676
1677 2006-06-14  Han-Wen Nienhuys  <hanwen@lilypond.org>
1678
1679         * scripts/lilypond-book.py (PREAMBLE_LY): include
1680         lilypond-book-preamble.ly
1681
1682         * lily/stem.cc (get_beaming): return max of 0 and
1683         scm_ilength. Fixes slurring from/to beams.
1684
1685         * ly/lilypond-book-preamble.ly: new file.
1686
1687         * lily/slur.cc: add inspect-index feature.
1688
1689 2006-06-13  Graham Percival  <gpermus@gmail.com>
1690
1691         * Documentation/user/tutorial.itely: trivial fix.
1692
1693 2006-06-13  Erik Sandberg  <mandolaerik@gmail.com>
1694
1695         * lily/parser.yy, scm/ly-syntax-constructors.scm: Produce almost
1696         all non-event music in the parser via MAKE_SYNTAX.
1697
1698         * lily/parser-scheme.cc: Add ly:parser-error function
1699
1700         * scm/paper.scm: fix typo
1701
1702 2006-06-13  Han-Wen Nienhuys  <hanwen@lilypond.org>
1703
1704         * THANKS: add RT.
1705
1706         * lily/font-config.cc (init_fontconfig): add warning if cache_file
1707         is null.
1708
1709         * buildscripts/output-distance.py (test_compare_signatures):
1710         timing routines.
1711         (read_signature_file): use new signature format.
1712
1713         * scm/stencil.scm (write-system-signature): simpler signature
1714         format.
1715
1716         * lily/stem.cc (calc_stem_end_position): calc quantized-positions
1717         for beamed case. 
1718
1719         * lily/note-spacing.cc (stem_dir_correction): don't inspect
1720         stem_end_position, but estimate instead. 
1721
1722         * lily/tuplet-bracket.cc (calc_positions): look at
1723         stem-end-position for tuplet bracket slope. Fixes sloped tuplet
1724         brackets narrower than beams. 
1725
1726         * lily/lexer.ll: set version-seen? even if version is
1727         INVALID. 
1728
1729         * lily/rest.cc (y_offset_callback): bugfix: decide position
1730         override based on scm_is_number(). Fixes \rest on center staff
1731         line. 
1732
1733         * lily/beaming-pattern.cc (best_splitpoint_index): fix beaming
1734         patterns for 16th triplets.
1735
1736 2006-06-10  Graham Percival  <gpermus@gmail.com>
1737
1738         * Documentation/user/ page.itely, global.itely: editing
1739         and reorg.
1740
1741         * Documentation/user/ various: findex -> funindex.
1742
1743 2006-06-10  Erik Sandberg  <mandolaerik@gmail.com>
1744
1745         * lily/time-scaled-music-iterator.cc: Use tupletSpannerDuration to
1746         insert extra tuplet events.
1747
1748 2006-06-10  Graham Percival  <gpermus@gmail.com>
1749
1750         * Documentation/user/programming-interfaces.itely: add
1751         info from NEWS.
1752
1753         * python/convertrules.py: add annotatefoo -> annotate-foo
1754         rules.
1755
1756         * Documentation/user/global.itely: start editing.
1757
1758         * Documentation/user/page.itely: major editing, new spacing
1759         docs.
1760
1761 2006-06-10  Han-Wen Nienhuys  <hanwen@lilypond.org>
1762
1763         * scm/define-markup-commands.scm (wordwrap-markups): use
1764         output-def 'line-width if undefined.
1765
1766         * HACKING: trim outdated info.
1767
1768 2006-06-09  Mats Bengtsson  <mabe@s3.kth.se>
1769
1770         * scm/define-grobs.scm (all-grob-descriptions): Add
1771         line-spanner-interface to all grobs that already have
1772         text-spanner-interface or dynamic-text-spanner-interface
1773
1774         * scm/page.scm: Rename annotate{headers,systems,page}->
1775         annotate-*
1776
1777         * input/regression/page-spacing.ly,
1778         input/regression/page-layout-manual-position.ly: idem
1779
1780 2006-06-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
1781
1782         * lily/line-spanner.cc: cleanup property list.
1783
1784         * scripts/lilypond-book.py (find_toplevel_snippets): don't use
1785         generator expressions (2.3 compat). 
1786
1787 2006-06-09  Mats Bengtsson  <mabe@s3.kth.se>
1788
1789         * lily/vertical-align-engraver.cc: Make sure that the
1790         align{Above,Below}Context properties are included in the automatic
1791         documentation.
1792
1793 2006-06-08  Joe Neeman  <joeneeman@gmail.com>
1794
1795         * scm/paper-system.scm (paper-system-annotate): also annotate the
1796         estimated pure-Y-extent
1797
1798         * scm/define-grobs.scm: add pure-Y-extent and pure-Y-offset functions
1799
1800         * lily/system.cc (break_into_pieces): set the estimated height
1801         of each child system
1802
1803         * lily/stem.cc (pure_height): new pure-Y-extent callback
1804
1805         * lily/staff-symbol-referencer.cc (callback): don't destroy
1806         the staff-position property
1807
1808         * lily/hara-kiri-group-spanner.cc (request_suicide): split
1809         consider_suicide into two functions
1810
1811         * lily/constrained-breaking.cc (resize): use the new pure
1812         callbacks to estimate the height of a system
1813
1814         * lily/axis-group-interface.cc (pure_group_height): new
1815         side-effect-free VerticalAxisGroup height-callback
1816
1817         * lily/align-interface.cc (get_extents_aligned_translates):
1818         split align_elements_to_extents into two functions
1819         (get_pure_child_y_translation): new function
1820
1821         * lily/grob.cc: new functions for pure-Y-extent and pure-Y-offset
1822
1823         * lily/item.cc: new functions pure_is_visible and spanned_rank_iv
1824
1825         * lily/paper-score.cc: cache break_indices and columns
1826
1827         * lily/side-position-interface.cc: new pure-Y-extent callbacks
1828         
1829 2006-06-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
1830
1831         * lily/font-config.cc (init_fontconfig): do the init if
1832         cache_file, but don't look at cache_file.
1833
1834         * input/regression/quote-tie.ly: new file.
1835
1836         * lily/tie-engraver.cc (struct Head_event_tuple): add end_moment_
1837         to Head_event_tuple, so we deal gracefully with ties on
1838         cue-endings.
1839
1840         * lily/pango-font.cc (pango_item_string_stencil): type correctness
1841         for FcChar8*
1842
1843 2006-06-08  Graham Percival  <gpermus@gmail.com>
1844
1845         * input/test/ smart-transpose.ly, reverse-music.ly:
1846         \applyMusic to music functions update, thanks Michael!
1847
1848 2006-06-07  Graham Percival  <gpermus@gmail.com>
1849
1850         * input/test/ add-staccato.ly, add-text-script.ly,
1851         unfold-all-repeats.ly, music-box.ly: \applyMusic to
1852         music functions update, thanks to Michael Meixner.
1853
1854         * Documentation/user/music-glossary.tely: small fix
1855         from Francisco.
1856
1857         * Documentation/user/ various: minor additions from mailist.
1858
1859         * Documentation/user/lilypond.tely, basic-notation.itely:
1860         small test of @funindex.  (works here)
1861
1862         * input/test/font-table.ly: reduce size to partially
1863         de-ugly version in manual.
1864
1865         * Documentation/user/page.itely: new file (split former
1866         "global issues" into "page settings" and "non-musical
1867         output".
1868
1869         * Documentation/user/ various: fix @ref{}s to match
1870         new chapter names (above).
1871
1872 2006-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
1873
1874         * SConstruct (LILYPONDPREFIX): Bootstrap fix.
1875
1876 2006-06-06  Graham Percival  <gpermus@gmail.com>
1877
1878         * Documentation/user/advanced-notation.itely: add example
1879         for segno/coda on barline.
1880
1881         * tex/texinfo.tex: merge from upstream.
1882
1883 2006-06-06  Jan Nieuwenhuizen  <janneke@gnu.org>
1884
1885         * scripts/lilypond-book.py (process_snippets): Argument fix.
1886
1887         * SConstruct:
1888         * buildscripts/builder.py:
1889         * lily/SConscript: 
1890         * mf/SConscript: 
1891         * Documentation/user/SConscript:  More SCons fixes.
1892
1893 2006-06-03  Jan Nieuwenhuizen  <janneke@gnu.org>
1894
1895         * lily/font-config.cc (init_fontconfig): Only initialize if
1896         global cache_file is found.
1897
1898 2006-06-06  Erik Sandberg  <mandolaerik@gmail.com>
1899
1900         * ly/music-functions-init.ly: Updated \overrideProperty to use the
1901         new \applyOutput.
1902
1903 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
1904
1905         * VERSION (PACKAGE_NAME): release 2.9.8
1906
1907         * lily/ledger-line-engraver.cc (stop_translation_timestep): new
1908         function. Delay ledger modifying ledgered grobs to
1909         stop_translation_timestep(), to ensure that we're ledgering
1910         according to the new spanner.
1911         (acknowledge_staff_symbol): don't check for non-NULL
1912         staff_sym->get_bound()
1913
1914         * lily/staff-symbol-engraver.cc (start_spanner): set left bound on
1915         creation.
1916
1917         * Documentation/pictures/GNUmakefile (XPM_FILES): src-wildcard for
1918         pictures too.
1919
1920         * GNUmakefile.in (dist-toplevel-txt-files): dist aclocal.m4
1921         directly from srcdir/stepmake/aclocal.m4
1922         
1923         * Documentation/misc/GNUmakefile (TEXTS): use src-wildcard for
1924         disting MISC files.
1925
1926         * lily/simple-spacer.cc (get_column_desc): desc -> description.
1927
1928 2006-06-06  Joe Neeman  <joeneeman@gmail.com>
1929
1930         * lily/simple-spacer.cc (get_line_configuration): add
1931         keep-inside-line rods
1932         (struct Column_desc): add constructor
1933         (struct Rod_desc): add constructor
1934         (get_line_forces): check for forced page breaks here too
1935
1936         * lily/instrument-name-engraver.cc (acknowledge_axis_group): prevent
1937         support/elements cycles between InstrumentNames and AxisGroups
1938
1939 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
1940
1941         * config.make.in (METAFONT): remove MAKEINFO_VERSION
1942
1943         * stepmake/stepmake/topdocs-targets.make (make-txt-files): define
1944         make-txt-files target.
1945
1946         * stepmake/stepmake/toplevel-targets.make (do-top-doc): use
1947         make-txt-files target.
1948
1949         * configure.in (LINK_GXX_STATICALLY): $srcdir for readlink.py
1950
1951         * stepmake/stepmake/generic-vars.make (distdir): create dist in
1952         top-build-dir.
1953
1954 2006-06-06  Jürgen Reuter  <reuter@ipd.uka.de>
1955
1956         * Documentation/user/instrument-notation.itely,
1957         input/regression/breathing-sign-ancient.ly,
1958         input/test/divisiones.ly: Removed redundant property settings for
1959         vaticana contexts.
1960
1961         * ly/gregorian-init.ly: Rewrote \versus and \responsum in order to
1962         fix lyrics alignment problems.  They are implemented now as scheme
1963         functions that add the appropriate unicode char to the first lyric
1964         event rather than adding a separate lyric event.  Minor edit of
1965         comments.
1966
1967 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
1968
1969         * GNUmakefile.in (dist-toplevel-txt-files): new target. Don't
1970         pollute src dir with built .txt files, but install directly from
1971         Documentation/topdocs/out/
1972
1973         * buildscripts/output-distance.py
1974         (ComparisonData.create_html_result_page): put version/directories
1975         in table header.
1976
1977         * Documentation/topdocs/NEWS.tely (Top): document spacing section
1978         feature.
1979
1980         * configure.in (LINK_GXX_STATICALLY): use readlink.py to resolve links.
1981         Patch by Karl Hammar
1982         
1983         * buildscripts/readlink.py: add  file.
1984         Patch by Karl Hammar
1985
1986 2006-06-06  Joe Neeman  <joeneeman@gmail.com>
1987
1988         * lily/tuplet-number.cc (print): prevent stencil from being
1989         garbage collected.
1990
1991 2006-06-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
1992
1993         * scm/stencil.scm (write-system-signature): explicitly 
1994         -well, superfluously- close output port.
1995
1996         * buildscripts/output-distance.py (main): oops. Add extra argument.
1997
1998 2006-06-05  Graham Percival  <gpermus@gmail.com>
1999
2000         * Documentation/user/music-glossary.tely: clarified example
2001         from Francisco Vila, thanks!
2002
2003 2006-06-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
2004
2005         * input/regression/spacing-section.ly: new file.
2006
2007         * lily/input.cc (programming_error): new function.
2008
2009         * lily/spacing-engraver.cc (try_music): new function. Accept
2010         spacing-section-event
2011
2012         * lily/spacing-spanner.cc (set_springs): take slices of all
2013         columns for spacing.
2014
2015         * lily/include/paper-column.hh (class Paper_column): add
2016         Paper_column::compare.
2017
2018         * ly/spanners-init.ly (newSpacingSection): add newSpacingSection.
2019
2020         * scm/define-music-types.scm (music-descriptions): add
2021         SpacingSectionEvent
2022
2023         * lily/music-iterator.cc (report_event): use programming_error for
2024         sending non-event error.
2025
2026         * lily/input.cc (programming_error): new function
2027
2028         * buildscripts/output-distance.py (main): use compare-XXX for
2029         compare files.
2030         (main): --threshold option, default at 0.30
2031
2032         * output-distance.py (main): add --threshold option.
2033
2034 2006-06-04  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2035
2036         * scm/paper-system.scm (paper-system-annotate): fix problem when
2037         annotating an empty system
2038
2039 2006-06-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
2040
2041         * GNUmakefile.in: reinstate old web tar/copying.
2042
2043 2006-06-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
2044
2045         * lily/lyric-combine-music-iterator.cc (find_voice): return 0 if
2046         nothing changes. (Erik S) 
2047
2048         * lily/percent-repeat-iterator.cc (get_music_list): fix repeat
2049         count. (Erik S)
2050
2051 2006-05-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2052
2053         * scm/define-markup-commands.scm (whiteout): do not force
2054         foreground color of argument markup to black.
2055
2056         * scm/stencil.scm (annotate-y-interval): put arrow dimension at
2057         the left of the arrow, instead of below the arrow name, so that,
2058         when two little arrows are vertically stacked, their dimensions
2059         and name should not overlap. Add a color key parameter.
2060
2061         * scm/paper-system.scm (paper-system-annotate): Annotate
2062         next-space+next-padding instead of next-space. Annotate space
2063         between next-padding and next-space+padding, respectively, and
2064         following system extent and refpoint-Y-extent. Use colors.
2065
2066         * scm/page.scm (annotate-page): translate annotations slightly to
2067         the right.
2068
2069 2006-06-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
2070
2071         * lily/figured-bass-position-engraver.cc (acknowledge_end_slur):
2072         fix for x-staff slurs. Thanks Joe!
2073
2074         * buildscripts/output-distance.py
2075         (SystemLink.output_expression_change_count): keep track of changed
2076         details, and dump in details html page.
2077  
2078         * input/regression/figured-bass-staff.ly: add note about setting
2079         properties in Staff context.
2080
2081         * lily/figured-bass-position-engraver.cc (acknowledge_slur):
2082         add slurs and ties to support too.
2083
2084         * buildscripts/output-distance.py (main): set dest_dir
2085         argument. Add --max-count option.
2086
2087 2006-06-02  Jürgen Reuter  <reuter@ipd.uka.de>
2088
2089         * ly/gregorian-init.ly: Converted to utf-8.  Added memorable
2090         shortcuts for special unicode chars that are useful in chant
2091         notation.  Revised exisiting and added new comments.
2092
2093 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
2094
2095         * make/mutopia-rules.make: remove duplicate recipe.
2096
2097 2006-06-02  Werner Lemberg  <wl@gnu.org>
2098
2099         * tex/texinfo.cnf: Fix typo (\euro -> \minus).
2100         Add support for U+0132 (IJ) and U+0133 (ij).
2101
2102 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
2103
2104         * buildscripts/output-distance.py (FileLink): new class. collect
2105         info systems from one .ly file. 
2106         (FileLink.link_files_for_html): further tweaks.
2107
2108 2006-06-02  Graham Percival  <gpermus@gmail.com>
2109
2110         * tex/texinfo.tex: partial fix for @funindex.
2111
2112         * Documentation/user/macros.tely: uncomment @funindex (doesn't
2113         break anything).
2114
2115 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
2116
2117         * make/mutopia-vars.make (ly_examples): replace .ly.txt with .ly
2118
2119         * tex/texinfo.tex (sectionheading, q.v.): call \quoteexpand for
2120         @example too. Backportme.
2121
2122 2006-06-02  Graham Percival  <gpermus@gmail.com>
2123
2124         * tex/texinfo.cnf: added UTF-8 support for texinfo; patch
2125         from Werner Lemberg.
2126
2127 2006-06-02  Paco (Francisco Vila)  <fravd@ya.com>
2128
2129         * Documentation/user/music-glossary.tely: additional spanish
2130         updates and a lyrics fix in an example.
2131
2132 2006-06-02  Jürgen Reuter  <reuter@ipd.uka.de>
2133
2134         * scm/define-grob-properties.scm: Previous patch contained
2135         spurious line from another patch not yet committed.  Fixed.
2136
2137         * scm/define-grob-properties.scm: Add missing doc strings for
2138         ancient notation.
2139
2140 2006-06-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
2141
2142         * buildscripts/output-distance.py
2143         (ComparisonData.write_text_result_page): separate the scores, sort
2144         by geo_score.
2145
2146         * scm/framework-eps.scm (output-classic-framework): start at 1 for
2147         system signatures.
2148
2149         * buildscripts/output-distance.py (me_path): use argv[0] for
2150         sys.path extension
2151         (ComparisonData.img_cell): use colored borders.
2152
2153         * scm/stencil.scm (write-system-signature): escape newlines too.
2154         (write-system-signature): use (1,-1) interval for empty interval
2155
2156 2006-01-01  Graham Percival  <gpermus@gmail.com>
2157
2158         * Documentation/user/music-glossary.tely: Spanish updates
2159         from Francisco Vila.
2160
2161         * Documentation/user/lilypond-book.itely: addition from
2162         Vaclav Smilauer.
2163
2164         * Documentation/user/ various: edits, small additions
2165         from mailist, etc.
2166
2167 2006-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
2168
2169         * GNUmakefile.in (tree-lib-prefix-current):
2170         (tree-share-prefix-current): Use version number in tree, add
2171         `current' symlinks.
2172
2173 2006-06-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
2174
2175         * GNUmakefile.in: write VERSION, again.
2176
2177         * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
2178         $(outdir)/%.ly $(outdir)/%.ps): dump sigs for normal files too.
2179
2180         * stepmake/aclocal.m4: robuster version detection.
2181
2182         * buildscripts/output-distance.py
2183         (ComparisonData.create_html_result_page): copy only if file
2184         exists, fixup src paths.
2185
2186         * stepmake/bin/add-html-footer.py (built): junk gulp_file()
2187
2188 2006-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
2189
2190         * stepmake/aclocal.m4: Robustification for (gcc) version detection.
2191         Another datarootdir reto.
2192
2193         * cygwin/postinstall-lilypond.sh: Do not fail if info docs aren't
2194         available.  This should be moved to postinstall-lilypond-doc.
2195
2196 2006-05-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
2197
2198         * GNUmakefile.in: simplify local-WWW-post. 
2199         remove -type l from find.
2200
2201         * buildscripts/output-distance.py (ComparisonData.compare_trees):
2202         fixes. Don't follow symlinks.
2203         (ComparisonData.create_html_result_page): remove previous results.
2204         insert ../python in path.
2205
2206         * scripts/lilypond-book.py (PREAMBLE_LY): spacing fixes.
2207
2208 2006-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
2209
2210         * config.make.in (datadir): Add datarootdir to silence autoconf.
2211
2212         * stepmake/aclocal.m4: Update for autoconf-2.59d.
2213
2214 2006-05-31  Erlend Aasland  <erlenda@gmail.com>
2215
2216         * dynamic-engraver.cc: fix bug (dynamics collide with accidentals)
2217
2218         * scm/output-ps.scm (repeat-slash): fix a bug that made repeat
2219         slash beams too wide.
2220
2221 2006-05-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
2222
2223         * VERSION: release 2.9.7
2224         
2225 2006-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
2226
2227         * lily/relocate.cc (read_relocation_dir): Do not blindly
2228         dereference DIR.
2229
2230 2006-05-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
2231
2232         * lily/parser.yy: replace THIS by PARSER
2233
2234         * Documentation/index.html.in: add link to test-results.html page.
2235
2236         * Documentation/topdocs/NEWS.tely (Top): update NEWS entry.
2237
2238         * scm/translation-functions.scm (format-bass-figure): translate
2239         digits over 10 to the left
2240
2241         * scm/define-markup-commands.scm (translate-scaled): new markup.
2242
2243         * mf/feta-nummer-code.mf (code): overshoot the topright tip of the
2244         7 glyph. 
2245
2246         * ly/engraver-init.ly: add Figured_bass_engraver
2247
2248         * lily/engraver-group.cc (acknowledge_grobs): use start/stop drul.
2249
2250         * lily/figured-bass-engraver.cc (clear_spanners): use everywhere.
2251
2252         * lily/score-engraver.cc (announce_grob): only note START announces.
2253
2254         * lily/include/engraver-group.hh (Translator_group):
2255         acknowledge_hash_table_ is now drul.
2256
2257         * lily/engraver.cc (announce_end_grob): new method.
2258
2259         * lily/include/grob-info.hh (class Grob_info): add start_end_ member.
2260
2261         * lily/translator-dispatch-list.cc (create): take start_end argument.
2262
2263         * lily/include/translator.hh (TRANSLATOR_DECLARATIONS): change
2264         acknowledge_static_array_ to drul
2265
2266         * lily/include/translator.icc (ADD_END_ACKNOWLEDGER): new macro.
2267
2268         * scm/define-grob-interfaces.scm
2269         (bass-figure-alignment-interface): add bass-figure-alignment-interface
2270
2271         * scm/define-grobs.scm (all-grob-descriptions): add
2272         BassFigureAlignmentPositioning
2273
2274         * ly/Welcome-to-LilyPond-MacOS.ly: include in LilyPond, so version
2275         number stays up to date. Backportme.
2276
2277 2006-05-30  Mats Bengtsson  <mabe@s3.kth.se>
2278
2279         * Documentation/user/basic-notation.itely (Bar lines): Document
2280         the "||:" bar type. 
2281
2282 2006-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
2283
2284         * buildscripts/builder.py: Remove --ly option/target from mf-to-table.
2285
2286         * scripts/lilypond-book.py: Bugfix: do not blindly attempt
2287         .../current hack if LILYPONDPREFIX is fine.  Fixes `scons doc'
2288         build.
2289
2290         * Resurrect `scons lily' build.
2291
2292         * SConstruct (symlink_tree): Bugfix: link
2293         music-drawing-routines.ps to file iso directory.
2294
2295         * lily/SConscript: Remove kpath-guile from LIBS.
2296
2297         * SConstruct (libdir_package_version): Typo.
2298         (configure): Comment-out fontforge for lack of fontforge.pc .
2299         Also add libdir* to environment.
2300
2301 2006-05-30  Graham Percival  <gpermus@gmail.com>
2302
2303         * Documentation/user/ various: minor additions from mailist and
2304         editing.
2305
2306 2006-05-30  Paco <fravd@ya.com>
2307
2308         * Documentation/user/music-glossary.tely: numerous corrections and
2309         some new translations.
2310
2311 2006-05-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
2312
2313         * BackportmeStart.
2314         
2315         * buildscripts/output-distance.py
2316         (ComparisonData.create_html_result_page): new routine: summarise
2317         results in HTML page with images. 
2318         (ComparisonData.create_text_result_page): create summary text files too.
2319
2320         * GNUmakefile.in (web-ext): package .signature files too. They
2321         compress well. 
2322
2323         * scm/stencil.scm (write-system-signature): typo.
2324
2325         * GNUmakefile.in: create web-root/VERSION to help upload scripts.
2326
2327         * scm/stencil.scm (write-system-signature): better escaping.
2328         only write signature for music systems, not for markup systems.
2329
2330         * scm/framework-ps.scm (output-framework): dump-signatures support
2331         for plain output.
2332
2333         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): add -ddump-signatures.
2334
2335         * scm/framework-ps.scm (write-preamble): redefine mark_URI to nop
2336         for -dno-point-and-click
2337
2338         * lily/grob.cc (get_print_stencil): don't read
2339         point_and_click_global to determine whether to set grob-cause.
2340
2341 2006-05-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
2342
2343         * buildscripts/output-distance.py (main): new function.
2344         (ComparisonData): new class.
2345
2346         * lily/ledger-line-engraver.cc (acknowledge_staff_symbol): be more
2347         careful with generating new LedgerLineSpanners.
2348
2349         * lily/ledger-line-spanner.cc (set_spacing_rods): suicide if no staff.
2350
2351         * ly/engraver-init.ly: remove Ledger_line_engraver from Voice
2352         context. This fixes double ledger lines in output. 
2353
2354         * lily/system.cc (get_paper_system): remove 3 layer limit.
2355
2356         * buildscripts/output-distance.py (SystemLink.distance): new
2357         file. Compare signatures.
2358
2359         * python/safeeval.py (SafeEval.visitUnarySub): new file.
2360
2361         * lily/grob-array.cc (remove_duplicates): rename from
2362         uniq(). Sort before calling uniq() so it actually works.
2363
2364 2006-05-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
2365
2366         * scripts/lilypond-book.py (Lilypond_file_snippet.ly): strip
2367         \version from lilypond file snippet.
2368         (Lilypond_file_snippet.ly): oops. typo.
2369         (find_toplevel_snippets): urgh. again.
2370
2371         * lily/system.cc (get_paper_systems): uniq all_elements_ , to
2372         prevent duplicated broken items in output.
2373
2374         * scm/framework-eps.scm (output-classic-framework): only dump if
2375         dump-signatures is set.
2376
2377         * scm/lily.scm (define-scheme-options): add dump-signatures option.
2378
2379         * scm/stencil.scm (write-system-signature): new routine: write
2380         python parseable signature of a separate paper system.
2381         BackportmeEnd.
2382         
2383 2006-05-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
2384
2385         * lily/stanza-number-engraver.cc (process_music): use is_markup()
2386         iso is_string().
2387         include header.
2388
2389 2006-05-25  Erik Sandberg  <mandolaerik@gmail.com>
2390
2391         * translator-group.cc: send music events to engravers in
2392         non-bottom contexts.
2393
2394         * tuplet-engraver.cc: process tuplet brackets in correct order.
2395
2396 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
2397
2398         * stepmake/aclocal.m4: STEPMAKE_PYTHON(): clear cached value since
2399         arg 2 might point us to a new binary (patch by Karl Hammar)
2400         
2401 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
2402
2403         * VERSION (PACKAGE_NAME): release 2.9.6
2404
2405         * Documentation/topdocs/NEWS.tely (Top): trim explanation. 
2406
2407         * Documentation/user/*.itely: 2nd
2408         attempt: replace funindex -> findex globally.
2409
2410 2006-05-24  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2411
2412         * input/no-notation/display-lily-tests.ly: fix \applyOutput
2413         test. Add \break, \pageBreak, \pageTurn, etc, tests.
2414
2415         * scm/define-music-display-methods.scm: display methods for
2416         breaks. Fix \applyOutput.
2417
2418 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
2419
2420         * Documentation/user/macros.itexi: comment out funindex expansion. 
2421
2422         * Documentation/user/music-glossary.tely: junk \oldaddlyrics
2423         everywhere.
2424
2425         * GNUmakefile.in: fix wildcarding for scrips/out/ links. Thanks
2426         Karl Hammar. Backportme.
2427  
2428         * Documentation/user/advanced-notation.itely (Balloon help): idem.
2429
2430         * Documentation/user/changing-defaults.itely (Creating contexts): idem.
2431
2432         * Documentation/user/programming-interface.itely (Running a
2433         function on all layout objects): idem.
2434
2435         * Documentation/user/introduction.itely (Automated engraving):
2436         update \applyOutput syntax
2437
2438         * lily/lyric-combine-music-iterator.cc (start_new_syllable):
2439         remove debugging hook.
2440
2441         * configure.in (LINK_GXX_STATICALLY): use "" to allow $
2442         expansion. 
2443
2444         * Documentation/user/GNUmakefile (TEXI2DVI_FLAGS): add -E.
2445
2446         * stepmake/stepmake/texinfo-rules.make ($(outdir)/%.dvi): add
2447         TEXI2DVI_FLAGS to texi2dvi invocation. 
2448
2449 2006-05-24  Erik Sandberg  <mandolaerik@gmail.com>
2450
2451         * lily/chord-tremolo-*.cc: Reworked how \repeat "tremolo"
2452         works. More work is done by iterator now, and engraver has been
2453         very much simplified.
2454
2455         * lily/translator-group.cc: try_music is now invoked through a
2456         listener
2457
2458         * lily/*-iterator.cc: Massive cleanups. Junked
2459         try_music_in_children globally. Renamed try_music to report_event,
2460         and made that method descend to a bottom context automatically.
2461
2462         * lily/event-iterator.cc: New file.
2463
2464         * lily/output-property-iterator.cc,
2465         lily/old-lyric-combine-music-iterator.cc: Removed.
2466
2467         * python/convert-rules.py: Modified the syntax for \applyOutput.
2468
2469 2006-05-23  Graham Percival  <gpermus@gmail.com>
2470
2471         * stepmake/stepmake/texinfo-rules.make: added -E, allows pdf doc
2472         creation.
2473
2474         * Documentation/user/ various: stuff that might have helped
2475         to fix the pdf creation, plus some minor doc additions.
2476
2477         * Documentation/user/changing-defaults.itely: remove @b from
2478         @b{ @internasref{foo}}; this breaks texi2dvi -E.
2479
2480 2006-05-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
2481
2482         * lily/beaming-pattern.cc (beamify): deal with negative start
2483         moments for beaming patterns.
2484
2485 2006-05-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
2486
2487         * lily/beaming-info.cc (beamify): new function: read beatLength
2488         and beatGrouping from context. 
2489
2490         * input/regression/beam-beat-grouping.ly (Module): new file.
2491
2492         * input/regression/beam-unconnected-beamlets.ly (Module): new file.
2493
2494         * lily/beam.cc (get_beam_segments): generate events for
2495         max_connect_ case too.
2496         (get_beam_segments): read Stem::max-beam-connect.
2497
2498         * input/regression/beam-single-stem.ly: new file.
2499
2500         * lily/stem.cc (set_beaming): use #f as signaling value for
2501         beamcount 0.
2502
2503         * lily/beam-engraver.cc (typeset_beam): set right bound if unset.
2504
2505         * lily/beam.cc (set_beaming): read clip-edges property.
2506         (calc_direction): don't suicide for single stem.
2507
2508         * lily/beaming-info.cc (best_splitpoint_index): take bool*
2509         argument, remove 1<<15 hack. Remove clip_edges() 
2510
2511         * lily/hairpin.cc (print): only do padding for nonmusical bounds
2512
2513 2006-05-21  Graham Percival  <gpermus@gmail.com>
2514
2515         * Documentation/user/basic-notation.itely: reorg.
2516
2517         * Documentation/user/ various: minor fixes.
2518
2519 2006-05-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
2520
2521         * lily/stencil-expression.cc (register_stencil_head): opps, append
2522         to cdr of static SCM object.
2523
2524 2006-05-19  Graham Percival  <gpermus@gmail.com>
2525
2526         * Documentation/user/README.txt, lilypond.tely, macros.itexi:
2527         update framework for command index.  DOC WRITERS: use @funindex
2528         instead of @cindex @code{}.
2529
2530         * Documentation/user/ various: replace @cindex @code{} => @funindex
2531
2532 2006-05-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
2533
2534         * lily/beam.cc (set_stem_lengths): trigger 'beaming callback, in
2535         case positions is set manually. 
2536
2537 2006-05-18  Erik Sandberg  <mandolaerik@gmail.com>
2538         
2539         * scm/ly-syntax-constructors.scm: New file. Converted a few syntax
2540         rules to Scheme.
2541
2542 2006-05-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
2543
2544         * Documentation/user/changing-defaults.itely (Contexts explained):
2545         use absolute dimension for @image.
2546
2547         * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): generate PNG
2548         out image for illustration too.
2549         ($(outdir)/%.png): add more png <-> eps rules. 
2550
2551 2006-05-17  Graham Percival  <gpermus@gmail.com>
2552
2553         * Documentation/user/ various: remove trailing whitespace, cosmetic
2554         change to reduce changes produced by diff.
2555
2556 2006-05-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
2557
2558         * lily/main.cc (do_chroot_jail): correctness tweak.
2559
2560         * python/lilylib.py (system): import subprocess in system () only.
2561
2562         * scripts/*.py: use TARGET_PYTHON iso PYTHON. Backportme.
2563
2564         * make/substitute.make (ATVARIABLES): add TARGET_PYTHON as subst
2565         variable. Backportme.
2566
2567 2006-05-17  Erik Sandberg  <mandolaerik@gmail.com>
2568         
2569         * lily/parser.yy: Change all syntax rules of type Music to SCM type
2570
2571 2006-05-17  Werner Lemberg  <wl@gnu.org>
2572
2573         * lily/lexer.ll (init_signature_has_table): Add
2574         `scm-scm-music-music'.
2575
2576         * lily/parser.yy (MUSIC_FUNCTION_SCM_SCM_MUSIC_MUSIC): New token.
2577         (Generic_prefix_music_scm): Add rule for it.
2578
2579         * lily/quote-iterator.cc (Quote_iterator::process): Handle
2580         `quoted-transposition' property.
2581
2582         * ly/music-functions-init.ly (transposedCueDuring): New function.
2583
2584         * scm/define-music-properties.scm (all-music-properties): Updated.
2585
2586         * Documenation/topdocs/NEWS.itely: Document it.
2587
2588 2006-05-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
2589
2590         * python/lilylib.py (system): move import subprocess to system()
2591         definition. 
2592
2593         * python/convertrules.py (conv): fix convert-ly rules for 2.9.4
2594
2595         * VERSION (PATCH_LEVEL): release 2.9.5
2596         
2597         * Documentation/topdocs/INSTALL.texi (Top): update versions and
2598         build instructions. 
2599
2600         * ly/engraver-init.ly: switch on hairpinToBarline by default.
2601
2602 2006-05-16  Graham Percival  <gpermus@gmail.com>
2603
2604         * Documentation/user/basic-notation.itely: editing from Dave, thanks!
2605
2606         * Documentation/user/ various: minor fixes.
2607
2608 2006-05-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
2609
2610         * Documentation/topdocs/NEWS.tely (Top): add hairpinToBarline feature.
2611
2612 2006-05-16  Mats Bengtsson  <mabe@s3.kth.se>
2613
2614         * Documentation/user/advanced-notation.itely (Instrument names):
2615         Modified obsolete instruction on how to move instrument names away
2616         from the staves. Hmm, at second thought the bug probably has been
2617         solved, so the full bug description should probably be removed.
2618
2619 2006-05-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
2620
2621         * lily/dynamic-engraver.cc (typeset_all): hang ending on
2622         currentCommandColumn. 
2623
2624         * lily/hairpin.cc (print): also add padding for non-neighbor
2625         hairpin bounds.
2626
2627         * scm/define-context-properties.scm
2628         (all-user-translation-properties): add hairpinToBarline
2629
2630         * input/regression/hairpin-to-barline.ly: new file.
2631
2632         * lily/context.cc (internal_send_stream_event): thinko fix.
2633
2634         * lily/tie.cc (set_default_control_points): robustness fix.
2635
2636         * python/musicxml.py (Part.interpret): don't complain about
2637         incomplete measures.
2638
2639         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): only add
2640         new music if last_event_chord() returned None.
2641
2642         * python/musicxml.py (Part.interpret): skip back over chord notes.
2643
2644 2006-05-16  Erik Sandberg  <mandolaerik@gmail.com>
2645         
2646         * lily/percent-repeat-engraver.cc, lily/parser.yy,
2647         lily/define-music-types.cc, lily/percent-repeat-iterator.cc,
2648         lily/slash-repeat-engraver.cc,
2649         lily/include/percent-repeat-iterator.hh: Rework percent repeats:
2650         iterator sends PercentEvents
2651
2652         * lily/time-scaled-music-iterator.cc, lily/tuplet-engraver.cc:
2653         rework tuplets: send start/stop events to engraver
2654
2655         * lily/context.cc, lily/music.cc, lily/context-scheme.cc: Add
2656         dispatchers event-source and events-below to Context
2657         
2658 2006-05-15  Graham Percival  <gpermus@gmail.com>
2659
2660         * Documentation/user/README.txt: update info for doc writers.
2661
2662         * Documentation/user/programming-interface.itely: integrate
2663         Nicolas' fixes for chapter rewrite.
2664
2665         * Documentation/user/ various: minor fixes.
2666
2667 2006-05-15  Han-Wen Nienhuys  <hanwen@lilypond.org>
2668
2669         * lily/clef-engraver.cc: cleanup.
2670
2671         * Documentation/user/GNUmakefile: dist context-example.eps too.
2672
2673         * lily/key-engraver.cc (create_key): use
2674         explicitKeySignatureVisibility for cancellation too. 
2675
2676         * lily/font-config.cc (init_fontconfig): don't close file if
2677         f==NULL. 
2678
2679 2006-05-15  Erlend Aasland  <erlenda@gmail.com>
2680
2681         * Documentation/topdocs/NEWS.tely: niente and rotation news
2682
2683 2006-05-14  Erlend Aasland  <erlenda@gmail.com>
2684
2685         * lily/include/stencil.hh
2686         * lily/stencil.cc (rotate): new function. Makes it possible
2687         to rotate a stencil around a given offset.
2688
2689         * lily/grob.cc (get_print_stencil): add rotation support
2690
2691         * lily/stencil-interpret.cc (interpret_stencil_expression):
2692         add rotation support
2693
2694         * lily/stencil-scheme.cc (ly:stencil-rotate): new function
2695
2696         * scm/define-grob-properties.scm: add 'rotation property
2697
2698         * scm/define-markup-commands.scm: add rotate markup command
2699         
2700         * scm/output-ps.scm: add rotation support in PostScript backend
2701
2702         * scm/output-svg.scm: add rotation support in SVG backend
2703
2704 2006-05-13  Graham Percival  <gpermus@gmail.com>
2705
2706         * Documentation/user/music-glossary.itely: French correction.
2707
2708         * Documentation/user/programming-interface.itely: major
2709         new docs, some reorg, some info from Nicolas.
2710
2711         * Documentation/user/ various: small fixes.
2712
2713 2006-05-12  Mats Bengtsson  <mabe@s3.kth.se>
2714
2715         * Documentation/user/programming-interface.itely (Markup
2716         programmer interface): Remove duplicate text.
2717
2718 2006-05-12  Graham Percival  <gpermus@gmail.com>
2719
2720         * Documentation/user/context-example.eps: new file.
2721
2722         * Documentation/user/changing-defaults.itely: set up file to
2723         use eps image.
2724
2725         * Documentation/user/programming-interface.itely: changes
2726         from mailist.
2727
2728 2006-05-12  Han-Wen Nienhuys  <hanwen@lilypond.org>
2729
2730         * configure.in (LINK_GXX_STATICALLY): python 2.4 req.
2731
2732 2006-05-11  Graham Percival  <gpermus@gmail.com>
2733
2734         * Documentation/user/programming-interface.itely: first round of
2735         editing and merging emails from Nicolas.
2736
2737         * Documentation/user/scheme-tutorial: minor edit.
2738
2739 2006-05-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
2740
2741         * python/musicxml.py (Xml_node.__init__): _attribute_dict stores
2742         XML attributes.
2743         (Xml_node.message): use it.
2744
2745         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): 
2746         oops. Add duration argument.
2747
2748 2006-05-10  Joe Neeman  <joeneeman@gmail.com>
2749
2750         * lily/paper-column-engraver.cc (make_columns):
2751         * scm/define-grobs.scm: Revert my previous change and set the default
2752         in define-grobs.scm instead.
2753
2754 2006-05-09  Graham Percival  <gpermus@gmail.com>
2755         
2756         * Documentation/user/changing-defaults.itely: general editing,
2757         info about \set and \override.
2758
2759         * Documentation/user/tweaking.itely, advanced-notation.itely:
2760         fixes from Dave Luttinen, thanks!
2761
2762 2006-05-09  Joe Neeman  <joeneeman@gmail.com>
2763
2764         * lily/paper-column-engraver.cc (make_columns): By default, a column
2765         needs to be breakable.
2766
2767 2006-05-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
2768
2769         * scripts/musicxml2ly.py (musicxml_clef_to_lily): use new
2770         Attributes methods
2771         (musicxml_time_to_lily): idem
2772         (musicxml_key_to_lily): idem
2773         (instrument_drumtype_dict): dict for supported drumtypes.
2774         (LilyPondVoiceBuilder.__init__): new class: sanely keep track of
2775         moments and pending mm rests
2776         (musicxml_voice_to_lily_voice): rewrite to use LilyPondVoiceBuilder
2777         (musicxml_voice_to_lily_voice): strip KeyChangeEvents for drums.
2778         (musicxml_voice_to_lily_voice): add mode change.
2779         (option_parser): lxml.etree (http://codespeak.net/lxml/) for more
2780         speed and less memory usage (factor 5 to 10).
2781         (convert): write -defs.ly  and driver file separately so people
2782         can script their own part extraction.
2783
2784         * python/musicxml.py (minidom_demarshal_node): new function:
2785         separate minidom handling.
2786         (lxml_demarshal_node): new function: support lxml.etree too.
2787         (Xml_node.message): new function: verbose error message, with XML
2788         path to offending node.
2789         (Attributes.get_measure_length): sane interface to MusicXML attributes.
2790         (Part_list.generate_id_instrument_dict): new method: collect
2791         instrument names, to be able to set drum_type.
2792         (Part.interpret): handle underfull measures
2793         (Part.interpret): assign instrument names.
2794
2795         * python/musicexp.py (Output_printer.close): new method
2796         (MusicWrapper.print_ly): new class: support other modes,
2797         eg. \drummode
2798         (BarCheck.print_ly): new class. Support bar checks, with comments
2799         and fancy barchecks. 
2800         (NoteEvent.__init__): also set drum_type for drum notes.
2801         (MultiMeasureRest.lisp_expression): dump mm rests.
2802
2803         * lily/paper-column-engraver.cc (stop_translation_timestep): set
2804         line-break-permission if forbidBreak is not set.
2805
2806 2006-05-09  Joe Neeman  <joeneeman@gmail.com>
2807
2808         * scm/define-context-properties.scm:
2809         * scm/define-grob-properties.scm:
2810         * scm/define-grobs.scm:
2811         * scm/define-music-display-methods.scm:
2812         * scm/define-music-properties.scm:
2813         * scm/define-music-types.scm:
2814         * scm/music-functions.scm:
2815         * ly/declarations-init.ly:
2816         * lily/include/constrained-breaking.hh:
2817         * lily/system.cc:
2818         * lily/spaceable-grob.cc:
2819         * lily/simple-spacer.cc:
2820         * lily/paper-score.cc:
2821         * lily/paper-column.cc:
2822         * lily/paper-column-engraver.cc:
2823         * lily/item.cc:
2824         * lily/gourlay-breaking.cc:
2825         * lily/constrained-breaking.cc:
2826         * python/convertrules.py:
2827         Change "penalty", "page-penalty" and "breakable" to "line-break-penalty",
2828         "page-break-penalty" and "line-break-permission".
2829         Add "page-break-permission", "page-turn-permission" and "page-turn-penalty".
2830         Replace BreakEvent with LineBreakEvent, PageBreakEvent and PageTurnEvent.
2831
2832         * lily/bar-engraver.cc:
2833         * lily/beam-engraver.cc:
2834         * lily/forbid-break-engraver.cc:
2835         * lily/ligature-engraver.cc:
2836         * lily/paper-column-engraver.cc:
2837         * lily/percent-repeat-engraver.cc:
2838         * lily/score-engraver.cc:
2839         * lily/score-engraver.hh:
2840         * lily/paper-column-engraver.hh:
2841         Inter-engraver communication regarding line breaks is done through context
2842         properties (Score.forbidBreak) instead of function calls.
2843
2844 2006-05-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
2845
2846         * VERSION (PACKAGE_NAME): release 2.9.4
2847
2848 2006-05-08  Graham Percival  <gpermus@gmail.com>
2849
2850         * Documentation/user/working.itely: proofreading from Dave
2851         Luttinen, thanks.
2852
2853         * Doucmentation/user/README.txt: updated with manual style info.
2854
2855         * Documentation/user/ various: trim linewidth to 78 chars.
2856
2857 2006-05-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
2858
2859         * scm/define-grob-properties.scm (all-internal-grob-properties):
2860         remove chord-tremolo property.
2861
2862         * lily/beam.cc (get_beam_segments): don't use stem position as
2863         base for broken ends.
2864
2865 2006-05-06  Graham Percival  <gpermus@gmail.com>
2866
2867         * Documentation/user/putting.itely: proofreading from Dave
2868         Luttinen, thanks!
2869
2870         * Documentation/user/ various: more reorg and clarifications.
2871
2872 2006-05-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
2873
2874         * scm/lily.scm (TEX_STRING_HASHLIMIT): move from framework-texstr.scm.
2875
2876         * ly/music-functions-init.ly: new function featherDurations
2877
2878         * lily/beam.cc: read grow-direction for feathered beaming.
2879
2880         * Documentation/topdocs/NEWS.tely (Top): typo.
2881
2882 2006-05-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
2883
2884         * lily/include/beam.hh (struct Beam_stem_segment): add gapped_ for
2885         tremolo beams.
2886
2887 2006-05-05  Erik Sandberg  <mandolaerik@gmail.com>
2888         * lily/context.cc, lily/global-context.cc: Added 'unique' member,
2889         used by music streams.
2890
2891         * lily/dispatcher.cc, lily/dispatcher-scheme.cc,
2892         lily/stream-event.cc, lily/stream-event-scheme.cc,
2893         lily/listener.cc, lily/scheme-listener.cc,
2894         lily/scheme-listener-scheme.cc, lily/include/dispatcher.hh,
2895         lily/include/stream-event.hh, lily/include/listener.hh,
2896         lily/include/scheme-listener.hh, scm/define-event-classes.scm:
2897         Created data structures for music streams.
2898         
2899 2006-05-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
2900
2901         * lily/beam.cc (get_beam_segments): new function. Reorganise the
2902         construction of a beam. 
2903         (print): rewrite. 
2904
2905         * flower/include/std-vector.hh (default_compare): use only one comparison.
2906
2907         * scm/define-markup-commands.scm (note-by-number): remove debug display.
2908         (note-by-number): further attachment fixes.
2909
2910         * scm/lily-library.scm (ordered-cons): new function.
2911         (interval-index): new function
2912
2913         * lily/note-head-scheme.cc (LY_DEFINE): new file.
2914
2915         * lily/note-head.cc (get_stem_attachment): new function.
2916
2917         * scm/define-markup-commands.scm (note-by-number): read 'style
2918         property. 
2919
2920         * input/regression/markup-note.ly: show note-head style option.
2921
2922         * mf/feta-bolletjes.mf (overdone_heads): fix attachment points for
2923         triangle head.
2924
2925 2006-05-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
2926
2927         * mf/GNUmakefile (NCSB_OTFS): remove old ncsb detection further.
2928
2929         * configure.in (LINK_GXX_STATICALLY): fix for ncsb detection.
2930
2931         * lily/include/constrained-breaking.hh: GCC 4 fix.
2932
2933 2006-05-04  Joe Neeman  <joeneeman@gmail.com>
2934
2935         * lily/simple-spacer.cc: Remove class Simple_spacer_wrapper.
2936         Replace it with functions get_line_forces and get_line_configuration.
2937         (class Simple_spacer): Make data private.
2938         Rewrite compression algorithm to be faster and simpler.
2939
2940         * lily/simple-spacer-scheme.cc (ly_solve_rod_and_spring_problem):
2941         * lily/gourlay-breaking.cc (solve):
2942         * lily/constrained_breaking.cc (space_line):
2943         Change it to the new simple-spacer code.
2944
2945         * lily/paper-score.cc (get_paper_systems):
2946         (Paper_score):
2947         (process):
2948         Delay breaking the systems until they are requested.
2949         (find_break_indices):
2950         Use vsize for indices.
2951         (calc_breaking):
2952         Move the "Calculating line breaks" message here.
2953
2954         * lily/system.cc (pre_processing):
2955         Move the "Calculating line breaks" message away from here.
2956         (break_into_pieces):
2957         Allow multiple calls to this function in sequence (with touching-but-
2958         not-overlapping breakpoints).
2959
2960         * lily/constrained-breaking.cc:
2961         Replace most of the get_XXXX functions with get_line_details.
2962         Only calculate the force for each line. Calculate configurations only
2963         for the lines we will actually use.
2964         Replace cols_ with lines_.
2965
2966 2006-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2967
2968         * mf/GNUmakefile (depth): remove FC_FIND.
2969
2970         * config.make.in (NCSB_SOURCE_FILES): subst NCSB_SOURCE_FILES
2971
2972         * configure.in (LINK_GXX_STATICALLY): call fc-match from within configure.
2973
2974         * scm/framework-ps.scm (write-preamble): new function.
2975         (write-preamble): load mac fonts via fondu, even if gs-font-load
2976         is set.
2977
2978 2006-05-03  Werner Lemberg  <wl@gnu.org>
2979
2980         * mf/GNUmakefile (FC_FIND): Fix typo.
2981
2982 2006-05-03  Erlend Aasland  <erlenda@gmail.com>
2983
2984         * stepmake/stepmake/generic-targets.make (cvs-clean): also remove out-www dirs.
2985
2986 2006-05-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
2987
2988         * stepmake/aclocal.m4: run python-config for crosscompiling
2989         flags. 
2990
2991         * scripts/lilypond-book.py (Lilypond_file_snippet.my_system): add
2992         -f png for HTML, TEXINFO formats. 
2993
2994         * input/tutorial/lbook-html-test.html: new file.
2995
2996         * lily/include/tie-formatting-problem.hh (class
2997         Tie_formatting_problem): index Chord_outline_map by Tuple2 for
2998         [column, direction]. This fixes laissez vibrer ties.
2999  
3000         * flower/include/tuple.hh (struct Tuple2): new file.
3001
3002         * mf/GNUmakefile (FC_FIND): new function. Find ncsb using
3003         $(FCMATCH), only if $(NCSB_DIR) not set. 
3004
3005         * configure.in (LINK_GXX_STATICALLY): only warn if $NCSB_DIR set.
3006
3007         * config.make.in (DOCUMENTATION): set FCMATCH.  
3008
3009         * autogen.sh (srcdir): don't set --with-ncsb-dir. 
3010
3011 2006-05-03  Graham Percival  <gpermus@gmail.com>
3012
3013         * Documentation/user/ various: final round of reorg.
3014
3015         * Documentation/user/instrument-notation.itely: some more
3016         fixes from Eduardo, thanks!
3017
3018 2006-05-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
3019
3020         * VERSION (PACKAGE_NAME): release 2.9.3
3021
3022         * flower/file-path.cc (is_dir): canonicalize file name before stat'ing.
3023
3024         * lily/relocate.cc (framework_relocation): remove old relocation stuff.
3025
3026 2006-05-01  Mats Bengtsson  <mabe@s3.kth.se>
3027
3028         * scm/define-grob-properties.scm (all-user-grob-properties):
3029         Correct typo, thanks to Eduardo.
3030
3031 2006-05-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
3032
3033         * scripts/GNUmakefile (SEXECUTABLES): remove lilypond-ps2png.scm
3034
3035         * buildscripts/lilypond-words.py (F): indent fix.
3036
3037         * input/regression/tie-arpeggio-collision.ly: new file.
3038
3039         * lily/tie-formatting-problem.cc (set_column_chord_outline): new
3040         function: store outlines per column rank.
3041
3042         * lily/include/tie-configuration.hh (class Tie_configuration): add
3043         column_ranks_ to specification and configuration, to distinguish
3044         between ties for different heads in arpegiated chords.
3045
3046         * lily/relocate.cc (framework_relocation): use INSTALLER_PREFIX.
3047
3048         * *.py: more 4 space indents.
3049
3050         * autogen.sh (conf_flags): set sensible default for with-ncsb-dir
3051
3052 2006-05-01  Joe Neeman  <joeneeman@gmail.com>
3053
3054         * scm/lily-library.scm: Fix guile 1.6 compatibility in inf? and nan?
3055
3056 2006-05-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
3057
3058         * buildscripts/pfx2ttf.fontforge (err): create OTF files.
3059
3060         * scripts/abc2ly.py (dump_score): indent of 4 for python code. 
3061
3062         * configure.in (LINK_GXX_STATICALLY): remove locate() call.
3063
3064 2006-04-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3065
3066         * python/convertrules.py (conv): indent 4 for python files.
3067
3068 2006-04-29  Mats Bengtsson  <mabe@s3.kth.se>
3069
3070         * Documentation/user/changing-defaults.itely (Creating contexts):
3071         Clarify \new semantics.
3072
3073 2006-04-28  Graham Percival  <gpermus@gmail.com>
3074
3075         * Documentation/user/ various: major new sections in the
3076         Learning manual, slight reorg elsewhere.
3077
3078 2006-04-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
3079
3080         * mf/GNUmakefile (MFTRACE_FLAGS): add $(outdir) to $(ENCODING_FILE) 
3081
3082         * scm/framework-ps.scm (output-framework): remove PageMedia
3083
3084 2006-04-27  Graham Percival  <gpermus@gmail.com>
3085
3086         * Documentation/user/ tweaks.itely, working.itely: new
3087         files, being more advanced "learning manual" chapters.
3088
3089         * Documentation/user/ tutorial, putting, lilypond: reorg.
3090
3091 2006-04-26  Graham Percival  <gpermus@gmail.com>
3092
3093         * input/regression/lyric-combine-polyphonic.ly: fixed test
3094         (no more "can't find context `one'" error).
3095
3096 2006-04-25  Joe Neeman <joeneeman@gmail.com>
3097
3098         * lily/stem-tremolo.cc (print): fix whole note tremolo placement
3099
3100         * input/regression/stem-tremolo.ly: add 2 more whole note examples
3101         
3102 2006-04-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3103
3104         * lily/relocate.cc (read_relocation_dir): new function.
3105
3106 2006-04-26  Graham Percival  <gpermus@gmail.com>
3107
3108         * Documentation/user/instrument-notation.itely: a few more fixes
3109         from Eduardo, thanks!
3110
3111         * Documentation/user/README.txt: new file; contains info on
3112         style that used to be in lilypond.tely.
3113
3114         * Documentation/user/ various: first round of doc reorg.
3115
3116         * Documentation/user/baer-flat-bw.png: remove alpha bit from
3117         graphic; this probably causes problems on some pdf
3118         viewers, notably Adobe Acrobat.
3119
3120 2006-04-24  Graham Percival  <gpermus@gmail.com>
3121
3122         * Documentation/user/instrument-notation.itely: many alterations
3123         to Vocal music, from Eduardo Viera.
3124
3125 2006-04-23  Graham Percival  <gpermus@gmail.com>
3126
3127         * Documentation/user/instrument-notation.itely: fix \new
3128         instead of \context problem.
3129
3130 2006-04-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3131
3132         * lily/relocate.cc (expand_environment_variables): new function.
3133         (read_line): id.
3134         (read_relocation_file): id.
3135
3136         * scm/stencil.scm (eps-file->stencil): fix EPS PS embedding code 
3137
3138 2006-04-21  Erlend Aasland  <erlenda@gmail.com>
3139
3140         * ly/engraver-init.ly: remove old comments from TabVoice
3141
3142 2006-04-20  Graham Percival  <gpermus@gmail.com>
3143
3144         * Documentation/user/instrument-notation.itely: added Erlend's
3145         latest doc patch, thanks!
3146
3147 2006-04-19  Erlend Aasland <erlenda@gmail.com>
3148
3149         * lily/include/slur.hh:
3150         * lily/slur.cc:
3151         * lily/phrasing-slur-engraver.cc:
3152         * lily/slur-engraver.cc: Fix 'cut & paste' code by merging
3153         acknowledge_extra_object () from Phrasing_slur_engraver:: and
3154         Slur_engraver:: and putting it in
3155         Slur::auxiliary_acknowledge_extra_object ().
3156
3157         * ps/music-drawing-routines.ps (draw_dashed_slur): fix another bug
3158
3159         * lily/note-collision.cc: fix a comment
3160
3161 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
3162
3163         * stepmake/bin/add-html-footer.py: fix footer position in
3164         generated html files: before </body> and </html> tags.
3165
3166 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
3167
3168         * scripts/GNUmakefile: revert last "fix", which rather broke make.
3169         Earlier successive `make' commands finally compiled ok.
3170
3171         * Documentation/topdocs/INSTALL.texi: require mftrace 1.1.19.
3172
3173 2006-04-18  Erlend Aasland <erlenda@gmail.com>
3174
3175         * lily/include/stem-tremolo.hh:
3176         * lily/stem-tremolo.cc: move rotated_box () to Lookup:: and update
3177         callers.
3178
3179         * lily/lookup.cc:
3180         * lily/include/lookup.hh: add rotated_box ()
3181
3182 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
3183
3184         * scripts/GNUmakefile: bugfix: run help2man only after scripts have 
3185         been generated. Fixes "can't get `--help'" bug after make clean.
3186
3187         * THANKS: alphabetize contributors.
3188
3189 2006-04-17  Graham Percival  <gpermus@gmail.com>
3190
3191         * Documentation/user/instrument-notation.itely: added Erlend's
3192         tabs and banjo doc patch.  Thanks!
3193
3194 2006-04-17  Erlend Aasland  <erlenda@gmail.com>
3195
3196         * scm/define-grobs.scm: fix stem-attachment for tablature note heads.
3197
3198         * ps/music-drawing-routines.ps (draw_dashed_line): fix dash pattern bug.
3199
3200         * scm/output-lib.scm: add some more predefined string tunings.
3201
3202         * Documentation/user/instrument-notation.itely: and doc them.
3203
3204 2006-04-16  Jürgen Reuter  <reuter@ipd.uka.de>
3205
3206         * ly/engraver.ly: Remove obsolete comments.
3207
3208         * ly/gregorian-init.ly: Define default layout block.
3209
3210         * input/puer-fragment.ly: Updated and extended.
3211
3212 2006-04-15  Jan Nieuwenhuizen  <janneke@gnu.org>
3213
3214         * lily/lily-parser-scheme.cc: Use them to fix --output=DIR/BASE
3215         pdf conversion behaviour.
3216
3217         * flower/file-name.cc (dir_name)
3218         (get_working_directory): Move from relocate.cc.
3219
3220         * lily/relocate.cc (setup_paths): Remove rogue stat calls.
3221         
3222         * lily/relocate.cc: Encapsulate sys/stat.h in
3223         HAVE_STAT_H.
3224
3225 2006-04-14  Graham Percival  <gpermus@gmail.com>
3226
3227         * Documentation/user/ various: small updates from Cameron
3228         and Juergen, thanks!
3229
3230         * Documentation/user/ various: small updates of my own.
3231
3232         * THANKS: 2.7 -> 2.8.
3233
3234 2006-04-11  Graham Percival  <gpermus@gmail.com>
3235
3236         * scm/define-context-properties.scm: typo.
3237
3238         * Documentation/user/ : many more small updates.
3239
3240 2006-04-13  Jürgen Reuter  <reuter@ipd.uka.de>
3241
3242         * scm/define-music-types.scm: disposed "docme".
3243
3244 2006-04-11  Erlend Aasland  <erlenda@gmail.com>
3245
3246         * lily/hairpin.cc: make niente circles a bit smaller.
3247
3248 2006-04-10  Erlend Aasland  <erlenda@gmail.com>
3249
3250         * mf/GNUmakefile: remove redundant mftrace check. Also remove
3251         get-pfa and get-*-fonts targets.
3252
3253 2006-04-10  Graham Percival  <gpermus@gmail.com>
3254
3255         * THANKS, Documentation/user/ basic-notation, advanced-notation,
3256         music-glossary, programming-interface: more minor fixes
3257         from mailist.
3258
3259         * scm/define-grob-properties.scm: clarified direction, thanks Mats!
3260
3261         * scm/define-context-properties.scm: another old \property update.
3262         This time tested for compiling!
3263
3264 2006-04-10  Erlend Aasland  <erlenda@gmail.com>
3265
3266         * mf/GNUmakefile: fix for mftrace version >= 1.2.0
3267
3268 2006-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
3269
3270         * scm/define-context-properties.scm (all-user-translation-properties): 
3271         * Documentation/user/global.itely (Page formatting): Compile fix.
3272
3273 2006-04-09  Mats Bengtsson  <mabe@s3.kth.se>
3274
3275         * Documentation/user/advanced-notation.itely (Polymetric
3276         notation): Update the example to use the "+" symbol and add link
3277         to input/test/compound-time.ly.
3278
3279 2006-04-08  Graham Percival  <gpermus@gmail.com>
3280
3281         * scm/define-grob-properties.scm: clarify docs for #'direction.
3282
3283         * scm/define-context-properties.scm: update old \property override.
3284
3285         * Documentation/user/ advanced-notation, global, lilypond-book:
3286         more minor doc updates.
3287
3288 2006-04-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
3289
3290         * lily/parser.yy (Generic_prefix_music_scm): append lists, not objects.
3291
3292         * scm/backend-library.scm (search-gs): oops.
3293
3294 2006-04-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
3295
3296         * scripts/lilypond-book.py (output): use base, not filename for href.
3297
3298         * scm/backend-library.scm: only look for gs.
3299
3300         * scripts/lilypond-book.py (output): fix printfilename.
3301
3302         * lily/parser.yy (music_function_musicless_prefix): fold together
3303         definitions of signature (SCM*) (Music|post_event|chord_body_element)
3304
3305         * lily/slur.cc (print): only set font-size if not set yet.
3306
3307         * lily/slur-configuration.cc (add_score): improved layout of debug
3308         scoring output.
3309
3310 2006-04-05  David Feuer  <David.Feuer@gmail.com>
3311
3312         * music-drawing-routines.ps (draw_round_box): removed testing artifact.
3313         (draw_circle): Hopefully fixed regression.
3314         Improved documentation for several procedures.
3315         
3316 2006-03-04  Werner Lemberg  <wl@gnu.org>
3317
3318         * ly/engraver-init.ly (\Score): Add beam-event to quotedEventTypes.
3319
3320 2006-04-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
3321
3322         * scripts/musicxml2ly.py (bindir): add dynamic
3323         relocation. 
3324
3325 2006-04-04  Graham Percival  <gpermus@gmail.com>
3326
3327         * Documentation/user/ basic-notation, advanced-notation, putting,
3328         instrument-notation, invoking, lilypond, THANKS: another ream of small
3329         fixes from the Doc Helpers.
3330
3331 2006-04-03  David Feuer  <David.Feuer@gmail.com>
3332
3333         * music-drawing-routines.ps: remove superfluous gsave/grestore pairs.
3334
3335         * lilyponddefs.ps (set-ps-scale-to-lily-scale): Fixed code duplication.
3336
3337         * Cleaned up interfaces between PostScript and Scheme, and moved
3338         computations from PostScript to Scheme:
3339
3340         * music-drawing-routines.ps
3341         (*SF, stroke_and_fill): new procedures.  Replaced stroke and fill
3342         with stroke_and_fill throughout.
3343         (euclidean_length, print_letter, draw_box): Deleted unused
3344         procedures.  If someone needs draw_box, implement it using
3345         draw_round_box; don't duplicate code.
3346         (print_glyphs, draw_round_box, draw_polygon, draw_repeat_slash):
3347         Refactored/cleaned up interfaces.
3348         (mark_URI): Moved.
3349
3350         * output-ps.scm: reordered arguments to PostScript functions to
3351         match new interfaces
3352         (glyph-string): Rewrote glyph-string.
3353         (grob-cause): Replaced string-append with format.
3354         (repeat-slash): Rewrote to do computation here.
3355         (round-filled-box): Rewrote to do computation here.
3356
3357 2006-04-04  Erlend Aasland  <erlenda@gmail.com>
3358
3359         * stepmake/stepmake/generic-targets.make: add cvs-clean target
3360
3361         * stepmake/stepmake/toplevel- targets.make: print help info about
3362         cvs-clean
3363
3364 2006-04-03  Erlend Aasland  <erlenda@gmail.com>
3365
3366         * input/regression/hairpin-circled.ly: new file
3367
3368 2006-04-03  Erlend Aasland  <erlenda@gmail.com>
3369
3370         * lily/hairpin.cc (print): add support for circled tip
3371
3372         * scm/define-grob-properties.scm: add circled-tip parameter
3373
3374         * scm/define-grobs.scm: init circled-tip to false
3375         
3376 2006-04-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
3377
3378         * scm/music-functions.scm (quote-substitute): set
3379         iterators-ctor. 
3380
3381 2006-03-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
3382
3383         * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): set
3384         BSTINPUTS. 
3385
3386         * Documentation/topdocs/AUTHORS.texi (Top): add David Feuer.
3387
3388         * scm/output-ps.scm (glyph-string): revert cid selectfont.
3389
3390 2006-03-31  David Feuer  <david.feuer@gmail.com>
3391         
3392         * scm/framework-ps.scm:
3393         
3394         * scm/output-ps.scm: glyph-string now produces smaller, more
3395         readable, and probably faster PostScript.  Several findfont
3396         scalefont setfont instances changed to selectfont
3397         Hacked-up string-appends changed to formats.
3398
3399         * ps/music-drawing-routines.ps: add print_letter, print_glyphs.
3400         
3401 2006-03-30  Graham Percival  <gpermus@gmail.com>
3402
3403         * scm/lily-library.scm: make "no version" warning message more polite.
3404
3405         * lily/music.cc: add double quotes to failed octave check.
3406
3407         * Documentation/user/ advanced-notation, changing-defaults,
3408         instrument-notation, invoking, music-glossary: whole bunch of minor
3409         fixes from mailist.
3410
3411 2006-03-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
3412
3413         * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): use
3414         $(buildscriptdir) iso. depth.
3415
3416         * VERSION (PACKAGE_NAME): release 2.9.1
3417
3418 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
3419
3420         * lily/pango-font.cc (pango_item_string_stencil): more robustness.
3421
3422         * VERSION (PATCH_LEVEL): bump version number.
3423
3424         * flower/include/guile-compatibility.hh (scm_from_uint32): add
3425         scm_from_uint32 ()
3426
3427         * lily/pango-font.cc (pango_item_string_stencil): use
3428         scm_from_uint32 ()
3429
3430         * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
3431         $(outdir)/emmentaler-%.svg): remove canary.
3432
3433         * lily/pango-font.cc (pango_item_string_stencil): only use uXXX
3434         glyphnames if we have a ttf font.
3435
3436 2006-03-30  Mats Bengtsson  <mabe@s3.kth.se>
3437
3438         * Documentation/user/advanced-notation.itely (Font selection):
3439         Corrected reference to the font-family-override.ly example.
3440
3441 2006-03-30  Joe Neeman  <joeneeman@gmail.com>
3442         
3443         * lily/chord-tremolo-engraver.cc (acknowledge_stem): set the
3444         stem-tremolo object in the stem (or else the stem might not be
3445         long enough).
3446
3447 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
3448
3449         * lily/ttf.cc (print_trailer): only print existing glyphs.
3450
3451 2006-03-30  Joe Neeman  <joeneeman@gmail.com>
3452
3453         * lily/stem-tremolo.cc (print): for whole notes (and breves, etc.)
3454         position the tremolo based on the position of the notehead.
3455
3456         * input/regression/stem-tremolo.ly: add example of unbeamed eighth
3457         notes and update the texidoc line with the new positioning rules.
3458         
3459 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
3460
3461         * lily/ttf.cc (print_trailer): don't always use uXXX glyphname.
3462
3463         * scripts/lilypond-book.py (Module): set default for linewidth if
3464         preamble not found.
3465
3466 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
3467
3468         * VERSION (PACKAGE_NAME): release 2.9.0.
3469
3470         * input/regression/stem-tremolo-position.ly: new file.
3471
3472         * lily/stem-tremolo.cc: remove Stem_tremolo::dim_callback
3473
3474 2006-03-28  Joe Neeman  <joeneeman@gmail.com>
3475
3476         * lily/stem-tremolo.cc (print): position
3477         the tremolo depending only on the end of the stem
3478         and not on the notehead
3479         (raw_stencil): center, on the middle staff line, the
3480         flag that is closest to the end of the stem (previously
3481         the bottom flag)
3482         (calc_width): add this callback to shorten a tremolo when
3483         it is beamed or it is stemup with a flag
3484         (style): add this callback to make a tremolo rectangular when
3485         it is beamed or it is stemup with a flag
3486         (rotated_box): this is like Lookup::beam but makes a rotated
3487         rectangle instead of a parallelogram
3488
3489         * lily/stem.cc (calc_stem_info): make sure the stem
3490         is long enough to fit the tremolo
3491         (calc-length): reduce the length of tremolo stems since the
3492         tremolo code is now capable of better positioning
3493
3494         * scm/define-grobs.scm: make calc_width the default beam-width
3495         callback for stem-tremolo and add the style callback
3496                 
3497 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
3498
3499         * lily/tuplet-bracket.cc (calc_control_points): handle suicide
3500         case. 
3501
3502 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
3503
3504         * lily/ttf.cc (make_index_to_charcode_map): restore old
3505         cmap. 
3506
3507 2006-03-28  Werner Lemberg  <wl@gnu.org>
3508
3509         * lily/pango-font.cc (get_unicode_name): Fix `uXXXXX' glyph names.
3510
3511 2006-03-28  Graham Percival  <gpermus@gmail.com>
3512
3513         * THANKS: update for 2.9, add section for Documentation helpers.
3514
3515         * Documentation/topdocs/NEWS.tely: compile fix.
3516
3517         * Documentation/user/ basic-notation, global, advanced-notation,
3518         examples.itely: minor fixes from mailist.
3519
3520 2006-03-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
3521
3522         * mf/feta-bolletjes.mf: match width of solfa notes with normal
3523         note heads. 
3524
3525         * lily/ttf.cc (print_trailer): use it.
3526
3527         * lily/pango-font.cc (get_unicode_name): new function.
3528
3529         * lily/ttf.cc (make_index_to_charcode_map): move function from
3530         open-type-font.cc
3531         (print_trailer): substitute uniXXXX name if applicable. 
3532
3533         * lily/pango-font.cc (get_index_to_charcode_map): new function.
3534         (pango_item_string_stencil): use it to generate uniXXXX names.
3535
3536         * mf/feta-bolletjes.mf (overdone_heads): add small style (ugly)
3537         note heads, for uniform widths in shape note output.
3538         (overdone_heads): hmm. remove them again.
3539
3540         * scripts/lilypond-book.py (output): add links to filenames.
3541
3542         * Documentation/topdocs/INSTALL.texi (Top): update versions.
3543
3544         * lily/note-collision.cc (get_clash_groups): only consider when
3545         Note_column::dir <> CENTER. 
3546
3547         * scripts/lilypond-book.py (get_option_parser): init output_name
3548         to ''. 
3549
3550 2006-03-24  Graham Percival  <gpermus@gmail.com>
3551
3552         * Documentation/topdocs/NEWS.tely: add @end itemize
3553
3554         * Documentation/user/ global, advanced-notation: minor
3555         stuff from mailist.
3556
3557 2006-03-23  Graham Percival  <gpermus@gmail.com>
3558
3559         * Documentation/user/ lilypond.tely, music-glossary,
3560         preface: housekeeping; 2005->2006, remove "notes for 2.6"
3561
3562 2006-03-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
3563
3564         * mf/GNUmakefile: don't install .enc files.
3565
3566         * Documentation/topdocs/NEWS.tely: clear for 2.9 cycle.
3567
3568         * VERSION (PATCH_LEVEL): bump to 2.9.0
3569
3570 2006-03-22  Graham Percival  <gpermus@gmail.com>
3571
3572         * Documentation/user/advanced-notation.itely: minor fixes
3573         from mailist.
3574
3575 2006-03-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
3576
3577         * Documentation/topdocs/AUTHORS.texi (Top): add Joe Neeman.
3578
3579         * branch lilypond_2_8
3580
3581 2006-03-22  Han-Wen Nienhuys  <lilydev@localhost.localdomain>
3582
3583         * scripts/lilypond-book.py (samefile): new function, for windoze
3584         compatibility.
3585
3586 2006-03-21  Graham Percival  <gpermus@gmail.com>
3587
3588         * ly/engraver-init.ly: add info about StaffGroup.
3589
3590 2006-03-21  Han-Wen Nienhuys  <lilydev@localhost.localdomain>
3591
3592         * input/regression/stem-direction-context.ly: idem.
3593
3594         * Documentation/topdocs/NEWS.tely (Top): fix interpolation example.
3595
3596         * THANKS: add Mats.
3597
3598         * input/regression/page-layout-twopass.ly: comment out \markup so
3599         tweak-file is left.
3600
3601         * lily/instrument-name-engraver.cc (finalize): add to instrument
3602         name global System. This also fixes chopped instrument names, but
3603         doesn't crash when there are slurs/beams.
3604
3605         * lily/slur-configuration.cc (add_score): disallow negative slur
3606         scores.
3607         
3608 2006-03-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3609
3610         * scm/framework-ps.scm (dump-stencil-as-EPS): remove debugging code.
3611
3612         * lily/instrument-name-engraver.cc (process_music): kludge: add
3613         InstrumentName spanner to axis group of left bound. Fixes chopped
3614         off instrument names in EPS images.
3615
3616         * input/regression/lyric-hyphen-retain.ly: elaborate explanation.
3617
3618         * scripts/abc2ly.py (option_parser): update to 2.7.40
3619
3620 2006-03-20  Graham Percival  <gpermus@gmail.com>
3621
3622         * THANKS: move small doc contributors to SUGGESTIONS.
3623
3624         * Documentation/user/ basic-notation, advanced-notation,
3625         global: small changes from mailist.
3626
3627 2006-03-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3628
3629         * Documentation/user/advanced-notation.itely (Text marks): update
3630         for new rehearsalMarkAlignSymbol convention.
3631
3632         * VERSION (PATCH_LEVEL): bump version.
3633
3634         * input/test/instrument-name-align.ly: new file.
3635
3636         * scm/define-markup-commands.scm (hcenter-in): add hcenter-in.
3637
3638         * input/test/instrument-name-align.ly: new file. Document how to
3639         align instrument names.
3640
3641         * lily/mark-engraver.cc: remove properties.
3642
3643         * scm/define-context-properties.scm
3644         (all-user-translation-properties): remove align symbol properties
3645         for barnumber/reh. mark.
3646
3647         * lily/break-align-interface.cc (self_align_callback): new
3648         interface, new function. Look at complete alignment. This handles
3649         tunable break alignments in case break-align-symbols are missing.
3650
3651         * lily/bar-number-engraver.cc (acknowledge_break_alignment): new function
3652
3653         * lily/mark-engraver.cc (acknowledge_break_alignment): new function.
3654
3655         * python/convertrules.py (conv): mark/bar number alignment rule.
3656
3657         * lily/break-align-interface.cc (calc_positioning_done): also
3658         store offset from last visible break-alignment to its
3659         neighbor. This makes alignment on non-visible objects more reliable.
3660
3661         * po/lilypond.pot (Module): ran po-replace.
3662
3663         * input/regression/tie-single-manual.ly (Module): new file.
3664
3665         * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
3666         look at has_manual_position_.
3667         (from_ties): set has_manual_position_ if tie has staff-position set.
3668
3669         * lily/tuplet-bracket.cc (calc_positions): idem.
3670
3671         * lily/tuplet-number.cc (print): don't print tupletnumber if it
3672         doesn't span time.
3673
3674 2006-03-19  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3675
3676         * scm/define-markup-commands.scm (smallCaps): new markup command
3677         for turning a text to small caps using smaller font size and upper
3678         casing.
3679
3680 2006-03-17  Graham Percival  <gpermus@gmail.com>
3681
3682         * Documentation/user/ examples, instrument-notation,
3683         advnaced-notation: minor fixes from mailist.
3684
3685 2006-03-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3686
3687         * Documentation/user/tutorial.itely (First steps): change example
3688         to verbatim.  
3689
3690 2006-03-17  Graham Percival  <gpermus@gmail.com>
3691
3692         * Documentation/user/ examples, advanced: minor changes from mailist.
3693
3694         * THANKS: add Geoff Horton, for documentation stuff.
3695
3696 2006-03-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3697
3698         * python/lilylib.py (system): revert have_select kludge.
3699
3700         * Documentation/user/tutorial.itely (Commenting input files):
3701         update version numbers in doc. 
3702
3703         * scm/define-grob-interfaces.scm (multi-measure-interface): add
3704         bound-padding to multi-measure-interface
3705
3706 2006-03-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3707
3708         * input/test/engraver-example.ily: update version number.
3709
3710         * VERSION (PACKAGE_NAME): release 2.7.39
3711
3712         * lily/note-spacing.cc (get_spacing): heighten threshold where
3713         accidentals/arpeggios influence previous spacing fully.
3714
3715         * lily/rest.cc (y_offset_callback): only use direction if
3716         staff-position wasn't set before.
3717
3718         * lily/bar-number-engraver.cc: add support for
3719         barNumberAlignSymbol. 
3720         add ADD_ACKNOWLEDGER() call for break_aligned. Fixes bar-number-breathe
3721
3722         * lily/pointer-group-interface.cc (set_ordered): new function. 
3723         (add_unordered_grob): new function.
3724
3725         * lily/grob-array.cc (Grob_array): grob-arrays are always assumed
3726         to ordered, unless the opposite has been proved.  This fixes
3727         random reordering of large object groups across linebreaks,
3728         eg. beams.
3729
3730         * lily/main.cc (do_chroot_jail): printf format fix.
3731
3732         * lily/tie-formatting-problem.cc (generate_configuration):
3733         multiply y-shift for dot with direction.
3734  
3735         * scm/define-markup-commands.scm (note-by-number): put (magstep
3736         size) in y-attach too.
3737
3738         * Documentation/topdocs/NEWS.tely (Top): show override.
3739
3740         * scm/define-grobs.scm (all-grob-descriptions): reinstate neutral
3741         direction for stems.
3742         
3743 2006-03-15  Graham Percival  <gpermus@gmail.com>
3744
3745         * Documentation/user/ changing-defaults, global: minor
3746         fixes from mailist.
3747
3748 2006-03-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3749
3750         * lily/lexer.ll (Lily_lexer): bump required version to 2.7.38
3751
3752         * lily/spacing-spanner.cc (musical_column_spacing): crude fix for
3753         breakable items after uniformly stretched notes.
3754
3755         * lily/tie-formatting-problem.cc (set_chord_outline): initialize
3756         outline with outer edge of note heads. This prevents infinity
3757         problems with tied whole notes.
3758
3759         * scripts/lilypond-book.py (do_file): use os.popen
3760
3761         * python/convertrules.py (conv): add rule for Stem #'beamed-*
3762
3763 2006-03-14 Erik Sandberg  <mandolaerik@gmail.com>
3764
3765         * Documentation/user/invoking.itely: Add ragged-right to bug report
3766         guidelines.
3767
3768 2006-03-14  Graham Percival  <gpermus@gmail.com>
3769
3770         * Documentation/user/global.itely: small fix from mailist.
3771
3772 2006-03-14  Mats Bengtsson  <mabe@s3.kth.se>
3773
3774         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use the
3775         file descriptor returned by tempfile.mkstemp() when writing
3776         to tmpfile and closing it. Solves problem with unlink(tmpfile)
3777         on mingw.
3778
3779 2006-03-14  Jan Nieuwenhuizen  <janneke@gnu.org>
3780
3781         * po/fi.po: newline bugfix.
3782
3783 2006-03-12  Jan Nieuwenhuizen  <janneke@gnu.org>
3784
3785         * scm/paper.scm (paper-alist): Rounding fixes.
3786
3787 2006-03-13  Graham Percival  <gpermus@gmail.com>
3788
3789         * Documentation/user/ changing-defaults, instrument-notation,
3790         tutorial: small fixes from mailist, mostly from Mats.  Thanks!
3791
3792 2006-03-13 Heikki Junes  <hjunes@cc.hut.fi>
3793
3794         * po/fi.po: update.
3795
3796 2006-03-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3797
3798         * stepmake/bin/add-html-footer.py (mail_address_url): don't add
3799         mailto: to http:// 
3800
3801         * python/lilylib.py (print_environment): move ps_page_count to
3802         lilypond-book.py
3803
3804 2006-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3805
3806         * Documentation/user/music-glossary.tely (G clef): fix clef alignments.
3807
3808         * scm/framework-ps.scm (embed-document): new function. Use to
3809         embed PFA files.
3810
3811         * ly/engraver-init.ly: init rehearsalMarkAlignSymbol to staff-bar.
3812
3813 2006-03-12  Mats Bengtsson  <mabe@s3.kth.se>
3814
3815         * Documentation/user/instrument-notation.itely (Setting simple
3816         songs): Added \book{...} around the full example, so the separate
3817         markups are included in the printed example. 
3818
3819 2006-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3820
3821         * scripts/lilypond-book.py (get_latex_textwidth): explicitly close
3822         tmphandle.
3823
3824         * python/lilylib.py (system): rewrite system() using
3825         subprocess. Remove >& redirection trickery.
3826
3827 2006-03-11  Graham Percival  <gpermus@gmail.com>
3828
3829         * Documentation/user/ changing-defaults, global, scheme-tutorial,
3830         notation-appendices.itely: minor fixes from mailist.
3831
3832 2006-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3833
3834         * Documentation/user/GNUmakefile ($(outdir)/lilypond.html):
3835         unsplit man also needs images.
3836
3837         * tex/texinfo.tex (sectionheading, q.v.): relax after \char'15.
3838
3839         * VERSION (PACKAGE_NAME): 2.7.38 released.
3840
3841 2006-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3842
3843         * scripts/lilypond-book.py (get_latex_textwidth): look for latex
3844         log in output dir.
3845
3846 2006-03-08  Johannes Schindelin  <Johannes.Schindelin@gmx.de>
3847
3848         * lily/audio-column.cc, lily/score-performer.cc: MIDI output now
3849         respects the Score.skipTypesetting property.
3850         
3851 2006-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3852
3853         * scm/framework-ps.scm (ps-embed-cff): no Setup section in
3854         Prolog. No %%EOF after CFF file.
3855
3856 2006-03-08  Joe Neeman  <joeneeman@gmail.com>
3857         
3858         * lily/constrained-breaking.cc (get_max_systems): used to return a
3859         much too big value
3860         (combine_demerits): use pointers to reduce copying data
3861         (calc_subproblem): idem
3862         (get_page_penalty): add page turn penalties
3863         
3864 2006-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3865
3866         * Documentation/user/invoking.itely (Invoking lilypond): better
3867         explanation of -e usage.
3868
3869         * lily/main.cc (main_with_guile): don't append to
3870         init_scheme_code_string
3871
3872         * tex/texinfo.tex (sectionheading, q.v.): don't center @image.
3873
3874         * Documentation/user/invoking.itely: add note about MacOS X scripts.
3875
3876         * scripts/convert-ly.py (do_options): don't print help for
3877         --show-rules rule.
3878
3879         * tex/texinfo.tex: patch texinfo.tex to leave single quotes in
3880         @code and @example. Update from texinfo.tex from CVS.
3881
3882 2006-03-08  Graham Percival  <gpermus@gmail.com>
3883
3884         * Documentation/user/scheme-tutorial.itely: clarifies distances
3885         measured in staff-spaces.
3886
3887 2006-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3888
3889         * lily/slur.cc (outside_slur_callback): only calculate offsets if
3890         consider[k] is true.
3891
3892         * scm/output-ps.scm (grob-cause): put numbers to ~$ (Thanks Johannes!)
3893
3894         * lily/spacing-basic.cc (standard_breakable_column_spacing): also
3895         consider columns that have originals.  Unifies spacing for mm
3896         rests around line breaks.
3897
3898         * lily/multi-measure-rest.cc (set_spacing_rods): read bound-padding.
3899         (set_text_rods): idem.
3900         (calculate_spacing_rods): new function: share code between
3901         set_text_rods and set_spacing_rods.
3902         (set_text_rods): take extents of bounds into account.  
3903
3904 2006-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3905
3906         * Documentation/user/basic-notation.itely (Writing music in
3907         parallel): don't use relative.
3908
3909 2006-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3910
3911         * ly/music-functions-init.ly (Module): add shiftDurations
3912
3913         * ly/drumpitch-init.ly (drumPitchNames): add tamtam.
3914
3915         * scm/paper.scm (paper-alist): no decimals for Ax paper sizes. 
3916
3917         * ly/engraver-init.ly: init vocalName to nil.
3918
3919 2006-03-05 Erik Sandberg  <mandolaerik@gmail.com>
3920
3921         * scm/music-functions.scm (music->make-music): bugfix,
3922         KeyChangeEvents are now handled correctly.
3923
3924         * scripts/lilypond-book.py: Add --debug option.
3925
3926 2006-03-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3927
3928         * python/lilylib.py: add tempfile.
3929
3930 2006-03-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3931
3932         * VERSION (PACKAGE_NAME): release 2.7.37
3933
3934         * python/lilylib.py (ps_page_count): remove make_ps_images().
3935         (ps_page_count): remove mkdir_p
3936         (system): remove cleanup_temp.
3937         (exit): remove lilypond_version_(check)
3938         (error_log): remove pseudo_filter_p
3939         remove read_pipe
3940         remove cp_to_dir
3941         remove identify
3942
3943         * scripts/lilypond-book.py (Lilypond_snippet.compose_ly): don't
3944         use __main__
3945
3946         * lily/accidental-engraver.cc (make_standard_accidental): only add
3947         support for side-axis is X_AXIS. Fixes text-spacing-accidental.ly
3948
3949         * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
3950         $(outdir)/emmentaler-%.svg): rewrite without functions; too many
3951         Make incompatibilities.
3952
3953         * scm/output-ps.scm (grob-cause): replace backslashes by /
3954         (glyph-string): use ~$ for less decimals for glyph-string and grob-cause.
3955
3956 2006-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
3957
3958         * cygwin/GNUmakefile: Install fixes.
3959
3960         * scripts/GNUmakefile (SEXECUTABLES): Install fix: remove mup2ly.
3961
3962         * lily/note-head.cc (head::get_balltype): Compile fix.
3963
3964         * flower/file-name.cc (dos_to_posix): Flower string fix.
3965
3966 2006-03-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3967
3968         * python/lilylib.py: pychecker cleanups.
3969
3970         * scripts/lilypond-book.py
3971         (Lilypond_snippet.output_print_filename): pychecker cleanups
3972
3973         * scripts/midi2ly.py (Key.dump): pychecker cleanups.
3974
3975         * python/lilylib.py (underscore): remove identify() , warranty()
3976
3977         * ps/music-drawing-routines.ps: change Border routine for GSView
3978         compatibility.
3979
3980         * lily/stem.cc (height): use quantize-positions.  This triggers
3981         set_stem_lengths, so scripts on beamed stems are handled correctly.
3982
3983         * lily/side-position-interface.cc (aligned_side): check if edges
3984         of script are inside staff. Fixes accent of edge of the staff.
3985
3986         * input/regression/staccato-pos.ly: more examples.
3987
3988         * stepmake/aclocal.m4 (depth): fix bashism.
3989
3990         * lily/lyric-combine-music-iterator.cc: move from
3991         new-lyric-combine-iterator.cc
3992         (process): add pending_grace_lyric_ member to delay lyrics on
3993         grace notes.
3994
3995         * lily/system-start-text.cc (print): suicide if we don't have any
3996         elements. Fixes hara kiri'd instrument names.
3997
3998         * scripts/mup2ly.py (Module): remove.
3999
4000 2006-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4001
4002         * Documentation/user/global.itely (A single music expression):
4003         close @lilypond properly
4004
4005         * lily/volta-bracket.cc (modify_edge_height): change from
4006         after_line_breaking_callback. Suicide last bracket if appropriate.
4007  
4008         * python/lilylib.py: strip getopt support
4009
4010         * scripts/etf2ly.py (do_options): use optparse
4011
4012         * scripts/midi2ly.py: optparse, strip lilylib copy. 
4013
4014         * scripts/abc2ly.py (voices): use optparse.
4015
4016         * stepmake/stepmake/generic-vars.make: new function absdir.
4017
4018         * scripts/convert-ly.py (bindir): use optparse, argv[0] relocation.
4019
4020         * scripts/lilypond-book.py (find_file): use global_options for
4021         include path
4022
4023         * scm/ps-to-png.scm (ps-page-count): prevent null characters
4024         entering C code.
4025
4026 2006-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4027
4028         * python/lilylib.py (get_global_option): ughness for extracting
4029         global options from lilylib.
4030         (NonDentedHeadingFormatter.format_heading): move from musicxml2ly
4031
4032         * scripts/lilypond-book.py (get_option_parser): use optparse for
4033         option handling.  Put options in global_options variable.
4034
4035 2006-02-28  Heikki Junes  <hjunes@cc.hut.fi>
4036
4037         * Documentation/index.html.in: clarify.
4038
4039 2006-02-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4040
4041         * scm/layout-page-layout.scm (write-page-breaks): add a
4042         music-system-heights property to the page layout output.
4043
4044         * scm/page.scm (make-page-stencil): take footer into account when
4045         computing the 'space-left page property
4046         (annotate-space-left): take footer into account when annonating
4047         space left.
4048
4049 2006-02-28  Graham Percival  <gpermus@gmail.com>
4050
4051         * Documentation/user/ advanced-notation, global: more (final)
4052         docs for music expressions, removed special fermatas.
4053
4054 2006-02-27  Graham Percival  <gpermus@gmail.com>
4055
4056         * Documentation/user/ basic-notation, global: minor changes
4057         from mailist.
4058
4059 2006-02-26  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4060
4061         * scm/framework-ps.scm:         
4062         * scm/lily-library.scm (nan?, inf?): Move guile 1.6 compatibility
4063         layer for inf? and nan? from framework-ps to lily-library.
4064
4065 2006-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4066
4067         * mf/GNUmakefile ($(outdir)/emmentaler-$(1).otf
4068         $(outdir)/emmentaler-$(1).svg): remove backslashes from define endef.
4069
4070         * buildscripts/substitute-encoding.py (Module): remove file.
4071
4072         * mf/GNUmakefile: more PFA strippage.
4073
4074         * mf/aybabtu.pe.in (i): remove PFAaybabtu generation
4075
4076         * buildscripts/gen-emmentaler-scripts.py (i): remove PFAemmentaler
4077         generation
4078
4079         * scm/framework-ps.scm: remove font name munging.
4080
4081         * Documentation/topdocs/INSTALL.texi (Top): bump GS requirement.
4082
4083 2006-02-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4084
4085         * scm/markup.scm (define-markup-command): change
4086         def-markup-command to define-markup-command
4087
4088         * scm/music-functions.scm (define-music-function): change
4089         def-music-function to define-music-function.
4090
4091         * python/convertrules.py (conv): rules for def-music-function
4092         and def-markup-commands
4093
4094         * Documentation/user/programming-interface.itely,
4095         input/no-notation/display-lily-tests.ly,
4096         input/regression/lily-in-scheme.ly,
4097         input/regression/markup-user.ly,
4098         input/regression/music-function.ly, input/regression/tie-chord.ly,
4099         scm/fret-diagrams.scm, ly/music-functions-init.ly,
4100         ly/gregorian-init.ly: use new macro names (define-music-function,
4101         define-markup-command).
4102
4103 2006-02-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4104
4105         * scripts/lilypond-book.py (main): write Makefile dependencies file. 
4106         (output): add comments to lp-book latex output.
4107
4108         * GNUmakefile.in (footifymail): use gmane address for webpage bug
4109         address.
4110
4111 2006-02-23  Graham Percival  <gpermus@gmail.com>
4112
4113         * Documentation/user/ tutorial, global: minor changes.
4114
4115 2006-02-23  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4116
4117         * mf/GNUmakefile: add '\' in multi-line "define ... endef"
4118         blocks (for make 3.80)
4119
4120         * scm/parser-ly-from-scheme.scm (ly:parse-string-result): add
4121         \notemode so that user should not have to explicitely type it.
4122
4123         * scm/define-music-display-methods.scm: various
4124         fixes (ApplyOutputEvent, ApplyContext; \new, \context and derived
4125         constructs)
4126
4127         * input/no-notation/display-lily-tests.ly: new tests for
4128         \applyOutput and \applyContext
4129
4130 2006-02-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4131
4132         * lily/constrained-breaking.cc: patch by Joe Neeman: "I have
4133         changed it slightly so that the number of systems returned by
4134         solve () will be the same as the last value passed to resize
4135         (). I've also added more documentation, removed casts, fixed style
4136         problems and put in some recovery if constraints aren't satisfied."
4137
4138 2006-02-23  Jan Nieuwenhuizen  <janneke@gnu.org>
4139
4140         * elisp/lilypond-mode.el (count-matches-as-number): New funtion
4141         for emacs < 22 compatibility.
4142         (count-rexp): Use it.
4143         (LilyPond-string-current-midi, LilyPond-string-all-midi): Remove
4144         substring juggling (Milan Zamazal).
4145
4146 2006-02-23  Graham Percival  <gpermus@gmail.com>
4147
4148         * Documentation/user/ basic-notation, advanced-notation,
4149         global.itely, invoking.itely, tutorial,itely:
4150         minor fixes from mailist.
4151
4152         * scm/define-markup-commands.scm: improve docs of \filled-box.
4153
4154 2006-02-23  Heikki Junes  <hjunes@cc.hut.fi>
4155
4156         * Documentation/index.html.in: changes concern the previous release.
4157
4158         * input/regression/+.ly: cultivate typographical terminology.
4159
4160 2006-02-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4161
4162         * scm/define-grob-interfaces.scm (parentheses-interface): add
4163         padding to parentheses-interface.
4164
4165         * Documentation/user/GNUmakefile: remove $(CROSS) support from
4166         Documentation/user/GNUmakefile. Use --disable-documentation for that.
4167
4168         * VERSION (PATCH_LEVEL): release 2.7.36
4169
4170         * lily/slur.cc: add avoid-slur (ugh.)
4171         
4172         * lily/slur-configuration.cc (fit_factor): oops, skip point if
4173         intersection gets smaller. This fixes slurs over extreme points.
4174
4175         * lily/melody-engraver.cc (stop_translation_timestep): ignore
4176         stems with neutral-direction set.
4177
4178         * lily/piano-pedal-engraver.cc (create_text_grobs): idem.
4179
4180         * lily/open-type-font.cc (load_table): format error.
4181
4182         * lily/change-iterator.cc (process): format fix.
4183
4184         * flower/include/international.hh (_f): idem.
4185
4186         * flower/include/std-string.hh: add format printf attribute.
4187
4188         * scm/define-grobs.scm (all-grob-descriptions): height of all
4189         PedalLineSpanner is Y-extent property. Fixes pedal-ped.ly
4190
4191         * lily/ambitus-engraver.cc (finalize): use grob_array. This fixes
4192         ambitus lines.
4193
4194         * input/regression/beam-cross-staff-slope.ly: remove decrescendo.
4195
4196 2006-02-22 Erik Sandberg  <mandolaerik@gmail.com>
4197
4198         * input/regression/: upgraded syntax for some files.
4199
4200         * THANKS: Add bughunters.
4201
4202 2006-02-22  Graham Percival  <gpermus@gmail.com>
4203
4204         * Documentation/user/ invoking.itely, advanced-notation.itely,
4205         global.itely: long-awaited "let's make chapter 10 not suck"
4206         update.  Rearrange chapter 10; now called "global issues",
4207         addresses file structure, etc.  Some info from other files
4208         moved into global.itely.
4209
4210 2006-02-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4211
4212         * lily/accidental-engraver.cc (acknowledge_rhythmic_head): also
4213         catch trill-span-event notes.
4214
4215         * Documentation/user/examples.itely (Ancient notation templates): typo.
4216         (Jazz combo): typo.
4217
4218         * scripts/lilypond-book.py (main): scrap invokes_lilypond(). 
4219
4220         * Documentation/user/basic-notation.itely (Ties): document \repeatTie.
4221
4222         * Documentation/topdocs/NEWS.tely (Top): document \repeatTie.
4223
4224         * scm/define-music-types.scm (music-descriptions): add RepeatTieEvent
4225
4226         * lily/repeat-tie-engraver.cc (acknowledge_note_head): new file. cut & paste
4227         froum Laissez_vibrer_engraver.
4228
4229         * ly/declarations-init.ly (repeatTie): add \repeatTie
4230
4231         * scm/define-grobs.scm (all-grob-descriptions): add RepeatTie, RepeatTieColumn
4232
4233         * scm/define-grob-properties.scm (all-user-grob-properties): add
4234         head-direction property.
4235
4236         * lily/tie-formatting-problem.cc (from_semi_ties): rename from
4237         from_lv_ties. Take head direction argument.
4238
4239         * lily/semi-tie-column.cc: rename from
4240         laissez-vibrer-tie-column.cc. Rename class too.
4241
4242         * lily/semi-tie.cc: rename from laissez-vibrer-tie.cc. Rename
4243         class too.
4244
4245         * lily/paper-score.cc (find_break_indices): move from Break_algorithm.
4246
4247         * lily/break-algorithm.cc (find_break_indices): remove linewidth <
4248         0 case.
4249         (find_breaks): idem.
4250
4251 2006-02-21  Graham Percival  <gpermus@gmail.com>
4252
4253         * Documentation/user/advanced-notation.itely: fixed make-moment]
4254         example.
4255
4256         * Documentation/user/basic-notation.itely: more clarification to
4257         transpose.
4258
4259 2006-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4260
4261         * lily/include/constrained-breaking.hh (class
4262         Constrained_breaking): new file.
4263
4264         * lily/constrained-breaking.cc (resize): new file.
4265
4266         * lily/gourlay-breaking.cc (do_solve): ragged-last iso raggedlast
4267
4268         * Documentation/user/advanced-notation.itely (Clusters): insert
4269         end ignore too.
4270
4271         * lily/tie-column.cc (calc_positioning_done): support for
4272         tie-score debugging
4273
4274         * lily/tie-formatting-problem.cc
4275         (generate_extremal_tie_variations): factor out.
4276         (score_ties_configuration): annotate all tie 
4277         (print_ties_configuration): new routine.
4278         (generate_configuration): nudge extremal ties outside of the head
4279         Y extents.
4280         (score_ties_configuration): oops. convert to staff-space before
4281         determining position symmetry.
4282
4283 2006-02-20  Graham Percival  <gpermus@gmail.com>
4284
4285         * Documentation/user/*-notation.itely: misc minor editing,
4286         shifting doc sections around.
4287
4288         * Documentation/user/*-notation-itely, global.itely,
4289         changing-defaults.itely: added new stuff from NEWS.
4290
4291 2006-02-20  Heikki Junes  <hjunes@cc.hut.fi>
4292
4293         * po/fi.po: update.
4294
4295 2006-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4296
4297         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): don't run
4298         lilypond --verbose for lp-book.
4299
4300         * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
4301         $(outdir)/%.ly $(outdir)/%.ps): use $(srcdir) iso $(shell pwd).
4302
4303         * make/lysdoc-rules.make ($(outdir)/collated-files.tely): use
4304         $(buildscript-dir) iso. absolute depth.
4305
4306         * buildscripts/genicon.py (dir): thinko.
4307
4308         * Documentation/pictures/GNUmakefile ($(outdir)/%.ico): typo.
4309
4310 2006-02-19 Erik Sandberg  <mandolaerik@gmail.com>
4311
4312         * scm/output-lib.scm: swap darkcyan/darkyellow
4313
4314         * THANKS: Add bughunters.
4315
4316 2006-02-19  Graham Percival  <gpermus@gmail.com>
4317
4318         * Documentation/user/programming-interfaces.itely: fixed example.
4319
4320         * Documentation/user/instrument-notation.itely: fix @{ @}.
4321
4322         * scm/script.scm: add avoid-slur for \open.
4323
4324 2006-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4325
4326         * lily/tie-formatting-problem.cc (score_configuration): use
4327         sliding score for min-length. 
4328
4329         * Documentation/pictures/GNUmakefile (local-dist): loose the rule
4330         spaghetti for icons.
4331
4332         * buildscripts/genicon.py (program_name): new file.
4333
4334         * lily/tie-formatting-problem.cc (set_chord_outline): put dots
4335         in outline too.  
4336         (generate_configuration): for small ties, also look for collisions
4337         at Y + DIR*h + DELTA_Y.
4338         (get_variations): consider variation for dot positions too.
4339
4340         * lily/side-position-interface.cc (aligned_side): take abs for
4341         quantized rounded position. Fixes tenuto below staff.
4342
4343         * scm/stencil.scm (annotate-y-interval): robustify: print nan/inf
4344         markers when necessary.
4345
4346         * lily/program-option.cc (internal_set_option): add
4347         strict_infinity_checking option.
4348
4349         * scm/output-lib.scm (cyan): swap yellow and cyan.
4350
4351 2006-02-19  Graham Percival  <gpermus@gmail.com>
4352
4353         * darwin.patch: trivial linenumber update.
4354
4355         * Documentation/user/ {various}: `\context foo = named' changed
4356         to `\new foo = "name"' in docs.
4357
4358 2006-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4359
4360         * scm/stencil.scm (annotate-y-interval): use it.
4361
4362         * scm/lily-library.scm (interval-sane?): new function.
4363
4364         * buildscripts/mf-to-table.py (Char_metric.__init__): remove
4365         tfm_checksum stuff.
4366
4367         * lily/tie-formatting-problem.cc (from_lv_ties): add heads for
4368         common refpoint.
4369
4370         * flower/include/std-vector.hh (iterof): add iterof macro.
4371
4372         * lily/enclosing-bracket.cc (width): new function.
4373
4374         * lily/align-interface.cc (align_elements_to_extents): reinstate
4375         warning.
4376
4377 2006-02-18  Heikki Junes  <hjunes@cc.hut.fi>
4378
4379         * Documentation/index.html.in: fix spelling: thankyous.
4380
4381 2006-02-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4382
4383         * lily/lyric-hyphen.cc: typo.
4384
4385 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4386
4387         * stepmake/stepmake/c++-rules.make ($(outdir)/%.cc
4388         $(outdir)/%.hh): generate h and c in one rule; otherwise -jX
4389         builds don't work. 
4390
4391         * VERSION: release 2.7.35
4392
4393         * lily/beam.cc (get_default_dir): oops. Take abs () for
4394         extremes[DOWN].
4395         (get_default_dir): use extreme position criterion only in absence
4396         of forced stem directions.
4397
4398         * VERSION (PATCH_LEVEL): bump VERSION.
4399
4400         * mf/GNUmakefile: explicit rules for emmentaler/aybabtu
4401         dependencies. Necessary for -jX builds.  
4402
4403 2006-02-17  Jan Nieuwenhuizen  <janneke@gnu.org>
4404
4405         * lily/relocate.cc (setup_paths): Yet another const fix.
4406
4407 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4408
4409         * configure.in (HOST_ARCH): determine HOST_ARCH in configure.
4410
4411         * lily/relocate.cc (setup_paths): oops.
4412
4413 2006-02-17  Heikki Junes  <hjunes@cc.hut.fi>
4414
4415         * Documentation/index.html.in: order links: html before PDF.
4416
4417 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4418
4419         * lily/tie-column-format.cc (Module): remove.
4420
4421         * lily/relocate.cc (setup_paths): GCC 4.2 fixes: const correctness.
4422
4423         * lily/text-spanner.cc (print): idem.
4424
4425         * lily/dynamic-text-spanner.cc (print): only print line if longer
4426         than dash-period.
4427
4428         * lily/auto-change-iterator.cc (change_to): formatting.
4429
4430         * lily/beam.cc (get_default_dir): take extreme note head as input
4431         for stem direction.
4432
4433         * lily/tie.cc (get_default_dir): only look directions for visible
4434         stems. 
4435
4436         * lily/side-position-interface.cc (aligned_side): oops. Don't
4437         mutiply with direction. This fixes quantized (staccato, tenuto)
4438         scripts below notes.
4439
4440         * lily/lyric-hyphen.cc (set_spacing_rods): oops. Multiply with
4441         direction. Fixes c-lyrics-center-align.ly
4442
4443 2006-02-16  Jan Nieuwenhuizen  <janneke@gnu.org>
4444
4445         * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Add copy
4446         constructor.
4447
4448         * lily/std-string.cc:
4449         * lily/include/std-vector.hh (split_string): Move and rename from
4450         lily/include/misc.hh, lily/misc.cc.  Update callers.
4451
4452 2006-02-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4453
4454         * lily/include/pango-font.hh: HAVE_PANGO_FT2 iso. HAVE_PANGO_16
4455
4456 2006-02-16  Jan Nieuwenhuizen  <janneke@gnu.org>
4457
4458         * flower/test-file.cc: New file.
4459
4460         * stepmake/stepmake/test-vars.make (TEST_MODULE_LIBES): Fixes for
4461         libraries.
4462
4463         * flower/GNUmakefile (TEST_MODULE_LIBS): Link to flower lib.
4464
4465 2006-02-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4466
4467         * flower/include/file-storage.hh: remove file.
4468
4469         * lily/include/midi-item.hh (class Midi_track): idem.
4470
4471         * lily/include/source.hh (class Sources): idem.
4472
4473         * lily/include/performance.hh (class Performance): use vector
4474         iso. Cons<>
4475
4476         * flower/include/cons.hh (class Cons): remove file.
4477
4478         * flower/include/flower-proto.hh: remove template cruft.
4479
4480         * lily/include/font-metric.hh: use size_t not vsize for indices.
4481
4482         * flower/include/flower-proto.hh (Module): remove std-vector.hh
4483         from proto.
4484
4485         * lily/include/all-font-metrics.hh: use HAVE_PANGO_FT2
4486
4487         * lily/include/paper-book.hh (class Paper_book):
4488         make get_system_specs() public.
4489
4490         * scm/layout-page-layout.scm (optimal-page-breaks): only consider
4491         the force=10000 case if we don't have a current-best. 
4492
4493         * lily/tuplet-bracket.cc (get_bounds): don't do (size() - 1) for
4494         vsize 
4495
4496         * flower/include/flower-proto.hh: remove outdated templates.
4497
4498         * scm/page.scm: use annotate-spacing
4499
4500 2006-02-15  Graham Percival  <gpermus@gmail.com>
4501
4502         * scm/translation-functions.scm: circle patch from Erlend, thanks!
4503
4504         * THANKS: moved Erlend Aasland to contributors.
4505
4506 2006-02-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4507
4508         * config.hh.in: remove HAVE_PANGO_16
4509
4510         * lily/tuplet-bracket.cc (calc_positions): multiply with
4511         staff-space for beam case. This fixes tuplets+beams on scaled
4512         staves.
4513
4514         * config.hh.in: remove all Kpathsea related defines.
4515
4516         * lily/dot-column.cc (side_position): reach stem via dots->
4517         head->stem. Inspect all stems for dot collisions. 
4518
4519         * lily/dot-column-engraver.cc (class Dot_column_engraver): excise
4520         stem handling.
4521
4522         * lily/bar-number-engraver.cc (process_music): document function
4523         of whichBar.
4524
4525         * lily/score.cc (default_rendering): add pscore, not systems
4526         themselves.
4527
4528         * lily/paper-book.cc (get_system_specs): separate generation of
4529         titles and systems.
4530
4531         * flower/include/std-vector.hh: don't include config.hh
4532
4533 2006-02-15  Jan Nieuwenhuizen  <janneke@gnu.org>
4534
4535         * flower/include/std-vector.hh: Better wrapper compatibility with
4536         std::vector.
4537
4538         * flower/include/flower-proto.hh: Remove cheap forward declaration
4539         attempts.
4540
4541         * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): Bugfix.
4542
4543 2006-02-14  Graham Percival  <gpermus@gmail.com>
4544
4545         * Documentation/user/invoking.itely: add warning about command line.
4546
4547 2006-02-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4548
4549         * lily/include/lily-proto.hh: add Prob, rm Page.
4550
4551         * flower/include/std-vector.hh (VPOS): use 64 bit-proof version.
4552
4553         * VERSION: release 2.7.34
4554
4555         * lily/relocate.cc (framework_relocation): show canary if
4556         GHOSTSCRIPT_VERSION undefined.
4557
4558         * GNUmakefile.in: remove $(VERSION) symlink.
4559
4560         * lily/relocate.cc (setup_paths): add + 
4561
4562 2006-02-13  Heikki Junes  <hjunes@cc.hut.fi>
4563
4564         * Documentation/index.html.in: specify sizes for all big HTML pages.
4565
4566 2006-02-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4567
4568         * config.hh.in: remove @FRAMEWORKDIR@
4569
4570         * lily/system-start-text.cc (get_stencil): new file: separate out
4571         system-start-delimiter text support.
4572
4573         * input/**ly: replace \context with \new where appropriate.
4574         
4575         * THANKS: add Don.
4576
4577         * lily/slur-scoring.cc (get_base_attachments): use
4578         robust_relative_extent. This fixes problems with empty paper-columns. 
4579
4580 2006-02-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4581
4582         * Documentation/topdocs/NEWS.tely (Top): document \new syntax.
4583
4584         * scm/define-music-properties.scm (all-music-properties):
4585         create-new property.
4586
4587         * lily/context-specced-music-iterator.cc (construct_children):
4588         inspect 'create-new property iso. magical $uniqueContextId context
4589         id.
4590
4591         * lily/parser.yy (optional_id): allow \new "Bar" = "foo" too.
4592
4593         * lily/context-key-manager.cc (Module): new file. Encapsulate
4594         object key generation.
4595
4596         * lily/include/context-key-manager.hh (Module): new file.
4597
4598 2006-02-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4599
4600         * scm/define-grobs.scm (all-grob-descriptions): center instrument
4601         names vertically
4602
4603         * configure.in (LINK_GXX_STATICALLY): strip -DSTRING_UTILS_INLINED
4604         options.
4605         (reloc_b): excise --enable-framework-dir
4606
4607         * lily/relocate.cc (framework_relocation): use getenv
4608         LILYPOND_GS_VERSION or -DGHOSTSCRIPT_VERSION to set GS version.
4609
4610 2006-02-11  Jan Nieuwenhuizen  <janneke@gnu.org>
4611
4612         * flower/include/std-string.hh: 
4613         * flower/include/std-vector.hh: Finish std:: conversion; move
4614         flower extensions from std:: namespace.  Update users.
4615
4616         * lily/include/lily-proto.hh: Replace Link_array__*_ macros by
4617         their expansion to vector<*>.  Update users.
4618
4619 2006-02-10  Graham Percival  <gpermus@gmail.com>
4620
4621         * Documentation/user/invoking.itely: add example to File structure.
4622
4623         * Documentation/user/ instrument-notation.itely, cheatsheet.itely,
4624         examples.itely, putting.itely: {\new|\context} Lyrics \lyricsto.
4625
4626 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4627
4628         * ly/paper-defaults.ly: typo.
4629
4630         * lily/parenthesis-engraver.cc (acknowledge_grob): don't do
4631         set_parent() for parentheses. This will make it show up in bbox
4632         calculations.
4633
4634         * scm/output-lib.scm (parentheses-item::print): rewrite, using
4635         ly:grob-common* functions.
4636
4637         * lily/grob-scheme.cc (LY_DEFINE):
4638         ly:grob-common-refpoint-of-array: new function 
4639         ly:grob-common-refpoint: new function 
4640         ly:grob-relative-coordinate: new function 
4641
4642         * lily/instrument-name-engraver.cc (process_music): use
4643         Text_interface::is_markup(). This fixes \markup on instrument names.  
4644
4645         * scm/define-grobs.scm (all-grob-descriptions): set line-thickness
4646         for ties and slurs.
4647
4648         * lily/slur.cc (print): idem.
4649
4650         * lily/tie.cc: add line-thickness for ties. 
4651
4652 2006-02-10  Jan Nieuwenhuizen  <janneke@gnu.org>
4653
4654         * scm/output-svg.scm: Document diversion from GNU coding standards
4655         as a workaround for a bug in Microsoft Internet Explorer.
4656
4657 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4658
4659         * lily/instrument-name-engraver.cc (process_music): use
4660         is_markup() iso. is_string()
4661
4662         * Documentation/user/changing-defaults.itely (Module): add menu entry.
4663
4664         * lily/percent-repeat-engraver.cc (process_music): only look at
4665         main_part_ for % repeats.
4666
4667         * lily/stem-tremolo.cc (get_beam_translation): new function.
4668         (calc_slope): new function.
4669         (height): don't use real slope.
4670
4671 2006-02-10  Jürgen Reuter  <reuter@ipd.uka.de>
4672
4673         * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: add
4674         new connect-to-neighbor, control-points and staff-padding
4675         properties to make ligature brackets showing up again.
4676
4677 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4678
4679         * VERSION: release 2.7.33
4680
4681         * lily/relocate.cc (prefix_relocation): oops. One TOPLEVEL_VERSION
4682         too many.
4683
4684         * Documentation/user/changing-defaults.itely (Difficult tweaks):
4685         remove applyOutput example.
4686         (Objects connected to the input): document \tweak, \parenthesize
4687
4688         * lily/relocate.cc (prefix_relocation): allow "current"
4689         iso. TOPLEVEL_VERSION for share/lilypond/ suffix. This makes
4690         changing VERSION in a lily tree less painful.
4691
4692         * input/regression/parenthesize.ly: new file. 
4693
4694         * scm/output-lib.scm (parenthesize-element): new function.
4695
4696         * scm/define-grobs.scm (all-grob-descriptions): add ParenthesesItem.
4697
4698         * lily/parenthesis-engraver.cc (acknowledge_grob): new file.
4699
4700         * lily/accidental-engraver.cc (make_standard_accidental): reroute
4701         cause: accidentals are caused by note heads, not note events. 
4702
4703 2006-02-08  Graham Percival  <gpermus@gmail.com>
4704
4705         * darwin.patch: small patch from Erlend, thanks!
4706
4707         * Documentation/user/basic-notation.itely: add stem-neutral example.
4708
4709         * Documentation/user/putting.itely: clarifications.
4710
4711 2006-02-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4712
4713         * Documentation/topdocs/NEWS.tely (Top): remove internal cleanup
4714         note, add more guidelines to what should go into NEWS.
4715
4716         * input/sakura-sakura.ly: document how to override font.
4717
4718         * input/regression/font-family-override.ly:  doc -dshow-available-fonts
4719
4720 2006-02-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4721
4722         * lily/midi-item.cc (to_string): truncate time sig at 255 beats.
4723
4724 2006-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
4725
4726         * scripts/convert-ly.py (lilypond_version_re_str): Move from
4727         convertrules.  Add explicit grouping, needed for python2.2.
4728
4729 2006-02-07  Jan Nieuwenhuizen  <janneke@gnu.org>
4730
4731         * Documentation/topdocs/NEWS.tely (Top): Mention code cleanup.
4732
4733 2006-02-07  Graham Percival  <gpermus@gmail.com>
4734
4735         * Documentation/user/global.itely: fix line-width in (text) docs.
4736
4737         * Documentation/user/lilypond-book.itely: same.
4738
4739 2006-02-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4740
4741         * VERSION (PACKAGE_NAME): release 2.7.32
4742
4743         * Documentation/topdocs/NEWS.tely (Top): document new variable
4744         naming.
4745
4746         * flower/include/array.icc (Message): remove file.
4747
4748         * flower/include/std-vector.hh: make sure vsize and VPOS are
4749         defined for binary_search_bounds().
4750
4751         * flower/std-string.cc (std): add to_string(long unsigned).
4752
4753         * configure.in (gui_b): excise std_string option.
4754         (gui_b): excise std_vector option.
4755
4756         * flower/string.cc (Module): excise flower array & string
4757
4758         * flower/include/std-string.hh: excise flower string.
4759
4760         * {ly,lily,scm}/*: use dashes in \paper and \layout variables
4761
4762         * python/convertrules.py (lilypond_version_re_str): require
4763         only numbers and dots in \version string.
4764
4765 2006-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4766
4767         * lily/system-start-delimiter.cc (print): allow style = text too.
4768
4769         * lily/system-start-delimiter-engraver.cc
4770         (acknowledge_system_start_text): new function, also add add to
4771         support of system-start-text (instrument names). This fixes
4772         instrument names on piano staves.
4773
4774         * lily/instrument-name-engraver.cc: rewrite. Use
4775         system-start-delimiter approach. This save memory and cpu.
4776
4777         * scm/define-grobs.scm (all-grob-descriptions): remove
4778         instrument-name from break-alignment.
4779
4780         * mf/GNUmakefile ($(NCSB_TTFS)): depend on pfx2ttf script too.
4781
4782 2006-02-05  Jan Nieuwenhuizen  <janneke@gnu.org>
4783
4784         * stepmake/stepmake/generic-vars.make (LOOP): Add PLUS to keep -j
4785         jobserver going.
4786
4787         * configure.in (std_vector): On by default.
4788
4789         * lily/include/font-metric.hh:
4790         * lily/include/tfm-reader.hh: 
4791         * lily/include/spanner.hh: Use unsigned for indices and sizes.
4792         Update users.
4793
4794         * Documentation/user/changing-defaults.itely: Fix link v2.5, out-www.
4795
4796 2006-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4797
4798         * VERSION (PACKAGE_NAME): 2.7.31
4799
4800         * scm/framework-ps.scm (dump-stencil-as-EPS): don't hardcode left
4801         EPS edge at 0, but take minimum with left-overshoot. This fixes
4802         cut off system start delims. 
4803
4804         * lily/instrument-name-engraver.cc (stop_translation_timestep):
4805         hack: add to axis group if not added yet. This fixes hara kiri'd
4806         piano staves.
4807
4808         * lily/hara-kiri-group-spanner.cc
4809         (force_hara_kiri_in_y_parent_callback): fix signatures.
4810
4811         * lily/hairpin.cc (print): check next hairpin to see whether or
4812         not to be continuing.
4813
4814 2006-02-04  Jan Nieuwenhuizen  <janneke@gnu.org>
4815
4816         * Remove trailing whitespace from makefiles.
4817         
4818         * flower/include/std-vector.hh: Add binary_search_bounds workaround
4819         for earlier gcc.
4820
4821         * .cvsignore: Add out*, out-www, config-*.  Remove lots of cruft.
4822
4823         * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Workaround.
4824
4825         * config.hh.in (HAVE_STL_DATA_METHOD): Add.
4826
4827         * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): New function.
4828
4829         * configure.in: Use it.
4830
4831 2006-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4832
4833         * scm/music-functions.scm (pitch-of-note): new function.
4834
4835         * ly/music-functions-init.ly: add \octave and \addquote
4836
4837         * lily/parser.yy (music_function_chord_body): softcode \octave.
4838         (lilypond_header): softcode \addquote
4839
4840 2006-02-03  Jan Nieuwenhuizen  <janneke@gnu.org>
4841
4842         * flower/include/std-vector.hh[STD_VECTOR]: Do not include
4843         array.hh, parray.hh at all.  Getting ready to flip the
4844         configure default.
4845
4846         * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
4847
4848         * lily/source-file.cc (file::get_line): Help binary_search_bounds
4849         a bit.
4850
4851         * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
4852
4853 2006-02-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4854
4855         * flower/include/array.hh: typo. 
4856
4857 2006-02-02  Graham Percival  <gpermus@gmail.com>
4858
4859         * Documentation/user/advanced-notation.itely: doc "\#" in text.
4860
4861 2006-02-03  Jan Nieuwenhuizen  <janneke@gnu.org>
4862
4863         * flower/include/pqueue.hh: Derive from std::vector.
4864
4865         * flower/include/parray.hh: Conform to std::vector interface.
4866         Update users.
4867
4868 2006-02-02  Graham Percival  <gpermus@gmail.com>
4869
4870         * Documentation/topdocs/NEWS.itely: grammar fix from Laura.
4871
4872 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4873
4874         * flower/file-path.cc (is_file): remove if 0 section.
4875
4876         * buildscripts/pfx2ttf.fontforge (err): robustness fix for
4877         selecting afii61352.
4878
4879 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
4880
4881         * flower/include/std-vector.hh (boundary): Oops, reverse.
4882
4883         * flower/string-convert.cc (convert::unsigned_string): Bugfix:
4884         remove superfluous `d'.
4885
4886         * flower/include/std-vector.hh (boundary, top): Detach from class.
4887         Remove empty vector shell.
4888
4889         * flower/include/array.hh (reverse, swap): Detach from class.
4890         Update users.
4891         
4892         * flower/include/std-vector.hh
4893         * flower/include/array.hh (concat): Globally change to insert ().
4894
4895         
4896         * flower/include/std-vector.hh
4897         * flower/include/parray.hh
4898         * flower/include/array.hh (elem, elem_ref): Globally replace by
4899         at ().
4900
4901 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4902
4903         * Documentation/topdocs/NEWS.tely (Top): use ly: prefix for members.
4904
4905         * python/convertrules.py (FatalConversionError.sub_cxx_id):
4906         anticipate on identifier substitutions.
4907
4908 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
4909
4910         * flower/include/std-vector.hh (insert): Remove, replace by
4911         std::vector interface.  Update callers.
4912
4913         * flower/include/array.icc (insert): Change signature to
4914         match std::vector interface.
4915         
4916         * flower/include/array.icc (vector_sort): Bugfix.
4917
4918 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4919
4920         * lily/parser.yy (output_def_head_with_mode_switch): new
4921         production. Result: dashes and underscores may be used in the
4922         \paper block.
4923
4924         * lily/lexer.ll: add DASHED_WORD.  Accept in INITIAL mode.
4925
4926         * python/convertrules.py (conv): oops. One slash too much.
4927
4928 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
4929
4930         * flower/include/std-vector.hh (sort): Remove, replace by
4931         ::vector_sort.  Update callers.
4932
4933         * flower/include/std-vector.hh (slice): Remove.  Update callers.
4934         (sort): Bugfix.
4935
4936         * flower/test-std.cc (vector_sort): New test.
4937
4938 2006-02-01  Graham Percival  <gpermus@gmail.com>
4939
4940         * Documentation/user/putting.itely: fixes from Erik.
4941
4942 2006-02-01  Jan Nieuwenhuizen  <janneke@gnu.org>
4943
4944         * flower/test-std.cc: Add simple unit test for vector migration.
4945
4946         * stepmake/stepmake/test*: Unit test support.
4947
4948         * flower/include/std-vector.hh (del): Remove.  Use erase (),
4949         update callers.
4950
4951         * flower/include/array.hh (begin, end): Add.
4952         (del, get): Remove.
4953
4954 2006-02-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4955
4956         * lily/include/lily-guile-macros.hh (MAKE_SCHEME_CALLBACK): use
4957         std::string not String. 
4958
4959         * lily/context-def.cc (path_to_acceptable_context): use INT_MAX
4960         iso UINT_MAX.
4961
4962         * lily/prob.cc (Prob): copy type_ too.
4963
4964         * lily/lily-guile.cc (mangle_cxx_identifier): new
4965         function. Class_bla::foo_bar_[px] ->
4966         ly:class-bla::foo-bar[?!]. Changes throughout
4967
4968 2006-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4969
4970         * flower/include/guile-compatibility.hh (scm_from_unsigned): add scm_from_unsigned().
4971
4972         * lily/beam.cc (calc_direction): take dir from visible stem in
4973         degenerate case.
4974
4975 2006-01-31  Jan Nieuwenhuizen  <janneke@gnu.org>
4976
4977         * lily/melody-spanner.cc (spanner::calc_neutral_stem_direction):
4978         Fix -1, >=0 boundary checks for unsigned vsize.
4979
4980         * lily/separating-group-spanner.cc (spanner::find_rods): Fix >=0
4981         loop for unsigned vsize.
4982
4983         * configure.in (--enable-std-vector): New option.
4984         (--enable-std-string): On by default.
4985
4986         * flower/include/std-vector.hh: New file.  Enable switch to
4987         std::vector, update client code.
4988
4989 2006-01-30  Graham Percival  <gpermus@gmail.com>
4990
4991         * scm/document-translation.scm: clarify "this context is also
4992         known as".  Thanks, Werner!
4993
4994         * Documentation/user/putting.itely: small fixes from Don Blaheta.
4995
4996         * Documentation/user/invoking.itely: small fix from Don.
4997
4998 2006-01-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4999
5000         * scm/lily.scm (define-scheme-options): rename option
5001         preview-include-book-title to book-title-preview
5002         (define-scheme-options): move force-eps-font-include (from paper
5003         block) to eps-font-include -d option.
5004
5005         * VERSION (PATCH_LEVEL): release 2.7.30
5006
5007         * input/bach-schenker.ly (staffPiano): new file.
5008
5009         * buildscripts/pfx2ttf.fontforge: remove No. glyph from TTF file.
5010
5011         * Documentation/topdocs/NEWS.tely (Top): simplify NEWS entry, add
5012         credits to Nicolas.
5013
5014         * scm/define-markup-commands.scm (epsfile): add scaling to \epsfile.
5015
5016         * ps/lilyponddefs.ps: remove start-system, stop-system,
5017         start-page fluff. This saves putting { } code on the stack, fixing
5018         stack overflows when including EPS files.
5019
5020 2006-01-29  Graham Percival  <gpermus@gmail.com>
5021
5022         * Documentation/user/putting.itely: minor fixes (comments on -devel).
5023
5024 2006-01-29  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5025
5026         * Documentation/topdocs/NEWS.tely (Top): add \parallelMusic news.
5027
5028 2006-01-28  Graham Percival  <gpermus@gmail.com>
5029
5030         * Documentation/user/putting.itely: minor fixes (mostly tab->space).
5031
5032 2006-01-28  Jan Nieuwenhuizen  <janneke@gnu.org>
5033
5034         * input/mutopia/claop.py: Update.
5035
5036 2006-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5037
5038         * input/regression/completion-heads.ly (texidoc): fix.
5039
5040         * lily/staff-symbol-referencer.cc (on_staff_line): idem.
5041
5042         * lily/tie-formatting-problem.cc
5043         (set_ties_config_standard_directions): use abs iso fabs for ints.
5044
5045         * Documentation/topdocs/INSTALL.texi (Top): document ncsb requirement.
5046
5047         * mf/feta-bolletjes.mf (overdone_heads): solfa_noteheight, a
5048         little less than noteheight, to prevent overlaps in chords.
5049
5050         * lily/note-collision.cc (check_meshing_chords): wipe upper FA
5051         head, and fudge stem-attachment.
5052
5053         * scm/lily-library.scm (not): define hash-for-each for guile 1.6
5054
5055         * lily/slur-scoring.cc (get_best_curve): handle opt_idx < 0 case.
5056
5057 2006-01-27  Jan Nieuwenhuizen  <janneke@gnu.org>
5058
5059         * lily/main.cc (main): Debugging aid: catch exceptions.
5060
5061         * flower/std-string.cc (to_string): Robustification.  Fixes midi
5062         output with std::string.
5063
5064 2006-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5065
5066         * Documentation/topdocs/INSTALL.texi (Top): remove libkpathsea notes.
5067
5068 2006-01-26  Jan Nieuwenhuizen  <janneke@gnu.org>
5069
5070         * Fix -DSTRING_UTILS_INLINED.
5071
5072 2006-01-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5073
5074         * VERSION (PATCH_LEVEL): release 2.7.29
5075
5076         * lily/relocate.cc (setup_paths): mingw uses std string too.
5077
5078         * lily/*.cc: various fixes for substr(ARG).
5079
5080         * lily/sustain-pedal.cc (print): 
5081
5082         * flower/file-name.cc (slashify): use std strings.
5083
5084         * flower/string-convert.cc: remove publib.h
5085
5086         * scm/define-markup-commands.scm (verbatim-file): new markup
5087         command \verbatim-file
5088
5089         * Documentation/topdocs/NEWS.tely: fixup URLs
5090
5091         * input/regression/alignment-vertical-manual-setting.ly (Module):
5092         new file.
5093
5094         * lily/align-interface.cc (align_elements_to_extents): overwrite
5095         translations with numbers in alignment-offsets from left bound
5096
5097         * scm/page.scm (make-page-stencil): read X-offset from paper-system.
5098         (page-translate-systems): new function: take into account Y-offset.
5099
5100         * Documentation/topdocs/NEWS.tely (Top): document new features.
5101
5102         * input/regression/page-layout-manual-position.ly (Module): new
5103         file.
5104
5105 2006-01-26  Jan Nieuwenhuizen  <janneke@gnu.org>
5106
5107         * flower/file-path.cc (path::parse_path): Oops.
5108
5109         * Finish std::string interface.  For now, use std:: marker
5110         throughout for easy s/r.
5111
5112 2006-01-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5113
5114         * Documentation/user/putting.itely (Score is a single musical
5115         expression): typo.
5116         (Score is a single musical expression): more typos.
5117
5118         * scm/page.scm (annotate-space-left): thinko.
5119         (annotate-page): more thinkos.
5120
5121 2006-01-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5122
5123         * scm/layout-page-layout.scm (write-page-breaks): record tweaks
5124         for different \score blocks separately.
5125         (post-process-pages): put write-page-layout into paper block.
5126
5127         * lily/output-def.cc (get_parser): new file.
5128
5129         * lily/output-def-scheme.cc (LY_DEFINE): ly:output-def-parser, new
5130         file.
5131
5132         * lily/include/output-def.hh (class Output_def): add parser_ member.
5133
5134         * input/regression/page-layout-twopass.ly (Module): new file.
5135
5136         * scm/lily.scm: remove cpp hack.
5137
5138         * lily/lyric-engraver.cc (get_voice_to_lyrics): use NPOS everywhere.
5139
5140 2006-01-25  Jan Nieuwenhuizen  <janneke@gnu.org>
5141
5142         * GNUmakefile.in (c-clean): New target.
5143
5144         * flower/include/std-string.hh: String/std::string compatibility:
5145         Use NPOS for `not found' (iso -1), use ssize for length () and pos
5146         type.
5147
5148         * flower/rational.cc: 
5149         * flower/include/rational.hh: 
5150
5151         * flower/offset.cc: 
5152         * flower/include/offset.hh: 
5153
5154         * flower/interval.cc: 
5155         * flower/include/interval.hh: 
5156
5157         * flower/string-convert.cc: 
5158         * flower/include/string-convert.hh: Use std::string [interface].
5159         Update callers.
5160
5161 2006-01-25  Heikki Junes  <hjunes@cc.hut.fi>
5162
5163         * Documentation/index.html.in: clean up.
5164
5165 2006-01-25  Graham Percival  <gpermus@gmail.com>
5166
5167         * Documentation/user/putting.itely: another new untested doc section.
5168
5169 2006-01-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5170
5171         * scm/layout-page-layout.scm (write-page-breaks): write
5172         \spacingTweaks #ALIST. Handle grace timing.
5173
5174         * scm/: more imports.
5175
5176         * scm/page.scm (make-page): add footer/header.
5177         (annotate-space-left): revise: only take page argument.
5178         (layout->page-init): new function.
5179
5180         * scm/layout-page-layout.scm (write-page-breaks): preliminary
5181         version of the system/spacing/linebreak hack writing to the output
5182
5183         * lily/prob-scheme.cc (LY_DEFINE): take optional 'key val args in
5184         ly:make-prob.
5185
5186         * lily/grob-scheme.cc (LY_DEFINE): ly:spanner-get-bound ->
5187         ly:spanner-bound
5188
5189 2006-01-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5190
5191         * scm/stencil.scm (annotate-y-interval): move from layout-page-layout.scm
5192
5193         * scm/paper-system.scm (paper-system-annotate): new file. Handle paper-system.
5194
5195         * scm/layout-page-layout.scm (optimal-page-breaks): move all page
5196         handling to page.scm
5197
5198         * lily/prob-scheme.cc (LY_DEFINE): new file.
5199         (LY_DEFINE): functions ly:make-prob , ly:prob-type? , ly:prob-(set-)property(!)
5200
5201         * lily/music-scheme.cc (LY_DEFINE): rewrite get/set property using
5202         prob functions.
5203
5204         * lily/music.cc (derived_mark): derive Music from Prob.
5205
5206         * lily/paper-system.cc (LY_DEFINE): derive from Prob.
5207
5208         * lily/prob.cc (Module): Implement Prob (Property Object), object
5209         with shared and r/w property alists.  
5210
5211         * lily/include/prob.hh (Module): new file. Declare Prob.
5212
5213         * flower/string.cc: remove is_empty().
5214
5215         * flower/include/string.hh (class String): remove String:: qualifier.
5216
5217         * buildscripts/analyse-cxx-log.py: new file. Read compile log to
5218         substitute appropriate functions.
5219
5220         * flower/include/string.hh (class String): remove to_str0 and
5221         is_empty(). S&R everywhere.
5222
5223 2006-01-23  Graham Percival  <gpermus@gmail.com>
5224
5225         * Documentation/user/basic-notation.itely: add hairpin
5226         after-linebreak tweak to commonprop.
5227
5228         * Documentation/user/putting.itely: added two new sections.
5229
5230 2006-01-23  Jan Nieuwenhuizen  <janneke@gnu.org>
5231
5232         * flower/international.cc: 
5233         * flower/include/international.hh: 
5234
5235         * flower/getopt-long.cc: 
5236         * flower/include/getopt-long.hh: Use std::string [interface].
5237         Update callers.
5238
5239         * flower/include/std-string.hh: Oops, bugfix for --disable-std-string.
5240
5241         * stepmake/stepmake/executable-rules.make: Add dependency on
5242         module libraries.
5243
5244 2006-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
5245
5246         * flower/file-path.cc: 
5247         * flower/include/file-path.hh: Use std::string [interface].
5248         Update callers.
5249
5250         * flower/direction.cc: 
5251         * flower/axis.cc: Unused.  Remove.
5252
5253         * configure.in (--enable-std-string): New option.
5254
5255         * flower/std-string.cc: 
5256         * flower/include/std-string.hh: New file.
5257
5258         * flower/file-name.cc[STD_STRING]:
5259         * flower/include/file-name.hh[STD_STRING]: Use it.  Update callers.
5260
5261 2006-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5262
5263         * scm/output-svg.scm (placebox): no GNU coding standards in SVG output. 
5264
5265         * scm/define-markup-commands.scm (with-dimensions):
5266         with-dimensions markup command.
5267
5268         * input/test/font-table.ly: use it.
5269
5270         * lily/open-type-font.cc (glyph_list): new function.
5271
5272         * lily/open-type-font-scheme.cc (LY_DEFINE): ly:otf-glyph-list function.
5273
5274         * lily/ttf.cc: remove ly:font-glyph-list scheme function
5275
5276 2006-01-22  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5277
5278         * ly/music-functions-init.ly (parallelMusic): new music function
5279         for parallel music entry.
5280
5281         * scm/define-music-properties.scm (all-music-properties): new
5282         'void music property
5283
5284         * scm/music-functions.scm (ly:music-message): make public, to be
5285         used in music function definitions
5286
5287         * scm/lily-library.scm (collect-music-for-book): discard music
5288         when the 'void property is set.
5289
5290 2006-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5291
5292         * lily/ttf.cc (LY_DEFINE): store name before destroying face.
5293
5294         * mf/GNUmakefile: idem.
5295
5296         * buildscripts/mf-to-table.py (help): excise fetaXXlist.ly support.
5297
5298         * stepmake/bin/install.py (dest): Only chmod/chown just created directories
5299
5300         * Documentation/user/notation-appendices.itely (The Feta font):
5301         use it.
5302
5303         * input/test/font-table.ly: new file. Generate font table within lily.
5304
5305         * Documentation/user/notation-appendices.itely (The Feta font):
5306         use new font-table.ly file. 
5307
5308         * stepmake/stepmake/install-out-targets.make
5309         (local-install-outfiles): only create directory if
5310         $(INSTALLATION_OUT_DIR) is defined. This fixes install on Gentoo.
5311
5312 2006-01-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5313
5314         * lily/ttf.cc (LY_DEFINE): new function ly:font-glyph-list.
5315
5316         * VERSION (PACKAGE_NAME): release 2.7.28
5317
5318         * scm/framework-ps.scm (write-preamble): use it to pick exactly
5319         the right font from a Mac dfont.
5320         (write-preamble): don't forget directory, only look at files.
5321
5322         This fixes problems with TTF files in dfonts that don't match
5323         their PostScript names.
5324          
5325         * lily/ttf.cc (LY_DEFINE): ly:ttf-ps-name: new routine to extract
5326         PS name from TTF font.
5327
5328         * input/regression/tie-manual.ly: document new feature.
5329
5330         * Documentation/topdocs/NEWS.tely (Top): add tie NEWS.
5331
5332         * VERSION (MY_PATCH_LEVEL): bump to .28
5333
5334         * Documentation/user/basic-notation.itely (Ties): add tie examples
5335         refs.
5336
5337         * lily/tie-formatting-problem.cc (score_ties_configuration):
5338         symmetry penalties for outer ties.
5339
5340 2006-01-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5341
5342         * lily/tie-formatting-problem.cc (generate_configuration) 
5343         (set_manual_tie_configuration): skip non-pair manual
5344         tie-configuration, so you can set individual ties as
5345
5346           #'tie-configuration = #'((7 . 1) #t (-3 . 1))
5347
5348         * input/regression/tie-chord.ly: use generateTiePattern to
5349         simplify file.
5350
5351         * lily/tie-formatting-problem.cc (peak_around): new function.
5352         (score_configuration): use sliding criterion for staff line collisions. 
5353         (score_configuration): idem for dot collisions.
5354         (generate_configuration): use separate stem_gap for gap to stem.
5355
5356         * lily/include/tie-formatting-problem.hh (struct Tie_details):
5357         separate penalty factors for x and y distance.
5358         (struct Tie_details): separate penalties for tip and center line collisions.
5359
5360 2006-01-19 Han-Wen Nienhuys  <hanwen@xs4all.nl>
5361
5362         * lily/tie-formatting-problem.cc (generate_configuration): make
5363         large ties avoid stafflines in the horizontal section.
5364         (score_configuration): use softcoded penalties
5365         (score_aptitude): idem.
5366
5367         * lily/tie-helper.cc (from_grob): softcode tie details
5368
5369         * lily/staff-symbol-referencer.cc (on_staff_line): new function
5370
5371         * lily/staff-symbol-referencer.cc (on_line): rename from
5372         on_staffline 
5373
5374 2006-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5375
5376         * ly/music-functions-init.ly: remove duplicate tag.
5377
5378         * lily/include/*.hh: GCC 4.1 fixes.
5379
5380 006-01-16  Erlend Aasland  <erlenda@gmail.com>
5381
5382         * Documentation/user/global.itely: fix typos; @bugs -> @refbugs
5383
5384         * scm/define-music-types.scm: fix bug in desc. string
5385         for OverrideProperty
5386
5387 2006-01-15 Erik Sandberg  <mandolaerik@gmail.com>
5388
5389         * scripts/lilypond-book.py: bugfix
5390
5391         * scm/define-music-types.scm: fix typos.
5392
5393 2006-01-14  Graham Percival  <gpermus@gmail.com>
5394
5395         * Documentation/user/ basic-notation.itely, global.itely,
5396         advanced-notation.itely, instrument-notation.itely: small
5397         additions (bugs and commonly tweaked properties).
5398
5399 2006-01-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5400
5401         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): generic
5402         detection of mingw build.
5403         (MINGW_BUILD): opps.
5404
5405 2006-01-12  Jan Nieuwenhuizen  <janneke@gnu.org>
5406
5407         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Add
5408         i686-mingw32.
5409
5410 2006-01-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5411
5412         * scm/music-functions.scm (skip->rest): add skip->rest
5413
5414 2006-01-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5415
5416         * lily/font-config.cc (init_fontconfig): call FcConfigBuildFonts()
5417         explicitly.
5418
5419         * lily/font-config-scheme.cc (LY_DEFINE): also display font and
5420         config dirs. Aids debugging. 
5421         (display_config): also display config files.
5422
5423 2006-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5424
5425         * VERSION: release 2.7.27
5426
5427         * lily/bar-line.cc (calc_bar_size): inspect staff->extent (Y_AXIS)
5428         for determining bar size.
5429
5430         * lily/staff-symbol.cc (print): place lines at distance line-positions
5431
5432         * scm/define-grob-properties.scm (all-user-grob-properties): add
5433         line-positions.
5434
5435         * lily/staff-symbol.cc (height): new function.
5436
5437         * input/regression/staff-line-positions.ly:  new file.
5438
5439 2006-01-06  Graham Percival  <gpermus@gmail.com>
5440
5441         * input/test/add-staccato.ly: remove reference to old file.
5442
5443 2006-01-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5444
5445         * scripts/lilypond-book.py (invokes_lilypond): allow . in path to
5446         lilypond binary too.
5447
5448 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5449
5450         * make/mutopia-rules.make (Module): use LILYPOND_BINARY
5451
5452 2006-01-06  Jan Nieuwenhuizen  <janneke@gnu.org>
5453
5454         * scripts/midi2ly.py: Bugfix: Declare datadir.
5455
5456         * make/ly-rules.make:
5457         * make/mutopia-rules.make: Use LILYPOND_BINARY (WAS: LILYPOND, but
5458         that seems to be gone). Fixes make web.
5459
5460         * The grand 2005-2006 replace.
5461
5462         * VERSION (MY_PATCH_LEVEL): Stay on .26 for now.
5463
5464 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5465
5466         * make/lilypond-vars.make: set LILYPOND_BINARY variable
5467         (LILYPOND_BOOK_LILYPOND_FLAGS): new variable
5468         LILYPOND_BOOK_LILYPOND_FLAGS to hold system dependent settings,
5469         like -dgs-font-load.
5470
5471         * Documentation/user/GNUmakefile ($(outdir)/interfaces.itexi):
5472         remove absolute path to lilypond binary.
5473         
5474 2006-01-05 Pedro Kroeger    <kroeger@pedrokroeger.net>
5475
5476         * configure.in (NCSB_DIR): fix --with-ncsb-dir option.
5477
5478 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5479
5480         * make/lilypond-vars.make: support LILYPOND_EXTERNAL_BINARY variable.
5481
5482         * mf/GNUmakefile: remove broken dvips map symlink.
5483
5484 2006-01-04  Jan Nieuwenhuizen  <janneke@gnu.org>
5485
5486         * lily/main.cc: 
5487         * configure.in: Cosmetic fixes.
5488
5489 2006-01-04  Mats Bengtsson  <mabe@s3.kth.se>
5490
5491         * Documentation/user/music-glossary.tely (Pitch names): Added
5492         Spanish pitch names and durations, thanks to Ernesto Gancedo
5493
5494 2006-01-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5495
5496         * scm/lily.scm (define-scheme-options): use quasi-quote for option
5497         init. Fixes verbose printing of .scm files.
5498
5499         * stepmake/aclocal.m4: add spaces before - options.
5500         
5501 2006-01-03  Jan Nieuwenhuizen  <janneke@gnu.org>
5502
5503         * lily/relocate.cc (setup_paths): Bugfix: do not store result
5504         of path search in local block variable.
5505
5506 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5507
5508         * configure.in (NCSB_DIR): --enable-ncsb-dir
5509         (LINK_GXX_STATICALLY): denko.
5510
5511         * mf/GNUmakefile ($(NCSB_TTFS)): NCSB_DIR iso. NCSB_PATH. 
5512
5513         * configure.in (LINK_GXX_STATICALLY): --enable-ncsb-path option. 
5514         use locate to find c059033l.pfb. 
5515         
5516 2006-01-02  Jan Nieuwenhuizen  <janneke@gnu.org>
5517
5518         * lily/tie-formatting-problem.cc
5519         (problem::generate_base_chord_configuration): Use my_round (was
5520         round).
5521
5522         * lily/source-file.cc (file::get_counts)[!HAVE_MBRTOWC]: Bugfix,
5523         do not invoke mbrtowc.
5524
5525         * lily/relocate.cc (setup_paths): Add more debugging verbosity.
5526
5527 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5528
5529         * scm/lily.scm (lilypond-all): oops. remove debugging hack.
5530
5531 2005-01-02  Heikki Junes  <hjunes@cc.hut.fi>
5532
5533         * Documentation/user/invoking.itely (svg): revise.
5534
5535 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5536
5537         * lily/lexer.ll: use sourcefilename iso. renameinput.
5538
5539 2006-01-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5540
5541         * mf/GNUmakefile ($(NCSB_TTFS)): revise rule. Create
5542         <PostScriptName>.ttf instead of c059XXXttf.
5543
5544         * lily/program-option.cc (LY_DEFINE): special support for
5545         --verbose, so it works before option init too.
5546  
5547         * mf/GNUmakefile (local-install): oops.
5548
5549         * lily/lyric-hyphen.cc (print): oops.
5550
5551         * buildscripts/pfx2ttf.fontforge: new file.
5552         
5553         * mf/GNUmakefile (NCSB_PATH): add vars for NCSB.
5554         ($(outdir)/%.ttf): new rule. 
5555
5556         * scm/define-grobs.scm (all-grob-descriptions): add font-interface
5557         to LyricHyphen.
5558
5559         * lily/lyric-hyphen.cc (print): multiply hyphen height by
5560         font-size
5561
5562 2005-12-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5563
5564         * VERSION: release 2.7.26
5565         
5566         * mf/GNUmakefile (install-fc-cache): remove old font.cache-1 files.
5567
5568 2005-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5569
5570         * lily/font-config.cc (init_fontconfig): verbosity.
5571
5572         * THANKS: add Muziekacademie Lede. 
5573
5574         * scripts/musicxml2ly.py (print_voice_definitions): new function 
5575         (print_score_setup): new function
5576         (convert): read part definition to output staves properly.
5577
5578         * python/musicxml.py (Measure.get_notes): new class. Wrap lists of
5579         Music_xml notes.
5580
5581         * python/musicexp.py (Output_printer.__init__): use _ in data
5582         members.
5583         (Output_printer.unformatted_output): new function: no formatting,
5584         but count braces.
5585         (Duration.get_length): remove isinstance() checks for
5586         Output_printer everywhere.
5587
5588         * input/regression/lyrics-bar.ly (texidoc): add
5589         Separating_line_group_engraver.
5590
5591 2005-12-29  Jan Nieuwenhuizen  <janneke@gnu.org>
5592
5593         * lily/relocate.cc (framework_relocation): New function,
5594         factored from set_relocation ().
5595         (prefix_relocation): Rename from set_relocation ().
5596         (setup_paths): Use it.
5597
5598 2005-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5599
5600         * scm/*.scm: use LEFT/RIGHT/UP/DOWN etc. iso. magical
5601         numbers. Patch by Erlend Aasland.
5602
5603 2005-12-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5604
5605         * lily/font-config.cc (init_fontconfig): print warning if cache
5606         file is not existant.
5607
5608         * lily/main.cc: don't use #ifdef but #if
5609
5610 2005-12-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5611
5612         * lily/grob-property.cc (internal_set_property): don't abort on
5613         calculation-in-progress.
5614
5615         * lily/beam.cc (get_default_dir): robustness: don't divide by zero.
5616
5617         * lily/tuplet-bracket.cc (calc_control_points): oops: typo. Read
5618         connect-to-neighbor property not connect-to-other
5619
5620         * lily/program-option.cc (LY_DEFINE): remove Protected_scm global variable.
5621         (LY_DEFINE): oops. don't forget protection.
5622
5623         * flower/parse-afm.cc (Module): strip AFM handling completely.
5624
5625         * lily/stencil-expression.cc: idem.
5626
5627         * lily/grob-interface-scheme.cc (LY_DEFINE): idem.
5628
5629         * lily/function-documentation.cc (ly_add_function_documentation):
5630         use static member iso. Protected_scm
5631
5632         * lily/main.cc: use ifdef ARGV0_RELOCATION iso. MINGW
5633
5634         * config.make.in (prefix): remove HAVE_KPATHSEA_SO
5635
5636 2005-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
5637
5638         * lily/relocate.cc (set_env_dir): New function.
5639         (set_relocation): Use it to fix setting PANGO_PREFIX.
5640
5641 2005-12-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5642
5643         * input/regression/stem-direction-context.ly: remove rest.
5644
5645         * lily/melody-engraver.cc (process_music): restart for bar lines.
5646         (acknowledge_slur): restart for slurs.
5647
5648 2005-12-27  Heikki Junes  <hjunes@cc.hut.fi>
5649
5650         * Documentation/user/invoking.itely: describe how to view SVG 
5651         output using Inkscape which replace embedded fonts with OTF fonts.
5652
5653 2005-12-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5654
5655         * lily/relocate.cc (set_relocation): set PANGO_PREFIX
5656
5657 2005-12-23  Jan Nieuwenhuizen  <janneke@gnu.org>
5658
5659         * lily/melody-engraver.cc (class Melody_engraver): Remove lying
5660         comment.
5661
5662 2005-12-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5663
5664         * VERSION (PACKAGE_NAME): release 2.7.25
5665
5666         * Documentation/topdocs/NEWS.tely (Top): document new feature.
5667
5668         * input/regression/stem-direction-context.ly: new file.
5669
5670         * lily/relocate.cc (set_relocation): add PANGO_PREFIX
5671
5672         * lily/melody-engraver.cc (acknowledge_stem): restart MelodyItem
5673         on rest.
5674
5675         * ly/engraver-init.ly: add Melody_engraver
5676
5677         * lily/beam.cc (calc_direction): use default-direction
5678         iso. get_default_direction()
5679
5680         * scm/define-grob-properties.scm (all-user-grob-properties): add
5681         default-direction property.
5682
5683         * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem.
5684
5685         * lily/stem.cc (calc_default_direction): remove
5686         Stem::get_default_direction, use default-direction with callback
5687         instead.
5688
5689         * lily/melody-spanner.cc (calc_neutral_stem_direction): 
5690
5691         * lily/melody-engraver.cc: new file. Acknowledge stems for
5692         interpolated stem directions. 
5693
5694         * lily/melody-spanner.cc: new file. Interpolate stem directions.
5695
5696         * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem
5697
5698         * lily/slur-configuration.cc (fit_factor): more robust check for
5699         point in curve X-extent.
5700
5701         * lily/slur.cc (outside_slur_callback): return offset_scm, not 0.
5702         (outside_slur_callback): check for 'outside avoidance.
5703
5704         * lily/slur-configuration.cc (score_extra_encompass): don't use
5705         bound->column() == avoid->column() for checking extents, as this
5706         doesn't work for accidentals. 
5707
5708         * lily/slur-engraver.cc (acknowledge_extra_object): remove
5709         DynamicText hardcoding.
5710
5711         * lily/slur-scoring.cc (enumerate_attachments): robustness: don't
5712         crash if bound stem is NULL
5713
5714         * lily/piano-pedal-performer.cc: patch by MWD for enabling piano
5715         pedals.
5716
5717 2005-12-22  Graham Percival  <gpermus@gmail.com>
5718
5719         * scm/define-markup-commands.scm: typo.  @code{\raise}
5720         => @code{\\raise}.
5721
5722         * darwin.patch: now used again, includes a
5723         required patch from fink.
5724
5725 2005-12-21  Heikki Junes  <hjunes@cc.hut.fi>
5726
5727         * po/TODO: mention gtranslator along with kbabel.
5728         * po/fi.po: update translations.
5729
5730 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
5731
5732         * lily/relocate.cc (setup_paths): Bugfix.
5733
5734 2005-12-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5735
5736         * lily/slur-configuration.cc (score_extra_encompass): don't use
5737         "avoid" choice for avoid-slur.
5738
5739         * stepmake/bin/install.py (dest): don't create existing dir.
5740
5741 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
5742
5743         * stepmake/bin/install.py: Remove file before copying.
5744
5745         * config.make.in: 
5746         * stepmake/aclocal.m4: Do not substitute INSTALL.
5747
5748 2005-12-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5749
5750         * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
5751         depend on link-tree.
5752
5753         * lily/relocate.cc (setup_paths): only check path for non-absolute
5754         dir without directory part.
5755
5756         * flower/file-name.cc (is_absolute):  new method.
5757         (is_absolute): check root_ too.
5758
5759 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
5760
5761         * lily/relocate.cc (setup_paths) [__MINGW32__]: Comment-out broken
5762         relocation code.  Oops, don't comment out too much.
5763
5764         * stepmake/stepmake/generic-vars.make (INSTALL): Assign INSTALL_PY
5765         iso itself.
5766
5767         * lily/relocate.cc [HAVE_GETTEXT]: Include libintl.h.  Fixes mingw
5768         compile.
5769
5770 2005-12-20  Jan Nieuwenhuizen  <janneke@gnu.org>
5771
5772         * .cvsignore: Add install-sh.
5773
5774         * autogen.sh (srcdir): Typo.
5775
5776 2005-12-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5777
5778         * autogen.sh (srcdir): urg. Touch install-sh.
5779
5780         * stepmake/bin/install-sh (Module): remove.
5781
5782         * stepmake/stepmake/generic-vars.make (INSTALL): add $(INSTALL).
5783
5784         * lily/include/relocate.hh: new file.
5785
5786         * lily/relocate.cc: new file. Contain relocation logic.
5787
5788         * lily/main.cc (setup_paths): fix: LILYPOND_RELOCATE_PREFIX.
5789         (main): read LILYPOND_VERBOSE as the first thing.
5790
5791         * stepmake/aclocal.m4: remove INSTALL variable.
5792
5793         * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
5794         separate target for making font symlinks.
5795         (documentation-dir): use $(if $(findstring )) for switching off
5796         Documentation.
5797
5798         * stepmake/stepmake/help2man-vars.make (OUT_DIST_FILES): only do
5799         something if DOCUMENTATION is no.
5800
5801 2005-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5802
5803         * VERSION: release 2.7.24
5804
5805         * lily/script-column-engraver.cc (stop_translation_timestep):
5806         delay adding to script-column.
5807
5808         * lily/tuplet-bracket.cc (print): suicide if no control-points. 
5809
5810         * python/convertrules.py (conv): rule for number-visibility
5811
5812         * lily/slur-configuration.cc (score_extra_encompass): different
5813         distance measure for avoid and inside avoidance.
5814         (score_extra_encompass): use 1/(distance+eps) as penalty.
5815
5816         * lily/slur-scoring.cc (generate_avoid_offsets): use 'inside
5817         encompass objects for generating slur curves.
5818
5819         * lily/slur.cc: use details iso. slur-details property.
5820
5821         * input/regression/slur-tuplet.ly: new file.
5822
5823         * lily/slur-engraver.cc (acknowledge_tuplet_number): new function.  
5824
5825         * flower/include/offset.hh (class Offset): new operator /=
5826
5827         * lily/tuplet-number.cc (print): new file, new interface.
5828
5829         * scm/define-grob-properties.scm (all-user-grob-properties):
5830         remove number-visibility property.
5831
5832         * lily/tuplet-bracket.cc (calc_control_points): new function
5833         (calc_connect_to_neighbors): new function.
5834         (print): remove text handling for tuplet numberdef.
5835
5836         * lily/tuplet-engraver.cc (struct Tuplet_description): create
5837         TupletNumbers too. 
5838
5839         * lily/lily-guile.cc (robust_scm2booldrul): new function
5840
5841         * scm/define-grobs.scm (all-grob-descriptions): new grob TupletNumber
5842
5843         * lily/tuplet-bracket.cc (calc_position_and_height): use
5844         staff-padding to control whether tuplet brackets are over staves.
5845
5846         * lily/grob.cc (suicide): clear dim_caches_.
5847
5848         * lily/dimension-cache.cc (clear): new function.
5849
5850         * lily/grob.cc (extent): swap order of min-extent and extent
5851         calculations. This fixes hara kiri staves. 
5852
5853 2005-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
5854
5855         * lily/main.cc: Nitpick: relocation is not based on path, but on
5856         directory (location).
5857
5858 2005-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5859
5860         * lily/main.cc (setup_paths): read LILYPOND_RELOCATE_PREFIX
5861
5862         * stepmake/stepmake/install-targets.make (local-uninstall): idem.
5863
5864         * stepmake/stepmake/install-out-targets.make (local-install-outfiles): idem.
5865
5866         * stepmake/stepmake/help2man-targets.make (install-help2man): idem.
5867
5868         * stepmake/stepmake/generic-vars.make (Module): idem.
5869
5870         * stepmake/stepmake/executable-targets.make (default): use it.
5871
5872         * stepmake/bin/install.py (create_dir): new file. Replace install-sh.
5873
5874         * make/GNUmakefile: don't install make rules.
5875
5876         * lily/main.cc (setup_paths): don't inspect $PATH for argv0 with
5877         slashes.
5878         (prepend_env_path): more verbosity.
5879
5880 2005-12-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5881
5882         * GNUmakefile.in: add dir argument for find command.
5883
5884         * lily/parser.yy (bass_figure): set_spot() for bass figures. This
5885         fixes weird line numbers for point & click.
5886
5887         * lily/source-file.cc (get_counts): init line/column/char counts.
5888
5889 2005-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5890
5891         * lily/main.cc: remove ARGV0_RELOCATION, instead use --relocate.
5892
5893 2005-12-16  Graham Percival  <gpermus@gmail.com>
5894
5895         * Documentation/user/basic-notation.itely, advanced-notation.itely:
5896         minor fixes from Fredric.  Thanks!
5897
5898 2005-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5899
5900         * ly/music-functions-init.ly: add \bar and \clef music function 
5901
5902         * lily/lily-lexer.cc: idem.
5903
5904         * lily/parser.yy (FIXME): remove BAR and CLEF.
5905
5906 2005-12-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5907
5908         * Documentation/topdocs/NEWS.tely (Top): doc string argument change.
5909
5910         * lily/parser.yy (Generic_prefix_music_scm): allow strings as
5911         function arguments too
5912
5913         * lily/main.cc (set_relocation): new function.
5914
5915         * scripts/musicxml2ly.py (convert): add \version
5916
5917         * lily/tie.cc: remove get_default_attachments()
5918
5919         * VERSION (PACKAGE_NAME): release 2.7.23
5920         
5921         * lily/chord-tremolo-engraver.cc (acknowledge_stem): use
5922         ultimate_music_cause(). This fixes core dumps in unfold-all-repeats.ly
5923
5924         * Documentation/topdocs/NEWS.tely (Top): document new feature.
5925
5926         * lily/tie-formatting-problem.cc (score_ties): new function
5927         (get_variations): new function. Try flipping dirs for collisions.
5928         (generate_optimal_chord_configuration): new function. 1-opt search
5929         for better configuration.
5930
5931         * lily/tie-configuration.cc: new file.
5932
5933         * lily/tie.cc: junk Tie::get_configuration()
5934
5935         * lily/tie-formatting-problem.cc (score_ties_aptitude): new function.
5936         (score_ties_configuration): new function.
5937         (generate_ties_configuration): new function.
5938         (generate_base_chord_configuration): new function.
5939         (set_ties_config_standard_directions): Move body from tie-column-format.cc 
5940         (set_manual_tie_configuration): Move body from tie-column-format.cc 
5941
5942         * input/regression/tie-dot.ly: new file.
5943
5944         * lily/tie-formatting-problem.cc (score_configuration): score
5945         tie/dot collisions.
5946
5947         * lily/tie-helper.cc (get_transformed_bezier): new function
5948
5949         * Documentation/topdocs/NEWS.tely (Top): strip out-www.
5950
5951         * stepmake/stepmake/python-module-vars.make (SHARED_FLAGS): use
5952         -undefined suppress iso. -framework Python 
5953
5954         * scm/define-grobs.scm (all-grob-descriptions): set
5955         springs-and-rods (thanks Joe Neeman!)
5956
5957 2005-12-12  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5958
5959         * input/no-notation/display-lily-tests.ly (test): 
5960         * scm/display-lily.scm (tag->lily-string): the syntax for tags has
5961         changed from \tag #'(a b) to \tag #'a \tag #'b
5962
5963 2005-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5964
5965         * Documentation/topdocs/NEWS.tely: strip out-www.
5966
5967         * lily/include/grob-interface.hh: include lily-guile.hh not libguile.h
5968
5969         * config.make.in (AR): add AR and RANLIB
5970
5971         * flower/libc-extension.cc: include cassert
5972
5973         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): more robust
5974         darwin check.
5975
5976 2005-12-11  Graham Percival  <gpermus@gmail.com>
5977
5978         * stepmake/stepmake/generic-vars.make: define DARWIN_BUILD.
5979
5980         * stepmake/stepmake/python-modules-vars.make: define
5981         SHARED_FLAGS for OSX.  Thanks Johannes Schindelin!
5982
5983         * THANKS: added Johannes Schindelin.
5984
5985 2005-12-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5986
5987         * python/midi.c (pymidi_parse): use memcmp() iso. strcmp().
5988
5989         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
5990         Span_arpeggio_engraver, add Tweak_engraver to Score context. 
5991
5992         * lily/parser.yy: reorganize file layout.
5993
5994         * ly/music-functions-init.ly: add tweak music function.
5995
5996         * lily/grob-info.cc (ultimate_music_cause): new function:
5997         recursively lookup causes. 
5998
5999         * lily/parser.yy (chord_body_element): allow music functions for
6000         post-events, allow music functions for chord elements. 
6001  
6002         * lily/font-config-scheme.cc (display_fontset): add cast.
6003
6004         * python/convertrules.py (FatalConversionError.sub_syms): \tag
6005         #'(a b) -> \tag #'a \tag #'b rule.
6006
6007         * python/musicexp.py (Output_printer.dump_version): new function
6008
6009 2005-12-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6010
6011         * lily/parser.yy (FIXME): remove \tag
6012         (FIXME): remove tag_music() function.
6013
6014         * lily/lily-lexer.cc: remove \tag
6015
6016         * ly/music-functions-init.ly: define music-function "tag"
6017
6018         * lily/parser.yy (chord_body_element): allow tags in chord bodies.
6019
6020 2005-12-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6021
6022         * VERSION (PATCH_LEVEL): release 2.7.22
6023
6024         * input/regression/lyric-hyphen-retain.ly: renew.
6025
6026         * scm/define-grobs.scm (all-grob-descriptions): add LyricSpace
6027         grob
6028
6029         * lily/lyric-hyphen.cc (set_spacing_rods): use minimum-distance
6030         iso. minimum-length property for rods.
6031
6032         * lily/hyphen-engraver.cc (acknowledge_lyric_syllable): create
6033         LyricSpace item to keep lyrics spaced apart.
6034
6035         * ly/engraver-init.ly: remove Separating_line_group_engraver
6036
6037         * Documentation/user/music-glossary.tely: do setfilename before
6038         music-glossary.
6039
6040 2005-12-07  Heikki Junes  <hjunes@cc.hut.fi>
6041
6042         * Documentation/user/lilypond-book.itely: use `,´ after xref:
6043         See xref documentation, for example.
6044
6045 2005-12-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6046
6047         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): use
6048         pending_skip iso. ly_voice[-1]
6049         (main): add if __main__ for debugging.
6050
6051         * python/musicxml.py (Accidental.__init__): new class.
6052
6053         * scripts/musicxml2ly.py (progress): new function
6054         (musicxml_key_to_lily): don't barf on modeless keys.
6055         (create_skip_music): new function.
6056         (musicxml_spanner_to_lily_event): new function. Handle beams too.
6057         (musicxml_note_to_lily_main_event): new function.
6058
6059         * python/musicexp.py (Music.__init__): add comment field.
6060         (NestedMusic.append): new routine.
6061         (SequentialMusic.print_ly): print comment.
6062         (ArpeggioEvent.ly_expression): new class
6063         (BeamEvent.ly_expression): new class
6064         (NoteEvent.__init__): support for cautionary/forced accs.
6065
6066         * lily/lookup.cc (slur): normal order for array loop.
6067
6068         * scm/framework-ps.scm (dump-stencil-as-EPS): set left X of bbox
6069         to 0.0.
6070
6071         * ly/engraver-init.ly: set bar-size, so bar-lines aren't
6072         collapsed.
6073
6074 2005-12-06 Erik Sandberg  <mandolaerik@gmail.com>
6075
6076         * scm/music-functions.scm: Make phrasing slurs follow voice direction
6077
6078         * scripts/lilypond-book.py: Introduce option
6079             --preserve-line-breaks, for usage with srcltx
6080
6081 2005-12-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6082
6083         * scm/output-lib.scm (print-circled-text-callback): draw circle
6084         around text using make-circle-markup.
6085
6086         * Documentation/user/*: strip out-www from file names.
6087
6088 2005-12-05  Heikki Junes  <hjunes@cc.hut.fi>
6089
6090         * Documentation/user/lilypond.tely (direntry): remove empty lines;
6091         fixes invalid info entry issue with makeinfo 4.8 in debian sid.
6092
6093 2005-12-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6094
6095         * Documentation/user/GNUmakefile: idem.
6096
6097         * Documentation/user/macros.itexi: strip out-www
6098
6099         * python/rational.py: python 2.3 compat.
6100
6101         * VERSION (PATCH_LEVEL): release 2.7.21
6102
6103         * scripts/musicxml2ly.py (NonDentedHeadingFormatter.format_headi):
6104         option formatting, lilypond style.
6105
6106         * python/musicexp.py: grab from Ikebana: a library for composing
6107         ly music expressions. 
6108         (Output_printer): class for advanced .ly printing.
6109         (eg. tupletting) 
6110
6111         * python/musicxml.py: new file. Read MusicXML MiniDOM tree, and
6112         convert to pythonesque structure.
6113
6114         * python/rational.py: PD rational number class.
6115
6116         * Documentation/user/converters.itely (Invoking musicxml2ly):  new node.
6117
6118 2005-12-04  Erik Sandberg  <mandolaerik@gmail.com>
6119
6120         * lily/part-combine-iterator.cc: Minor bugfix
6121         
6122         * THANKS: Update bughunters
6123
6124 2005-12-02  Werner Lemberg  <wl@gnu.org>
6125
6126         * mf/README: Document process for proper mf2pt1 conversion.
6127
6128         * mf/feta-beugel.mf (draw_brace): Fix path to assure clean
6129         overlapping.
6130
6131         * mf/feta-harmonica.mf: Removed.  Unused.
6132
6133 2005-12-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6134
6135         * scripts/lilypond-book.py (do_file): fix thinkos.
6136
6137 2005-12-01  Jan Nieuwenhuizen  <janneke@gnu.org>
6138
6139         * lily/GNUmakefile ($(outdir)/FlexLexer.h):
6140         ($(outdir)/parser.cc): 
6141         ($(outdir)/lexer.cc): Bugfix: depend on config.h.
6142
6143 2005-11-30  Pedro Kröger  <kroeger@pedrokroeger.net>
6144
6145         * ly/titling-init.ly (tagline): it should be a space between
6146         "Music engraving by LilyPond" and the version number.
6147
6148 2005-12-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6149
6150         * VERSION (PACKAGE_NAME): release 2.7.20
6151
6152 2005-11-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6153
6154         * scm/define-markup-commands.scm (pad-to-box): new markup command.
6155
6156         * scm/define-grobs.scm (all-grob-descriptions): set thickness to
6157         1.0.
6158         (all-grob-descriptions): don't shift RehearsalMark arbitrarily.
6159
6160 2005-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6161
6162         * configure.in (LINK_GXX_STATICALLY): remove kpathsea checks.
6163
6164         * kpath-guile/: remove directory
6165
6166         * scm/kpathsea.scm (ly:kpathsea-expand-variable): new
6167         file. Encapsulate kpathsea using commandline tools.
6168
6169         * lily/all-font-metrics.cc (kpathsea_find_file): use (scm
6170         kpathsea) module.
6171
6172 2005-11-29  Mats Bengtsson  <mabe@s3.kth.se>
6173
6174         * Documentation/user/advanced-notation.itely (Setting automatic
6175         beam behavior): Correct a few typos. Thanks to David Bobroff.
6176
6177         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use
6178         \usepackage instead of \RequirePackage. Thanks to Bernard Hurley.
6179
6180 2005-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6181
6182         * scripts/*.py: gmane address for bugs.
6183
6184 2005-11-28 Pal Benko <benkop@freestart.hu>
6185         
6186         * make/ly-rules.make: add -f switch to mv
6187
6188         * scm/output-libs.scm: add new bar symbol "." for punctus divisionis
6189
6190         * lily/bar-line.cc: interpret it
6191
6192 2005-11-28  Jan Nieuwenhuizen  <janneke@gnu.org>
6193
6194         * configure.in (--disable-documentation): New switch.
6195
6196         * GNUmakefile.in: Use it.
6197
6198         * stepmake/aclocal.m4: Use AC_ARG_ENABLE for kpatsea.
6199
6200 2005-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6201
6202         * scripts/lilypond-book.py (do_file): search chunks for
6203         \\begin{document}
6204
6205         * GNUmakefile.in: add copy step in between so we can lose the
6206         out-www directories.
6207
6208 2005-11-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6209
6210         * lily/pango-font.cc (pango_item_string_stencil): put
6211         geometry.width into glyph-string too.
6212
6213 2005-11-26  Nicolas Sceaux  <nicolas.sceaux@free.fr>
6214
6215         * scm/define-music-display-methods.scm (RevertProperty):
6216         (OverrideProperty): Use grob-property-path property, a list of
6217         symbols, instead of grob-property, which used to be a single
6218         symbol.
6219         (BassFigureEvent): a figure can be a plain number, not necessarily a
6220         markup.
6221
6222 2005-11-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6223
6224         * VERSION: release 2.7.19
6225         
6226         * lily/figured-bass-engraver.cc (process_music): check
6227         figuredBassCenterContinuations first.
6228
6229         * scm/translation-functions.scm (format-bass-figure): make double
6230         sharp larger. 
6231
6232         * lily/mark-engraver.cc: read rehearsalMarkAlignSymbol to
6233         determine X-parent.
6234
6235         * lily/system-start-delimiter-engraver.cc: move from
6236         Nested_system_start_delimiter_engraver, rename
6237         Nested_system_start_delimiter_engraver ->
6238         System_start_delimiter_engraver.
6239
6240         * lily/nested-system-start-delimiter-engraver.cc (from_list): read
6241         bracket type from hierarchy.
6242
6243 2005-11-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6244
6245         * lily/rest.cc (y_offset_callback): read staff-position.
6246
6247         * scm/define-grob-properties.scm (all-user-grob-properties): don't
6248         mark after-line-breaking-callback as internal.
6249
6250         * lily/self-aligment-interface.cc: remove self-[XY]-offset.
6251
6252 2005-11-25  Werner Lemberg  <wl@gnu.org>
6253
6254         * mf/feta-banier.mf ("d3"): Make `flare' equal to `staff_space'.
6255
6256 2005-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6257
6258         * stepmake/bin/add-html-footer.py (do_file): add google
6259
6260         * lily/staff-symbol-engraver.cc (process_music): bugfix: stop
6261         staff if first_start_ is true.
6262
6263 2005-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6264
6265         * scripts/midi2ly.py (split_track): add __repr__ members.
6266         (track_first_item): only return Item if not None. This fixes a
6267         problem when dumping a track that starts with an empty channel.
6268
6269         * python/midi.c: doc module.
6270
6271 2005-11-22  Mats Bengtsson  <mabe@s3.kth.se>
6272
6273         * Documentation/user/global.itely (Creating MIDI files): Fix
6274         compilation problem.
6275
6276 2005-11-22  Graham Percival  <gpermus@gmail.com>
6277
6278         * Documentation/user/basic-notation.itely: clarify dynamic
6279         padding text.
6280
6281         * Documentation/user/advanced-notation.itely: add unicode
6282         escape control example, whatever that is.  :)
6283
6284         * Documentation/user/global.itely: added "removing dynamics
6285         from MIDI" code.
6286
6287 2005-11-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6288
6289         * VERSION (PATCH_LEVEL): release 2.7.18
6290
6291         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): replace
6292         System_start_delimiter_engraver by
6293         Nested_system_start_delimiter_engraver.
6294
6295         * lily/nested-system-start-delimiter-engraver.cc (struct
6296         Bracket_nesting_node): new class.
6297         (struct Bracket_nesting_group): new class
6298         (struct Bracket_nesting_staff): new class.
6299         (process_music): create hierarchy of grobs. This allows separate
6300         tuning of different SSDs. 
6301
6302         * scm/define-grobs.scm (all-grob-descriptions): new Grob SystemStartSquare
6303         (all-grob-descriptions): remove old NestedSystemStartDelimiter.
6304
6305 2005-11-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6306
6307         * lily/side-position-interface.cc (aligned_side): multiply
6308         staff_radius by 2.
6309
6310         * lily/script-engraver.cc (make_script_from_event): allow setting
6311         values to '()
6312
6313 2005-11-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6314
6315         * lily/system-start-delimiter.cc (line_bracket): don't shorten height.
6316
6317         * scm/define-grobs.scm (all-grob-descriptions): new grob
6318         NestedSystemStartDelimiter.
6319
6320         * input/regression/system-start-heavy-bar.ly: new file.
6321
6322         * lily/nested-system-start-delimiter-engraver.cc: new file.
6323
6324         * lily/nested-system-start-delimiter.cc: new file.
6325
6326         * input/regression/system-start-nesting.ly: new file.
6327
6328         * scm/define-grobs.scm (all-grob-descriptions): use X side
6329         positioning for positioning braces for nested contexts.
6330
6331         * lily/system-start-delimiter.cc (print): don't divide extent by
6332         staff_space.
6333         (print): use style iso. glyph.
6334         (staff_bracket): translate glyph inside routine already.
6335
6336 2005-11-18  Michael Welsh Duggan <md5i@cs.cmu.edu>
6337
6338         * lily/vaticana-ligature-engraver.cc: fixed 2 typos in glyph
6339         names.
6340
6341 2005-11-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6342
6343         * scm/define-context-properties.scm
6344         (all-user-translation-properties): rename figuredBassFormatter
6345         from newFiguredBassFormatter.
6346
6347         * scm/define-grobs.scm (all-grob-descriptions): move from NewBassFigure
6348
6349         * lily/figured-bass-engraver.cc: move from new-figured-bass-engraver.cc
6350
6351         * lily/stem.cc (calc_stem_info): trigger beaming calculation.
6352
6353         * lily/beam.cc (calc_beaming): new function.
6354         (calc_shorten): new function.
6355
6356         * THANKS: add Edward Neeman.
6357
6358         * input/regression/accidental-clef-change.ly: new file.
6359
6360         * lily/note-collision.cc (check_meshing_chords): don't merge fa heads.
6361
6362         * scm/define-grobs.scm (all-grob-descriptions): add Y-offset property.
6363
6364         * lily/clef-engraver.cc (inspect_clef_properties): reset
6365         localKeySignature for clef changes.
6366
6367 2005-11-17  Mats Bengtsson  <mabe@s3.kth.se>
6368
6369         * python/midi.c: PyMIDINIT_FUNC isn't defined in Python < 2.3 
6370         add dummy definition that works in Linux and add information in
6371         INSTALL.texi on the specific Python requirements for Cygwin/Mingw.
6372
6373         * Documentation/user/changing-defaults.itely (Modifying context
6374         plug-ins): Add index for \with.
6375
6376         * Documentation/user/music-glossary.tely (dal segno): Updated
6377         example to version >=2.6.
6378
6379 2005-11-16  Mats Bengtsson  <mabe@s3.kth.se>
6380
6381         * Documentation/user/instrument-notation.itely (Printing chord
6382         names): Reorder \chordmode and \repeat in one example.
6383
6384 2005-11-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6385
6386         * VERSION: release 2.7.17
6387         
6388         * Documentation/topdocs/NEWS.tely (Top): add note about
6389         refactoring.
6390
6391         * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
6392         new function. Search region of 3 positions for best tie.
6393         (score_configuration): new function.
6394         (score_aptitude): new function.
6395         (generate_configuration): new function.
6396         (get_configuration): new function.
6397         (Tie_formatting_problem): new function
6398
6399         * input/regression/page-top-space.ly: a6 for page-top-space demo. 
6400
6401         * stepmake/aclocal.m4: use $(if ) for config-FOOF.make
6402
6403         * THANKS: add Eduardo Vieira & Ralph Little
6404
6405         * mf/feta-bolletjes.mf (solfa_quarter_width): make solfa heads
6406         narrower.
6407
6408         * lily/include/tie-formatting-problem.hh (class
6409         Tie_formatting_problem): add Tie_details to
6410         Tie_formatting_problem. Update calling conventions.
6411
6412         * stepmake/aclocal.m4: oops. Include $CONFIGFILE.make, not
6413         config.make.
6414
6415         * Documentation/user/lilypond.tely: remove musedata2ly entry.
6416
6417 2005-11-16  Jürgen Reuter  <reuter@ipd.uka.de>
6418
6419         * lily/ligature-engraver.cc, lily/include/ligature-engraver.hh,
6420         scm/define-context-properties.scm: Maintenance bugfix: make
6421         ligature brackets work again by removing obsolete ligature
6422         primitive callback push/pop.
6423
6424         * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: do
6425         not call Tuplet_bracket::calc_direction.  Removed obsolete gap
6426         value.
6427
6428 2005-11-15  Jan Nieuwenhuizen  <janneke@gnu.org>
6429
6430         * stepmake/aclocal.m4 (depth): Explain why absolute directory is
6431         used and do not call it a path.
6432         (FLEXLEXER_FILE): Rename from FLEXLEXER_PATH and add file name.
6433
6434 2005-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6435
6436         * lily/include/tie-formatting-problem.hh (class
6437         Tie_formatting_problem): new file.
6438
6439         * lily/tie-formatting-problem.cc (common_x_refpoint): new file.
6440
6441         * Documentation/misc/ChangeLog-2.3:  new file.
6442
6443         * lily/audio-staff.cc (output): degarianize.
6444
6445 2005-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
6446
6447         * stepmake/stepmake/python-module-rules.make ($(outdir)/%.pyc):
6448         Unset PYTHONOPTIMIZE.  Fixes install if set.
6449
6450 2005-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6451
6452         * python/convertrules.py (conv): add warning about drums. 
6453
6454         * make/stepmake.make: include toplevel-version.make after config.make.
6455
6456         * stepmake/aclocal.m4 (depth): make sure $srcdir is absolute.
6457         also allow python2.4
6458
6459         * config.make.in (configure-srcdir): remove GXX GCC vars.
6460
6461         * stepmake/aclocal.m4: don't do non-srcdir build with
6462         symlinks. Use inclusion, so the src directory name can be changed.
6463
6464 2005-11-13  Jan Nieuwenhuizen  <janneke@gnu.org>
6465
6466         * make/mutopia-vars.make:
6467         * make/ly-vars.make: Use src-wildcard iso wildcard for source
6468         files.
6469
6470 2005-11-13  Werner Lemberg  <wl@gnu.org>
6471
6472         * mf/feta-arrow.mf: For all glyphs, don't mirror `currentpicture'
6473         but the affected path.  This ensures that the (overlapping) outlines
6474         have the same direction, which is a necessary prerequisite for
6475         FontForge's algorithm to remove overlaps.
6476         Formatting.
6477
6478         * mf/feta-haak.mf: Formatting.
6479         (draw_bracket): Slightly modify outline to avoid an unnecessary
6480         corner.
6481         Don't use ad-hoc values for `leave_angle' and `tip_angle' but derive
6482         them from the affected paths.
6483
6484 2005-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6485
6486         * mf/README: remove xpm / accordion notes.
6487
6488         * lily/tie-column-format.cc (set_chord_outline): add dots into
6489         skyline extents. This fixes tie formatting if the left head has dots.
6490
6491         * lily/tie.cc (get_configuration): only shift tie by a whole staff
6492         space inside the staff.
6493         (get_configuration): shift another position if necessary in case
6494         of left head tie  
6495
6496 2005-11-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6497
6498         * stepmake/stepmake/texinfo-vars.make (GENERATE_OMF): use
6499         buildscript-dir iso. $(depth)/buildscripts.
6500
6501         * tex/GNUmakefile (local-uninstall): remove
6502         music-drawing-routines.ps juggling.
6503
6504         * stepmake/stepmake/install-targets.make (local-install-files):
6505         prepend src-dir to install targets.
6506
6507         * lily/system-start-delimiter-engraver.cc
6508         (acknowledge_system_start_delimiter): use
6509         add_offset_callback(). This fixes translation of nested
6510         staffgroups.
6511
6512         * lily/grob-closure.cc (add_offset_callback): only encaps in
6513         simple_closure if it's a procedure.
6514         
6515         * lily/span-bar.cc (calc_glyph_name): read glyph-name, not glyph
6516         from bar-line.
6517
6518         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
6519         remove-empty where pertinent.
6520
6521 2005-11-12  Graham Percival  <gpermus@gmail.com>
6522
6523         * Documentation/user/instrument-notation.itely: added
6524         Cameron Horsburgh's multiple stanzas docs.  Thanks!
6525
6526 2005-11-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6527
6528         * lily/GNUmakefile
6529         ($(top-build-dir)/Documentation/pictures/$(outbase)/lilypond.ico):
6530         make picture in builddir, not srcdir.
6531
6532 2005-11-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6533
6534         * VERSION: release 2.7.16
6535         
6536         * scripts/lilypond-book.py (main): use commands.mkarg () to quote
6537         shell arguments. 
6538
6539 2005-11-10  Mats Bengtsson  <mabe@s3.kth.se>
6540
6541         * Documentation/user/examples.itely (Piano templates): Minor
6542         modification to the Piano centered lyrics example.
6543
6544 2005-11-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6545
6546         * scripts/lilypond-invoke-editor.scm (run-browser): look at
6547         $BROWSER.
6548
6549         * Documentation/user/point-and-click.itely: simplify p&c
6550         instruction: don't configure firefox. Put lilypond-invoke-editor
6551         in front of the browser.
6552
6553         * scripts/lilypond-invoke-editor.scm (run-editor): new function.
6554         (run-browser): new function.
6555
6556         * lily/parser.yy (Lily_lexer): recognize Book
6557
6558         * lily/book.cc (clone): new function
6559
6560         * lily/parser.yy (book_body): allow BOOK_IDENTIFIER.
6561
6562 2005-11-10  Jürgen Reuter  <reuter@ipd.uka.de>
6563
6564         * lily/vaticana-ligature.cc, lily/vaticana-ligature-engraver.cc:
6565         Maintenance bugfix: reduce number of font related warnings by
6566         updating naming conventions for glyph-name.
6567
6568 2005-11-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6569
6570         * scm/define-grobs.scm (all-grob-descriptions): add
6571         rhythmic-grob-interface to TabNoteHead.
6572
6573         * scm/layout-beam.scm (check-quant-callbacks): remove
6574         set_stem_lengths()
6575
6576 2005-11-08  Jürgen Reuter  <reuter@ipd.uka.de>
6577
6578         * ly/gregorian-init.ly (divisiones): Maintenance bugfix: vertical
6579         alignment of centered divisiones.
6580
6581         * scm/scripts.scm (articulations): Maintenance bugfix:
6582         follow-into-staff -> quantize-position.
6583
6584         * lily/vaticana-ligature-engraver.cc (transform_heads): Bugfix:
6585         plica head in porrectus deminutus.
6586
6587 2005-11-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6588
6589         * make/lilypond.fedora.spec.in (Group): add %clean section.
6590
6591         * lily/tuplet-bracket.cc (print): change check: remove bracket if
6592         less then 1/5th of total length.  
6593         (print): use gap too.  Fixes tupletUp-single-bracket.ly
6594
6595         * scm/music-functions.scm (glue-mm-rest-texts): also put other
6596         events into EventChord. This fixes textspanners on mm rests. Fixes
6597         spanner-rest.ly
6598
6599         * lily/side-position-interface.cc (get_axis): read side-axis
6600         (set_axis): set side-axis.
6601
6602         * scm/define-grobs.scm (all-grob-descriptions): add side-axis
6603         properties everywhere.
6604
6605         * lily/spacing-spanner.cc (breakable_column_spacing): add
6606         average-spacing-wishes. Take maximum if not set.
6607         (musical_column_spacing): idem. Fixes: spacing-keysig-note.ly
6608
6609         * scm/define-grobs.scm (all-grob-descriptions): add
6610         average-spacing-wishes.
6611
6612         * lily/grob-closure.cc (add_offset_callback): bugfix: properly add
6613         offset callbacks. This fixes alignment for Fingering objects.
6614
6615         * scm/define-grobs.scm (all-grob-descriptions): tiny bit less
6616         space for key - timesig combination. 
6617
6618         * input/regression/script-stem-tremolo.ly (Module): new file.
6619
6620         * scm/define-grobs.scm (all-grob-descriptions): decrease distance
6621         to key sig.
6622
6623         * lily/dynamic-engraver.cc (acknowledge_stem_tremolo): new function.
6624         Fixes: c-tremolo-script.ly.
6625         
6626         * lily/text-engraver.cc (acknowledge_stem_tremolo): new function.
6627
6628         * lily/script-engraver.cc (acknowledge_stem_tremolo): new function.
6629         
6630         * scm/define-grobs.scm (all-grob-descriptions): remove
6631         self-X-offset. Fixes alignment of octavate-8.
6632
6633         * scripts/lilypond-book.py (datadir): look in
6634         LILYPONDPREFIX/share/lilypond/current/
6635
6636         * GNUmakefile.in: symlink current to <VERSION>. 
6637
6638 2005-11-07  Pedro Kroger  <kroeger@pedrokroeger.net>
6639
6640         * lily/main.cc: eps listed as a backend.
6641
6642 2005-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6643
6644         * scm/lily-library.scm (print-music-as-book): quote $defaultpaper.
6645
6646 2005-11-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6647
6648         * lily/include/score.hh (class Score): remove texts_ member.
6649
6650         * lily/beam.cc (set_stem_lengths): force direction callback.
6651         (print): read quantized-positions, so we can force
6652         Beam::set_stem_lengths to occur.
6653         (rest_collision_callback): use common X parent. 
6654
6655 2005-11-03  Jan Nieuwenhuizen  <janneke@gnu.org>
6656
6657         * flower/file-path.cc (find): Bugfix: Return name of file found.
6658
6659         * lily/main.cc (setup_paths): Bugfix for argv0 logic.
6660         (setup_paths)[__CYGWIN__ || __MINGW32__]: Normalize argv0.
6661         (setup_paths)[__MINGW32__]: Also look for argv0 + .exe.
6662
6663 2005-11-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6664
6665         * flower/offset.cc: idem.
6666
6667         * mf/*.mf: update email address.
6668
6669         * lily/font-config-scheme.cc:  new file.
6670
6671         * GNUmakefile.in (SUBDIRS): remove debian/ directory.
6672
6673         * lily/*:  cs.uu.nl -> xs4all.nl
6674
6675         * VERSION (PATCH_LEVEL): release 2.7.15
6676
6677         * make/lilypond.mandrake.spec.in (Module): remove Mandrake & Suse
6678         spec files.
6679
6680         * make/lilypond.fedora.spec.in: add %{libdir}/lilypond/
6681
6682 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6683
6684         * GNUmakefile.in: bugfix: encapsulate mkdir && cd in parens.   
6685
6686         * lily/staff-performer.cc (process_music): add audio
6687         elements. This makes MIDI instrument changes work once again.
6688
6689         * lily/main.cc (LY_DEFINE): add gmane address.
6690
6691         * lily/beam.cc: remove calc_positions()
6692
6693         * lily/include/grob.hh (class Grob): move pscore, dim_cache_,
6694         original_ in private scope.
6695         (class Grob): drop pscore_ pointer, change to output_def pointer.
6696         (class Grob): cleanup class definition.
6697
6698         * ly/spanners-init.ly (assertBeamQuant): use make-simple-closure.
6699
6700 2005-11-02  Jan Nieuwenhuizen  <janneke@gnu.org>
6701
6702         * lily/main.cc (setup_paths)[__MINGW32__]: Do not assume argv0 is
6703         absolute.  Better diagnostics.
6704
6705         * GNUmakefile.in: Add bin/ to tree and populate with some links.
6706         This makes lilypond run from the build directory using argv0
6707         relocation (without any --prefix or LILYPONDPREFIX setting).
6708
6709 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6710
6711         * Documentation/topdocs/NEWS.tely (Top): document new backend design.
6712
6713         * scm/define-grobs.scm: purge self-[XY]-offset variables, replace
6714         with simple-closure.
6715
6716         * lily/self-aligment-interface.cc (set_align_self): new function
6717         (set_center_parent): new function.
6718
6719         * lily/side-position-interface.cc (set_axis): new function.
6720
6721         * lily/new-fingering-engraver.cc (position_scripts): use drul for
6722         generic code. 
6723
6724         * scm/define-grob-properties.scm (all-user-grob-properties):
6725         remove [XY]-offset-callbacks add [YX]-offset
6726         
6727 2005-11-02  Mats Bengtsson  <mabe@s3.kth.se>
6728
6729         * scm/define-grobs.scm (all-grob-descriptions): Added space-alist
6730         entry for time signatures after breathing signs. Bug report by
6731         Scott Russell.
6732
6733 2005-11-01  Jan Nieuwenhuizen  <janneke@gnu.org>
6734
6735         * lily/main.cc (setup_paths)[!__MINGW32__]: Bugfix: if argv0 is
6736         not absolute, make it absolute using PATH.
6737
6738 2005-10-28  Jan Nieuwenhuizen  <janneke@gnu.org>
6739
6740         * python/midi.c (initmidi): Fix type for mingw.
6741
6742 2005-10-27  Jan Nieuwenhuizen  <janneke@gnu.org>
6743
6744         * stepmake/stepmake/compile-vars.make (SHARED_FLAGS): Support mingw.
6745
6746         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Detect mingw
6747         cross compiling.
6748
6749         * stepmake/aclocal.m4: Support python cross compiling.
6750
6751         * stepmake/stepmake/python-module-vars.make (SHARED_MODULE_SUFFIX):
6752         Add mingw section.
6753
6754 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6755
6756         * scm/output-lib.scm (chain-grob-member-functions): replace
6757         chained-callback.cc
6758
6759         * lily/chained-callback.cc (Module): remove file.
6760
6761         * lily/rest-collision.cc (force_shift_callback_rest): change to
6762         chained callback.
6763
6764         * lily/rest.cc (y_offset_callback): merge function of 3 callbacks. 
6765
6766         * lily/grob.cc (y_parent_positioning): remove axis argument from
6767         parent_positioning callbacks.
6768         (Grob): junk init code
6769         (get_offset): use generic property callbacks for
6770         X-offset, Y-offset. Remove Grob::{add,has}_offset_callback.
6771         (axis_parent_positioning): new function
6772         (axis_offset_symbol): new function
6773         (chain_offset_callback): new function
6774         (add_offset_callback): new function
6775
6776         * lily/beam.cc (rest_collision_callback): change signature; this
6777         is now a chained callback.
6778
6779         * lily/include/dimension-cache.hh (class Dimension_cache): remove
6780         callback administration.
6781
6782         * lily/simple-closure.cc: new file. Smob type that allows "grob
6783         member functions",
6784
6785             (ly:make-simple-closure FUNC A B)
6786
6787         is evaluated as (FUNC grob A B). This allows chaining of callbacks
6788         in various ways.
6789
6790         * lily/slur-engraver.cc (acknowledge_extra_object): use chained
6791         callbacks.
6792
6793         * lily/slur.cc (outside_slur_callback): take 2 arguments.
6794
6795         * lily/rest.cc (polyphonic_offset_callback): remove.
6796
6797         * lily/script-engraver.cc (try_music): remove bool* argument.
6798
6799         * scm/script.scm (default-script-alist): set quantize-position
6800         appropriately.
6801
6802         * lily/script-engraver.cc: remove follow_into_staff_ special coding. 
6803
6804         * lily/side-position-interface.cc (aligned_side): move staff
6805         position quantization from
6806         Side_position_interface::quantised_position().
6807         (quantised_position): remove
6808         
6809 2005-10-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6810
6811         * input/regression/beam-quant-standard.ly: reindent, set
6812         debug-beam-quanting to #t.
6813
6814         * lily/beam-concave.cc (calc_concaveness): set concaveness to
6815         10000 if this is a "hard" concave beam.
6816
6817         * lily/beam.cc (calc_least_squares_positions): change from
6818         calc_least_squares_dy
6819         (set_stem_lengths): this is now a chained callback.
6820
6821         * lily/context-property.cc (execute_general_pushpop_property):
6822         bugfix override with procedure should have effect.
6823
6824         * scm/define-grob-properties.scm (all-internal-grob-properties):
6825         remove position-callbacks.
6826
6827         * scm/define-grobs.scm (all-grob-descriptions): use
6828         ly:make-callback-chain for positions property.
6829
6830         * scm/layout-beam.scm (check-quant-callbacks): return list of
6831         chained callbacks.
6832
6833         * scm/lily.scm (type-p-name-alist): add callback-chain
6834
6835         * lily/lily-guile.cc (type_check_assignment): type check failure
6836         is warning not message.
6837
6838         * lily/grob-property.cc (try_callback): walk callback chain if
6839         appropriate.
6840
6841         * lily/chained-callback.cc: new file. new smob type.
6842
6843         * lily/lily-guile.cc (procedure_arity): new function.
6844
6845 2005-10-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6846
6847         * Documentation/topdocs/INSTALL.texi (Top): add perl flex bison.
6848
6849 2005-10-25  John Mandereau  <john.mandereau@free.fr>
6850  
6851         * Documentation/user/instrument-notation.itely (Figured bass):
6852         describe new features
6853
6854 2005-10-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6855
6856         * lily/beam.cc (calc_least_squares_dy): use property callback.
6857
6858         * lily/beam-concave.cc (calc_concaveness): use property callback.
6859
6860         * ly/paper-defaults.ly: move fixed dimensions from paper.scm 
6861
6862 2005-10-25  Jan Nieuwenhuizen  <janneke@gnu.org>
6863
6864         * HACKING: Update.
6865
6866 2005-10-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6867
6868         * scm/layout-page-layout.scm (page-headfoot): annotate
6869         pagetopspace too.
6870
6871         * scm/stencil.scm (dimension-arrows): shorten arrowed lines a bit. 
6872
6873         * scm/layout-page-layout.scm (annotate-y-interval): y-annotation
6874         doesn't take y-space.
6875
6876         * scm/paper.scm (paper-alist): fix A7 dimensions. 
6877
6878 2005-10-24  Jan Nieuwenhuizen  <janneke@gnu.org>
6879
6880         * stepmake/stepmake/generic-vars.make (DIST_FILES): Fix
6881         src-wildcard, remove $(wildcard).
6882
6883         * po/GNUmakefile (PO_FILES): 
6884         * ps/GNUmakefile (PS_FILES): 
6885         * tex/GNUmakefile (TEX_FILES): 
6886         * cygwin/GNUmakefile (POSTINSTALLS):
6887         * vim/GNUmakefile (EXTRA_DIST_FILES): Bugfix: [etags sr?] missed
6888         some wildcard calls.
6889
6890 2005-10-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6891
6892         * THANKS: add Thomas Bushnell.
6893
6894 2005-10-23  Jan Nieuwenhuizen  <janneke@gnu.org>
6895
6896         * scm/lily.scm: Remove horrendous running-from-gui? kludge.
6897         (lilypond-main): Redirect to gui-main if 'gui is set.
6898
6899         * scripts/midi2ly.py (datadir): Add libdir iso datadir to path,
6900         for alternative installations kludging s/share/lib/g
6901         LILYPONDPREFIX. 
6902
6903         * SConstruct (libdir_package_version): Define.
6904
6905         * python/SConscript: 
6906         * python/GNUmakefile (INSTALLATION_OUT_DIR): Install binary .so
6907         module in libdir.  
6908
6909 2005-10-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6910
6911         * lily/main.cc: clarify --safe.
6912
6913 2005-10-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6914
6915         * VERSION: release 2.7.14
6916         
6917         * Documentation/user/*.itely: remove minimumVerticalExtent.
6918
6919         * scm/define-grobs.scm (all-grob-descriptions): remove
6920         RemoveEmptyVerticalGroup
6921
6922         * lily/hara-kiri-engraver.cc (get_spanner): create VerticalAxisGroup.
6923
6924         * lily/include/lily-guile.hh (GUILE_ELLIPSIS): define to get clean
6925         compile on MOSX
6926
6927         * python/convertrules.py (conv): add rules.
6928
6929         * lily/grob.cc: remove is_empty()
6930
6931         * lily/grob-property.cc: remove add_to_list_property().
6932
6933         * scripts/convert-ly.py (datadir): add prefix switching hack to
6934         .py too.
6935
6936         * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily (cresc): remove
6937         space-function tweak.
6938
6939         * lily/grob.cc: remove X-extent-callback / Y-extent-callback.
6940
6941         * scm/define-grob-properties.scm (all-user-grob-properties):
6942         remove callback property.
6943
6944         * lily/include/grob.hh (class Grob): remove property_callbacks_
6945         member. Properties of procedure type are assumed to be callbacks.
6946
6947         * lily/ligature-engraver.cc (override_stencil_callback):
6948         rewrite. Use noteHeadLigaturePrimitive as source.
6949
6950         * scm/define-grob-properties.scm (all-internal-grob-properties):
6951         remove ligature-primitive-callback
6952
6953         * lily/include/dimension-cache.hh (class Dimension_cache): make
6954         class, with Grob as friend.
6955
6956         * lily/grob.cc: remove set_extent_callback(), set_extent() and
6957         has_extent_callback()
6958
6959         * scm/translation-functions.scm (format-new-bass-figure): read
6960         figuredBassPlusDirection
6961
6962         * scm/define-context-properties.scm
6963         (all-user-translation-properties): add figuredBassPlusDirection.
6964
6965         * lily/staff-spacing.cc (next_notes_correction): oops. Init wishes.
6966
6967         * lily/align-interface.cc (set_ordered): new function.
6968
6969         * lily/grob.cc (flush_extent_cache): rewrite.
6970
6971         * lily/dimension-cache.cc (Dimension_cache): cache extent as
6972         Interval pointer directly.
6973
6974         * lily/main.cc (setup_paths): insert extra / .
6975         (setup_paths): junk cff entry.
6976
6977         * lily/font-config.cc (init_fontconfig): only add type1 / otf
6978         directories.
6979
6980         * lily/axis-group-engraver.cc (finalize): remove
6981         extraVerticalExtent, minimumVerticalExtent verticalExtent.
6982
6983         * lily/grob.cc (Grob): don't set extent from ctor.
6984         (extent): use property callbacks. 
6985
6986         * lily/axis-group-interface.cc: remove set_axes() function.
6987
6988         * lily/grob-property.cc (del_property): new function.
6989
6990 2005-10-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6991
6992         * lily/font-config.cc (init_fontconfig): resurrect mf/out/ check.
6993         
6994 2005-10-20  Jan Nieuwenhuizen  <janneke@gnu.org>
6995
6996         * stepmake/stepmake/script-vars.make (PYTHON_SCRIPTS_IN): Oops.  Add.
6997
6998 2005-10-19  Jan Nieuwenhuizen  <janneke@gnu.org>
6999
7000         * mf/SConscript: Updates.
7001
7002         * lily/GNUmakefile (OUT_DIST_FILES): Bugfix.
7003
7004         * stepmake/stepmake/*:
7005         * */GNUmakefile:
7006         * config.make.in:
7007         * GNUmakefile.in:
7008         * stepmake/aclocal.m4: Friendlier --srcdir build, allowing `make'
7009         from any directory in build-dir.  Cleanups.
7010
7011         * make/srcdir.make.in: Remove.
7012
7013         * lily/main.cc (setup_paths): Fix and document build-dir hack.
7014
7015         * SConstruct (CheckYYCurrentBuffer): Use TryCompile (there is no
7016         main).
7017
7018         * lily/SConscript: Remove ttftools.
7019
7020         * SConstruct: Resurrect.
7021
7022 2005-10-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7023
7024         * lily/tuplet-bracket.cc (print): use dy iso. positions[RIGHT] for
7025         Y coordinate. 
7026
7027         * lily/paper-book.cc (add_score_title): put Paper_score title into
7028         systems_ list.
7029
7030         * scm/translation-functions.scm (format-new-bass-figure): also
7031         allow plus in combination with _
7032
7033 2005-10-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7034
7035         * VERSION: 2.7.13 released.
7036
7037         * lily/note-collision.cc (check_meshing_chords): don't wipe
7038         stencil, merely set transparent.
7039
7040         * Documentation/topdocs/NEWS.tely (Top): mention John Mandereau. 
7041         (Top): document #'callbacks.
7042         (Top): document nested \override.
7043
7044         * input/regression/figured-bass.ly: update for slash and pluses.
7045
7046         * input/regression/figured-bass-continuation-forbid.ly (Module):
7047         new file.
7048
7049         * scm/translation-functions.scm (format-new-bass-figure): use
7050         slashed-digit if diminished is set.
7051         (format-new-bass-figure): add + if 'augmented is set.
7052
7053         * scm/define-markup-commands.scm (slashed-digit): new command slashed-digit.
7054
7055         * input/test/piano-staff-distance.ly: remove file.
7056
7057         * Documentation/user/advanced-notation.itely (Formatting cue
7058         notes): use length-fraction for making stems/beams smaller.
7059
7060         * lily/parser.yy (bass_figure): accept \+ \! and / as figured bass
7061         modifications.
7062
7063         * lily/new-figured-bass-engraver.cc: new property
7064         centerFiguredBassContinuations
7065
7066         * Documentation/user/changing-defaults.itely (Difficult tweaks):
7067         use callbacks.
7068
7069         * lily/context-property.cc (execute_general_pushpop_property):
7070         robustness checks.
7071
7072         * input/regression/override-nest.ly: new file.
7073
7074         * python/convertrules.py (FatalConversionError.subber): conversion
7075         rule for #'callbacks
7076
7077         * input/regression/override-nest.ly: new function.
7078
7079         * lily/parser.yy (music_property_def): allow \override #'a #'b =
7080         #c too. 
7081
7082         * lily/context-property.cc (lookup_nested_property): new function.
7083         (evict_from_alist): new function.
7084         (general_pushpop_property): new function.
7085         (execute_general_pushpop_property): rewrite. Support nested
7086         properties too.
7087
7088 2005-10-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7089
7090         * lily/beam.cc: use length-fraction too.
7091
7092         * scm/define-grob-properties.scm (all-user-grob-properties):
7093         remove property flag-width-function
7094         (all-user-grob-properties): remove space-function.
7095
7096         * scm/layout-beam.scm: remove flag-width-function.
7097
7098         * lily/beam.cc: remove flag-width-function
7099
7100         * scm/layout-beam.scm: remove beam dir functions.
7101
7102         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): use length-fraction.
7103
7104         * lily/stem.cc (calc_length): multiply with length_fraction. Makes
7105         for easier grace tweaks.
7106
7107         * lily/beam.cc: remove dir-function.
7108
7109         * lily/system.cc (pre_processing): use callback to trigger spacing procedures.
7110
7111         * lily/grob.cc: remove spacing-procedure.
7112
7113         * lily/note-head.cc (calc_stem_attachment): new function.
7114         (internal_print): use callback to get glyph-name.
7115
7116         * lily/grob-property.cc (get_interfaces): new function.
7117
7118         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-interfaces
7119
7120         * lily/stem.cc (calc_stem_end_position): new function.
7121         (calc_length): new function.
7122         document details for stem.
7123         remove Stem::get_direction()
7124
7125         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-set-callback! 
7126
7127         * lily/grob-property.cc (set_callback): new function.
7128
7129         * lily/script-engraver.cc (make_script_from_event): don't trigger callback.
7130
7131         * lily/item-scheme.cc: new file.
7132
7133         * lily/bar-line.cc (before_line_breaking): remove function.
7134         remove bar-size-procedure, break-glyph-function
7135
7136         * lily/clef-engraver.cc (set_glyph): use glyph iso. glyph-name
7137
7138         * lily/clef.cc (before_line_breaking): change to calc_glyph_name.
7139
7140         * lily/system-start-delimiter.cc (print): suicide from
7141         here. Remove after_line_breaking_callback.
7142
7143         * lily/script-interface.cc (calc_direction): use callback for direction.
7144
7145         * lily/side-position-interface.cc (aligned_side): don't use
7146         Side_position_interface::get_direction directly. Use callback. 
7147
7148         * lily/grob.cc (get_stencil): simplify: use callback mechanism to
7149         calculate stencil.
7150         (get_print_stencil): rename from get_stencil: create stencil with
7151         transparency, color and cause. 
7152
7153         * scm/define-grobs.scm: change print-function to stencil callback everywhere.
7154
7155         * python/convertrules.py (conv): insert temporary warning rule.
7156
7157         * lily/multi-measure-rest.cc (set_text_rods): use stencil directly.
7158
7159         * lily/grob-property.cc (try_callback): remove marker if applicable.
7160
7161         * lily/grob.cc: elucidate doc about after/before-line-breaking
7162
7163         * lily/slur-scoring.cc (enumerate_attachments): robustness fix.
7164
7165         * lily/stem.cc (height): idem.
7166
7167         * lily/stem-tremolo.cc: idem.
7168
7169         * lily/slur.cc (height): don't use get_uncached_stencil()
7170
7171         * lily/rest.cc (y_offset_callback): use offset callback
7172         iso. after-line-breaking callback.
7173
7174         * lily/grob.cc: change after/before-line-breaking-callback to
7175         after/before-line-breaking dummy properties.
7176
7177         * lily/include/grob.hh: remove Grob_status.
7178
7179         * scm/define-context-properties.scm
7180         (all-user-translation-properties): remove verticalAlignmentChildCallback
7181
7182         * lily/tuplet-bracket.cc: use positions property iso. left,right-position.
7183         (calc_direction): use callback
7184         (calc_positions): use callback.
7185
7186         * lily/tie.cc (calc_direction): use callback. Only call parent
7187         positioning for more than one tie.
7188
7189         * lily/tie-column.cc (calc_positioning_done): use callback
7190
7191         * lily/slur-scoring.cc (calc_control_points): use callback
7192
7193         * lily/slur.cc (calc_direction): use callback.
7194
7195         * lily/note-collision.cc (force_shift_callback): remove.
7196
7197         * lily/dot-column.cc (force_shift_callback): remove. Use
7198         other_axis_parent_positioning.
7199
7200         * lily/grob.cc (other_axis_parent_positioning): new function.
7201         (same_axis_parent_positioning): new function
7202
7203         * lily/align-interface.cc (alignment_callback): remove function.
7204
7205         * lily/note-collision.cc (calc_positioning_done): use callback.
7206
7207         * lily/laissez-vibrer-tie.cc (calc_control_points): use callback.
7208         (calc_direction): idem.
7209         remove print function.
7210
7211         * lily/laissez-vibrer-tie-column.cc (calc_positioning_done): use callback.
7212
7213         * lily/dot-column.cc (calc_positioning_done): use callback.
7214
7215         * lily/break-align-interface.cc (calc_positioning_done): use callback.
7216
7217         * lily/beam.cc (calc_direction): use pseudo-property for beam
7218         direction callback.
7219         (calc_positions): use callback 
7220
7221         * lily/align-interface.cc (calc_positioning_done): use
7222         callback. Fold fixed  distance and normal alignment in one function.
7223
7224         * lily/stem.cc (calc_stem_end_position): use callback.
7225         (calc_positioning_done): idem.
7226         (calc_direction): idem.
7227         (calc_stem_end_position): idem
7228         (calc_stem_info): idem.
7229
7230         * lily/grob-property.cc (get_property_data): new function: 
7231         (try_callback): new function.
7232
7233         * scm/define-grob-properties.scm (all-user-grob-properties): doc
7234         callbacks property.
7235
7236         * lily/break-align-interface.cc: remove Break_align_interface::alignment_callback.
7237
7238 2005-10-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7239
7240         * lily/tie.cc (get_position): robustness fix. Don't crash if a
7241         tie
7242         has no heads.
7243         
7244         * lily/include/*.hh (Module): compile fixes.
7245
7246 2005-10-14  Heikki Junes <hjunes@cc.hut.fi>
7247
7248         * elisp/lilypond-font-lock.el, elisp/lilypond-indent.el: Avoid nil 
7249         as an argument for char-syntax: use (char-syntax (or nil 0)) 
7250         instead of (char-syntax nil), thanks to Milan Zamazal.
7251
7252 2005-10-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7253
7254         * make/lilypond.fedora.spec.in (Group): add lilypond-internals to
7255         dist.
7256
7257         * lily/tuplet-bracket.cc: check columns of bounds, not bounds
7258         themselves.
7259
7260 2005-10-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7261
7262         * flower/include/virtual-methods.hh (VIRTUAL_COPY_CONSTRUCTOR):
7263         add class_name() method.
7264
7265         * lily/music-scheme.cc: remove ly:music-name.
7266
7267 2005-10-11  Jan Nieuwenhuizen  <janneke@gnu.org>
7268
7269         * cygwin/postinstall-lilypond.sh: Remove cruft.
7270
7271         * cygwin/postremove-lilypond.sh: Remove.
7272
7273         * cygwin/GNUmakefile (default): Remove postremove rules.
7274
7275 2005-10-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7276
7277         * ly/titling-init.ly (evenHeaderMarkup): use space in header on
7278         even header too.
7279         
7280         * scm/define-markup-commands.scm (wordwrap-string): bugfix for
7281         MacOS 9 users.
7282
7283         * lily/hara-kiri-group-spanner.cc (consider_suicide): only
7284         consider break index for broken spanner.
7285
7286         * scm/define-markup-commands.scm (wordwrap-string): remove \r
7287         characters from string before splitting.
7288
7289 2005-10-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7290
7291         * scm/framework-ps.scm (output-preview-framework): use
7292         is-book-title to determine whether to chop off the booktitle.
7293
7294         * lily/paper-book.cc (systems): init from book-title-properties
7295         (add_score_title): init score-title-properties.
7296
7297         * ly/paper-defaults.ly: add {score,book}-title-properties.
7298
7299         * scm/document-backend.scm (lookup-interface): error message if
7300         using unknown interface.
7301
7302         * lily/volta-bracket.cc (after_line_breaking): new function. Set
7303         edge-height.
7304
7305         * lily/horizontal-bracket.cc (make_enclosing_bracket): rename from
7306         make_bracket.
7307         (make_bracket): new function.
7308
7309         * scm/lily.scm (define-scheme-options): add paper-size option.
7310
7311         * ly/declarations-init.ly (laissezVibrer): get paper size from
7312         -dpaper-size
7313
7314         * scm/translation-functions.scm: use \fontsize for changing the
7315         fontsize.
7316
7317         * scm/define-grobs.scm (all-grob-descriptions): set
7318         between-length-limit to 1.0
7319
7320         * lily/tie-helper.cc: add between_length_limit_ detail property.
7321
7322         * mf/feta-bolletjes.mf: typos.
7323
7324         * lily/note-head.cc (internal_print): don't shadow idx
7325         parameter. This fixes wrong attachment for do shape heads.
7326
7327 2005-10-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7328
7329         * scm/parser-ly-from-scheme.scm: rename from ly-from-scheme.scm
7330
7331         * scm/parser-clef.scm (supported-clefs): rename from clef.scm
7332
7333         * scm/layout-slur.scm: rename from slur.scm
7334
7335         * scm/layout-page-layout.scm: rename from page-layout.scm
7336
7337         * scm/layout-beam.scm: rename from beam.scm
7338
7339         * scm/define-grob-interfaces.scm (bass-figure-interface): add
7340         bass-figure-interface
7341
7342         * lily/new-figured-bass-engraver.cc (process_music): add
7343         implicitBassFigures property.
7344         
7345         * scm/define-markup-commands.scm (pad-x): new markup.
7346
7347         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set
7348         minimumVerticalExtent on FiguredBass context.
7349
7350         * lily/figured-bass-continuation.cc (center_on_figures): kludge in
7351         case the continuation crosses a line break.
7352
7353 2005-10-09  Jan Nieuwenhuizen  <janneke@gnu.org>
7354
7355         * flower/file-name.cc (dos_to_posix)[__CYGWIN__]: Return
7356         unconverted value if cygwin_conv_to_posix_path () fails.  Fixes
7357         absolute file name bug.  
7358
7359 2005-10-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7360
7361         * VERSION (PACKAGE_NAME): release 2.7.12
7362
7363         * input/regression/figured-bass-continuation-center.ly: new file.
7364
7365         * input/regression/beam-outside-beamlets.ly: new file.
7366
7367         * lily/beam.cc (set_beaming): don't clip edges.
7368         (connect_beams): don't clip edges.
7369
7370         * lily/beaming-info.cc (clip_edges): new function.
7371
7372         * lily/enclosing-bracket.cc (struct Enclosing_bracket): new file.
7373
7374         * Documentation/user/instrument-notation.itely (Figured bass):
7375         demonstrate extenders, update seealso links.
7376
7377         * scm/titling.scm (marked-up-headfoot): change tagline
7378         handling. tagline = ##f will blank the tagline as well.
7379
7380 2005-10-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7381
7382         * Documentation/topdocs/NEWS.tely: add entry for Figured bass.
7383
7384         * lily/new-figured-bass-engraver.cc (struct
7385         New_figured_bass_engraver): add new_music_found_ member.
7386
7387         * lily/lilypond-version.cc (Lilypond_version): deal with
7388         incorrectly formatted version strings. 
7389
7390         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): switch on
7391         New_figured_bass_engraver by default.
7392
7393         * lily/ttf.cc (print_trailer): only define glyph names when
7394         FT_Face has FT_FACE_FLAG_GLYPH_NAMES
7395
7396 2005-10-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7397
7398         * lily/horizontal-bracket.cc (make_bracket): new function.
7399
7400         * scm/define-grobs.scm (all-grob-descriptions): new grobs
7401         NewBassFigure, BassFigureBracket, BassFigureContinuation,
7402         BassFigureLine, BassFigureAlignment
7403
7404         * lily/new-figured-bass-engraver.cc (process_music): new file.
7405
7406         * lily/figured-bass-continuation.cc: new file.
7407
7408         * lily/include/horizontal-bracket.hh (struct Horizontal_bracket):
7409         new file.
7410
7411 2005-10-04  Mats Bengtsson  <mabe@s3.kth.se>
7412
7413         * scripts/lilypond-book.py: Bug fix, put the quote around the
7414         actual score for LaTeX documents.
7415
7416         * scm/define-grobs.scm (all-grob-descriptions): Change
7417         collapse-height of the SystemStartBracket grob to 5.0, 
7418         so the bracket disappears for single stave score lines (similarly
7419         to SystemStartBraces). 
7420
7421         * Documentation/user/advanced-notation.itely (Polymetric
7422         notation): Clarify the use of compressMusic.
7423
7424         * Documentation/user/basic-notation.itely (Grace notes): Clarify
7425         that the grace spacer note in other staves need the same duration
7426         and document the stroke-style property.
7427
7428 2005-10-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7429
7430         * Documentation/user/global.itely (Vertical spacing): document
7431         alignment-extra-space and fixed-alignment-extra-space.
7432
7433         * Documentation/topdocs/NEWS.tely (Top): add entry.
7434
7435         * input/regression/alignment-vertical-spacing.ly: new file.
7436
7437         * python/convertrules.py (conv): add rule.
7438
7439         * ly/music-functions-init.ly: rename outputProperty to overrideProperty
7440
7441         * lily/align-interface.cc (stretch_after_break): new
7442         function. Read fixed-alignment-extra-space property.
7443         (align_elements_to_extents): read alignment-extra-space property.
7444
7445         * lily/lily-guile.cc (robust_scm2dir): new function.
7446
7447         * scm/page-layout.scm (page-headfoot): annotate headsep and footsep.
7448         (annotate-space-left): new function. Annotate space left on page. 
7449         (annotate-y-interval): new function.
7450         (paper-system-annotate-last): new function. Annotate bottom-space.
7451
7452         * mf/feta-beugel.mf (y): 
7453
7454 2005-10-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7455
7456         * VERSION (PACKAGE_NAME):  release 2.7.11
7457
7458         * scm/lily-library.scm (interval-translate): new function
7459         (interval-center): new function. 
7460
7461         * scm/page-layout.scm (paper-system-annotate): new function. Add
7462         arrows for dimensions.
7463  
7464         * scm/stencil.scm (dimension-arrows): new function.
7465
7466         * Documentation/user/global.itely (Vertical spacing): mention annotatespacing
7467
7468         * input/regression/page-spacing.ly: add annotatespacing
7469
7470         * lily/paper-system-scheme.cc (LY_DEFINE): remove ly:paper-system-{extent,stencil}
7471         (LY_DEFINE): new function ly:paper-system-set-property!
7472
7473         * Documentation/user/global.itely (Paper size): explain how to add
7474         sizes.
7475
7476         * scm/paper.scm (paper-alist): rename tabloid paper to 11x17 to
7477         correspond to GS's definition.
7478
7479         * lily/tuplet-bracket.cc (after_line_breaking): suicide empty
7480         tuplet bracket.
7481         (print): only connect to next bracket if the next one is alive.
7482         (print): set padding to 0.0 if the bound is a breakable
7483         column. This makes tupletFullLength brackets reach up to the staff
7484         line if it doesn't connect to the next line.
7485
7486 2005-09-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7487
7488         * lily/bar-number-engraver.cc: correct docs.
7489
7490         * scm/output-lib.scm (first-bar-number-invisible): rename from
7491         default-bar-number-visibility
7492
7493 2005-09-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7494
7495         * scm/define-music-properties.scm (all-music-properties): remove
7496         predicate property.
7497
7498 2005-09-28  Heikki Junes  <hjunes@cc.hut.fi>
7499
7500         * po/fi.po: refresh.
7501
7502 2005-09-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7503
7504         * input/regression/hara-kiri-pianostaff.ly (disappear): remove
7505         superfluous s1.
7506         (disappear): bugfix.
7507
7508         * lily/stem-tremolo.cc (raw_stencil): read slope property.
7509
7510         * lily/include/paper-system.hh (class Paper_system): remove
7511         staff_extents_ member.
7512
7513         * lily/paper-system-scheme.cc (LY_DEFINE): remove.
7514
7515         * lily/include/paper-system.hh (class Paper_system): remove
7516         number_ variable. Remove is_title_. Remove break_before_penalty_
7517
7518         * lily/paper-book.cc (systems): use 'number property iso. number_
7519         member.
7520
7521         * lily/paper-system-scheme.cc: remove ly:paper-system-break-before-penalty
7522         remove ly:paper-system-number.
7523
7524         * scm/lily-library.scm (paper-system-title?): new function.
7525
7526         * lily/book.cc (process): bugfix: flip ?: cases. 
7527
7528         * Documentation/user/changing-defaults.itely (Difficult tweaks):
7529         add outputProperty.
7530
7531         * ly/music-functions-init.ly: add outputProperty music function.
7532
7533         * scm/paper.scm (set-paper-dimension-variables): add pagetopspace
7534
7535         * scm/page-layout.scm (ly:optimal-page-breaks): read next-space
7536         and next-padding.
7537         (optimal-page-breaks): rename from ly:optimal-page-breaks.
7538
7539         * lily/paper-system-scheme.cc (LY_DEFINE): new function.
7540
7541         * lily/paper-system.cc (internal_get_property): new function.
7542
7543         * Documentation/user/global.itely (Vertical spacing): refer to
7544         page-spacing.ly
7545
7546         * scm/page-layout.scm (ly:optimal-page-breaks): add support for
7547         pagetopspace
7548
7549         * input/regression/page-spacing.ly: new file.
7550
7551         * input/regression/page-top-space.ly: new file.
7552
7553         * lily/spacing-spanner.cc: cmath -> math.h
7554
7555         * lily/paper-system.cc (read_left_bound): new function. Read
7556         line-break-system-details from left bound to determine extents.
7557  
7558         * Documentation/user/programming-interface.itely (Using LilyPond
7559         syntax inside Scheme): change applyxxx -> applyXxx.
7560
7561         * ly/music-functions-init.ly: add outputProperty music function.
7562
7563         * lily/parser.yy (Generic_prefix_music_scm): add scm-scm-scm signature.
7564
7565         * lily/grob-scheme.cc (LY_DEFINE): add ! to ly:grob-suicide! name.
7566
7567         * python/convertrules.py (conv): rule
7568
7569         * ly/music-functions-init.ly: applyxxx -> applyXxx
7570
7571         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): alias
7572         TabVoice to Voice.
7573
7574 2005-09-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7575
7576         * flower/include/real.hh: include <math.h> iso. <cmath>
7577
7578         * flower/include/offset.hh: include real.hh
7579
7580 2005-09-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7581
7582         * Documentation/user/changing-defaults.itely (Difficult tweaks):
7583         fix example, now that 'interfaces is no longer directly available.
7584
7585         * lily/book.cc (process): don't crash if paper == NULL.
7586
7587         * po/fr.po: update.
7588
7589 2005-09-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7590
7591         * scm/define-music-types.scm (music-descriptions): set length and
7592         start-callback for QuoteMusic
7593
7594 2005-09-15  Mats Bengtsson  <mabe@s3.kth.se>
7595
7596         * lily/tie.cc (get_configuration): Replace fabs -> abs for integer
7597         arguments. Fixes compilation error with gcc 3.3.
7598
7599 2005-09-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7600
7601         * VERSION: release 2.7.10
7602
7603         * stepmake/stepmake/python-module-rules.make
7604         ($(outdir)/%$(SHARED_MODULE_SUFFIX)): SHARED_FLAGS at the end.  
7605
7606         * lily/*.cc: remove <cmath> everywhere. <cmath> is included from
7607         real.hh
7608
7609 2005-09-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7610
7611         * stepmake/stepmake/c++-vars.make (#EXTRA_CXXFLAGS): don't add
7612         -Werror. Otherwise GCC barfs over various optimizations.
7613
7614         * scm/define-grob-properties.scm (all-internal-grob-properties):
7615         add note-head property
7616
7617         * Documentation/user/instrument-notation.itely (Laissez vibrer
7618         ties): new node.
7619
7620         * input/regression/laissez-vibrer-ties.ly: new file.
7621
7622         * lily/laissez-vibrer-engraver.cc: new file.    
7623
7624         * lily/include/tie-column-format.hh: new file.
7625
7626         * lily/tie-column-format.cc: new file. 
7627
7628         * lily/tie-column.cc (set_manual_tie_configuration): new function.
7629
7630         * lily/laissez-vibrer-tie.cc: new file.
7631
7632         * lily/include/laissez-vibrer-tie.hh: new file.
7633
7634         * ly/engraver-init.ly: add Laissez_vibrer_engraver
7635
7636         * ly/declarations-init.ly (laissezVibrer): add \laissezVibrer
7637
7638         * scm/define-grobs.scm (all-grob-descriptions): add
7639         LaissezVibrerTie, LaissezVibrerTieColumn
7640
7641         * lily/tie-column.cc (set_tie_config_directions): new function
7642         (final_shape_adjustment): new function.
7643         (shift_small_ties): new function.
7644
7645         * scm/define-music-types.scm (music-descriptions): add LaissezVibrerEvent
7646
7647         * lily/include/tie.hh (struct Tie_details): add x_gap_
7648         (struct Tie_configuration): add head_position_
7649
7650         * lily/tie-column.cc (set_chord_outline): new function.
7651
7652         * mf/cmr.enc.in:  remove file.
7653
7654 2005-09-11  Graham Percival  <gpermus@gmail.com>
7655
7656         * Documentation/user/examples.itely: typo fix.  Thanks, Matevž
7657
7658 2005-09-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7659
7660         * mf/feta-banier.mf: make vertical stem 1/2 stemthickness wide to
7661         reduce aliasing effects.
7662
7663         * lily/tie-column.cc (set_chord_outlines): bugfix: insert complete
7664         box in skyline.
7665
7666 2005-09-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7667
7668         * lily/tie.cc (get_configuration): don't crash if left_dot is NULL.
7669
7670         * flower/include/real.hh: std::fabs too.
7671
7672 2005-09-08  Jan Nieuwenhuizen  <janneke@gnu.org>
7673
7674         * Documentation/user/lilypond.tely: Spell Baßtuba in UTF-8 (Werner). 
7675
7676         * lily, flower: Include C++ iso C headers.  Import namespace std
7677         throughout.
7678
7679         * lily/side-position-interface.cc: 
7680         * lily/scm-hash.cc: 
7681         * lily/note-head.cc: 
7682         * lily/include/includable-lexer.hh: 
7683         * flower/include/string-data.icc: Remove using std::*.
7684
7685         * lily, flower: Include C++ iso C headers.  Import namespace std
7686         throughout.
7687
7688         * lily/side-position-interface.cc: 
7689         * lily/scm-hash.cc: 
7690         * lily/note-head.cc: 
7691         * lily/include/includable-lexer.hh: 
7692         * flower/include/string-data.icc: Remove using std::*.
7693
7694         * Documentation/user/instrument-notation.itely (Entering lyrics):
7695         Multiple latin-1->utf-8 conversion fix.
7696
7697         * Documentation/user/*tely: Update Emacs cookie to utf-8.
7698
7699 2005-09-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7700
7701         * lily/tie.cc (get_configuration): also avoid dots for non-space
7702         situations.
7703
7704 2005-09-07  Jan Nieuwenhuizen  <janneke@gnu.org>
7705
7706         * Documentation/user/instrument-notation.itely: Bugfix.
7707
7708 2005-09-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7709
7710         * tex/GNUmakefile: don't install texinfo.tex
7711
7712         * tex/ : cleanup: remove unused files.
7713
7714         * lily/general-scheme.cc: remove my_{isinf,isnan}.
7715
7716         * flower/include/real.hh: using std::{isnan,isinf}
7717         
7718         * VERSION (PATCH_LEVEL): release 2.7.9
7719
7720 2005-09-05  Graham Percival  <gpermus@gmail.com>
7721
7722         * Documentation/user/ instrument-notation.itely,
7723         advanced-notation.itely: minor tweaks.
7724
7725         * input/test/script-chart.ly: add item padding.
7726
7727 2005-09-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7728
7729         * flower/offset.cc: use math.h iso. <cmath>
7730
7731         * scm/ps-to-png.scm (make-ps-images): use png16m again, for sake
7732         of IE users.
7733
7734         * scm/framework-eps.scm (dump-stencils-as-EPSes): cleanup.
7735         (widen-left-stencil-edges): new function. Fix alignment problems
7736         with LaTeX includegraphics.
7737
7738         * lily/text-interface.cc (interpret_markup): use abort().
7739
7740 2005-09-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7741
7742         * input/regression/tie-chord.ly (testLong): add a chord in 4ths
7743
7744         * lily/tie.cc (get_configuration): update bezier shape as we
7745         change Y positions.
7746         (get_configuration): don't move large ties if we're outside of the
7747         staff.
7748
7749 2005-09-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7750
7751         * scm/define-markup-commands.scm (strut): swap X and Y dims.
7752         
7753 2005-09-03  Jan Nieuwenhuizen  <janneke@gnu.org>
7754
7755         * .cvsignore: Add auto-generated configure files and then some.
7756
7757 2005-09-02  Jan Nieuwenhuizen  <janneke@gnu.org>
7758
7759         * scm/define-grobs.scm (DynamicLineSpanner): Add
7760         X-extent-callback.  Fixes hairpin-slur collision.
7761
7762 2005-08-31  Graham Percival  <gpermus@gmail.com>
7763
7764         * Documentation/user/advanced-notation.itely,
7765         basic-notation.itely: minor changes.
7766
7767 2005-08-31  Mats Bengtsson  <mabe@s3.kth.se>
7768
7769         * scm/framework-eps.scm (dump-stencils-as-EPSes): Insert a
7770         \linebreak between each .eps file if \betweenLilyPondSystem is
7771         undefined. 
7772
7773         * Documentation/user/lilypond-book.itely (Integrating LaTeX and
7774         music): Document the \linebreak
7775
7776         * Documentation/user/lilypond-book.itely,
7777         input/tutorial/lbook-latex-test.tex,
7778         Documentation/user/examples.itely: Remove \usepackage{graphics}
7779
7780 2005-08-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7781
7782         * mf/aybabtu.pe.in (i): don't merge alphabet into aybabtu.
7783
7784         * lily/ly-module.cc (make_stand_in_procs_weak): 1.6.4 and earlier
7785         compat bugfix.
7786
7787         * scripts/lilypond-book.py (PREAMBLE_LY): define
7788         inside-lilypond-book
7789         (modify_preamble): new function. Insert \RequirePackage{graphics}
7790         when no {graphics found in preamble.  
7791
7792 2005-08030  Graham Percival  <gpermus@gmail.com>
7793
7794         * Documentation/user/basic-notation.itely, global.itely,
7795         tutorial.itely: misc small changes.
7796
7797 2005-08-30  Jan Nieuwenhuizen  <janneke@gnu.org>
7798
7799         * stepmake/aclocal.m4: Include MY_PATCH_LEVEL in config.make's
7800         VERSION.
7801
7802 2005-08-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7803
7804         * lily/tie-column.cc (new_directions): put Tie down on center
7805         staff line. 
7806
7807         * lily/script-interface.cc (before_line_breaking): use
7808         Grob::programming_error
7809
7810         * scm/ps-to-png.scm (make-ps-images): use pngalpha device.
7811
7812         * scripts/lilypond-book.py (get_latex_textwidth): oops. Take [0]
7813         of splitext.
7814
7815 2005-08-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7816
7817         * VERSION (PACKAGE_NAME): VERSION release 2.7.8
7818
7819 2005-08-29  Werner Lemberg  <wl@gnu.org>
7820
7821         * mf/GNUmakefile: Add `-f' flag to `rm' command while removing
7822         the `*.scale.pfa' files to avoid warnings.
7823
7824 2005-08-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7825
7826         * lily/tempo-performer.cc (process_music): idem.
7827
7828         * lily/midi-def.cc (get_tempo): Rational to int conversion bug.
7829
7830 2005-08-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7831
7832         * Documentation/user/advanced-notation.itely (Text markup): not a
7833         fragment.
7834
7835         * lily/midi-item.cc (to_string): use to_int() iso. int cast.
7836
7837         * lily/staff-performer.cc (initialize): add tempo/name to
7838         audio_staff_
7839
7840
7841 2005-08-26  Graham Percival  <gpermus@gmail.com>
7842
7843         * Documentation/user/advanced.itely: add text-only example.
7844
7845         * Documentation/user/invoking.itely: add index entries for
7846         convert-ly.
7847
7848         * Documentation/user/ tutorial.itely, basic-notation.itely:
7849         small fixes suggested by Steve D.  Thanks!
7850
7851 2005-08-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7852
7853         * input/regression/markup-bidi-pango.ly: new file.
7854
7855         * lily/pango-font.cc (pango_item_string_stencil): make Mingw code
7856         standard. Remove #ifdef. Remove memleak.
7857         (text_stencil): use text_dir to decide how to composite items.
7858         (text_stencil): determine uniform text direction for the entire
7859         string.
7860
7861         * scripts/lilypond-book.py (output_name): remove
7862         latex_filter_cmd. Non-portable to non-Unix systems. 
7863         (get_latex_textwidth): use File.write and os.unlink() instead.
7864
7865         * THANKS: add Vicente & Trevor.
7866
7867         * lily/grob.cc (discretionary_processing): look up origin for
7868         programming_error too. 
7869
7870         * input/regression/tie-broken.ly: new file.
7871
7872         * lily/tie-column.cc (set_chord_outlines): set outline for line
7873         break case too.
7874         
7875 2005-08-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7876
7877         * lily/pango-font.cc (text_stencil): don't translate glyphs in
7878         unscaled transform, just translate stencils.
7879
7880         * ly/performer-init.ly: init timing to #t.  Fixes bar checks in
7881         MIDI.
7882
7883         * scm/define-markup-commands.scm (wordwrap-string): use
7884         text-direction
7885         (wordwrap-stencils): idem.
7886         (line): idem.
7887         (fill-line): idem.
7888         (wordwrap-stencils): translate last line to right for
7889         text-direction = LEFT.
7890
7891         * scm/define-grob-properties.scm (all-user-grob-properties): add
7892         text-direction.
7893
7894 2005-08-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
7895
7896         * lily/lily-parser.cc (Lily_parser): also copy output_basename_
7897         when copying a Lily_parser object.
7898
7899 2005-08-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7900
7901         * scm/define-markup-commands.scm (null): add null markup.
7902
7903 2005-08-25  Mats Bengtsson  <mabe@s3.kth.se>
7904
7905         * lily/item.cc: Add documentation of center-invisible
7906
7907 2005-08-24  Graham Percival  <gpermus@gmail.com>
7908
7909         * Documentation/user/advanced-notation.itely: add info about
7910         raising text.
7911
7912         * Documentation/user/programming-interface.itely: fix example
7913         involving raised text.
7914
7915 2005-08-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7916
7917         * lily/beam.cc (print): fix X start/end points of isolated
7918         beamlets.
7919
7920         * scm/output-ps.scm (grob-cause): escape spaces in URLs.
7921
7922         * lily/multi-measure-rest.cc (set_text_rods): new function.
7923
7924         * lily/vertical-align-engraver.cc (process_music): call
7925         Align_interface::set_axis(). This forces #'elements to be ordered,
7926         preventing random vertical reordering of staves.
7927
7928         * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
7929         add avoid-slur property. 
7930
7931         * Documentation/user/basic-notation.itely (Measure repeats): add
7932         countPercentRepeats example.
7933
7934         * Documentation/user/advanced-notation.itely (Other text markup
7935         issues): remove remark about normal-font.  We have \normal-text
7936
7937         * input/regression/tie-chord.ly: add note about remaining bugs.
7938
7939         * lily/tie.cc (print): try Tie_column::set_directions () if
7940         control-points not yet defined.
7941
7942 2005-08-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7943
7944         * lily/system-start-delimiter.cc (staff_brace): don't remove brace
7945         extent. This fixes braces falling out of the EPS bbox.
7946
7947         * mf/feta-beugel.mf (braces_per_font): make brace glyph align
7948         exactly to bbox.
7949
7950 2005-08-23  Graham Percival  <gpermus@gmail.com>
7951
7952         * {various} : change #up->#UP and #down->#DOWN.
7953
7954         * ly/titling-init.ly: Spacing fix when using printallheaders=##t.
7955
7956         * Documentation/user/advanced-notation.itely: clarify
7957         what objects handles text on a multimeasure rest.
7958
7959 2005-08-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7960
7961         * VERSION (PATCH_LEVEL): release 2.7.7
7962
7963 2005-08-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7964
7965         * make/lilypond-vars.make: set -dgs-font-load for "make web" 
7966
7967         * Documentation/topdocs/INSTALL.texi (Top): add GS bugfix requirement.
7968
7969         * input/regression/*.ly: formatting clean-up. Default layout
7970         before music expression.
7971
7972         * input/mutopia/R.Schumann/GNUmakefile (examples): switch off
7973         romanze28-2 example.
7974
7975         * scm/ps-to-png.scm: remove dir-re function.
7976         (make-ps-images): generate page names, instead of globbing them.
7977         This brings down LilyPond memory usage for make web by a factor
7978         10. 
7979
7980         * scripts/lilypond-book.py (Lilypond_snippet.png_is_outdated):
7981         don't use glob. With 3000 files, globbing
7982         Documentation/user/out-www/ can take too much time. 
7983         
7984         * lily/lily-guile.cc (gulp_file_to_string): take size argument.
7985
7986         * lily/general-scheme.cc (LY_DEFINE): take optional size argument.
7987
7988         * input/regression/tie-manual.ly: new file
7989
7990         * input/regression/tie-chord.ly: update.
7991
7992         * flower/include/interval.hh (struct Interval_t): 
7993
7994         * lily/tie.cc (distance): new function 
7995         (height): new function.
7996         (init): new function
7997         (Tie_details): new struct.
7998
7999         * lily/skyline.cc (skyline_height): new function.
8000
8001         * lily/tie-column.cc (set_chord_outlines): new function.
8002         (new_directions): read tie-configuration
8003
8004         * lily/skyline.cc: fix ASCII art.
8005         
8006 2005-08-22  Mats Bengtsson  <mabe@s3.kth.se>
8007
8008         * python/convertrules.py (string_or_scheme): Fix spelling error
8009
8010 2005-08-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8011         
8012         * lily/tie-column.cc (set_directions): set directions only once.
8013         (add_configuration): new function.
8014
8015         * lily/tie.cc (set_control_points): new function
8016
8017         * lily/tie-column.cc (new_directions): new function.
8018
8019         * ly/music-functions-init.ly: set 'pitch property
8020         iso. trill-pitch. This makes \relative work with \pitchedTrill
8021
8022         * lily/tie.cc (get_configuration): new function. Don't generate
8023         control points, rather, generate configuration.
8024         remove head-pair property.
8025
8026         * lily/include/tie.hh (struct Tie_configuration): new struct.
8027
8028 2005-08-22  Heikki Junes  <hjunes@cc.hut.fi>
8029
8030         * Documentation/topdocs/NEWS.tely: clarify.
8031
8032 2005-08-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8033
8034         * lily/tie.cc: remove minimum-length
8035
8036         * scm/define-grob-properties.scm (all-user-grob-properties):
8037         remove staffline-clearance, y-offset 
8038
8039         * input/regression/tie-dots.ly (Module): remove.
8040
8041         * lily/tie.cc (get_control_points): rewrite. Put short ties in
8042         staff-spaces, make long ties cross staff lines. Avoid flags and dots.
8043
8044         * input/regression/tie-single.ly: new file.
8045
8046 2005-08-21  Graham Percival  <gpermus@gmail.com>
8047
8048         * ly/bagpipe.ly: fix compile problem.
8049
8050 2005-08-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8051
8052         * lily/midi-item.cc (name): new method.
8053
8054         * lily/staff-performer.cc (acknowledge_audio_element): use
8055         signature of baseclass.
8056
8057         * lily/engraver-group.cc (do_announces): move recursion call out
8058         of while loop. 
8059
8060         * lily/drum-note-performer.cc (class Drum_note_performer): use
8061         process_music everywhere.
8062
8063         * ly/performer-init.ly: add default children everywhere.
8064
8065         * lily/paper-book.cc (output): call paper-book-write-midis
8066         directly: always write MIDI, even if no \layout {} block. 
8067
8068 2005-08-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8069
8070         * VERSION (PACKAGE_NAME): release 2.7.6
8071
8072         * lily/percent-repeat-engraver.cc (try_music): don't print warning
8073         about not being able to handle repeat.
8074
8075 2005-08-19  Jan Nieuwenhuizen  <janneke@gnu.org>
8076
8077         * Documentation/user/examples.itely (Piano templates):
8078         * lily/include/performer-group.hh: Remove last traces of
8079         Performer_group_performer.  Fixes make web.
8080
8081 2005-08-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8082
8083         * Documentation/user/examples.itely (Piano templates): change
8084         Engraver_group_engraver -> Engraver_group
8085
8086         * lily/ly-module.cc (make_stand_in_procs_weak): only kludge if
8087         scm_stand_in_procs is not weak_any.
8088
8089         * lily/volta-bracket.cc (print): don't use strcmp().
8090
8091         * lily/volta-engraver.cc (process_music): use
8092         Text_interface::is_markup() for setting the 'text property of the
8093         volta bracket.
8094
8095         * input/mutopia/claop.py (accents): update syntax to 2.6
8096
8097         * scm/define-context-properties.scm
8098         (all-user-translation-properties): add countPercentRepeats.
8099
8100         * Documentation/user/basic-notation.itely (Measure repeats): add
8101         isolated percent example.
8102
8103 2005-08-18  Graham Percival  <gpermus@gmail.com>
8104
8105         * input/ {various}: change direction #1, #-1 to
8106         #up/#down or \fooUp, \fooDown.
8107
8108         * Documentation/user/music-glossary.tely: #-1 to #down.
8109
8110         * ly/bagpipe.ly, engraver-init.ly, property-init.ly: #1
8111         to #up, #-1 to #down.
8112
8113 2005-08-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8114
8115         * lily/include/engraver-group.hh: rename.
8116
8117         * lily/include/performer-group.hh: rename.
8118
8119 2005-08-18  Mats Bengtsson  <mabe@s3.kth.se>
8120
8121         * input/test/script-abbreviations.ly: Removed some old LaTeX
8122         left overs.
8123
8124 2005-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
8125
8126         * python/convertrules.py (conv): inside-slur -> avoid-slur.
8127         Remove functions.  Remove if 1: constructs, reindent.
8128
8129         * scripts/convert-ly.py (add_version): Add functions from
8130         convertrules.py
8131
8132         * scm/script.scm (default-script-alist):
8133         s/priority/script-priority.  Fixes script stacking.  Backportme.
8134         (Fermata): Very low priority.
8135
8136 2005-08-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8137
8138         * input/regression/*.ly: remove superfluous \score blocks. Reindent.
8139
8140         * input/regression/slur-script.ly: remove padding tweaks. Add
8141         comment strings.
8142
8143         * lily/note-spacing.cc (get_spacing): remove kludge for EOL wide
8144         time sigs and related stuff.
8145
8146         * scm/define-grob-properties.scm (all-user-grob-properties): add
8147         @code{} tags to property description.
8148
8149         * lily/include/line-group-group-engraver.hh (Module): remove file.
8150
8151         * python/convertrules.py (conv): add rule for
8152         Engraver_group_engraver -> Engraver_group.
8153
8154         * lily/include/performer-group-performer.hh: analogous.
8155
8156         * lily/include/engraver-group-engraver.hh: rename to Engraver_group.
8157
8158         * lily/context-def.cc (instantiate): check for
8159         Engraver_group_engraver and Performer_group_performer not
8160         Engraver/Performer. Fixes crashes when doing \with { \consists .. }
8161  
8162 2005-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
8163
8164         * input/les-nereides.ly: Remove three fingering tweaks, update
8165         remaining one.
8166
8167         * input/regression/slur-script-inside.ly: Update, fix doc.
8168
8169         * scm/script.scm: Update to avoid-slur.
8170
8171         * scm/define-grob-properties.scm (avoid-slur): New property.
8172
8173         * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
8174         * lily/slur-engraver.cc (acknowledge_extra_object): Invoke
8175         outside_slur_callback if avoid-slur != #'inside.
8176
8177         * scm/define-grobs.scm (Fingering, Textscript): No
8178         inside-slur/outside-slur preference.
8179         (DynamicLineSpanner): Always outside slur.
8180
8181         * input/regression/slur-script.ly: More tests.
8182
8183 2005-08-17  Graham Percival  <gpermus@gmail.com>
8184
8185         * Documentation/user/lilypond-book: fix notime entry.
8186
8187         * Documentation/user/advanced-notation.itely: add info on
8188         getting an I rehearsal mark.
8189
8190         * Documentation/user/putting.itely: reinstate "I", re-enforce
8191         the fact that \override numbers are the result of
8192         experimentation and personal taste.
8193
8194         * Documentation/user/invoking.itely: update convert-ly bugs.
8195
8196 2005-08-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8197
8198         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set timing
8199         to #t.
8200
8201         * lily/timing-translator.cc (initialize): don't initialize timing.
8202
8203         * input/regression/stem-spacing.ly (Module): remove file.
8204
8205         * input/regression/spacing-stick-out.ly: specify Score context for
8206         \override
8207
8208         * input/regression/clefs.ly: remove spurious {}s 
8209
8210 2005-08-17  Heikki Junes  <hjunes@cc.hut.fi>
8211
8212         * Documentation/topdocs/NEWS.tely,
8213         input/regression/repeat-percent-count.ly: clarify a bit.
8214
8215 2005-08-16  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8216
8217         * input/no-notation/display-lily-tests.ly: delete
8218         display-lily-init call.
8219
8220         * ly/music-functions-init.ly (displayLilyMusic): move
8221         display-lily-init call at top level, so that the user should not
8222         have to call it.
8223
8224         * scm/define-music-display-methods.scm (note-name->lily-string):
8225         retrieve note names directly from pitchnames using new function `rassoc'.
8226         (display-lily-init): note names list construction removed.
8227
8228 2005-08-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8229
8230         * THANKS: spello.
8231
8232         * lily/lily-parser.cc (get_header): copy module, instead of
8233         returning it.
8234
8235         * Documentation/topdocs/NEWS.tely (Top): add entry for percent
8236         counters.
8237
8238         * Documentation/user/basic-notation.itely (Measure repeats): add
8239         links to Counter grobs.
8240
8241         * scm/define-grobs.scm (all-grob-descriptions): add
8242         DoublePercentRepeatCounter
8243         (all-grob-descriptions): add PercentRepeatCounter
8244
8245         * lily/percent-repeat-engraver.cc (class Percent_repeat_engraver):
8246         also create counter grobs.
8247
8248         * lily/separation-item.cc (extremal_break_aligned_grob): don't
8249         return grob without space-alist.
8250
8251         * input/proportional.ly: tune staff-padding.
8252
8253         * input/regression/repeat-percent-count.ly: new file. 
8254
8255 2005-08-16  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8256
8257         * input/no-notation/display-lily-tests.ly: moved from
8258         input/regression/ to input/no-notation. Be sure to call
8259         `display-lily-init' before trying to use the display function.
8260
8261 2005-08-16  Mats Bengtsson  <mabe@s3.kth.se>
8262
8263         * scripts/lilypond-book.py (option_definitions): Don't localize
8264         the empty string. Fixes bug when --psfonts was used with
8265         non-English locale.
8266
8267 2005-08-15  Graham Percival  <gpermus@gmail.com>
8268
8269         * lily/tuplet-bracket.cc: simple build fix.
8270
8271         * Documentation/user/putting.itely: use "we" instead of "I".
8272
8273         * Documentation/user/basic-notation.itely: cautionary accidentals
8274         work with naturals, too.
8275
8276 2005-08-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8277
8278         * lily/tuplet-bracket.cc (calc_position_and_height): add
8279         staff-padding support.
8280
8281         * input/proportional.ly: set staff-padding.
8282         
8283         * VERSION (PATCH_LEVEL): release 2.7.5
8284
8285         * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): text formatting
8286         fixes. Remove tweaks.
8287
8288         * input/regression/tuplet-slope.ly: add a test case.
8289
8290         * lily/tuplet-bracket.cc (calc_position_and_height): revert
8291         erroneous fix. Add spanner bounds to offset array with relative X
8292         positions.
8293
8294         * ly/engraver-init.ly: add Rest_engraver only once.
8295
8296         * scm/define-music-display-methods.scm (KeyChangeEvent): only do
8297         (*parser*) lookup if (*parser*) != #f.
8298
8299 2005-08-15  Jan Nieuwenhuizen  <janneke@gnu.org>
8300
8301         * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
8302         Cut-and paste update.
8303
8304         * input/regression/slur-script.ly: Add example of reverting
8305         inside-slur for fingering.
8306
8307         * scm/define-grobs.scm (DynamicLineSpanner, Fingering,
8308         TextScript): Explicitly set inside-slur #f, forcing these out of slur.
8309
8310         * lily/slur-engraver.cc (acknowledge_extra_object): Only invoke
8311         outside_slur_callback if inside-slur == #f (as opposed to unset).
8312
8313 2005-08-14  Jan Nieuwenhuizen  <janneke@gnu.org>
8314
8315         * tex/GNUmakefile (INSTALLATION_FILES): Remove enc symlink setup,
8316         encoding files are already removed.
8317
8318 2005-08-15  Mats Bengtsson  <mabe@s3.kth.se>
8319
8320         * Documentation/user/advanced-notation.itely (Instrument names):
8321         Document a workaround for instrument names that collide with
8322         system start braces/brackets.
8323
8324 2005-08-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8325
8326         * lily/rest-collision.cc (do_shift): spello.
8327
8328         * input/proportional.ly: use #'used property. Set break-overshoot
8329         property.
8330
8331         * mf/feta-arrow.mf: center on arrow tip center, iso. tip edge.
8332
8333         * lily/paper-column.cc: add #'used property
8334
8335         * lily/mark-engraver.cc (stop_translation_timestep): set grob
8336         array for staves found.
8337
8338         * lily/metronome-engraver.cc (stop_translation_timestep): set grob
8339         array for stavesFound.
8340
8341         * lily/staff-spacing.cc (next_note_correction): add fixed and
8342         space to calling convention. This fixes spacing of accidentals
8343         after barlines.
8344
8345         * input/regression/spacing-accidental-stretch.ly: add barline -
8346         accidental case.
8347
8348         * scm/framework-ps.scm (page-header): add version number to
8349         creator
8350         (eps-header): idem.
8351
8352         * mf/feta-bolletjes.mf: swap d0 and u0 fa heads.
8353         
8354 2005-08-13  Graham Percival  <gpermus@gmail.com>
8355
8356         * Documentation/user/global.itely: add "fit as much as
8357         possible onto this page" example (Vertical spacing).
8358
8359 2005-08-13  Jan Nieuwenhuizen  <janneke@gnu.org>
8360
8361         * *: Nitpick run.
8362
8363         * buildscripts/fixcc.py: Fixes.
8364
8365 2005-08-12  Graham Percival  <gpermus@gmail.com>
8366
8367         * Documentation/user/advanced-notation.itely: add markup
8368         example to Text spanners.
8369
8370 2005-08-12  Mats Bengtsson  <mabe@s3.kth.se>
8371
8372         * Documentation/user/basic-notation.itely (Ties): Add example of
8373         tying a tremolo to a chord. Thanks to Steve Doonan. 
8374
8375         * lily/tie-engraver.cc: Add tieWaitForNote to the list of read
8376         properties and move tieMelismaBusy to the list of written
8377         properties. 
8378
8379 2005-08-12  Heikki Junes  <hjunes@cc.hut.fi>
8380
8381         * po/TODO: suggest to use a dedicated tool like kbabel.
8382
8383         * po/fi.po: update using kbabel.
8384
8385 2005-08-12  Jan Nieuwenhuizen  <janneke@gnu.org>
8386
8387         * *: Remove obsolete files.  Nitpick run.
8388
8389         * lily/lily-guile.cc (parse_symbol_list): Bugfix.
8390
8391 2005-08-11  Jan Nieuwenhuizen  <janneke@gnu.org>
8392
8393         * mf/GNUmakefile (get-*-fonts): Rename from get-*-pfa.  Copy SVG
8394         too.
8395
8396         * Documentation/topdocs/NEWS.tely (Top): Add slur script feature.
8397
8398         * lily/lily-guile.cc (parse_symbol_list): Rewrite.  Grok multiple
8399         whitespace as symbol separator.
8400
8401         * lily/side-position-interface.cc: Add slur-padding.
8402
8403         * input/regression/slur-script.ly: Fixed.  Backportme?  This is
8404         quite a large fix, and it never worked in a stable release; so not
8405         really a regression.
8406
8407         * lily/phrasing-slur-engraver.cc (class Phrasing_slur_engraver):
8408         Update cut and paste code from Slur_engraver.
8409
8410         * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
8411         Add.
8412
8413         * scm/define-grobs.scm (DynamicLineSpanner): Add
8414         dynamic-line-spanner-interface.
8415         (DynamicLineSpanner, TextScript, Fingering): Add slur-padding.
8416
8417 2005-08-09  Jan Nieuwenhuizen  <janneke@gnu.org>
8418
8419         * lily/slur-engraver.cc (acknowledge_extra_object): Bugfix: use
8420         to_boolean () so that non-set 'inside-slur means false.
8421
8422         * lily/slur.cc (outside_slur_callback): Bugfixes: make sure that
8423         slur has control-points.  Skip script without direction.  Always
8424         do_shift if script inside slur, even if slur not contained in
8425         script y-extent.  Increment k in loop.
8426
8427 2005-08-11  Mats Bengtsson  <mabe@s3.kth.se>
8428
8429         * scm/define-markup-commands.scm: Improved regexp to search for
8430         EPS bounding boxes and corrected call to ly:warning.
8431
8432 2005-08-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8433
8434         * Documentation/user/programming-interface.itely (Displaying music
8435         expressions): doc for \displayLilyMusic. Also some precisions in
8436         "Markup construction in Scheme"
8437
8438 2005-08-10  Mats Bengtsson  <mabe@s3.kth.se>
8439
8440         * scm/define-markup-commands.scm (normal-text): Added 2 new
8441         markup commands, \normal-text and \medium (the latter thanks to
8442         Bruce Fairchild). 
8443
8444 2005-08-08  Graham Percival  <gpermus@gmail.com>
8445
8446         * Documentation/user/programming-interface.itely: fix @{ @}.
8447
8448         * scm/define-markup-commands.scm: add linewidth info to
8449         \justify and \wordwrap, add "upright is the opposite of italic".
8450
8451         * Documentation/user/advanced-notation.itely: shaped->shape,
8452         add (cons (markup "foo")) type of example to text markup,
8453         reword multi-measure rests section.
8454
8455         * lily/note-heads-engraver.cc: changed Shaped->Shape in a
8456         comment.  No actual code was touched.
8457
8458         * Documentation/user/invoking.itely: add more info about
8459         \include.  Thanks, Bruce!
8460
8461         * THANKS: add Bruce Fairchild, alphabetise.
8462
8463         * Documentation/user/global.itely: document \score{\header{}}
8464         behavior.
8465
8466         * Documentation/user/basic-notation.itely: reword multi-measure
8467         rest discussion in Rests.
8468
8469 2005-08-08  Mats Bengtsson  <mabe@s3.kth.se>
8470
8471         * Documentation/user/programming-interface.itely (Markup
8472         construction in Scheme): Corrected example and tried to clarify
8473         the implicit \line in the table.
8474
8475 2005-08-07  Graham Percival  <gpermus@gmail.com>
8476
8477         * Documentation/user/instrument-notation.itely: moved
8478         some bagpipe info back into the bagpipe section.  Somehow
8479         it ended up in the "other vocal issues" section?!  :o_O
8480
8481 2005-08-07  Jan Nieuwenhuizen  <janneke@gnu.org>
8482
8483         * scm/framework-ps.scm (dir-join): Rename from path-join (joins
8484         directories, not paths).
8485
8486 2005-08-06  Jan Nieuwenhuizen  <janneke@gnu.org>
8487
8488         * scm/framework-ps.scm (munge-lily-font-name): Bugfix: Munge only
8489         plain emmentaler/aybabtu.  Backportme.
8490
8491         * lily/tuplet-bracket.cc (calc_position_and_height): Bugfix:
8492         missing dir correction.
8493
8494 2005-08-05  Graham Percival  <gperlist@shaw.ca>
8495
8496         * scm/define-markup-commands: fix reversed justify/wordwrap
8497         doc strings.
8498
8499 2005-08-05  Jürgen Reuter  <reuter@ipd.uka.de>
8500
8501         * lily/ligature-engaver.cc, lily/coherent-ligature-engaver.cc,
8502         lily/gregorian-ligature-engaver.cc,
8503         lily/include/ligature-engraver.hh,
8504         lily/include/coherent-ligature-engraver.hh,
8505         lily/include/gregorian-ligature-engraver.hh: make these classes
8506         truely abstract.  This should fix some internal oddities such as
8507         duplicate as well as dead translator/property declarations, and
8508         also some dead code.
8509
8510         * lily/ligature-bracket-engraver.cc, lily/ligature-engraver.cc:
8511         bugfix: avoid message "junking empty ligature" on ligature
8512         brackets by collecting dummy grobs.
8513
8514 2005-08-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8515
8516         * lily/tuplet-bracket.cc (print): default right overshoot to 0.0
8517
8518         * input/proportional.ly (staffKind): bugfix.
8519         (staffKind): updates by Trevor Baca.
8520
8521         * scm/define-grobs.scm (all-grob-descriptions): remove arrows as
8522         default layout. 
8523
8524         * lily/tuplet-bracket.cc (print): check whether edge-text is a
8525         pair.
8526
8527         * lily/beam.cc (rest_collision_callback): call position_beam() if
8528         necessary.
8529
8530         * VERSION: release 2.7.4
8531
8532         * input/regression/spacing-uniform-stretching.ly: new file.
8533
8534         * lily/spacing-loose-columns.cc (set_loose_columns): use robust_relative_extent().
8535
8536         * Documentation/topdocs/NEWS.tely (Top): add Nicolas as
8537         contributor.
8538
8539         * lily/include/ly-module.hh: define MODULE_GC_KLUDGE globally.
8540
8541         * input/proportional.ly: new file.
8542
8543         * lily/tuplet-bracket.cc (after_line_breaking): don't suicide if
8544         columns is empty
8545
8546         * lily/tuplet-engraver.cc (finalize): new function. Reset right
8547         bounds to currentCommandColumn for the last step.
8548         (start_translation_timestep): if tupletFullLength is set, set
8549         bound to Paper Column
8550
8551         * input/regression/tuplet-full-length.ly (indent): new file.
8552
8553         * lily/spacing-loose-columns.cc (set_loose_columns): space a whole
8554         clique of loose columns, eg. a set of grace notes in strict
8555         notespacing.
8556
8557         * input/regression/spacing-strict-spacing-grace.ly: new file.
8558
8559         * lily/key-signature-interface.cc: change property name to
8560         alteration-alist
8561
8562         * lily/key-engraver.cc (read_event): read keyAlterationOrder, not
8563         keyAccidentalOrder
8564
8565         * python/convertrules.py (conv): keyAccidentalOrder ->
8566         keyAlterationOrder
8567
8568         * lily/key-engraver.cc (create_key): always print a cancellation
8569         for going to C-major/A-minor, regardless of printKeyCancellation.
8570         (create_key): remove typecheck for visibility. This fixes key
8571         signature not being printed.
8572
8573         * lily/spacing-determine-loose-columns.cc: new file.
8574
8575         * input/regression/spacing-strict-notespacing.ly: new file.
8576
8577         * lily/spacing-spanner.cc (generate_springs): rename from
8578         do_measure. 
8579         (generate_pair_spacing): new function.
8580         (init, generate_pair_spacing): set between-cols for floating
8581         nonmusical columns.
8582
8583         * lily/spaceable-grob.cc (get_spring): new function. 
8584
8585         * lily/tuplet-bracket.cc (print): on the left, the overshoot is
8586         relative to the right edge of the prefatory matter.
8587
8588         * lily/beam.cc (print): read break-overshoot to determine where to
8589         stop/start broken beams.
8590
8591         * input/regression/spanner-break-overshoot.ly: new file.
8592
8593 2005-08-04  Graham Percival  <gperlist@shaw.ca>
8594
8595         * ly/bagpipe.ly: updated.
8596
8597         * Documentat/user/instrument.itely: un-comment out bagpipe example.
8598
8599 2005-08-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8600
8601         * lily/dynamic-engraver.cc (acknowledge_slur): add slur to
8602         support: now (de)crescs avoid slurs as well.
8603
8604         * Documentation/user/instrument-notation.itely (Bagpipe example):
8605         comment out non-functioning bagpipe example.
8606         (Bagpipe definitions): idem.
8607
8608         * Documentation/topdocs/NEWS.tely (Top): add uniform-stretching example.
8609         (Top): add proportionalNotationDuration example.
8610
8611         * input/regression/spacing-proportional.ly: new file.
8612
8613         * lily/tuplet-bracket.cc (parallel_beam): broken bracket never is
8614         synched to a beam.
8615
8616         * lily/beam.cc (shift_region_to_valid): divide by zero fix. This
8617         fixes beams with a single stem (eg. beams across linebreaks.)
8618
8619         * lily/parser.yy (simple_string): allow \new STRING_IDENTIFIER.
8620
8621         * flower/rational.cc (operator +): prevent overflow. This fixes
8622         heavily nested tuplets.
8623
8624         * lily/auto-beam-engraver.cc (derived_mark): new method. Yes. We
8625         have to protect even those unlikely to be corrupted data members.  
8626
8627 2005-08-04  Graham Percival  <gperlist@shaw.ca>
8628
8629         * ly/bagpipe.ly: new file.
8630
8631         * THANKS: added Sven Axelsson.
8632
8633 2005-08-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8634
8635         * lily/spacing-engraver.cc (stop_translation_timestep): directly
8636         copy proportionalNotationDuration into currentMusicalColumn if
8637         set.
8638
8639         * lily/spacing-spanner.cc (musical_column_spacing): if
8640         uniform-stretching set, fixed space is 0.0
8641
8642         * input/regression/spacing-multi-tuplet.ly: show
8643         uniform-stretching property.
8644
8645         * lily/spacing-spanner.cc (effective_shortest_duration): new function.
8646
8647         * lily/include/spacing-spanner.hh (class Spacing_spanner): new file.
8648         (struct Spacing_options): new struct.
8649
8650         * lily/spacing-basic.cc: new file.
8651
8652         * lily/spacing-spanner.cc (note_spacing): remove outdated code:
8653         delta_t doesn't have to be smaller than shortest_playing_len
8654
8655 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8656
8657         * input/regression/markup-arrows.ly:  new file.
8658
8659         * lily/tuplet-bracket.cc: document new behavior.
8660
8661         * input/regression/tuplet-broken.ly: new file. Demonstrate tuplets
8662         with line breaks.
8663
8664         * scm/define-markup-commands.scm (arrow-head): arrow-head markup command.
8665
8666         * scm/define-grobs.scm (all-grob-descriptions): set arrows as
8667         default 
8668
8669         * lily/tuplet-bracket.cc: add edge-text property.
8670         add break-overshoot.
8671         (print): read break-overshoot.
8672         (print): read edge-text, add stencils.
8673
8674         * mf/feta-arrow.mf: new file.
8675
8676         * mf/feta-generic.mf: add feta-arrow.
8677
8678 2005-08-03  Mats Bengtsson  <mabe@s3.kth.se>
8679
8680         * Documentation/user/lilypond-book.itely (An example of a
8681         musicological document): Added flag -o to dvips for people who use
8682         the default setting in teTeX where output is sent to the printer. 
8683
8684         * Documentation/user/global.itely (Vertical spacing): Added
8685         reference to the Axis_group_engraver which documents the *Extent
8686         properties.
8687
8688 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8689
8690         * Documentation/user/basic-notation.itely (Tuplets): add note
8691         about nested tuplets. Remove BUG. 
8692
8693         * input/regression/tuplet-nest.ly: update: remove manual hack. 
8694
8695         * lily/tuplet-bracket.cc (print): use robust_scm2drul
8696         (print): manually call print() for subtuplets.
8697         (calc_position_and_height): add subtuplets to the
8698         support. Vertically shift outer tuplet 
8699
8700         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): set
8701         remove-first for Lyrics, ChordNames and FiguredBass
8702
8703         * scm/define-grob-properties.scm (all-internal-grob-properties):
8704         use ly:grob-array? iso. grob-list?
8705         (all-internal-grob-properties): add tuplets grob-array.
8706
8707         * lily/tuplet-bracket.cc (add_tuplet_bracket):
8708         new function
8709
8710 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8711
8712         * input/test/time-signature-staff.ly: new file.
8713
8714         * ly/declarations-init.ly (center): escape to Scheme. Fixes
8715         spurious #<Music FingerEvent> errors. Backportme.
8716
8717 2005-08-03  Mats Bengtsson  <mabe@s3.kth.se>
8718
8719         * Documentation/user/programming-interface.itely (Markup
8720         construction in Scheme): Corrected markup syntax in the
8721         translation table.
8722
8723 2005-08-03  Graham Percival  <gperlist@shaw.ca>
8724
8725         * Documentation/user/instrument-notation.itely: small update
8726         to bagpipe notation docs; thanks Sven!
8727
8728         * Documentation/user/basic-notation.itely: add link about trills.
8729
8730 2005-08-02  Graham Percival  <gperlist@shaw.ca>
8731
8732         * Documentation/user/music-glossary: remove accidentally committed
8733         fink patch.
8734
8735 2005-08-02  Yoshinobu Ishizaki  <isizaki@mte.biglobe.ne.jp>
8736
8737         * lily/lily-parser.cc (get_header): new function. Enable multiple
8738         \header definitions.
8739
8740         * lily/parser.yy (lilypond_header_body): use get_header.
8741
8742         * ly/init.ly:
8743         * scm/lily-library.scm (print-score-with-defaults): renamed
8744         $globalheader to $defaultheader
8745             
8746         * Documentation/user/global.itely (Creating titles): added short
8747         explanation that multiple headers are useable.
8748
8749
8750 2005-08-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8751
8752         * lily/module-scheme.cc (LY_DEFINE): new file. 
8753
8754         * Documentation/user/advanced-notation.itely (Font selection): add
8755         doco for make-pango-font-tree.
8756
8757 2005-07-31  Graham Percival  <gperlist@shaw.ca>
8758
8759         * Documentation/user/music-glossary: more languages
8760         for tenuto.
8761
8762         * Docuemntation/user/instrument-notation.itely: minor
8763         update for bagpipe example.
8764
8765 2005-07-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8766
8767         * input/regression/+.ly (TODO): add some text.
8768
8769 2005-07-28  Graham Percival  <gperlist@shaw.ca>
8770
8771         * Documentation/user/invoking.itely: \score begins with music.
8772
8773         * Documentation/user/ basic-notation.itely,
8774         instrument-notation.itely: minor changes.
8775
8776         * Documentation/user/music-glossary.itely: began tenuto entry.
8777
8778 2005-07-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8779
8780         * scm/output-socket.scm (bezier-sandwich): add bezier-sandwich
8781
8782         * mf/feta-bolletjes.mf: swap up and down for aiken heads.
8783
8784 2005-07-27  Graham Percival  <gperlist@shaw.ca>
8785
8786         * Documentation/user/examples.itely: remove bagpipe template.
8787
8788         * Documentation/user/instrument-notation.itely: add bagpipe
8789         section, maybe fix quotes in lyrics.  I hate text encoding.
8790         Clarify chord durations, more bagpipe stuff.
8791
8792 2005-07-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8793  
8794         * lily/accidental-engraver.cc: formatting fixes.
8795
8796         * lily/spacing-spanner.cc (prune_loose_columns): right-items is a
8797         grob-array.
8798
8799         * lily/arpeggio.cc (print): suicide arpeggio for single notehead.
8800
8801         * lily/note-column.cc (arpeggio): new function.
8802
8803         * lily/note-spacing.cc (get_spacing): also take arpeggio into
8804         account for spacing.
8805
8806 2005-07-25  Jan Nieuwenhuizen  <janneke@gnu.org>
8807
8808         * lily/main.cc (sane_setenv)[!ARGV0_RELOCATION]: Also define.
8809         (setup_guile_env): Use it instead of nonstandard setenv.  Fixes
8810         mingw build.
8811         
8812 2005-07-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8813
8814         * scm/lily.scm (lilypond-all): clear anonymous modules after
8815         processing files.
8816
8817 2005-07-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8818
8819         * flower/include/guile-compatibility.hh (SCM_I_CONSP): add
8820         SCM_I_CONSP
8821
8822         * VERSION: 2.7.3 released
8823
8824         * Documentation/user/invoking.itely (Invoking lilypond): add
8825         LILYPOND_GC_YIELD documentation.
8826
8827         * lily/*: cleanups: use scm_from_int iso. scm_int2num. Idem for
8828         scm_from_real / scm_make_real.
8829
8830         * lily/main.cc (setup_guile_env): new function. Set GC min_yields
8831         higher. This increases memory footprint, but provides overall
8832         speedup of 15 to 20%. 
8833
8834         * lily/include/translator.hh (class Translator): remove
8835         PRECOMPUTED_VIRTUAL everywhere.
8836
8837         * lily/include/lily-guile.hh: inline scm_c[ad]r, scm_is_pair.
8838
8839         * lily/context.cc (now_mom): non-recursive now_mom() 
8840
8841         * lily/include/profile.hh: new file.
8842
8843         * lily/profile.cc: new file.
8844
8845         * lily/grob.cc (Grob::Grob): look properties up directly.
8846
8847         * lily/open-type-font.cc (get_indexed_char): cache index -> bbox
8848         lookups.
8849
8850         * lily/include/box.hh (class Box): smob Box type.
8851
8852         * lily/smobs.cc (protect_smob): O(1) GC (un)protection.
8853
8854         * lily/include/smobs.hh (DECLARE_BASE_SMOBS): add methods
8855         protect() and unprotect(). Use throughout.
8856
8857 2005-07-24  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8858
8859         * Documentation/topdocs/NEWS.tely: new item for \displayLilyMusic
8860
8861         * scm/define-music-display-methods.scm (markup->lily-string):
8862         markup elements can also be strings (without simple-markup
8863         appended)
8864
8865 2005-07-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8866
8867         * lily/context.cc (where_defined): also assign value in
8868         where_defined().
8869
8870         * lily/bezier.cc (get_other_coordinate): use curve_coordinate
8871         (curve_coordinate): new function
8872
8873         * lily/simple-spacer.cc (add_columns): only add rods between
8874         column i and begin/end if keep-inside-line is set (this repleces
8875         allow-outside-line as default)
8876
8877 2005-07-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8878
8879         * lily/tuplet-engraver.cc (start_translation_timestep): only read
8880         tupletSpannerDuration if applicable.
8881
8882         * lily/font-size-engraver.cc (process_music): read fontSize only
8883         once per timestep.
8884
8885         * lily/engraver*cc: use throughout.
8886         
8887         * lily/include/translator.icc (ADD_ACKNOWLEDGER): new macro.
8888
8889         * lily/translator.cc (add_acknowledger): new file. Directly jump
8890         into an Engraver::acknowledge_xxx () method based on a grobs
8891         interface-list.
8892
8893         * lily/include/translator-dispatch-list.hh (class
8894         Engraver_dispatch_list): new struct, new file.
8895
8896         * scm/define-context-properties.scm
8897         (all-internal-translation-properties): remove acceptHashTable,
8898         acknowledgeHashTable
8899
8900         * lily/translator-group.cc (mark_smob): idem for acceptHashTable.
8901
8902         * lily/engraver-group-engraver.cc (Engraver_group_engraver):
8903         change acknowledgeHashTable to C++ member. 
8904
8905         * lily/rest-collision.cc (do_shift): use extract_grob_set().
8906
8907 2005-07-22  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8908
8909         * scm/display-lily.scm: new file. Define a `display-lily-music'
8910         function, that displays the music expression given as an argument,
8911         using LilyPond notation.
8912
8913         * scm/define-music-display-methods.scm: new file. Implementation
8914         of display methods for each music type.
8915
8916         * ly/music-functions-init.ly (displayLilyMusic): new function for
8917         displaying music with LilyPond notation.
8918
8919         * input/regression/display-lily-tests.ly: new regression test file
8920         for `display-lily-music'.
8921
8922         * scm/markup.scm: remove obsolete debugging code (for printing
8923         markups with LilyPond notation).
8924
8925         * scm/define-music-types.scm (music-name-to-property-table):
8926         * scm/clef.scm (supported-clefs): export, in order to be accessible
8927         from the (scm display-lily) module.
8928
8929 2005-07-22  Jan Nieuwenhuizen  <janneke@gnu.org>
8930
8931         * Documentation/topdocs/NEWS.tely (Top): Typo.
8932
8933 2005-07-22  Heikki Junes  <hjunes@cc.hut.fi>
8934
8935         * Documentation/index.html.in, Documentation/texinfo.css,
8936           stepmake/bin/text2html.py, buildscripts/mutopia-index.py,
8937           Documentation/bibliography/index.html.in,
8938           Documentation/bibliography/html-long.bst: revert css-width patch,
8939           it does not work with IE6.
8940
8941 2005-07-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8942
8943         * Documentation/texinfo.css: revert 760px hack. 
8944
8945         * VERSION: release 2.7.2
8946
8947         * Documentation/topdocs/NEWS.tely (Top): mention barNumberCheck
8948
8949         * Documentation/user/basic-notation.itely (Barnumber check): add
8950         section.
8951
8952         * scm/music-functions.scm (skip-to-last): new function. Show only
8953         last showLastLength part of the \score.
8954
8955         * lily/moment-scheme.cc (LY_DEFINE): new function ly:moment-sub
8956
8957         * python/convertrules.py (conv): add ly:x-moment rule
8958
8959         * lily/moment-scheme.cc (LY_DEFINE): rename ly:X-moment  -> ly:moment-X
8960
8961         * Documentation/topdocs/NEWS.tely (Top): add new feature.
8962
8963         * Documentation/user/instrument-notation.itely (Flexibility in
8964         alignment): options in subsections.
8965
8966         * lily/lyric-engraver.cc (process_music): don't typeset text for _
8967         syllable text. Instead, assume that the previous lyric text is a
8968         melismated text.
8969
8970         * Documentation/index.html.in: revert 800x600 change.
8971
8972 2005-07-19  Jan Nieuwenhuizen  <janneke@gnu.org>
8973
8974         * lily/main.cc (main): Remove invalid handle kludge.
8975
8976         * scm/lily.scm (running-from-gui?): WINDOWS: check -dgui.
8977         (lambda): add gui define.
8978
8979 2005-07-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8980
8981         * Documentation/topdocs/NEWS.tely (Top): add note about Musica ficta.
8982
8983         * Documentation/user/instrument-notation.itely (Musica ficta
8984         accidentals): add section Musica ficta accidentals
8985
8986         * lily/accidental-engraver.cc (make_suggested_accidental): new
8987         function.
8988         (make_standard_accidental): move into new function.
8989         (create_accidental): new function.
8990
8991         * scm/define-grobs.scm (all-grob-descriptions): new Grob
8992         AccidentalSuggestion
8993
8994         * lily/output-def-scheme.cc (LY_DEFINE): take default  argument.
8995
8996         * lily/output-def.cc (lookup_variable): return SCM_UNDEFINED if
8997         undefined.
8998
8999         * Documentation/user/global.itely (Page formatting): document
9000         horizontalshift.
9001
9002         * scm/page-layout.scm (default-page-music-height):
9003         horizontalshift: new variable, shift all systems by
9004         horizontalshift to the right, to make space for instrument names.
9005
9006         * scm/paper.scm (set-paper-dimension-variables): add horizontalshift
9007
9008         * lily/input-scheme.cc (LY_DEFINE): take format commands.
9009
9010 2005-07-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9011
9012         * lily/note-column.cc (dir): idem.
9013
9014         * lily/spacing-spanner.cc (Module): idem.
9015
9016         * lily/script-column.cc (before_line_breaking): use extract_grob_set()
9017
9018         * lily/include/paper-column.hh (class Paper_column): add
9019         non-static get_rank() member.
9020
9021         * VERSION: release 2.7.1
9022         
9023         * scm/framework-null.scm: new file, used for benchmarking.
9024
9025 2005-07-20  Heikki Junes  <hjunes@cc.hut.fi>
9026
9027         * Documentation/topdocs/INSTALL.texi, configure.in: fix
9028         version dependencies for fontforge and gs.
9029
9030         * Documentation/index.html.in, Documentation/texinfo.css,
9031         stepmake/bin/text2html.py, buildscripts/mutopia-index.py,
9032         Documentation/bibliography/index.html.in, 
9033         Documentation/bibliography/html-long.bst: optimize width of
9034         html for a 800x600 screen (width:760), increases printability
9035         when 'fit to page' is not set and readability in wide screens.
9036
9037         * stepmake/bin/add-html-footer.py: add missing </p>.
9038
9039 2005-07-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9040
9041         * scm/define-markup-commands.scm (beam): use polygon in beam
9042         command.
9043
9044         * lily/grob-pq-engraver.cc (stop_translation_timestep): save up
9045         all acknowledged grobs, and do potentially expensive merge and
9046         write in one go.
9047
9048         * buildscripts/mf-to-table.py (write_fontlist): enforce noBreak.
9049
9050         * configure.in (reloc_b): add --enable-static-gxx to statically
9051         link to libstdc++
9052
9053         * lily/GNUmakefile (static-gxx-libs): new target
9054         static-gxx-libs. Create symlink to libstdc++.a
9055
9056         * lily/new-lyric-combine-music-iterator.cc: rename to
9057         Lyric_combine_music_iterator
9058
9059         * lily/lyric-combine-music-iterator.cc
9060         (Old_lyric_combine_music_iterator): rename to
9061         Old_lyric_combine_music_iterator
9062
9063         * lily/*-engraver.cc (various): remove double use of
9064         PRECOMPUTED_VIRTUAL function: only use
9065         start_translation_timestep() and stop_translation_timestep(), not
9066         both.
9067
9068         * lily/break-substitution.cc (fast_substitute_grob_array): do
9069         fast_substitute_grob_array for all unordered grob_arrays.
9070         (substitute_grob): return Grob *. Saves packing/unpacking SCMs.
9071         (substitute_grob_array): optimize.
9072
9073         * lily/align-interface.cc (set_axis): set ordered_ for 'elements
9074
9075         * lily/include/grob-array.hh (class Grob_array): ordered_ member.
9076
9077         * lily/parser.yy: revert $globalheader patch.
9078         
9079         * lily/include/translator.icc
9080         (IMPLEMENT_FETCH_PRECOMPUTABLE_METHODS): directly jump into
9081         Translator methods, without _static helper.
9082  
9083         * lily/grob-smob.cc (derived_mark): rename from
9084         do_derived_mark(). Return void.
9085
9086         * scm/define-context-properties.scm
9087         (all-internal-translation-properties): remove tweakCount/tweakRank.
9088
9089         * scm/output-lib.scm (begin-of-line-invisible): use vectors for
9090         predefined break-visibilities.
9091
9092         * lily/item.cc (handle_prebroken_dependencies): use a vector of 3
9093         booleans for break-visibility.
9094
9095         * Documentation/topdocs/NEWS.tely (Top): add note about engravers.
9096
9097         * python/convertrules.py (conv): rule for Timing_translator. 
9098
9099         * lily/include/translator.icc: new file. 
9100
9101         * lily/paper-column-engraver.cc (process_music): new
9102         file. Separate Paper_column factory from Score_engraver.
9103
9104         * lily/vertically-spaced-context-engraver.cc: administer
9105         spaceable-staves property of System.
9106
9107         * lily/translator-group-ctors.cc: new file.
9108
9109         * lily/context-property.cc (make_grob_from_properties): construct
9110         the right Grob class programmatically, looking at the class entry
9111         for the meta property.
9112
9113         * lily/break-align-engraver.cc (stop_translation_timestep): call
9114         Break_align_interface::add_element() directly.
9115
9116         * lily/context.cc (measure_position): measure_position() is now a
9117         normal function.
9118
9119         * lily/include/translator.hh (class Translator): rename
9120         process_acknowledged_grobs() to process_acknowledged() and move to
9121         Translator.
9122
9123         * scm/define-grobs.scm (all-grob-descriptions): add a 'class meta
9124         field for each grob description.
9125
9126         * lily/include/translator-group.hh (class Translator_group):
9127         change to base class. Separate class from Translator. This gets
9128         rid of virtual inheritance for Engravers/Performers.
9129
9130         * lily/staff-performer.cc (class Staff_performer): derive
9131         Staff_performer from Performer, not Performer_group_performer 
9132
9133         * Lily/translator-group.cc (precomputed_recurse_over_translators):
9134         new function.
9135         (precompute_method_bindings): new function. Precompute lists of
9136         Translators, so we only call methods (process_music,
9137         start_translation_timestep, etc.) for Translators needing
9138         it. Also: dispose of pointer-to-member-function calls.
9139
9140         * lily/engraver-group-engraver.cc: remove engraver_each,
9141         recurse_down_engravers ()
9142
9143         * lily/note-head.cc (internal_print): only call
9144         glyph-name-procedure if style != default. 
9145
9146 2005-07-16  Graham Percival  <gperlist@shaw.ca>
9147
9148         * ly/titling-init.ly: add printallheaders option.
9149
9150         * Documentation/user/global.itely: document printallheaders.
9151
9152 2005-07-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9153
9154         * lily/system.cc (do_derived_mark): don't mark from object_alist_
9155         anymore, but do it centrally.  
9156
9157         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
9158         hammer hack.
9159
9160         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-object
9161
9162         * scm/output-lib.scm: remove hammer-print-function.
9163
9164         * lily/include/pointer-group-interface.hh (extract_grob_set): new
9165         macro. Declare a Link_array<Grob> and fill it from a grob.
9166         (extract_item_set): idem for item.
9167
9168         * lily/break-substitution.cc: add header.
9169         (fast_substitute_grob_array): rewrite for Grob_arrays.
9170         (substitute_grob_array): idem.
9171
9172         * lily/group-interface.cc (add_thing): remove file.
9173
9174         * flower/include/parray.hh (class Link_array): slice() is const.
9175
9176         * lily/include/grob-array.hh: new file.
9177
9178         * lily/grob-array.cc (spanner): new file.
9179
9180         * lily/beam-quanting.cc (fill): read details property from beam.
9181
9182         * lily/beam.cc: support details property.
9183
9184         * total speedups below: approx 10%.
9185
9186         * lily/include/beam.hh: new struct, softcode beam quanting parameters
9187
9188         * lily/include/grob.hh (class Grob): add interfaces_ member.
9189
9190         * lily/bezier.cc (init_polynomial_cache): new function: cache
9191         binom(3,j) t^j (1-t)^{3-j}
9192         (curve_point): opps, actually use the cache for t^j , (1-t)^j! 
9193
9194         * lily/*.cc: substitution throughout.
9195
9196         * lily/grob-property.cc (internal_get_object): new routine.
9197         (internal_set_object): idem. Store grob refrences in separate
9198         alist. This saves processing time, since properties aren't
9199         break-substituted, and the per grob namespace is smaller, both for
9200         grobs and non-grob properties.
9201
9202         * scm/define-grob-properties.scm (all-internal-grob-properties):
9203         remove center-element.
9204
9205         * lily/grob.cc: remove tweak-count, tweak-rank.
9206
9207 2005-07-15  Graham Percival  <gperlist@shaw.ca>
9208
9209         * Documentation/user/lilypond-book.itely: fixes example.
9210
9211 2005-07-15  Nicolas Sceaux  <nicolas.sceaux@free.fr>
9212
9213         * Documentation/user/global.itely (Creating titles):    
9214         * Documentation/user/examples.itely (All headers): change the
9215         place of \header in \score blocks (after music block) to make
9216         examples compile (cf. changes on parser.yy on 2005-07-10)
9217
9218 2005-07-13  Graham Percival  <gperlist@shaw.ca>
9219
9220         * python/convertrules.py: add exc -> ecc rule.
9221
9222         * scripts/convert-ly.py: add location of convertrules.py
9223         in a comment.
9224
9225         * Documentation/user/changing-defaults.itely: fix language.
9226
9227 2005-07-12  Jan Nieuwenhuizen  <janneke@gnu.org>
9228
9229         * lily/lily-parser-scheme.cc (LY_DEFINE): Guile 1.6 fix.
9230
9231 2005-07-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9232
9233         * scm/output-socket.scm (grob-bbox): don't use inf? 
9234
9235         * flower/include/rational.hh: add operator bool() 
9236
9237         * scm/define-music-types.scm (music-descriptions): remove
9238         internal-class-name properties.
9239
9240         * lily/include/event.hh: remove file.
9241
9242         * lily/include/music-constructor.hh: remove file.
9243
9244         * lily/parser.yy (Lily_lexer): check EVENT_IDENTIFIER using 'event
9245         in 'types property.
9246
9247         * lily/music.cc (duration_length_callback): new function.
9248
9249         * lily/event.cc: remove file.
9250
9251         * lily/music-constructor.cc: remove file.
9252
9253         * lily/music-scheme.cc (LY_DEFINE): rename to ly:make-music
9254
9255         * lily/context.cc (get_grob_key): nop if use_object_keys not set.
9256         (get_context_key): idem.
9257
9258         * scm/lily.scm (lambda): new option object-keys (default to #f)
9259
9260         * scm/output-svg.scm (utf-8-string): rename  from utf8-string.
9261
9262         * scm/output-gnome.scm: remove beam routine.
9263
9264         * scm/output-ps.scm (scm): idem.
9265
9266         * scm/output-svg.scm: remove beam.
9267
9268         * ps/music-drawing-routines.ps: remove draw_beam.
9269
9270         * lily/lookup.cc (beam): use round_filled_polygon() for beam.
9271
9272         * flower/include/guile-compatibility.hh (scm_from_locale_string):
9273         add scm_from_locale_string compatibility glue. 
9274
9275 2005-07-13  Yoshinobu Ishizaki  <isizaki@mte.biglobe.ne.jp>
9276
9277         * scripts/lilypond-book.py: Prevent occuring error when
9278         'lilypond-book --output=foo/ somefile.ly' is executed multiple
9279         times and target file shoud be overwritten.  (Error message said
9280         'input file and output file is same'.)
9281
9282 2005-07-13  Graham Percival  <gperlist@shaw.ca>
9283
9284         * input/regression/slur-extreme.ly,
9285         input/regression/slur-scoring.ly, lily/slur-configuration.cc,
9286         lily/slur.cc, mf/feta-din-code.mf, mf/feta-timesig.mf,
9287         mf/parmesan-heads.mf, scm/define-grob-properties.scm: Change
9288         "excentricity" to "eccentricity".
9289
9290         * Documentation/user/converters.itely: fix URL for Noteedit and
9291         Rosegarden.
9292
9293         * THANKS: added Yoshinobu Ishizaki.
9294
9295 2005-07-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9296
9297         * scm/define-markup-commands.scm (justify-field): add. 
9298
9299         * scm/define-grobs.scm (all-grob-descriptions): decrease font size.
9300
9301 2005-07-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9302
9303         * lily/lookup.cc (filled_box): express filled_box with
9304         round_filled_box
9305
9306         * scm/midi.scm (paper-book-write-midis): new function. Write all
9307         performances in numbered MIDI files.
9308
9309         * lily/performance-scheme.cc (LY_DEFINE): new file.
9310         (LY_DEFINE): new function ly:performance-write.
9311
9312         * lily/lily-parser-scheme.cc (LY_DEFINE): ly:parser-output-name:
9313         new function.
9314         (LY_DEFINE): change name ly:parser-define -> ly:parser-define!
9315
9316         * scm/framework-*.scm: use port arguments throughout.
9317
9318         * lily/include/lily-guile.hh: rename ly_c_X_p -> ly_is_X
9319
9320         * lily/paper-outputter.cc (Paper_outputter): take port argument.
9321
9322         * lily/paper-outputter-scheme.cc (LY_DEFINE): take port argument.
9323
9324         * scm/framework-texstr.scm (output-framework): 
9325
9326         * input/regression/repeat-fold.ly (texidoc): remove TeX strings.
9327
9328         * scm/output-lib.scm (tablature-stem-attachment-function):
9329         tablature stem attachment fix. 
9330
9331 2005-07-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9332
9333         * lily/bezier.cc: hardcode binomial coefficients of order 3.
9334
9335         * lily/include/music-wrapper.hh: remove Music_wrapper as Music subtype.
9336
9337         * scm/define-music-types.scm (music-descriptions): don't use
9338         Music_wrapper type.
9339
9340         * lily/paper-column.cc (print): print moment too.
9341
9342         * scripts/mup2ly.py (cp_to_dir): remove 1.5.2 compat glue.  
9343         remove compatibility cruft.
9344
9345         * lily/parser.yy (score_body): \score can only begin with Music. 
9346
9347         * lily/score-scheme.cc (LY_DEFINE): rename scorify to
9348         make-score. Take music argument only. Move parser interaction to
9349         Scheme.
9350
9351         * scm/lily-library.scm (scorify-music): new function.
9352
9353         * python/lilylib.py (datadir): remove 2.1 compat kludge.
9354         (datadir): remove resource import.
9355         (print_environment): remove get_bbox()
9356         (cp_to_dir): remove pre 1.5.2 compat glue.
9357
9358 2005-07-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9359
9360         * lily/include/simple-spacer.hh (Module): idem.
9361
9362         * lily/include/spring.hh (struct Spring): store inverse
9363         strength. This prevents division by zero.
9364
9365         * VERSION: release 2.7.0
9366         
9367         * lily/include/music.hh (class Music): remove Music::duration_log()
9368
9369         * lily/stem-engraver.cc (make_stem): take duration log from event.
9370
9371         * lily/chord-tremolo-engraver.cc: don't ack note-head-interface.
9372
9373 2005-07-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9374
9375         * scm/lily.scm (ly:load): load autochange.scm
9376
9377         * Documentation/user/tutorial.itely (Running LilyPond for the
9378         first time): remove reference to DVI/TeX
9379
9380         * scm/define-markup-commands.scm (text): add \text markup command.
9381
9382         * configure.in (reloc_b): bump requirement to Python 2.2.
9383
9384         * lily/include/dots.hh (class Dots): make has_interface() static.
9385
9386         * python/convertrules.py (conv): add rule for ly:grob-default-font
9387
9388         * scm/define-grobs.scm (all-grob-descriptions): reorganize in
9389         alphabetical order.
9390
9391         * input/regression/trill-spanner-pitched.ly: new file.
9392
9393         * lily/font-interface-scheme.cc (LY_DEFINE): function
9394         ly:grob-default-font (changed from get-default-font).
9395
9396         * lily/axis-group-interface-scheme.cc (LY_DEFINE): new file.
9397
9398         * lily/note-head.cc (internal_print): if style is not a symbol,
9399         set style to 'default. 
9400         (internal_print): no style suffix if glyph-name-procedure not
9401         set. Default to quarter head.
9402
9403         * scm/define-grobs.scm (Module): new grob TrillPitchHead.
9404
9405         * scm/define-music-properties.scm (all-music-properties): add trill-pitch.
9406
9407         * ly/music-functions-init.ly: \pitchedTrill
9408
9409         * lily/pitched-trill-engraver.cc (acknowledge_grob): new file.
9410
9411         * ly/Welcome_to_LilyPond.ly: update to 2.6.0
9412
9413         * lily/trill-spanner-engraver.cc (finalize): rename req -> event
9414
9415         * scm/define-markup-commands.scm (pad-markup): pad-markup command.
9416
9417         * po/fr.po: update
9418
9419         * po/de.po: update.
9420
9421 2005-07-06  Graham Percival  <gperlist@shaw.ca>
9422
9423         * Documentation/user/changing-defaults.itely: add link
9424         to grob-iterface.
9425
9426         * Documentation/user/advanced-notation.itely: add material
9427         to Setting automatic beam behaviour.  Thanks, Joe!
9428
9429         * Documentation/user/lilypond.itely: change encoding to utf-8.
9430
9431 2005-07-01  Mats Bengtsson  <mabe@s3.kth.se>
9432
9433         * Documentation/user/advanced-notation.itely (Setting automatic
9434         beam behavior): Correct the documentation of
9435         revert-auto-beam-setting (backportme)
9436
9437 2005-07-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9438
9439         * lily/ly-module.cc (ly_make_anonymous_module): define
9440         %module-public-interface of module. 
9441
9442         * lily/lily-parser.cc (print_smob): allow printing of parser smob
9443         without lexer.
9444
9445 2005-07-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9446
9447         * input/regression/fret-diagrams.ly: stretch example.
9448
9449 2005-06-30  Jan Nieuwenhuizen  <janneke@gnu.org>
9450
9451         * cygwin/GNUmakefile ($(outdir)/%.sh): Bugfix: use TAB (Bertalan
9452         Fodor).
9453
9454 2005-06-30  Graham Percival  <gperlist@shaw.ca>
9455
9456         * Documentation/topdocs/AUTHORS.texi: update personal web address.
9457
9458         * Documentation/user/examples.itely, lilypond-book.itely:
9459         change \RequirePackage to \usepackage.
9460
9461         * Documentation/user/global.itely: document copyright and tagline.
9462
9463 2005-06-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9464
9465         * Documentation/user/basic-notation.itely (Transpose): remove link
9466         to nonexistent UntransposableMusic.
9467
9468         * scm/output-svg.scm: remove old definitions.
9469
9470         * scripts/lilypond-book.py (do_file): search for kpsewhich before
9471         invoking.
9472
9473         * python/lilylib.py (search_exe_path): new function.
9474
9475 2005-06-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9476
9477         * python/lilylib.py (mkdir_p): remove setup_environment()
9478         (backportme)
9479
9480         * buildscripts/mutopia-index.py (headertext): trim text.
9481
9482         * Documentation/topdocs/NEWS.tely (Top): refresh.
9483
9484         * scm/define-markup-commands.scm (wordwrap-string): new function:
9485         split string in paras and words.
9486         (wordwrap-markups): new function.
9487         (wordwrap-stencils): new function. 
9488         (justify): use it.
9489         (wordwrap): use it.
9490         (wordwrap-string): use it
9491         (justify-string): use it.
9492
9493         * scm/lily-library.scm (regexp-split): new function.
9494
9495         * scm/define-markup-commands.scm: remove encoded-simple. 
9496         remove font-markup.
9497         (fontsize): remove old version  of fontsize.
9498         (wordwrap): new markup function. Wrap into paragraphs.
9499
9500         * VERSION: Branch lilypond_2_6
9501         (MINOR_VERSION): go to 2.7.0
9502
9503 2005-06-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9504
9505         * po/zh_TW.po: update from translation project.
9506
9507 2005-06-28  Graham Percival  <gperlist@shaw.ca>
9508
9509         * scm/midi.scm: compile fix.
9510
9511 2005-06-28  Mats Bengtsson  <mabe@s3.kth.se>
9512
9513         * scripts/lilypond-book.py : Fix embarrassing bug in my previous
9514         patch. Now, the tempfile module is loaded too, not only used.
9515
9516 2005-06-28  Stephen Charles McCarthy  <stecmccarthy@hotpop.com>
9517
9518         * scm/midi.scm: changed midi volumes in absolute-volume-alist from
9519         0.05 - 1.00 to 0.25 - 1.00
9520
9521         * scm/midi.scm: moved the default-instrument-equalizer procedure
9522         to just under the insturment-equalizer-alist it takes as an
9523         argument.
9524
9525 2005-06-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9526
9527         * Documentation/user/advanced-notation.itely (Font selection):
9528         remove CMR note.
9529
9530         * scm/framework-ps.scm (write-preamble): ly:warning iso. ly:warn 
9531
9532 2005-06-28  Jan Nieuwenhuizen  <janneke@gnu.org>
9533
9534         * THANKS: Add UTF-8 marker.
9535
9536         * Documentation/user/point-and-click.itely (http): Update: use
9537         lilypond-invoke-editor.  Fix: instruct to use user.js.
9538
9539 2005-06-27  Graham Percival  <gperlist@shaw.ca>
9540
9541         * ly/titling-init.ly: implements printpagenumber, increases
9542         space between dedication and title (to avoid collisions with
9543         "g" and "q" in dedication), and nicer logic about copyright
9544         and instrument fields being printed on the first page.
9545         Thanks Vincent!
9546
9547         * Documentation/user/global.itely: document printpagenumber.
9548
9549 2005-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
9550
9551         * Documentation/topdocs/NEWS.tely: Update to 2.6.
9552
9553 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9554
9555         * THANKS: update to 2.6
9556
9557         * VERSION: 2.6.0 released.
9558
9559 2005-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
9560
9561         * cygwin/GNUmakefile (OUT_POSTREMOVES): Reinclude install script
9562         rule, errorneously removed probably because of misleading comment.
9563
9564 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9565
9566         * python/lilylib.py (datadir): py2exe comments.
9567
9568         * Documentation/topdocs/INSTALL.texi (Top): remove EC fonts requirement.
9569
9570         * configure.in (reloc_b): make fontconfig REQUIRED.
9571
9572 2005-06-27  Heikki Junes <hjunes@cc.hut.fi>
9573
9574         * po/fi.po: add latest translations.
9575
9576 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9577
9578         * ChangeLog: recode utf-8
9579
9580         * Documentation/pictures/lilypond.xpm (Module): edited photo as
9581         logo.
9582
9583         * Documentation/user/examples.itely (Module): 2.4.0 -> 2.6.0
9584
9585         * input/*.ly (Module): 2.4 -> 2.6 grand convert-ly s/r. 
9586
9587         * python/convertrules.py (do_conversion): don't print program_name
9588         from within a module
9589
9590         * configure.in (reloc_b): bump fontforge requirement to 20050624.
9591
9592         * python/convertrules.py (conv): add 2.6.0 dummy rule.
9593
9594 2005-06-23  Graham Percival  <gperlist@shaw.ca>
9595
9596         * Documentation/user/lilypond-book.itely,
9597         Documentation/user/examples.itely: add \RequirePackage{graphics}.
9598
9599         * ly/titling.ly: checks printfirstpagenumber, adds meter, and
9600         fixes baseline-skip.  Thanks Vincent!
9601
9602         * Documentation/user/advanced-notation.itely, global.itely:
9603         moved "Selecting font sizes" to global, since it deals with
9604         notation font size, not text fonts.
9605
9606 2005-06-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9607
9608         * buildscripts/gen-emmentaler-scripts.py (notice): add GPL notice
9609         to fonts.
9610
9611 2005-06-23  Mats Bengtsson  <mabe@s3.kth.se>
9612
9613         * scripts/lilypond-book.py (LATEX_DOCUMENT): More or less ugly
9614         workaround since /dev/stdin doesn't work on Cygwin. Using a
9615         temporary file in the current directory since latex doesn't
9616         understand the path name to the default TMP in Cygwin (at least on
9617         win XP).
9618         
9619         * Documentation/user/global.itely (Creating titles): Correct
9620         misprint in example. Thanks to Rob Vlasaty.
9621
9622 2005-06-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9623
9624         * VERSION (PATCH_LEVEL): release 2.5.32
9625
9626         * lily/lily-parser-scheme.cc (LY_DEFINE): don't set 'parser
9627         variable in lily module
9628
9629         * scm/framework-ps.scm (output-classic-framework): error message
9630         regarding the classic framework.
9631
9632         * Documentation/user/henle-flat-gray.png (Module): new file.
9633
9634         * Documentation/user/baer-flat-gray.png (Module): new file.
9635
9636         * scm/output-lib.scm (fret-number-tablature-format): vcenter and
9637         whiteout for markups.
9638
9639         * buildscripts/substitute-encoding.py (note_glyph): include _ in
9640         regex too. This fixes change clef appearance in PDF. 
9641
9642         * ttftool/include/*: remove.
9643
9644         * configure.in (reloc_b): remove TTFTOOL_ENDIAN
9645
9646         * config.make.in (WINDRES): remove TTFTOOL_ENDIAN.
9647
9648         * lily/GNUmakefile (MODULE_INCLUDES): remove ttftool
9649
9650         * ttftool/*: remove ttftool subdirectory.
9651
9652         * GNUmakefile.in (SUBDIRS): remove ttftool subdirectory.
9653
9654         * lily/ttf.cc (print_header): new file. Convert to type42, using
9655         FreeType to parse the TTF. 
9656
9657         * ttftool/parse.c (readPostTable): ugh. Kludge: nglyphs in maxp
9658         and post table may differ. Pass around post_nglyphs as well.
9659
9660 2005-06-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9661
9662         * ly/music-functions-init.ly (musicMap): new music function
9663         musicMap. 
9664         
9665 2005-06-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9666
9667         * make/mutopia-rules.make: anti-alias-factor = 2
9668
9669         * scm/ps-to-png.scm (make-ps-images): cleanup multipage vs. single
9670         page switch.
9671
9672         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): set
9673         anti-alias-factor for lilypond-book runs.
9674
9675         * scm/ps-to-png.scm (scale-down-image): new function.
9676         (my-system): new function.
9677         (make-ps-images): blow up GS resolution by anti-alias-factor,
9678         scale down image by anti-alias-factor.  This improves appearance
9679         of bitmaps
9680         (make-ps-images): remove showpage. Fixes spurious empty png at
9681         end.
9682
9683         * scm/framework-ps.scm (write-preamble): downcase filename before
9684         string-matching. Should fix .TTF files (as opposed to ttf files)  
9685
9686         * Documentation/user/tutorial.itely (Running LilyPond for the
9687         first time): separate subsections for windows, macos and unix.  
9688
9689         * Documentation/user/invoking.itely (Updating files with
9690         convert-ly): add MacOS X note.
9691
9692 2005-06-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9693
9694         * Documentation/user/introduction.itely (Engraving): don't include
9695         file optical-spacing, add directly.
9696
9697         * lily/paper-outputter.cc (file): open file in binary mode. This
9698         fixes OTF embedding on windows.
9699
9700 2005-06-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9701
9702         * scm/framework-ps.scm (write-preamble): remove debugging output.
9703
9704         * mf/aybabtu.pe.in (i): don't generate aybabtu.cff
9705
9706         * mf/GNUmakefile ($(outdir)/fonts.cache-1): create font cache for
9707         outdir.
9708         (install-fc-cache): install font cache in installation directories.
9709
9710 2005-06-17  Jan Nieuwenhuizen  <janneke@gnu.org>
9711
9712         * scm/editor.scm (editor-command-template-alist): Use char iso
9713         column, except for Emacs.
9714         (get-editor-command): Substitute char too (Bertalan Fodor).
9715
9716 2005-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
9717
9718         * scm/ps-to-png.scm (make-ps-images): Use ~S instead of single
9719         quoted ~s.  This should fix PNG output on Windows; single quotes
9720         are regular characters on Windows.
9721
9722 2005-06-16  Graham Percival  <gperlist@shaw.ca>
9723
9724         * Documentation/user/basic-notation.itely: include ChoirStaff
9725         in System start delimiters.
9726
9727         * Documentation/user/putting.itely: new doc section on
9728         fixing overlapping notation.
9729
9730 2005-06-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9731
9732         * Documentation/user/global.itely (Paper size): \paper is in
9733         \book, not \score.
9734
9735         * make/mutopia-rules.make: -ddelete-intermediate-files
9736
9737         * ly/engraver-init.ly: make Staff default child of ChoirStaff.
9738
9739 2005-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
9740
9741         * ChangeLog: Recode utf-8.
9742
9743         * python/GNUmakefile (INSTALLATION_OUT_DIR): Install .so module in
9744         datadir with .py modules.
9745
9746 2005-06-15  Heikki Junes  <hjunes@cc.hut.fi>
9747
9748         * Documentation/user/basic-notation.itely (Ties): add tieDashed.
9749
9750 2005-06-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9751
9752         * make/mutopia-rules.make: switch off ps, p&c for lilypond runs.
9753         
9754         * scm/framework-ps.scm (write-preamble): remove status check.
9755
9756         * Documentation/user/invoking.itely (Updating files with
9757         convert-ly): remove -o option.
9758
9759         * VERSION (PACKAGE_NAME): release 2.5.31
9760
9761         * scm/framework-ps.scm (write-preamble): use ly:system.
9762         (write-preamble): verbosity.
9763
9764         * scripts/convert-ly.py: cleanup. Use lilylib. Use convertrules.
9765
9766         * python/convertrules.py: new file. Store conversion rules
9767         separately.
9768
9769 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9770
9771         * scm/backend-library.scm (postprocess-output): remove debugging gobs.
9772
9773 2005-06-14  Mats Bengtsson  <mabe@s3.kth.se>
9774
9775         * Documentation/topdocs/NEWS.tely (Top): Corrected name of
9776         \musicDisplay 
9777
9778         * Documentation/user/instrument-notation.itely (More stanzas): Add
9779         reference to StanzaNumber.
9780
9781 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9782
9783         * THANKS: separate section for website translators.
9784
9785 2005-06-14  Graham Percival  <gperlist@shaw.ca>
9786
9787         * Documentation/topdocs/INSTALL.texi: update vim info;
9788         thanks Simon Bailey!
9789
9790         * Documentation/user/advanced-notation.itely: included
9791         color names.
9792
9793         * Documentation/user/advanced-notation.itely,
9794         Documentation/usr/notation-appendices.itely: moved
9795         color names into an appendix.
9796
9797 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9798         
9799         * lily/program-option.cc (LY_DEFINE): new function ly_add_option.
9800
9801         * scm/lily.scm (lambda): initialize program options from here.
9802
9803         * scm/framework-*.scm: add header info.
9804
9805         * lily/main.cc (parse_argv): only set output format to pdf if no
9806         other format specified.
9807
9808         * scm/backend-library.scm (postprocess-output): process
9809         'delete-intermediate-files after running convert-to-*. This fixes
9810         PNG generation when 'delete-intermediate-files is set.
9811         
9812 2005-06-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9813
9814         * buildscripts/mutopia-index.py (list_item): thinko. Fixes png
9815         links on website. 
9816
9817 2005-06-13  Graham Percival  <gperlist@shaw.ca>
9818
9819         * Documentation/topdocs/INSTALL.texi,
9820         Documentation/user/lilypond-book.itely: typos.
9821
9822 2005-06-12  Pal Benko  <benkop@freestart.hu>
9823
9824         * elisp/lilypond-mode.el (LilyPond-command-alist: 2PS): space
9825         added between program name and switch; -b changed to -f not
9826         to generate pdf
9827
9828 2005-06-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9829
9830         * elisp/lilypond-mode.el (LilyPond-command-alist): remove 2midi
9831         (LilyPond-command-alist): use -f ps (thanks to Pal Benko)
9832
9833         * input/sakura-sakura.ly: add \midi.
9834
9835         * buildscripts/mutopia-index.py (find): use /usr/bin/find
9836         iso. python find. 
9837
9838         * ttftool/test.c (main): cosmetics.
9839
9840         * ttftool/util.c (surely_lseek): use stdio FILE's for I/O 
9841
9842         * ttftool/test.c: new file. If compiled with -DTEST_TTFTOOL,
9843         create a ttf2ps binary.
9844
9845         * scm/ps-to-png.scm (make-ps-images): fix rename-page-1 functionality.
9846
9847         * scm/backend-library.scm (postscript->png): set rename-page-1 to
9848         true.
9849
9850 2005-06-11  Graham Percival <gperlist@shaw.ca>
9851
9852         * Documentation/user/lilypond-book.itely: add warning about
9853         the font warnings in dvips.
9854
9855 2005-06-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9856
9857         * THANKS: typo
9858
9859         * mf/GNUmakefile ($(outdir)/$(redhat-package)): Fedora-4 url.
9860
9861         * GNUmakefile.in: remove links for .map, .enc
9862         don't fail if out/ doesn't exist yet.
9863
9864 2005-06-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9865
9866         * ttftool/util.c (surely_read): return nbytes
9867
9868         * stepmake/bin/text2html.py (txt2html): add utf-8 marker. 
9869
9870         * VERSION (PACKAGE_NAME): release 2.5.30
9871
9872         * flower/string-convert.cc (precision_string): >? fix.
9873
9874         * scm/ps-to-png.scm (make-ps-images): search-gs for multipage too.
9875         (make-ps-images): add verbose -q too.
9876
9877         * lily/default-actions.cc (Module): new file. default
9878         {book,score}-print functions.
9879
9880         * scm/ly-from-scheme.scm (ly:parse-string-result): use new setup:
9881         pass results via parseStringResult, lookup via ly:parser-lookup.  
9882
9883         * lily/lily-parser.cc (Lily_parser): only clone lexer in
9884         constructors.
9885         (parse_file): encapsulate do_yyparse() in scm_set_current_module()
9886         (parse_string): idem.
9887
9888         * ly/spanners-init.ly (assertBeamQuant): don't use #{ #} in init.
9889
9890         * lily/main.cc (main_with_guile): copy be_verbose_global into
9891         ly_set_option()
9892
9893 2005-06-10  Jan Nieuwenhuizen  <janneke@gnu.org>
9894
9895         * scm/backend-library.scm (postscript->pdf):
9896         * scm/ps-to-png.scm (make-ps-images): Do not use gs -q switch in
9897         verbose mode.  Search for several names of gs executable.
9898
9899 2005-06-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9900
9901         * lily/ly-module.cc (ly_make_anonymous_module): call make-module
9902         directly. This fixes a massive memory leak, provided you use CVS
9903         GUILE.
9904
9905 2005-06-10  Erik Sandberg  <ersa9195@student.uu.se>
9906
9907         * ly/property-init.ly: Added tieDashed.
9908
9909         * THANKS: Added some bughunters for 2.5.
9910
9911 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9912
9913         * lily/program-option.cc: add debug-gc option.
9914
9915         * lily/include/lily-guile-macros.hh: don't protect exported module
9916         objects.
9917
9918         * lily/include/lily-parser.hh (class Lily_parser): remove beam_check().
9919
9920         * scm/backend-library.scm (postscript->pdf): use
9921         delete-intermediate-files iso. running-from-gui? 
9922
9923         * ttftool/util.c (surely_read): robustness. Allow read() to return
9924         less bytes than requested, as per posix standards.
9925
9926         * lily/pfb.cc (LY_DEFINE): set ttf_verbosity from ttf-verbosity
9927         program option.
9928
9929         * ttftool/include/ttftool.h ("C"): rename verbosity to
9930         ttf_verbosity. Add to public interface.
9931
9932         * scm/music-functions.scm (unfold-repeats): remove debugging display.
9933
9934         * lily/program-option.cc: rename from scm-option.cc
9935
9936         * lily/scm-option.cc (LY_DEFINE): handle no-foobar option setting.
9937         (get_help_string): Print pretty help string.
9938
9939         * scripts/lilypond-book.py (PREAMBLE_LY): add no-point-and-click
9940         to snippet preamble.
9941
9942         * lily/scm-option.cc: remove command-line-settings option. Fold
9943         all command-line options plus default settings in a generic
9944         interface. 
9945
9946         * flower/getopt-long.cc (table_string): indent 2nd lines of help
9947         texts too.
9948
9949 2005-06-09  Jan Nieuwenhuizen  <janneke@gnu.org>
9950
9951         * flower/file-name.cc: Bugfix: only append DIRSEP if BASE_
9952         or EXT_ components non-empty.
9953
9954 2005-06-08  Jan Nieuwenhuizen  <janneke@gnu.org>
9955
9956         * scm/lily.scm (running-from-gui?): Export.
9957
9958         * lily/lily-parser-scheme.cc (ly:parse-file): Use it to generate
9959         output in .ly source directory.
9960
9961 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9962
9963         * ttftool/util.c (surely_lseek): more verbosity.
9964
9965         * lily/include/lily-proto.hh: add Context_def. This fixes FC4
9966         compile.
9967
9968         * lily/parser.yy (Repeated_music): remove >? 
9969
9970         * scm/backend-library.scm (postscript->pdf): Support for
9971         -dgs-font-load=1
9972
9973         * scm/framework-ps.scm (write-preamble): make font loading
9974         switchable to GS via --define-default gs-font-load=1
9975
9976 2005-06-09  Graham Percival  <gperlist@shaw.ca>
9977
9978         * Documentation/user/global.itely: added \layout docs.
9979
9980 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9981
9982         * lily/lily-parser-scheme.cc: add unistd.h
9983
9984 2005-06-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9985
9986         * scm/editor.scm: add char argument.
9987
9988         * scripts/lilypond-invoke-editor.scm (dissect-uri): add char. 
9989
9990         * ttftool/util.c (syserror): use errno for better error reporting.
9991
9992         * lily/source-file.cc (get_counts): new function. Calc column,
9993         line and char count in one go.
9994
9995         * lily/binary-source-file.cc (quote_input): rename to quote_input
9996
9997         * lily/input.cc (set): new function.
9998
9999 2005-06-08  Jan Nieuwenhuizen  <janneke@gnu.org>
10000
10001         * flower/file-path.cc (find): Bugfix.  Append rather than prepend
10002         directory part of file name to search directory.
10003
10004         * lily/lily-parser-scheme.cc (ly:parse-file): Prepend cwd to
10005         search path and chdir to DIR if --outname=DIR used.
10006
10007         * lily/main.cc (prepend_env_path): Bugfix: Check directory
10008         existence before appending original path.
10009
10010 2005-06-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10011
10012         * ttftool/parse.c (readNamingTable): verbosity for "bad TTF
10013         file" massage.
10014
10015         * Documentation/user/GNUmakefile (TEXINPUTS): set TEXINPUTS so our
10016         texinfo.tex is always used.
10017         
10018 2005-06-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10019
10020         * flower/include/axis.hh: rename from axes.hh
10021
10022         * lily/include/text-interface.hh (Module): rename from text-item.hh
10023
10024         * VERSION (PATCH_LEVEL): release 2.5.29
10025
10026         * ttftool/parse.c (readNamingTable): handle Apple/8bit encoding too.
10027
10028         * scm/framework-ps.scm (font-file-as-ps-string): new function.
10029         (handle-macfont): new function. Call fondu for Native mac fonts.
10030
10031         * scm/define-markup-commands.scm (fill-line): handle text-widths =
10032         '() case.
10033
10034 2005-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
10035
10036         * scm/ps-to-png.scm (make-ps-images): Bugfix: `Pages: 1\n' is not
10037         multi-page.  Fix .eps regular expression.
10038
10039 2005-06-07  Graham Percival  <gperlist@shaw.ca>
10040
10041         * Documentation/user/putting.itely: add info on modifying templates.
10042
10043         * Documentation/user/lilypond.itely, converters.itely, invoking.itely:
10044         misc small changes.
10045
10046 2005-06-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10047
10048         * scm/ps-to-png.scm (make-ps-images): no paper size for multi-page.
10049
10050         * scripts/lilypond-ps2png.scm
10051
10052         * VERSION (PACKAGE_NAME): release 2.5.28
10053
10054 2005-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
10055
10056         * lily/main.cc (prepend_env_path): Do not append /, that does not
10057         work.  Localedir lives in datadir, not in prefix.
10058
10059         * scm/framework-ps.scm (write-preamble): Remove load-font-via-GS
10060         hack for windows.
10061
10062         * flower/include/file-cookie.hh: Compile fix.
10063
10064 2005-06-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10065
10066         * ly/engraver-init.ly: add \defaultchild to InnerStaffGroup. 
10067
10068         * scm/ps-to-png.scm (gulp-port): rename from read. Don't redefine
10069         system primitives.
10070         (gulp-port): using read-string!/partial. We don't want to read an
10071         entire PS file  (GUILE 1.6 limits strings to 16M) 
10072
10073         * scm/define-grobs.scm (all-grob-descriptions): remove arch-*
10074         properties. Add font-interface. 
10075
10076         * scm/define-grob-properties.scm (all-user-grob-properties):
10077         remove old bracket properties.
10078
10079         * scm/x11-color.scm: reformat. 
10080
10081         * lily/ledger-line-engraver.cc (acknowledge_grob): create new
10082         LedgerLineSpanner if new StaffSymbol is found. 
10083
10084         * lily/staff-symbol-engraver.cc (acknowledge_grob): also set
10085         staff-symbol for finishing staff. 
10086
10087         * lily/GNUmakefile (OUT_DIST_FILES): don't dist Flex output
10088
10089         * scm/output-svg.scm (setcolor): implement (re)setcolor with <g>
10090         change black to currentColor everywhere. This fixes color support
10091         in SVG.
10092
10093 2005-06-06  Carl Sorensen  <carldsorensen@comcast.net>
10094
10095         * input/regression/fret-diagrams.ly: new file to test fret diagram
10096         capability
10097
10098         * scm/output-tex.scm: remove white-dot and white-text
10099
10100         * scm/output-ps.scm: remove white-dot and white-text
10101
10102         * scm/fret-diagrams.scm (sans-serif-stencil-white): removed -- 
10103         using ly:stencil-in-color instead
10104         (draw-dots) : remove call to white-dot
10105
10106 2005-06-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10107
10108         * flower/memory-stream.cc (Memory_out_stream): remove fopencookie
10109         support.
10110
10111         * ttftool/ttfps.c: use lily_cookie functions everywhere. 
10112
10113         * flower/include/file-cookie.hh: new file. lily_cookie extension 
10114
10115         * flower/file-cookie.cc: new file. lily_cookie extension.
10116         
10117 2005-06-06  Jan Nieuwenhuizen  <janneke@gnu.org>
10118
10119         * scm/editor.scm (editor-command-template-alist): Add syn
10120         editor (Jaap [de Vos]).
10121
10122 2005-06-05  Jan Nieuwenhuizen  <janneke@gnu.org>
10123
10124         * scripts/lilypond-ps2png.scm:
10125         * scm/ps-to-png.scm: New file.
10126
10127         * scm/backend-library.scm (postscript->png): Use it.
10128
10129         * scripts/lilypond-ps-to-png.py: Remove file.
10130
10131         * python/lilylib.py (get_bbox, make_ps_images): Remove.
10132
10133 2005-06-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10134
10135         * lily/auto-beam-engraver.cc (acknowledge_grob): remove dead code.
10136
10137         * scm/auto-beam.scm (default-auto-beam-check): only forbid beam
10138         start on grace moment. Fixes autobeam-grace.ly.
10139
10140         * lily/auto-beam-engraver.cc (process_acknowledged_grobs): don't
10141         process anything unless we're at the end of a pending beam. Fixes
10142         syncopated 8ths beamed across a beat.
10143
10144 2005-06-03  Jan Nieuwenhuizen  <janneke@gnu.org>
10145
10146         * scm/editor.scm (editor-command-template-alist): Start emacs if
10147         emacslient fails.
10148
10149         * lily/main.cc (setup_localisation): Listen to LILYPOND_LOCALEDIR.
10150
10151         * flower/file-path.cc (is_file, is_dir): Export.
10152
10153         * lily/main.cc (prepend_env_path, set_env_file): Use them.
10154
10155 2005-06-02  Mats Bengtsson  <mabe@s3.kth.se>
10156
10157         * lily/easy-notation.cc: Added include cctype to correct
10158         compilation error.
10159
10160 2005-06-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10161
10162         * scm/backend-library.scm (postscript->pdf): set resolution to
10163         1200, so bitmap fonts aren't that ugly. 
10164
10165         * Documentation/topdocs/NEWS.tely (Top): add entry about font family.
10166
10167         * lily/dynamic-engraver.cc (acknowledge_grob): only center on
10168         parent if we have a notehead. Fixes incorrect offsets when
10169         Paper_column is very wide in the X direction.
10170
10171         * input/regression/font-family-override.ly (Module): new file.
10172
10173         * scm/font.scm (make-pango-font-tree): new function.
10174
10175         * lily/beam.cc (before_line_breaking): remove warning about less
10176         than 2 visible stems. We still get a warning when there is only
10177         one stem.
10178
10179 2005-06-01  Werner Lemberg  <wl@gnu.org>
10180
10181         * buildscripts/substitute-encoding.py: Handle PFAemmentaler-xx.pfa
10182         correctly.
10183
10184 2005-06-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10185
10186         * lily/slur-scoring.cc (generate_avoid_offsets): new
10187         function. Generate avoid offsets once per slur.
10188
10189         * lily/slur.cc (add_extra_encompass): add dependency to
10190         extra-encompass object. This fixes bugs/c-phrasing-slur.ly
10191
10192         * lily/stencil.cc (is_empty): check dim_ field for is_empty()
10193         too. Fixes inf error with added bass notes.
10194
10195         * scripts/lilypond-book.py (do_options): --psfonts doesn't take
10196         argument anymore.
10197
10198         * make/ly-vars.make (DVIPS_FLAGS): use .psfonts as extension.
10199
10200         * input/tutorial/lbook-latex-test.tex: add line length test.
10201
10202         * scripts/lilypond-book.py (set_default_options): new
10203         function. Call this before dissecting snippets, so linewidth
10204         settings reach the snippets.
10205
10206 2005-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
10207
10208         * scm/lily.scm (PLATFORM, slashify): Remove double slashes.
10209
10210 2005-06-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10211
10212         * input/mutopia/R.Schumann/romanze-op28-2.ly (leftb): bugfix.
10213
10214 2005-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
10215
10216         * stepmake/aclocal.m4: More autopackage friendliness.
10217
10218 2005-05-31  Graham Percival  <gperlist@shaw.ca>
10219
10220         * Documentation/index.html.in: remove link to LSR.
10221
10222         * Documentation/user/global.itely: remove duplicate
10223         "dedication" \header{} section.
10224
10225 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10226
10227         * VERSION (PACKAGE_NAME): release 2.5.27.
10228
10229         * lily/lily-parser-scheme.cc (LY_DEFINE): unprotect paper
10230         too. Plugs memory leak.
10231
10232         * make/lilypond.fedora.spec.in (Group): remove
10233         lilypond-pdfpc-helper.
10234
10235         * scripts/GNUmakefile (SEXECUTABLES): remove
10236         lilypond-pdfpc-helper. Use lilypond-invoke-editor instead.
10237
10238         * scm/font.scm (make-century-schoolbook-tree): add Mono as
10239         'typewriter family.
10240
10241         * lily/score.cc (Score): unprotect copy of Output_def. Plugs
10242         memory leak.
10243
10244         * lily/parser.yy (score_body): don't clone Score, that's done in
10245         Lily_lexer::try_special_identifiers(). This fixes a memory leak.
10246
10247         * lily/score-engraver.cc (derived_mark): new function.
10248         (initialize): unprotect Paper_score. This fixes a memory leak.
10249
10250         * lily/score-performer.cc (derived_mark): new function.
10251
10252         * lily/score-translator.cc (get_output): use SCM for get_output() call.
10253
10254         * stepmake/aclocal.m4: put FlexLexer.h test in conftest.cc. Fixes
10255         spurious warning.
10256
10257         * scm/font.scm (make-century-schoolbook-tree): use Sans for sans
10258         serif.
10259
10260 2005-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
10261
10262         * configure.in (reloc_b): Add --enable-relocation.
10263
10264 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10265
10266         * lily/pfb.cc (LY_DEFINE): show file name when loading PFB. 
10267
10268         * input/regression/alignment-order.ly: add Staff example.
10269
10270 2005-05-31  John Mandereau   <john.mandereau@free.fr>
10271
10272         * po/fr.po: update.
10273
10274 2005-05-31  Graham Percival  <gperlist@shaw.ca>
10275
10276         * Documentation/index.html.in: add link to LSR.
10277
10278 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10279
10280         * scm/define-stencil-commands.scm (Module): new file. Register all
10281         allowed stencil expression heads in a central place.
10282
10283         * lily/stencil-scheme.cc (LY_DEFINE): check is_stencil_head in
10284         ly:make-stencil
10285
10286         * lily/stencil-expression.cc (all_stencil_heads): registering
10287         stencil expressions.
10288
10289         * lily/stencil-interpret.cc: new file. Stencil expression
10290         interpreting.
10291
10292         * input/xiao-haizi-guai-guai.ly: move file back.
10293
10294 2005-05-30  Graham Percival  <gperlist@shaw.ca>
10295
10296         * Documentation/user/advanced.itely, converters.itely,
10297         instrument-notation.itely, lilypond-book.itely: misc small
10298         changes.
10299
10300 2005-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
10301
10302         * lily/lexer.ll: Skip UTF-8 BOM at BOF.
10303
10304         * make/lilypond.fedora.spec.in: Fix source url.
10305
10306         * cygwin: Update from mingw patches.
10307
10308         * scm/editor.scm (editor-command-template-alist): Use jedit
10309         -reuseview (Bertalan), add uedit (Patrick Huberts).
10310
10311         * input/xiao-hai-zi-guai-guai.ly: Rename from
10312         xiao-haizi-guai-guai.ly.
10313
10314         * input/*: Reindent, do not use TAB.
10315
10316         * Documentation/pictures/ly.xpm: Bugfix: do not anti-alias against
10317         white background.
10318
10319 2005-05-29  Jan Nieuwenhuizen  <janneke@gnu.org>
10320
10321         * scm/framework-ps.scm (dump-stencil-as-EPS): Add silly fix for
10322         numerical overflow error.
10323
10324 2005-05-29 Laura Conrad <lconrad@laymusic.org>
10325         
10326         * abc2ly.py: fix to syntax error in multi-part output.
10327
10328 2005-05-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10329
10330         * lily/span-bar.cc (print): sort bar line extents. Fixes problem
10331         with disappearing span bars when alignAboveContext is active
10332
10333         * lily/property-iterator.cc (check_grob): use is-grob?
10334         object-property. Fixes crash-key-sig-font-size.ly. 
10335
10336 2005-05-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10337
10338         * lily/bar-line.cc (print): don't round barlines; this produces
10339         odd aliasing effects in Acroread.
10340
10341         * lily/timing-engraver.cc (process_music): robustness fix.
10342
10343         * lily/context-def.cc (filter_engravers): bugfix.
10344
10345 2005-05-28  Jan Nieuwenhuizen  <janneke@gnu.org>
10346
10347         * lily/lilypond.rc.in: Add ly-icon.
10348
10349         * lily/GNUmakefile: 
10350         * Documentation/pictures/GNUmakefile (OUT_DIST_FILES): Add ly-icon
10351         rules.
10352
10353 2005-05-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10354
10355         * lily/stencil-scheme.cc (LY_DEFINE): ly:stencil-in-color
10356
10357         * ps/music-drawing-routines.ps: 
10358
10359         * scm/output-ps.scm: remove draw ez_ball.
10360
10361         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
10362         EasyNotation context definition.
10363
10364         * lily/easy-notation.cc (brew_ez_stencil): new file. Use
10365         Text_interface and color for making easy note heads.
10366
10367         * lily/stencil.cc (with_color): new function.
10368
10369         * ps/music-drawing-routines.ps: remove draw_zigzag_line
10370
10371         * lily/line-spanner.cc (zigzag_stencil): rewrite to use draw-line
10372         output routine. Zigzag now works in SVG too.
10373
10374         * scm/output-tex.scm (filledbox): idem.
10375
10376         * scm/output-svg.scm (filledbox): idem.
10377
10378         * scm/output-ps.scm (lily-def): remove horizontal-line. 
10379
10380         * lily/lookup.cc (horizontal_line): use draw-line. 
10381
10382         * lily/system-start-delimiter.cc: remove old staff bracket code.
10383
10384         * mf/feta-haak.mf: further tweaks.
10385
10386         * lily/system-start-delimiter.cc (staff_bracket): use glyphs.
10387
10388         * mf/feta-generic.mf: include feta-haak.
10389
10390         * mf/feta-haak.mf: rewrite. Make separate glyphs for the tips 
10391
10392         * scm/framework-ps.scm (write-preamble): only load fonts if their
10393         filename is a string. 
10394
10395 2005-05-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10396
10397         * scm/output-svg.scm (circle): support circle.
10398         (bracket): stub for bracket.
10399
10400         * scripts/lilypond-book.py (main): make sure --psfonts warning is
10401         correct.
10402
10403 2005-05-26  Graham Percival  <gperlist@shaw.ca>
10404
10405         * Documentation/user/lilypond.tely, advanced-notation.itely,
10406         basic-notation.itely, instrument-notation.itely, global.itely,
10407         introduction.itely, tutorial.itely: rearranging, editing,
10408         clean-up.
10409
10410         * mf/GNUmakefile: change a "make -C" to "${MAKE} -C", required
10411         for compiling on FreeBSD.
10412
10413 2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10414
10415         * lily/pfb.cc (LY_DEFINE): progress indication for opening ttf and
10416         otf files.
10417
10418         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly (lower):
10419         bugfixes.
10420
10421         * VERSION: 2.5.26 released.
10422
10423         * scm/titling.scm (marked-up-headfoot): revert Pedro's patch. 
10424
10425 2005-05-25  Pedro Kroger  <kroeger@pedrokroeger.net>
10426
10427         * scm/titling.scm (marked-up-headfoot): doesn't print pagenumbers
10428         if printpagenumber is false.
10429
10430 2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10431
10432         * lily/font-config.cc (init_fontconfig): comment out FontConfig
10433         cache warning.
10434
10435         * lily/tie.cc (print): support dotted ties.
10436         
10437 2005-05-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10438
10439         * scm/define-grobs.scm (all-grob-descriptions): switch off
10440         debugging
10441         (all-grob-descriptions): Arpeggio has Y-extent.
10442
10443         * scm/define-music-properties.scm (all-music-properties): document
10444         length-callback and start-callback as "read-only".
10445
10446         * scm/music-functions.scm (unfold-repeats): rewrite. Cannot set
10447         length-callback after creation. 
10448
10449         * scripts/convert-ly.py (conv): unfoldrepeats -> unfoldRepeats,
10450         compressmusic -> compressMusic.
10451
10452         * ly/music-functions-init.ly (oldaddlyrics): idem.
10453
10454         * lily/parser.yy: NewLyricCombineMusic ->
10455         LyricCombineMusic. LyricCombineMusic -> OldLyricCombineMusic.
10456
10457 2005-05-24  Pedro Kroger  <kroeger@pedrokroeger.net>
10458
10459         * ly/Welcome_to_LilyPond.ly: typo.
10460
10461 2005-05-24  Graham Percival  <gperlist@shaw.ca>
10462
10463         * Documentation/user/lilypond.tely: move changing-defaults to be
10464         before global issues.
10465
10466         * Documentation/user/basic-notation.itely: move Transpose section
10467         here from advanced/Other.
10468
10469         * Documentation/user/changing-defaults.itely,
10470         advanced-notation.itely: move Fonts to advanced, edit.
10471
10472 2005-05-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10473
10474         * lily/parser.yy (bare_int): remove rule.  From now on, we require
10475         # before negative integers.
10476
10477 2005-05-23  Graham Percival  <gperlist@shaw.ca>
10478
10479         * ly/property.ly: Update tieDotted to have the same form as slurDotted.
10480
10481         * Documentation/user/lilypond.tely: change Unified index to
10482         LilyPond index.
10483
10484         * Documentation/user/advanced-notation.itely,
10485         instrument-notation.itely: editing.
10486
10487 2005-05-23  Jan Nieuwenhuizen  <janneke@gnu.org>
10488
10489         * scm/lily.scm (lilypond-all): Bugfix: return failed.
10490
10491         * lily/main.cc (setup_paths)[__MINGW32__]: Normalize LILYPONDPREFIX.
10492
10493 2005-05-21  Jan Nieuwenhuizen  <janneke@gnu.org>
10494
10495         * lily/general-scheme.cc (ly:stderr-redirect): Rename from
10496         ly:port-move.  Needs to be stderr-specific on mingw.
10497         Run fixcc.
10498
10499 2005-05-20  Jan Nieuwenhuizen  <janneke@gnu.org>
10500
10501         * lily/general-scheme.cc (ly:port-move): Remove.
10502
10503         * scm/backend-library.scm (postscript->pdf): Remove -dSAFER in
10504         windows.
10505
10506         * lily/main.cc (setup_paths) [ARGV0_RELOCATION]: Reinstate GS_*
10507         variables.  This eliminates the need for a gs.bat wrapper, which
10508         opens a console.
10509
10510         * scripts/lilypond-invoke-editor.scm (running-from-gui?): 
10511         * scm/lily.scm (running-from-gui?): 
10512         * lily/main.cc[MINGW]: Remove isatty inversion, this is an
10513         artifact of not compiling with -mwindows.
10514
10515         * scm/editor.scm: Define PLATFORM.
10516
10517 2005-05-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10518
10519         * scripts/lilypond-book.py (PREAMBLE_LY): add marker, where people
10520         can start to cut & paste lilypond-book fragments.  
10521
10522         * scm/define-music-types.scm (music-descriptions): remove
10523         UntransposableMusic
10524
10525 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10526
10527         * scm/output-ps.scm (glyph-string): remove / before CIDs.
10528
10529 2005-05-20  Graham Percival  <gperlist@shaw.ca>
10530
10531         * Documentation/user/instrument-notation.itely: remove *Engraver.
10532
10533         * Documentation/user/advanced-notation.itely: edit, rearrange.
10534
10535 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10536
10537         * scm/output-ps.scm (glyph-string): take cid? argument. Use
10538         findresource iso. findfont for CID CFF fonts.
10539
10540         * VERSION (PACKAGE_NAME): release 2.5.25
10541
10542         * ly/Welcome_to_LilyPond.ly: add  \version
10543
10544 2005-05-20  Graham Percival  <gperlist@shaw.ca>
10545
10546         * Documentation/user/programming-interface.itely: move
10547         \displayMusic into its own section.
10548
10549         * Documentation/user/basic-notation.itely: finish editing.
10550
10551 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10552
10553         * flower/file-path.cc (find): don't throw away file_name.dir, but
10554         append to it. Fixes \include with directories.
10555
10556         * flower/include/file-path.hh (class File_path): don't derive from
10557         Array<String>.
10558
10559         * flower/include/file-name.hh (class File_name): remove to_str0()
10560
10561         * lily/hara-kiri-engraver.cc (acknowledge_grob): split
10562         Hara_kiri_engraver in separate file.
10563
10564         * lily/slur-configuration.cc (score_encompass): oops, <? to min()
10565         translation went wrong. Fixes vertically translated slurs.
10566
10567 2005-05-19  Graham Percival  <gperlist@shaw.ca>
10568
10569         * Documentation/user/basic-notaton.itely: editing.
10570
10571 2005-05-18  Graham Percival  <gperlist@shaw.ca>
10572
10573         * Documentation/user/macros.itexi, basic-notation.itely:
10574         add @commonprop (commonly used properties) macro.
10575
10576 2005-05-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10577
10578         * ly/Welcome_to_LilyPond.ly: talk about icon, not program.
10579
10580         * scripts/lilypond-book.py (invokes_lilypond): new function
10581         (main): only run fontextract if invokes_lilypond() is true.
10582
10583         * lily/function-documentation.cc (ly_add_function_documentation):
10584         duh, use !=
10585
10586         * Documentation/topdocs/INSTALL.texi (Top): add MacOS command.
10587
10588         * stepmake/aclocal.m4: remove kpathsea warning, change to OPTIONAL.
10589
10590         * scm/lily.scm (running-from-gui?): lowercase Darwin.
10591
10592         * lily/function-documentation.cc (ly_add_function_documentation):
10593         use scm_hash_table_p() for checking.
10594
10595 2005-05-18  Jan Nieuwenhuizen  <janneke@gnu.org>
10596
10597         * Documentation/user/advanced-notation.itely (Text scripts):
10598         Change nonexisting @internalsref{Text markup} to @ref{Text
10599         markup}.  Change @internalsref{Text script} to
10600         @internalsref{TextScript}.
10601
10602         * lily/main.cc (setup_paths): Bugfix: pangorc is not pango.modules.
10603
10604 2005-05-17  Graham Percival  <gperlist@shaw.ca>
10605
10606         * Documentation/user/tutorial.itely, basic-notation.itely,
10607         changing-defaults.itely: remove duplicate cindex entries
10608         that appear on the same page.
10609
10610         * scm/define-grobs.scm: change default padding for TextSpanner.
10611
10612         * Documentation/topdocs/AUTHORS.texi: update email address.
10613
10614         * Documentation/user/global.itely: add info about \include.
10615
10616 2005-05-17  Jan Nieuwenhuizen  <janneke@gnu.org>
10617
10618         * scm/backend-library.scm (postscript->pdf): Remove (useless) .ps
10619         when running-from-gui.
10620
10621         * scm/editor.scm (get-editor): Add platform defaults.
10622
10623         * scm/backend-library.scm (postscript->pdf): Typo.
10624
10625 2005-05-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10626
10627         * scm/lily.scm (running-from-gui?): Darwin never runs from GUI.
10628
10629         * lily/font-config.cc (init_fontconfig): add warning about cache.
10630
10631 2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
10632
10633         * lily/main.cc (setup_paths)[ARGV0_RELOCATION]: Remove GS_*.
10634
10635 2005-05-16  Mats Bengtsson  <mabe@s3.kth.se>
10636
10637         * lily/horizontal-bracket.cc (print): Take care of the direction
10638         property so brackets above the stave point downwards. 
10639
10640         * scm/define-grobs.scm (all-grob-descriptions): Set staff-padding
10641         for HorizontalBracket so it doesn't end up within the stave.
10642
10643 2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
10644
10645         * lily/GNUmakefile (default): Typo.
10646
10647         * scm/lily.scm (PLATFORM): Export.
10648
10649         * scm/framework-ps.scm (write-preamble)[MINGW]: Use
10650         load-font-via-GS, ttftool or fopencookie is broken on windows.
10651         
10652         * scm/backend-library.scm (postscript->pdf)[MINGW]: Do not use
10653         -dSAFER, that is broken on windows.
10654
10655 2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10656
10657         * lily/GNUmakefile ($(outdir)/FlexLexer.h): conditional dependency
10658         for FlexLexer.h
10659
10660         * scripts/lilypond-invoke-editor.scm: remove stray -
10661
10662 2005-05-15  Jan Nieuwenhuizen  <janneke@gnu.org>
10663
10664         * lily/lily-guile.cc (ly_scm2newstr): Use scm_i_string_length.
10665         Fixes deprecation warning.
10666
10667         * flower/include/string.icc (to_string): Only inline if
10668         -DSTRING_UTILS_INLINED.
10669
10670         * lily/pango-font.cc (pango_item_string_stencil): Normalize file
10671         name.  Remove windows comment.
10672
10673         * scm/editor.scm (slashify): New function.
10674         (get-editor-command): Use it.
10675         (get-command-template): Do not alter editor command if
10676         environment value includes `%(file)s' magic.
10677
10678         * scripts/lilypond-invoke-editor.scm (unquote-uri): New function.
10679         (dissect-uri): Use it.
10680         (unquote-uri): Bugfix.
10681
10682 2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10683
10684         * scm/framework-ps.scm (write-preamble): add TTF rule.
10685
10686         * Documentation/topdocs/README.texi (Top): remove note about
10687         xdelta.
10688
10689         * Documentation/topdocs/INSTALL.texi (Top): remove Flex
10690         requirement.
10691
10692         * stepmake/aclocal.m4: STEPMAKE_FLEXLEXER_LOCATION: new
10693         function. Figure out where FlexLexer.h lives
10694
10695         * lily/GNUmakefile (OUT_DIST_FILES): dist lexer.cc and FlexLexer.h
10696         
10697 2005-05-14  Jan Nieuwenhuizen  <janneke@gnu.org>
10698
10699         * scripts/lilypond-invoke-editor.scm (dissect-uri): Handle URIs
10700         with Windows root in file name.
10701
10702         * scm/backend-library.scm (ly:system): Only redirect output (using
10703         system and shell, ugh) if /dev/null is writable.
10704
10705         * Documentation/pictures/GNUmakefile [PLATFORM_WINDOWS]: Build
10706         windows icon.
10707
10708         * scm/lily.scm (is-absolute?): New function.  Fixes absolute files
10709         on Mingw.
10710
10711         * scm/output-ps.scm (grob-cause): Use it.  Fixes PDF point and
10712         click.
10713
10714         * flower/file-path.cc (is_dir, is_file): New function.  Actually
10715         use result of stat when available.
10716
10717         * flower/file-path.cc (find): Use it.  Refactor.  Fixes Mingw,
10718         absolute file name and root.
10719
10720         * scm/lily.scm (PLATFORM): On mingw, slashify getcwd.
10721
10722         * scm/editor.scm (get-editor-command): Typo: do not apply editor.
10723
10724         * flower/file-name.cc (slashify): Bugfix, do substitute if no
10725         slashes in file name.
10726
10727 2005-05-13  Jan Nieuwenhuizen  <janneke@gnu.org>
10728
10729         * Documentation/user/preface.itely (Preface): Run
10730         texinfo-all-menus-update.
10731
10732         * scm/editor.scm (get-editor-command): Bugfix: allow full
10733         LYEDITOR setting, partial XEDITOR setting.  With typo fix.
10734
10735         * Documentation/pictures/lilypond-48.xpm: New file.
10736
10737         * flower/file-path.cc (to_string): Bugfix: use PATHSEP.
10738
10739         * ly/Welcome_to_LilyPond.ly: New file.
10740
10741         * lily/main.cc (main): Only identify if we have a terminal.
10742
10743         * scm/backend-library.scm (postscript->png)
10744         (postscript->pdf): Fix file name quoting for GS/MINGW (ie,
10745         non-/bin/sh).
10746
10747 2005-05-13  Heikki Junes  <hjunes@cc.hut.fi>
10748
10749         * Documentation/topdocs/AUTHORS.texi: polish, update.
10750
10751 2005-05-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10752
10753         * Documentation/user/preface.itely (Notes for version 2.6): new
10754         notes for 2.6
10755
10756         * lily/dynamic-engraver.cc (stop_translation_timestep): first set
10757         finished_span_, then call typeset_all(). Fixes spurious "Hairpin
10758         is not fully contained" warnings.
10759
10760         * lily/slur-scoring.cc (get_bound_info): remove warning.
10761
10762         * lily/staff-symbol-engraver.cc (process_music): start initial
10763         spanner in process_music(). This fixes overrides of StaffSymbol
10764         properties.
10765
10766         * scm/framework-pdf.scm (Module): remove.
10767
10768         * Documentation/topdocs/AUTHORS.texi (AUTHORS): clean up, update.
10769
10770         * lily/ambitus-engraver.cc: formatting cleanups.
10771
10772         * mf/feta-solfa.mf (Module): remove.
10773
10774         * ChangeLog: more details about contributions.
10775
10776 2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10777
10778         * lily/align-interface.cc (align_elements_to_extents): warn if
10779         called too early. Fixes: disappearing-staff-lines.ly
10780
10781         * VERSION (PACKAGE_NAME): release 2.5.24
10782
10783 2005-05-12  Jan Nieuwenhuizen  <janneke@gnu.org>
10784
10785         * stepmake/aclocal.m4: Typo.
10786
10787         * flower/string.cc (substitute): Take two strings or two
10788         characters.  Update callers.
10789
10790 2005-05-11  Jan Nieuwenhuizen  <janneke@gnu.org>
10791
10792         * flower/file-name.cc (File_name): Slashify.
10793
10794         * scm/lily.scm: Use gui-main iso lilypond-main on MINGW.
10795
10796         * scripts/GNUmakefile (SEXECUTABLES): Add lilypond-invoke-editor.
10797
10798         * stepmake/aclocal.m4 (STEPMAKE_WINDOWS): New function.
10799
10800         * configure.in (gui_b): Use it.
10801
10802         * lily/lilypond.rc.in: New file.
10803
10804         * lily/GNUmakefile[PLATFROM_WINDOWS]: Compile it into executable.
10805
10806 2005-05-12  Graham Percival  <gperlist@shaw.ca>
10807
10808         * Documentation/user/advanced-notation.itely: edit of Text
10809         section; clarify text scripts vs. text markup.
10810
10811 2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10812
10813         * lily/multi-measure-rest-engraver.cc
10814         (Multi_measure_rest_engraver): init bar_seen_ to true. Notice
10815         separation items on start. Fixes mm rests in start of score.
10816
10817         * lily/slur-scoring.cc (move_away_from_staffline): robustness,
10818         don't access StaffSymbol if not there.
10819         Fixes: crash-staff-symbol-engraver.ly.
10820
10821         * lily/instrument-name-engraver.cc (class
10822         Instrument_name_engraver): data member first_. Create
10823         InstrumentName on start. 
10824
10825 2005-05-12  Graham Percival  <gperlist@shaw.ca>
10826
10827         * Documentation/user/instrument-notation.itely: add guitar
10828         position.
10829
10830         * Documentation/user/introduction.itely,
10831         Documentation/user/lilypond.tely,
10832         Documentation/user/tutorial.itely: begin pruning
10833         unused (duplicated) cindex entries and misc cleanup.
10834
10835 2005-05-12  Mats Bengtsson  <mabe@s3.kth.se>
10836
10837         * input/test/volta-chord-names.ly: Bring the explanation up to
10838         date.
10839
10840 2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
10841
10842         * Documentation/topdocs/{AUTHORS.texi,INSTALL.texi,README.texi}:
10843         Specify `@documentencoding utf-8' for html, ignore warnings.
10844
10845 2005-05-11  Erik Sandberg  <ersa9195@student.uu.se>
10846
10847         * THANKS: Added bughunters.
10848
10849 2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
10850
10851         * lily/main.cc: update help string for `lilypond -H'.
10852
10853         * po/fi.po: update.
10854         
10855 2005-05-10  Graham Percival  <gperlist@shaw.ca>
10856
10857         * Documentation/user/advanced-notation.itely: minor fixes.
10858
10859 2005-05-10  Jan Nieuwenhuizen  <janneke@gnu.org>
10860
10861         * scm/editor.scm: New module.
10862
10863         * scm/lily.scm (gui-main): Use it.
10864
10865         * scm/framework-gnome.scm (spawn-editor): Use it.
10866
10867         * scripts/lilypond-invoke-editor.scm: Use it in new script.
10868
10869 2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10870
10871         * scm/framework-ps.scm (load-font-via-GS):  new function.
10872
10873         * lily/pango-font.cc (pango_item_string_stencil): add support for
10874         CID keyed font.
10875
10876         * scm/output-ps.scm (glyph-string): add support for CID keyed font.
10877
10878 2005-05-10  Graham Percival  <gperlist@shaw.ca>
10879
10880         * Documentation/user/basic-notation.itely: add @ref.
10881
10882         * Documentation/user/advanced-notation.itely: add example
10883         of 5/8 beaming.
10884
10885 2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10886
10887         * scripts/lilypond-pdfpc-helper.py (ly_pc_editor): robustness fixes.
10888
10889         * scm/backend-library.scm (postscript->pdf): Invoke gs instead of
10890         going through ps2pdf wrappers.
10891
10892 2005-05-09  Jürgen Reuter  <reuter@ipd.uka.de>
10893
10894         * Documentation/user/instrument-notation.itely: petrucci note
10895         heads: updated docu
10896
10897         * input/regression/note-head-style.ly: updated regression test;
10898         indentation fixes
10899
10900         * ly/engraver-init.ly: MensuralVoiceContext: use petrucci note
10901         heads as default
10902
10903         * mf/parmesan-heads.mf: minor editing; use musicological names
10904         (rather than optical description) as note head names
10905
10906         * scm/output-lib.scm: complete petrucci heads
10907
10908 2005-05-09  Pal Benko  <benkop@freestart.hu>
10909
10910         * mf/parmesan-heads.mf: add petrucci heads (like neo-mensural
10911         heads, but bigger)
10912
10913 2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
10914
10915         * lily/main.cc (main_with_guile): Remove no files check.
10916
10917         * lily/main.cc (ly:usage): Export to Scheme.
10918
10919         * scm/lily.scm (no-files-handler): New function.
10920
10921         * scm/lily.scm (lilypond-main): Use it.
10922
10923         * configure.in (gui_b): Add mbrtowc checking.
10924         Resurrect [utf8/]wchar.h checking.
10925
10926 2005-05-09  Mats Bengtsson  <mabe@s3.kth.se>
10927
10928         * Documentation/user/advanced-notation.itely (Metronome marks):
10929         Add link to the program reference for MetronomeMark
10930
10931         * Documentation/user/lilypond-book.itely (An example of a
10932         musicological document): Correct the example using psfonts 
10933
10934 2005-05-09  Heikki Junes  <hjunes@cc.hut.fi>
10935
10936         * po/fi.po: update after a lesson how to update entries against
10937         source.
10938         
10939         * po/TODO: document the lesson.
10940
10941 2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10942
10943         * configure.in (gui_b): remove wcrtomb checking.
10944
10945         * lily/general-scheme.cc (LY_DEFINE): hand-convert utf8 to 32
10946         bits. Patch by Matthias Neeracher. <neeracher@mac.com>
10947
10948 2005-05-09  Mats Bengtsson  <mabe@s3.kth.se>
10949
10950         * scripts/convert-ly.py: In the conversion to version 1.9.0, 
10951         keep Scheme expressions and strings unmodified when doing the
10952         conversion to postfix notation for slurs and beams. Should
10953         hopefully solve most related conversion problems. 
10954
10955         * Documentation/user/lilypond-book.itely : Clarify and correct how
10956         to call dvips with -h psfonts.
10957
10958 2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
10959
10960         * Documentation/user/instrument-notation.itely (Entering lyrics):
10961         Typo.  Fixes build.
10962
10963 2005-05-09  Graham Percival  <gperlist@shaw.ca>
10964
10965         * Documentation/user/lilypond-book.itely: document PSFONTS file.
10966
10967         * Documentation/user/lilypond.tely, lilypond-book.itely,
10968         tutorial.itely: change references to 2.5.x to 2.6.x.
10969
10970         * Documentation/user/instrument-notation.itely: clarified \addlyrics
10971         vs \lyricmode.
10972
10973         * Documentation/user/invoking.itely: remove old info about
10974         lilypond-profile.
10975
10976         * Documentation/topdocs/INSTALL.texi: remove old info about
10977         lilypond-profile, add warning about needing international fonts
10978         to build docs.
10979
10980 2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10981
10982         * lily/include/grob-info.hh (class Grob_info): make data member
10983         private. Changes throughout.
10984
10985         * input/regression/alignment-order.ly: new file. 
10986
10987         * lily/vertical-align-engraver.cc (acknowledge_grob): read
10988         alignAboveContext and alignBelowContext
10989
10990 2005-05-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10991
10992         * lily/pfb.cc (LY_DEFINE): add cast.
10993
10994         * scm/framework-ps.scm (write-preamble): embed CFFs if file name
10995         matches .otf
10996         (write-preamble): warn about unknown fonts.
10997
10998         * lily/pfb.cc (Module): new function ly:otf->cff
10999
11000         * lily/open-type-font.cc (get_otf_table): use ::get_otf_table
11001         (get_otf_table): new function.
11002
11003 2005-05-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11004
11005         * scm/backend-library.scm (postscript->png): call lilypond-ps2png
11006         iso. ps2png.
11007
11008 2005-05-06  Heikki Junes  <hjunes@cc.hut.fi>
11009
11010         * po/fi.po: apply second round of update.
11011
11012 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11013
11014         * scm/x11-color.scm (make-x11-color-handler): don't use
11015         #\sp. Apparently doesn't work on all platforms. 
11016
11017 2005-05-06  Graham Percival  <gperlist@shaw.ca>
11018
11019         * Documentation/user/advanced-notation.itely, putting.itely,
11020         tutorial.itely, global.itely, introduction.itely: really minor fixes.
11021
11022 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11023
11024         * VERSION (PACKAGE_NAME): release 2.5.23
11025
11026 2005-05-06  Jan Nieuwenhuizen  <janneke@gnu.org>
11027
11028         * Documentation/topdocs/AUTHORS.texi: Remove texinfo @accents,
11029         convert to utf-8.
11030
11031         * THANKS: Add translators for this release, convert to utf-8.
11032
11033         * mf/GNUmakefile (MFTRACE_FLAGS):
11034         * buildscripts/substitute-encoding.py (outdir): Build fix: pass
11035         outdir as option (WAS: hardcoded).
11036
11037 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11038
11039         * lily/staff-symbol-engraver.cc (Staff_symbol_engraver): init
11040         finished_span_
11041
11042         * THANKS: add Hans Forbrich.
11043
11044         * Documentation/topdocs/NEWS.tely (Top): document new feature.
11045
11046         * Documentation/user/basic-notation.itely (Staff symbol): document
11047         start/stop staff. Reference to ossia.ly
11048
11049         * input/test/ossia.ly: new example using stop and startStaff.
11050
11051         * lily/timing-engraver.cc: remove Timing_engraver::initialize(),
11052         in other words, don't create "|" barline at start of the score.
11053         (start_translation_timestep): don't set whichBar for start of score.
11054
11055         * input/regression/staff-halfway.ly: use new functionality.
11056
11057         * lily/staff-symbol-engraver.cc (try_music): take StaffSpanEvents,
11058         start and stop staff based on events.
11059
11060         * scm/define-music-types.scm (music-descriptions): add StaffSpanEvent
11061
11062         * ly/declarations-init.ly (startStaff, stopStaff): new identifiers.
11063
11064 2005-05-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11065
11066         * Documentation/user/programming-interface.itely (How markups work
11067         internally ): remove \encoding reference.
11068
11069 2005-05-04  Mats Bengtsson  <mabe@s3.kth.se>
11070
11071         * scripts/convert-ly.py: Attempt to do a smarter update of 
11072         text markups from versions < 1.9.0 with arbitrary nesting.
11073
11074 2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
11075
11076         * po/fi.po: convert to utf-8, and update.
11077
11078 2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11079
11080         * make/lilypond.suse.spec.in: update from suse 2.4 package.
11081
11082         * lily/*.cc: more <? >? to min/max changes
11083
11084         * lily/include/interpretation-context-handle.hh: rename
11085         Interpretation_context_handle to Context_handle.
11086
11087 2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
11088
11089         * input/regression/GNUmakefile (local_delete): use `find` together 
11090         with `xargs` to avoid too long argument-lists in cmd line.
11091
11092 2005-05-04  Graham Percival  <gperlist@shaw.ca>
11093
11094         * Documentation/user/introduction.itely: updates "About this manual".
11095
11096         * Documentation/user/advanced-notation.itely,
11097         invoking.itely: minor fixes.
11098
11099 2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11100
11101         * COPYING: add font exception. Update FSF address. 
11102
11103         * lily/context-def.cc (path_to_acceptable_context): bugfix, depth
11104         should be taken without child context.
11105
11106         * ly/chord-modifiers-init.ly (blackTriangleMarkup): use it.
11107
11108         * scm/define-markup-commands.scm (triangle): new command, as
11109         robust replacement for unicode Delta/Triangle.
11110
11111 2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11112
11113         * ps/music-drawing-routines.ps: add fillp argument.
11114
11115         * lily/lookup.cc (round_filled_polygon): polygon takes filled? argument
11116
11117         * lily/font-config.cc (init_fontconfig): don't add cff/
11118
11119         * VERSION (PACKAGE_NAME): release 2.5.22
11120
11121         * mf/GNUmakefile: remove cff/cff.ps/.map install rules.
11122
11123         * lily/grace-engraver.cc (consider_change_grace_settings): use
11124         is_alias(). Fixes problem with CueVoice grace notes. 
11125
11126         * lily/simultaneous-music-iterator.cc (construct_children): call
11127         Music_iterator::quit() for iterators that start out invalid. This
11128         fixes indefinitely continuing contexts.
11129
11130         * buildscripts/substitute-encoding.py: new file
11131
11132         * Documentation/user/basic-notation.itely (Basic polyphony): fix
11133         missing @end 
11134
11135         * scripts/lilypond-book.py (write_if_updated): print file name.
11136
11137         * Documentation/user/basic-notation.itely (Explicitly
11138         instantiating voices): idem.
11139
11140         * Documentation/user/advanced-notation.itely (Text spanners):
11141         remove stray { } 
11142
11143         * lily/context.cc (default_child_context_name): the default child
11144         is now first in accepts_list_.
11145
11146         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
11147         \defaultchild to all relevant contexts.  This fixes:
11148         drums-pitch.ly.
11149
11150         (Probably also fixes similar problems with ancient
11151         transcriptions getting CueVoices instead of the desired voices.)
11152  
11153         * lily/context-def.cc (get_default_child): new function.
11154         (get_accepted): place default child in front of list.
11155
11156         * lily/parser.yy (FIXME): add DEFAULTCHILD token.
11157
11158         * lily/include/context-def.hh (struct Context_def): add
11159         default_accept_
11160
11161 2005-05-03  Graham Percival  <gperlist@shaw.ca>
11162
11163         * scm/define-grobs.scm: remove "remove-first" line, since
11164         the absent property is set to #f anyway.
11165
11166         * Documentation/user/basic-notation.itely,
11167         advanced-notation.itely, instrument-notation.itely: minor
11168         fixes.
11169
11170         * ly/property-init.ly: add textSpanner{Up,Down,Neutral}.
11171
11172         * Documentation/user/advanced-notation.itely,
11173         changing-defaults.itely: consolidate Text stuff in
11174         advanced notation.
11175
11176         * Documentation/user/global.itely: better docs for \header.
11177
11178         * Documentation/user/putting.itely: new chapter; placeholder
11179         for future expansion.
11180
11181         * Documentation/user/examples.itely: moved "suggestions for
11182         writing LP files" section into putting.itely.
11183
11184         * Documentation/user/lilypond.itely: added new chapter,
11185         fixed the short table of contents.
11186
11187 2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11188
11189         * lily/beam-quanting.cc (quanting): robustness fix, don't produce
11190         infinity for unfeasible beams.
11191
11192         * make/lilypond.fedora.spec.in (Group): idem.
11193
11194         * scripts/GNUmakefile (SEXECUTABLES): rename ps2png to lilypond-ps2png
11195
11196         * mf/GNUmakefile (ALL_GEN_FILES): remove .map
11197
11198         * scm/framework-ps.scm (write-preamble): extract CFF from OTF
11199         fonts directly.
11200
11201         * buildscripts/gen-emmentaler-scripts.py (i): idem.
11202
11203         * mf/GNUmakefile: remove all CFF rules.
11204
11205         * scm/framework-ps.scm (ps-embed-cff): reinstate.
11206
11207         * lily/open-type-font-scheme.cc (LY_DEFINE):
11208         new function ly:otf-font-table-data.
11209         (LY_DEFINE): new function otf-font?
11210
11211 2005-05-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11212
11213         * mf/GNUmakefile ($(outdir)/lilypond.map): remove rule.
11214         ($(outdir)/Fontmap.lily): idem.
11215
11216         * buildscripts/gen-emmentaler-scripts.py (i): load fetaXX encoding
11217         for PFAEmmentaler-XXX.pfa. 
11218
11219         * Documentation/user/music-glossary.tely (accidental): NL
11220         translation of accidental.
11221
11222 2005-05-02  Jan Nieuwenhuizen  <janneke@gnu.org>
11223
11224         * flower/include/international.hh: Bugfix: include "string.hh".
11225
11226         * lily/include/mingw-compatibility.hh: New file.
11227
11228         * flower/include/libc-extension.hh (memrev): Rename from strrev.
11229
11230         * configure.in: Search for mingw wcrtomb library.
11231
11232 2005-05-02  Mats Bengtsson  <mabe@s3.kth.se>
11233
11234         * scripts/convert-ly.py: Bug fix
11235
11236         * Documentation/user/changing-defaults.itely (Common tweaks):
11237         Added example where the context has to be specified explicitly
11238         (MetronomeMark). 
11239
11240 2005-05-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11241
11242         * scripts/lilypond-book.py (ly_options): set timing to #f for
11243         notime option.
11244
11245         * scripts/convert-ly.py (conv): typo.
11246
11247         * flower/*.cc: remove <? and >?
11248         
11249         * lily/*.cc: remove <? and >?
11250
11251         * lily/tweak-registration.cc (insert_tweak_from_file): Make sure
11252         that 0x0 isn't passed into scm_cons(). Fixes crash with tweak
11253         editor.
11254
11255 2005-04-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11256
11257         * lily/part-combine-engraver.cc: add space to variable list.
11258
11259 2005-04-30  Graham Percival  <gperlist@shaw.ca>
11260
11261         * scm/define-grobs.scm: changed RemoveEmptyVerticalGroup's
11262         remove-first to false (matches docs)
11263
11264         * Documentation/user/advanced-notation.itely: corrected docs
11265         concerning remove-first.
11266
11267 2005-04-29  Mats Bengtsson  <mabe@s3.kth.se>
11268
11269         * lily/part-combine-engraver.cc: make sure that the relevant
11270         properties are included in the documentation.
11271
11272 2005-04-28  Graham Percival  <gperlist@shaw.ca>
11273
11274         * Documentation/user/lilypond-book.itely: Bernard's docs
11275         for \betweenLilyPondSystem.
11276
11277 2005-04-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11278
11279         * Documentation/topdocs/INSTALL.texi (Top): remove TeX outdated
11280         remarks.
11281
11282 2005-04-28  Pal Benko  <benkop@freestart.hu>
11283
11284         * lily/mensural-ligature.cc (brew_flexa): apply thickness property
11285         only on vertical lines of flexa shape, and use a constant
11286         thickness value for horizontal lines (patch slightly modified by
11287         Jürgen Reuter)
11288
11289         * lily/include/mensural-ligature.hh: make 2 comments clearer
11290
11291 2005-04-28  Jürgen Reuter  <reuter@ipd.uka.de>
11292
11293         * lily/vaticana-ligature-engraver.cc (need_extra_space): renamed
11294         to need_extra_horizontal_space; bugfix: use class scope to avoid
11295         global namespace pollution
11296
11297         * Documentation/user/instrument-notation.itely (ligatures): added
11298         comment on possible future syntax change and how to work around
11299
11300         * lily/vaticana-ligature-engraver.cc, mf/parmesan-heads.mf
11301         (epiphonus, cephalicus): fine-tune shape of plica head for narrow
11302         intervals (fixes agnus dei example)
11303
11304         * Documentation/user/instrument-notation.itely (white mensural
11305         ligatures): selected a more illustrative example
11306
11307 2005-04-28  Heikki Junes <hjunes@cc.hut.fi>
11308
11309         * Documentation/index.html.in: specify utf-8 charset in meta content.
11310
11311 2005-04-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11312
11313         * python/lilylib.py (make_ps_images): bugfixes; GS can produce
11314         empty 2nd page for single page.
11315
11316         * scm/lily.scm: remove p&c definitions.
11317
11318         * po/zh_TW.po (Module): new translation.
11319
11320         * lily/lily-guile.cc (ly_chain_assoc): remove.
11321
11322         * lily/general-scheme.cc (LY_DEFINE): export ly:chain_assoc_get
11323         (LY_DEFINE): recurse, iso. calling ly_chain_assoc.
11324
11325 2005-04-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11326
11327         * lily/beaming-info.cc: remove infinity_i
11328
11329         * scripts/abc2ly.py (out_filename): fix thinko with \version.
11330
11331 2005-04-26  Graham Percival  <gperlist@shaw.ca>
11332
11333         * Documentation/user/basic-notation.itely,
11334         instrument-notation.itely, advanced-notation.itely,
11335         changing-defaults.itely: minor fixes.  Added docs
11336         for colors to advanced-notation.itely.
11337
11338         * Documentation/user/advanced-notation.itely: fixed compile
11339         problem and added Bernard's x11-color doc patch.
11340
11341 2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
11342
11343         * scm/output-ps.scm (grob-cause): Yet another fix, hope it's
11344         alright this time round.
11345
11346 2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11347
11348         * Documentation/topdocs/INSTALL.texi (Top): idem.
11349
11350         * Documentation/topdocs/README.texi (Top): remove clean-fonts refs.
11351
11352         * VERSION (MAJOR_VERSION): release 2.5.21
11353
11354         * scm/output-ps.scm (grob-cause): bugfix.
11355
11356 2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
11357
11358         * cygwin/*: Update.
11359
11360         * cygwin/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Remove profile
11361         stuff.
11362
11363         * scm/output-ps.scm (grob-cause): Bugfix.
11364
11365         * scm/lily.scm (ly:load): Remove x11-color.
11366
11367         * stepmake/aclocal.m4 (STEPMAKE_GET_EXECUTABLE): Bugfix: do not
11368         quote executable, fixes getting version from program --with
11369         --options.
11370         (STEPMAKE_KPATHSEA): Bugfix for Cygwin cross building: use
11371         $ac_exeect.
11372
11373         * Documentation/user/GNUmakefile: Only build music-glossary with
11374         rendered lilypond snippets during web.
11375
11376 2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11377
11378         * po/de.po: update.
11379
11380         * lily/GNUmakefile (OUT_DIST_FILES): don't dist lexer.cc
11381
11382 2005-04-22  Laura Conrad <lconrad@laymusic.org>
11383  
11384         * scripts/abc2ly:
11385         second title line append with punctuation dash character;
11386         encode abc2ly python strings in utf-8
11387        
11388 2005-04-21  Laura Conrad <lconrad@laymusic.org>
11389
11390         * scripts/abc2ly fix chords (again)
11391  
11392 2005-04-22  Bernard Hurley  <bernard@fong-hurley.org.uk>
11393
11394         * scm/x11-color.scm: new file
11395         All x11 color names can be accessed with:
11396         #(x11-color 'ColorName),
11397         #(x11-color "ColorName") or:
11398         #(x11-color "color name")
11399         If the x11 color name is not recognised then it defaults
11400         to black
11401
11402         * scm/lily.scm: amended to call scm/x11-color.scm
11403
11404 2005-04-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11405
11406         * Documentation/user/invoking.itely (Reporting bugs): comment out
11407         reference to online PNG bug repository.
11408
11409 2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
11410
11411         * lily/translator-scheme.cc (ly:translator-property): Remove.
11412         Update callers.
11413
11414         * lily/context-scheme.cc (ly:context-now): Move from translator.
11415         Update callers.
11416
11417 2005-04-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11418
11419         * input/regression/grid-lines.ly (skips): refine example.
11420
11421         * scm/define-context-properties.scm
11422         (all-user-translation-properties): doc autoBeamCheck
11423
11424         * input/regression/grid-lines.ly (Module): new file.
11425
11426         * lily/grid-point-engraver.cc (Module): new file.
11427
11428         * lily/grid-line.cc (Module): new file.
11429
11430         * lily/grid-line-span-engraver.cc (Module): new file.
11431
11432         * lily/grid-line-interface.cc (Module): new file.
11433
11434 2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
11435
11436         * scm/auto-beam.scm (revert-property-setting): Bugfixes: add
11437         missing parameter, actualy cdr through list.  Actually return a
11438         list with ENTRY removed (was '()).
11439
11440         * scripts/convert-ly.py: Update.  Print warning if file cannot be
11441         opened.
11442         (do_conversion): Fix printing of continuation comma.
11443
11444         * Documentation/user/advanced-notation.itely (Beam formatting):
11445         Remove refbugs about compound time and mixed duration.
11446
11447         * scm/auto-beam.scm (default-auto-beam-settings): Write out all
11448         modulo moments explicitely.
11449
11450         * lily/moment.cc (operator %): New function.
11451
11452         * lily/moment-scheme.cc (ly:mod-moment): Wrap it.
11453
11454         * lily/translator-scheme.cc (ly:translator-now,
11455         ly:translator-property): New function.
11456
11457         * scm/auto-beam.scm (default-auto-beam-check): New function.
11458
11459         * lily/auto-beam-engraver.cc (test_moment): Use it.
11460
11461         * flower/rational.cc (operator %): Bugfix.
11462
11463 2005-04-21  Erik Sandberg  <ersa9195@student.uu.se>
11464
11465         * scripts/abc2ly: Bugfix
11466
11467 2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11468
11469         * python/fontextract.py (write_extracted_fonts): bugfix, too many
11470         %'s on EndFont comment.
11471
11472         * lily/ledger-line-spanner.cc: some more words of explanation.
11473
11474 2005-04-20  John Williams <williams@tni.com>  
11475         
11476         * scripts/lilypond-book.py: htmlquote bugfix.
11477         Allow snippets to be given distinct filenames.
11478         Allow the default alt text to be overridden.
11479
11480 2005-04-20  Erik Sandberg  <ersa9195@student.uu.se>
11481
11482         * ly/performer-init.ly: Bugfix
11483
11484         * THANKS: Added bughunters.
11485
11486 2005-04-20  Jan Nieuwenhuizen  <janneke@gnu.org>
11487
11488         * SConstruct (test_lib): Bump mftrace requirement to 1.1.9.
11489
11490         * lily/auto-beam-engraver.cc (test_moment): Test exact measure
11491         position (was: use modulo measure length).
11492
11493         * configure.in (no gui_b): Remove optional gtk+ requirement.
11494
11495 2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11496
11497         * Documentation/user/basic-notation.itely (Pitches): add
11498         LedgerLineSpanner.
11499
11500         * lily/dynamic-engraver.cc (process_music): set right bound to
11501         script if present. Else, do not set.
11502         (acknowledge_grob): only set right bound of finished spanner to
11503         note column if no other bound is set.
11504
11505         * python/lilylib.py (make_ps_images): switch back to png16m.
11506         
11507 2005-04-19  Jan Nieuwenhuizen  <janneke@gnu.org>
11508
11509         * scripts/lilypond-book.py (write_if_updated): Bugfix for not
11510         writing up to date file.  Add dvips usage suggestion.
11511
11512         * scripts/convert-ly.py: Fix error message.
11513         Print usage if no files on command line.
11514         (usage): Add example usage.
11515
11516         * input/test/compound-time.ly: New file.
11517
11518         * input/test/circle.ly: New file.
11519
11520         * Documentation/topdocs/NEWS.tely: Use them.
11521
11522         * input/test/boxed-stencil.ly: Remove \score.
11523
11524         * buildscripts/mf-to-table.py (base): Add .log dependency.
11525
11526         * mf/GNUmakefile: Add PFAemmentaler and PFAaybabtu dependencies on
11527         pfa's.  Add .log dependency
11528
11529         * scm/define-markup-commands.scm (lower): New command.
11530
11531         * elisp/lilypond-mode.el (LilyPond-pdf-command): New command,
11532         make it default.
11533
11534 2005-04-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11535
11536         * lily/dynamic-engraver.cc (acknowledge_grob): add note-column
11537         also to finished cresc as right bound. This fixes:
11538         skip-string-decresc.ly
11539
11540         * lily/slur-scoring.cc (get_bound_info): robustness: substitute
11541         relative_coordinate if extent is empty.
11542
11543         * lily/stem.cc (width_callback): determine correct extent if flag
11544         is not there. This fixes slur-no-flag.ly
11545
11546         * lily/grace-engraver.cc (consider_change_grace_settings): new
11547         function.
11548         (initialize): also consider_change_grace_settings() on
11549         initialization. Fixes large grace notes at start of score.
11550
11551         * lily/break-align-interface.cc (do_alignment): don't translate if
11552         total_extent is empty.
11553
11554         * buildscripts/lilypond-{login,profile}.sh (Module): remove file.
11555
11556 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11557
11558         * scm/output-ps.scm (grob-cause): don't add cwd if path starts
11559         with slash.
11560
11561 2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
11562
11563         * stepmake/aclocal.m4: Remove tfm_path.
11564
11565 2005-04-18  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11566
11567         * scm/music-functions.scm (markup-expression->make-markup): fix
11568         bug with cons arguments of markup commands.
11569         (music->make-music): fix music expression property list building
11570
11571 2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
11572
11573         * aclocal.m4: Massage package names.
11574
11575         * SCons updates.
11576
11577 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11578
11579         * VERSION (PACKAGE_NAME): release 2.5.20
11580
11581         * lily/stem.cc (calc_stem_info): add minimum Y extent of
11582         stem-tremolo.  Fixes: bugs/tremolo-stem-length-beamed
11583
11584         * lily/percent-repeat-engraver.cc (try_music): add measure before
11585         next_moment to future processing moment. Fixes:
11586         percent-repeat-mm-rest.ly
11587         (process_music): don't add moment for 2nd time.
11588
11589         * input/regression/repeat-percent.ly: add mmrests as extra test.
11590
11591         * lily/axis-group-engraver.cc (acknowledge_grob): read
11592         keepAliveInterfaces to decide what to kill.
11593
11594         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add
11595         percent-repeat-interface to keepAliveInterfaces. This fixes
11596         percent-repeat-harakiri.
11597
11598 2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
11599
11600         * SCons updates.
11601
11602 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11603
11604         * config.make.in (TTFTOOL_ENDIAN): rm TFM_PATH
11605
11606         * aclocal.m4: remove --enable-tfm-path configure option
11607
11608         * input/test/ancient-font.ly (lowerStaff): clef name errors.
11609
11610         * scm/backend-library.scm (postscript->png): newline after
11611         finishing command.
11612
11613         * lily/paper-score-scheme.cc (LY_DEFINE): new file.
11614         (LY_DEFINE): ly:paper-score-paper-systems: new function 
11615
11616         * lily/score-scheme.cc (LY_DEFINE): require music argument. 
11617
11618         * lily/score.cc (default_rendering): use Music_output too.
11619
11620         * input/test/chord-names-languages.ly (Module): rename file.
11621
11622         * lily/text-spanner.cc: add bound-padding.
11623
11624         * lily/paper-book.cc (systems): accept Paper_score
11625         iso. Paper_system vector. 
11626
11627         * input/regression/line-arrows.ly: new file.
11628
11629         * lily/paper-score.cc (process): run get_paper_systems() only once.
11630
11631         * lily/line-spanner.cc (line_stencil): add arrows.
11632
11633 2005-04-18  Jonatan Liljedahl  <lijon@kymatica.com>
11634
11635         * lily/line-interface.cc (make_arrow): new function. 
11636         (arrows): idem.
11637
11638 2005-04-18  Mathieu Giraud  <magiraud@free.fr>
11639
11640         * input/test/chord-names-german.ly: update for italian/french
11641         chords.
11642         
11643         * Documentation/user/instrument-notation.itely (Printing chord
11644         names): update.
11645
11646 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11647
11648         * lily/include/paper-score.hh (class Paper_score): remove unused
11649         prototypes.
11650
11651         * lily/book.cc (process): add -COUNT to midi output.
11652
11653         * lily/score.cc (book_rendering): remove outname argument
11654         (book_rendering): return list of Music_outputs. 
11655
11656         * lily/global-context-scheme.cc (LY_DEFINE): remove outname argument.
11657
11658         * lily/book.cc (process): loop over Music_outputs returned from
11659         Score::book_rendering().
11660
11661         * lily/*.cc (width_callback): remove spurious "unused" warnings
11662         for assert (axis==[XY]_AXIS); 
11663
11664         * lily/include/music-output.hh (class Music_output): smobify class.
11665
11666         * lily/include/paper-score.hh (class Paper_score): make members
11667         private.
11668
11669         * lily/performance.cc (process): return #f iso. #<undefined>. This
11670         prevents #<undefined> leaking into GUILE-userspace.
11671
11672 2005-04-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11673
11674         * config.hh.in: remove HAVE_PANGO_FC_FONT_MAP_ADD_DECODER_FIND_FUNC.
11675
11676 2005-04-17  Mathieu Giraud  <magiraud@free.fr>
11677
11678         * scm/chord-name.scm : support for italian and french
11679         chords names.
11680
11681         * scm/chord-ignatzek-names.scm (ignatzek-chord-names): add
11682         a space defined by chordPrefixSpacer when the root name is
11683         direclty followed by a prefix.
11684
11685         * ly/engraver-init.ly : chordPrefixSpacer       
11686         * scm/define-context-properties.scm : chordPrefixSpacer
11687         * ly/property-init.ly : italianChords, frenchChords 
11688
11689 2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
11690
11691         * mf/feta-din.mf: Remove.
11692
11693         * mf/GNUmakefile (fontdir): Bugfix.
11694
11695         * mf/SConstruct: Some updates.
11696
11697         * SConstruct: Require pkg-config.
11698         (test_program): Bugfix for double digit version compares, use
11699         integer (not string-) compare.
11700         Optionally require gs 8.14.
11701
11702         * stepmake/aclocal.m4 (STEPMAKE_PANGO_FT2): Define HAVE_PANGO16 too.
11703
11704         * lily/*: s/ifdef HAVE_*/if have/.
11705
11706         * SConstruct (test_lib): New function.  Update pkg-config and some
11707         other requirements.
11708
11709         * configure.in: Require pkg-config.  Enforce REQUIRE and version for
11710         freetype, pangof2t.
11711
11712 2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
11713
11714         * po/lilypond.pot, ...: Update using bison-CVS.
11715
11716         * python/lilylib.py (make_ps_images): Fixo.
11717
11718 2005-04-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11719
11720         * python/lilylib.py (make_ps_images): typo.
11721
11722         * configure.in (gui_b): make bison optional.
11723
11724         * lily/GNUmakefile (OUT_DIST_FILES): dist parser and lexer.
11725
11726 2005-04-16  Bernard Hurley  <bernard@fong-hurley.org.uk>
11727
11728         * framework-eps.scm: code added so that a macro \betweenLilyPondSystem
11729         with one parameter can be defined in a LaTeX file when processed
11730         by lilypond-book this will be evaluated between the systems of
11731         a multi-system score. The parameter is the number of systems processed.
11732
11733 2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
11734
11735         * python/lilylib.py (make_ps_images): Escape newline.
11736
11737         * Documentation/user/music-glossary.tely: Run
11738         texinfo-all-menus-update.
11739
11740 2005-04-14  Jan Nieuwenhuizen  <janneke@gnu.org>
11741
11742         * scm/lily-library.scm (old-relative-not-used-message)
11743         (version-not-seen-message): Add input-file-name-location to message.
11744
11745         * lily/parser.yy (lilypond): Add token aliases.
11746
11747         * Documentation/user/music-glossary.tely (accidental): Fixes.  Do
11748         not confuse with alteration.
11749         (alteration): Add.
11750
11751 2005-04-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11752
11753         * python/lilylib.py (make_ps_images): use -dEPSCrop
11754
11755         * VERSION (PACKAGE_NAME): release 2.5.19 
11756
11757         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
11758         only put xrefs in info documentation.
11759
11760         * make/ly-rules.make ($(outdir)/%.html.omf): transplant .dvi ->
11761         .pdf rule to tex-rules.make.
11762
11763         * scm/framework-eps.scm (dump-stencils-as-EPSes): remove comments
11764         from -systems.* output.
11765
11766         * stepmake/stepmake/tex-rules.make ($(outdir)/%.pdf): make PDF
11767         directly, remove -$(PAGESIZE) target.
11768
11769         * input/test/embedded-postscript.ly: update.
11770
11771 2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11772
11773         * make/lysdoc-targets.make (local-WWW): remove ps.gz target.
11774
11775         * Documentation/user/changing-defaults.itely (Font selection):
11776         document font-name.
11777
11778         * input/regression/font-name.ly: show Pango fonts for
11779         font-name. Update example. 
11780
11781         * lily/pango-select.cc (properties_to_pango_description): don't
11782         convert symbol font-size to number, but use to lookup.
11783
11784         * python/fontextract.py (write_extracted_fonts): add VMusage 0.
11785
11786         * scm/framework-ps.scm (write-preamble): use (NAME . CONTENTS) and
11787         (NAME . FILE-NAME) tuples for font descriptions. 
11788         (write-preamble): display BeginFont DSC comments.
11789
11790         * python/fontextract.py (write_extracted_fonts): new file. Extract
11791         font resources from a PS file.
11792
11793         * scripts/lilypond-book.py (option_definitions): --psfonts option.
11794         (Compile_error.process_include): do_file returns chunks.
11795
11796         * make/ly-vars.make (DVIPS_FLAGS): don't load .map file.
11797
11798         * make/lysdoc-targets.make: .texi is .PRECIOUS
11799
11800         * scripts/lilypond-book.py (write_if_updated): new function.
11801
11802 2005-04-13  Jan Nieuwenhuizen  <janneke@gnu.org>
11803
11804         * scm/framework-eps.scm (dump-stencils-as-EPSes): Massage messages.
11805
11806 2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11807
11808         * scm/framework-eps.scm (dump-stencils-as-EPSes): no massages.
11809
11810         * input/regression/markup-syntax.ly: remove \score.
11811
11812         * scm/define-markup-commands.scm (draw-circle): add fill argument
11813
11814         * scm/stencil.scm (make-circle-stencil): add fill argument
11815
11816         * ps/music-drawing-routines.ps: add fill argument.
11817
11818         * ly/performer-init.ly: add CueVoice to MIDI too.
11819
11820         * ps/music-drawing-routines.ps: new routine BeginEPSF /
11821         EndEPSF.
11822
11823         * input/regression/markup-eps.ly: new file.
11824
11825         * scm/framework-ps.scm (write-preamble): change order: vars should
11826         be inited before procedures.
11827
11828         * scm/output-ps.scm (glyph-string): break lines. 255 chars is max
11829         for EPS files.
11830
11831         * scm/define-markup-commands.scm (epsfile): add epsfile command.
11832
11833 2005-04-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11834
11835         * configure.in (gui_b): add check for ghostscript 8.15
11836
11837 2005-04-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11838
11839         * lily/hairpin.cc (after_line_breaking): suicide the hairpinlet at
11840         start of line. Fixes cresc-after-newline.ly
11841
11842         * lily/source-file.cc (file_line_column_string): use get_column().
11843
11844 2005-04-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11845
11846         * lily/source-file.cc (get_column): utf-8 support for column numbers.
11847
11848 2005-04-12  Jan Nieuwenhuizen  <janneke@gnu.org>
11849
11850         * lily/*: use message () iso progress_indication () for messages.
11851         Revise/uniformise user messages.
11852
11853         * flower/warn.cc (progress_indication): New function.
11854         (message): Use it.  Fixes newline problems.
11855
11856         * config.make.in (webdir): Sort out install dirs.
11857
11858         * stepmake/stepmake/generic-targets.make (final-install): Bugfix.
11859
11860         * python/lilylib.py (command_name): Bugfix.
11861         (make_ps_images):
11862
11863 2005-04-11  Pedro Kroger  <kroeger@pedrokroeger.net>
11864
11865         * lily/main.cc: --help says what types of backends are availabe
11866
11867 2005-04-11  Jan Nieuwenhuizen  <janneke@gnu.org>
11868
11869         Fix ./VERSION dependency, and without need to reconfigure.
11870
11871         * lily/main.cc (setup_paths): Update.
11872
11873         * stepmake/bin/make-version.py (defs): Add TOPLEVEL_VERSION define..
11874
11875         * config.hh.in (LILYPOND_DATADIR): Remove TOPLEVEL_VERSION.
11876
11877         * scripts/convert-ly.py (\markup): Fix too simplistic regexps.
11878         Add \line for some simplistic cases.
11879
11880         * lily/GNUmakefile (main.o): Add missing dependency on version.hh.
11881
11882 2005-04-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11883
11884         * elisp/lilypond-mode.el (LilyPond-lilypond-command): command used
11885         to compile LY files (useful for adding eg. "-I" args)
11886         (LilyPond-command-alist): use `LilyPond-lilypond-command'. Add a
11887         2Gnome command for gnome backend.
11888         (LilyPond-command-formatgnome): call the 2Gnome command. key
11889         binding: C-c C-g
11890
11891 2005-04-10  Jan Nieuwenhuizen  <janneke@gnu.org>
11892
11893         * Documentation/user/GNUmakefile (lilypond/index.html): Bugfix:
11894         depend on all PNG images.
11895
11896 2005-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
11897
11898         * GNUmakefile.in: Bugfix: also link .map files.
11899
11900 2005-04-09  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11901
11902         * scm/music-functions.scm (music->make-music): generate 
11903         a (make-music ...) sexpr from a music expression.
11904         (display-scheme-music): use guile pretty printer to display the
11905         make-music sexpr.
11906
11907 2005-04-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11908
11909         * ly/engraver-init.ly: reindent.
11910         Add CueVoice.
11911
11912         * scm/music-functions.scm (music-pretty-string): handle moments
11913         too.
11914         (music-pretty-string): only print non-empty lists.
11915         (cue-substitute): create CueVoice context, which has smaller type.
11916
11917         * lily/moment-scheme.cc (LY_DEFINE): new methods
11918         ly:moment-grace-{numerator,denominator}
11919
11920         * lily/context-handle.cc: remove quit() method. 
11921
11922         * lily/font-config.cc (init_fontconfig): be verbose about font path.
11923         (init_fontconfig): success is 0, not !0
11924
11925 2005-04-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11926
11927         * mf/feta-nummer-code.mf (code): add plus glyph.
11928
11929         * lily/tie.cc (print): idem.
11930
11931         * lily/slur.cc (print): don't use thickness property for
11932         slur shape-thickness.
11933
11934         * lily/stencil-scheme.cc (LY_DEFINE): don't reverse the order
11935         while adding stencils.
11936
11937         * scm/define-markup-commands.scm (with-color): with-color markup
11938         command.
11939         (whiteout): new markup command 
11940         (filled-box): new markup command
11941
11942 2005-04-07  Jan Nieuwenhuizen  <janneke@gnu.org>
11943
11944         * Documentation/topdocs/NEWS.tely (Top): Make tex-able.  Handy
11945         test for PDF docs.
11946
11947         * mf/GNUmakefile (lilypond.map): Add PFAEmmentaler,
11948         PFAAybabtu-Regular.  Fixes feta font in PDFs.
11949         
11950         Notes for tetex-3.0 make web:
11951            psclean.map: s/uhv8a/uhvr8a/
11952            config.ps add:
11953                 p +psfonts_t1.map
11954                 p +psclean.map
11955                 p +typeface.map
11956
11957 2005-04-06  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11958
11959         * scm/music-functions.scm (music-pretty-string): fix bug with
11960         string argument.
11961
11962 2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
11963
11964         * stepmake/bin/add-html-footer.py (i18n): Bugfix.
11965
11966 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11967
11968         * scripts/lilypond-book.py (Lilypond_snippet.__init__): 
11969         only process options if they're there.
11970         (write_file_map): add version-seen? to snippet-map.ly
11971
11972 2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
11973
11974         * scripts/lilypond-book.py (split_options): Bugfix.  Small code
11975         formatting cleanups.
11976
11977         * mf/GNUmakefile: Rewrite $addprefix, $addsuffix using % short-forms.
11978         Add PFAaybabtu.pfa dependency on aybabtu.subfonts.
11979
11980 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11981
11982         * scm/framework-ps.scm (ps-font-command): don't hash, just use
11983         name directly.
11984
11985         * lily/main.cc (setup_paths): either add mf/out to search path or 
11986         fonts/{otf,type1,etc}
11987         
11988         * lily/font-config.cc (init_fontconfig): either add mf/out to
11989         FontConfig or fonts/{otf,type1,etc}
11990
11991         * GNUmakefile.in: don't put mf/ link in share/ dir.
11992
11993         * lily/staff-spacing.cc: move same-direction-correction to
11994         note-spacing-interface
11995
11996         * scm/lily.scm (lilypond-main): use variable argument count for
11997         exception handler.
11998
11999         * lily/font-config.cc (init_fontconfig): add operator pacification
12000         message.
12001
12002         * mf/aybabtu.pe.in (i): generate PFAAybabtu.pfa
12003
12004         * buildscripts/gen-emmentaler-scripts.py (i): generate
12005         PFAEmmentaler as well.
12006
12007         * scm/framework-ps.scm (munge-lily-font-name): new function
12008         (write-preamble): hack: insert PFA equivalent of CFF into
12009         .PS. This makes LilyPond output printable on normal PS printers
12010         again.
12011
12012         * buildscripts/gen-emmentaler-scripts.py (i): generate
12013         PFAEmmentaler.pfa aswell.
12014
12015 2005-04-06  John Williams <williams@tni.com>  
12016         
12017         * scripts/lilypond-book.py: refactor the compose_ly procedure.
12018         
12019 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12020
12021         * scm/page-layout.scm (default-page-make-stencil): always combine
12022         the header stencil, even if empty. This prevents the body text to
12023         reach up to the margins.
12024
12025         * po/rw.po (Module): new file, for Kinyarwanda.
12026
12027         * input/test/spacing-optical.ly (Module): new file.
12028
12029         * lily/staff-spacing.cc: add same-direction-correction
12030
12031 2005-04-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12032
12033         * Documentation/user/introduction.itely (Engraving): Comment-out
12034         non-existent file.
12035
12036 2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12037
12038         * scm/define-grob-properties.scm (all-user-grob-properties): add
12039         same-direction-correction
12040
12041         * VERSION: release 2.5.18
12042
12043 2005-04-05  Jan Nieuwenhuizen  <janneke@gnu.org>
12044
12045         * lily/grob.cc (mark_smob): Check pscore->layout_ before
12046         dereferencing.  Fixes make web.
12047
12048         * lily/midi-stream.cc: Handle unwritable midi file.  Include
12049         errno.h.
12050
12051         * Documentation/user/: Fix links.
12052
12053 2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12054
12055         * lily/text-interface.cc (Module): rename from text-item.cc
12056
12057         * input/regression/apply-output.ly (texidoc): function naming fix.
12058
12059         * lily/time-signature-performer.cc (derived_mark): new function.
12060
12061         * lily/lily-parser-scheme.cc:  print mapped file name for progress
12062
12063         * scripts/lilypond-book.py (find_linestarts): new function.
12064         (find_toplevel_snippets): keep track of line numbers.
12065
12066         * lily/key-performer.cc (try_music): remove FIXME warning, gobble
12067         all key changes.
12068
12069         * ly/declarations-init.ly (partCombineListener): use
12070         ignoreBarChecks. Fixes: warn-partcombine-barcheck.ly
12071
12072         * lily/bar-check-iterator.cc (process): ignoreBarChecks property.
12073
12074 2005-04-04  Jan Nieuwenhuizen  <janneke@gnu.org>
12075
12076         * lily/text-item.cc: Fix link.
12077
12078         * Documentation/user/changing-defaults.itely (Changing defaults):
12079         Fix programs reference links.
12080
12081         * Documentation/user/music-glossary.tely: Convert to utf-8.
12082
12083 2005-04-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12084
12085         * make/lilypond-vars.make: remove TEXMF from variables.
12086         remove DEB_BUILD pk font variables.
12087         remove GUILE_LOAD_PATH
12088         remove TeX memory vars.
12089
12090 2005-04-04  Werner Lemberg  <wl@gnu.org>
12091
12092         * lilypond/scm-option.cc (ly_option_usage): Add final newline.
12093
12094 2005-04-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12095
12096         * ps/lilyponddefs.ps: remove reencode-font
12097
12098         * lily/simple-spacer.cc (add_columns): also compare
12099         directly. Column rank doesn't distinguish between broken and
12100         unbroken columns. This fixes large spaces before time sig changes.
12101
12102         * Documentation/user/point-and-click.itely: document ly:set-option.
12103
12104         * lily/grob.cc (get_uncached_stencil): only set grob-cause if
12105         point_and_click_global is set.
12106
12107         * lily/scm-option.cc (LY_DEFINE): add point-and-click
12108         ly:set-option argument.
12109
12110 2005-04-03  Jan Nieuwenhuizen  <janneke@gnu.org>
12111
12112         * GNUmakefile.in: Include symlinks in webball.
12113
12114         * Documentation/user/GNUmakefile (source-links): Add symlinks to
12115         source dir for split and non-split manuals.
12116
12117         * Documentation/user/*y: Fix @uref/@inputfile links for
12118         split/non-split HTML documents.
12119
12120         * Documentation/user/GNUmakefile (local-WWW): Do not generate
12121         .ps.gz.
12122         
12123 2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
12124
12125         * GNUmakefile.in: Add newline.
12126
12127 2005-04-01  Erlend Aasland  <erlenda@gmail.com>
12128
12129         * tex/lilyponddefs.tex: use color instead of xcolor
12130         * scm/output-tex.scm: minor editing
12131
12132 2005-04-02  Nicolas Sceaux  <nicolas.sceaux@free.fr>
12133
12134         * scm/music-functions.scm (display-scheme-music): pretty printer
12135         for music expressions.
12136
12137 2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
12138
12139         * buildscripts/install-info-html.sh (index_file): Fix link.
12140
12141 2005-04-01  Jan Nieuwenhuizen  <janneke@gnu.org>
12142
12143         * input/test/dynamic-extra.ly (piuf): Use utf-8 iso TeX accent.
12144
12145         * Documentation/index.html.in: Add size estimates with some big pages.
12146
12147         * Documentation/user/tutorial.itely (Running LilyPond for the
12148         first time): Add/replace some @rglos links.  TODO: add more
12149         @rglos links in tutorial, test non-intrusiveness (.css).
12150
12151         * stepmake/bin/add-html-footer.py (do_file): Remove info's
12152         annoying's indication of referencing external document.
12153
12154         * Documentation/user/GNUmakefile: Split version of glossary too.
12155         * Documentation/user/macros.itexi (@rglos): Have makeinfo produce
12156         links, not only for html.
12157
12158         * Documentation/user/introduction.itely: Fix some links for other
12159         than html, do not use `here' as link name.
12160
12161 2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
12162
12163         * scm/documentation-generate.scm (string-append): Fix @usermanref,
12164         @glossaryref.
12165
12166 2005-03-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12167
12168         * scm/page-layout.scm (default-page-make-stencil): only add header
12169         if existing and not empty. Fixes spurious programming error.
12170
12171         * lily/span-bar.cc (print): don't make rounded edges for spanbars.
12172
12173 2005-03-31  Erlend Aasland  <erlenda@gmail.com>
12174
12175         * scm/output-tex.scm: implement {re,}setcolor
12176         * tex/lilyponddefs.tex: use color package
12177
12178 2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
12179
12180         * GNUmakefile.in (local-WWW-post): Restore .htaccess and .html
12181         additions to website.
12182
12183         * Documentation/user/lilypond.tely: Remove reference to ps.gz.
12184
12185         * Documentation/user/macros.itexi: Fix @usermanref html links in
12186         split documents: use @inforef.
12187
12188 2005-03-30  Graham Percival  <gperlist@shaw.ca>
12189
12190         * Documentation/user/programming-interface.itely: minor fix.
12191
12192         * Documentation/user/advanced-notation.itely: added info to
12193         Metronome markings.
12194
12195 2005-03-30  Jan Nieuwenhuizen  <janneke@gnu.org>
12196
12197         * scm/output-lib.scm (make-stencil-boxer): Junk code duplication,
12198         use box-stencil.  Remove y-padding argument.
12199         (make-stencil-circler): New function.
12200
12201         * buildscripts/lilypond-words.py (F): 
12202         * elisp/SConscript (a): 
12203         * elisp/GNUmakefile (LILYPOND_WORDS_DEPENDS):
12204         * vim/SConscript (a): 
12205         * vim/GNUmakefile (LILYPOND_WORDS_DEPENDS): Update.
12206
12207         * lily/general-scheme.cc: Build fix.
12208
12209         * scm/markup.scm:
12210         * input/regression/markup-scheme.ly: 
12211         * input/regression/markup-syntax.ly: Drop 'new-' from name.
12212
12213         * scm/stencil.scm (make-circle-stencil): New function.
12214
12215         * scm/define-markup-commands.scm (draw-circle): Use it.  New
12216         name (was cicle).  Update callers.
12217         (circle): New markup command, similar to box.
12218
12219         * scm/stencil.scm (circle-stencil): New function.
12220
12221 2005-03-29  David Jedlinsky  <lilypond@ipnh.com>
12222
12223         * configure.in: Detect libutf8/wchar.h variant.
12224
12225         * stepmake/aclocal.m4: Modify shared size test.
12226
12227 2005-03-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12228
12229         * make/lilypond.fedora.spec.in (Group): remove texmf profile stuff.
12230
12231 2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12232
12233         * scripts/convert-ly.py (conv): add stencil-aligned-to! rule.
12234         
12235         * VERSION (PACKAGE_NAME):  release 2.5.17
12236
12237 2005-03-29  Jan Nieuwenhuizen  <janneke@gnu.org>
12238
12239         * scm/backend-library.scm (postscript->png): Fix comment and png
12240         message.
12241
12242         * GNUmakefile.in (link-tree): Fix locales.
12243
12244 2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12245
12246         * lily/stencil-scheme.cc (LY_DEFINE): change to
12247         ly:stencil-aligned-to, non mutating.
12248
12249         * scm/safe-lily.scm (lambda): remove ly:stencil-set-extent!
12250
12251         * lily/stencil-scheme.cc: remove ly:stencil-set-extent!
12252
12253         * lily/quote-iterator.cc (derived_mark): call
12254         Music_wrapper_iterator::derived_mark() too.
12255
12256         * lily/grace-engraver.cc (derived_mark): change signature, add
12257         const.
12258
12259 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12260
12261         * SConstruct (symlink): 
12262         * GNUmakefile.in (link-tree): Add scripts to prefix.
12263
12264         * lily/general-scheme.cc (ly:effective-prefix): New function.
12265
12266         * scm/backend-library.scm (postscript->png): Use it.
12267
12268 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12269
12270         * lily/paper-score.cc (process): don't delete grobs after
12271         producing stencils. 
12272
12273         * scm/part-combiner.scm (determine-split-list): switch off
12274         debugging info.
12275
12276         * scm/backend-library.scm (postscript->png): explicitly use ps2png.py
12277         if available.
12278
12279         * scm/define-context-properties.scm
12280         (all-user-translation-properties): add stringNumberOrientations.
12281
12282         * lily/new-fingering-engraver.cc (position_scripts): make generic,
12283         so fingering and string-numbers are separately controlled.
12284
12285 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12286
12287         * stepmake/aclocal.m4: Fix shared size test: add missing comma, do
12288         not use debugging.
12289
12290 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12291
12292         * GNUmakefile.in (local-WWW-post): remove UTF8 .htaccess.
12293
12294         * config.hh.in: add HAVE_FONTCONFIG.
12295
12296         * Documentation/user/instrument-notation.itely (String number
12297         indications): new node.
12298
12299         * input/regression/new-markup-syntax.ly (texidoc): add circle.
12300
12301         * lily/new-fingering-engraver.cc (add_string): new function. 
12302         (acknowledge_grob): accept string-number-event as well.
12303
12304         * scm/define-markup-commands.scm (circle): new markup command.
12305
12306         * scm/output-lib.scm (print-circled-text-callback): new function.
12307
12308         * lily/GNUmakefile: move ifeq after include stepmake.make.
12309
12310 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12311
12312         * config.make.in (HAVE_LIBKPATHSEA_SO):
12313         * stepmake/aclocal.m4: Also subst HAVE_LIBKPATHSEA_SO.
12314
12315         * lily/GNUmakefile (MODULE_LDFLAGS): Only if not HAVE_KPATHSEA_SO,
12316         add KPATHSEA_LIBS.
12317
12318         * debian/watch: 
12319         * debian/control: Update.
12320
12321 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12322
12323         * input/test/title-markup.ly (spaceTest): remove.
12324
12325         * input/test/embedded-tex.ly (Module): remove.
12326
12327         * input/test/music-box.ly: use 'name property, not ly:music-name.
12328
12329         * lily/GNUmakefile (MODULE_LDFLAGS): add KPATHSEA_LIBS.
12330
12331         * stepmake/aclocal.m4: STEPMAKE_FONTCONFIG: add.
12332
12333 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12334
12335         * Documentation/topdocs/INSTALL.texi (Top): Remove information
12336         about xdeltas.  Add information about CVS.
12337
12338         * scm/lily.scm (lilypond-main): Fix invocation of handler,
12339         gracefully handle failed files.
12340
12341         * lily/GNUmakefile (MODULE_LDFLAGS): Remove KPATHSEA_LIBS.
12342
12343         * Documentation/topdocs/INSTALL.texi (Top): Whitespace and other
12344         small fixes.
12345
12346         * scm/framework-tex.scm (convert-to-ps): Proper option spacing.
12347         No unnecessarily specific i18n messages.  Remove stray `1'.
12348
12349 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12350
12351         * buildscripts/lys-to-tely.py (strip_extension): add utf-8
12352         documentencoding
12353
12354         * scm/documentation-lib.scm (texi-file-head): set utf-8
12355         documentencoding.
12356
12357         * ly/chord-modifiers-init.ly (whiteTriangleMarkup): use the greek
12358         Delta, not the Symbol one. 
12359
12360         * mf/GNUmakefile ($(outdir)/lilypond.map): add -Regular to Aybabtu
12361         for the .map file.
12362
12363         * Documentation/topdocs/INSTALL.texi (Top): add running
12364         requirement as compilation requirement.
12365
12366 2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12367
12368         * buildscripts/mutopia-index.py (headertext): add h1 header and
12369         utf-8 charset meta field.
12370
12371         * input/GNUmakefile: prune example list.
12372
12373         * scm/framework-tex.scm (convert-to-ps): add -ofoo.ps to dvips
12374         options.
12375
12376         * lily/slur-scoring.cc (get_base_attachments): only look at stem
12377         extent for visible stems.
12378
12379         * lily/grob.cc (mark_smob): mark \layout block from Grob::mark_smob().
12380
12381 2005-03-27  Jan Nieuwenhuizen  <janneke@gnu.org>
12382
12383         * Documentation/topdocs/INSTALL.texi (Top): Updates.
12384
12385         * scripts/convert-ly.py: Python 2.2 compatibility (thanks Mats).
12386
12387 2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12388
12389         * lily/slur-scoring.cc (get_base_attachments): robustness. Don't
12390         pass inf/nan into slur scoring.
12391
12392         * ly/titling-init.ly (oddHeaderMarkup): don't show page no. on 1st
12393         page.
12394
12395         * scripts/abc2ly.py (dump_voices): use alphabet().
12396
12397 2005-03-27  Jeff Smith <whydoubt@yahoo.com>
12398         
12399         * mf/GNUmakefile (depth): use $(FONTFORGE). 
12400
12401 2005-03-27 Matthias Neeracher <neeracher@mac.com>
12402         
12403         * flower/include/virtual-methods.hh: simplify. Patch by
12404
12405 2005-03-25  John Williams <williams@tni.com>  
12406
12407         * scripts/lilypond-book.py (main): add png for HTML too, guess
12408         only if necessary. 
12409
12410 2005-03-25  Graham Percival  <gperlist@shaw.ca>
12411
12412         * Documentation/topdocs/INSTALL.texi: now recommends
12413         lexer-gcc-3.1.sh for gcc 3.1.1 or higher.
12414
12415         * Documentation/user/basic-notation.itely,
12416         Documentation/user/tutoria.itely: warn about
12417         only one (phrasing) slur at once.
12418
12419 2005-03-24  Pedro Kroger  <kroeger@pedrokroeger.net>
12420
12421         * ly/music-functions-init.ly (removeWithTag): fixed to return "music".
12422
12423 2005-03-23  Graham Percival  <gperlist@shaw.ca>
12424
12425         * Documentation/user/basic-notation.itely: fixed info about
12426         ending a (de)cresc.
12427
12428         * Documentation/user/lilypond-book.itely: fixed
12429         lilypond-book filter example and warned about not doing
12430         --filter and --process at the same time.
12431
12432 2005-03-23  Mats Bengtsson  <mabe@s3.kth.se>
12433
12434         * lily/parser.yy (bass_number),
12435         Documentation/user/instrument-notation.itely (Figured bass): 
12436         Add the possibility to use text markup in figured bass. 
12437
12438 2005-03-19  Graham Percival  <gperlist@shaw.ca>
12439
12440         * Documentation/user/global.itely: added info about naming
12441         identifiers and breakbefore.
12442
12443         * Documentation/user/invoking.itely: added info about batch
12444         processing files with convert-ly, removed references to TeX
12445         in the jail section.
12446
12447         * Documentation/user/examples.itely: possibly fixed piano
12448         dynamics.
12449
12450         * Documentation/user/advanced-notation.itely: added info
12451         about removing other types of Staff.
12452
12453         * Documentation/user/instrument-notation.itely: possibly
12454         fixed piano staff line switch.
12455
12456         * Documentation/user/changing-defaults.itely: added info
12457         about using normal font in titles.
12458
12459 2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12460
12461         * VERSION (PATCH_LEVEL): release 2.5.16
12462
12463         * make/ly-vars.make (DVIPS_FLAGS): include lilypond.map path
12464         explicitly.
12465
12466 2005-03-18  Jan Nieuwenhuizen  <janneke@gnu.org>
12467
12468         * scm/framework-tex.scm (convert-to-dvi): Barf if NAME contains
12469         whitespace.
12470
12471         * python/lilylib.py (make_ps_images):
12472         * scm/backend-library.scm (postscript->pdf, postscript->png):
12473         Quote file name.  Use format rather than string-append juggling.
12474
12475 2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12476
12477         * python/lilylib.py (make_ps_images): add x to -g argument. 
12478
12479         * lily/key-performer.cc (create_audio_elements): don't use
12480         scm_eval_string. Check for minor 3rd directly.
12481   
12482         * input/mutopia/J.S.Bach/baerenreiter-sarabande.ly
12483         (sarabandeCelloGlobal): key is D minor, not F major.
12484
12485 2005-03-17  Jan Nieuwenhuizen  <janneke@gnu.org>
12486
12487         Fix truncated --png output (Peter Danenberg).
12488         
12489         * python/lilylib.py (make_ps_images):
12490         * scripts/ps2png.py (copyright): Grok --papersize option.
12491
12492         * scm/backend-library.scm (postscript->png): Add parameter
12493         PAPERSIZE.  Update callers.
12494
12495         * scm/output-gnome.scm (music-font?): Bugfix: use "Emmentaler".
12496         Fixes symbol placement.
12497
12498         * lily/spanner.cc: 
12499         * lily/stencil.cc: Use "libc-extension.hh" (WAS:
12500         <libc-extension.hh>).
12501
12502 2005-03-16  Jan Nieuwenhuizen  <janneke@gnu.org>
12503
12504         * Nitpick run.
12505
12506         * buildscripts/fixcc.py: Update.
12507
12508         Builddir run fixes.
12509
12510         * HACKING (datadir): Add VERSION.
12511
12512         * GNUmakefile.in (linktree): Bugfix: outconfdirs are one dir
12513         higher up.
12514
12515 2005-03-15  Werner Lemberg  <wl@gnu.org>
12516
12517         * mf/feta-klef.mf (draw_gclef): Move z10' slightly so that the
12518         diagonal stem doesn't become thinner.
12519
12520 2005-03-15  Jan Nieuwenhuizen  <janneke@gnu.org>
12521
12522         * buildscripts/fixcc.py: Fixes (Werner).
12523
12524 2005-03-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12525
12526         * mf/GNUmakefile ($(outdir)/lilypond.map): capitalize
12527         Emmentaler/Aybabtu.
12528
12529         * GNUmakefile.in: fix lilypond-words path.
12530
12531         * po/tr.po: update to 2.3.21
12532
12533         * lily/new-fingering-engraver.cc (position_scripts): take priority
12534         from head position.
12535
12536         * input/regression/finger-chords-order.ly (texidoc): new file.
12537
12538 2005-03-14  Jan Nieuwenhuizen  <janneke@gnu.org>
12539
12540         * make/ly-rules.make: 
12541         * stepmake/aclocal.m4: 
12542         * Documentation/user/GNUmakefile: Remove old makeinfo compatibility.
12543
12544         * buildscripts/fixcc.py (rules): Leave space after operator.
12545
12546 2005-03-14  Werner Lemberg  <wl@gnu.org>
12547
12548         * mf/feta-klef.mf (draw_gclef): Replace `simple_serif' for
12549         top of the glyph with smooth curve.
12550
12551 2005-03-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12552
12553         * Documentation/user/global.itely (Page layout): remove
12554         printpagenumber.
12555
12556 2005-03-13  Jürgen Reuter  <reuter@ipd.uka.de>
12557
12558         * input/regression/mensural-ligatures.ly: new file (with examples
12559         compiled by Pal Benko).
12560
12561         * Documentation/user/instrument-notation.itely: Bugfix: yet some
12562         other "custodes.*-u0" -> "custodes.*.u0" renaming victims in
12563         musicglyph access.  Many small beautifications in ancient
12564         examples.
12565
12566         * input/test/divisiones.ly: fixed indentation; small
12567         beautifications
12568
12569         * ly/engraver-init.ly: added FIXME comment
12570
12571         * scripts/lilypond-book.py,
12572         Documentation/user/lilypond-book.itely: added music fragment
12573         option "packed" to lilypond-book
12574
12575         * Documentation/user/instrument-notation.itely: Bugfix: added
12576         missing LedgerLineSpanner color setting in several places.  Added
12577         music fragment option "packed" to VaticanaContext example.
12578
12579 2005-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12580
12581         * scm/define-grobs.scm (all-grob-descriptions): switch off
12582         Hyphen_spanner::set_spacing_rods 
12583
12584         * lily/lyric-hyphen.cc (print): add padding between syllable and
12585         hyphen.
12586         (print): shorten hyphen in tight situations (determine using
12587         minimum-length)
12588
12589         * scm/paper.scm (layout-set-staff-size): increase blotdiameter to
12590         0.4pt.
12591
12592 2005-03-13  Jan Nieuwenhuizen  <janneke@gnu.org>
12593
12594         * ly/titling-init.ly (bookTitleMarkup): Refinements.
12595
12596         * input/regression/page-breaks.ly (paper): Set not raggedlastbottom,
12597         header/footer markings for regression-test.
12598
12599         * scm/backend-library.scm (output-scopes, header-to-file): Move
12600         from framework-tex.scm.
12601
12602         * scm/framework-ps.scm (output-framework)
12603         (output-preview-framework):
12604         * scm/framework-eps.scm (output-classic-framework)
12605         (output-framework): Use it.  Fixes collated files.
12606
12607 2005-03-12  Jan Nieuwenhuizen  <janneke@gnu.org>
12608
12609         * input/sakura-sakura.ly: 
12610         * input/xiao-haizi-guai-guai.ly: Add from Debian package (Anthony).
12611
12612         * buildscripts/guile-gnome.sh: Update.
12613
12614         * mf/GNUmakefile (aybabtu.otf): Add dependency on .pe.
12615
12616         * mf/aybabtu.pe.in: Capitalize Aybabtu.
12617
12618 2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12619
12620         * lily/separating-group-spanner.cc (find_rods): oops. Fix the real
12621         culprit: always exit the loop if we find a rod, even if it has
12622         distance < 0. 
12623
12624         * lily/ledger-line-spanner.cc (set_spacing_rods): rewrite to O(n)
12625         algorithm.
12626
12627         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
12628         $(outdir)/%.svg $(outdir)/%.pfa): add --simplify.
12629
12630         * scm/output-svg.scm (dashed-line): new  function body.
12631         
12632         * GNUmakefile.in: create .htaccess.
12633
12634 2005-03-11  Jan Nieuwenhuizen  <janneke@gnu.org>
12635
12636         * Documentation/topdocs/NEWS.tely (Top): Fix text example.
12637
12638 2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12639
12640         * VERSION (PACKAGE_NAME): release 2.5.15
12641
12642         * scm/output-{pdf,pdftex,sketch}.scm (Module): remove bitrotted files.
12643
12644         * scm/framework-svg.scm (output-framework): put scaling in
12645         document header. Apply scaling only once.
12646         (output-framework): dump page size in px, not mm. 
12647
12648         * scm/lily-library.scm (modified-font-metric-font-scaling): rename
12649         from font-size.
12650
12651         * lily/paper-outputter-scheme.cc (LY_DEFINE):
12652         ly:outputter-output-scheme, new function.
12653
12654         * scm/output-svg.scm (pango-description-to-svg-font): new function
12655
12656 2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12657
12658         * Documentation/user/GNUmakefile (deep-symlinks): remove outimages
12659         target.
12660
12661         * input/typography-demo.ly: new file.
12662
12663 2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
12664
12665         * Documentation/user/global.itely (File structure): Add markup blocks
12666         to toplevel expressions.
12667         (Multiple movements, Creating titles): Add markup blocks.
12668
12669         * lily/stencil-scheme.cc: Use "libc-extension.hh" (WAS:
12670         <libc-extension.hh>).
12671
12672         * lily/accidental.cc (accurate_boxes): Compile fix: 1.51 was broken.
12673
12674         * flower
12675         * lily
12676         * kpath-guile: Nitpick run: buildscripts/fixcc.py.
12677
12678 2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12679
12680         * lily/accidental.cc: special bboxes for natural. 
12681
12682         * mf/feta-toevallig.mf: make stems heavier.
12683
12684         * lily/dynamic-text-spanner.cc (print): add bound padding for edge
12685         texts as well.
12686
12687         * mf/feta-klef.mf: revise. 
12688
12689         * mf/feta-schrift.mf: make thinning of accent less pronounced.
12690
12691         * mf/feta-klef.mf: add rounded curve at top. 
12692         make thinnib a little heavier.
12693
12694 2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
12695
12696         * lily/parser.yy (book_body): Oops, allow \markup in \book too.
12697
12698         * buildscripts/fixcc.py: New file.
12699
12700         * input/regression/utf8.ly: Update Debian font description.
12701
12702 2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
12703
12704         * stepmake/aclocal.m4: Fix test.
12705
12706 2005-03-09  Graham Percival  <gperlist@shaw.ca>
12707
12708         * Documentation/user/invoking.itely: added Sebastino Vigna's
12709         docs for the --jail option.
12710
12711 2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12712
12713         * lily/stem.cc (print): only produce stemlets if there are no
12714         noteheads on this stem.
12715
12716         * lily/note-spacing.cc (stem_dir_correction): robustness fix:
12717         don't crash on stemlet (visible stem without heads).
12718
12719         * scm/define-grobs.scm (all-grob-descriptions): junk LeftEdge for
12720         unbroken situations. 
12721
12722         * scm/output-lib.scm (center-invisible): new function.
12723
12724         * lily/spacing-loose-columns.cc (set_loose_columns): use spacing
12725         wishes to determine loose column space.
12726
12727         * lily/font-config.cc (init_fontconfig): add
12728         fonts/{otf,type1,cff}  to path.
12729
12730         * lily/main.cc (setup_paths): add fonts/{otf,svg,tfm,cff} to path
12731
12732         * mf/GNUmakefile (Module): install all fonts under otf/
12733
12734         * scm/framework-ps.scm (Module): read fonts from fonts/extension,
12735         replace /fonts/otf/ by /ps/ 
12736
12737         
12738 2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
12739
12740         * lily/paper-book.cc (classic_output): Reinstate header_0_ hack.
12741
12742         * lily/book.cc (process): Oops, add score_.header_.
12743
12744         * lily/paper-book.cc: Fold hearders, score and texts into scores_.
12745
12746         * lily/parser.yy: Handle toplevel and book texts as score.
12747
12748         * scm/page-layout.scm (default-page-make-stencil):
12749         Bugfix: (page-properties rename.
12750
12751         * scm/backend-library.scm (ly:system): Typo.
12752
12753 2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12754
12755         * stepmake/stepmake/executable-targets.make (installexe): don't
12756         strip installed executables
12757
12758         * lily/font-select.cc (get_font_by_design_size): revert
12759         pango_description_string as well.
12760
12761         * lily/system.cc (set_loose_columns): put loose column just left
12762         of next column.
12763
12764         * lily/include/group-interface.hh (extract_grob_array): rename
12765         from Pointer_group_interface__extract_grobs
12766
12767         * input/regression/ledger-line-minimum.ly (texidoc): new file.
12768
12769         * lily/ledger-line-spanner.cc (set_spacing_rods): new
12770         function. Keep ledgered note heads at a minimum distance.
12771         Introduce minimum-length-fraction
12772         (print): introduce length-fraction property.
12773
12774 2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12775
12776         * tex/GNUmakefile: remove latin1.enc rules.
12777
12778 2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
12779
12780         * scm/titling.scm: Typo.
12781
12782         * input/regression/score-text.ly: Really add.
12783
12784         * lily/score.cc: Bugfixes for SCM header_ and texts_ members.
12785
12786 2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12787
12788         * lily/open-type-font-scheme.cc:  new file.
12789
12790 2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
12791
12792         * scm/titling.scm (layout-extract-page-properties): Rename from
12793         page-properties.  Update callers.
12794
12795         * lily/lexer.ll (Lily_lexer):
12796         * lily/parser.yy: Junk lyric_markup state.
12797
12798         * Documentation/topdocs/NEWS.tely (Top): Mention markup text feature.
12799
12800         * scripts/lilypond-book.py (PREAMBLE_LY): toplevel-music-handler:
12801         Add texts parameter.
12802
12803 2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
12804
12805         * lily/lexer.ll (lyric_markup): New mode.
12806         (Lily_lexer::push_lyric_markup_state): New method.
12807         (MARKUPCOMMAND): Markup during lyric mode returns LYRIC_MARKUP.
12808
12809         * lily/parser.yy (book_body):
12810         (toplevel_expression): Grok \markup texts.
12811
12812         * lily/score-scheme.cc (ly:music-scorify): 
12813         * scm/lily-library.scm (collect-music-for-book): Take texts
12814         parameter.
12815
12816         * lily/score.cc (texts_): New member.
12817
12818         * lily/paper-book.cc (systems): Format score texts.
12819
12820         * score-text.ly: New file.
12821
12822         * ttftool/SConscript:
12823         * kpath-guile/SConscript: New file.
12824
12825         * lily/SConscript:
12826         * SConstruct: Update.
12827
12828 2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12829
12830         * VERSION (PACKAGE_NAME): release 2.5.14
12831
12832 2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
12833
12834         * lily/main.cc: Add dummy xgettext markers.
12835
12836 2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12837
12838         * make/lilypond.fedora.spec.in (Requires): scrap kpathsea/tex
12839         requirements
12840
12841         * stepmake/aclocal.m4: check dynamic link, by checking if kpathsea
12842         executable is < 40k
12843
12844         * lily/main.cc (setup_paths): remove tfm1 tfm2 tfm3 include path
12845         hack.
12846
12847 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12848
12849         * flower/libc-extension.cc:
12850         * flower/include/libc-extension.hh: [Open]BSD simply cast
12851         cookie/funopen declarations.
12852
12853         * stepmake/aclocal.m4: Check for libkpathsea.so.
12854
12855         * kpath-guile/kpath.c (ly_kpathsea_expand_variable): Use
12856         dl_kpse_find_file.
12857
12858 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12859
12860         * kpath-guile/kpath.c (open_library): dlopen libkpathsea.so
12861         (open_library): alternative for static library.
12862
12863 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12864
12865         * configure.in: Set TTFTOOL_ENDIAN iso global CFLAGS.
12866
12867         * ttftool/GNUmakefile (MODULE_CFLAGS): Add $(TTFTOOL_ENDIAN).
12868
12869         Drop run-time dependency on teTeX.
12870
12871         * lily/kpath.cc (initialize_kpathsea): dlopen libkpathsea.
12872
12873         * stepmake/aclocal.m4 (STEPMAKE_KPATHSEA): Do not include
12874         KPATHSEA_LIBS in LIBS.
12875         (STEPMAKE_DLOPEN): New function.
12876
12877         * lily/font-config.cc (init_fontconfig): Use dir for directory,
12878         not path.
12879
12880         * flower/file-path.cc (directories): Rename from paths, as this
12881         return an array of directories (a single path).
12882
12883 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12884
12885         * lily/GNUmakefile (MODULE_LIBS): link with kpath-guile
12886
12887         * lily/all-font-metrics.cc (kpathsea_find_file): wrapper around
12888         new ly:kpathsea-find-file
12889
12890         * kpath-guile/kpath.c: new file. Put kpath bindings in lib.
12891
12892         * kpath-guile/GNUmakefile: new file
12893
12894         * buildscripts/gen-emmentaler-scripts.py (i): generate
12895         emmentaler-X.fontname as well.
12896
12897         * buildscripts/ps-embed-cff.py: new script
12898
12899         * scm/lily-library.scm: remove ps-embed-cff.
12900
12901         * scm/framework-ps.scm (write-preamble): don't use kpathsea for
12902         font loading. 
12903
12904         * scm/font.scm (add-music-fonts): load dynamics/numbers through
12905         fontconfig as well.
12906
12907         * lily/font-config.cc (init_fontconfig): add cff/ too.
12908
12909         * ly/generate-embedded-cff.ly: capitalize.
12910
12911         * lily/pango-select.cc (select_pango_font): use ::find_pango_font,
12912         so as to register the pango font.
12913
12914         * lily/font-config.cc (init_fontconfig): add
12915         prefix/{otf,type1,mf/out} to fontconfig path.
12916
12917         * lily/main.cc: only look at one prefix directory, LILYPONDPREFIX
12918         overrides all. 
12919
12920         * configure.in (gui_b): remove ec mftrace check
12921
12922         * config.hh.in: use lilypond-Major.Minor as data directory.
12923
12924         * scm/framework-ps.scm (dump-page): use output-units for landscape.
12925
12926         * buildscripts/gen-emmentaler-scripts.py (i): lower case file
12927         name.
12928
12929 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12930
12931         * lily/main.cc (do_chroot_jail): Small cleanups.  Avoid constant
12932         error messages.
12933
12934         * flower/libc-extension.cc:
12935         * flower/include/libc-extension.hh: [Open]BSD fixes for
12936         cookie/funopen declarations.
12937
12938 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12939
12940         * buildscripts/gen-emmentaler-scripts.py (outdir): capitalize
12941         emmentaler.
12942
12943         * lily/score-engraver.cc (initialize): remove check for ecrm10 /
12944         lcrm10.
12945
12946         * scm/define-markup-commands.scm (fontsize): new markup
12947         command. Also set baseline-skip
12948
12949 2005-03-06 Sebastiano Vigna <vigna@dsi.unimi.it>.
12950         
12951         * lily/main.cc (do_chroot_jail): paranoia security for webserver
12952         use.
12953
12954 2005-03-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12955
12956         * stepmake/bin/add-html-footer.py (do_file): make wiki link optional.
12957
12958         * lily/pdf.cc: remove PDF related files
12959
12960 2005-03-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12961
12962         * ly/deutsch.ly: add quarter tones, patch by Arno Waschk.
12963         <hamamatsu@gmx.de>
12964
12965 2005-03-05  Graham Percival  <gperlist@shaw.ca>
12966
12967         * Documentation/user/advanced-notation.itely: first draft
12968         of reorg done.
12969
12970         * Documentation/user/global.itely: fixed (sub)section
12971         bits of MIDI.
12972
12973 2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
12974
12975         * cygwin/mknetrel (extras): Bufix (Bertalan).
12976
12977         * Documentation/user/basic-notation.itely (Chords): @ref fix.
12978         * Documentation/user/instrument-notation.itely (Introducing chord
12979         names): Compile fix: must have unique name.
12980
12981 2005-03-02  Graham Percival  <gperlist@shaw.ca>
12982
12983         * Documentation/user/instrument-notation.itely: reorg.
12984
12985 2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
12986
12987         * scm/output-gnome.scm:
12988         * scm/output-svg.scm: Fix font scaling.
12989
12990 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
12991
12992         * ly/titling-init.ly (tagline): Use Engraving.  Add comment about
12993         what link to use best.
12994
12995         * Documentation/user/instrument-notation.itely (Ancient accidentals): 
12996         * Documentation/user/tutorial.itely (Automatic and manual beams):
12997         Fix @ref.
12998
12999         * lily/tweak-registration.cc (replace_grob_tweak): New function.
13000         * lily/tweak-registration-scheme.cc (LY_DEFINE): Wrap it.
13001         * scm/framework-gnome.scm (tweak): Use it.
13002
13003 2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13004
13005         * Documentation/topdocs/NEWS.tely (Top): elucidate GS problem.
13006
13007         * scm/output-ps.scm (white-text): reinstate white-text
13008
13009 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13010
13011         * scm/output-ps.scm (offset-add): Remove.
13012
13013         * scm/lily-library.scm (offset-flip-y): New function.
13014         * scm/framework-gnome.scm (tweak): Use it.
13015
13016         * scm/output-gnome.scm (grob-cause): Add parameter.
13017
13018         * scm/lily.scm (ly:all-stencil-expressions): Add url-link.
13019         * scm/output-ps.scm (url-link): Move.
13020         (white-text): Warn user about brokenness.
13021
13022         * Documentation/topdocs/NEWS.tely: Be more accurate and respectful
13023         wrt ghostscript.
13024
13025 2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13026
13027         * lily/slash-repeat-engraver.cc (try_music): always make slashes
13028         if body length smaller than measure length.
13029
13030         * scm/define-markup-commands.scm (with-url): oops. use Y extent
13031         for Y.
13032
13033         * ly/titling-init.ly (tagline): put default tagline in \paper
13034
13035 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13036
13037         * lily/kpath.cc: 
13038         * lily/pdf.cc (Pdf_file): Use more generic error messages.
13039
13040         * scm/lily-library.scm (version-not-seen-message): New function.
13041         * ly/init.ly: Use it.
13042
13043         * scm/page-layout.scm (ly:optimal-page-breaks): Display page
13044         breaks as progess.
13045
13046         * scripts/lilypond-book.py (do_process_cmd): Do not lump
13047         whitespace with l10n message.
13048
13049         * scm/framework-tex.scm (convert-to-ps):
13050         (convert-to-dvi): Do not use overly specific l10n messages.
13051
13052         * ly/titling-init.ly (bookTitleMarkup): Add baseline skips from 2.4.
13053
13054         * tex/GNUmakefile $(outdir)/latin1.enc: Build fix:
13055         merge stderr with stdout.  
13056
13057 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13058
13059         * flower/libc-extension.cc: Tested BSD compile fix (Matthias
13060         Neeracher).
13061
13062 2005-02-29  Graham Percival  <gperlist@shaw.ca>
13063
13064         * Documentation/user/instrument-notation.teily: moved
13065         \arpeggio to Basic.
13066
13067         * Documentation/user/advanced-notation.itely: Articulation to
13068         Basic, a bunch of stuff from Basic moved to Advanced.
13069
13070         * Documentation/user/basic.itely: swapped various sections,
13071         reorganized Basic.
13072
13073 2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
13074
13075         * flower/memory-stream.cc: 
13076         * flower/libc-extension.cc: Remove obsolete #undefs.
13077
13078         * flower/include/libc-extension.hh: Bugfix for BSD, place #ifdef
13079         more carefully.
13080
13081 2005-02-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13082
13083         * make/lilypond.fedora.spec.in (Requires): add GS 8.15 as
13084         dependency.
13085
13086         * VERSION (PACKAGE_NAME): release 2.5.13
13087
13088         * GNUmakefile.in (web-ext): don't ship ps.gz
13089
13090         * tex/GNUmakefile ($(outdir)/latin1.enc): redirect stderr to
13091         stdout
13092
13093 2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
13094
13095         * lily/general-scheme.cc (LY_DEFINE): Compile fix for systems
13096         without libintl.  Now it compiles too.
13097
13098 2005-02-28  Graham Percival  <gperlist@shaw.ca>
13099
13100         * Documentation/user/basic-notation.itely,
13101         instument-notation.itely, advanced-notation.itely:
13102         split up contents of notation.itely.
13103
13104         * Documentation/user/notation.itely: file removed.
13105
13106         * Documentation/user/invoking.itely, converters.itely:
13107         moved convert-ly info to invoking.itely.
13108
13109         * Documentation/user/global.itely, changing-defaults.itely,
13110         sound-output.itexi: moved global settings, file layout, and
13111         sound into global.itely.
13112
13113         * Documentation/user/sound-output.itexi: file removed.
13114
13115         * Documentation/user/lilypond.tely: removed links to
13116         notation.itely and sound.itely.
13117
13118 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13119
13120         * scm/output-ps.scm (grob-cause): only do mark_URI if non-empty.
13121
13122         * scm/framework-ps.scm (write-preamble): remove pdf-viewer code.
13123  
13124         * THANKS: add sponsor.
13125
13126         * scm/define-markup-commands.scm (with-url): new markup command.
13127
13128         * scm/page-layout.scm (TAGLINE): add www.lilypond.org with URL to
13129         tagline.
13130         
13131         * scm/output-tex.scm (url-link): stub.
13132
13133         * scm/output-ps.scm (url-link): new function.
13134
13135         * lily/lily-parser-scheme.cc (LY_DEFINE): deprecate
13136         ly:set-point-and-click
13137
13138 2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
13139
13140         * ps/music-drawing-routines.ps (mark_file_line): Switch Action
13141         based on pdf-viewer setting.
13142
13143         * scm/framework-ps.scm (write-preamble): Find and set preferred
13144         pdf-viewer.
13145
13146 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13147
13148         * Documentation/user/point-and-click.itely: update for PDF point &
13149         click.
13150
13151         * scripts/lilypond-pdfpc-helper.py: new file. Invoke different
13152         editors based on EDITOR setting.
13153
13154 2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
13155
13156         * scm/*: Oops, more grand 2005 replace bits.
13157
13158 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13159
13160         * ps/music-drawing-routines.ps: new routine: insert PDF mark
13161
13162         * scm/output-ps.scm (grob-cause): point & click support for
13163         PostScript
13164
13165 2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13166
13167         * lily/input-scheme.cc (LY_DEFINE): rename to
13168         ly:input-file-line-column
13169
13170 2005-02-26  Graham Percival  <gperlist@shaw.ca>
13171
13172         * Documentation/user/examples.itely: small fix from Steve Doonan.
13173
13174         * Documentation/user/scheme-tutorial.itely: small fix from Steve Doonan.
13175
13176         * THANKS: added Yuval Harel.
13177
13178         * Documentation/user/{various}: inserted two spaces after a period.
13179
13180         * Documentation/user/lilypond.tely: added framework for reorg.
13181
13182         * Documentation/user/basic-notation.itely, instrument-notation.itely,
13183         advanced-notation.itely, global.itely: new files, placeholder for
13184         future reorg.
13185
13186 2005-02-26 Yuval Harel  <yuvalh@hotpop.com>
13187
13188         * Documentation/user/notation.itely: revamped Polyphony section
13189         
13190 2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13191
13192         * Documentation/user/lilypond-book.itely (Music fragment options):
13193         doc fontload.
13194
13195         * Documentation/user/changing-defaults.itely (Text encoding): add
13196         fontload option to utf8 include
13197
13198         * scripts/lilypond-book.py (compose_ly): add fontload option
13199
13200         * scm/framework-eps.scm (dump-stencils-as-EPSes): add
13201         force-eps-font-include option.
13202
13203         * ly/chord-modifiers-init.ly (blackTriangleMarkup): reinstate
13204         black triangle
13205
13206         * Documentation/user/invoking.itely (Editor support): remove
13207         lilypond-latex section.
13208
13209         * scripts/lilypond-latex.py (Module): remove script.
13210
13211         * cygwin/lily-wins.py (stat): write to .lylog, so as not to
13212         overwrite .log. 
13213
13214         * lily/main.cc: remove -m, --no-layout
13215
13216         * flower/include/libc-extension.hh: add ALIAS_FILE_TO_FILECOOKIE
13217         to define. We don't want to override fprintf everywhere.
13218
13219 2005-02-26  Jan Nieuwenhuizen  <janneke@gnu.org>
13220
13221         * cygwin/lilypond.hint: 
13222         * cygwin/README.in: Update dependencies.
13223
13224         * stepmake/aclocal.m4 (STEPMAKE_PANGO, STEPMAKE_PANGO_FT2):
13225         Bugfix: do not pollute CPPFLAGS, LIBS.
13226
13227         * cygwin/mknetrel (extras): Cross compile fixes.
13228
13229         * ttftool/util.c: 
13230         * ttftool/ttfps.c: 
13231         * ttftool/ps.c: #include libc-extension.hh
13232
13233         * flower/include/libc-extension.hh:
13234         * flower/libc-extension.cc (fopencookie)[!HAVE_FOPENCOOKIE]: Add
13235         wrapper using funopen.
13236         (fopencookie, handle_cookie_io_fclose, handle_cookie_io_fprintf,
13237         handle_cookie_io_fprintf): Add wrappers catching Memory_out_stream.
13238
13239         * config.hh.in:
13240         * configure.in (AC_CHECK_FUNCS): Add fopencookie, funopen.
13241         (AC_CHECK_HEADERS): Add libio.h
13242
13243         * scripts/convert-ly.py: Uniformize, internationalize.
13244         (2.5.2): Remove fatal encoding rule.
13245         (2.5.13): Handle latin1 encoding gracefully.
13246
13247 2005-02-23  Jan Nieuwenhuizen  <janneke@gnu.org>
13248
13249         * HACKING: Fix line breaks.
13250
13251 2005-02-23  Werner Lemberg  <wl@gnu.org>
13252
13253         * mf/graycx.mf, mf/graylj.mf: Removed.  Any decent TeX distribution
13254         contains those two files.
13255
13256 2005-02-21  Werner Lemberg  <wl@gnu.org>
13257
13258         * mf/feta-nummer-code.mf ("Numeral 5"): Include intersection point
13259         to improve overlap removal process.
13260
13261         * mf/feta-slag.mf (draw_trillelement): Add parameter to control
13262         left and right ending.  This ensures better overlapping.
13263         Update all callers.
13264         ("lineprall"): Don't use draw_gridline to get better overlapping.
13265
13266 2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13267
13268         * scm/lily-library.scm (ps-embed-cff): add \n after EndResource
13269
13270         * Documentation/topdocs/NEWS.tely (Top): oops.
13271
13272 2005-02-21  Pedro Kroger  <kroeger@pedrokroeger.net>
13273
13274         * HACKING: new file.
13275
13276         * input/regression/utf8.ly (portuguese): added a portuguese example
13277         to show latin1 accents.
13278
13279 2005-02-21  Pal Benko  <benkop@freestart.hu>
13280
13281         * lily/mensural-ligature-engraver.cc:
13282         * lily/mensural-ligature.cc:
13283         * lily/include/mensural-ligature.hh: new algorithm implemented
13284
13285         * scm/define-grob-properties.scm: join-left killed (add-join may
13286         be used); join-left-amount changed to join-right-amount
13287
13288 2005-02-21  Graham Percival  <gperlist@shaw.ca>
13289
13290         * Documentation/user/notation.itely: small but urgent fix.
13291
13292 2005-02-21  Jürgen Reuter  <reuter@ipd.uka.de>
13293
13294         * lily/duration-scheme.cc: bugfix: correct parameters to
13295         SCM_ASSERT_TYPE.
13296
13297         * THANKS: added Pal.
13298
13299         * Documentation/user/notation.itely: bugfix: unTeXified
13300         $\\backslash$.  Bugfix: yet another glyph renaming victim:
13301         "timesig.*x/y" -> "timesig.*xy".
13302
13303 2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13304         
13305         * VERSION (PACKAGE_NAME): release 2.5.12
13306
13307 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13308
13309         * ly/engraver-init.ly: set tieWaitForNote to #t by default
13310
13311         * configure.in (gui_b): bump GUILE requirement to 1.6.5 
13312
13313         * Documentation/topdocs/NEWS.tely: add inputfileref macro.
13314
13315         * scm/framework-ps.scm (supplies-or-needs): uniq font name list.
13316
13317 2005-02-20  Jan Nieuwenhuizen  <janneke@gnu.org>
13318
13319         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly: recode
13320         latin1..utf-8.
13321
13322         * input/regression/stanza-number.ly:
13323         * input/regression/utf8.ly (hebrew): Use addlyrics.  Update.
13324
13325         * lily/tie-engraver.cc (acknowledge_grob): Compile fix.
13326
13327 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13328
13329         * Documentation/topdocs/NEWS.tely (Top): only mention 2.5
13330         NEWS. Refer to website for older news.  
13331
13332         * stepmake/bin/add-html-footer.py (i18n): don't strip .PNG /
13333         .HTML. This should be done for specific servers only.
13334
13335         * Documentation/topdocs/NEWS.tely (Top): move to .tely. Add some
13336         .ly image examples.
13337
13338         * scm/define-grobs.scm (all-grob-descriptions): put ledger lines
13339         in layer 0 too.
13340
13341         * scm/define-context-properties.scm
13342         (all-user-translation-properties): add tieWaitForNote
13343
13344         * scm/define-grobs.scm (all-grob-descriptions): add
13345         Tie_column::before_line_breaking
13346
13347         * lily/tie.cc (get_column_rank): new function
13348
13349         * lily/tie-column.cc (before_line_breaking): new function.
13350         (werner_directions): take into account ties that start on
13351         different columns.  
13352
13353         * lily/score-engraver.cc (set_columns): move add_column() so we
13354         have column rank available.
13355
13356         * lily/tie.cc (get_column_rank): new function.
13357
13358         * input/regression/utf8.ly (japanese): add japanese lyrics.
13359
13360         * lily/pfb.cc (LY_DEFINE): ly:ttf->pfa, new function.
13361
13362         * THANKS: add Steve D
13363
13364         * ttftool/*.c: add TTF -> Type42 conversion library. Based on
13365         Public Domain work by Juliusz Chroboczek <jch@pps.jussieu.fr>
13366
13367 2005-02-20  Tatsuya Ono  <tats_ono@infoseek.jp>
13368
13369         * mf/parmesan-heads.mf: "0harmonic" -> "s0harmonic"
13370         to show harmonic notes
13371         * scm/define-markup-commands.scm: in \markup-by-number
13372         "dots-dot" -> "dots.dot" to show dotted notes
13373
13374 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13375
13376         * flower/include/memory-stream.hh (class Memory_out_stream): new file.
13377
13378         * flower/memory-stream.cc (writer): new file.
13379
13380         * configure.in: add endian test.
13381
13382 2005-02-19  Jürgen Reuter  <reuter@ipd.uka.de>
13383
13384         * Documentation/user/examples.itely: small
13385         simplification/beautification
13386
13387         * Documentation/user/notation.ietly: bugfix: fixed many artefacts
13388         from the "x-y-z"->"x.y.z" renaming of glyphs throughout the whole
13389         notation manual.
13390
13391         * lily/mensural-ligature.cc: bugfix: another few victims of the
13392         "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
13393
13394         * ly/gregorian-init.ly: commit some experimental code for hi-level
13395         ligature input language lying around here for several months.
13396
13397         * lily/mensural-ligature-engraver.cc: bugfix: another victim of
13398         the "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
13399
13400         * lily/vaticana-ligature-engraver.cc: bugfix: another few
13401         "x-y-z"->"x.y.s-z" fixes.
13402
13403 2005-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13404
13405         * scm/framework-pdf.scm (scm): new file
13406
13407         * lily/include/pdf.hh (class Pdf_file): new file.
13408
13409         * lily/pdf.cc (write_trailer): new file.
13410
13411 2005-02-18  Erlend Aasland  <erlenda@gmail.com>
13412
13413         * input/regression/color.ly: new file
13414
13415         * lily/stencil.cc (interpret_stencil_expression):
13416         when a color expression is encountered: save current color,
13417         process the rest of the expression, and restore previous color.
13418
13419         * lily/system.cc (get_line): check all grobs for color property and
13420         prepare the stencil scheme expressions for further processing.
13421         Fix layer-loop.
13422
13423         * scm/define-grob-properties.scm: introduce the color property.
13424
13425         * scm/output-lib.scm: color helper functions.
13426
13427         * scm/output-ps.scm: introduce setcolor/resetcolor.
13428
13429 2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
13430
13431         * ly/*.ly, input/regression/*.ly: Added missing \version
13432         statements in some files.
13433
13434 2005-02-15  Graham Percival  <gperlist@shaw.ca>
13435
13436         * Documentation/user/notation.itely: minor editing.
13437
13438         * Documentation/user/converters.itely: updated convert-ly bugs.
13439
13440         * Documentation/user/lilypond-book.itely: add info about using
13441         feta characters in latex.
13442
13443 2005-02-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13444
13445         * scripts/convert-ly.py: new slur dash patch by Bertalan Fodor.
13446
13447 2005-02-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13448
13449         * scm/define-grob-properties.scm (all-user-grob-properties):
13450         removed 'dashed property.
13451
13452 2005-02-13  Nicolas Sceaux  <nicolas.sceaux@free.fr>
13453
13454         * scm/lily.scm (define-safe-public): new macro for defining
13455         variables that can be used in --safe mode. Use it in *.scm
13456         instead of manually setting safe-objects in safe-lily.scm.
13457
13458 2005-02-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13459         
13460         * lily/slur.cc: Slur-dash patch by Bertalan.
13461
13462         * ly/engraver-init.ly (EasyNotation): glyph name dash -> period.
13463
13464         * stepmake/bin/add-html-footer.py (do_file): do i18n only once. 
13465
13466 2005-02-10  Jan Nieuwenhuizen  <janneke@gnu.org>
13467
13468         * stepmake/aclocal.m4: teTeX-3.0 inimf fix.  Comment-out.
13469
13470 2005-02-09  Jan Nieuwenhuizen  <janneke@gnu.org>
13471
13472         * mf/GNUmakefile: teTeX-3.0 install fix.
13473
13474         * Cygwin patch from Bertalan.
13475
13476         * stepmake/stepmake/metafont-rules.make: Remove bashism.
13477
13478 2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
13479
13480         * GNUmakefile.in: 
13481         * SConstruct (symlink): teTeX-3.0 build fix: add map symlink.
13482
13483         * tex/GNUmakefile: teTeX-3.0 fix: install .enc in fonts/enc.  Add
13484         2.0.x compatibility.
13485
13486 2005-02-08  Werner Lemberg  <wl@gnu.org>
13487
13488         * mf/feta-din-code.mf: Format; clean up code.
13489         Replace `---' with `--' plus explicit path directions.
13490         (linethickness#, stafflinethickness#): Remove.
13491         ("dynamic f"): Replace `draw' with `draw_rounded_block'.
13492         ("dynamic s"): Improve shape.
13493         ("dynamic p"): Improve shape.
13494         Replace `draw' with better outline approximation.
13495         ("dynamic r"): Improve shape.
13496         Don't call `fill' and `draw' at the same time.
13497
13498 2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
13499
13500         * SConstruct (symlink):
13501         * GNUmakefile.in ($(builddir)/share/lilypond-force): teTeX-3.0
13502         build fix: add enc symlink.
13503
13504         * lily/general-scheme.cc: Compile fixes: include wchar.h, string.h.
13505
13506         Support for DESTDIR besides prefix=/foo
13507
13508         * vim/GNUmakefile (local-install): Use $(INSTALL) -d iso mkdir.
13509
13510         * stepmake/stepmake/*.make:
13511         * */GNUmakefile:
13512         * GNUmakefile.in: Prepend $(DESTDIR) to installation directory.
13513
13514         * config.make.in (prefix): Remove broken $(DESTDIR) hack.
13515
13516         * stepmake/aclocal.m4: Use %0.f iso %d to quiet gawk < 3.1.4 and
13517         mawk in fontforge (date) test.
13518
13519 2005-02-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13520
13521         * scm/font.scm (make-century-schoolbook-tree): add NCS as
13522         font-family=roman. Add Luxi Sans as sans
13523
13524 2005-02-07  Graham Percival  <gperlist@shaw.ca>
13525
13526         * Documentation/user/notation.itely: add warning about
13527         percent repeats and Voice contexts.
13528
13529         * Documentation/user/lilypond-book.itely: clarified the
13530         necessity of dvips -u arguments.
13531
13532 2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
13533
13534         * THANKS: Added a bunch of bug hunters.
13535
13536 2005-02-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13537
13538         * scm/framework-ps.scm (output-preview-framework): bugfix.
13539
13540         * ly/chord-modifiers-init.ly (ignatzekExceptionMusic): use unicode
13541         o/ for chord modifier..
13542
13543         * lily/general-scheme.cc (LY_DEFINE): new function ly:wide-char->utf-8.
13544
13545         * lily/drum-note-performer.cc:  remove unused (thanks Michael
13546         Welsh Duggan). 
13547
13548 2005-02-06  Jan Nieuwenhuizen  <janneke@gnu.org>
13549
13550         * Documentation/user/changing-defaults.itely (Text encoding): Clarify.
13551
13552         * ly/titling-init.ly: Do not also print intstrument in header on
13553         first page.  Do not print page number on first and only page.
13554
13555 2005-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13556
13557         * input/regression/*.ly: remove old-relative everywhere
13558
13559         * lily/music-sequence.cc (simultaneous_relative_callback): do
13560         what-if analysis on copy, not on original. Fixes old-relative
13561         compatibility.
13562
13563         * scm/backend-library.scm (postscript->png): space before
13564         --verbose.
13565         
13566 2005-02-05  Werner Lemberg  <wl@gnu.org>
13567
13568         * mf/feta-autometric.mf (fet_beginchar): Check whether `feta_group'
13569         is defined.
13570
13571         * mf/feta-alphabet.mf: Define `staffsize#'.
13572         Include `feta-params.mf'.
13573         s/staffheight/design_size/.
13574
13575         * mf/feta-alphabet??.mf: s/staffheight/design_size/.
13576
13577         * mf/feta-alphabet26.mf: Fix a serious bug (design size off by 8pt).
13578
13579         * mf/feta-nummer-code.mf: Reformatted.
13580         (draw_six): Use outline intersection to avoid a self-intersecting
13581         path.
13582         ("Numeral comma"): Fix serious outline glitches.  This slightly
13583         changes the glyph shape.
13584         ("Numeral dash"): Use `draw_rounded_block'.
13585         ("Numeral dot"): Use `drawdot'.
13586         ("Numeral 1"): Assure identical tangent directions for the
13587         intersection points of paths.  The glyph shape improvement is only
13588         visible at very high magnifications.
13589         ("Numeral 2"): Use `solve' macro to make the lower right part of
13590         the glyph outline touch the x axis exactly.  This changes the
13591         glyph shape.
13592         Minor fixes for better overlap removal support.
13593         ("Numeral 4"): Make lefter corner `rounder'.
13594         ("Numeral 5"): Assure identical tangent directions for the
13595         intersection points of paths.  This improves the glyph shape at
13596         high magnifications.
13597         ("Numeral 7"): Use `solve' macro to make the upper right part of
13598         the glyph outline touch the metrics box exactly.  This changes the
13599         glyph shape.
13600         Avoid corner in the upper left part of the glyph (causing a minor
13601         shape change).
13602
13603         * mf/feta-ital-*.mf: Removed.  Unused.
13604
13605 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13606
13607         * VERSION (PATCH_LEVEL): release 2.5.11
13608
13609         * input/regression/fill-line-test.ly: new file.
13610
13611         * buildscripts/gen-emmentaler-scripts.py (i): insert dash in
13612         emmentaler name, eg. emmentaler-23. 
13613
13614 2005-02-04  Christian Hitz  <chhitz@gmx.net>
13615
13616         * scm/scm/define-markup-commands.scm (fill-line): rework for better
13617         alignment with centered texts
13618
13619         * scm/stencil.scm (stack-stencils-padding-list): new function, takes a
13620         list of paddings
13621
13622 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13623
13624         * mf/GNUmakefile ($(outdir)/lilypond.map): add aybabtu to .map file.
13625
13626         * lily/note-column.cc (translate_rests): call flush_extent_cache()
13627         of parents when translating rests. Fixes: c-chord-rest.ly 
13628
13629         * lily/include/dimension-cache.hh (struct Dimension_cache): add
13630         dimension_callback_ member.
13631
13632         * lily/grob.cc (flush_extent_cache): new function. Force recompute
13633         of extents.
13634
13635 2005-02-04  Jan Nieuwenhuizen  <janneke@gnu.org>
13636
13637         * all but lily/*: The grand 2004/2005 replace.
13638
13639 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13640
13641         * lily/*: add space after ,  
13642
13643         * scm/music-functions.scm (has-request-chord): don't use
13644         ly:music-name anywhere. Fixes <<\\>> notation. 
13645
13646         * scm/define-markup-commands.scm (box): use font-size for
13647         padding. Fixes boxed-rehearsal-marks.ly
13648
13649         * lily/parser.yy (assignment_id): allow LYRICS_STRING as
13650         identifier definition too, so foo = \lyrics { ...   } bar = #1
13651         doesn't complain about "bar" being LYRICS_STRING.
13652
13653         * lily/paper-def.cc (find_pango_font): new routine; Store
13654         pango_fonts in hash tab too. This is necessary for retrieving
13655         Pango_fonts::physical_font_tab() later on.
13656  
13657         * lily/pango-font.cc (pango_item_string_stencil): bugfix: don't
13658         crash if psname is null.
13659
13660         * lily/lily-guile.cc (ly_hash2alist): new function
13661
13662         * Documentation/user/changing-defaults.itely (Text encoding):
13663         rewrite. 
13664
13665         * lily/pango-font.cc (physical_font_tab): new member. Store PSname
13666         -> font_filename mapping.
13667
13668         * lily/pango-font-scheme.cc (LY_DEFINE): new file. New function
13669         ly_pango_font_physical_fonts
13670
13671         * scm/framework-ps.scm (supplies-or-needs): extract names from
13672         physical Pango_fonts.
13673
13674         * utf8.ly: new file.
13675
13676 2005-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13677
13678         * Documentation/user/changing-defaults.itely (Page layout): add
13679         doco about systemSeparatorMarkup.
13680
13681         * scm/page-layout.scm (default-page-make-stencil): add-to-page
13682         function.
13683         (default-page-make-stencil): insert system separators.
13684
13685         * scm/define-markup-commands.scm (hcenter): add
13686         (beam): add.
13687
13688 2005-02-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13689
13690         * scm/output-ps.scm (ez-ball): reinstate ez notation.
13691
13692 2005-02-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13693
13694         * lily/main.cc: Spell backend consistently.  Sort options.
13695
13696 2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13697
13698         * scripts/lilypond-book.py (Module): revert @include.
13699         
13700 2005-01-31  Jan Nieuwenhuizen  <janneke@gnu.org>
13701
13702         * scripts/lilypond-book.py: Resurrect HTML links to .ly source.
13703         Bugfix: @include .tex (not .texi).  Small cleanups.
13704
13705         * stepmake/bin/add-html-footer.py (i18n): New function.
13706
13707 2005-01-31  Werner Lemberg  <wl@gnu.org>
13708
13709         * mf/feta-nummer.mf: Removed.  Unused.
13710
13711 2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13712
13713         * lily/ : 2004 -> 2005 s&r
13714
13715         * scm/file-cache.scm (cached-file-contents): add file. Read each
13716         file only once.
13717
13718         * scm/font.scm (add-pango-fonts): change order. Medium weight is
13719         now default.
13720
13721         * VERSION: release 2.5.10
13722         
13723         * mf/GNUmakefile (INSTALLATION_OUT_FILES4): install cff.ps files.
13724
13725         * make/ly-rules.make ($(outdir)/%.texi): detect new EOF marker.
13726
13727         * scm/framework-ps.scm (dump-stencil-as-EPS): robustness: ensure
13728         that both X and Y extents of bbox are non-nil.
13729
13730 2005-01-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13731
13732         * scm/chord-name.scm (alteration->text-accidental-markup): change
13733         - to . 
13734
13735         * scm/output-ps.scm (utf8-string): add utf8-string for completeness.
13736
13737         * scm/framework-ps.scm (dump-stencil-as-EPS): new function
13738
13739         * Documentation/user/invoking.itely (Invoking lilypond): add note
13740         about EPS backend.
13741
13742         * scm/framework-eps.scm: new file: create per-system/per-page EPS
13743         files for inclusion in lilypond-book document.
13744
13745         * input/tutorial/lbook-latex-test.tex: rename from lilbook.tex
13746
13747         * input/tutorial/lbook-texi-test.texi: new file.
13748
13749         * scm/safe-lily.scm (safe-objects): add
13750         {begin,end}-of-line-(in)?visible as safe.
13751  
13752 2005-01-30  Graham Percival  <gperlist@shaw.ca>
13753
13754         * Documentation/user/changing-defaults.itely: fixed example
13755         of (dynamics).
13756
13757 2005-01-29  Graham Percival  <gperlist@shaw.ca>
13758
13759         * lily/main.cc: fix info about -o=FILE.
13760
13761 2005-01-29  Werner Lemberg  <wl@gnu.org>
13762
13763         * mf/feta-toevallig.mf ("Natural"): Completely changed the
13764         construction to assure smooth transition from straight to curved
13765         lines.
13766
13767 2005-01-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13768
13769         * lily/stencil.cc (moved_to_edge): don't halt on adding empty
13770         stencils.
13771
13772         * ps/lilyponddefs.ps: add start-page, start-system doesn't
13773         translate to top of page. Fixes alignment problems of
13774         lilypond-generated EPS files.
13775
13776 2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13777
13778         * scm/part-combiner.scm (analyse-spanner-states): trigger on
13779         crescendo-end as well, since Decrescendo maybe ended with Stop
13780         Crescendo.). Fixes: partcombine-diminuendo.ly
13781
13782         * scm/script.scm (default-script-alist): swap portato symbols.
13783
13784         * lily/instrument-name-engraver.cc (acknowledge_grob): typo.
13785
13786         * lily/paper-outputter-scheme.cc (LY_DEFINE):
13787         ly:outputter-port. New function.
13788
13789         * scm/framework-ps.scm (output-classic-framework): dump a
13790         -systems.texi too
13791         (output-classic-framework): dump multiple systems on an "infinite"
13792         page EPS including fonts. 
13793
13794         * scripts/lilypond-book.py (Lilypond_snippet.ly_is_outdated): use
13795         .eps files for both texi and tex formats. Use PNG coming from
13796         lilypond.
13797         
13798 2005-01-28  Graham Percival  <gperlist@shaw.ca>
13799
13800         * Docuemntation/user/invoking.itely: fix info about -o=FILE.
13801
13802         * scripts/lilypond-latex.py: fix info about -o=FILE.
13803
13804 2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13805
13806         * ly/generate-embedded-cff.ly: write .cff.ps files.
13807
13808         * mf/GNUmakefile ($(outdir)/lilypond.map): add .cff.ps to .map file.
13809
13810         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
13811         $(outdir)/%.svg $(outdir)/%.pfa): remove --simplify
13812
13813 2005-01-28  Jan Nieuwenhuizen  <janneke@gnu.org>
13814
13815         * lily/include/guile-compatibility.hh (SCM_VECTOR_P): Compile fix.
13816
13817 2005-01-28  Werner Lemberg  <wl@gnu.org>
13818
13819         * mf/feta-macros.mf (soft_start_penstroke, soft_end_penstroke): New
13820         macros.
13821         (draw_bulb): Improved.
13822
13823         * mf/feta-pendaal.mf ("Pedal asterisk"): Remove workaround for
13824         metapost bug.
13825         (draw_pedal_P): Use soft_end_penstroke.
13826         (draw_pedal_d): Use soft_start_penstroke.
13827
13828         * mf/feta-schrift.mf ("Trill (`tr')"): Remove redundant point in
13829         path.
13830         ("Varied Coda"): Move some points to avoid fontforge warnings.  This
13831         doesn't change the glyph shape.
13832
13833         * mf/feta-accordion.mf ("accOldEE"): Draw glyph differently (without
13834         changing the shape) to avoid fontforge warnings.
13835
13836         * mf/feta-klef.mf (draw_tab_T, draw_tab_A, draw_tab_B): Use
13837         soft_end_penstroke and fix glyph shape.
13838
13839 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13840
13841         * lily/*.cc: Scheme deprecation of SCM_VECTOR_* 
13842
13843 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13844
13845         * scm/define-markup-commands.scm (line): filter out empty stencils
13846         from line command.
13847
13848         * lily/stencil-scheme.cc (LY_DEFINE): only allow finite real
13849         amount.
13850
13851 2005-01-27  Graham Percival  <gperlist@shaw.ca>
13852
13853         * Documentation/user/notation.itely: added info about what
13854         \voiceFoo does.  Also rewrote warning about marks at
13855         a line break.
13856
13857         * Documentation/user/changing-defaults.itely: added info
13858         about putting dynamics in parenthesis and brackets.
13859
13860 2005-01-27  Werner Lemberg  <wl@gnu.org>
13861
13862         * mf/feta-schrift.mf ("Trill (`tr')"): Fix typo.
13863
13864 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13865
13866         * mf/feta-schrift.mf: reverse u and d portato. Fixes:
13867         portato-direction.ly
13868
13869         * lily/beam.cc (consider_auto_knees): add beam height to
13870         threshold. Fixes: knee-multiple-beam.ly
13871
13872         * lily/instrument-name-engraver.cc (acknowledge_grob): also ignore
13873         pedal line spanners. Fixes: instrument-center-pedal.ly
13874
13875         * lily/auto-beam-engraver.cc (acknowledge_grob): stop beam
13876         if encountering barline. Fixes: auto-beam-repeat.ly
13877
13878 2005-01-26  Werner Lemberg  <wl@gnu.org>
13879
13880         * mf/feta-slag.mf (draw_trillelement): Fix shape to get clean
13881         overlapping.
13882
13883         * mf/feta-toevallig.mf (draw_meta_sharp): Fix shape to avoid curves
13884         with inflections for the 1/2 sharp glyph.
13885
13886         * mf/feta-schrift.mf ("Trill (`tr')"): Fix start position of
13887         connection between `t' and `r'.
13888         Unify bulb with the rest of `r' to avoid grazing outlines which
13889         confuses the overlap removal algorithm of fontforge.
13890
13891         * mf/feta-bolletjes.mf (draw_slash): Fix shape to avoid curves with
13892         inflections.
13893         (draw_cross): Fix shape to have uniform thickness in corners.
13894
13895         * mf/feta-pendaal.mf (draw_pedal_P): Break shape into smaller pieces
13896         to avoid an uneven number of self-intersections; this confuses
13897         fontforge.
13898         Fix a slight bug in the shape at left bottom (which is visible only
13899         at high magnifications).
13900         `Center' the stem horizontally to avoid overlapping.
13901
13902 2005-01-24  Werner Lemberg  <wl@gnu.org>
13903
13904         * mf/feta-autometric.mf (fet_beginfont): Set font_coding_scheme
13905         to `asis'.
13906         (fet_begingroup): Save group name in string `feta_group'.
13907         (fet_endgroup): Updated.
13908         (fet_beginchar): Emit `glyph_name' special for mf2pt1.
13909
13910         * mf/feta-bolletjes.mf: s/p/pat/ for paths.
13911
13912         * mf/feta-pendaal.mf ("Pedal asterisk"): Add workaround for bug
13913         in metapost.
13914
13915 2005-01-24  Graham Percival  <gperlist@shaw.ca>
13916
13917         * Documentation/user/notation.itely: really minor editing.
13918
13919 2005-01-22  Graham Percival  <gperlist@shaw.ca>
13920
13921         * Documentation/user/examples.itely: minor editing.
13922
13923         * Documentation/user/changing-defaults.itely: minor editing.
13924
13925         * Documentation/user/notation.itely: clarified info on polyphony
13926         and \addlyrics.
13927
13928 2005-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
13929
13930         * scm/output-gnome.scm: 
13931         * scm/output-svg.scm:
13932         * scm/lily-library.scm (font-name-style): Update font name
13933         kludging for fontconfig use.
13934
13935 2005-01-20  Erlend Aasland  <erlenda@gmail.com>
13936
13937         * scm/define-markup-commands.scm: Document right-align and
13938         larger markup commands. Remove "TODO" from the topmost comment
13939         "each markup function should have a doc string." More consistent
13940         use of new-lines.
13941
13942 2005-01-22  Graham Percival  <gperlist@shaw.ca>
13943
13944         * Documentation/user/changing-defaults: removed info about
13945         copyright symbol, since it's likely to change soon.
13946         Added info about betweensystemspace.
13947
13948         * Documentation/user/notation.itely: minor fixes.
13949
13950         * Documentation/user/lilypond.tely,
13951         Documentation/user/music-glossary.tely: changed copyright
13952         date to 2005 instead of 2004.
13953
13954         * input/test/volta-chord-names.ly: added old example back.
13955
13956 2005-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13957
13958         * mf/feta-beugel.mf: use design size 20 (not 15).
13959
13960         * mf/aybabtu.pe.in: scale brace fonts to design sizes.
13961         change name to aybabtu completely
13962
13963 2005-01-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13964
13965         * buildscripts/gen-emmentaler-scripts.py (outdir): add
13966         design_size to fontname
13967
13968 2005-01-19  Werner Lemberg  <wl@gnu.org>
13969
13970         * mf/feta-accordion.mf, mf/feta-klef.mf, mf/feta-pendaal.mf,
13971         mf/feta-schrift.mf: s/p/pat/ if a path variable.
13972
13973         * mf/feta-autometric.mf (set_char_box): Add code which emits
13974         specials for mf2pt1 if run with metapost.
13975         (to_bp): New macro for mf2pt1.
13976
13977 2005-01-18  Graham Percival  <gperlist@shaw.ca>
13978
13979         * Documentation/user/changing-defaults: added info on
13980         creating a copyright symbol.
13981
13982 2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13983
13984         * VERSION: release 2.5.9
13985         
13986 2005-01-18  Erlend Aasland  <erlenda@gmail.com>
13987
13988         * scm/auto-beam.scm: Simplify score-override-auto-beam-setting
13989
13990         * Documentation/user/notation.itely: Document
13991         score-override-auto-beam-setting Fix documentation for
13992         revert-auto-beam-setting.
13993
13994 2005-01-18  Werner Lemberg  <wl@gnu.org>
13995
13996         * scm/framework-ps.scm (ps-embed-cff): Fix DSC comments.
13997         (procset): New function to define a procset resource.
13998         (ps-embed-pfa): New function to define a font resource.
13999         (setup): New function to define a `Setup' environment.
14000         (preamble): Use new functions.
14001
14002         * ps/lilypond.defs (init-lilypond-parameters): New function to
14003         get rid of directly executed PS code.  Used in scm/framework-ps.scm.
14004
14005 2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14006
14007         * mf/GNUmakefile (MFTRACE_FLAGS): add --no-afm to MFTRACE_FLAGS
14008
14009 2005-01-17  Erlend Aasland  <erlenda@gmail.com>
14010
14011         * scm/define-markup-commands.scm: Change number->markletter-string
14012         to take two arguments (vector number). Add number->mark-alphabet-vector
14013         and markalphabet markup command.
14014
14015         * scm/translation-functions.scm: Add format-mark-box-alphabet,
14016         format-mark-alphabet, format-mark-box-barnumbers and
14017         format-mark-barnumbers. Fix bug in format-mark-box-numbers.
14018
14019 2005-01-17  Graham Percival  <gperlist@shaw.ca>
14020
14021         * Documentation/user/examples.itely: add SATB automatic piano
14022         reduction template.
14023
14024         * Documentation/user/notation.itely: added info about changing
14025         partcombine texts.  Also adds examples of alternate lyrics.
14026
14027         * Documentation/user/changing-defaults.itely: added warning
14028         about \RemoveEmptyStaffContext overriding previous changes.
14029
14030 2005-01-17  Werner Lemberg  <wl@gnu.org>
14031
14032         * buildscripts/mf-to-table.py: Use `FetaAlphabetEncoding' for
14033         feta-alphabet*.
14034
14035 2005-01-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14036
14037         * python/lilylib.py (make_ps_images): don't do final showpage for
14038         multi-page documents.
14039         
14040         * VERSION (MY_PATCH_LEVEL): release 2.5.8
14041
14042 2005-01-16  Graham Percival  <gperlist@shaw.ca>
14043
14044         * Documentation/user/lilypond.tely: changed order of appendices;
14045         unified index should be last.
14046
14047         * Documentation/user/notation.itely: add example of key signatures
14048         and info about Staff.printKeyCancellation.
14049
14050 2005-01-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14051
14052         * lily/include/repeated-music.hh (class Repeated_music): change
14053         into "namespace" class.
14054
14055         * lily/event.cc: remove Key_change_event.
14056
14057         * lily/include/transposed-music.hh (class Transposed_music): remove.
14058
14059         * lily/transposed-music.cc: remove
14060
14061         * lily/include/relative-music.hh: remove.
14062
14063         * lily/include/music-sequence.hh (struct Music_sequence): change
14064         into "namespace" class.
14065
14066         * lily/untransposable-music.cc (Module): remove
14067
14068         * lily/include/un-relativable-music.hh (Module): remove
14069
14070         * lily/include/untransposable-music.hh (Module): remove
14071
14072         * lily/include/music-list.hh (Module): remove file
14073
14074         * lily/un-relativable-music.cc: remove file.
14075
14076 2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
14077
14078         * lily/parser.yy: Compile fix.
14079
14080 2005-01-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14081
14082         * lily/include/music.hh (class Music): unvirtualize transpose().
14083
14084         * lily/sequential-music.cc: remove file.
14085
14086         * lily/include/lyric-combine-music.hh ("music.hh"): remove file.
14087
14088         * lily/slur-scoring.cc (get_best_curve): only switch on
14089         DEBUG_SLUR_SCORING for non NDEBUG builds.
14090
14091         * lily/include/music.hh (class Music): replace Music::start_mom()
14092         by start-callback property
14093
14094         * lily/include/grace-music.hh: remove file. 
14095
14096         * lily/stem.cc (height): robustness fix.
14097
14098         * lily/time-scaled-music.cc: remove file.
14099
14100         * lily/include/music.hh (class Music): include SCM init argument.
14101         (class Music): replace Music::get_length() virtual by
14102         length-callback property everywhere.
14103
14104         * scripts/convert-ly.py (conv): add  # to \property scalar value.
14105
14106         * mf/GNUmakefile: don't install *list.ly
14107
14108 2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
14109
14110         * mf/GNUmakefile (CFF_FILES): Bugfix: only big cheeses and braces.
14111
14112 2005-01-12  Werner Lemberg  <wl@gnu.org>
14113
14114         This patch addresses the following problems in the feta sources
14115         files which contribute to the fetaXX fonts.
14116
14117         . Many fixes for rasterization at low resolutions (consistent use of
14118           `vround' and `hround', integer shift values for paths, applying
14119           `eps' for mirrored paths, use of `define_whole_pixels' and
14120           friends, etc.) -- while this probably looks like a waste of time
14121           it has revealed deficiencies in some glyph shapes.  See comment at
14122           the end of feta-params.mf how vertical symmetry is achieved.
14123
14124         . The `---' operator has been replaced everywhere with `--'; this
14125           both improves and considerably reduces the font size after
14126           conversion with mf2pt1.
14127
14128         These change aren't explicitly mentioned below since virtually all
14129         glyphs are affected.
14130
14131         Other notable differences:
14132
14133         . Glyphs from feta-accordion.mf now have charboxes around the
14134           outline.
14135
14136         . Fixed incorrect charbox for `accDot'.
14137
14138         . The `rcomma' and `lcomma' glyphs were distorted due to a typo.
14139
14140         . Fixed position of the bow in the `upprall' glyph and its siblings.
14141
14142         . The bulb size in the `2/2 meter' and `4/4 meter' glyphs is now
14143           dependent on the staff line thickness to avoid touching the middle
14144           staff line at smaller sizes.
14145
14146         . Largely extended output for feta-testXX: Where useful, glyphs
14147         are shown both between and on staff lines.
14148
14149
14150         * mf/feta-params.mf (staff_space_rounded,
14151         stafflinethickness_rounded, linethickness_rounded,
14152         ledgerlinethickness_rounded, stemthickness_rounded): New variables.
14153         Update all code which uses them where appropriate.
14154         (feta_eps, feta_shift, feta_space_shift, feta_offset, feta_fillpen):
14155         New variables used to control rasterization at low resolutions.  Set
14156         to zero if feta code is processed with metapost.
14157
14158         * mf/feta-macros.mf (draw_staff, draw_staff_outline): Updated.
14159         (draw_rounded_block, draw_square_block): Updated to use `--' only.
14160         (flare_path): Updated.
14161         Make it work with `filldraw' (but only circular pens).
14162         (hfloor, vfloor, hceiling, vceiling): New macros.
14163
14164         * mf/feta-accordion.mf ("accDiscant", "accFreebase", "accStdbase"):
14165         Use `draw' again in mf mode to have good pixel dropout control.
14166         Fix intersection points of horizontal lines with circle.
14167         ("accDot"): Fix parameters for set_char_box.
14168         ("accOldEE"): Use `draw' again in mf mode to have good pixel dropout
14169         control.
14170
14171         * mf/feta-banier.mf: Updated.
14172
14173         * mf/feta-bolletjes.mf (remember_pic): New variable, used for
14174         testing.
14175         (undraw_inside_ellipse): Remove `center' argument.  Update all
14176         callers.
14177         (draw_brevis): New macro, called by "Brevis notehead".
14178         (draw_whole_triangle_head): New macro, called by "Whole
14179         trianglehead".
14180         (draw_small_triangle_head): Use `filldraw'.
14181
14182         * mf/feta-eindelijk.mf: Remove useless global group.
14183         Updated.
14184
14185         * mf/feta-klef.mf (draw_c_clef): Correct point positions for using
14186         `filldraw'.
14187
14188         * mf/feta-pendaal.mf: Updated.
14189
14190         * mf/feta-puntje.mf: Updated.
14191
14192         * mf/feta-schrift.mf (draw_very_long_fermata): Simplified to use
14193         less points.
14194         ("Flageolet"): Use `draw' again in mf mode to have good pixel
14195         dropout control.
14196         ("Varied Coda"): Use `draw_block'.
14197         (draw_comma): Fix typo.
14198         (draw_arpeggio_arrow): Use `draw' also in mf mode to have good
14199         pixel dropout control.
14200
14201         * mf/feta-slag.mf ("upprall", "downprall", "lineprall"): Fix start
14202         position of bow.
14203
14204         * mf/feta-timesig.mf (draw_C): Reduce bulb size for smaller design
14205         sizes.
14206
14207         * mf/feta-toevallig.mf (remember_pic): New variable, used for
14208         testing.
14209         (draw_meta_sharp): Much simplified.
14210         ("Sharp", "1/2 Sharp", "3/4 Sharp"): Don't rotate but shift.
14211
14212         * mf/feta-test-generic.mf: Include all files as in feta-generic.mf.
14213
14214 2005-01-13  Mats Bengtsson  <mabe@s3.kth.se>
14215
14216         * Documentation/user/notation.itely (Ancient rests): Fix typo
14217         (thanks Anthony)
14218
14219 2005-01-13  Jan Nieuwenhuizen  <janneke@gnu.org>
14220
14221         * scm/auto-beam.scm (score-override-auto-beam-setting): New function.
14222
14223         * lily/main.cc (setup_paths): Add cff.
14224
14225         * mf/GNUmakefile (foe): Include actual target %.cff.
14226         (INSTALLATION_OUT_SUFFIXES): Install CFF and SVG fonts too.
14227
14228 2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14229
14230         * lily/include/lily-lexer.hh (class Lily_lexer): lose hungarian _b
14231         suffix for main_input_b_.
14232
14233         * scm/music-functions.scm (toplevel-music-functions):
14234         precompute music lengths for music expressions.  
14235
14236 2005-01-11  Nicolas Sceaux  <nicolas.sceaux@free.fr>
14237
14238         * lily/include/input.hh (class Input): new `end_' slot for end of
14239         input. Renamed defined_str0_ to start_.
14240
14241         * lily/input.cc (Input): Add Input::Input (Input const &) and
14242         remove Input::Input (Source_file*, char const *). Use the new
14243         slots.
14244         (set_location): method used by bison to propagate input
14245         locations (YYLLOC_DEFAULT).
14246         (end_line_number, end_column_number, step_forward): new methods
14247         
14248         * lily/input-scheme.cc (ly:input-both-locations): new function,
14249         similar to ly:input-location, but also return the end line and
14250         column.
14251
14252         * lily/include/includable-lexer.hh: 
14253         * lily/includable-lexer.cc: 
14254         * lily/include/lily-lexer.hh (class Lily_lexer): 
14255         * lily/lily-lexer.cc (add_lexed_char): Move add_lexed_char from
14256         Includable_lexer to Lily_lexer, in order to update lexloc (the
14257         yylloc), a new slot of Lily_lexer.
14258         (here_input, LexerError): simplify by using the lexloc slot (aka
14259         yylloc)
14260
14261         * lily/lexer.ll: #define yylloc to use input locations (it may
14262         be useless here?). Fixed the #embedded_scm rule (step the location
14263         forward in order to skip the sharp sign before parsing the scheme
14264         expression)
14265
14266         * lily/include/lily-parser.hh (class Lily_parser): 
14267         * lily/lily-parser.cc: Remove push_spot(), pop_spot() and
14268         here_input()
14269         (parser_error): overload for more precise locations of errors.
14270
14271         * lily/parser.yy (YYLTYPE): set location type to Input
14272         (YYLLOC_DEFAULT): use Input::set_location()
14273         (yylex): add the YYLTYPE* location parameter.
14274         Clean push_spot()/pop_spot()/here_input(), and use @$, @1, etc.
14275         Give an Input parameter to THIS->parser-error() for more accurate
14276         messages.
14277
14278 2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14279
14280         * stepmake/aclocal.m4: do NDEBUG for optimizing builds.
14281
14282         * lily/include/beam.hh (DEBUG_QUANTING): performance: only switch
14283         on BEAMQUANTING for non-NDEBUG builds.
14284
14285         * lily/stem.cc (head_count): performance: avoid String::String()
14286         inside oft called function.
14287
14288 2005-01-09  Graham Percival  <gperlist@shaw.ca>
14289
14290         * Documentation/user/examles.itely: attempted fix for broken
14291         string quartet template.
14292
14293         * Documentation/user/notation.itely: remove unnecessary broken
14294         link.
14295
14296 2005-01-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14297
14298         * VERSION (PACKAGE_NAME): release 2.5.7
14299
14300 2005-01-09  Jan Nieuwenhuizen  <janneke@gnu.org>
14301
14302         * config.make.in (METAFONT): Append -progname=mf, fixes use with
14303         mf-nowin for teTeX-3.0.  Backportme.
14304
14305         * scm/output-svg.scm (utf8-string): New function.
14306
14307         * scm/output-gnome.scm (utf8-string): New function.
14308         (otf-name-mangling): Remove.
14309
14310         * lily/pango-font.cc (Pango_font): Use font string iso font
14311         filename for utf8-text.
14312
14313         * buildscripts/gen-emmentaler-scripts.py: Remove designsize from
14314         name.
14315
14316 2005-01-08  Graham Percival  <gperlist@shaw.ca>
14317
14318         * Documentation/user/notation.itely: add info about
14319         Staff.extraNatural = ##f in Pitches section.  Also
14320         fixed some minor issues in the Vocal music section.
14321
14322 2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14323
14324         * scm/output-ps.scm (white-text): comment out Helvetica font,
14325         which is broken for my GS install.
14326
14327         * lily/pango-font.cc (pango_item_string_stencil): use ink_rect,
14328         which provides a tighter bbox.
14329
14330         * scm/define-grobs.scm (all-grob-descriptions): remove all
14331         extra-offsets from definitions.
14332
14333 2005-01-08  Erlend Aasland  <erlenda@gmail.com>
14334
14335         * scm/output-lib.scm: Rename guitar-tunings to guitar-tuning and
14336         add tuning for 4-string bass and some common 4/5-string banjo
14337         tunings.  New function (four-string-banjo) turns a 5-string tuning
14338         into a 4-string tuning.  New function
14339         (fret-number-tablature-format-banjo) computes correct fret numbers
14340         on 5-string banjos.
14341
14342         * ly/engraver-init.ly: Default stringTunings = #guitar-tuning
14343         Add beam correction to TabVoice.
14344
14345         * scm/define-grobs.scm: Adjust notehead offset. Print fret numbers
14346         using bold font; makes tabs more readable.
14347
14348 2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14349
14350         * lily/font-select.cc (get_font_by_design_size): don't make
14351         Modified_font_metric; this causes trouble, since we don't know the
14352         font magnification from inside Pango_font::text_stencil()
14353
14354         * lily/all-font-metrics.cc (find_pango_font): take magnification argument.
14355
14356         * Documentation/user/notation.itely (The Lyrics context): comment out
14357         broken {Small ensembles} link.
14358
14359         * scm/framework-svg.scm (output-framework): change calling convention.
14360
14361         * lily/object-key-dumper-scheme.cc: new file.
14362
14363         * lily/object-key-undumper-scheme.cc: new file.
14364
14365         * lily/tweak-registration-scheme.cc: new file.
14366
14367         * lily/pango-select.cc (symbol_to_pango_variant): init local variable.
14368
14369         * Documentation/user/examples.itely (String quartet): uncomment
14370         broken example.
14371
14372         * lily/font-config.cc: new file.
14373
14374 2005-01-08  Jan Nieuwenhuizen  <janneke@gnu.org>
14375
14376         * scm/output-svg.scm: 
14377         * scm/output-gnome.scm: s/bigcheese/emmentaler.
14378
14379         * lily/score-engraver.cc (MUSIC_FONT): Use emmentaler20.
14380
14381 2005-01-07  Jan Nieuwenhuizen  <janneke@gnu.org>
14382
14383         * lily/general-scheme.cc (LY_DEFINE): Use snprintf (WAS: sprintf).
14384         Add headers.
14385
14386         * lily/GNUmakefile (general-scheme.o): Add version.hh dependency.
14387
14388 2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14389
14390         * mf/GNUmakefile (debian-mirror): rename bigcheese to emmentaler.
14391
14392         * lily/include/main.hh: lose _b hungarian suffixes for global
14393         variables.
14394
14395         * lily/include/lily-guile-macros.hh: new file.
14396
14397         * lily/pango-select-scheme.cc (LY_DEFINE): new file.
14398
14399         * lily/general-scheme.cc: new file. 
14400
14401         * lily/font-select.cc (get_font_by_design_size): retrieve
14402         PangoFont for (designsize . "pango-descr") entries.
14403
14404         * lily/lily-parser-scheme.cc: new file.
14405
14406         * lily/output-def-scheme.cc: new file.
14407
14408         * lily/paper-book-scheme.cc: new file.
14409
14410         * lily/duration-scheme.cc (LY_DEFINE): new file.
14411
14412         * lily/pitch-scheme.cc:  new file.
14413
14414         * scm/font.scm (add-cmr-fonts): use real dimens in font selection.
14415
14416 2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14417
14418         * lily/dimensions.cc (LY_DEFINE): add ly:{inch,cm,mm,bp,pt}.
14419
14420 2005-01-06  Graham Percival  <gperlist@shaw.ca>
14421
14422         * Documentation/user/notation.itely: minor editing.
14423
14424         * Documentation/user/changing-defaults: minor editing.
14425
14426         * Documentation/user/examples.itely: add template for
14427         string quartet part extraction; demonstrates tag.
14428
14429 2005-01-06  Erlend Aasland  <erlenda@gmail.com>
14430
14431         * Documentation/user/notation.itely: documents
14432         format-mark-box-letters and format-mark-box-numbers
14433
14434         * scm/define-context-properties.scm: change comment.
14435
14436 2005-01-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14437
14438         * scm/framework-ps.scm (output-classic-framework): new function:
14439         dump systems as separate .eps files (without fonts) and write a
14440         single collecting .tex file.
14441
14442 2005-01-05  Mats Bengtsson  <mabe@s3.kth.se>
14443
14444         * Documentation/user/notation.itely (Setting simple songs):
14445         Correct several errors in the equivalent formulation of
14446         \addlyrics. 
14447         (The Lyrics context): Corrected link to the SATB example.
14448
14449 2005-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14450
14451         * scm/lily.scm (completize-formats): new function
14452         (postprocess-output): new function
14453
14454         * lily/paper-book.cc (classic_output): change calling
14455         convention. Give basename as first argument. 
14456         remove Paper_book::post_processing().
14457
14458         * lily/lily-guile.cc (LY_DEFINE): ly:output-backend, new function.
14459
14460 2005-01-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14461
14462         * lily/paper-outputter.cc (LY_DEFINE): new function
14463         ly:outputter-close.
14464
14465         * lily/main.cc: change --format,-f to --backend,-b
14466
14467         * lily/include/main.hh: rename format to backend.
14468
14469         * scm/translation-functions.scm (format-mark-box-numbers): add.
14470         patch by Erlend Aasland
14471
14472 2005-01-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14473
14474         * lily/pango-font.cc (text_stencil): dump string as
14475         (utf-8-string FONTDESC UTF8) for use in -f gnome, -f svg.
14476
14477 2005-01-03  Jan Nieuwenhuizen  <janneke@gnu.org>
14478
14479         * configure.in (gui_b): Remove handy developer-only
14480         PKG_CONFIG_PATH settings that cater for Jan-and-Han-Wen ~/usr/pkg/
14481         CVS source installations (but break other non-default but correct
14482         PKG_CONFIG_PATH setups), as this is no longer developer-only.
14483
14484         * SConstruct: 
14485         * ps/GNUmakefile (INSTALLATION_FILES): teTeX-3.0
14486         compatibility (backportme).
14487
14488         * GNUmakefile.in: teTeX-3.0 compatibility (backportme).
14489
14490 2005-01-03  Werner Lemberg  <wl@gnu.org>
14491
14492         Prepare glyph shapes for mf2pt1 conversion.
14493
14494         * mf/feta-accordion.mf (accreg_pen): Removed.  No longer used.
14495         (accDiscant, accFreebase, accStdbase): Replace `draw' with
14496         `penstroke'.
14497         (accDot): Use `drawdot'.
14498         (accBayanbase): Replace `draw' with `draw_gridline'.
14499         (print_penpos): Moved to feta-macros.mf.
14500         (accOldEE): Replace `filldraw' with `penstroke'.
14501         Replace `draw' with `penstroke' and `drawdot'.
14502
14503         * mf/feta-banier.mf: Code clean-up.
14504         ("grace dash (up)", "grace dash (down)"): Replace `draw' with
14505         `fill'.
14506
14507         * mf/feta-bolletjes (draw_cross): Remove call to `labels'.
14508
14509         * mf/feta-eindelijk.mf (draw_rest_bulb, draw_eigth_rest): Add
14510         paremeter to control drawing of labels.  Update all callers.
14511
14512         * mf/feta-klef.mf (draw_c_clef): Use `&' not `..' to connect paths.
14513         (new_bulb): Return a bulb as a single path.  To do that, it now
14514         takes some more parameters.  Updated all callers.
14515         (draw_gclef): Major clean-up.  `draw' has been replaced with
14516         `penstroke', unnecessary outlines have been removed.
14517         Remove (unused) gnome-canvas code.
14518
14519         * mf/feta-macros.mf (print_penpos): New macro (from
14520         feta-accordion.mf).
14521         Other minor fixes.
14522
14523         * mf/feta-pendaal.mf ("Pedal asterisk"): Use `undrawdot'.
14524         ("Pedal dot"): Use `drawdot'.
14525         (draw_pedal_P): Add parameter to control drawing of labels.  Update
14526         all callers.
14527         Fix shape at top.
14528         (draw_pedal_e): Add parameter to control drawing of labels.  Update
14529         all callers.
14530         (draw_pedal_d): Add parameter to control drawing of labels.  Update
14531         all callers.
14532         Revert drawing direction.
14533
14534         * mf/feta-schrift.mf (draw_fermata): Use single path.
14535         (draw_short_fermata): Replace `filldraw' with `fill'.
14536         (draw_long_fermata, draw_very_long_fermata): Replace calls to
14537         `draw_rounded_block' with a single path.
14538         ("Thumb"): Draw full circle instead of mirroring segments.
14539         (draw_accent): New macro.
14540         ("> accent", "espr"): Use it.
14541         (draw_marcato): Replace `filldraw' and `draw' with `fill'.
14542         ("open (unstopped)"): Draw full circle instead of mirroring
14543         segments.
14544         (draw_vee): Removed.
14545         ("Upbow"): Use `draw_accent' instead of `draw_vee'.
14546         ("Downbow"): Replace calls to `draw_rounded_block' with a single
14547         path.
14548         ("Trill (`tr')"): Replace overlapping loop drawn with `draw' with
14549         partial pieces drawn with `fill' -- these do still overlap with the
14550         stem of the `t' but just once, not multiple times so that fontforge
14551         can handle it gracefully.
14552         Change other parts of the glyph so that fontforge's overlapping
14553         algorithm reliably works.
14554         (draw_heel): Replace `draw' with `fill'.
14555         (draw_toe): Use `draw_accent' instead of `draw_vee'.
14556         ("Flageolet"): Replace `draw' with `penstroke'.
14557         ("Segno"): Replace `filldraw' with `penstroke'.
14558         Replace `draw' with `drawdot'.
14559         ("Coda"): Replace `fill' with `penstroke', using a single path.
14560         ("Varied Coda"): Use less overlapping paths.
14561         (draw_arpeggio_arrow): Replace `filldraw' with `fill', using a
14562         single path.
14563
14564         * mf/feta-slag.mf (draw_trillelement): Put `clearxy' outside of
14565         group to better control the `labels' command.
14566         Rename argument to `offset' and use it actually.  Update all
14567         callers.
14568         Replace `filldraw' with `fill'.
14569         ("mordent", "prallmordent", "upmordent", "downmordent",
14570         "lineprall"): Replace `draw' with `draw_gridline'.
14571         ("upprall", "downprall"): Replace `draw' with `fill'.
14572
14573         * mf/feta-timesig.mf: Formatting.
14574
14575         * mf feta-toevallig.mf (draw_meta_flag): Move code to draw labels
14576         to...
14577         ("Flat"): Here.
14578         (draw_paren): Move code to draw labels to...
14579         ("Right Parenthesis"): Here.
14580
14581 2005-01-02  Graham Percival <gperlist@shaw.ca>
14582
14583         * Documentation/user/notation.itely: add example of \setTextDecresc
14584         and \setTextDim.
14585
14586 2005-01-02  Tatsuya Ono <tats_ono@infoseek.jp>
14587
14588         * scm/define-markup-commands.scm :  fix glyph-strings of
14589         accidentals and \note-by-number
14590
14591 2005-01-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14592
14593         * VERSION: 2.5.6 released.
14594         
14595         * ps/lilyponddefs.ps: put mm -> pt scaling in here.
14596
14597         * input/regression/new-markup-scheme.ly: oops. font-family=music
14598         -> font-encoding fetaMusic.  
14599
14600         * lily/main.cc: put default to PS.
14601
14602         * lily/tfm.cc: idem.
14603
14604         * lily/afm.cc: idem.
14605
14606         * lily/include/modified-font-metric.hh (struct
14607         Modified_font_metric): remove coding_scheme() method.
14608
14609         * input/mutopia/F.Schubert/morgenlied.ly: convert to utf8
14610
14611         * scripts/convert-ly.py (conv): crash on encountering \encoding.
14612
14613         * input/les-nereides.ly: convert to utf8
14614
14615         * lily/modified-font-metric.cc (text_dimension): idem.
14616
14617         * lily/parser.yy (TODO): idem.
14618
14619         * lily/include/lily-lexer.hh (class Lily_lexer): idem.
14620
14621         * lily/lexer.ll: remove encoding
14622
14623         * scm/framework-ps.scm (output-variables): separately scale the
14624         page to mm 
14625
14626         * lily/pango-font.cc (Pango_font): fix scaling.
14627
14628         * lily/font-metric.cc (design_size): design_size returns a
14629         dimension now as well.
14630
14631 2004-12-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14632
14633         * mf/GNUmakefile ($(outdir)/%.otf-table): use findstring. Fixes
14634         brace generation. 
14635
14636         * lily/text-metrics.cc (LY_DEFINE): use scm_c_make_hash_table().
14637
14638 2004-12-30  Jan Nieuwenhuizen  <janneke@gnu.org>
14639
14640         * mf/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Do not try to
14641         install unbuildable Fontmap and Fontmap.lily (Simon Aridis-Lang).
14642
14643 2004-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14644
14645         * mf/GNUmakefile ($(outdir)/%.otf-table): include parmesan20.lisp
14646         in first run as well.
14647
14648         * scm/paper.scm (layout-set-staff-size): use text-font-size in
14649         dimension less points (ie. 12 = 12 point)
14650
14651         * lily/pango-select.cc (select_pango_font): use find_scaled_font().
14652
14653         * lily/all-font-metrics.cc (find_pango_font): set description_
14654
14655         * lily/pango-font.cc (text_stencil): export size as well.
14656         (text_stencil): fix scaling and extents box.
14657
14658 2004-12-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14659
14660         * Documentation/topdocs/NEWS.texi (Top): add -f texstr
14661
14662         * Documentation/user/invoking.itely (Invoking lilypond): document
14663         texstr
14664
14665         * scripts/convert-ly.py (conv): add ancient rules.
14666
14667         * scm/clef.scm (c0-pitch-alist): replace - with .
14668
14669         * scripts/lilypond-book.py (process_snippets): add texstr support.
14670
14671         * scm/framework-texstr.scm (header): change extension to .textmetrics
14672
14673         * lily/lily-parser.cc (parse_file): do try_load_text_metrics for
14674         -f tex.
14675
14676         * lily/text-metrics.cc: new file.
14677         (try_load_text_metrics): new function
14678
14679         * lily/include/text-metrics.hh: new file.
14680
14681 2004-12-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14682
14683         * lily/include/lily-guile.hh (ly_lily_module_constant): rename
14684         ly_scheme_function to ly_lily_module_constant.
14685
14686         * lily/modified-font-metric.cc (text_dimension): try
14687         lookup_tex_text_dimension() first.
14688
14689         * lily/tfm.cc: new function ly:load-text-dimensions
14690
14691 2004-12-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14692
14693         * scm/output-texstr.scm (text): use \lilygetmetrics
14694
14695         * scm/framework-texstr.scm (header): dump in new format.
14696
14697         * tex/lilypond-tex-metrics: new file.
14698         
14699 2004-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
14700
14701         * lily/pango-font.cc (text_stencil): Quick try at glyph->charcode
14702         mapping.
14703         (index_to_charcode): New method.
14704
14705         * scm/output-ps.scm (glyph-string): 
14706         * scm/output-gnome.scm (glyph-string): Add FONT parameter.
14707
14708 2004-12-26  Jan Nieuwenhuizen  <janneke@gnu.org>
14709
14710         * scm/output-gnome.scm (FIXME-glyph-string): New function.  Cannot
14711         implement fully, need FONT to get to charcode.
14712
14713         * scm/lily.scm (ly:all-stencil-expressions): Add glyph-string.
14714
14715         * scm: Cleanups.
14716
14717         * Documentation/user/changing-defaults.itely: Fix internalsrefs
14718         {Tunable context properties},
14719         {All layout objects},
14720         {Music definitions}.
14721
14722 2004-12-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14723
14724         * VERSION: release 2.5.5
14725         
14726         * lily/main.cc: use TeX as default output format.
14727
14728         * flower/file-path.cc (find): try to open directly as well, so we
14729         find absolute path files. 
14730
14731         * lily/pango-select.cc: new file.
14732
14733         * scm/framework-ps.scm: remove all encoding code. 
14734         load pfb/pfa for PangoFont too.
14735         
14736         * lily/lily-guile.cc (ly_chain_assoc_get): new function.
14737
14738 2004-12-22  Werner Lemberg  <wl@gnu.org>
14739
14740         Prepare glyph shapes for mf2pt1 conversion.
14741
14742         * mf/feta-toevallig.mf ("Double Sharp"): Minor path fix.
14743
14744         * mf/feta-bolletjes.mf (penposx): New auxiliary macro.
14745         (define_triangle_shape): Use it to replace `draw' with `fill' and
14746         `unfill'.  Update all callers.
14747         (draw_slash): Replace `filldraw' with `fill'.  Update all callers.
14748         (draw_cross): Ditto.
14749         ("X-Circled notehead"): Replace `draw' with `fill' and `unfill'.
14750         Use penrazor for better conversion with mf2pt1.
14751         (generic_draw_solfa_note_shape, draw_solfa_note_shape,
14752         draw_solfa_quarter_note_shape, triangle): Removed.  Unused.
14753         (draw_do_head, draw_re_head, draw_mi_head, draw_fa_head,
14754         draw_la_head, draw_ti_head): Replace `filldraw' with
14755         `fill'.  Update all callers.
14756
14757 2004-12-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14758
14759         * lily/paper-book.cc (output): revert: only allow a single output
14760         format.
14761
14762         * lily/include/pango-font.hh: new file.
14763
14764         * lily/pango-font.cc: new file.
14765
14766         * lily/font-metric.cc (text_stencil): new routine
14767
14768         * lily/all-font-metrics.cc (find_pango_font): new routine.
14769
14770         * lily/include/font-metric.hh (struct Font_metric): add
14771         text_stencil()
14772
14773         * configure.in (PKG_CONFIG_PATH): require PANGO_FT2
14774
14775 2004-12-22  Werner Lemberg  <wl@gnu.org>
14776
14777         Prepare glyph shapes for mf2pt1 conversion.
14778
14779         * mf/feta-macros.mf, mf_feta-eindelijk.mf: Some formatting.
14780
14781         * mf/feta-toevallig.mf: Formatting.
14782         (draw_meta_sharp): Modify path to replace `filldraw' with `fill'.
14783         ("Natural"): Fix paths to allow better postprocessing.
14784         (draw_meta_flat): Use `z3l' as additional point in path to get
14785         better conversion with mf2pt1.
14786         Other minor cleanups.
14787         ("3/4 Flat"): Add auxiliary points and modify path to replace
14788         `draw' with `fill'.
14789         ("Double Sharp"): Mirror path segments instead of picture elements
14790         to get a single outline.
14791         Modify path to replace `filldraw' with `fill'.
14792
14793 2004-12-22  Graham Percival  <gperlist@shaw.ca>
14794
14795         * input/test/unfold-all-repeats.ly: added file back.
14796
14797         * Documentation/user/notation.itely,
14798         Documentation/user/programming-interface.itely
14799         Documentation/user/changing-defaults.itely: fixed misc broken
14800         links to input/test/ files.
14801
14802 2004-12-22  Jan Nieuwenhuizen  <janneke@gnu.org>
14803
14804         * tex/texinfo.tex: Update.  We should not be distributing this,
14805         but since we do, use latest version.
14806
14807         * Documentation/user/macros.itexi: Comment-out \fetaflat,
14808         \fetasharp.  Fixes make web.  FIXME: make usable (compatible?) TeX
14809         macros for feta glyphs.
14810
14811 2004-12-22  Graham Percival  <gperlist@shaw.ca>
14812
14813         * Documentation/user/changing-defaults.itely: fix index for set.
14814
14815         * Documentation/user/converters.itely: added convert-ly bugs list
14816         from CVS.
14817
14818 2004-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
14819
14820         * python/lilylib.py (setup_environment): Set GS_FONTPATH, GS_LIB
14821         to empty.  Fixes make web, using gs-gpl-8.01.  In fact,
14822         gs-afpl-8.50 has more trouble with make web (ie, uses *a lot* more
14823         resourses; 3x MAXSIZE, 4x MAXRSS, 1.5x user).
14824
14825         * mf/GNUmakefile (pfa_warning): Use less broken check.
14826
14827         * python/lilylib.py (setup_environment): Remove cruft from
14828         GS_FONTPATH.
14829
14830         * configure.in: Bump mftrace requirement to 1.1.1.
14831
14832 2004-12-20  Jan Nieuwenhuizen  <janneke@gnu.org>
14833
14834         * scm/output-svg.scm (beam): Use polygon.
14835
14836         * scm/lily-library.scm: Bugfix.
14837
14838         * Documentation/user/invoking.itely (Invoking lilypond): Bugfix.
14839
14840         * mf/GNUmakefile (ALL_GEN_FILES): Remove unbuildable Fontmap.lily.
14841
14842 2004-12-19  Werner Lemberg  <wl@gnu.org>
14843
14844         Prepare glyph shapes for mf2pt1 conversion.
14845
14846         * mf/feta-eindelijk: Some formatting.
14847         (multi_rest_x, multi_beam_height): Removed.  Unused.
14848         ("Quarter rest"): Use `intersectiontimes' to create a single
14849         outline.
14850         (rest_crook): Removed.  Unused.
14851         (draw_rest_bulb): Return path (without filling).  Update callers.
14852         Simplified.
14853         (draw_eighth_rest, "16th rest", "32th rest", "64th rest",
14854         "128th rest"): Simplify `pat'.
14855         Create single outline.
14856
14857 2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
14858
14859         * mf/GNUmakefile (ALL_GEN_FILES):
14860         (INSTALLATION_OUT_SUFFIXES): Remove unbuildable fonts.scale.
14861
14862         * scm/output-svg.scm (polygon, draw-line, dashed-line): New
14863         function.
14864
14865 2004-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14866
14867         * scm/output-texstr.scm (placebox): add routine
14868
14869         * VERSION (PACKAGE_NAME): release 2.5.4
14870
14871         * scm/framework-texstr.scm (output-framework): new file.  
14872
14873         * scm/output-texstr.scm: new file. Collect (TEXT . ) calls for TeX
14874         processing.
14875
14876         * Documentation/user/invoking.itely (Invoking lilypond): add SVG
14877
14878         * stepmake/stepmake/metafont-rules.make: make single SVG/PFA/PFB
14879         rule.
14880
14881         * configure.in (gui_b): bump mftrace requirement to 1.1.0
14882
14883         * mf/feta-bolletjes.mf (triangle): add s to 0triangle.
14884
14885         * mf/GNUmakefile (ALL_GEN_FILES): make SVG files too.
14886
14887 2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
14888
14889         * scm/framework-svg.scm (dump-page): Implement landscape.
14890
14891 2004-12-18  Jan Nieuwenhuizen  <janneke@gnu.org>
14892
14893         * lily/main.cc (setup_paths): Add svg to search path.
14894
14895         * scm/output-svg.scm:
14896         * scm/framework-svg.scm: Add pageSet.  Update.
14897         (dump-fonts): New function.
14898         (output-framework): Use it.
14899
14900         * mf/GNUmakefile: 
14901         * buildscripts/gen-bigcheese-scripts.py: Also generate SVG font.
14902
14903 2004-12-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14904
14905         * tex/lilyponddefs.tex: comment out new ifpdf code.
14906
14907 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
14908
14909         * GNUmakefile.in: 
14910         * SConstruct (symlink): Replace afm by otf.
14911
14912         * scm/framework-gnome.scm (gnome-main): Remove invocation of
14913         ly:pango-add-afm-decoder.
14914
14915         * lily/lily-guile.cc ("ly:pango-add-afm-decoder"): Build fix: Remove.
14916
14917 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14918
14919         * scm/output-ps.scm (new-text): don't access t glyph for getting
14920         space dimension.
14921
14922         * ly/init.ly: warn about \version
14923
14924         * lily/lexer.ll: set version-seen?
14925
14926 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
14927
14928         * scm/output-svg.scm (string->entities): Update.
14929
14930 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14931
14932         * lily/main.cc (setup_paths): replace afm by otf for path. 
14933
14934         * lily/pangofc-afm-decoder.cc: remove.
14935
14936         * lily/include/pangofc-afm-decoder.hh: remove.
14937
14938         * scm/framework-scm.scm (output-framework): new file.
14939
14940         * mf/GNUmakefile: remove SAUTER_FONTS.
14941         remove SVG/sodipodi hacks.
14942
14943         * scm/lily-library.scm (stderr): move stderr.
14944
14945         * mf/GNUmakefile: remove AFM support.
14946
14947         * buildscripts/mf-to-table.py (base): remove AFM support.
14948
14949         * lily/open-type-font.cc (design_size): use design_size
14950
14951 2004-12-17  Pedro Kroger  <kroeger@pedrokroeger.net>
14952
14953         * lily/font-metric.cc (LY_DEFINE): Fix the docstring.
14954
14955 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
14956
14957         * mf/GNUmakefile: Generate combined aybabtu info.
14958         * mf/aybabtu.pe.in (i): Load it.
14959
14960         * scm/framework-tex.scm (otf-font-load-command): Bugfix: subfonts
14961         are not symbols.
14962
14963         * lily/include/open-type-font.hh (count): New method.
14964
14965         * mf/aybabtu.pe.in: Typo.
14966
14967         * Documentation/user/out/lilypond-internals.nexi (Scheme
14968         functions): Typo.
14969
14970         * lily/include/guile-compatibility.hh (SCM_HASHTABLE_P): Add compat.
14971
14972 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14973
14974         * buildscripts/gen-bigcheese-scripts.py (i): use symbols for
14975         subfonts.
14976
14977         * scm/output-tex.scm (named-glyph): new function. This fixes TeX output.
14978
14979         * scm/framework-tex.scm (otf-font-load-command): load subfonts.
14980         (tex-font-command-raw): new function.
14981
14982         * lily/include/virtual-font-metric.hh (Module): remove file
14983
14984         * lily/virtual-font-metric.cc (Module): remove file.
14985         
14986
14987         * lily/open-type-font.cc (LY_DEFINE): ly:otf-font-glyph-info
14988         (get_indexed_char): read bbox from lily table if present.
14989
14990 2004-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14991
14992         * mf/GNUmakefile ($(outdir)/aybabtu.subfonts): rule for
14993         aybabtu.subfonts
14994
14995         * mf/feta-beugel.mf (y): don't number consecutively, instead, use
14996         global glyphname. Enables more than 64 glyphs in the OTF.
14997
14998 2004-12-16  Jan Nieuwenhuizen  <janneke@gnu.org>
14999
15000         * scm/font.scm (add-music-fonts): Load aybabtu iso all separate
15001         braces.
15002
15003         * lily/open-type-font.cc (design_size): Use 12 as default for
15004         design size.
15005
15006         * mf/aybabtu.pe.in: New file.  Merge all our braces.
15007
15008         * mf/GNUmakefile: Generate aybabtu.
15009
15010         * tex/lilyponddefs.tex: teTeX 3.0 pdfetex fix.
15011
15012 2004-12-14  Jan Nieuwenhuizen  <janneke@gnu.org>
15013
15014         * scm/lily-library.scm (char->unicode-index): Remove.
15015
15016         * scm/output-gnome.scm (text): Bugfix for plain string input.
15017         Updates.
15018
15019         * scm/output-svg.scm (svg-font): Add weight to font selection.
15020
15021 2004-12-14  Mats Bengtsson  <mabe@s3.kth.se>
15022
15023         * Documentation/topdocs/INSTALL.texi (Top): Point to
15024         buildscripts/out/clean-fonts instead of
15025         buildscripts/clean-fonts.sh. 
15026
15027 2004-12-13  Graham Percival  <gperlist@shaw.ca>
15028
15029         * input/regression/figured-bass.ly: attempt to clarify text.
15030
15031         * Documentation/user/notation.tely: add cindex for tag, attempt to
15032         add figured bass example.
15033
15034         * Documentation/user/changing-defaults: basic editing.
15035
15036 2004-12-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15037
15038         * buildscripts/gen-bigcheese-scripts.py (i): load .subfonts table. 
15039
15040         * lily/open-type-font.cc (LY_DEFINE): new function
15041         ly:font-sub-fonts
15042
15043         * lily/include/font-metric.hh (struct Font_metric): new method
15044         sub_fonts()
15045
15046         * lily/vaticana-ligature-engraver.cc (transform_heads): replace
15047         . with - in add.stem.
15048         
15049 2004-12-13  Jan Nieuwenhuizen  <janneke@gnu.org>
15050
15051         * scm/encoding.scm (coding-alist): Fix encodings for fetaNumber
15052         and fetaDynamic.
15053
15054         * lily/rest.cc (glyph_name): Change - to . .
15055
15056         * scm/output-gnome.scm (text): Hello world, again.
15057
15058         * scm/output-svg.scm (named-glyph): New function.  Hello world!
15059
15060         * lily/modified-font-metric.cc (index_to_charcode): New method.
15061
15062         * lily/include/font-metric.hh (index_to_charcode): New function.
15063
15064         * lily/font-metric.cc (ly:font-glyph-name-to-charcode): Use it in
15065         new function.
15066         (ly:font-glyph-to-index): Remove.
15067
15068 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15069
15070         * lily/open-type-font.cc (make_index_to_charcode_map): new method.
15071
15072         * mf/feta-autometric.mf (code): remove tex name from fet_beginchar.
15073
15074         * lily/open-type-font.cc (load_scheme_table): new function
15075
15076         * lily/dots.cc (print): replace - 
15077
15078         * lily/open-type-font.cc (attachment_point): new function.
15079         (load_table): read LILC table
15080
15081         * buildscripts/gen-bigcheese-scripts.py (Module): new
15082         file. Generate FF scripts.
15083
15084         * mf/feta-din10.mf: idem.
15085
15086         * mf/feta-nummer10.mf: remove mf files.
15087
15088         * mf/feta-alphabet.mf (dynamic_design_size): merge din and number font.
15089
15090 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
15091
15092         * lily/lily-guile.cc: Use scm_from_locale_stringn.
15093
15094         * lily/include/guile-compatibility.hh (scm_from_locale_stringn): Add
15095         compatibility.
15096
15097 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15098
15099         * lily/open-type-font.cc (get_indexed_char): scale metrics by
15100         design-size and units_per_EM.
15101
15102         * mf/bigcheese.pe.in: set PUA codepoints before loading din & nummer.
15103
15104 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
15105
15106         * mf/bigcheese.pe.in (i): Map to 0xe000 (PUA) for testing, which
15107         does not crash fontforge.
15108
15109         * scm/lily-library.scm (char->unicode-index): Hack to map onto
15110         PUA.
15111
15112 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15113
15114         * scm/framework-ps.scm (ps-embed-cff): new function.
15115
15116         * lily/lily-guile.cc (LY_DEFINE): make ly:gulp-file binary proof.
15117
15118 2004-12-12  Werner Lemberg  <wl@gnu.org>
15119
15120         * mf/bigcheese.pe.in: Add PUA mapping.
15121         Don't create Type 42 but bare CFF font.
15122
15123 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
15124
15125         * scm/output-gnome.scm (placebox): Hackery to get bigcheese symbols
15126         within canvas boundaries.
15127
15128         * mf/merge.pe.in: Set font names, version, license GPL.
15129
15130         * make/substitute.make: Add FONTFORGE.
15131
15132         * config.make.in (FONTFORGE): Add.
15133
15134         * configure.in (gui_b): Use PATH_PROG for fontforge.
15135
15136 2004-12-11  Graham Percival  <gperlist@shaw.ca>
15137
15138         * scm/define-markup-commands.scm: add baseline-skip to info
15139         about \column.
15140
15141 2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
15142
15143         * lily/font-metric.cc (ly:font-get-glyph-index): New function.
15144
15145         * scm/output-gnome.scm (named-glyph): Use it.
15146
15147         * scm/lily.scm (ly:all-stencil-expressions): Add named-glyph.
15148
15149         * flower/string.cc (substitute_char): Rename, rewrite, modify this.
15150         (upper_string, lower_string, reverse_string): Remove.
15151
15152         * configure.in (fontforge): Reinstate version check.
15153
15154         * ly/engraver-init.ly: Fix clef glyph names.
15155
15156         * lily/time-signature.cc (special_time_signature): Fix fraction
15157         glyph names.
15158
15159 2004-12-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15160
15161         * mf/merge.pe: new file.
15162
15163         * lily/freetype.cc: new file.
15164
15165         * lily/include/open-type-font.hh (class Open_type_font): new file.
15166
15167         * lily/include/freetype.hh: new file.
15168
15169         * lily/open-type-font.cc: new file.
15170
15171         * lily/all-font-metrics.cc (find_otf): new function.
15172
15173 2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
15174
15175         * lily/time-signature.cc (special_time_signature): Fix.
15176
15177         * configure.in (PKG_CONFIG_PATH): Remove stray `i'.  Check for
15178         GTK2 before checking for pango.  Fixes -fgnome.
15179
15180         * lily/font-metric.cc (LY_DEFINE): Also rename C name to match
15181         Scheme name.
15182
15183         * scm/define-markup-commands.scm:
15184         * scm/safe-lily.scm: Bugfix: ly:font-by-name.
15185
15186         * configure.in: Require makeinfo 4.7 (needed for @ifdocbook).
15187
15188         * stepmake/aclocal.m4 (STEPMAKE_GET_VERSION): Grok fontforge-like
15189         date versions.  Fixes configure.
15190         (STEPMAKE_CHECK_VERSION): Support optional actual program version
15191         argument.
15192
15193 2004-12-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15194
15195         * buildscripts/mf-to-table.py (write_ps_encoding): write real
15196         names in .enc
15197
15198         * lily/*.cc: use '.' iso. '-' for separating glyph name elements.
15199
15200 2004-12-09  Graham Percival  <gperlist@shaw.ca>
15201
15202         * Documentation/user/changing-defaults.itely: add info about
15203         make-dynamic-script
15204
15205         * Documentation/user/notation.itely: add link in dynamics to
15206         section about make-dynamic-script.
15207
15208 2004-12-09  Christian hitz  <chhitz@gmx.net>
15209
15210         * lily/lily-guile.cc: change MACOS_X to __APPLE__
15211
15212 2004-12-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15213
15214         * buildscripts/mf-to-table.py (parse_logfile): use . for
15215         concatting name and group.
15216         (parse_logfile): use M for Minus (negative.)
15217
15218         * lily/include/type-swallow-translator.hh
15219         (DECLARE_EVENT_SWALLOWER): ENTER_DESCRIPTION -> ADD_TRANSLATOR
15220
15221         * lily/*.cc: cosmetics around = sign.
15222
15223         * lily/paper-column.cc (Paper_column): copy rank_. This fixes
15224         lyric spacing on the penultimate column.
15225
15226 2004-12-05  Christian Hitz  <chhitz@gmx.net>
15227
15228         * configure.in:
15229         * lily/accidental-placement.cc:
15230         * lily/bar-line.cc:
15231         * lily/beam-concave.cc:
15232         * lily/beam-quanting.cc:
15233         * lily/beam.cc:
15234         * lily/bezier-bow.cc:
15235         * lily/bezier.cc:
15236         * lily/break-align-interface.cc:
15237         * lily/custos.cc:
15238         * lily/dimension-cache.cc:
15239         * lily/dot-column.cc:
15240         * lily/font-metric.cc:
15241         * lily/font-select.cc:
15242         * lily/gourlay-breaking.cc:
15243         * lily/grob-property.cc:
15244         * lily/grob.cc:
15245         * lily/lily-guile.cc:
15246         * lily/line-spanner.cc:
15247         * lily/lookup.cc:
15248         * lily/lyric-extender.cc:
15249         * lily/lyric-hyphen.cc:
15250         * lily/mensural-ligature.cc:
15251         * lily/midi-def.cc:
15252         * lily/misc.cc:
15253         * lily/note-collision.cc:
15254         * lily/note-column.cc:
15255         * lily/note-head.cc:
15256         * lily/paper-outputter.cc:
15257         * lily/percent-repeat-item.cc:
15258         * lily/rest-collision.cc:
15259         * lily/side-position-interface.cc:
15260         * lily/simple-spacer.cc:
15261         * lily/slur-configuration.cc:
15262         * lily/slur-scoring.cc:
15263         * lily/slur.cc:
15264         * lily/spaceable-grob.cc:
15265         * lily/spacing-spanner.cc:
15266         * lily/spanner.cc:
15267         * lily/staff-symbol-referencer.cc:
15268         * lily/stem.cc:
15269         * lily/stencil.cc:
15270         * lily/system-start-delimiter.cc:
15271         * lily/system.cc:
15272         * lily/text-item.cc:
15273         * lily/tie.cc:
15274         * lily/tuplet-bracket.cc:
15275         * lily/vaticana-ligature.cc: Fix for MacOS X: use <math.h> instead of
15276         <cmath> beacause isinf/isnan is undefined in <cmath>
15277
15278 2004-12-03  Mats Bengtsson  <mabe@s3.kth.se>
15279
15280         * cygwin/lily-wins.py (stat): remove old flag -p when calling lilypond.
15281
15282 2004-12-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15283
15284         * VERSION: release 2.5.3
15285         
15286 2004-11-29  Arno Waschk <arno@arnowaschk.de>
15287
15288         * mf/feta-schrift.mf: added <>-like articulation mark as "espressivo"
15289
15290 2004-12-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15291
15292         * scm/music-functions.scm (cue-substitute): voice counts start at 0.
15293
15294         * lily/note-head.cc (internal_print): always try the "s" head if
15295         u/d not found.
15296
15297         * scm/titling.scm (marked-up-headfoot): reinstate default tagline.
15298
15299 2004-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15300
15301         * mf/parmesan-heads.mf (overdone_heads): typos.
15302
15303 2004-11-30  Nicolas Sceaux  <nicolas.sceaux@free.fr>
15304
15305         * lily/parser.yy (markup): in markups, { .. } without command
15306         before are also flattened, ie \line must be explicitely used.
15307
15308         * Documentation/user/changing-defaults.itely:
15309         * Documentation/user/notation.itely: 
15310         * input/wilhelmus.ly: 
15311         * input/regression/instrument-name-markup.ly: 
15312         * input/regression/markup-score.ly: 
15313         * input/regression/new-markup-scheme.ly: 
15314         * input/regression/new-markup-syntax.ly: 
15315         * input/test/coriolan-margin.ly: use \line in markups where
15316         appropriate
15317         
15318 2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
15319
15320         * scm/new-markup.scm (map-markup-command-list): helper function
15321         used in parser.yy to map markup commands on a markup list.
15322
15323         * lily/parser.yy: get rid off < > in markups by treating { } as
15324         real lists.
15325
15326         * lily/lexer.ll: remove < > from markup lexer mode.
15327
15328         * scripts/convert-ly.py (conv): add rule for converting 
15329         \markup < > to \markup { }
15330
15331         * ly/titling-init.ly: 
15332         * input/test/coriolan-margin.ly: 
15333         * input/regression/new-markup-syntax.ly: 
15334         * input/regression/new-markup-scheme.ly: 
15335         * input/regression/multi-measure-rest-text.ly: 
15336         * input/regression/markup-stack.ly: 
15337         * input/regression/markup-score.ly: 
15338         * input/regression/instrument-name-markup.ly: 
15339         * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: 
15340         * input/mutopia/R.Schumann/romanze-op28-2.ly: 
15341         * input/mutopia/J.S.Bach/wtk1-fugue2.ly: 
15342         * input/wilhelmus.ly: 
15343         * Documentation/user/notation.itely: 
15344         * Documentation/user/music-glossary.tely: 
15345         * Documentation/user/changing-defaults.itely: change < > to { } in
15346         markups
15347
15348 2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15349
15350         * lily/accidental-placement.cc (position_accidentals): shortcut if
15351         no accidentals to place.
15352
15353 2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
15354
15355         * scm/define-grob-properties.scm (all-user-grob-properties): fixed
15356         typo s/ly:dimension ?/ly:dimension?/
15357
15358         * input/regression/lily-in-scheme.ly: 
15359         * input/regression/music-function.ly: 
15360         * ly/spanners-init.ly (assertBeamSlope): 
15361         * scm/music-functions.scm (def-grace-function): add the paper
15362         argument to music function definitions.
15363
15364 2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15365
15366         * lily/moment.cc (LY_DEFINE):
15367         ly:moment-main-{denominator,numberator}, new function.
15368
15369         * lily/score-engraver.cc (typeset_all): assign to column on basis
15370         of axis-group-parent-X setting.
15371
15372         * lily/axis-group-engraver.cc (process_acknowledged_grobs): do
15373         add_element() on basis of axis-group-parent-Y setting.
15374
15375         * lily/grob.cc: add axis-group-parent-{XY} properties.
15376
15377         * input/regression/spacing-stick-out.ly: new file.
15378
15379         * lily/simple-spacer.cc (add_columns): use binary search for
15380         setting column rods. Changes O(n^2) to O(n log(n)) for
15381         constructing spacing problem from columns.
15382         (add_columns): read allow-outside-line to make sure no texts stick
15383         out.
15384         (solve): Simple_spacer::is_active() only determines
15385         satisfies_constraints_ for non-ragged typesetting.
15386
15387         * lily/simultaneous-music.cc (to_relative_octave): only set
15388         old_relative_used if return pitch actually changed.
15389
15390         * scm/define-context-properties.scm
15391         (all-user-translation-properties): change to match implementation.
15392
15393         * python/lilylib.py: Replace re.match by re.search and adds "-c
15394         showpage" to the gs command line (Johannes Schindelin)
15395
15396         * scm/framework-ps.scm (output-preview-framework): sanitize bbox
15397         before processing. Prevents crash when inf is in the extent.
15398
15399         * scm/define-markup-commands.scm (note-by-number): add "s" to
15400         "noteheads-" glyphname.
15401  
15402         * lily/parser.yy (Generic_prefix_music): supply parser argument to
15403         music function as well.
15404         
15405 2004-11-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15406
15407         * VERSION: release 2.5.2
15408
15409         * Documentation/user/changing-defaults.itely (Creating titles):
15410         add breakbefore variable.
15411
15412         * lily/paper-book.cc (set_system_penalty): new function. Set
15413         penalty_ based on breakBefore setting
15414
15415         * lily/context-specced-music-iterator.cc (construct_children):
15416         interpret special context id $uniqueContextId 
15417
15418         * lily/context.cc (create_unique_context): new method. Move
15419         creation of unique (\new) contexts into interpreting phase. This
15420         makes
15421
15422           foo= \new Staff ..
15423           << \foo \foo >>
15424
15425         produce 2 staves.
15426         
15427
15428         * scm/define-music-properties.scm (all-music-properties): add
15429         quoted-voice-direction
15430
15431         * ly/music-functions-init.ly: killCues function.
15432
15433         * scm/music-functions.scm (cue-substitute): move creation of voice
15434         contexts further to the back. 
15435
15436 2004-11-25  Werner Lemberg  <wl@gnu.org>
15437
15438         * tex/GNUmakefile ($(outdir)/latin1.enc): Replace `/minus' with
15439         `/hyphen' in encoding vector to get correct glyph name for EC fonts.
15440
15441 2004-11-24  Erik Sandberg  <ersa9195@student.uu.se>
15442
15443         * buildscripts/guile-gnome.sh: Fixed typo.
15444
15445 2004-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15446
15447         * lily/lexer.ll: add < >  to markup lexer mode (backportme)
15448
15449         * scripts/abc2ly.py (dump_slyrics): add ord(). 
15450
15451         * lily/note-heads-engraver.cc (process_music): add shapeNoteStyles
15452         to regular engraver. 
15453
15454 2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15455
15456         * mf/feta-bolletjes.mf (triangle): rewrite solfa heads.
15457
15458 2004-11-22  Jan Nieuwenhuizen  <janneke@gnu.org>
15459
15460         * scm/define-markup-commands.scm (fill-line): Typo.
15461
15462         * buildscripts/guile-gnome.sh (GGVERSION): Build update for 2.7.96
15463         and newer.
15464
15465 2004-11-22  Erik Sandberg  <ersa9195@student.uu.se>
15466
15467         * ly/dynamic-scripts-init.ly: Fixed typo.
15468
15469 2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15470
15471         * mf/feta-bolletjes.mf (overdone_heads): cleanup triangle
15472         note-head, to have different attachment points for up and down.
15473
15474         * mf/feta-bolletjes.mf: merge solfa heads into main note heads.
15475
15476         * mf/feta-generic.mf (else): remove solfa.
15477
15478         * mf/feta-bolletjes.mf (tishape): remove unicode test.
15479
15480         * scm/define-context-properties.scm
15481         (all-user-translation-properties): add shapeNoteStyles property.
15482
15483         * lily/shape-note-heads-engraver.cc (process_music): new file.
15484
15485         * lily/event.cc (transpose): call Event::transpose() for
15486         transposing the tonic.
15487
15488 2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
15489
15490         * scm/output-gnome.scm: Save some pointers about pango/fontconfig
15491         Unicode/OpenType and AFM.
15492
15493         * lily/include/guile-compatibility.hh (scm_from_bool): Add.
15494
15495 2004-11-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15496
15497         * lily/grob.cc (Grob): idem. Plugs mem leaks. 
15498
15499         * lily/context.cc (Context): unprotect key from ctor.
15500
15501         * scm/stencil.scm (stack-lines): return empty-stencil if argument
15502         is '()
15503         (stack-stencils): idem.
15504
15505         * Documentation/user/changing-defaults.itely (Creating titles):
15506         document new title layout options.
15507
15508         * lily/parser.yy (lilypond_header_body): copy previous
15509         $globalheader if present.
15510
15511         * lily/ly-module.cc (LY_DEFINE): rename ly:import-module to
15512         ly:module-copy
15513         
15514         * scm/page-layout.scm (marked-up-headfoot): remove old functions.
15515
15516         * scm/titling.scm: remove old titling functions
15517
15518         * lily/stencil.cc (translate): remove absolute dimension.
15519
15520         * ly/titling-init.ly (oddFooterMarkup): new file. Generate titles
15521         via markup.
15522
15523         * scm/page-layout.scm (marked-up-headfoot): create header/footer
15524         field from user-supplied markup
15525
15526         * scm/define-markup-commands.scm (on-the-fly): new markup
15527         command. Enter SCM markup procedure directly in Scheme.
15528         (fromproperty): new markup command. Read markup from props argument.
15529
15530         * scm/titling.scm (marked-up-title): create title via
15531         user-specified markup. 
15532
15533         * scm/define-markup-commands.scm (column): remove empty stencils
15534         from column.
15535
15536         * lily/ly-module.cc (LY_DEFINE): use ly_module_lookup(). This does
15537         not have side-effect of creating variable stub.
15538
15539         * lily/stencil-scheme.cc (LY_DEFINE): add ly:stencil-empty?
15540
15541 2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
15542
15543         * scm/encoding.scm (coding-alist): 
15544         * scm/font.scm (add-ec-fonts):
15545         * ly/paper-defaults.ly: Use actual name for EC fontencoding:
15546         Extended-TeX-Font-Encoding---Latin.
15547
15548         * lily/side-position-interface.cc (general_side_position): Add
15549         actual offset to error message (avoid constant error messages).
15550
15551         * lily/all-font-metrics.cc (find_font): Add "lm" to try-AFM-first
15552         block.
15553
15554         * lily/font-select.cc (select_encoded_font)
15555         (get_font_by_mag_step, get_font_by_design_size): 
15556         * lily/modified-font-metric.cc (Modified_font_metric): 
15557         * lily/paper-def.cc (find_scaled_font): Add font_encoding parameter.
15558
15559         * scm/encoding.scm (coding-alist): Add fetaDynamic.
15560         (read-encoding-file): Bugfix: do not require space after bracket.
15561
15562         * scm/font.scm (add-cork-lm-fonts): Remove lmbxi8 and lmbxi14,
15563         these do not exist.
15564
15565 2004-11-20  Graham Percival  <gperlist@shaw.ca>
15566
15567         * Documentation/user/notation.itely: added info about typesetting
15568         boxed bar numbers.
15569
15570 2004-11-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15571
15572         * flower/interval.cc (T_to_string): gcc4 fixes.
15573
15574         * scm/define-markup-commands.scm (fill-line): use
15575         stack-stencils. This fixes problems with putting already centered
15576         stencils in a line.
15577
15578         * VERSION: release 2.5.1
15579
15580         * lily/bar-line.cc (get_staff_bar_size): add line thickness.
15581
15582 2004-11-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15583
15584         * input/example-[1-3].ly: simplify.
15585
15586         * lily/cluster-engraver.cc (try_music): react to busy-playing-event
15587
15588         * scm/output-ps.scm (new-text): new function. Use glyphshow to
15589         show glyphs.
15590
15591         * scm/encoding.scm (decode-byte-string): new function.
15592
15593         * scripts/convert-ly.py (conv): add warning about
15594         set-global-staff-size.
15595
15596         * Doxyfile: add. 
15597
15598         * scripts/convert-ly.py (conv): add raggedlastbottom rule
15599         (conv): warn for TextSpanner split.
15600         (conv): warn for textheight.
15601
15602 2004-11-19  Jan Nieuwenhuizen  <janneke@gnu.org>
15603
15604         * GNUmakefile.in (install-WWW): Invoke install-info, so that when
15605         building the documentation, info with images are installed.
15606         (final-install): Fix description.  Mention sourcing of login
15607         scripts (instead of running).
15608
15609 2004-11-18  Jan Nieuwenhuizen  <janneke@gnu.org>
15610
15611         * Debian lmodern support.  Note that LilyPond will issue warnings
15612         
15613             no such encoding: "FontSpecific"
15614
15615           The font selection mechanism wants to get the encoding from the
15616           font itself, but the idea of lmodern is that it is usable with
15617           different encodings, ie, Lily should get the encoding from the
15618           font tree, rather than the font itself.  This would require some
15619           more work.
15620         
15621         * configure.in: Test for and accept lmodern if EC fonts not found.
15622
15623         * scm/framework-tex.scm (font-load-command): TeX font name
15624         mangling for latin1 encoded cork-lm fonts.
15625         (convert-to-ps): Load lm.map if available.
15626
15627         * ly/paper-defaults.ly: Use cork-lm encoding if ec is not
15628         available.
15629
15630         * scm/encoding.scm (coding-alist): Add cork-lm encoding.
15631
15632         * scm/font.scm: Add header.  Autoload cork-lm and ec fonts if
15633         available.
15634
15635         * lily/kpath.cc (ly_kpathsea_find_file): Rename.  Do not use
15636         path for absolute file name, that is silly.
15637
15638         * lily/score-engraver.cc (initialize): 
15639
15640         * Documentation/user/GNUmakefile (local-install-info): Invoke
15641         install-info --remove first.
15642
15643         * #include cleanup (Andreas Scherer).
15644
15645 2004-11-18  Heikki Junes  <hjunes@cc.hut.fi>
15646
15647         * input/test/script-abbreviations.ly: fix typos.
15648
15649 2004-11-17  Werner Lemberg  <wl@gnu.org>
15650
15651         * python/lilylib.py (options_help_str): Support pretty-printing of
15652         newlines in fourth element of option description.
15653
15654         * scripts/lilypond-book.py (option_definitions): Use new lilylib
15655         feature.
15656         Sort options.
15657
15658         * Documentation/user/lilypond-book.itely: Finish update.
15659
15660 2004-11-17  Jan Nieuwenhuizen  <janneke@gnu.org>
15661
15662         * Documentation/user/macros.itexi: Add comment about \command.
15663
15664         * Documentation/user/lilypond.tely:
15665         * Documentation/user/lilypond-book.itely: Fix names of lilypond
15666         and lilypond-book nodes, so that `info lilypond' visits the manual
15667         at top level, and `info lilypond-book' visits the lilypond-book
15668         section.
15669
15670         * Documentation/user/GNUmakefile (local-install-info): Fix rules
15671         and packager messages.
15672
15673         * lily/pangofc-afm-decoder.cc: Update test.
15674
15675 2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
15676
15677         * scm/lily-library.scm (char->unicode-index): New function.
15678
15679         * scm/output-gnome.scm: 
15680         * scm/output-svg.scm: Cleanup.  Map custom fonts to PUA.
15681
15682         * Proper naming of file name throughout; s/filename/file[-_]name/.
15683
15684         * lily/modified-font-metric.cc ("ly:font-encoding"): New function.
15685
15686         * lily/pangofc-afm-decoder.cc (pango_fc_afm_get_glyph): Map onto PUA.
15687
15688 2004-11-16  Werner Lemberg  <wl@gnu.org>
15689
15690         * scripts/lilypond-book.py: The Lord has commanded me to use only
15691         tabs for indentation.  Your humble servant obeys.
15692
15693 2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
15694
15695         * scm/output-svg.scm: Font fixes.  Sodipodi now groks svg
15696         including font, if LilyPond-feta font is only feta font in path.
15697
15698         * scm/output-gnome.scm (text): Revert to file name of font if font
15699         has no name.  Fixes ec font selection.
15700         (char): Bugfix: do not utf8 twice.  Fixes clefs.
15701
15702         * scm/framework-svg.scm:
15703         * scm/output-svg.scm: New file.  TODO: figure out how to
15704         do character by index in font.
15705
15706         * scm/output-sodipodi.scm: Remove.
15707
15708         * scm/output-ps.scm (stem): Remove.
15709
15710 2004-11-15  Jan Nieuwenhuizen  <janneke@gnu.org>
15711
15712         * scm/output-gnome.scm (beam): New function.
15713         (slur): Round corners.
15714         (round-filled-box): Round corners.
15715
15716 2004-11-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15717
15718         * scm/output-gnome.scm (beam): add function.
15719         (draw-line): new routine.
15720         (dashed-line): stub; call draw-line
15721         (polygon): new routine.
15722
15723 2004-11-15  Werner Lemberg  <wl@gnu.org>
15724
15725         * Documentation/user/lilypond-book.itely: Revise section on
15726         lilypond-book options.
15727         Other minor fixes.
15728
15729         * scripts/lilypond-book.py: Change indentation to 4.
15730         Minor formatting.
15731
15732 2004-11-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15733
15734         * lily/system.cc (apply_tweaks): new function. Run tweaks on all
15735         grobs that have tweaks specced.
15736         
15737 2004-11-14  Heikki Junes  <hjunes@cc.hut.fi>
15738
15739         * Documentation/user/sound-output.itexi: add code snippets for MIDI.
15740
15741 2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
15742
15743         * lily/font-metric.cc (get_indexed_char_stencil): Bugfix: get
15744         actual char #, not 0 based index.
15745
15746         * lily/system-start-delimiter.cc (staff_brace): Start at 65.
15747
15748         * mf/feta-beugel.mf: Actually start at char #65.  Add header.
15749         Warning: do make -C mf clean.
15750
15751         * lily/context-property.cc: Compile fix.
15752
15753         * scm/output-gnome.scm: Add ec-fonts-mftraced to ~/.fonts.conf.
15754         Grok ec-fonts, braces and dynamics.
15755
15756         * scm/framework-gnome.scm (gnome-main): Register braces with pango.
15757
15758 2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15759
15760         * lily/include/tweak-registration.hh: new file.
15761
15762         * lily/tweak-registration.cc: new file.
15763
15764         * scm/framework-gnome.scm (save-tweaks): use new key mechanism for
15765         saving tweaks.
15766
15767         * scm/output-gnome.scm (text): comment dribble.
15768
15769 2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
15770
15771         * lily/pangofc-afm-decoder.cc (main): Test more feta fonts.
15772
15773         * scm/output-gnome.scm (bezier-sandwich): New function.  Reset
15774         path-def before using.  Fixes muchtomany slurs in wrong places
15775         bug.
15776
15777 2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15778
15779         * lily/grob-scheme.cc (LY_DEFINE): add new function ly:grob-key.
15780
15781         * lily/include/object-key-undumper.hh (Module): new file.
15782
15783         * lily/object-key-undumper.cc (Module): New file. Deserialize
15784         keys. SCM bindings
15785
15786         * lily/object-key-dumper.cc (Object_key_dumper): idem.
15787         Provide SCM bindings.
15788
15789         * lily/include/object-key-dumper.hh (class Object_key_dumper): 
15790         new file. Serialize object keys.
15791         
15792         * lily/object-key.cc (dump): new function.
15793         (as_scheme): new virtual function
15794         (undump): new function
15795         (undumpers): new table.
15796
15797         * lily/include/global-context.hh (Context): take \score key upon init.
15798
15799         * lily/object-key-dumper.cc (serialize_key): new file.
15800
15801         * lily/include/object-key-dumper.hh (class Object_key_dumper): new file.
15802
15803         * lily/lily-lexer.cc: remove \quote.
15804
15805         * lily/lookup.cc (triangle): rewrite, obviating symmetric_x_triangle().
15806
15807         * lily/context.cc (Context): take key argument in ctor.
15808         (create_context): new function
15809
15810         * lily/grob.cc (Grob): take key argument in ctor.  
15811
15812         * lily/lilypond-key.cc (do_compare): new file.
15813
15814         * lily/object-key.cc (Object_key): new file.
15815
15816         * lily/include/object-key.hh (class Object_key): new file.
15817
15818         * lily/include/lilypond-key.hh (class Lilypond_context_key): new file.
15819
15820 2004-11-13  Graham Percival  <gperlist@shaw.ca>
15821
15822         * Documentation/user/lilypond-book.itely: add small warning about
15823         noindent default in lilypond-book.
15824
15825         * Documentation/user/converters.itely: add examples for convert-ly.
15826
15827         * Documentation/user/examples.itely: change version string in templates
15828         to 2.4.0.
15829
15830 2004-11-12  Karl Hammar  <karl@aspodata.se>
15831
15832         * GNUmakefile.in (local-WWW-post): `find ...` overflows the
15833         cmdline, use xargs instead (backportme)
15834
15835 2004-11-10  Andreas Scherer  <andreas_mutopia@freenet.de>
15836         
15837         * Documentation/user/: Numerous fixes in the user manual.
15838
15839 2004-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15840
15841         * lily/parser.yy (re_rhythmed_music): search music expression for
15842         context-id, surround by \new Voice if not found. Fixes:
15843         addlyrics-second-staff.ly
15844
15845         * VERSION: 2.5.0 released.
15846         
15847 2004-11-12  Jan Nieuwenhuizen  <janneke@gnu.org>
15848
15849         * Documentation/index.html.in: Fix url to one big page.  (backportme)
15850
15851         * Documentation/user/GNUmakefile: Separate rules for split and
15852         unsplit html documents.  Remove perl massaging.  (backportme)
15853
15854 2004-11-11  Graham Percival  <gperlist@shaw.ca>
15855
15856         * Documentation/user/lilypond-book.itely: add short warning about
15857         \lilypond{} in LaTeX docs.
15858
15859 2004-11-11  Jan Nieuwenhuizen  <janneke@gnu.org>
15860
15861         * stepmake/aclocal.m4: Barf if kpathsea/kpathsea.h is not
15862         found.  (backportme)
15863
15864         * Documentation/topdocs/INSTALL.texi (ec-fonts-mtraced): Add
15865         version requirement.  (backportme)
15866
15867         * configure.in: Be explicit about old versions of
15868         ec-fonts-mtraced.  (backportme)
15869
15870         * lily/context-selector.cc (set_tweaks): New function.
15871         * lily/grob-selector.cc (set_tweaks): (Re)set hash table.  Fixes
15872         web with -DTWEAK.
15873
15874         * Documentation/user/introduction.itely (Automated engraving):
15875         Remove fragment option.  Fixes web.
15876
15877         * lily/context-property.cc (make_item_from_properties):
15878         * lily/context.cc (add_context)[TWEAK]: Tweak registration behind
15879         #ifdef.
15880
15881         * scm/define-context-properties.scm
15882         (all-internal-translation-properties): Add tweakRank and tweakCount.
15883
15884         * lily/grob.cc: 
15885         * scm/define-grob-properties.scm (all-internal-grob-properties):
15886         Add tweak-rank and tweak-count.
15887
15888 2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
15889
15890         * scm/output-gnome.scm (string->utf8-string, char->utf8-string):
15891         New function.
15892         (text): Use them.
15893
15894         * scm/framework-gnome.scm (item-event): Add support from TLA.  Support
15895         animated/opaque grob dragging tweaks.
15896
15897         * buildscripts/guile-gnome.sh: Update.
15898
15899 2004-11-10  Mats Bengtsson  <mabe@s3.kth.se>
15900
15901         * scm/define-grobs.scm (all-grob-descriptions): Added
15902         line-interface to the LigatureBracket object.
15903
15904 2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
15905
15906         * scm/framework-gnome.scm (item-event): Support non-animated mouse
15907         dragging tweaks.
15908
15909         * lily/lily-guile.cc (ly_to_string, ly_to_symbol): New function.
15910
15911         * lily/context-selector.cc (store_context): New function.
15912
15913         * lily/grob-selector.cc (register_grob)[TWEAK]: Apply tweak.
15914         (store_grob): New function.
15915         (identify_grob): Add Moment parameter.
15916
15917         * lily/lily-parser.cc (parse_file)[TWEAK]: Read .ly.t file if it
15918         exists.
15919
15920         * scm/framework-gnome.scm (save-tweaks): Write as alist.
15921
15922 2004-11-09  Jan Nieuwenhuizen  <janneke@gnu.org>
15923
15924         * scm/framework-gnome.scm (item-event): Print grob id.
15925         (save-tweaks): New function.
15926         (tweak): New funtion.
15927         (item-event): Use it, bound to arrow keys.
15928
15929         * lily/context-property.cc (make_item_from_properties): Register grob.
15930         * lily/context.cc (add_context): Register context.
15931
15932         * lily/include/context-selector.hh:
15933         * lily/include/grob-selector.hh:
15934         * lily/context-selector.cc:
15935         * lily/grob-selector.cc: New file.
15936
15937 2004-11-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15938
15939         * lily/slur.cc: add 'positions to interface
15940
15941         * lily/main.cc: reinstate PS as standard output format. 
15942
15943         * scm/framework-tex.scm (output-preview-framework): print systems
15944         up to first non title system.
15945
15946         * lily/grace-engraver.cc (start_translation_timestep): split
15947         scm_cadddr
15948         
15949 2004-11-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15950
15951         * lily/quote-iterator.cc (Module): remove old quote-iterator
15952
15953         * scm/define-music-types.scm (music-descriptions): move
15954         NewQuoteMusic over QuoteMusic
15955
15956         * Documentation/user/notation.itely (Formatting cue notes): use
15957         \cueDuring.
15958
15959         * lily/new-quote-iterator.cc (quote_ok): new function.
15960
15961         * input/regression/quote-cue-during.ly: new file.
15962
15963         * input/regression/quote-grace.ly: new file.
15964
15965         * scm/define-context-properties.scm (Module): change definition of
15966         graceSettings
15967
15968         * lily/context-property.cc (Module): rename from
15969         translator-property.cc
15970
15971         * lily/context.cc (context_name_symbol): new function
15972
15973         * lily/grace-engraver.cc: new file. Set properties for grobs based
15974         on the grace-ness of now_moment().
15975
15976         * scm/music-functions.scm (add-grace-property): use list
15977         iso. vector for graceSettings
15978         remove set-{start,stop}-grace-properties. 
15979
15980         * lily/new-quote-iterator.cc (construct_children): set
15981         quote_outlet_ if no quoted-context-{id,type} specified.
15982
15983         * scripts/convert-ly.py (conv): \quote -> \quoteDuring.
15984
15985         * lily/parser.yy (command_element): remove \quote.
15986
15987         * ly/music-functions-init.ly (location): add quoteDuring music
15988         function. 
15989
15990         * lily/lexer.ll: allow \encoding in lyrics as well.  Remove
15991         optional semicolon. (backportme)
15992
15993 2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
15994
15995         * python/GNUmakefile (STEPMAKE_TEMPLATES): Unset USER_LDFLAGS, no
15996         need to link to GUILE et al.
15997
15998 2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15999
16000         * scm/define-music-properties.scm (all-music-properties): add
16001         quoted-context-type, quoted-context-id.
16002
16003         * scm/lily.scm (type-check-list): new function.
16004         
16005         * scm/lily-library.scm: new file. Generic library routines.
16006
16007         * lily/parser.yy (Generic_prefix_music): move typechecking out of
16008         parser.
16009
16010         * ly/music-functions-init.ly: add quoteDuring function.
16011
16012         * lily/include/music-iterator.hh (class Music_iterator): rename
16013         set_translator -> set_context
16014
16015         * lily/parser.yy (Generic_prefix_music_scm): add
16016         MUSIC_FUNCTION_SCM_SCM_MUSIC
16017
16018         * scm/lily.scm (sanitize-command-option): new function. (backportme)
16019
16020         * scm/framework-tex.scm (header): sanitize TeX paper size.
16021         (backportme)
16022
16023 2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
16024
16025         * elisp/lilypond-indent.el (LilyPond-indent-level): 2 is now standard.
16026
16027         * tex/lilyponddefs.tex: If no inputencoding use latin1.  (backportme)
16028
16029         * scm/framework-tex.scm (font-load-command): Use T1 if no
16030         font-encoding set.  (backportme)
16031
16032         * scm/lily.scm (postscript->pdf): Remove .pdf file if it
16033         exists before converting.  (backportme)
16034
16035         * scm/framework-tex.scm (convert-to-dvi): Remove .dvi file if it
16036         exists before converting.  (backportme)
16037         (convert-to-ps): Remove .ps file if it exists before
16038         converting.  (backportme)
16039
16040         * lily/lexer.ll: Remove extra progress newline, use present tense.
16041
16042         * scm/paper.scm (paper-alist): public.
16043         * scm/framework-tex.scm (convert-to-ps):
16044         * scm/lily.scm (postscript->pdf): Do not leak papersizename into
16045         command line.
16046
16047 2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16048
16049         * scm/lily.scm (ly:system): add > /dev/null 2>&1 . (backportme)
16050
16051         * lily/recording-group-engraver.cc (derived_mark): mark
16052         now_events_. (backportme)
16053
16054 2004-11-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16055
16056         * mf/GNUmakefile: use Fedora-3 in download link. (backportme.)
16057
16058         * scm/framework-tex.scm (convert-to-dvi): use ly:system for
16059         invoking latex. (backportme.)
16060
16061         * lily/stem.cc (off_callback): center stems for all rest stems.
16062
16063 2004-11-05  Werner Lemberg  <wl@gnu.org>
16064
16065         * Documentation/user/lilypond.tely: Add more guidelines for writing
16066         lilypond texinfo documents.
16067
16068 2004-11-05  Heikki Junes  <hjunes@cc.hut.fi>
16069
16070         * Documentation/index.html.in: remove <hr>.
16071
16072         * THANKS: change 2.3 to 2.4.
16073
16074 2004-11-05  Jan Nieuwenhuizen  <jannneke@gnu.org>
16075
16076         * scm/output-gnome.scm: More fontconfig comment.
16077
16078 2004-11-05  Pedro Kroger  <kroeger@pedrokroeger.net>
16079
16080         * GNUmakefile.in ($(builddir)/share/lilypond-force): create the
16081         <package> directory in $(builddir)/share according with
16082         PACKAGE_NAME defined in the VERSION file.
16083
16084 2004-11-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16085
16086         * lily/beam.cc (rest_collision_callback): use local beam
16087         multiplicity.
16088
16089         * input/regression/stem-stemlet.ly: new file.
16090
16091         * lily/stem.cc (add_head): store rests as well.
16092
16093         * scm/define-grob-properties.scm (all-user-grob-properties): add
16094         stemlet-length
16095
16096         * lily/stem.cc: store rests as well.
16097         
16098         * input/regression/new-slur.ly: mention forcing.
16099
16100 2004-11-04  Werner Lemberg  <wl@gnu.org>
16101
16102         * Documentation/user/*: A new round of layout fixes and document
16103         structure cleanup.
16104
16105 2004-11-04  Heikki Junes <hjunes@cc.hut.fi>
16106
16107         * Documentation/user/lilypond.tely: changes 2.3.x to 2.5.x.
16108
16109 2004-11-04  Jan Nieuwenhuizen  <janneke@gnu.org>
16110
16111         * Documentation/topdocs/INSTALL.texi (Top): Remove geometry.
16112
16113 2004-11-03  Jan Nieuwenhuizen  <janneke@gnu.org>
16114
16115         * Documentation/topdocs/INSTALL.texi (Top): Fix geometry url (dax).
16116
16117         * lily/lily-parser.cc (LY_DEFINE): Remove "Now " from message.
16118
16119         * lily/main.cc (main): Invoke identify.
16120
16121         * scm/lily.scm (postscript->pdf): Remove progress newline.
16122         Write progress to stderr.
16123
16124         * lily/paper-book.cc (output): Remove progress newline.
16125
16126         * scm/framework-tex.scm (convert-to-dvi, convert-to-ps): Call
16127         gettext on user messages, and remove whitespace.
16128
16129         * lily/paper-outputter.cc (get_paper_outputter): Add progress newline.
16130
16131         * scripts/lilypond-latex.py (program_name): Bugfix: use only basename of
16132         argv[0] (Thomas Scharkowski).
16133
16134         * configure.in: Bugfix: add REQUIRED parameter to STEPMAKE_TEXMF
16135         call (carlyannehorse).  Also check for mf and mf-nowin.  Add check
16136         for ec-fonts-mtraced.
16137
16138         * GNUmakefile.in (builddir-exec): Add symlink tex/out.  Fixes
16139         --srcdir build (Bertalan).
16140
16141         * stepmake/aclocal.m4 (STEPMAKE_GUILE_DEVEL): Check for guile
16142         headers and library too (Laura Conrad).
16143
16144         * Documentation/topdocs/INSTALL.texi (Top): Mention development
16145         package for guile too (Laura Conrad).
16146
16147         * lily/main.cc (usage): Typo.
16148
16149 2004-11-02  Werner Lemberg  <wl@gnu.org>
16150
16151         * Documentation/user/notation.ly: More fixes to improve appearance.
16152
16153         * tex/texinfo.tex: Updated from texinfo CVS -- this version provides
16154         better output for multicolumn tables.
16155
16156 2004-11-01  Mats Bengtsson  <mabe@s3.kth.se>
16157
16158         * lily/main.cc (dir_info): Fixed typo in the printouts.
16159
16160 2004-11-01  Werner Lemberg  <wl@gnu.org>
16161
16162         * buildscripts/mf-to-table.py (write_fontlist): Improve formatting
16163         of output.
16164         Set `per_line' to 2; replace hard-coded value with it.
16165
16166         * Documentation/user/*: Many fixes to improve appearance of
16167         printed manual.
16168
16169 2004-11-01  Werner Lemberg  <wl@gnu.org>
16170
16171         * Documentation/user/changing-defaults.itely,
16172         Documentation/user/notation.ly,
16173         Documentation/user/programming-interface.itely: Use @/.
16174         Fix formatting of some lilypond snippets and tables.
16175
16176         * scripts/lilypond-book.py (compose_ly): Provide useful default
16177         for LINEWIDTH in `override'.
16178
16179 2004-10-31  Graham Percival  <gperlist@shaw.ca>
16180
16181         * Documentation/user/invoking.itely: change "3.0" -> "2.4"
16182
16183 2004-10-31  Werner Lemberg  <wl@gnu.org>
16184
16185         Resetting @exampleindent to `5' gives ugly results with texinfo's
16186         DVI output.  Use `@format @exampleindent 0 ... @end format' instead
16187         (if not quoting) to change @exampleindent only locally.
16188
16189         * scripts/lilypond-book.py (NOQUOTE): New variable.
16190         (output) [LATEX]: Remove AFTER and BEFORE.
16191         [TEXINFO]: Remove AFTER and BEFORE.
16192         Fix QUOTE and VERBATIM pattern.
16193         Add NOQUOTE pattern.
16194         (Lilypond_snippet) [output_info, output_latex]: Don't handle AFTER
16195         and BEFORE.
16196         [output_texinfo]: Use NOQUOTE.
16197
16198 2004-10-31  Graham Percival  <gperlist@shaw.ca>
16199
16200         * Documentation/user/changing-defaults.itely: clarify paper
16201         size commands with correct info.
16202
16203         * Documentation/user/lilypond-book.itely: add more docs for
16204         filename extensions.
16205
16206 2004-10-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16207
16208         * VERSION (PATCH_LEVEL): Branch lilypond_2_4, release 2.4.0
16209         (PATCH_LEVEL): start 2.5.0.
16210
16211 #Local variables:
16212 #coding: utf-8
16213 #End:
16214