]> git.donarmstrong.com Git - lilypond.git/blob - ChangeLog
* scripts/lilypond-book.py: Fix typo gs-load-font -> gs-load-fonts
[lilypond.git] / ChangeLog
1 2006-10-04  Mats Bengtsson  <mabe@drongo.s3.kth.se>
2
3         * scripts/lilypond-book.py: Fix typo gs-load-font -> gs-load-fonts
4          and include-eps-font -> include-eps-fonts
5
6 2006-10-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
7
8         * lily/multi-measure-rest-engraver.cc: use internalBarNumber
9
10         * lily/timing-translator.cc: list properties.
11         (start_translation_timestep): update internalBarNumber too.
12
13         * scm/define-context-properties.scm
14         (all-user-translation-properties): add internalBarNumber.
15
16         * input/regression/spacing-no-note.ly: new file.
17
18         * buildscripts/output-distance.py (link_file): verbosity for OSError.
19
20         * lily/book.cc: #include cleanup.
21
22         * lily/include/lily-guile-macros.hh: add assert to
23         scm_or_str2symbol(SCM).
24
25         * VERSION (PATCH_LEVEL): bump version.
26
27         * lily/spacing-spanner.cc (musical_column_spacing): handle
28         musical->nonmusical spacing case, where there is no spacing
29         wish. Fixes issue #61.
30
31         * lily/pango-font.cc (text_stencil): allow 'tight' bounds.
32         (pango_item_string_stencil): use logical rect horizontally (to
33         preserve spaces), ink_rect vertically (for time signatures).
34
35         * lily/font-metric.cc (word_stencil): new interface function
36
37         * input/regression/utf-8-mixed-text.ly: new file.
38
39         * lily/percent-repeat-engraver.cc (listen_percent): remove
40         spurious warning.
41
42         * lily/phrasing-slur-engraver.cc (acknowledge_script): only ack
43         non-dynamic scripts. Fixes #30.
44
45         * lily/slur.cc (outside_slur_callback): make offset_scm optional.
46
47         * lily/beam.cc (rest_collision_callback): make prev_offset optional.
48
49         * lily/grob-closure.cc (chain_offset_callback): don't pass 0 but
50         SCM_UNDEFINED for non-existent data.
51
52         * lily/side-position-interface.cc (general_side_position): allow
53         optional current_offset argument for chaining, so combinations of side-position
54         and outside slur callback don't add up.  Fixes issue #92.
55
56         * lily/pango-font.cc (pango_item_string_stencil): use
57         logical_rect. This prevents spaces after words from disappearing,
58         issue #72.
59         
60         * VERSION: release 2.9.20
61
62 2006-10-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
63
64         * scm/define-grob-properties.scm (all-user-grob-properties):
65         mention stencil as user settable.
66
67 2006-10-02  Joe Neeman  <joeneeman@gmail.com>
68
69         * Documentation/user/page.itely (Page formatting): 
70         document auto-first-page-number
71
72         * lily/page-breaking.cc (find_chunks_and_breaks): 
73         * lily/paper-score.cc (calc_breaking): Follow changes to the
74         Constrained_breaking interface
75
76         * lily/constrained-breaking.cc (calc_subproblem): run the main loop
77         here backwards, as an optimisation
78         (initialize): new function; move most of the code in resize () here
79         (combine_demerits): cache ragged_right_
80         (Constrained_breaking): constructor now takes the Paper_score
81
82 2006-10-02  Erik Sandberg  <mandolaerik@gmail.com>
83         
84         * lily/lexer.ll, lily/parser.yy: Add EXPECT_NO_MORE_ARGS token, to
85         avoid parser lookahead for 0-ary functions.
86
87         * lily/translator.cc: Extract event classes from
88         IMPLEMENT_TRANSLATOR_LISTENER for documentation generation.
89
90 2006-10-02  Heikki Junes  <hjunes@gmail.com>
91
92         * po/fi.po: Fix spaces, commas etc. in Finnish translation using
93         KBabel fix tool.
94
95 2006-10-01  Nicolas Sceaux  <nicolas.sceaux@free.fr>
96
97         * scm/layout-page-layout.scm (page-breaking-wrapper): new
98         function. Call the page breaking function selected in the
99         `page-breaking' \paper variable, then the post processing function
100         chosen using the `page-post-process' \paper variable.
101         (line-height): new function. Return the height of a system.
102         (line-minimum-position-on-page): new function. Return the position
103         of a system on page (using the previous line position), only
104         considering between system padding.
105         (stretchable-line?): new function. Says whether a line can be
106         stretched (ie. is not a title nor a single staff system).
107         (page-maximum-space-left): new function. Computes space left on a
108         page, when all systems are separated by their padding.
109
110         * lily/page-breaking.cc (breaking::make_pages): Move page post
111         processing function call to page breaking wrapper (common to all
112         page breakers).
113
114         * lily/paper-book.cc (book::pages): call the page breaking
115         wrapper, instead of the page breaker directly
116
117         * ly/paper-defaults.ly: Add \paper variables for page breaking
118         wrapper and page post processing function. Make
119         `write-page-layout' value depend on the 'dump-tweaks option. Add a
120         `system-maximum-stretch-procedure' variable for holding a function
121         computing the maximum stretch a system allows.
122
123         * scm/layout-page-dump.scm (write-page-breaks): computes the
124         stretch to apply to systems on a page to minimize left
125         space. Dump this stretch length.
126
127         * ly/music-functions-init.ly (spacingTweaks): implement it. Read
128         the system-stretch property of the tweak data to stretch the
129         system.
130         (includePageLayoutFile): Void function which includes the
131         generated page-layout file if it exists and if the page layout
132         dumping is not asked.
133         (scoreTweak): if the score tweak named by the argument exists,
134         return it.
135
136 2006-10-01  Joe Neeman  <joeneeman@gmail.com>
137
138         * lily/page-spacing.cc (compress_lines, uncompress_solution):
139         handle correctly the case where there are multiple \noPageBreaks
140         in a row.
141
142 2006-09-30  Laura Conrad <lconrad@laymusic.org>
143
144         * abc2ly.py adds segno (S) and Coda (O) to articulations.
145         
146         * abc2ly.py fix so that entering " -- " will translate to a -- in
147         the lilypond instead of a " - - "
148         
149 2006-09-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
150
151         * lily/align-interface.cc: fix typo
152
153         * lily/dynamic-text-spanner.cc (print): Add a special case for
154         trill spanner right sides. 
155
156         * scm/define-grobs.scm (all-grob-descriptions): set padding to 0.1
157
158         * lily/align-interface.cc (get_extents_aligned_translates): add
159         support for padding variable.
160
161         * lily/break-align-interface.cc (self_align_callback): oops: use
162         loop variable in guard.
163
164         * input/regression/repeat-percent-grace.ly: new file.
165
166         * lily/percent-repeat-engraver.cc (start_translation_timestep):
167         remember first currentCommandColumn of a grace run. Fixes issue 70.
168
169         * lily/percent-repeat-iterator.cc (class Percent_repeat_iterator):
170         move class definition to CC file.
171
172         * lily/multi-measure-rest.cc (percent): use robust_relative_extent()
173
174         * lily/slash-repeat-engraver.cc (listen_percent): don't warn for
175         measure-long  repeats.
176
177         * flower/include/international.hh: include stdarg.h
178
179 2006-09-30  Joe Neeman  <joeneeman@gmail.com>
180
181         * lily/page-turn-page-breaking.cc (calc_demerits): now that we allow
182         put_systems_on_pages to return an empty result, we need to assign
183         demerits properly in that case.
184         (put_systems_on_pages): Make the number of pages depend on the
185         evenness of page_number. Add auto-first-page-number.
186         (calc_subproblem): ensure that the page-number is even for the
187         left-hand page. Warn if the first page-turn doesn't fit onto the
188         first (right-hand) page.
189
190         * lily/page-spacing.cc (solve): bug: demerits_ would always be inf
191         (min_page_count): make this publicly accessible
192         (min_page_count): fix a bug when there are forced page breaks that
193         was introduced when I made this loop run backwards
194         (space_systems_on_n_pages, space_systems_on_n_or_one_more_pages):
195         replace space_systems_on_min_pages with these two. The logic in
196         space_systems_on_min_pages was getting too convoluted and is better
197         contained in page-turn-page-breaking.
198
199         * lily/page-turn-engraver.cc (breakable_column): remove an always-true
200         conditional
201         (breakable_column): typo
202
203         * lily/source-file.cc (get_line): fix off-by-one error
204         and clean up some of the logic
205
206 2006-09-29  Joe Neeman  <joeneeman@gmail.com>
207
208         * lily/page-breaking.cc (make_pages): honour the first-page-number
209         property
210
211 2006-09-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
212
213         * VERSION (PACKAGE_NAME): bump version.
214
215 2006-09-26  Pal Benko  <benko.pal@gmail.com>
216
217         * scm/parser-clef.scm: add petrucci-f3 and -f4 clefs
218         (the latter is the same as petrucci-f which is kept for compatibility)
219
220 2006-09-26  Erik Sandberg  <mandolaerik@gmail.com>
221         
222         * lily/part-combine-iterator.cc: solo1-event -> solo-one-event
223
224 2006-09-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
225
226         * lily/global-context.cc (run_iterator_on_me): break out of loop
227         if moment doesn't increase.
228
229         * scm/define-grob-properties.scm (all-user-grob-properties): add
230         forced property.
231
232         * lily/accidental.cc (after_line_breaking): read forced property.
233
234         * lily/accidental-engraver.cc (process_acknowledged): set 'forced
235         property.
236
237         * input/regression/accidental-forced-tie.ly:  new file.
238
239 2006-09-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
240
241         * ly/engraver-init.ly: set ignoreFiguredBassRest in Staff context.
242
243         * lily/figured-bass-engraver.cc: only listen to rest events if
244         ignoreFiguredBassRest is not set.
245
246         * scm/define-context-properties.scm
247         (all-user-translation-properties): add ignoreFiguredBassRest property
248
249 2006-09-24  Joe Neeman  <joeneeman@gmail.com>
250
251         * lily/paper-book.cc (get_system_specs):
252         (set_system_penalty): fix breakbefore.
253         We used to set a penalty on the system after the break, now we
254         set a permission on the system before the break
255
256         * lily/grob-property.cc: add scm debugging hooks into
257         property modification
258
259         * lily/context-property.cc:
260         * lily/engraver.cc:
261         rename make_foo_from_properties to internal_make_foo and
262         move it from context-property.cc to a member function of
263         Engraver.
264         
265         * lily/include/lily-guile-macros.hh:
266         overload ly_symbol2scm macro so that there is no more need
267         to use internal_foo
268
269         * lily/volta-repeat-iterator.cc:
270         * lily/tweak-engraver.cc:
271         * lily/tuplet-bracket.cc:
272         * lily/span-bar-engraver.cc:
273         * lily/script-engraver.cc:
274         * lily/prob-scheme.cc:
275         * lily/pointer-group-interface.cc:
276         * lily/parser.yy:
277         * lily/grob-scheme.cc:
278         * lily/grob-property.cc:
279         * lily/context.cc:
280         * lily/context-property.cc:
281         * lily/break-substitution.cc:
282         * lily/break-align-engraver.cc:
283         * lily/axis-group-interface.cc:
284         * lily/align-interface.cc:
285         remove calls to internal_FOO
286
287         * lily/system-start-delimiter-engraver.cc:
288         * lily/parenthesis-engraver.cc:
289         * lily/accidental-engraver.cc:
290         remove calls to make_foo_from_properties
291
292 2006-09-23  Graham Percival  <gpermus@gmail.com>
293
294         * Documentation/user/programming-iterfaces.itely: fix
295         def-music-function -> define-music... leftover.
296
297 2006-09-23  Joe Neeman  <joeneeman@gmail.com>
298
299         * lily/page-spacing.cc (min_page_count): by running the loop
300         backwards, we can calculate ragged_last properly.
301
302 2006-09-22  Mats Bengtsson  <mabe@drongo.s3.kth.se>
303
304         * ly/titling-init.ly (scoreTitleMarkup): Rename (typo!?)
305         printfirst-page-number -> print-first-page-number
306
307         * python/convertrules.py: corresponding rule.
308
309         * Documentation/user/page.itely (Page formatting): Document the
310         default values of all page layout parameters. 
311
312 2006-09-22  Erik Sandberg  <mandolaerik@gmail.com>
313
314         * lily/lexer.ll: remove limitation on music function arity. New
315         mode extratoken, which inserts extra EXPECT_* tokens after
316         MUSIC_FUNCTION token. Junk all MUSIC_FUNCTION_* tokens.
317
318         * lily/parser.yy: Change grammar for music function accordingly.
319
320         * lily/include/lily-parser.hh: New method get_state, new member
321         hidden_state. Works around a problem when parser fetches
322         MUSIC_FUNCTION token but not the following EXPECT_* token.
323
324         * lily/translator.cc, lily/context.cc:, lily/translator-group.cc:
325         remove try_music
326
327         * lily/*-engraver.cc, lily/*-performer.cc: Remove all remaining
328         references to Music; use ASSIGN_EVENT_ONCE everywhere
329
330         * lily/grob-info.cc: junk *music_cause
331
332         * lily/music.cc: copy eventified articulations to stream event
333
334         * lily/part-combine-iterator.cc: Cleanup using enums
335
336         * lily/translator-group.cc: Junk OldMusicEvent, and associated
337         methods
338
339         * lily/include/engraver.hh: Junk music.hh include
340
341         * lily/stream-event.cc: Changed constructors
342
343 2006-09-21  Graham Percival  <gpermus@gmail.com>
344
345         * Documentation/user/tweaks.itely (Fitting music onto fewer
346         pages): change settings to avoid warning messages.
347
348 2006-09-21  Mats Bengtsson  <mabe@drongo.s3.kth.se>
349
350         * Documentation/user/tweaks.itely (Fitting music onto fewer
351         pages): Add between-system-space setting. 
352
353 2006-09-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
354
355         * lily/accidental-placement.cc (calc_positioning_done): don't
356         trigger Y-extent calculation too early. Use pure_height instead.
357
358         * lily/scale.cc (LY_DEFINE): new file. 
359
360 2006-09-20  Joe Neeman  <joeneeman@gmail.com>
361
362         * lily/page-breaking.cc (find_chunks_and_breaks): ignore breaks
363         that happen at the start of a score: having a zero-length
364         chunk was messing up min_system_count calculations.
365
366         * lily/source-file.cc (get_line): lower_bound, not
367         binary_search. Fixes problem where point-and-click would
368         always point to the first line.
369
370 2006-09-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
371
372         * lily/accidental-placement.cc (calc_positioning_done): also put
373         stems into accidental support. 
374
375         * lily/tie-engraver.cc (process_music): also set tieMelismaBusy if
376         event_ detected.
377
378         * scm/script.scm (default-script-alist): avoid-slur and
379         slur-padding for portato script.
380
381         * lily/stem-tremolo.cc (translated_stencil): new function. 
382         (height): use new function. Fixes tremolos on whole notes.
383
384         * lily/slur-scoring.cc (get_best_curve): don't crash if no optimal
385         slur found.
386
387 2006-09-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
388
389         * scripts/abc2ly.py (try_parse_comment): idem.
390
391         * scripts/lilypond-book.py (find_toplevel_snippets): use 'foo' in
392         bar_string iso. string.find()
393
394         * lily/*.cc: idem.
395
396         * lily/slur.cc (get_curve): always use scm_is_pair() looping
397         scheme lists.  
398
399 2006-09-18  Graham Percival  <gpermus@gmail.com>
400
401         * Documentation/user/basic-notation.itely: add bug
402         warning about ties and octavation/clef.
403
404 2006-09-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
405
406         * VERSION (PACKAGE_NAME): release 2.9.18
407
408 2006-08-29  Milan Zamazal  <pdm@brailcom.org>
409
410         * elisp/lilypond-mode.el (LilyPond-command-alist): Don't try to
411         figure out midi file names right here.
412         
413 2006-09-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
414
415         * scm/framework-ps.scm (dump-stencil-as-EPS): naming pad-eps-boxes.
416
417         * scm/backend-library.scm: option naming:  gs-font-load*s*
418
419         * scm/framework-eps.scm (dump-stencils-as-EPSes): rename option to
420         include-eps-fonts
421
422 2006-09-17  Joe Neeman  <joeneeman@gmail.com>
423
424         * scm/define-music-types.scm (music-descriptions): remove
425         BreakEvent and fix {Page,Line}{Break,Turn}Event so
426         Music::to_event doesn't complain.
427
428         * lily/accidental-placement.cc (ape_compare):
429         * lily/semi-tie.cc (compare): 
430         * lily/note-column.cc (shift_compare): replace by XXX_less
431
432         * lily/tie-formatting-problem.cc (set_chord_outline): 
433         * lily/tie-column.cc (calc_positioning_done): 
434         * lily/system.cc (post_processing)
435         (get_paper_system): 
436         * lily/stem.cc (note_head_positions)
437         (calc_positioning_done): 
438         * lily/spanner.cc (do_break_processing)
439         (find_broken_piece): 
440         * lily/span-bar.cc (print): 
441         * lily/semi-tie-column.cc (calc_positioning_done): 
442         * lily/rest-collision.cc (calc_positioning_done): 
443         * lily/program-option.cc (get_help_string): 
444         * lily/note-collision.cc (get_clash_groups):
445         * lily/new-fingering-engraver.cc (position_scripts):
446         * lily/keyword.cc (Keyword_table):
447         * lily/hara-kiri-group-spanner.cc (request_suicide):
448         * lily/grob-pq-engraver.cc (stop_translation_timestep):
449         * lily/accidental-placement.cc (calc_positioning_done):
450         (stagger_apes):
451         * lily/beam.cc (get_beam_segments):
452         * lily/grob-array.cc (remove_duplicates):
453         use new vector_sort
454         
455         * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily:
456         ragged-last-bottom = ##f (test the new page breaker)
457
458         * flower/include/std-vector.hh (vector_sort): use STL sort stuff
459
460         * scm/define-context-properties.scm
461         (all-internal-translation-properties): remove properties that
462         were used to communicate page-turn stuff to the paper-column
463         engraver.
464
465         * lily/lily-guile.cc (robust_scm2string): new function
466
467         * lily/paper-column-engraver.cc: Clean up page turn stuff
468
469         * lily/page-turn-engraver.cc: Re-write the page turn logic here
470         instead of cluttering up paper-column-engraver.cc
471
472 2006-09-17  Nicolas Sceaux  <nicolas.sceaux@free.fr>
473
474         * scm/layout-page-dump.scm (scm): export utility function names,
475         to allow user writing cutsom dumping functions.
476
477         * scm/layout-page-layout.scm: export utility function names to
478         enable custom page breaking function writing. Tabify.
479         (line-next-space): use ?-suffix only for predicates
480         (page-maximum-space-to-fill): new function. Return the space
481         between first and bottom system of a page, to give to
482         space-systems.
483         (space-systems): use a space-to-fill argument (for instance as
484         computed by page-maximum-space-to-fill) instead of computing
485         internaly this space with the page height. That way, the caller
486         can adjust the space to use.
487         (make-page-from-systems, walk-paths): compute space to fill before
488         calling space-systems.
489
490 2006-09-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
491
492         * scm/script.scm (default-script-alist): set paddings for every
493         type here, increase for portato mark.
494
495         * scm/lily.scm (define-scheme-options): typo: add s, so it is 
496         -dinclude-eps-fonts
497
498 2006-09-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
499
500         * scm/define-grobs.scm (all-grob-descriptions): oops, typo:
501         use spanner::set-spacing-rods
502
503         * lily/note-column.cc: reformat.
504
505         * lily/rest-collision.cc (calc_positioning_done): fix whole/half
506         step positioning for note/rest combinations.
507
508         * input/regression/rest-note-collision.ly: new file.
509
510         * scm/define-grobs.scm (all-grob-descriptions): add
511         springs-and-rods
512
513         * flower/include/std-vector.hh: switch off again.
514
515         * VERSION (PATCH_LEVEL): bump to 2.9.18
516
517         * flower/include/std-string.hh: idem.
518
519         * flower/include/std-vector.hh (_GLIBCXX_DEBUG): set if NDEBUG not set.
520
521 2006-09-15  Mats Bengtsson  <mabe@drongo.s3.kth.se>
522
523         * ly/engraver-init.ly: Make FiguredBass accepted in GrandStaff and
524         PianoStaff. 
525
526 2006-09-08  Joe Neeman  <joeneeman@gmail.com>
527
528         * Documentation/user/page.itely: update page breaking documentation
529
530 2006-09-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
531
532         * lily/note-collision.cc (calc_positioning_done): only access
533         first head if available.
534
535         * lily/tuplet-engraver.cc: add tupletFullLengthNote to description.
536
537         * scm/framework-ps.scm (output-preview-framework): use new name.
538
539         * lily/program-option.cc (internal_set_option): use new names.
540
541         * Documentation/user/SConscript (lilypond_book_flags): update -d
542         variable names.
543
544         * Documentation/user/lilypond-book.itely (Inserting LilyPond
545         output into other programs): new variable names.
546
547         * scm/lily.scm (define-scheme-options): uniformize var names.
548
549         * lily/tuplet-engraver.cc (listen_tuplet_span): verify that
550         tuplets_ is non-empty before popping.
551
552 2006-09-07  Joe Neeman  <joeneeman@gmail.com>
553
554         * lily/spanner.cc (find_broken_piece): 
555         * lily/spacing-spanner.cc (get_columns): 
556         * lily/source-file.cc (get_line): 
557         * lily/simple-spacer.cc (get_column_description): 
558         * lily/keyword.cc (lookup): 
559         use the new binary search.
560
561         * flower/include/std-vector.hh: replace binary_search with
562         a more STL-like version
563
564 2006-09-04  Michael Welsh Duggan  <md5i@cs.cmu.edu>
565
566         * lily/tie-performer.cc: remove unused last_event_ property.
567         (class Tie_performer): add now_tied_heads_ property for
568         partially-tied heads.
569         (acknowledge_audio_element): when adding an Audio_note, put the
570         note in now_tied_heads_ if the audio note is partially tied.
571         (stop_translation_timestep): always include entries in
572         now_tied_heads_ in heads_to_tie_.
573
574         * lily/drum-note-performer.cc (process_music): look for tie-events
575         in the articulations; pass to Audio_note constructor.
576
577         * lily/note-performer.cc (process_music): look for tie-events in
578         the articulations; pass to Audio_note constructor.
579
580         * lily/audio-item.cc (Audio_note): Initialize tie_event_ in
581         constructor.
582
583         * lily/include/audio-item.hh (class Audio_note): add tie_event_.
584         include initializer in constructor.
585
586 2006-09-02  Joe Neeman  <joeneeman@gmail.com>
587
588         * lily/simple-spacer.cc (get_line_forces): Ignore loose columns
589         unless they are breakable. This fixes discrepancies between the forces
590         calculated here and the forces calculated in get_line_configuration.
591
592         * lily/grob.cc (pure_relative_y_coordinate): fix some
593         mis-estimation that was happening with piano staves.
594
595         * lily/constrained-breaking.cc (resize): don't choke if we get a
596         measure that won't fit on a line.
597         (combine_demerits): don't consider uniformity when ragged
598
599         * lily/page-spacing.cc (solve): why the f* were there two of these?
600         (calc_subproblem): properly handle the case where a system is taller
601         than the page.
602
603         * lily/system.cc (get_paper_system): ensure that all the permissions
604         and penalties are passed to the paper systems.
605
606         * lily/page-breaking.cc (create_system_list): support system-count.
607
608         * scm/define-grobs.scm (pure-print-callbacks): add
609         ly:script-interface::print
610
611         * lily/page-spacing.cc (min_page_count): fix calculation of min
612         pages if we are ragged and there are non-zero springs.
613
614         * scm/layout-page-layout.scm: if the pure-height estimates are under
615         the real height, allow space-systems to ignore padding if it is
616         needed in order to fit the systems on one page
617
618         * lily/optimal-page-breaking.cc (try_page_spacing): fix reading
619         ragged properties
620         (solve): fix performance problem. Make sure we always get at least
621         one solution
622
623         * lily/page-breaking.cc (make_pages): include write-page-breaks
624         and page-stencil
625
626         * lily/paper-score.cc (calc_breaking): remove Gourlay breaker
627
628         * scm/define-grobs.scm: add the new slur-callback
629         fix pure-relevant to not exclude grobs whose extent is already
630         calculated
631
632         * ly/paper-defaults.ly: make ly:optimal-breaking the new default
633         page breaker
634
635         * lily/slur.cc (pure_height): new callback to estimate the height
636         of a slur
637
638 2006-09-02  Graham Percival  <gpermus@gmail.com>
639
640         * Documentation/user/invoking.itely: small update on
641         MacOS X notes; thanks Trevor!
642
643 2006-09-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
644
645         * VERSION (MY_PATCH_LEVEL): release 2.9.17
646
647         * lily/lexer.ll: accept EOF in all states.
648
649         * lily/tempo-performer.cc (Tempo_performer): initialize last_tempo_.
650
651         * lily/source-file.cc (Source_file): always 0-terminate character
652         array, to prevent Flex from barfing.
653
654         * lily/global-context.cc (get_output): robustness: don't crash if
655         no Score context found.
656
657         * lily/include/book.hh (class Book): idem.
658
659         * lily/include/context-def.hh (struct Context_def): idem.
660
661         * lily/include/score.hh (class Score): don't derive from Input.
662
663         * lily/book.cc (Book): add a copy ctor. 
664
665         * buildscripts/output-distance.py (FileLink.calc_distance): count
666         orphans in distance too.
667
668         * python/midi.c (midi_parse_track): robustness: don't read past
669         end of string.
670
671         * ly/performer-init.ly: add Control_track_performer, move
672         Tempo_performer and Time_signature_performer to Score.        
673
674         * lily/score-performer.cc (acknowledge_audio_elements): override
675         from base class: add to audio-columns
676
677         * lily/control-track-performer.cc (add_text): new file: generate
678         the control track.
679
680         * lily/performance.cc: move output_header_track to
681         Control_track_performer ()
682
683         * lily/midi-walker.cc (Midi_walker): get channel in constructor.
684
685         * lily/include/midi-item.hh (class Midi_channel_item): insert
686         class into hierarchy, for items that can have a channel setting. Dehungarify.
687
688         * lily/include/performer.hh (class Performer): remove
689         play_element();  move functionality into announce/acknowledge.
690
691         * lily/audio-staff.cc (output): remove channel_ from Midi_track.
692
693         * lily/tie-engraver.cc (stop_translation_timestep): only wipe
694         heads_to_tie_ if there are new heads to tie.  Fixes polyphony in ties.
695
696 2006-08-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
697
698         * lily/tie-engraver.cc (stop_translation_timestep): robustness for
699         ambituses.
700
701         * lily/all-font-metrics.cc: remove TFM support.
702
703         * lily/include/tfm.hh: remove TFM support, TFM reader.
704
705         * lily/include/binary-source-file.hh: remove Binary_source_file.
706
707 2006-08-27  Graham Percival  <gpermus@gmail.com>
708
709         * Documentation/topdocs/NEWS.itely: add @c marker for
710         stuff I've processed.
711
712         * Documentation/user/ various: info from NEWS.
713
714 2006-08-27  Joe Neeman  <joeneeman@gmail.com>
715
716         * lily/paper-column-engraver.cc (finalize): Oops, this change
717         should have gone in on 2006-08-23
718
719 2006-08-26  Mats Bengtsson  <mabe@s3.kth.se>
720
721         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use double
722         quotes to quote arguments. Fixes Windows problem.
723
724         * python/lilylib.py (progress): idem
725
726 2006-08-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
727
728         * scripts/musicxml2ly.py: fix for importing
729         minor key signatures from MusicXML.  (Phillip Kirlin)
730
731 2006-08-24  Phillip Kirlin  <pkirlin@acm.org>
732
733         * python/musicxml.py: 
734         (Attributes.get_key_signature): now correctly retrieves mode from 
735         MusicXML. 
736
737 2006-08-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
738
739         * lily/parser.yy (output_def_body): take ownership of identifier
740         back to C++.
741
742         * Documentation/user/advanced-notation.itely (Metronome marks):
743         update use of \tempo in \midi.
744
745         * VERSION: release 2.9.16
746         
747 2006-08-24  Erik Sandberg  <mandolaerik@gmail.com>
748
749         * input/mutopia/*: upgrade to new midi tempo syntax (repairs make
750         web partially)
751
752 2006-08-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
753
754         * input/regression/tie-chord-partial.ly: clarify example.
755
756         * scm/define-music-properties.scm (all-music-properties): remove
757         untied.
758
759         * ly/music-functions-init.ly: remove \untied.
760
761         * lily/tie-engraver.cc (struct Head_event_tuple): store both
762         stream events and music events.
763         (stop_translation_timestep): search acknowledged heads for
764         tie-event.
765
766         * input/regression/tie-chord-partial.ly: new file.
767
768         * scm/define-markup-commands.scm (char): use ly:wide-char->utf-8
769         for \char markup command.
770
771         * scm/define-event-classes.scm (unlistened-music-event-classes): idem.
772
773         * scm/define-music-types.scm (music-descriptions): consistency:
774         Use solo-{one,two}-event iso. solo-[12]-event.
775
776         * lily/part-combine-engraver.cc (process_music):
777         Use solo-{one,two}-event iso. solo-[12]-event.
778
779         * ly/declarations-init.ly (partCombineListener): add Timing as
780         alias
781
782         * flower/std-string.cc (string_copy): use copy ()
783
784         * lily/source-file.cc (Source_file): use copy(). Remove contents_str0()
785
786 2006-08-24  Graham Percival  <gpermus@gmail.com>
787
788         * Documentation/user/changing-defaults.itely, global.itely,
789         lilypond-book.itely, page.itely: minor changes from mailist.
790
791 2006-08-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
792
793         * buildscripts/mutopia-index.py (allfiles): filter lily-XXX and
794         snippet-map
795
796         * scm/define-context-properties.scm
797         (translator-property-description): robustness: detect type errors
798         in property definitions.
799
800         * lily/parser.yy (score_body): protect SCORE_IDENTIFIER result
801         after getting it from SCM. 
802
803         * lily/smobs.cc (protect_smob): switch off fancy smob protection
804         for now. 
805
806         * lily/include/performer.hh (class Performer): strip get_tempo()
807         method.
808
809         * lily/midi-def.cc: strip file.
810
811         * lily/lexer.ll (Lily_lexer): don't protect hash key separately.
812
813         * lily/include/context-def.hh (struct Context_def): use
814         VIRTUAL_COPY_CONSTRUCTOR().
815
816         * lily/source-file.cc: smobification.
817
818         * lily/include/source-file.hh (class Source_file): smobify
819         Source_file. Trim redundant members.
820
821         * lily/parser.yy (Lily_lexer::try_special_identifiers): unprotect
822         clones after creation. This plugs a huge memory leak.
823
824         * python/convertrules.py (FatalConversionError.sub_tempo):
825         complete rule for \midi{ \tempo }
826
827         * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): idem.
828
829         * input/mutopia/F.Schubert/morgenlied.ly (pianoLH): update tempo.
830
831 2006-08-23  Joe Neeman  <joeneeman@gmail.com>
832
833         * input/regression/optimal-page-breaking-hstretch.ly: test for
834         ragged-last-bottom also
835
836         * lily/paper-column-engraver.cc (finalize): make the end of a score
837         breakable by default. This is to balance out a change in behaviour
838         of the page-turn-breaker which no longer makes the end of a score
839         breakable.
840
841         * lily/paper-book.cc (pages): set the systems_ once the pages are
842         broken
843
844         * lily/page-turn-page-breaking.cc (calc_subproblem): use the new
845         Page_breaking interface.
846
847         * lily/page-breaking.cc (class Page_breaking): make the interface
848         more consistent and provide abstractions for dealing with
849         Line_divisions.
850
851         * lily/optimal-page-breaking.cc (solve): use a more straightforward
852         algorithm. Use the new interface to Page_breaking.
853
854         * lily/page-spacing.cc: better support for ragged-bottom and
855         ragged-last-bottom
856
857 2006-08-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
858
859         * python/convertrules.py (conv): warning on \tempo{}
860
861         * ly/performer-init.ly: set tempoWholesPerMinute.
862
863         * ly/midi-init.ly: remove \midi
864
865         * lily/tempo-performer.cc: look at tempoWholesPerMinute to set
866         MIDI tempo.
867
868         * lily/metronome-engraver.cc (process_music): use tempoUnitCount
869         tempoUnitDuration for determining what to print.
870
871         * lily/lyric-extender.cc: typo.
872
873         * lily/parser.yy (output_def_body): disallow \tempo in \midi{}
874
875         * lily/duration-scheme.cc (LY_DEFINE): ly:duration-length: new
876         function.
877
878         * scm/lily.scm (define-scheme-options): alphabetize, add eps-pad-boxes.
879
880         * scm/framework-ps.scm (dump-stencil-as-EPS): only pad boxes if
881         eps-pad-boxes is set.
882
883         * scripts/lilypond-book.py (main): use -deps-pad-boxes.
884
885         * THANKS: update sponsors.
886
887         * ly/english.ly: quarter tone naming (thanks, Trevor Baca)
888
889         * Documentation/topdocs/NEWS.tely (Top): doc new feature.
890
891         * input/regression/tie-chord-untied.ly: new file.
892
893         * lily/tie-engraver.cc (acknowledge_note_head): check 'untied property.
894
895         * scm/define-music-properties.scm (all-music-properties): add
896         'untied property.
897
898         * buildscripts/mutopia-index.py (allfiles): look for .ly rather
899         than .ly.txt.
900         (headertext_nopics): sanitize no-examples text.
901
902         * scm/page.scm (make-page-stencil): don't rely on extents of
903         page-stencil. This fixes spurious space around .EPS files produced
904         with the EPS backend.
905
906 2006-08-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
907
908         * lily/stencil-scheme.cc (LY_DEFINE): make extent arguments optional.
909
910         * lily/hara-kiri-engraver.cc (process_music): remember
911         keepAliveInterfaces after processing \set
912
913         * lily/lyric-extender.cc (print): support left/right-padding for
914         extenders.
915
916         * scm/documentation-generate.scm (string-append): revert lilypond/
917         path, doc why.
918
919 2006-08-20  Graham Percival  <gpermus@gmail.com>
920
921         * Documentation/user/lilypond.tely: clarification to
922         license presentation (not to actual license).
923
924         * Documentation/user/basic-notation.itely,
925         instrument-notation.itely: minor changes.
926
927         * input/ {regression, test}/+.ly: clarification to
928         text (you can click on examples).  Thanks, Mats!
929
930         * input/manual/bar-lines.ly: adds ||: repeats.
931
932 2006-08-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
933
934         * make/ly-vars.make (OMF_FILES): strip ps.gz from OMF_FILES 
935
936         * scm/documentation-lib.scm (texi-file-head): category LilyPond.
937
938         * Documentation/user/lilypond.tely: strip lilypond/ from info
939         links, rename to category LilyPond
940
941         * lily/pango-font.cc (description_string): new function.
942
943         * VERSION: release 2.9.15
944
945         * lily/spacing-engraver.cc (stop_translation_timestep): use
946         Dscho's fix for spacing spanner. 
947
948         * scm/define-music-types.scm (music-descriptions): use
949         apply-output-event for ApplyOutputEvent
950
951         * lily/output-property-engraver.cc (listen_apply_output): rename
952         from listen_layout_instruction.
953
954         * lily/piano-pedal-engraver.cc (struct Pedal_type_info): new
955         function protect()
956
957 2006-08-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
958
959         * scm/lily.scm (lilypond-all): option read-file-list: substitute
960         commandline args with contains, split by \n.
961
962         * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
963         write snippet-names file, call with -dread-file-list. Fixes
964         command limitations on 64-bit systems.
965
966         * input/regression/stencil-color-rotation.ly: new file.
967
968         * lily/include/translator.hh (struct Acknowledge_information):
969         revert: don't use Protected_scm in global objects, as GUILE can't
970         handle gc_unprotect from automated destructors on MacOS X.
971  
972         * lily/grob.cc (get_print_stencil): use retval.expr() as base for
973         color, not the original stencil. Fixes combinations of
974         color/transparency/rotation. 
975
976         * scripts/lilypond-book.py (main): add --formats=eps for
977         texinfo/latex.
978
979         * lily/spacing-engraver.cc (stop_translation_timestep): don't
980         crash if spacing_ is nonexistent.
981
982 2006-08-14  Mats Bengtsson  <mabe@s3.kth.se>
983
984         * scripts/lilypond-book.py (output): Remove obsolete(!?)
985         \catcode`\@=12 in the LaTeX output.
986
987 2006-08-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
988
989         * scm/define-music-types.scm (music-descriptions):
990         use sustain-event iso. sustain-pedal-event.
991
992 2006-08-11  Joe Neeman  <joeneeman@gmail.com>
993
994         * scripts/convert-ly.py: honour the -n command-line switch
995
996 2006-08-10  Han-Wen Nienhuys  <hanwen@lilypond.org>
997
998         * scm/output-lib.scm (bar-line::calc-glyph-name): add dashed liine
999         break specification.
1000
1001 2006-08-10  Joe Neeman  <joeneeman@gmail.com>
1002
1003         * Documentation/user: convert-ly the user manual
1004
1005 2006-08-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
1006
1007         * stepmake/aclocal.m4: version check patch (thanks MWD)
1008
1009         * ly/music-functions-init.ly: robustness. Don't crash if
1010         currentBarNumber is not a number.
1011
1012         * VERSION (PATCH_LEVEL): bump.
1013
1014 2006-08-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
1015
1016         * stepmake/aclocal.m4: better version check; handle fooX.Y
1017         binaries too.
1018
1019         * ly/performer-init.ly: instrument name fixup.
1020
1021         * input/manual/chord-names-jazz.ly (banterProperties):
1022         instrumentName update
1023
1024         * scm/define-event-classes.scm (lambda): use ly:is-listened-event-class
1025
1026         * lily/ly-module.cc (ly_module_symbols): use ly_hash_table_keys
1027
1028         * lily/translator.cc (LY_DEFINE): ly:is-listened-event-class: new
1029         function. Use hash tables to check membership.
1030
1031         * lily/general-scheme.cc (LY_DEFINE): new function.
1032
1033         * lily/piano-pedal-engraver.cc (struct Pedal_type_info): idem
1034
1035         * lily/include/translator.hh (struct Acknowledge_information): add
1036         Protected_scm
1037
1038         * ly/music-functions-init.ly: change name to BreathingEvent
1039
1040         * input/regression/*.ly: apply it.
1041
1042         * python/convertrules.py (conv): better instrumentName conversion
1043         rule.
1044
1045         * scm/define-music-types.scm (music-descriptions): add
1046         line-break-event to LineBreakEvent music
1047
1048         * lily/music.cc (to_event): don't crash if music type not set.
1049
1050         * lily/spacing-loose-columns.cc (set_loose_columns): don't barf if
1051         spacing not set.
1052
1053         * lily/spacing-engraver.cc (stop_translation_timestep): set
1054         spacing for proportional notation too.
1055
1056         * scm/translation-functions.scm (format-bass-figure): inspect
1057         stream-event.
1058
1059         * scripts/lilypond-book.py (bindir): add bindir to $PATH.
1060
1061 2006-08-08  Joe Neeman  <joeneeman@gmail.com>
1062
1063         * lily/include/constrained-breaking.hh: add Line_details (Prob*)
1064
1065         * scm/page.scm (make-page): make it friendlier to call (esp. from C++)
1066
1067         * scm/layout-page-layout.scm (make-page-from-systems): new function
1068         (optimal-page-breaks): use the new page-breaking calling convention
1069
1070         * scm/define-context-properties.scm (all-user-translation-properties):
1071         add revokePageTurns
1072
1073         * lily/paper-column-engraver.cc (stop_translation_timestep): add
1074         revokePageTurns  functionality. If there is a special barline within
1075         the breakable region, break there instead of at the end of the region.
1076
1077         * lily/paper-book.cc (pages): use the new page-breaking calling
1078         convention
1079
1080 2006-08-07  Erik Sandberg  <mandolaerik@gmail.com>
1081
1082         * lily/lexer.ll, lily/source-file.cc: Add \sourcefileline command
1083
1084         * scripts/lilypond-book.py: insert \sourcefileline command in
1085         output, so lilypond error messages refer to the spot in the
1086         original .lytex / .itely sourcefile.
1087
1088 2006-08-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
1089
1090         * lily/spacing-loose-columns.cc (set_loose_columns): oops: use
1091         space to next column for distance to fixed col.
1092
1093         * VERSION (PACKAGE_NAME): release 2.9.14
1094
1095         * lily/pitched-trill-engraver.cc (make_trill): do set_parent also
1096         if no accidental.
1097
1098         * lily/accidental-engraver.cc (process_acknowledged): don't create
1099         accidental for trill span event. This fixes spurious accidentals
1100         on trills.
1101
1102 2006-08-04  Mats Bengtsson  <mabe@s3.kth.se>
1103
1104         * scm/define-grob-properties.scm (all-user-grob-properties):
1105         Clarify documentation of side-axis and direction. Thanks to Paul
1106         for the inspiration.
1107
1108         * lily/bar-line.cc: Add documentation for "||:" also in the
1109         interface documentation.
1110
1111 2006-08-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
1112
1113         * lily/spacing-loose-columns.cc (set_loose_columns): bugfix.
1114
1115         * lily/paper-column.cc (set_system): new function.
1116
1117         * lily/spacing-engraver.cc (stop_translation_timestep): store
1118         SpacingSpanner refs in Paper_column.
1119
1120         * lily/spacing-loose-columns.cc (set_loose_columns): rewrite
1121         compute loose clique spacing using GraceSpacing/SpacingSpanner.
1122
1123 2006-08-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
1124
1125         * lily/beam-engraver.cc (listen_beam): add method for
1126         Grace_beam_engraver too.
1127
1128 2006-08-03  Mats Bengtsson  <mabe@s3.kth.se>
1129
1130         * python/convertrules.py: Fix indentation bug that broke
1131         conversion of files older than 1.3.117.
1132         Fix escape error in the description for 2.9.6.
1133
1134 2006-08-02  Erik Sandberg  <mandolaerik@gmail.com>
1135
1136         * lily/*-engraver.cc: convert all try_music functions to listen_*
1137         functions.
1138
1139         * lily/piano-pedal-engraver.cc: some additional cleanups: use
1140         enums to represent pedal types, and calculate more data statically.
1141
1142         * scm/part-combiner.scm (recording-group-emulate): create a
1143         softcoded substitute for recording-group-engraver.cc.
1144
1145         * lily/music.cc: make a common transpose function for events and
1146         music
1147
1148         * ly/declarations-init.ly: change melisma/melismaEnd. Eliminates
1149         ManualMelismaEvent, and obsoletes Melisma_translator.
1150
1151 2006-08-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
1152
1153         * input/test/instrument-name-align.ly: update version.
1154
1155 2006-08-02  Mats Bengtsson  <mabe@s3.kth.se>
1156
1157         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
1158         Doc the --pdf flag to lilypond-book.
1159
1160 2006-07-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
1161
1162         * Documentation/topdocs/NEWS.tely (Top): add description.
1163
1164         * input/regression/tuplet-full-length-note.ly: add file.
1165
1166         * lily/instrument-name-engraver.cc (acknowledge_axis_group):
1167         always store axis group.
1168
1169 2006-07-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
1170
1171         * input/regression/instrument-switch.ly: new file.
1172
1173         * lily/instrument-switch-engraver.cc (process_music): new file.
1174
1175         * ly/engraver-init.ly: add Instrument_switch_engraver
1176
1177         * ly/music-functions-init.ly: \instrumentSwitch
1178
1179         * scm/define-context-properties.scm
1180         (all-user-translation-properties): add instrumentCueName
1181
1182         * scm/define-grobs.scm (all-grob-descriptions): add InstrumentSwitch
1183
1184 2006-07-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
1185
1186         * ly/music-functions-init.ly: music function \transposition.
1187
1188         * lily/parser.yy (command_element): softcode \transposition.
1189
1190         * lily/fall-engraver.cc (process_music): delta-pitch -> delta-step.
1191         (process_music): oops.
1192
1193         * lily/instrument-name-engraver.cc (start_spanner): new
1194         function. Create spanner when property changes.
1195         (stop_spanner): new function.
1196
1197         * python/convertrules.py (conv): add rule.
1198
1199         * lily/instrument-name-engraver.cc: shortVocalName iso. vocNam,
1200         shortInstrumentName iso. instr.
1201
1202         * scm/output-ps.scm (dashed-line): add phase argument to
1203         dashed-line.
1204
1205         * lily/bar-line.cc (dashed_bar_line): new function.
1206         (compound_barline): support \bar "dashed". 
1207
1208         * lily/lily-parser-scheme.cc (LY_DEFINE): only write
1209         --output=DIR to DIR/BASE if it is a dir. 
1210
1211         * flower/file-name.cc (file_part): new function
1212         (dir_part): new function
1213
1214         * lily/lily-parser-scheme.cc (LY_DEFINE): 
1215
1216         * DEDICATION: update
1217
1218 2006-07-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
1219
1220         * lily/instrument-name-engraver.cc: formatting.
1221
1222         * python/convertrules.py (conv): bugfix for \epsfile.
1223
1224 2006-07-25  Joe Neeman  <joeneeman@gmail.com>
1225
1226         * lily/grob.cc:
1227         
1228         * lily/gourlay-breaking.cc: Oops, these should have been included
1229         in my last commit
1230
1231 2006-07-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
1232
1233         * scripts/*.py (program_name): cleanup relocation snippets.
1234
1235         * scripts/convert-ly.py (datadir): remove LILYPONDPREFIX support.
1236
1237 2006-07-24  Joe Neeman  <joeneeman@gmail.com>
1238
1239         * scm/define-grobs.scm (all-grob-descriptions): make NonMusicalPaperColumn
1240         page-breakable by default
1241
1242         * scm/layout-page-layout.scm (space-systems): fix bug where the force isn't
1243         correctly calculated for a single-system page
1244
1245         * scm/lily-library.scm (interval-sane?): also check that the first number is no
1246         bigger than the second number
1247
1248         * lily/simple-spacer.cc (solve): allow compression even when ragged (but we
1249         acknowledge that we aren't satisfying constraints)
1250
1251         * lily/hara-kiri-group-spanner.cc (request_suicide): give equal treatment to
1252         non-Items
1253
1254         * lily/grob.cc (pure_height): add minimum-Y-extent
1255
1256         * lily/gourlay-breaking.cc (solve): don't ignore a compression force, even if we're
1257         ragged
1258
1259         * lily/constrained-breaking.cc: convert code to use new Matrix class
1260         (get_best_solution): new function
1261
1262         * scm/page.scm (make-page-stencil): don't crash if we annotate-layout when there
1263         is a page with no systems
1264
1265 2006-07-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
1266
1267         * VERSION (PACKAGE_NAME): release 2.9.13
1268
1269         * scm/define-grobs.scm (all-grob-descriptions): remove stray
1270         assignment.
1271
1272 2006-07-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
1273
1274         * Documentation/topdocs/NEWS.tely (Top): doc new features.
1275
1276         * scm/output-lib.scm (grace-spacing::calc-shortest-duration): new
1277         function.
1278
1279         * scm/define-grob-properties.scm (all-user-grob-properties):
1280         remove grace-space-factor.
1281
1282         * scm/define-grob-interfaces.scm (grace-spacing-interface): add
1283         grace-spacing-interface
1284         (spacing-options-interface): add.
1285
1286         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add Grace_spacing_engraver
1287
1288         * lily/spacing-options.cc (get_duration_space): move function from spacing-basic.cc
1289
1290         * lily/spacing-basic.cc (note_spacing): do init_from_grob on
1291         GraceSpacing object.
1292
1293         * lily/note-spacing.cc: fix prop list formatting
1294
1295         * lily/beaming-pattern.cc (de_grace): new function. Sensible
1296         beaming for grace notes too.
1297
1298         * input/regression/spacing-grace.ly: update.
1299
1300         * lily/grace-spacing-engraver.cc: new file.
1301
1302         * lily/spacing-spanner.cc: add strict-grace-spacing.
1303
1304 2006-07-20  Graham Percival  <gpermus@gmail.com>
1305
1306         * lily/parser.yy: compile fix.
1307
1308 2006-07-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
1309
1310         * scm/define-grobs.scm (all-grob-descriptions): typo.
1311
1312         * scm/framework-eps.scm (dump-stencils-as-EPSes): just strip
1313         .eps extension from includegraphics.
1314
1315         * scripts/lilypond-book.py (main): add support for --pdf. 
1316
1317         * lily/spacing-spanner.cc (calc_common_shortest_duration): use
1318         callback to compute common shortest duration.
1319         (set_springs): typo.
1320
1321         * scm/define-grob-properties.scm (all-user-grob-properties): add
1322         strict-grace-spacing.
1323
1324         * lily/spacing-determine-loose-columns.cc (is_loose_column):
1325         support float_grace_columns_.
1326
1327         * lily/spacing-options.cc (init_from_grob): new file.
1328
1329         * Documentation/topdocs/NEWS.tely (Top): doc tupletFullLengthNote.
1330
1331         * input/regression/spacing-loose-grace.ly: new file.
1332
1333         * Documentation/topdocs/NEWS.tely (Top): document new feature.
1334
1335         * lily/tuplet-engraver.cc (struct Tuplet_description): read
1336         tupletFullLengthNote too. Choose right bound depending on value.
1337
1338         * input/regression/tuplet-full-length-note.ly: new file.
1339
1340 2006-07-19  Erik Sandberg  <mandolaerik@gmail.com>
1341
1342         * lily/*-performer.cc: Converted try_music to listen_*
1343
1344         * lily/grob-info.cc, lily/engraver.cc: represent the cause of grob
1345         as a stream-event internally. Introduce event_cause (), deprecate
1346         music_cause ().
1347
1348         * scm/define-music-types.scm: Removed BusyPlayingEvent
1349         
1350 2006-07-19  Mats Bengtsson  <mabe@s3.kth.se>
1351
1352         * Documentation/user/advanced-notation.itely (Font selection):
1353         Document how to get a list of available fonts using 'lilypond
1354         -dshow-available-fonts blabla'.
1355
1356 2006-07-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
1357
1358         * GNUmakefile.in: filter lily-XXX.pdf files.
1359
1360         * scm/define-grob-interfaces.scm (bend-after-interface): add thickness.
1361
1362         * scm/define-grob-properties.scm (all-internal-grob-properties):
1363         remove delta-pitch. Use delta-position everywhere.
1364
1365         * scm/output-lib.scm (fall::print): use new order.
1366
1367         * scm/output-ps.scm (path): reorder arguments.
1368
1369         * scm/output-svg.scm (path): support for path primitive.
1370
1371         * input/regression/bend-after.ly: new file.
1372
1373         * Documentation/user/GNUmakefile ($(outdir)/%.pdf): foolproof
1374         recipe for eps -> pdf conversion.
1375
1376 2006-07-19  Erik Sandberg  <mandolaerik@gmail.com>
1377
1378         * lily/parser.yy, lily/lexer.ll: added some simplifications by
1379         Angelo Contardi.
1380
1381 2006-07-19  Graham Percival  <gpermus@gmail.com>
1382
1383         * input/manual/screech-boink.ly: moved to here.
1384
1385         * input/screech-boink.ly: deleted.
1386
1387         * scm/define-grob-properties.scm: clarify doc string.
1388
1389 2006-07-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
1390
1391         * Documentation/topdocs/NEWS.tely (Top): doc new feature.
1392
1393         * scm/output-ps.scm (path): define path.
1394
1395         * scm/define-stencil-commands.scm
1396         (ly:register-stencil-expression): add path.
1397
1398         * scm/define-music-properties.scm (all-music-properties): add delta-pitch.
1399
1400         * ly/engraver-init.ly: add Fall_engraver
1401
1402         * lily/parser.yy (music_function_event): allow musicfunction
1403         without music arg as music_function_event.
1404
1405         * lily/grob-scheme.cc (LY_DEFINE):
1406         ly:grob-robust-relative-extent. New function.
1407
1408         * scm/define-grobs.scm (all-grob-descriptions): add BendAfter
1409
1410         * scm/define-music-types.scm (music-descriptions): add BendAfterEvent.
1411
1412         * scm/output-lib.scm (fall::print): new function
1413
1414         * lily/fall-engraver.cc (stop_fall): new file.
1415
1416         * ly/music-functions-init.ly: alphabetise.
1417
1418         * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): pdf iso. eps as
1419         base.
1420
1421 2006-07-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
1422
1423         * VERSION (PATCH_LEVEL): bump version. Release 2.9.12
1424
1425         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
1426         doc pdftex usage.
1427
1428         * lily/translator-group.cc (connect_to_context): non const error message.
1429
1430         * Documentation/user/GNUmakefile ($(outdir)/%.pdf): update to use PDF
1431
1432         * scm/paper.scm (internal-set-paper-size): define landscape to #f
1433         if unset.
1434
1435         * scm/framework-ps.scm (convert-to-pdf): swap h and w in case of landscape. 
1436
1437         * stepmake/stepmake/texinfo-rules.make: strip DVI support.
1438
1439         * scm/framework-eps.scm (dump-stencils-as-EPSes): generate
1440         systems.pdftex too.
1441
1442         * scm/backend-library.scm (postscript->pdf): use -dEPSCrop for PDF.
1443
1444         * make/lilypond-vars.make (TEXINPUTS): add pdf output format.
1445
1446         * Documentation/topdocs/NEWS.tely (Top): add pdftex note.
1447
1448         * scm/output-ps.scm (resetrotation): use gsave/grestore for rotation.
1449
1450         * lily/main.cc (parse_argv): don't overwrite previous --formats string.
1451
1452         * scm/backend-library.scm (postscript->pdf): strip .eps too. 
1453
1454 2006-07-14  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1455
1456         * scm/layout-page-layout.scm: Define module, tidy code, use more
1457         functions iso. a single big one.
1458
1459         * scm/layout-page-dump.scm: move page dump functions used in two
1460         pass spacing to this file. Define module.
1461
1462         * scm/lily.scm (ly:load): don't load layout-page-layout.scm
1463          (separate module)
1464
1465         * ly/paper-defaults.ly: use module layout-page-layout.
1466
1467 2006-07-14  Erik Sandberg  <mandolaerik@gmail.com>
1468
1469         * lily/music.cc: Revised MusicEvent event class. It now contains
1470         event data directly instead of encapsulating it in music. The
1471         previously used class is renamed to OldMusicEvent.
1472
1473         * lily/stream-event.cc: Stream events are now probs.
1474         
1475         * lily/translator-group.cc, lily/translator.cc: Translators can
1476         now listen directly to stream events, by using macros
1477         [DECLARE,IMPLEMENT]_TRANSLATOR_LISTENER.
1478
1479         * lily/arpeggio-engraver.cc: Converted to use new event system
1480
1481         * THANKS: Corrected spelling mistake.
1482
1483 2006-07-12  Graham Percival  <gpermus@gmail.com>
1484
1485         * Documentation/user/SConscript, make/lilypond-vars.make,
1486         input/GNUmakefile: doc build looks in input/manual instead
1487         of input/test/
1488
1489         * input/manual/ GNUmakefile, SConscript: build files for
1490         input/manual/
1491
1492         * input/test/ various: some files moved to input/manual/ 
1493
1494         * Documentation/user/basic-notation.itely: small updates;
1495         thanks Kieren and Charles!
1496
1497 2006-07-12  Han-Wen Nienhuys  <hanwen@lilypond.org>
1498
1499         * VERSION (PACKAGE_NAME): release 2.9.11
1500
1501         * Documentation/topdocs/NEWS.tely (Top): update prop value 
1502
1503         * Documentation/user/basic-notation.itely (Tuplets): new property
1504         value.
1505
1506 2006-07-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
1507
1508         * python/convertrules.py (conv): tweaks. 
1509
1510         * VERSION (PATCH_LEVEL): bump version.
1511
1512         * python/convertrules.py (conv): add rule for
1513         tupletNumberFormatFunction.
1514
1515         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
1516         tupletNumberFormatFunction.
1517
1518         * scm/define-grobs.scm (all-grob-descriptions): calc TupletNumber
1519         text through 'text callback.
1520
1521         * lily/time-scaled-music-iterator.cc (construct_children): copy
1522         tweaks generated events.
1523
1524         * scm/define-context-properties.scm
1525         (all-user-translation-properties): remove tupletNumberFormatFunction
1526
1527         * lily/tuplet-engraver.cc (process_music): don't read
1528         tupletNumberFormatFunction
1529
1530         * scm/output-lib.scm (tuplet-number::calc-fraction-text): new
1531         function.
1532
1533 2006-07-11  Erik Sandberg  <mandolaerik@gmail.com>
1534
1535         * lily/global-context-scheme.cc: Separated ly:run-translator into
1536         smaller pieces.
1537
1538         * lily/score-engraver.cc, lily/score-performer.cc,
1539         scm/define-context-properties.scm: Make paper/midi output
1540         accessable as a context property.
1541
1542         * lily/score-translator.cc, lily/score-context.cc: Removed.
1543
1544 2006-07-07  Guido Amoruso  <guidonte@katamail.com>
1545
1546         * scm/ps-to-png.scm (Module): 
1547         * scm/framework-tex.scm (Module): 
1548         * scm/framework-ps.scm (Module): 
1549         * scm/backend-library.scm (Module): 
1550         * scm/framework-ps.scm: invoke gs with "-dDEVICEWIDTHPOINTS" and
1551         "dDEVICEHEIGHTPOINTS".
1552
1553 2006-07-04  Graham Percival  <gpermus@gmail.com>
1554
1555         * Documentation/user/ various: general improvements to
1556         "working with lilypond files" section.
1557
1558 2006-07-03  Erik Sandberg  <mandolaerik@gmail.com>
1559
1560         * lily/sequential-iterator.cc: Change the default get_music_list
1561         to read elements-callback music property
1562
1563         * scm/define-music-types.scm, scm/music-functions.scm: Cleaner
1564         processing of multimeasure rests. Softcoded
1565         sequential-music-iterator.
1566
1567         * lily/sequential-music-iterator.cc: Removed.
1568
1569 2006-06-28  Graham Percival  <gpermus@gmail.com>
1570
1571         * Documentation/user/basic-notation.itely: clarify \repeatTie.
1572
1573 2006-06-27  Erik Sandberg  <mandolaerik@gmail.com>
1574
1575         * lily/parser.yy: Wrap non-post-events in EventChords before
1576         assigning them to identifiers.
1577
1578 2006-06-27  Mats Bengtsson  <mabe@s3.kth.se>
1579
1580         * lily/bar-line.cc (compound_barline): Fix parenthesis error,
1581         gives correct vertical placement of \bar ":" in all staff
1582         sizes. Thanks Martial!
1583
1584 2006-06-26  Graham Percival  <gpermus@gmail.com>
1585
1586         * Documentation/user/invoking.itely : minor update from mailist.
1587
1588 2006-06-26  Erik Sandberg  <mandolaerik@gmail.com>
1589
1590         * lily/ various: Introduce stream events of types Prepare,
1591         OneTimeStep, CreateContext, AnnounceNewContext, RemoveContext,
1592         ChangeContext, SetProperty, RevertProperty, Override and Revert.
1593
1594         * lily/global-context*.cc: Time is now -inf before iteration
1595         starts.
1596
1597         * lily/include/context.hh: Removed unique_, init_
1598
1599         * Documentation/topdocs/NEWS: Make the feathered beam example
1600         avoid triggering a bug.
1601
1602 2006-06-24  Graham Percival  <gpermus@gmail.com>
1603
1604         * Documentation/user/ various: small additions from mailist.
1605
1606 2006-06-22  Mats Bengtsson  <mabe@s3.kth.se>
1607
1608         * ly/performer-init.ly: Add some missing links in the context
1609         hierarchy for MIDI output. There are probably some more missing!
1610
1611 2006-06-21  Graham Percival  <gpermus@gmail.com>
1612
1613         * Documentation/user/ various: minor spelling fixes;
1614         thanks Dave Luttinen!
1615
1616         * Documentation/user/ various: small clarifications;
1617         thanks Anthony Youngman!
1618
1619 2006-06-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
1620
1621         * po/fr.po: add \n appropriately.
1622
1623         * lily/lexer.ll: remove ? from version-seen?  
1624
1625 2006-06-19  John Mandereau  <john.mandereau@free.fr>
1626
1627         * po/fr.po; update translation, by Jean-Charles Malahieude and
1628         John Mandereau.
1629
1630 2006-06-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
1631
1632         * THANKS: add Markus Schneider.
1633
1634         * lily/tab-staff-symbol-engraver.cc: derive from Engraver, not
1635         Staff_symbol_engraver
1636
1637         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): don't
1638         replace staff_engraver
1639
1640         * lily/staff-symbol-engraver.cc (stop_spanner): announce end of
1641         spanner.
1642
1643         * lily/staff-collecting-engraver.cc
1644         (acknowledge_end_staff_symbol): new function
1645
1646         * lily/volta-engraver.cc (acknowledge_end_staff_symbol): new function. 
1647
1648         * lily/staff-collecting-engraver.cc
1649         (acknowledge_end_staff_symbol): new function.
1650
1651         * lily/main.cc: switch on relocation by default.
1652
1653 2006-06-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
1654
1655         * lily/spacing-spanner.cc (musical_column_spacing): set
1656         compound_fixed_note_space to 0.0. Document why.
1657
1658         * lily/simple-spacer.cc (is_sane): also have a kludge for numeric
1659         range of inverse_hooke_
1660         (Simple_spacer): init completely.
1661         (fits): const
1662         (get_line_configuration): don't use cols.resize(); it introduces
1663         initialized data.
1664
1665         * scm/framework-ps.scm (dump-page): add setstrokeadjust. 
1666
1667         * ps/music-drawing-routines.ps: remove selectfont L1 hack.
1668
1669         * lily/beaming-pattern.cc (best_splitpoint_index): urg, 2nd
1670         try. Divide by beatlength.
1671
1672         * input/regression/beaming-ternary-metrum.ly: update doc.
1673         add beatLength hack.
1674
1675         * scm/music-functions.scm (make-time-signature-set): add
1676         standard-beat-grouping. 
1677
1678 2006-06-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
1679
1680         * input/regression/tie-whole.ly: new file.
1681
1682         * lily/tie-formatting-problem.cc (set_column_chord_outline): don't
1683         cross center of note head in case of invisible stem. 
1684
1685 2006-06-16  Graham Percival  <gpermus@gmail.com>
1686
1687         * Documentation/user/ various: small fixes from mailist.
1688
1689 2006-06-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
1690
1691         * lily/breathing-sign.cc (offset_callback): idem.
1692
1693         * lily/align-interface.cc (align_to_fixed_distance): remove
1694         hungarian suffix.
1695
1696         * lily/beaming-pattern.cc (count_factor_twos): oops. We want
1697         x%2==0.
1698
1699 2006-06-15  Han-Wen Nienhuys  <hanwen@lilypond.org>
1700
1701         * VERSION (PACKAGE_NAME): release 2.9.9
1702
1703         * ly/lilypond-book-preamble.ly: add \version
1704
1705 2006-06-14  Han-Wen Nienhuys  <hanwen@lilypond.org>
1706
1707         * scripts/lilypond-book.py (PREAMBLE_LY): include
1708         lilypond-book-preamble.ly
1709
1710         * lily/stem.cc (get_beaming): return max of 0 and
1711         scm_ilength. Fixes slurring from/to beams.
1712
1713         * ly/lilypond-book-preamble.ly: new file.
1714
1715         * lily/slur.cc: add inspect-index feature.
1716
1717 2006-06-13  Graham Percival  <gpermus@gmail.com>
1718
1719         * Documentation/user/tutorial.itely: trivial fix.
1720
1721 2006-06-13  Erik Sandberg  <mandolaerik@gmail.com>
1722
1723         * lily/parser.yy, scm/ly-syntax-constructors.scm: Produce almost
1724         all non-event music in the parser via MAKE_SYNTAX.
1725
1726         * lily/parser-scheme.cc: Add ly:parser-error function
1727
1728         * scm/paper.scm: fix typo
1729
1730 2006-06-13  Han-Wen Nienhuys  <hanwen@lilypond.org>
1731
1732         * THANKS: add RT.
1733
1734         * lily/font-config.cc (init_fontconfig): add warning if cache_file
1735         is null.
1736
1737         * buildscripts/output-distance.py (test_compare_signatures):
1738         timing routines.
1739         (read_signature_file): use new signature format.
1740
1741         * scm/stencil.scm (write-system-signature): simpler signature
1742         format.
1743
1744         * lily/stem.cc (calc_stem_end_position): calc quantized-positions
1745         for beamed case. 
1746
1747         * lily/note-spacing.cc (stem_dir_correction): don't inspect
1748         stem_end_position, but estimate instead. 
1749
1750         * lily/tuplet-bracket.cc (calc_positions): look at
1751         stem-end-position for tuplet bracket slope. Fixes sloped tuplet
1752         brackets narrower than beams. 
1753
1754         * lily/lexer.ll: set version-seen? even if version is
1755         INVALID. 
1756
1757         * lily/rest.cc (y_offset_callback): bugfix: decide position
1758         override based on scm_is_number(). Fixes \rest on center staff
1759         line. 
1760
1761         * lily/beaming-pattern.cc (best_splitpoint_index): fix beaming
1762         patterns for 16th triplets.
1763
1764 2006-06-10  Graham Percival  <gpermus@gmail.com>
1765
1766         * Documentation/user/ page.itely, global.itely: editing
1767         and reorg.
1768
1769         * Documentation/user/ various: findex -> funindex.
1770
1771 2006-06-10  Erik Sandberg  <mandolaerik@gmail.com>
1772
1773         * lily/time-scaled-music-iterator.cc: Use tupletSpannerDuration to
1774         insert extra tuplet events.
1775
1776 2006-06-10  Graham Percival  <gpermus@gmail.com>
1777
1778         * Documentation/user/programming-interfaces.itely: add
1779         info from NEWS.
1780
1781         * python/convertrules.py: add annotatefoo -> annotate-foo
1782         rules.
1783
1784         * Documentation/user/global.itely: start editing.
1785
1786         * Documentation/user/page.itely: major editing, new spacing
1787         docs.
1788
1789 2006-06-10  Han-Wen Nienhuys  <hanwen@lilypond.org>
1790
1791         * scm/define-markup-commands.scm (wordwrap-markups): use
1792         output-def 'line-width if undefined.
1793
1794         * HACKING: trim outdated info.
1795
1796 2006-06-09  Mats Bengtsson  <mabe@s3.kth.se>
1797
1798         * scm/define-grobs.scm (all-grob-descriptions): Add
1799         line-spanner-interface to all grobs that already have
1800         text-spanner-interface or dynamic-text-spanner-interface
1801
1802         * scm/page.scm: Rename annotate{headers,systems,page}->
1803         annotate-*
1804
1805         * input/regression/page-spacing.ly,
1806         input/regression/page-layout-manual-position.ly: idem
1807
1808 2006-06-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
1809
1810         * lily/line-spanner.cc: cleanup property list.
1811
1812         * scripts/lilypond-book.py (find_toplevel_snippets): don't use
1813         generator expressions (2.3 compat). 
1814
1815 2006-06-09  Mats Bengtsson  <mabe@s3.kth.se>
1816
1817         * lily/vertical-align-engraver.cc: Make sure that the
1818         align{Above,Below}Context properties are included in the automatic
1819         documentation.
1820
1821 2006-06-08  Joe Neeman  <joeneeman@gmail.com>
1822
1823         * scm/paper-system.scm (paper-system-annotate): also annotate the
1824         estimated pure-Y-extent
1825
1826         * scm/define-grobs.scm: add pure-Y-extent and pure-Y-offset functions
1827
1828         * lily/system.cc (break_into_pieces): set the estimated height
1829         of each child system
1830
1831         * lily/stem.cc (pure_height): new pure-Y-extent callback
1832
1833         * lily/staff-symbol-referencer.cc (callback): don't destroy
1834         the staff-position property
1835
1836         * lily/hara-kiri-group-spanner.cc (request_suicide): split
1837         consider_suicide into two functions
1838
1839         * lily/constrained-breaking.cc (resize): use the new pure
1840         callbacks to estimate the height of a system
1841
1842         * lily/axis-group-interface.cc (pure_group_height): new
1843         side-effect-free VerticalAxisGroup height-callback
1844
1845         * lily/align-interface.cc (get_extents_aligned_translates):
1846         split align_elements_to_extents into two functions
1847         (get_pure_child_y_translation): new function
1848
1849         * lily/grob.cc: new functions for pure-Y-extent and pure-Y-offset
1850
1851         * lily/item.cc: new functions pure_is_visible and spanned_rank_iv
1852
1853         * lily/paper-score.cc: cache break_indices and columns
1854
1855         * lily/side-position-interface.cc: new pure-Y-extent callbacks
1856         
1857 2006-06-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
1858
1859         * lily/font-config.cc (init_fontconfig): do the init if
1860         cache_file, but don't look at cache_file.
1861
1862         * input/regression/quote-tie.ly: new file.
1863
1864         * lily/tie-engraver.cc (struct Head_event_tuple): add end_moment_
1865         to Head_event_tuple, so we deal gracefully with ties on
1866         cue-endings.
1867
1868         * lily/pango-font.cc (pango_item_string_stencil): type correctness
1869         for FcChar8*
1870
1871 2006-06-08  Graham Percival  <gpermus@gmail.com>
1872
1873         * input/test/ smart-transpose.ly, reverse-music.ly:
1874         \applyMusic to music functions update, thanks Michael!
1875
1876 2006-06-07  Graham Percival  <gpermus@gmail.com>
1877
1878         * input/test/ add-staccato.ly, add-text-script.ly,
1879         unfold-all-repeats.ly, music-box.ly: \applyMusic to
1880         music functions update, thanks to Michael Meixner.
1881
1882         * Documentation/user/music-glossary.tely: small fix
1883         from Francisco.
1884
1885         * Documentation/user/ various: minor additions from mailist.
1886
1887         * Documentation/user/lilypond.tely, basic-notation.itely:
1888         small test of @funindex.  (works here)
1889
1890         * input/test/font-table.ly: reduce size to partially
1891         de-ugly version in manual.
1892
1893         * Documentation/user/page.itely: new file (split former
1894         "global issues" into "page settings" and "non-musical
1895         output".
1896
1897         * Documentation/user/ various: fix @ref{}s to match
1898         new chapter names (above).
1899
1900 2006-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
1901
1902         * SConstruct (LILYPONDPREFIX): Bootstrap fix.
1903
1904 2006-06-06  Graham Percival  <gpermus@gmail.com>
1905
1906         * Documentation/user/advanced-notation.itely: add example
1907         for segno/coda on barline.
1908
1909         * tex/texinfo.tex: merge from upstream.
1910
1911 2006-06-06  Jan Nieuwenhuizen  <janneke@gnu.org>
1912
1913         * scripts/lilypond-book.py (process_snippets): Argument fix.
1914
1915         * SConstruct:
1916         * buildscripts/builder.py:
1917         * lily/SConscript: 
1918         * mf/SConscript: 
1919         * Documentation/user/SConscript:  More SCons fixes.
1920
1921 2006-06-03  Jan Nieuwenhuizen  <janneke@gnu.org>
1922
1923         * lily/font-config.cc (init_fontconfig): Only initialize if
1924         global cache_file is found.
1925
1926 2006-06-06  Erik Sandberg  <mandolaerik@gmail.com>
1927
1928         * ly/music-functions-init.ly: Updated \overrideProperty to use the
1929         new \applyOutput.
1930
1931 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
1932
1933         * VERSION (PACKAGE_NAME): release 2.9.8
1934
1935         * lily/ledger-line-engraver.cc (stop_translation_timestep): new
1936         function. Delay ledger modifying ledgered grobs to
1937         stop_translation_timestep(), to ensure that we're ledgering
1938         according to the new spanner.
1939         (acknowledge_staff_symbol): don't check for non-NULL
1940         staff_sym->get_bound()
1941
1942         * lily/staff-symbol-engraver.cc (start_spanner): set left bound on
1943         creation.
1944
1945         * Documentation/pictures/GNUmakefile (XPM_FILES): src-wildcard for
1946         pictures too.
1947
1948         * GNUmakefile.in (dist-toplevel-txt-files): dist aclocal.m4
1949         directly from srcdir/stepmake/aclocal.m4
1950         
1951         * Documentation/misc/GNUmakefile (TEXTS): use src-wildcard for
1952         disting MISC files.
1953
1954         * lily/simple-spacer.cc (get_column_desc): desc -> description.
1955
1956 2006-06-06  Joe Neeman  <joeneeman@gmail.com>
1957
1958         * lily/simple-spacer.cc (get_line_configuration): add
1959         keep-inside-line rods
1960         (struct Column_desc): add constructor
1961         (struct Rod_desc): add constructor
1962         (get_line_forces): check for forced page breaks here too
1963
1964         * lily/instrument-name-engraver.cc (acknowledge_axis_group): prevent
1965         support/elements cycles between InstrumentNames and AxisGroups
1966
1967 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
1968
1969         * config.make.in (METAFONT): remove MAKEINFO_VERSION
1970
1971         * stepmake/stepmake/topdocs-targets.make (make-txt-files): define
1972         make-txt-files target.
1973
1974         * stepmake/stepmake/toplevel-targets.make (do-top-doc): use
1975         make-txt-files target.
1976
1977         * configure.in (LINK_GXX_STATICALLY): $srcdir for readlink.py
1978
1979         * stepmake/stepmake/generic-vars.make (distdir): create dist in
1980         top-build-dir.
1981
1982 2006-06-06  Jürgen Reuter  <reuter@ipd.uka.de>
1983
1984         * Documentation/user/instrument-notation.itely,
1985         input/regression/breathing-sign-ancient.ly,
1986         input/test/divisiones.ly: Removed redundant property settings for
1987         vaticana contexts.
1988
1989         * ly/gregorian-init.ly: Rewrote \versus and \responsum in order to
1990         fix lyrics alignment problems.  They are implemented now as scheme
1991         functions that add the appropriate unicode char to the first lyric
1992         event rather than adding a separate lyric event.  Minor edit of
1993         comments.
1994
1995 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
1996
1997         * GNUmakefile.in (dist-toplevel-txt-files): new target. Don't
1998         pollute src dir with built .txt files, but install directly from
1999         Documentation/topdocs/out/
2000
2001         * buildscripts/output-distance.py
2002         (ComparisonData.create_html_result_page): put version/directories
2003         in table header.
2004
2005         * Documentation/topdocs/NEWS.tely (Top): document spacing section
2006         feature.
2007
2008         * configure.in (LINK_GXX_STATICALLY): use readlink.py to resolve links.
2009         Patch by Karl Hammar
2010         
2011         * buildscripts/readlink.py: add  file.
2012         Patch by Karl Hammar
2013
2014 2006-06-06  Joe Neeman  <joeneeman@gmail.com>
2015
2016         * lily/tuplet-number.cc (print): prevent stencil from being
2017         garbage collected.
2018
2019 2006-06-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
2020
2021         * scm/stencil.scm (write-system-signature): explicitly 
2022         -well, superfluously- close output port.
2023
2024         * buildscripts/output-distance.py (main): oops. Add extra argument.
2025
2026 2006-06-05  Graham Percival  <gpermus@gmail.com>
2027
2028         * Documentation/user/music-glossary.tely: clarified example
2029         from Francisco Vila, thanks!
2030
2031 2006-06-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
2032
2033         * input/regression/spacing-section.ly: new file.
2034
2035         * lily/input.cc (programming_error): new function.
2036
2037         * lily/spacing-engraver.cc (try_music): new function. Accept
2038         spacing-section-event
2039
2040         * lily/spacing-spanner.cc (set_springs): take slices of all
2041         columns for spacing.
2042
2043         * lily/include/paper-column.hh (class Paper_column): add
2044         Paper_column::compare.
2045
2046         * ly/spanners-init.ly (newSpacingSection): add newSpacingSection.
2047
2048         * scm/define-music-types.scm (music-descriptions): add
2049         SpacingSectionEvent
2050
2051         * lily/music-iterator.cc (report_event): use programming_error for
2052         sending non-event error.
2053
2054         * lily/input.cc (programming_error): new function
2055
2056         * buildscripts/output-distance.py (main): use compare-XXX for
2057         compare files.
2058         (main): --threshold option, default at 0.30
2059
2060         * output-distance.py (main): add --threshold option.
2061
2062 2006-06-04  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2063
2064         * scm/paper-system.scm (paper-system-annotate): fix problem when
2065         annotating an empty system
2066
2067 2006-06-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
2068
2069         * GNUmakefile.in: reinstate old web tar/copying.
2070
2071 2006-06-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
2072
2073         * lily/lyric-combine-music-iterator.cc (find_voice): return 0 if
2074         nothing changes. (Erik S) 
2075
2076         * lily/percent-repeat-iterator.cc (get_music_list): fix repeat
2077         count. (Erik S)
2078
2079 2006-05-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2080
2081         * scm/define-markup-commands.scm (whiteout): do not force
2082         foreground color of argument markup to black.
2083
2084         * scm/stencil.scm (annotate-y-interval): put arrow dimension at
2085         the left of the arrow, instead of below the arrow name, so that,
2086         when two little arrows are vertically stacked, their dimensions
2087         and name should not overlap. Add a color key parameter.
2088
2089         * scm/paper-system.scm (paper-system-annotate): Annotate
2090         next-space+next-padding instead of next-space. Annotate space
2091         between next-padding and next-space+padding, respectively, and
2092         following system extent and refpoint-Y-extent. Use colors.
2093
2094         * scm/page.scm (annotate-page): translate annotations slightly to
2095         the right.
2096
2097 2006-06-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
2098
2099         * lily/figured-bass-position-engraver.cc (acknowledge_end_slur):
2100         fix for x-staff slurs. Thanks Joe!
2101
2102         * buildscripts/output-distance.py
2103         (SystemLink.output_expression_change_count): keep track of changed
2104         details, and dump in details html page.
2105  
2106         * input/regression/figured-bass-staff.ly: add note about setting
2107         properties in Staff context.
2108
2109         * lily/figured-bass-position-engraver.cc (acknowledge_slur):
2110         add slurs and ties to support too.
2111
2112         * buildscripts/output-distance.py (main): set dest_dir
2113         argument. Add --max-count option.
2114
2115 2006-06-02  Jürgen Reuter  <reuter@ipd.uka.de>
2116
2117         * ly/gregorian-init.ly: Converted to utf-8.  Added memorable
2118         shortcuts for special unicode chars that are useful in chant
2119         notation.  Revised exisiting and added new comments.
2120
2121 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
2122
2123         * make/mutopia-rules.make: remove duplicate recipe.
2124
2125 2006-06-02  Werner Lemberg  <wl@gnu.org>
2126
2127         * tex/texinfo.cnf: Fix typo (\euro -> \minus).
2128         Add support for U+0132 (IJ) and U+0133 (ij).
2129
2130 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
2131
2132         * buildscripts/output-distance.py (FileLink): new class. collect
2133         info systems from one .ly file. 
2134         (FileLink.link_files_for_html): further tweaks.
2135
2136 2006-06-02  Graham Percival  <gpermus@gmail.com>
2137
2138         * tex/texinfo.tex: partial fix for @funindex.
2139
2140         * Documentation/user/macros.tely: uncomment @funindex (doesn't
2141         break anything).
2142
2143 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
2144
2145         * make/mutopia-vars.make (ly_examples): replace .ly.txt with .ly
2146
2147         * tex/texinfo.tex (sectionheading, q.v.): call \quoteexpand for
2148         @example too. Backportme.
2149
2150 2006-06-02  Graham Percival  <gpermus@gmail.com>
2151
2152         * tex/texinfo.cnf: added UTF-8 support for texinfo; patch
2153         from Werner Lemberg.
2154
2155 2006-06-02  Paco (Francisco Vila)  <fravd@ya.com>
2156
2157         * Documentation/user/music-glossary.tely: additional spanish
2158         updates and a lyrics fix in an example.
2159
2160 2006-06-02  Jürgen Reuter  <reuter@ipd.uka.de>
2161
2162         * scm/define-grob-properties.scm: Previous patch contained
2163         spurious line from another patch not yet committed.  Fixed.
2164
2165         * scm/define-grob-properties.scm: Add missing doc strings for
2166         ancient notation.
2167
2168 2006-06-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
2169
2170         * buildscripts/output-distance.py
2171         (ComparisonData.write_text_result_page): separate the scores, sort
2172         by geo_score.
2173
2174         * scm/framework-eps.scm (output-classic-framework): start at 1 for
2175         system signatures.
2176
2177         * buildscripts/output-distance.py (me_path): use argv[0] for
2178         sys.path extension
2179         (ComparisonData.img_cell): use colored borders.
2180
2181         * scm/stencil.scm (write-system-signature): escape newlines too.
2182         (write-system-signature): use (1,-1) interval for empty interval
2183
2184 2006-01-01  Graham Percival  <gpermus@gmail.com>
2185
2186         * Documentation/user/music-glossary.tely: Spanish updates
2187         from Francisco Vila.
2188
2189         * Documentation/user/lilypond-book.itely: addition from
2190         Vaclav Smilauer.
2191
2192         * Documentation/user/ various: edits, small additions
2193         from mailist, etc.
2194
2195 2006-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
2196
2197         * GNUmakefile.in (tree-lib-prefix-current):
2198         (tree-share-prefix-current): Use version number in tree, add
2199         `current' symlinks.
2200
2201 2006-06-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
2202
2203         * GNUmakefile.in: write VERSION, again.
2204
2205         * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
2206         $(outdir)/%.ly $(outdir)/%.ps): dump sigs for normal files too.
2207
2208         * stepmake/aclocal.m4: robuster version detection.
2209
2210         * buildscripts/output-distance.py
2211         (ComparisonData.create_html_result_page): copy only if file
2212         exists, fixup src paths.
2213
2214         * stepmake/bin/add-html-footer.py (built): junk gulp_file()
2215
2216 2006-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
2217
2218         * stepmake/aclocal.m4: Robustification for (gcc) version detection.
2219         Another datarootdir reto.
2220
2221         * cygwin/postinstall-lilypond.sh: Do not fail if info docs aren't
2222         available.  This should be moved to postinstall-lilypond-doc.
2223
2224 2006-05-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
2225
2226         * GNUmakefile.in: simplify local-WWW-post. 
2227         remove -type l from find.
2228
2229         * buildscripts/output-distance.py (ComparisonData.compare_trees):
2230         fixes. Don't follow symlinks.
2231         (ComparisonData.create_html_result_page): remove previous results.
2232         insert ../python in path.
2233
2234         * scripts/lilypond-book.py (PREAMBLE_LY): spacing fixes.
2235
2236 2006-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
2237
2238         * config.make.in (datadir): Add datarootdir to silence autoconf.
2239
2240         * stepmake/aclocal.m4: Update for autoconf-2.59d.
2241
2242 2006-05-31  Erlend Aasland  <erlenda@gmail.com>
2243
2244         * dynamic-engraver.cc: fix bug (dynamics collide with accidentals)
2245
2246         * scm/output-ps.scm (repeat-slash): fix a bug that made repeat
2247         slash beams too wide.
2248
2249 2006-05-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
2250
2251         * VERSION: release 2.9.7
2252         
2253 2006-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
2254
2255         * lily/relocate.cc (read_relocation_dir): Do not blindly
2256         dereference DIR.
2257
2258 2006-05-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
2259
2260         * lily/parser.yy: replace THIS by PARSER
2261
2262         * Documentation/index.html.in: add link to test-results.html page.
2263
2264         * Documentation/topdocs/NEWS.tely (Top): update NEWS entry.
2265
2266         * scm/translation-functions.scm (format-bass-figure): translate
2267         digits over 10 to the left
2268
2269         * scm/define-markup-commands.scm (translate-scaled): new markup.
2270
2271         * mf/feta-nummer-code.mf (code): overshoot the topright tip of the
2272         7 glyph. 
2273
2274         * ly/engraver-init.ly: add Figured_bass_engraver
2275
2276         * lily/engraver-group.cc (acknowledge_grobs): use start/stop drul.
2277
2278         * lily/figured-bass-engraver.cc (clear_spanners): use everywhere.
2279
2280         * lily/score-engraver.cc (announce_grob): only note START announces.
2281
2282         * lily/include/engraver-group.hh (Translator_group):
2283         acknowledge_hash_table_ is now drul.
2284
2285         * lily/engraver.cc (announce_end_grob): new method.
2286
2287         * lily/include/grob-info.hh (class Grob_info): add start_end_ member.
2288
2289         * lily/translator-dispatch-list.cc (create): take start_end argument.
2290
2291         * lily/include/translator.hh (TRANSLATOR_DECLARATIONS): change
2292         acknowledge_static_array_ to drul
2293
2294         * lily/include/translator.icc (ADD_END_ACKNOWLEDGER): new macro.
2295
2296         * scm/define-grob-interfaces.scm
2297         (bass-figure-alignment-interface): add bass-figure-alignment-interface
2298
2299         * scm/define-grobs.scm (all-grob-descriptions): add
2300         BassFigureAlignmentPositioning
2301
2302         * ly/Welcome-to-LilyPond-MacOS.ly: include in LilyPond, so version
2303         number stays up to date. Backportme.
2304
2305 2006-05-30  Mats Bengtsson  <mabe@s3.kth.se>
2306
2307         * Documentation/user/basic-notation.itely (Bar lines): Document
2308         the "||:" bar type. 
2309
2310 2006-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
2311
2312         * buildscripts/builder.py: Remove --ly option/target from mf-to-table.
2313
2314         * scripts/lilypond-book.py: Bugfix: do not blindly attempt
2315         .../current hack if LILYPONDPREFIX is fine.  Fixes `scons doc'
2316         build.
2317
2318         * Resurrect `scons lily' build.
2319
2320         * SConstruct (symlink_tree): Bugfix: link
2321         music-drawing-routines.ps to file iso directory.
2322
2323         * lily/SConscript: Remove kpath-guile from LIBS.
2324
2325         * SConstruct (libdir_package_version): Typo.
2326         (configure): Comment-out fontforge for lack of fontforge.pc .
2327         Also add libdir* to environment.
2328
2329 2006-05-30  Graham Percival  <gpermus@gmail.com>
2330
2331         * Documentation/user/ various: minor additions from mailist and
2332         editing.
2333
2334 2006-05-30  Paco <fravd@ya.com>
2335
2336         * Documentation/user/music-glossary.tely: numerous corrections and
2337         some new translations.
2338
2339 2006-05-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
2340
2341         * BackportmeStart.
2342         
2343         * buildscripts/output-distance.py
2344         (ComparisonData.create_html_result_page): new routine: summarise
2345         results in HTML page with images. 
2346         (ComparisonData.create_text_result_page): create summary text files too.
2347
2348         * GNUmakefile.in (web-ext): package .signature files too. They
2349         compress well. 
2350
2351         * scm/stencil.scm (write-system-signature): typo.
2352
2353         * GNUmakefile.in: create web-root/VERSION to help upload scripts.
2354
2355         * scm/stencil.scm (write-system-signature): better escaping.
2356         only write signature for music systems, not for markup systems.
2357
2358         * scm/framework-ps.scm (output-framework): dump-signatures support
2359         for plain output.
2360
2361         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): add -ddump-signatures.
2362
2363         * scm/framework-ps.scm (write-preamble): redefine mark_URI to nop
2364         for -dno-point-and-click
2365
2366         * lily/grob.cc (get_print_stencil): don't read
2367         point_and_click_global to determine whether to set grob-cause.
2368
2369 2006-05-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
2370
2371         * buildscripts/output-distance.py (main): new function.
2372         (ComparisonData): new class.
2373
2374         * lily/ledger-line-engraver.cc (acknowledge_staff_symbol): be more
2375         careful with generating new LedgerLineSpanners.
2376
2377         * lily/ledger-line-spanner.cc (set_spacing_rods): suicide if no staff.
2378
2379         * ly/engraver-init.ly: remove Ledger_line_engraver from Voice
2380         context. This fixes double ledger lines in output. 
2381
2382         * lily/system.cc (get_paper_system): remove 3 layer limit.
2383
2384         * buildscripts/output-distance.py (SystemLink.distance): new
2385         file. Compare signatures.
2386
2387         * python/safeeval.py (SafeEval.visitUnarySub): new file.
2388
2389         * lily/grob-array.cc (remove_duplicates): rename from
2390         uniq(). Sort before calling uniq() so it actually works.
2391
2392 2006-05-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
2393
2394         * scripts/lilypond-book.py (Lilypond_file_snippet.ly): strip
2395         \version from lilypond file snippet.
2396         (Lilypond_file_snippet.ly): oops. typo.
2397         (find_toplevel_snippets): urgh. again.
2398
2399         * lily/system.cc (get_paper_systems): uniq all_elements_ , to
2400         prevent duplicated broken items in output.
2401
2402         * scm/framework-eps.scm (output-classic-framework): only dump if
2403         dump-signatures is set.
2404
2405         * scm/lily.scm (define-scheme-options): add dump-signatures option.
2406
2407         * scm/stencil.scm (write-system-signature): new routine: write
2408         python parseable signature of a separate paper system.
2409         BackportmeEnd.
2410         
2411 2006-05-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
2412
2413         * lily/stanza-number-engraver.cc (process_music): use is_markup()
2414         iso is_string().
2415         include header.
2416
2417 2006-05-25  Erik Sandberg  <mandolaerik@gmail.com>
2418
2419         * translator-group.cc: send music events to engravers in
2420         non-bottom contexts.
2421
2422         * tuplet-engraver.cc: process tuplet brackets in correct order.
2423
2424 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
2425
2426         * stepmake/aclocal.m4: STEPMAKE_PYTHON(): clear cached value since
2427         arg 2 might point us to a new binary (patch by Karl Hammar)
2428         
2429 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
2430
2431         * VERSION (PACKAGE_NAME): release 2.9.6
2432
2433         * Documentation/topdocs/NEWS.tely (Top): trim explanation. 
2434
2435         * Documentation/user/*.itely: 2nd
2436         attempt: replace funindex -> findex globally.
2437
2438 2006-05-24  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2439
2440         * input/no-notation/display-lily-tests.ly: fix \applyOutput
2441         test. Add \break, \pageBreak, \pageTurn, etc, tests.
2442
2443         * scm/define-music-display-methods.scm: display methods for
2444         breaks. Fix \applyOutput.
2445
2446 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
2447
2448         * Documentation/user/macros.itexi: comment out funindex expansion. 
2449
2450         * Documentation/user/music-glossary.tely: junk \oldaddlyrics
2451         everywhere.
2452
2453         * GNUmakefile.in: fix wildcarding for scrips/out/ links. Thanks
2454         Karl Hammar. Backportme.
2455  
2456         * Documentation/user/advanced-notation.itely (Balloon help): idem.
2457
2458         * Documentation/user/changing-defaults.itely (Creating contexts): idem.
2459
2460         * Documentation/user/programming-interface.itely (Running a
2461         function on all layout objects): idem.
2462
2463         * Documentation/user/introduction.itely (Automated engraving):
2464         update \applyOutput syntax
2465
2466         * lily/lyric-combine-music-iterator.cc (start_new_syllable):
2467         remove debugging hook.
2468
2469         * configure.in (LINK_GXX_STATICALLY): use "" to allow $
2470         expansion. 
2471
2472         * Documentation/user/GNUmakefile (TEXI2DVI_FLAGS): add -E.
2473
2474         * stepmake/stepmake/texinfo-rules.make ($(outdir)/%.dvi): add
2475         TEXI2DVI_FLAGS to texi2dvi invocation. 
2476
2477 2006-05-24  Erik Sandberg  <mandolaerik@gmail.com>
2478
2479         * lily/chord-tremolo-*.cc: Reworked how \repeat "tremolo"
2480         works. More work is done by iterator now, and engraver has been
2481         very much simplified.
2482
2483         * lily/translator-group.cc: try_music is now invoked through a
2484         listener
2485
2486         * lily/*-iterator.cc: Massive cleanups. Junked
2487         try_music_in_children globally. Renamed try_music to report_event,
2488         and made that method descend to a bottom context automatically.
2489
2490         * lily/event-iterator.cc: New file.
2491
2492         * lily/output-property-iterator.cc,
2493         lily/old-lyric-combine-music-iterator.cc: Removed.
2494
2495         * python/convert-rules.py: Modified the syntax for \applyOutput.
2496
2497 2006-05-23  Graham Percival  <gpermus@gmail.com>
2498
2499         * stepmake/stepmake/texinfo-rules.make: added -E, allows pdf doc
2500         creation.
2501
2502         * Documentation/user/ various: stuff that might have helped
2503         to fix the pdf creation, plus some minor doc additions.
2504
2505         * Documentation/user/changing-defaults.itely: remove @b from
2506         @b{ @internasref{foo}}; this breaks texi2dvi -E.
2507
2508 2006-05-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
2509
2510         * lily/beaming-pattern.cc (beamify): deal with negative start
2511         moments for beaming patterns.
2512
2513 2006-05-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
2514
2515         * lily/beaming-info.cc (beamify): new function: read beatLength
2516         and beatGrouping from context. 
2517
2518         * input/regression/beam-beat-grouping.ly (Module): new file.
2519
2520         * input/regression/beam-unconnected-beamlets.ly (Module): new file.
2521
2522         * lily/beam.cc (get_beam_segments): generate events for
2523         max_connect_ case too.
2524         (get_beam_segments): read Stem::max-beam-connect.
2525
2526         * input/regression/beam-single-stem.ly: new file.
2527
2528         * lily/stem.cc (set_beaming): use #f as signaling value for
2529         beamcount 0.
2530
2531         * lily/beam-engraver.cc (typeset_beam): set right bound if unset.
2532
2533         * lily/beam.cc (set_beaming): read clip-edges property.
2534         (calc_direction): don't suicide for single stem.
2535
2536         * lily/beaming-info.cc (best_splitpoint_index): take bool*
2537         argument, remove 1<<15 hack. Remove clip_edges() 
2538
2539         * lily/hairpin.cc (print): only do padding for nonmusical bounds
2540
2541 2006-05-21  Graham Percival  <gpermus@gmail.com>
2542
2543         * Documentation/user/basic-notation.itely: reorg.
2544
2545         * Documentation/user/ various: minor fixes.
2546
2547 2006-05-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
2548
2549         * lily/stencil-expression.cc (register_stencil_head): opps, append
2550         to cdr of static SCM object.
2551
2552 2006-05-19  Graham Percival  <gpermus@gmail.com>
2553
2554         * Documentation/user/README.txt, lilypond.tely, macros.itexi:
2555         update framework for command index.  DOC WRITERS: use @funindex
2556         instead of @cindex @code{}.
2557
2558         * Documentation/user/ various: replace @cindex @code{} => @funindex
2559
2560 2006-05-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
2561
2562         * lily/beam.cc (set_stem_lengths): trigger 'beaming callback, in
2563         case positions is set manually. 
2564
2565 2006-05-18  Erik Sandberg  <mandolaerik@gmail.com>
2566         
2567         * scm/ly-syntax-constructors.scm: New file. Converted a few syntax
2568         rules to Scheme.
2569
2570 2006-05-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
2571
2572         * Documentation/user/changing-defaults.itely (Contexts explained):
2573         use absolute dimension for @image.
2574
2575         * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): generate PNG
2576         out image for illustration too.
2577         ($(outdir)/%.png): add more png <-> eps rules. 
2578
2579 2006-05-17  Graham Percival  <gpermus@gmail.com>
2580
2581         * Documentation/user/ various: remove trailing whitespace, cosmetic
2582         change to reduce changes produced by diff.
2583
2584 2006-05-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
2585
2586         * lily/main.cc (do_chroot_jail): correctness tweak.
2587
2588         * python/lilylib.py (system): import subprocess in system () only.
2589
2590         * scripts/*.py: use TARGET_PYTHON iso PYTHON. Backportme.
2591
2592         * make/substitute.make (ATVARIABLES): add TARGET_PYTHON as subst
2593         variable. Backportme.
2594
2595 2006-05-17  Erik Sandberg  <mandolaerik@gmail.com>
2596         
2597         * lily/parser.yy: Change all syntax rules of type Music to SCM type
2598
2599 2006-05-17  Werner Lemberg  <wl@gnu.org>
2600
2601         * lily/lexer.ll (init_signature_has_table): Add
2602         `scm-scm-music-music'.
2603
2604         * lily/parser.yy (MUSIC_FUNCTION_SCM_SCM_MUSIC_MUSIC): New token.
2605         (Generic_prefix_music_scm): Add rule for it.
2606
2607         * lily/quote-iterator.cc (Quote_iterator::process): Handle
2608         `quoted-transposition' property.
2609
2610         * ly/music-functions-init.ly (transposedCueDuring): New function.
2611
2612         * scm/define-music-properties.scm (all-music-properties): Updated.
2613
2614         * Documenation/topdocs/NEWS.itely: Document it.
2615
2616 2006-05-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
2617
2618         * python/lilylib.py (system): move import subprocess to system()
2619         definition. 
2620
2621         * python/convertrules.py (conv): fix convert-ly rules for 2.9.4
2622
2623         * VERSION (PATCH_LEVEL): release 2.9.5
2624         
2625         * Documentation/topdocs/INSTALL.texi (Top): update versions and
2626         build instructions. 
2627
2628         * ly/engraver-init.ly: switch on hairpinToBarline by default.
2629
2630 2006-05-16  Graham Percival  <gpermus@gmail.com>
2631
2632         * Documentation/user/basic-notation.itely: editing from Dave, thanks!
2633
2634         * Documentation/user/ various: minor fixes.
2635
2636 2006-05-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
2637
2638         * Documentation/topdocs/NEWS.tely (Top): add hairpinToBarline feature.
2639
2640 2006-05-16  Mats Bengtsson  <mabe@s3.kth.se>
2641
2642         * Documentation/user/advanced-notation.itely (Instrument names):
2643         Modified obsolete instruction on how to move instrument names away
2644         from the staves. Hmm, at second thought the bug probably has been
2645         solved, so the full bug description should probably be removed.
2646
2647 2006-05-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
2648
2649         * lily/dynamic-engraver.cc (typeset_all): hang ending on
2650         currentCommandColumn. 
2651
2652         * lily/hairpin.cc (print): also add padding for non-neighbor
2653         hairpin bounds.
2654
2655         * scm/define-context-properties.scm
2656         (all-user-translation-properties): add hairpinToBarline
2657
2658         * input/regression/hairpin-to-barline.ly: new file.
2659
2660         * lily/context.cc (internal_send_stream_event): thinko fix.
2661
2662         * lily/tie.cc (set_default_control_points): robustness fix.
2663
2664         * python/musicxml.py (Part.interpret): don't complain about
2665         incomplete measures.
2666
2667         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): only add
2668         new music if last_event_chord() returned None.
2669
2670         * python/musicxml.py (Part.interpret): skip back over chord notes.
2671
2672 2006-05-16  Erik Sandberg  <mandolaerik@gmail.com>
2673         
2674         * lily/percent-repeat-engraver.cc, lily/parser.yy,
2675         lily/define-music-types.cc, lily/percent-repeat-iterator.cc,
2676         lily/slash-repeat-engraver.cc,
2677         lily/include/percent-repeat-iterator.hh: Rework percent repeats:
2678         iterator sends PercentEvents
2679
2680         * lily/time-scaled-music-iterator.cc, lily/tuplet-engraver.cc:
2681         rework tuplets: send start/stop events to engraver
2682
2683         * lily/context.cc, lily/music.cc, lily/context-scheme.cc: Add
2684         dispatchers event-source and events-below to Context
2685         
2686 2006-05-15  Graham Percival  <gpermus@gmail.com>
2687
2688         * Documentation/user/README.txt: update info for doc writers.
2689
2690         * Documentation/user/programming-interface.itely: integrate
2691         Nicolas' fixes for chapter rewrite.
2692
2693         * Documentation/user/ various: minor fixes.
2694
2695 2006-05-15  Han-Wen Nienhuys  <hanwen@lilypond.org>
2696
2697         * lily/clef-engraver.cc: cleanup.
2698
2699         * Documentation/user/GNUmakefile: dist context-example.eps too.
2700
2701         * lily/key-engraver.cc (create_key): use
2702         explicitKeySignatureVisibility for cancellation too. 
2703
2704         * lily/font-config.cc (init_fontconfig): don't close file if
2705         f==NULL. 
2706
2707 2006-05-15  Erlend Aasland  <erlenda@gmail.com>
2708
2709         * Documentation/topdocs/NEWS.tely: niente and rotation news
2710
2711 2006-05-14  Erlend Aasland  <erlenda@gmail.com>
2712
2713         * lily/include/stencil.hh
2714         * lily/stencil.cc (rotate): new function. Makes it possible
2715         to rotate a stencil around a given offset.
2716
2717         * lily/grob.cc (get_print_stencil): add rotation support
2718
2719         * lily/stencil-interpret.cc (interpret_stencil_expression):
2720         add rotation support
2721
2722         * lily/stencil-scheme.cc (ly:stencil-rotate): new function
2723
2724         * scm/define-grob-properties.scm: add 'rotation property
2725
2726         * scm/define-markup-commands.scm: add rotate markup command
2727         
2728         * scm/output-ps.scm: add rotation support in PostScript backend
2729
2730         * scm/output-svg.scm: add rotation support in SVG backend
2731
2732 2006-05-13  Graham Percival  <gpermus@gmail.com>
2733
2734         * Documentation/user/music-glossary.itely: French correction.
2735
2736         * Documentation/user/programming-interface.itely: major
2737         new docs, some reorg, some info from Nicolas.
2738
2739         * Documentation/user/ various: small fixes.
2740
2741 2006-05-12  Mats Bengtsson  <mabe@s3.kth.se>
2742
2743         * Documentation/user/programming-interface.itely (Markup
2744         programmer interface): Remove duplicate text.
2745
2746 2006-05-12  Graham Percival  <gpermus@gmail.com>
2747
2748         * Documentation/user/context-example.eps: new file.
2749
2750         * Documentation/user/changing-defaults.itely: set up file to
2751         use eps image.
2752
2753         * Documentation/user/programming-interface.itely: changes
2754         from mailist.
2755
2756 2006-05-12  Han-Wen Nienhuys  <hanwen@lilypond.org>
2757
2758         * configure.in (LINK_GXX_STATICALLY): python 2.4 req.
2759
2760 2006-05-11  Graham Percival  <gpermus@gmail.com>
2761
2762         * Documentation/user/programming-interface.itely: first round of
2763         editing and merging emails from Nicolas.
2764
2765         * Documentation/user/scheme-tutorial: minor edit.
2766
2767 2006-05-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
2768
2769         * python/musicxml.py (Xml_node.__init__): _attribute_dict stores
2770         XML attributes.
2771         (Xml_node.message): use it.
2772
2773         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): 
2774         oops. Add duration argument.
2775
2776 2006-05-10  Joe Neeman  <joeneeman@gmail.com>
2777
2778         * lily/paper-column-engraver.cc (make_columns):
2779         * scm/define-grobs.scm: Revert my previous change and set the default
2780         in define-grobs.scm instead.
2781
2782 2006-05-09  Graham Percival  <gpermus@gmail.com>
2783         
2784         * Documentation/user/changing-defaults.itely: general editing,
2785         info about \set and \override.
2786
2787         * Documentation/user/tweaking.itely, advanced-notation.itely:
2788         fixes from Dave Luttinen, thanks!
2789
2790 2006-05-09  Joe Neeman  <joeneeman@gmail.com>
2791
2792         * lily/paper-column-engraver.cc (make_columns): By default, a column
2793         needs to be breakable.
2794
2795 2006-05-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
2796
2797         * scripts/musicxml2ly.py (musicxml_clef_to_lily): use new
2798         Attributes methods
2799         (musicxml_time_to_lily): idem
2800         (musicxml_key_to_lily): idem
2801         (instrument_drumtype_dict): dict for supported drumtypes.
2802         (LilyPondVoiceBuilder.__init__): new class: sanely keep track of
2803         moments and pending mm rests
2804         (musicxml_voice_to_lily_voice): rewrite to use LilyPondVoiceBuilder
2805         (musicxml_voice_to_lily_voice): strip KeyChangeEvents for drums.
2806         (musicxml_voice_to_lily_voice): add mode change.
2807         (option_parser): lxml.etree (http://codespeak.net/lxml/) for more
2808         speed and less memory usage (factor 5 to 10).
2809         (convert): write -defs.ly  and driver file separately so people
2810         can script their own part extraction.
2811
2812         * python/musicxml.py (minidom_demarshal_node): new function:
2813         separate minidom handling.
2814         (lxml_demarshal_node): new function: support lxml.etree too.
2815         (Xml_node.message): new function: verbose error message, with XML
2816         path to offending node.
2817         (Attributes.get_measure_length): sane interface to MusicXML attributes.
2818         (Part_list.generate_id_instrument_dict): new method: collect
2819         instrument names, to be able to set drum_type.
2820         (Part.interpret): handle underfull measures
2821         (Part.interpret): assign instrument names.
2822
2823         * python/musicexp.py (Output_printer.close): new method
2824         (MusicWrapper.print_ly): new class: support other modes,
2825         eg. \drummode
2826         (BarCheck.print_ly): new class. Support bar checks, with comments
2827         and fancy barchecks. 
2828         (NoteEvent.__init__): also set drum_type for drum notes.
2829         (MultiMeasureRest.lisp_expression): dump mm rests.
2830
2831         * lily/paper-column-engraver.cc (stop_translation_timestep): set
2832         line-break-permission if forbidBreak is not set.
2833
2834 2006-05-09  Joe Neeman  <joeneeman@gmail.com>
2835
2836         * scm/define-context-properties.scm:
2837         * scm/define-grob-properties.scm:
2838         * scm/define-grobs.scm:
2839         * scm/define-music-display-methods.scm:
2840         * scm/define-music-properties.scm:
2841         * scm/define-music-types.scm:
2842         * scm/music-functions.scm:
2843         * ly/declarations-init.ly:
2844         * lily/include/constrained-breaking.hh:
2845         * lily/system.cc:
2846         * lily/spaceable-grob.cc:
2847         * lily/simple-spacer.cc:
2848         * lily/paper-score.cc:
2849         * lily/paper-column.cc:
2850         * lily/paper-column-engraver.cc:
2851         * lily/item.cc:
2852         * lily/gourlay-breaking.cc:
2853         * lily/constrained-breaking.cc:
2854         * python/convertrules.py:
2855         Change "penalty", "page-penalty" and "breakable" to "line-break-penalty",
2856         "page-break-penalty" and "line-break-permission".
2857         Add "page-break-permission", "page-turn-permission" and "page-turn-penalty".
2858         Replace BreakEvent with LineBreakEvent, PageBreakEvent and PageTurnEvent.
2859
2860         * lily/bar-engraver.cc:
2861         * lily/beam-engraver.cc:
2862         * lily/forbid-break-engraver.cc:
2863         * lily/ligature-engraver.cc:
2864         * lily/paper-column-engraver.cc:
2865         * lily/percent-repeat-engraver.cc:
2866         * lily/score-engraver.cc:
2867         * lily/score-engraver.hh:
2868         * lily/paper-column-engraver.hh:
2869         Inter-engraver communication regarding line breaks is done through context
2870         properties (Score.forbidBreak) instead of function calls.
2871
2872 2006-05-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
2873
2874         * VERSION (PACKAGE_NAME): release 2.9.4
2875
2876 2006-05-08  Graham Percival  <gpermus@gmail.com>
2877
2878         * Documentation/user/working.itely: proofreading from Dave
2879         Luttinen, thanks.
2880
2881         * Doucmentation/user/README.txt: updated with manual style info.
2882
2883         * Documentation/user/ various: trim linewidth to 78 chars.
2884
2885 2006-05-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
2886
2887         * scm/define-grob-properties.scm (all-internal-grob-properties):
2888         remove chord-tremolo property.
2889
2890         * lily/beam.cc (get_beam_segments): don't use stem position as
2891         base for broken ends.
2892
2893 2006-05-06  Graham Percival  <gpermus@gmail.com>
2894
2895         * Documentation/user/putting.itely: proofreading from Dave
2896         Luttinen, thanks!
2897
2898         * Documentation/user/ various: more reorg and clarifications.
2899
2900 2006-05-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
2901
2902         * scm/lily.scm (TEX_STRING_HASHLIMIT): move from framework-texstr.scm.
2903
2904         * ly/music-functions-init.ly: new function featherDurations
2905
2906         * lily/beam.cc: read grow-direction for feathered beaming.
2907
2908         * Documentation/topdocs/NEWS.tely (Top): typo.
2909
2910 2006-05-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
2911
2912         * lily/include/beam.hh (struct Beam_stem_segment): add gapped_ for
2913         tremolo beams.
2914
2915 2006-05-05  Erik Sandberg  <mandolaerik@gmail.com>
2916         * lily/context.cc, lily/global-context.cc: Added 'unique' member,
2917         used by music streams.
2918
2919         * lily/dispatcher.cc, lily/dispatcher-scheme.cc,
2920         lily/stream-event.cc, lily/stream-event-scheme.cc,
2921         lily/listener.cc, lily/scheme-listener.cc,
2922         lily/scheme-listener-scheme.cc, lily/include/dispatcher.hh,
2923         lily/include/stream-event.hh, lily/include/listener.hh,
2924         lily/include/scheme-listener.hh, scm/define-event-classes.scm:
2925         Created data structures for music streams.
2926         
2927 2006-05-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
2928
2929         * lily/beam.cc (get_beam_segments): new function. Reorganise the
2930         construction of a beam. 
2931         (print): rewrite. 
2932
2933         * flower/include/std-vector.hh (default_compare): use only one comparison.
2934
2935         * scm/define-markup-commands.scm (note-by-number): remove debug display.
2936         (note-by-number): further attachment fixes.
2937
2938         * scm/lily-library.scm (ordered-cons): new function.
2939         (interval-index): new function
2940
2941         * lily/note-head-scheme.cc (LY_DEFINE): new file.
2942
2943         * lily/note-head.cc (get_stem_attachment): new function.
2944
2945         * scm/define-markup-commands.scm (note-by-number): read 'style
2946         property. 
2947
2948         * input/regression/markup-note.ly: show note-head style option.
2949
2950         * mf/feta-bolletjes.mf (overdone_heads): fix attachment points for
2951         triangle head.
2952
2953 2006-05-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
2954
2955         * mf/GNUmakefile (NCSB_OTFS): remove old ncsb detection further.
2956
2957         * configure.in (LINK_GXX_STATICALLY): fix for ncsb detection.
2958
2959         * lily/include/constrained-breaking.hh: GCC 4 fix.
2960
2961 2006-05-04  Joe Neeman  <joeneeman@gmail.com>
2962
2963         * lily/simple-spacer.cc: Remove class Simple_spacer_wrapper.
2964         Replace it with functions get_line_forces and get_line_configuration.
2965         (class Simple_spacer): Make data private.
2966         Rewrite compression algorithm to be faster and simpler.
2967
2968         * lily/simple-spacer-scheme.cc (ly_solve_rod_and_spring_problem):
2969         * lily/gourlay-breaking.cc (solve):
2970         * lily/constrained_breaking.cc (space_line):
2971         Change it to the new simple-spacer code.
2972
2973         * lily/paper-score.cc (get_paper_systems):
2974         (Paper_score):
2975         (process):
2976         Delay breaking the systems until they are requested.
2977         (find_break_indices):
2978         Use vsize for indices.
2979         (calc_breaking):
2980         Move the "Calculating line breaks" message here.
2981
2982         * lily/system.cc (pre_processing):
2983         Move the "Calculating line breaks" message away from here.
2984         (break_into_pieces):
2985         Allow multiple calls to this function in sequence (with touching-but-
2986         not-overlapping breakpoints).
2987
2988         * lily/constrained-breaking.cc:
2989         Replace most of the get_XXXX functions with get_line_details.
2990         Only calculate the force for each line. Calculate configurations only
2991         for the lines we will actually use.
2992         Replace cols_ with lines_.
2993
2994 2006-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2995
2996         * mf/GNUmakefile (depth): remove FC_FIND.
2997
2998         * config.make.in (NCSB_SOURCE_FILES): subst NCSB_SOURCE_FILES
2999
3000         * configure.in (LINK_GXX_STATICALLY): call fc-match from within configure.
3001
3002         * scm/framework-ps.scm (write-preamble): new function.
3003         (write-preamble): load mac fonts via fondu, even if gs-font-load
3004         is set.
3005
3006 2006-05-03  Werner Lemberg  <wl@gnu.org>
3007
3008         * mf/GNUmakefile (FC_FIND): Fix typo.
3009
3010 2006-05-03  Erlend Aasland  <erlenda@gmail.com>
3011
3012         * stepmake/stepmake/generic-targets.make (cvs-clean): also remove out-www dirs.
3013
3014 2006-05-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
3015
3016         * stepmake/aclocal.m4: run python-config for crosscompiling
3017         flags. 
3018
3019         * scripts/lilypond-book.py (Lilypond_file_snippet.my_system): add
3020         -f png for HTML, TEXINFO formats. 
3021
3022         * input/tutorial/lbook-html-test.html: new file.
3023
3024         * lily/include/tie-formatting-problem.hh (class
3025         Tie_formatting_problem): index Chord_outline_map by Tuple2 for
3026         [column, direction]. This fixes laissez vibrer ties.
3027  
3028         * flower/include/tuple.hh (struct Tuple2): new file.
3029
3030         * mf/GNUmakefile (FC_FIND): new function. Find ncsb using
3031         $(FCMATCH), only if $(NCSB_DIR) not set. 
3032
3033         * configure.in (LINK_GXX_STATICALLY): only warn if $NCSB_DIR set.
3034
3035         * config.make.in (DOCUMENTATION): set FCMATCH.  
3036
3037         * autogen.sh (srcdir): don't set --with-ncsb-dir. 
3038
3039 2006-05-03  Graham Percival  <gpermus@gmail.com>
3040
3041         * Documentation/user/ various: final round of reorg.
3042
3043         * Documentation/user/instrument-notation.itely: some more
3044         fixes from Eduardo, thanks!
3045
3046 2006-05-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
3047
3048         * VERSION (PACKAGE_NAME): release 2.9.3
3049
3050         * flower/file-path.cc (is_dir): canonicalize file name before stat'ing.
3051
3052         * lily/relocate.cc (framework_relocation): remove old relocation stuff.
3053
3054 2006-05-01  Mats Bengtsson  <mabe@s3.kth.se>
3055
3056         * scm/define-grob-properties.scm (all-user-grob-properties):
3057         Correct typo, thanks to Eduardo.
3058
3059 2006-05-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
3060
3061         * scripts/GNUmakefile (SEXECUTABLES): remove lilypond-ps2png.scm
3062
3063         * buildscripts/lilypond-words.py (F): indent fix.
3064
3065         * input/regression/tie-arpeggio-collision.ly: new file.
3066
3067         * lily/tie-formatting-problem.cc (set_column_chord_outline): new
3068         function: store outlines per column rank.
3069
3070         * lily/include/tie-configuration.hh (class Tie_configuration): add
3071         column_ranks_ to specification and configuration, to distinguish
3072         between ties for different heads in arpegiated chords.
3073
3074         * lily/relocate.cc (framework_relocation): use INSTALLER_PREFIX.
3075
3076         * *.py: more 4 space indents.
3077
3078         * autogen.sh (conf_flags): set sensible default for with-ncsb-dir
3079
3080 2006-05-01  Joe Neeman  <joeneeman@gmail.com>
3081
3082         * scm/lily-library.scm: Fix guile 1.6 compatibility in inf? and nan?
3083
3084 2006-05-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
3085
3086         * buildscripts/pfx2ttf.fontforge (err): create OTF files.
3087
3088         * scripts/abc2ly.py (dump_score): indent of 4 for python code. 
3089
3090         * configure.in (LINK_GXX_STATICALLY): remove locate() call.
3091
3092 2006-04-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3093
3094         * python/convertrules.py (conv): indent 4 for python files.
3095
3096 2006-04-29  Mats Bengtsson  <mabe@s3.kth.se>
3097
3098         * Documentation/user/changing-defaults.itely (Creating contexts):
3099         Clarify \new semantics.
3100
3101 2006-04-28  Graham Percival  <gpermus@gmail.com>
3102
3103         * Documentation/user/ various: major new sections in the
3104         Learning manual, slight reorg elsewhere.
3105
3106 2006-04-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
3107
3108         * mf/GNUmakefile (MFTRACE_FLAGS): add $(outdir) to $(ENCODING_FILE) 
3109
3110         * scm/framework-ps.scm (output-framework): remove PageMedia
3111
3112 2006-04-27  Graham Percival  <gpermus@gmail.com>
3113
3114         * Documentation/user/ tweaks.itely, working.itely: new
3115         files, being more advanced "learning manual" chapters.
3116
3117         * Documentation/user/ tutorial, putting, lilypond: reorg.
3118
3119 2006-04-26  Graham Percival  <gpermus@gmail.com>
3120
3121         * input/regression/lyric-combine-polyphonic.ly: fixed test
3122         (no more "can't find context `one'" error).
3123
3124 2006-04-25  Joe Neeman <joeneeman@gmail.com>
3125
3126         * lily/stem-tremolo.cc (print): fix whole note tremolo placement
3127
3128         * input/regression/stem-tremolo.ly: add 2 more whole note examples
3129         
3130 2006-04-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3131
3132         * lily/relocate.cc (read_relocation_dir): new function.
3133
3134 2006-04-26  Graham Percival  <gpermus@gmail.com>
3135
3136         * Documentation/user/instrument-notation.itely: a few more fixes
3137         from Eduardo, thanks!
3138
3139         * Documentation/user/README.txt: new file; contains info on
3140         style that used to be in lilypond.tely.
3141
3142         * Documentation/user/ various: first round of doc reorg.
3143
3144         * Documentation/user/baer-flat-bw.png: remove alpha bit from
3145         graphic; this probably causes problems on some pdf
3146         viewers, notably Adobe Acrobat.
3147
3148 2006-04-24  Graham Percival  <gpermus@gmail.com>
3149
3150         * Documentation/user/instrument-notation.itely: many alterations
3151         to Vocal music, from Eduardo Viera.
3152
3153 2006-04-23  Graham Percival  <gpermus@gmail.com>
3154
3155         * Documentation/user/instrument-notation.itely: fix \new
3156         instead of \context problem.
3157
3158 2006-04-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3159
3160         * lily/relocate.cc (expand_environment_variables): new function.
3161         (read_line): id.
3162         (read_relocation_file): id.
3163
3164         * scm/stencil.scm (eps-file->stencil): fix EPS PS embedding code 
3165
3166 2006-04-21  Erlend Aasland  <erlenda@gmail.com>
3167
3168         * ly/engraver-init.ly: remove old comments from TabVoice
3169
3170 2006-04-20  Graham Percival  <gpermus@gmail.com>
3171
3172         * Documentation/user/instrument-notation.itely: added Erlend's
3173         latest doc patch, thanks!
3174
3175 2006-04-19  Erlend Aasland <erlenda@gmail.com>
3176
3177         * lily/include/slur.hh:
3178         * lily/slur.cc:
3179         * lily/phrasing-slur-engraver.cc:
3180         * lily/slur-engraver.cc: Fix 'cut & paste' code by merging
3181         acknowledge_extra_object () from Phrasing_slur_engraver:: and
3182         Slur_engraver:: and putting it in
3183         Slur::auxiliary_acknowledge_extra_object ().
3184
3185         * ps/music-drawing-routines.ps (draw_dashed_slur): fix another bug
3186
3187         * lily/note-collision.cc: fix a comment
3188
3189 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
3190
3191         * stepmake/bin/add-html-footer.py: fix footer position in
3192         generated html files: before </body> and </html> tags.
3193
3194 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
3195
3196         * scripts/GNUmakefile: revert last "fix", which rather broke make.
3197         Earlier successive `make' commands finally compiled ok.
3198
3199         * Documentation/topdocs/INSTALL.texi: require mftrace 1.1.19.
3200
3201 2006-04-18  Erlend Aasland <erlenda@gmail.com>
3202
3203         * lily/include/stem-tremolo.hh:
3204         * lily/stem-tremolo.cc: move rotated_box () to Lookup:: and update
3205         callers.
3206
3207         * lily/lookup.cc:
3208         * lily/include/lookup.hh: add rotated_box ()
3209
3210 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
3211
3212         * scripts/GNUmakefile: bugfix: run help2man only after scripts have 
3213         been generated. Fixes "can't get `--help'" bug after make clean.
3214
3215         * THANKS: alphabetize contributors.
3216
3217 2006-04-17  Graham Percival  <gpermus@gmail.com>
3218
3219         * Documentation/user/instrument-notation.itely: added Erlend's
3220         tabs and banjo doc patch.  Thanks!
3221
3222 2006-04-17  Erlend Aasland  <erlenda@gmail.com>
3223
3224         * scm/define-grobs.scm: fix stem-attachment for tablature note heads.
3225
3226         * ps/music-drawing-routines.ps (draw_dashed_line): fix dash pattern bug.
3227
3228         * scm/output-lib.scm: add some more predefined string tunings.
3229
3230         * Documentation/user/instrument-notation.itely: and doc them.
3231
3232 2006-04-16  Jürgen Reuter  <reuter@ipd.uka.de>
3233
3234         * ly/engraver.ly: Remove obsolete comments.
3235
3236         * ly/gregorian-init.ly: Define default layout block.
3237
3238         * input/puer-fragment.ly: Updated and extended.
3239
3240 2006-04-15  Jan Nieuwenhuizen  <janneke@gnu.org>
3241
3242         * lily/lily-parser-scheme.cc: Use them to fix --output=DIR/BASE
3243         pdf conversion behaviour.
3244
3245         * flower/file-name.cc (dir_name)
3246         (get_working_directory): Move from relocate.cc.
3247
3248         * lily/relocate.cc (setup_paths): Remove rogue stat calls.
3249         
3250         * lily/relocate.cc: Encapsulate sys/stat.h in
3251         HAVE_STAT_H.
3252
3253 2006-04-14  Graham Percival  <gpermus@gmail.com>
3254
3255         * Documentation/user/ various: small updates from Cameron
3256         and Juergen, thanks!
3257
3258         * Documentation/user/ various: small updates of my own.
3259
3260         * THANKS: 2.7 -> 2.8.
3261
3262 2006-04-11  Graham Percival  <gpermus@gmail.com>
3263
3264         * scm/define-context-properties.scm: typo.
3265
3266         * Documentation/user/ : many more small updates.
3267
3268 2006-04-13  Jürgen Reuter  <reuter@ipd.uka.de>
3269
3270         * scm/define-music-types.scm: disposed "docme".
3271
3272 2006-04-11  Erlend Aasland  <erlenda@gmail.com>
3273
3274         * lily/hairpin.cc: make niente circles a bit smaller.
3275
3276 2006-04-10  Erlend Aasland  <erlenda@gmail.com>
3277
3278         * mf/GNUmakefile: remove redundant mftrace check. Also remove
3279         get-pfa and get-*-fonts targets.
3280
3281 2006-04-10  Graham Percival  <gpermus@gmail.com>
3282
3283         * THANKS, Documentation/user/ basic-notation, advanced-notation,
3284         music-glossary, programming-interface: more minor fixes
3285         from mailist.
3286
3287         * scm/define-grob-properties.scm: clarified direction, thanks Mats!
3288
3289         * scm/define-context-properties.scm: another old \property update.
3290         This time tested for compiling!
3291
3292 2006-04-10  Erlend Aasland  <erlenda@gmail.com>
3293
3294         * mf/GNUmakefile: fix for mftrace version >= 1.2.0
3295
3296 2006-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
3297
3298         * scm/define-context-properties.scm (all-user-translation-properties): 
3299         * Documentation/user/global.itely (Page formatting): Compile fix.
3300
3301 2006-04-09  Mats Bengtsson  <mabe@s3.kth.se>
3302
3303         * Documentation/user/advanced-notation.itely (Polymetric
3304         notation): Update the example to use the "+" symbol and add link
3305         to input/test/compound-time.ly.
3306
3307 2006-04-08  Graham Percival  <gpermus@gmail.com>
3308
3309         * scm/define-grob-properties.scm: clarify docs for #'direction.
3310
3311         * scm/define-context-properties.scm: update old \property override.
3312
3313         * Documentation/user/ advanced-notation, global, lilypond-book:
3314         more minor doc updates.
3315
3316 2006-04-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
3317
3318         * lily/parser.yy (Generic_prefix_music_scm): append lists, not objects.
3319
3320         * scm/backend-library.scm (search-gs): oops.
3321
3322 2006-04-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
3323
3324         * scripts/lilypond-book.py (output): use base, not filename for href.
3325
3326         * scm/backend-library.scm: only look for gs.
3327
3328         * scripts/lilypond-book.py (output): fix printfilename.
3329
3330         * lily/parser.yy (music_function_musicless_prefix): fold together
3331         definitions of signature (SCM*) (Music|post_event|chord_body_element)
3332
3333         * lily/slur.cc (print): only set font-size if not set yet.
3334
3335         * lily/slur-configuration.cc (add_score): improved layout of debug
3336         scoring output.
3337
3338 2006-04-05  David Feuer  <David.Feuer@gmail.com>
3339
3340         * music-drawing-routines.ps (draw_round_box): removed testing artifact.
3341         (draw_circle): Hopefully fixed regression.
3342         Improved documentation for several procedures.
3343         
3344 2006-03-04  Werner Lemberg  <wl@gnu.org>
3345
3346         * ly/engraver-init.ly (\Score): Add beam-event to quotedEventTypes.
3347
3348 2006-04-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
3349
3350         * scripts/musicxml2ly.py (bindir): add dynamic
3351         relocation. 
3352
3353 2006-04-04  Graham Percival  <gpermus@gmail.com>
3354
3355         * Documentation/user/ basic-notation, advanced-notation, putting,
3356         instrument-notation, invoking, lilypond, THANKS: another ream of small
3357         fixes from the Doc Helpers.
3358
3359 2006-04-03  David Feuer  <David.Feuer@gmail.com>
3360
3361         * music-drawing-routines.ps: remove superfluous gsave/grestore pairs.
3362
3363         * lilyponddefs.ps (set-ps-scale-to-lily-scale): Fixed code duplication.
3364
3365         * Cleaned up interfaces between PostScript and Scheme, and moved
3366         computations from PostScript to Scheme:
3367
3368         * music-drawing-routines.ps
3369         (*SF, stroke_and_fill): new procedures.  Replaced stroke and fill
3370         with stroke_and_fill throughout.
3371         (euclidean_length, print_letter, draw_box): Deleted unused
3372         procedures.  If someone needs draw_box, implement it using
3373         draw_round_box; don't duplicate code.
3374         (print_glyphs, draw_round_box, draw_polygon, draw_repeat_slash):
3375         Refactored/cleaned up interfaces.
3376         (mark_URI): Moved.
3377
3378         * output-ps.scm: reordered arguments to PostScript functions to
3379         match new interfaces
3380         (glyph-string): Rewrote glyph-string.
3381         (grob-cause): Replaced string-append with format.
3382         (repeat-slash): Rewrote to do computation here.
3383         (round-filled-box): Rewrote to do computation here.
3384
3385 2006-04-04  Erlend Aasland  <erlenda@gmail.com>
3386
3387         * stepmake/stepmake/generic-targets.make: add cvs-clean target
3388
3389         * stepmake/stepmake/toplevel- targets.make: print help info about
3390         cvs-clean
3391
3392 2006-04-03  Erlend Aasland  <erlenda@gmail.com>
3393
3394         * input/regression/hairpin-circled.ly: new file
3395
3396 2006-04-03  Erlend Aasland  <erlenda@gmail.com>
3397
3398         * lily/hairpin.cc (print): add support for circled tip
3399
3400         * scm/define-grob-properties.scm: add circled-tip parameter
3401
3402         * scm/define-grobs.scm: init circled-tip to false
3403         
3404 2006-04-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
3405
3406         * scm/music-functions.scm (quote-substitute): set
3407         iterators-ctor. 
3408
3409 2006-03-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
3410
3411         * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): set
3412         BSTINPUTS. 
3413
3414         * Documentation/topdocs/AUTHORS.texi (Top): add David Feuer.
3415
3416         * scm/output-ps.scm (glyph-string): revert cid selectfont.
3417
3418 2006-03-31  David Feuer  <david.feuer@gmail.com>
3419         
3420         * scm/framework-ps.scm:
3421         
3422         * scm/output-ps.scm: glyph-string now produces smaller, more
3423         readable, and probably faster PostScript.  Several findfont
3424         scalefont setfont instances changed to selectfont
3425         Hacked-up string-appends changed to formats.
3426
3427         * ps/music-drawing-routines.ps: add print_letter, print_glyphs.
3428         
3429 2006-03-30  Graham Percival  <gpermus@gmail.com>
3430
3431         * scm/lily-library.scm: make "no version" warning message more polite.
3432
3433         * lily/music.cc: add double quotes to failed octave check.
3434
3435         * Documentation/user/ advanced-notation, changing-defaults,
3436         instrument-notation, invoking, music-glossary: whole bunch of minor
3437         fixes from mailist.
3438
3439 2006-03-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
3440
3441         * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): use
3442         $(buildscriptdir) iso. depth.
3443
3444         * VERSION (PACKAGE_NAME): release 2.9.1
3445
3446 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
3447
3448         * lily/pango-font.cc (pango_item_string_stencil): more robustness.
3449
3450         * VERSION (PATCH_LEVEL): bump version number.
3451
3452         * flower/include/guile-compatibility.hh (scm_from_uint32): add
3453         scm_from_uint32 ()
3454
3455         * lily/pango-font.cc (pango_item_string_stencil): use
3456         scm_from_uint32 ()
3457
3458         * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
3459         $(outdir)/emmentaler-%.svg): remove canary.
3460
3461         * lily/pango-font.cc (pango_item_string_stencil): only use uXXX
3462         glyphnames if we have a ttf font.
3463
3464 2006-03-30  Mats Bengtsson  <mabe@s3.kth.se>
3465
3466         * Documentation/user/advanced-notation.itely (Font selection):
3467         Corrected reference to the font-family-override.ly example.
3468
3469 2006-03-30  Joe Neeman  <joeneeman@gmail.com>
3470         
3471         * lily/chord-tremolo-engraver.cc (acknowledge_stem): set the
3472         stem-tremolo object in the stem (or else the stem might not be
3473         long enough).
3474
3475 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
3476
3477         * lily/ttf.cc (print_trailer): only print existing glyphs.
3478
3479 2006-03-30  Joe Neeman  <joeneeman@gmail.com>
3480
3481         * lily/stem-tremolo.cc (print): for whole notes (and breves, etc.)
3482         position the tremolo based on the position of the notehead.
3483
3484         * input/regression/stem-tremolo.ly: add example of unbeamed eighth
3485         notes and update the texidoc line with the new positioning rules.
3486         
3487 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
3488
3489         * lily/ttf.cc (print_trailer): don't always use uXXX glyphname.
3490
3491         * scripts/lilypond-book.py (Module): set default for linewidth if
3492         preamble not found.
3493
3494 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
3495
3496         * VERSION (PACKAGE_NAME): release 2.9.0.
3497
3498         * input/regression/stem-tremolo-position.ly: new file.
3499
3500         * lily/stem-tremolo.cc: remove Stem_tremolo::dim_callback
3501
3502 2006-03-28  Joe Neeman  <joeneeman@gmail.com>
3503
3504         * lily/stem-tremolo.cc (print): position
3505         the tremolo depending only on the end of the stem
3506         and not on the notehead
3507         (raw_stencil): center, on the middle staff line, the
3508         flag that is closest to the end of the stem (previously
3509         the bottom flag)
3510         (calc_width): add this callback to shorten a tremolo when
3511         it is beamed or it is stemup with a flag
3512         (style): add this callback to make a tremolo rectangular when
3513         it is beamed or it is stemup with a flag
3514         (rotated_box): this is like Lookup::beam but makes a rotated
3515         rectangle instead of a parallelogram
3516
3517         * lily/stem.cc (calc_stem_info): make sure the stem
3518         is long enough to fit the tremolo
3519         (calc-length): reduce the length of tremolo stems since the
3520         tremolo code is now capable of better positioning
3521
3522         * scm/define-grobs.scm: make calc_width the default beam-width
3523         callback for stem-tremolo and add the style callback
3524                 
3525 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
3526
3527         * lily/tuplet-bracket.cc (calc_control_points): handle suicide
3528         case. 
3529
3530 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
3531
3532         * lily/ttf.cc (make_index_to_charcode_map): restore old
3533         cmap. 
3534
3535 2006-03-28  Werner Lemberg  <wl@gnu.org>
3536
3537         * lily/pango-font.cc (get_unicode_name): Fix `uXXXXX' glyph names.
3538
3539 2006-03-28  Graham Percival  <gpermus@gmail.com>
3540
3541         * THANKS: update for 2.9, add section for Documentation helpers.
3542
3543         * Documentation/topdocs/NEWS.tely: compile fix.
3544
3545         * Documentation/user/ basic-notation, global, advanced-notation,
3546         examples.itely: minor fixes from mailist.
3547
3548 2006-03-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
3549
3550         * mf/feta-bolletjes.mf: match width of solfa notes with normal
3551         note heads. 
3552
3553         * lily/ttf.cc (print_trailer): use it.
3554
3555         * lily/pango-font.cc (get_unicode_name): new function.
3556
3557         * lily/ttf.cc (make_index_to_charcode_map): move function from
3558         open-type-font.cc
3559         (print_trailer): substitute uniXXXX name if applicable. 
3560
3561         * lily/pango-font.cc (get_index_to_charcode_map): new function.
3562         (pango_item_string_stencil): use it to generate uniXXXX names.
3563
3564         * mf/feta-bolletjes.mf (overdone_heads): add small style (ugly)
3565         note heads, for uniform widths in shape note output.
3566         (overdone_heads): hmm. remove them again.
3567
3568         * scripts/lilypond-book.py (output): add links to filenames.
3569
3570         * Documentation/topdocs/INSTALL.texi (Top): update versions.
3571
3572         * lily/note-collision.cc (get_clash_groups): only consider when
3573         Note_column::dir <> CENTER. 
3574
3575         * scripts/lilypond-book.py (get_option_parser): init output_name
3576         to ''. 
3577
3578 2006-03-24  Graham Percival  <gpermus@gmail.com>
3579
3580         * Documentation/topdocs/NEWS.tely: add @end itemize
3581
3582         * Documentation/user/ global, advanced-notation: minor
3583         stuff from mailist.
3584
3585 2006-03-23  Graham Percival  <gpermus@gmail.com>
3586
3587         * Documentation/user/ lilypond.tely, music-glossary,
3588         preface: housekeeping; 2005->2006, remove "notes for 2.6"
3589
3590 2006-03-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
3591
3592         * mf/GNUmakefile: don't install .enc files.
3593
3594         * Documentation/topdocs/NEWS.tely: clear for 2.9 cycle.
3595
3596         * VERSION (PATCH_LEVEL): bump to 2.9.0
3597
3598 2006-03-22  Graham Percival  <gpermus@gmail.com>
3599
3600         * Documentation/user/advanced-notation.itely: minor fixes
3601         from mailist.
3602
3603 2006-03-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
3604
3605         * Documentation/topdocs/AUTHORS.texi (Top): add Joe Neeman.
3606
3607         * branch lilypond_2_8
3608
3609 2006-03-22  Han-Wen Nienhuys  <lilydev@localhost.localdomain>
3610
3611         * scripts/lilypond-book.py (samefile): new function, for windoze
3612         compatibility.
3613
3614 2006-03-21  Graham Percival  <gpermus@gmail.com>
3615
3616         * ly/engraver-init.ly: add info about StaffGroup.
3617
3618 2006-03-21  Han-Wen Nienhuys  <lilydev@localhost.localdomain>
3619
3620         * input/regression/stem-direction-context.ly: idem.
3621
3622         * Documentation/topdocs/NEWS.tely (Top): fix interpolation example.
3623
3624         * THANKS: add Mats.
3625
3626         * input/regression/page-layout-twopass.ly: comment out \markup so
3627         tweak-file is left.
3628
3629         * lily/instrument-name-engraver.cc (finalize): add to instrument
3630         name global System. This also fixes chopped instrument names, but
3631         doesn't crash when there are slurs/beams.
3632
3633         * lily/slur-configuration.cc (add_score): disallow negative slur
3634         scores.
3635         
3636 2006-03-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3637
3638         * scm/framework-ps.scm (dump-stencil-as-EPS): remove debugging code.
3639
3640         * lily/instrument-name-engraver.cc (process_music): kludge: add
3641         InstrumentName spanner to axis group of left bound. Fixes chopped
3642         off instrument names in EPS images.
3643
3644         * input/regression/lyric-hyphen-retain.ly: elaborate explanation.
3645
3646         * scripts/abc2ly.py (option_parser): update to 2.7.40
3647
3648 2006-03-20  Graham Percival  <gpermus@gmail.com>
3649
3650         * THANKS: move small doc contributors to SUGGESTIONS.
3651
3652         * Documentation/user/ basic-notation, advanced-notation,
3653         global: small changes from mailist.
3654
3655 2006-03-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3656
3657         * Documentation/user/advanced-notation.itely (Text marks): update
3658         for new rehearsalMarkAlignSymbol convention.
3659
3660         * VERSION (PATCH_LEVEL): bump version.
3661
3662         * input/test/instrument-name-align.ly: new file.
3663
3664         * scm/define-markup-commands.scm (hcenter-in): add hcenter-in.
3665
3666         * input/test/instrument-name-align.ly: new file. Document how to
3667         align instrument names.
3668
3669         * lily/mark-engraver.cc: remove properties.
3670
3671         * scm/define-context-properties.scm
3672         (all-user-translation-properties): remove align symbol properties
3673         for barnumber/reh. mark.
3674
3675         * lily/break-align-interface.cc (self_align_callback): new
3676         interface, new function. Look at complete alignment. This handles
3677         tunable break alignments in case break-align-symbols are missing.
3678
3679         * lily/bar-number-engraver.cc (acknowledge_break_alignment): new function
3680
3681         * lily/mark-engraver.cc (acknowledge_break_alignment): new function.
3682
3683         * python/convertrules.py (conv): mark/bar number alignment rule.
3684
3685         * lily/break-align-interface.cc (calc_positioning_done): also
3686         store offset from last visible break-alignment to its
3687         neighbor. This makes alignment on non-visible objects more reliable.
3688
3689         * po/lilypond.pot (Module): ran po-replace.
3690
3691         * input/regression/tie-single-manual.ly (Module): new file.
3692
3693         * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
3694         look at has_manual_position_.
3695         (from_ties): set has_manual_position_ if tie has staff-position set.
3696
3697         * lily/tuplet-bracket.cc (calc_positions): idem.
3698
3699         * lily/tuplet-number.cc (print): don't print tupletnumber if it
3700         doesn't span time.
3701
3702 2006-03-19  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3703
3704         * scm/define-markup-commands.scm (smallCaps): new markup command
3705         for turning a text to small caps using smaller font size and upper
3706         casing.
3707
3708 2006-03-17  Graham Percival  <gpermus@gmail.com>
3709
3710         * Documentation/user/ examples, instrument-notation,
3711         advnaced-notation: minor fixes from mailist.
3712
3713 2006-03-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3714
3715         * Documentation/user/tutorial.itely (First steps): change example
3716         to verbatim.  
3717
3718 2006-03-17  Graham Percival  <gpermus@gmail.com>
3719
3720         * Documentation/user/ examples, advanced: minor changes from mailist.
3721
3722         * THANKS: add Geoff Horton, for documentation stuff.
3723
3724 2006-03-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3725
3726         * python/lilylib.py (system): revert have_select kludge.
3727
3728         * Documentation/user/tutorial.itely (Commenting input files):
3729         update version numbers in doc. 
3730
3731         * scm/define-grob-interfaces.scm (multi-measure-interface): add
3732         bound-padding to multi-measure-interface
3733
3734 2006-03-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3735
3736         * input/test/engraver-example.ily: update version number.
3737
3738         * VERSION (PACKAGE_NAME): release 2.7.39
3739
3740         * lily/note-spacing.cc (get_spacing): heighten threshold where
3741         accidentals/arpeggios influence previous spacing fully.
3742
3743         * lily/rest.cc (y_offset_callback): only use direction if
3744         staff-position wasn't set before.
3745
3746         * lily/bar-number-engraver.cc: add support for
3747         barNumberAlignSymbol. 
3748         add ADD_ACKNOWLEDGER() call for break_aligned. Fixes bar-number-breathe
3749
3750         * lily/pointer-group-interface.cc (set_ordered): new function. 
3751         (add_unordered_grob): new function.
3752
3753         * lily/grob-array.cc (Grob_array): grob-arrays are always assumed
3754         to ordered, unless the opposite has been proved.  This fixes
3755         random reordering of large object groups across linebreaks,
3756         eg. beams.
3757
3758         * lily/main.cc (do_chroot_jail): printf format fix.
3759
3760         * lily/tie-formatting-problem.cc (generate_configuration):
3761         multiply y-shift for dot with direction.
3762  
3763         * scm/define-markup-commands.scm (note-by-number): put (magstep
3764         size) in y-attach too.
3765
3766         * Documentation/topdocs/NEWS.tely (Top): show override.
3767
3768         * scm/define-grobs.scm (all-grob-descriptions): reinstate neutral
3769         direction for stems.
3770         
3771 2006-03-15  Graham Percival  <gpermus@gmail.com>
3772
3773         * Documentation/user/ changing-defaults, global: minor
3774         fixes from mailist.
3775
3776 2006-03-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3777
3778         * lily/lexer.ll (Lily_lexer): bump required version to 2.7.38
3779
3780         * lily/spacing-spanner.cc (musical_column_spacing): crude fix for
3781         breakable items after uniformly stretched notes.
3782
3783         * lily/tie-formatting-problem.cc (set_chord_outline): initialize
3784         outline with outer edge of note heads. This prevents infinity
3785         problems with tied whole notes.
3786
3787         * scripts/lilypond-book.py (do_file): use os.popen
3788
3789         * python/convertrules.py (conv): add rule for Stem #'beamed-*
3790
3791 2006-03-14 Erik Sandberg  <mandolaerik@gmail.com>
3792
3793         * Documentation/user/invoking.itely: Add ragged-right to bug report
3794         guidelines.
3795
3796 2006-03-14  Graham Percival  <gpermus@gmail.com>
3797
3798         * Documentation/user/global.itely: small fix from mailist.
3799
3800 2006-03-14  Mats Bengtsson  <mabe@s3.kth.se>
3801
3802         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use the
3803         file descriptor returned by tempfile.mkstemp() when writing
3804         to tmpfile and closing it. Solves problem with unlink(tmpfile)
3805         on mingw.
3806
3807 2006-03-14  Jan Nieuwenhuizen  <janneke@gnu.org>
3808
3809         * po/fi.po: newline bugfix.
3810
3811 2006-03-12  Jan Nieuwenhuizen  <janneke@gnu.org>
3812
3813         * scm/paper.scm (paper-alist): Rounding fixes.
3814
3815 2006-03-13  Graham Percival  <gpermus@gmail.com>
3816
3817         * Documentation/user/ changing-defaults, instrument-notation,
3818         tutorial: small fixes from mailist, mostly from Mats.  Thanks!
3819
3820 2006-03-13 Heikki Junes  <hjunes@cc.hut.fi>
3821
3822         * po/fi.po: update.
3823
3824 2006-03-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3825
3826         * stepmake/bin/add-html-footer.py (mail_address_url): don't add
3827         mailto: to http:// 
3828
3829         * python/lilylib.py (print_environment): move ps_page_count to
3830         lilypond-book.py
3831
3832 2006-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3833
3834         * Documentation/user/music-glossary.tely (G clef): fix clef alignments.
3835
3836         * scm/framework-ps.scm (embed-document): new function. Use to
3837         embed PFA files.
3838
3839         * ly/engraver-init.ly: init rehearsalMarkAlignSymbol to staff-bar.
3840
3841 2006-03-12  Mats Bengtsson  <mabe@s3.kth.se>
3842
3843         * Documentation/user/instrument-notation.itely (Setting simple
3844         songs): Added \book{...} around the full example, so the separate
3845         markups are included in the printed example. 
3846
3847 2006-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3848
3849         * scripts/lilypond-book.py (get_latex_textwidth): explicitly close
3850         tmphandle.
3851
3852         * python/lilylib.py (system): rewrite system() using
3853         subprocess. Remove >& redirection trickery.
3854
3855 2006-03-11  Graham Percival  <gpermus@gmail.com>
3856
3857         * Documentation/user/ changing-defaults, global, scheme-tutorial,
3858         notation-appendices.itely: minor fixes from mailist.
3859
3860 2006-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3861
3862         * Documentation/user/GNUmakefile ($(outdir)/lilypond.html):
3863         unsplit man also needs images.
3864
3865         * tex/texinfo.tex (sectionheading, q.v.): relax after \char'15.
3866
3867         * VERSION (PACKAGE_NAME): 2.7.38 released.
3868
3869 2006-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3870
3871         * scripts/lilypond-book.py (get_latex_textwidth): look for latex
3872         log in output dir.
3873
3874 2006-03-08  Johannes Schindelin  <Johannes.Schindelin@gmx.de>
3875
3876         * lily/audio-column.cc, lily/score-performer.cc: MIDI output now
3877         respects the Score.skipTypesetting property.
3878         
3879 2006-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3880
3881         * scm/framework-ps.scm (ps-embed-cff): no Setup section in
3882         Prolog. No %%EOF after CFF file.
3883
3884 2006-03-08  Joe Neeman  <joeneeman@gmail.com>
3885         
3886         * lily/constrained-breaking.cc (get_max_systems): used to return a
3887         much too big value
3888         (combine_demerits): use pointers to reduce copying data
3889         (calc_subproblem): idem
3890         (get_page_penalty): add page turn penalties
3891         
3892 2006-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3893
3894         * Documentation/user/invoking.itely (Invoking lilypond): better
3895         explanation of -e usage.
3896
3897         * lily/main.cc (main_with_guile): don't append to
3898         init_scheme_code_string
3899
3900         * tex/texinfo.tex (sectionheading, q.v.): don't center @image.
3901
3902         * Documentation/user/invoking.itely: add note about MacOS X scripts.
3903
3904         * scripts/convert-ly.py (do_options): don't print help for
3905         --show-rules rule.
3906
3907         * tex/texinfo.tex: patch texinfo.tex to leave single quotes in
3908         @code and @example. Update from texinfo.tex from CVS.
3909
3910 2006-03-08  Graham Percival  <gpermus@gmail.com>
3911
3912         * Documentation/user/scheme-tutorial.itely: clarifies distances
3913         measured in staff-spaces.
3914
3915 2006-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3916
3917         * lily/slur.cc (outside_slur_callback): only calculate offsets if
3918         consider[k] is true.
3919
3920         * scm/output-ps.scm (grob-cause): put numbers to ~$ (Thanks Johannes!)
3921
3922         * lily/spacing-basic.cc (standard_breakable_column_spacing): also
3923         consider columns that have originals.  Unifies spacing for mm
3924         rests around line breaks.
3925
3926         * lily/multi-measure-rest.cc (set_spacing_rods): read bound-padding.
3927         (set_text_rods): idem.
3928         (calculate_spacing_rods): new function: share code between
3929         set_text_rods and set_spacing_rods.
3930         (set_text_rods): take extents of bounds into account.  
3931
3932 2006-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3933
3934         * Documentation/user/basic-notation.itely (Writing music in
3935         parallel): don't use relative.
3936
3937 2006-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3938
3939         * ly/music-functions-init.ly (Module): add shiftDurations
3940
3941         * ly/drumpitch-init.ly (drumPitchNames): add tamtam.
3942
3943         * scm/paper.scm (paper-alist): no decimals for Ax paper sizes. 
3944
3945         * ly/engraver-init.ly: init vocalName to nil.
3946
3947 2006-03-05 Erik Sandberg  <mandolaerik@gmail.com>
3948
3949         * scm/music-functions.scm (music->make-music): bugfix,
3950         KeyChangeEvents are now handled correctly.
3951
3952         * scripts/lilypond-book.py: Add --debug option.
3953
3954 2006-03-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3955
3956         * python/lilylib.py: add tempfile.
3957
3958 2006-03-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3959
3960         * VERSION (PACKAGE_NAME): release 2.7.37
3961
3962         * python/lilylib.py (ps_page_count): remove make_ps_images().
3963         (ps_page_count): remove mkdir_p
3964         (system): remove cleanup_temp.
3965         (exit): remove lilypond_version_(check)
3966         (error_log): remove pseudo_filter_p
3967         remove read_pipe
3968         remove cp_to_dir
3969         remove identify
3970
3971         * scripts/lilypond-book.py (Lilypond_snippet.compose_ly): don't
3972         use __main__
3973
3974         * lily/accidental-engraver.cc (make_standard_accidental): only add
3975         support for side-axis is X_AXIS. Fixes text-spacing-accidental.ly
3976
3977         * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
3978         $(outdir)/emmentaler-%.svg): rewrite without functions; too many
3979         Make incompatibilities.
3980
3981         * scm/output-ps.scm (grob-cause): replace backslashes by /
3982         (glyph-string): use ~$ for less decimals for glyph-string and grob-cause.
3983
3984 2006-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
3985
3986         * cygwin/GNUmakefile: Install fixes.
3987
3988         * scripts/GNUmakefile (SEXECUTABLES): Install fix: remove mup2ly.
3989
3990         * lily/note-head.cc (head::get_balltype): Compile fix.
3991
3992         * flower/file-name.cc (dos_to_posix): Flower string fix.
3993
3994 2006-03-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3995
3996         * python/lilylib.py: pychecker cleanups.
3997
3998         * scripts/lilypond-book.py
3999         (Lilypond_snippet.output_print_filename): pychecker cleanups
4000
4001         * scripts/midi2ly.py (Key.dump): pychecker cleanups.
4002
4003         * python/lilylib.py (underscore): remove identify() , warranty()
4004
4005         * ps/music-drawing-routines.ps: change Border routine for GSView
4006         compatibility.
4007
4008         * lily/stem.cc (height): use quantize-positions.  This triggers
4009         set_stem_lengths, so scripts on beamed stems are handled correctly.
4010
4011         * lily/side-position-interface.cc (aligned_side): check if edges
4012         of script are inside staff. Fixes accent of edge of the staff.
4013
4014         * input/regression/staccato-pos.ly: more examples.
4015
4016         * stepmake/aclocal.m4 (depth): fix bashism.
4017
4018         * lily/lyric-combine-music-iterator.cc: move from
4019         new-lyric-combine-iterator.cc
4020         (process): add pending_grace_lyric_ member to delay lyrics on
4021         grace notes.
4022
4023         * lily/system-start-text.cc (print): suicide if we don't have any
4024         elements. Fixes hara kiri'd instrument names.
4025
4026         * scripts/mup2ly.py (Module): remove.
4027
4028 2006-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4029
4030         * Documentation/user/global.itely (A single music expression):
4031         close @lilypond properly
4032
4033         * lily/volta-bracket.cc (modify_edge_height): change from
4034         after_line_breaking_callback. Suicide last bracket if appropriate.
4035  
4036         * python/lilylib.py: strip getopt support
4037
4038         * scripts/etf2ly.py (do_options): use optparse
4039
4040         * scripts/midi2ly.py: optparse, strip lilylib copy. 
4041
4042         * scripts/abc2ly.py (voices): use optparse.
4043
4044         * stepmake/stepmake/generic-vars.make: new function absdir.
4045
4046         * scripts/convert-ly.py (bindir): use optparse, argv[0] relocation.
4047
4048         * scripts/lilypond-book.py (find_file): use global_options for
4049         include path
4050
4051         * scm/ps-to-png.scm (ps-page-count): prevent null characters
4052         entering C code.
4053
4054 2006-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4055
4056         * python/lilylib.py (get_global_option): ughness for extracting
4057         global options from lilylib.
4058         (NonDentedHeadingFormatter.format_heading): move from musicxml2ly
4059
4060         * scripts/lilypond-book.py (get_option_parser): use optparse for
4061         option handling.  Put options in global_options variable.
4062
4063 2006-02-28  Heikki Junes  <hjunes@cc.hut.fi>
4064
4065         * Documentation/index.html.in: clarify.
4066
4067 2006-02-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4068
4069         * scm/layout-page-layout.scm (write-page-breaks): add a
4070         music-system-heights property to the page layout output.
4071
4072         * scm/page.scm (make-page-stencil): take footer into account when
4073         computing the 'space-left page property
4074         (annotate-space-left): take footer into account when annonating
4075         space left.
4076
4077 2006-02-28  Graham Percival  <gpermus@gmail.com>
4078
4079         * Documentation/user/ advanced-notation, global: more (final)
4080         docs for music expressions, removed special fermatas.
4081
4082 2006-02-27  Graham Percival  <gpermus@gmail.com>
4083
4084         * Documentation/user/ basic-notation, global: minor changes
4085         from mailist.
4086
4087 2006-02-26  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4088
4089         * scm/framework-ps.scm:         
4090         * scm/lily-library.scm (nan?, inf?): Move guile 1.6 compatibility
4091         layer for inf? and nan? from framework-ps to lily-library.
4092
4093 2006-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4094
4095         * mf/GNUmakefile ($(outdir)/emmentaler-$(1).otf
4096         $(outdir)/emmentaler-$(1).svg): remove backslashes from define endef.
4097
4098         * buildscripts/substitute-encoding.py (Module): remove file.
4099
4100         * mf/GNUmakefile: more PFA strippage.
4101
4102         * mf/aybabtu.pe.in (i): remove PFAaybabtu generation
4103
4104         * buildscripts/gen-emmentaler-scripts.py (i): remove PFAemmentaler
4105         generation
4106
4107         * scm/framework-ps.scm: remove font name munging.
4108
4109         * Documentation/topdocs/INSTALL.texi (Top): bump GS requirement.
4110
4111 2006-02-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4112
4113         * scm/markup.scm (define-markup-command): change
4114         def-markup-command to define-markup-command
4115
4116         * scm/music-functions.scm (define-music-function): change
4117         def-music-function to define-music-function.
4118
4119         * python/convertrules.py (conv): rules for def-music-function
4120         and def-markup-commands
4121
4122         * Documentation/user/programming-interface.itely,
4123         input/no-notation/display-lily-tests.ly,
4124         input/regression/lily-in-scheme.ly,
4125         input/regression/markup-user.ly,
4126         input/regression/music-function.ly, input/regression/tie-chord.ly,
4127         scm/fret-diagrams.scm, ly/music-functions-init.ly,
4128         ly/gregorian-init.ly: use new macro names (define-music-function,
4129         define-markup-command).
4130
4131 2006-02-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4132
4133         * scripts/lilypond-book.py (main): write Makefile dependencies file. 
4134         (output): add comments to lp-book latex output.
4135
4136         * GNUmakefile.in (footifymail): use gmane address for webpage bug
4137         address.
4138
4139 2006-02-23  Graham Percival  <gpermus@gmail.com>
4140
4141         * Documentation/user/ tutorial, global: minor changes.
4142
4143 2006-02-23  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4144
4145         * mf/GNUmakefile: add '\' in multi-line "define ... endef"
4146         blocks (for make 3.80)
4147
4148         * scm/parser-ly-from-scheme.scm (ly:parse-string-result): add
4149         \notemode so that user should not have to explicitely type it.
4150
4151         * scm/define-music-display-methods.scm: various
4152         fixes (ApplyOutputEvent, ApplyContext; \new, \context and derived
4153         constructs)
4154
4155         * input/no-notation/display-lily-tests.ly: new tests for
4156         \applyOutput and \applyContext
4157
4158 2006-02-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4159
4160         * lily/constrained-breaking.cc: patch by Joe Neeman: "I have
4161         changed it slightly so that the number of systems returned by
4162         solve () will be the same as the last value passed to resize
4163         (). I've also added more documentation, removed casts, fixed style
4164         problems and put in some recovery if constraints aren't satisfied."
4165
4166 2006-02-23  Jan Nieuwenhuizen  <janneke@gnu.org>
4167
4168         * elisp/lilypond-mode.el (count-matches-as-number): New funtion
4169         for emacs < 22 compatibility.
4170         (count-rexp): Use it.
4171         (LilyPond-string-current-midi, LilyPond-string-all-midi): Remove
4172         substring juggling (Milan Zamazal).
4173
4174 2006-02-23  Graham Percival  <gpermus@gmail.com>
4175
4176         * Documentation/user/ basic-notation, advanced-notation,
4177         global.itely, invoking.itely, tutorial,itely:
4178         minor fixes from mailist.
4179
4180         * scm/define-markup-commands.scm: improve docs of \filled-box.
4181
4182 2006-02-23  Heikki Junes  <hjunes@cc.hut.fi>
4183
4184         * Documentation/index.html.in: changes concern the previous release.
4185
4186         * input/regression/+.ly: cultivate typographical terminology.
4187
4188 2006-02-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4189
4190         * scm/define-grob-interfaces.scm (parentheses-interface): add
4191         padding to parentheses-interface.
4192
4193         * Documentation/user/GNUmakefile: remove $(CROSS) support from
4194         Documentation/user/GNUmakefile. Use --disable-documentation for that.
4195
4196         * VERSION (PATCH_LEVEL): release 2.7.36
4197
4198         * lily/slur.cc: add avoid-slur (ugh.)
4199         
4200         * lily/slur-configuration.cc (fit_factor): oops, skip point if
4201         intersection gets smaller. This fixes slurs over extreme points.
4202
4203         * lily/melody-engraver.cc (stop_translation_timestep): ignore
4204         stems with neutral-direction set.
4205
4206         * lily/piano-pedal-engraver.cc (create_text_grobs): idem.
4207
4208         * lily/open-type-font.cc (load_table): format error.
4209
4210         * lily/change-iterator.cc (process): format fix.
4211
4212         * flower/include/international.hh (_f): idem.
4213
4214         * flower/include/std-string.hh: add format printf attribute.
4215
4216         * scm/define-grobs.scm (all-grob-descriptions): height of all
4217         PedalLineSpanner is Y-extent property. Fixes pedal-ped.ly
4218
4219         * lily/ambitus-engraver.cc (finalize): use grob_array. This fixes
4220         ambitus lines.
4221
4222         * input/regression/beam-cross-staff-slope.ly: remove decrescendo.
4223
4224 2006-02-22 Erik Sandberg  <mandolaerik@gmail.com>
4225
4226         * input/regression/: upgraded syntax for some files.
4227
4228         * THANKS: Add bughunters.
4229
4230 2006-02-22  Graham Percival  <gpermus@gmail.com>
4231
4232         * Documentation/user/ invoking.itely, advanced-notation.itely,
4233         global.itely: long-awaited "let's make chapter 10 not suck"
4234         update.  Rearrange chapter 10; now called "global issues",
4235         addresses file structure, etc.  Some info from other files
4236         moved into global.itely.
4237
4238 2006-02-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4239
4240         * lily/accidental-engraver.cc (acknowledge_rhythmic_head): also
4241         catch trill-span-event notes.
4242
4243         * Documentation/user/examples.itely (Ancient notation templates): typo.
4244         (Jazz combo): typo.
4245
4246         * scripts/lilypond-book.py (main): scrap invokes_lilypond(). 
4247
4248         * Documentation/user/basic-notation.itely (Ties): document \repeatTie.
4249
4250         * Documentation/topdocs/NEWS.tely (Top): document \repeatTie.
4251
4252         * scm/define-music-types.scm (music-descriptions): add RepeatTieEvent
4253
4254         * lily/repeat-tie-engraver.cc (acknowledge_note_head): new file. cut & paste
4255         froum Laissez_vibrer_engraver.
4256
4257         * ly/declarations-init.ly (repeatTie): add \repeatTie
4258
4259         * scm/define-grobs.scm (all-grob-descriptions): add RepeatTie, RepeatTieColumn
4260
4261         * scm/define-grob-properties.scm (all-user-grob-properties): add
4262         head-direction property.
4263
4264         * lily/tie-formatting-problem.cc (from_semi_ties): rename from
4265         from_lv_ties. Take head direction argument.
4266
4267         * lily/semi-tie-column.cc: rename from
4268         laissez-vibrer-tie-column.cc. Rename class too.
4269
4270         * lily/semi-tie.cc: rename from laissez-vibrer-tie.cc. Rename
4271         class too.
4272
4273         * lily/paper-score.cc (find_break_indices): move from Break_algorithm.
4274
4275         * lily/break-algorithm.cc (find_break_indices): remove linewidth <
4276         0 case.
4277         (find_breaks): idem.
4278
4279 2006-02-21  Graham Percival  <gpermus@gmail.com>
4280
4281         * Documentation/user/advanced-notation.itely: fixed make-moment]
4282         example.
4283
4284         * Documentation/user/basic-notation.itely: more clarification to
4285         transpose.
4286
4287 2006-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4288
4289         * lily/include/constrained-breaking.hh (class
4290         Constrained_breaking): new file.
4291
4292         * lily/constrained-breaking.cc (resize): new file.
4293
4294         * lily/gourlay-breaking.cc (do_solve): ragged-last iso raggedlast
4295
4296         * Documentation/user/advanced-notation.itely (Clusters): insert
4297         end ignore too.
4298
4299         * lily/tie-column.cc (calc_positioning_done): support for
4300         tie-score debugging
4301
4302         * lily/tie-formatting-problem.cc
4303         (generate_extremal_tie_variations): factor out.
4304         (score_ties_configuration): annotate all tie 
4305         (print_ties_configuration): new routine.
4306         (generate_configuration): nudge extremal ties outside of the head
4307         Y extents.
4308         (score_ties_configuration): oops. convert to staff-space before
4309         determining position symmetry.
4310
4311 2006-02-20  Graham Percival  <gpermus@gmail.com>
4312
4313         * Documentation/user/*-notation.itely: misc minor editing,
4314         shifting doc sections around.
4315
4316         * Documentation/user/*-notation-itely, global.itely,
4317         changing-defaults.itely: added new stuff from NEWS.
4318
4319 2006-02-20  Heikki Junes  <hjunes@cc.hut.fi>
4320
4321         * po/fi.po: update.
4322
4323 2006-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4324
4325         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): don't run
4326         lilypond --verbose for lp-book.
4327
4328         * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
4329         $(outdir)/%.ly $(outdir)/%.ps): use $(srcdir) iso $(shell pwd).
4330
4331         * make/lysdoc-rules.make ($(outdir)/collated-files.tely): use
4332         $(buildscript-dir) iso. absolute depth.
4333
4334         * buildscripts/genicon.py (dir): thinko.
4335
4336         * Documentation/pictures/GNUmakefile ($(outdir)/%.ico): typo.
4337
4338 2006-02-19 Erik Sandberg  <mandolaerik@gmail.com>
4339
4340         * scm/output-lib.scm: swap darkcyan/darkyellow
4341
4342         * THANKS: Add bughunters.
4343
4344 2006-02-19  Graham Percival  <gpermus@gmail.com>
4345
4346         * Documentation/user/programming-interfaces.itely: fixed example.
4347
4348         * Documentation/user/instrument-notation.itely: fix @{ @}.
4349
4350         * scm/script.scm: add avoid-slur for \open.
4351
4352 2006-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4353
4354         * lily/tie-formatting-problem.cc (score_configuration): use
4355         sliding score for min-length. 
4356
4357         * Documentation/pictures/GNUmakefile (local-dist): loose the rule
4358         spaghetti for icons.
4359
4360         * buildscripts/genicon.py (program_name): new file.
4361
4362         * lily/tie-formatting-problem.cc (set_chord_outline): put dots
4363         in outline too.  
4364         (generate_configuration): for small ties, also look for collisions
4365         at Y + DIR*h + DELTA_Y.
4366         (get_variations): consider variation for dot positions too.
4367
4368         * lily/side-position-interface.cc (aligned_side): take abs for
4369         quantized rounded position. Fixes tenuto below staff.
4370
4371         * scm/stencil.scm (annotate-y-interval): robustify: print nan/inf
4372         markers when necessary.
4373
4374         * lily/program-option.cc (internal_set_option): add
4375         strict_infinity_checking option.
4376
4377         * scm/output-lib.scm (cyan): swap yellow and cyan.
4378
4379 2006-02-19  Graham Percival  <gpermus@gmail.com>
4380
4381         * darwin.patch: trivial linenumber update.
4382
4383         * Documentation/user/ {various}: `\context foo = named' changed
4384         to `\new foo = "name"' in docs.
4385
4386 2006-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4387
4388         * scm/stencil.scm (annotate-y-interval): use it.
4389
4390         * scm/lily-library.scm (interval-sane?): new function.
4391
4392         * buildscripts/mf-to-table.py (Char_metric.__init__): remove
4393         tfm_checksum stuff.
4394
4395         * lily/tie-formatting-problem.cc (from_lv_ties): add heads for
4396         common refpoint.
4397
4398         * flower/include/std-vector.hh (iterof): add iterof macro.
4399
4400         * lily/enclosing-bracket.cc (width): new function.
4401
4402         * lily/align-interface.cc (align_elements_to_extents): reinstate
4403         warning.
4404
4405 2006-02-18  Heikki Junes  <hjunes@cc.hut.fi>
4406
4407         * Documentation/index.html.in: fix spelling: thankyous.
4408
4409 2006-02-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4410
4411         * lily/lyric-hyphen.cc: typo.
4412
4413 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4414
4415         * stepmake/stepmake/c++-rules.make ($(outdir)/%.cc
4416         $(outdir)/%.hh): generate h and c in one rule; otherwise -jX
4417         builds don't work. 
4418
4419         * VERSION: release 2.7.35
4420
4421         * lily/beam.cc (get_default_dir): oops. Take abs () for
4422         extremes[DOWN].
4423         (get_default_dir): use extreme position criterion only in absence
4424         of forced stem directions.
4425
4426         * VERSION (PATCH_LEVEL): bump VERSION.
4427
4428         * mf/GNUmakefile: explicit rules for emmentaler/aybabtu
4429         dependencies. Necessary for -jX builds.  
4430
4431 2006-02-17  Jan Nieuwenhuizen  <janneke@gnu.org>
4432
4433         * lily/relocate.cc (setup_paths): Yet another const fix.
4434
4435 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4436
4437         * configure.in (HOST_ARCH): determine HOST_ARCH in configure.
4438
4439         * lily/relocate.cc (setup_paths): oops.
4440
4441 2006-02-17  Heikki Junes  <hjunes@cc.hut.fi>
4442
4443         * Documentation/index.html.in: order links: html before PDF.
4444
4445 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4446
4447         * lily/tie-column-format.cc (Module): remove.
4448
4449         * lily/relocate.cc (setup_paths): GCC 4.2 fixes: const correctness.
4450
4451         * lily/text-spanner.cc (print): idem.
4452
4453         * lily/dynamic-text-spanner.cc (print): only print line if longer
4454         than dash-period.
4455
4456         * lily/auto-change-iterator.cc (change_to): formatting.
4457
4458         * lily/beam.cc (get_default_dir): take extreme note head as input
4459         for stem direction.
4460
4461         * lily/tie.cc (get_default_dir): only look directions for visible
4462         stems. 
4463
4464         * lily/side-position-interface.cc (aligned_side): oops. Don't
4465         mutiply with direction. This fixes quantized (staccato, tenuto)
4466         scripts below notes.
4467
4468         * lily/lyric-hyphen.cc (set_spacing_rods): oops. Multiply with
4469         direction. Fixes c-lyrics-center-align.ly
4470
4471 2006-02-16  Jan Nieuwenhuizen  <janneke@gnu.org>
4472
4473         * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Add copy
4474         constructor.
4475
4476         * lily/std-string.cc:
4477         * lily/include/std-vector.hh (split_string): Move and rename from
4478         lily/include/misc.hh, lily/misc.cc.  Update callers.
4479
4480 2006-02-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4481
4482         * lily/include/pango-font.hh: HAVE_PANGO_FT2 iso. HAVE_PANGO_16
4483
4484 2006-02-16  Jan Nieuwenhuizen  <janneke@gnu.org>
4485
4486         * flower/test-file.cc: New file.
4487
4488         * stepmake/stepmake/test-vars.make (TEST_MODULE_LIBES): Fixes for
4489         libraries.
4490
4491         * flower/GNUmakefile (TEST_MODULE_LIBS): Link to flower lib.
4492
4493 2006-02-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4494
4495         * flower/include/file-storage.hh: remove file.
4496
4497         * lily/include/midi-item.hh (class Midi_track): idem.
4498
4499         * lily/include/source.hh (class Sources): idem.
4500
4501         * lily/include/performance.hh (class Performance): use vector
4502         iso. Cons<>
4503
4504         * flower/include/cons.hh (class Cons): remove file.
4505
4506         * flower/include/flower-proto.hh: remove template cruft.
4507
4508         * lily/include/font-metric.hh: use size_t not vsize for indices.
4509
4510         * flower/include/flower-proto.hh (Module): remove std-vector.hh
4511         from proto.
4512
4513         * lily/include/all-font-metrics.hh: use HAVE_PANGO_FT2
4514
4515         * lily/include/paper-book.hh (class Paper_book):
4516         make get_system_specs() public.
4517
4518         * scm/layout-page-layout.scm (optimal-page-breaks): only consider
4519         the force=10000 case if we don't have a current-best. 
4520
4521         * lily/tuplet-bracket.cc (get_bounds): don't do (size() - 1) for
4522         vsize 
4523
4524         * flower/include/flower-proto.hh: remove outdated templates.
4525
4526         * scm/page.scm: use annotate-spacing
4527
4528 2006-02-15  Graham Percival  <gpermus@gmail.com>
4529
4530         * scm/translation-functions.scm: circle patch from Erlend, thanks!
4531
4532         * THANKS: moved Erlend Aasland to contributors.
4533
4534 2006-02-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4535
4536         * config.hh.in: remove HAVE_PANGO_16
4537
4538         * lily/tuplet-bracket.cc (calc_positions): multiply with
4539         staff-space for beam case. This fixes tuplets+beams on scaled
4540         staves.
4541
4542         * config.hh.in: remove all Kpathsea related defines.
4543
4544         * lily/dot-column.cc (side_position): reach stem via dots->
4545         head->stem. Inspect all stems for dot collisions. 
4546
4547         * lily/dot-column-engraver.cc (class Dot_column_engraver): excise
4548         stem handling.
4549
4550         * lily/bar-number-engraver.cc (process_music): document function
4551         of whichBar.
4552
4553         * lily/score.cc (default_rendering): add pscore, not systems
4554         themselves.
4555
4556         * lily/paper-book.cc (get_system_specs): separate generation of
4557         titles and systems.
4558
4559         * flower/include/std-vector.hh: don't include config.hh
4560
4561 2006-02-15  Jan Nieuwenhuizen  <janneke@gnu.org>
4562
4563         * flower/include/std-vector.hh: Better wrapper compatibility with
4564         std::vector.
4565
4566         * flower/include/flower-proto.hh: Remove cheap forward declaration
4567         attempts.
4568
4569         * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): Bugfix.
4570
4571 2006-02-14  Graham Percival  <gpermus@gmail.com>
4572
4573         * Documentation/user/invoking.itely: add warning about command line.
4574
4575 2006-02-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4576
4577         * lily/include/lily-proto.hh: add Prob, rm Page.
4578
4579         * flower/include/std-vector.hh (VPOS): use 64 bit-proof version.
4580
4581         * VERSION: release 2.7.34
4582
4583         * lily/relocate.cc (framework_relocation): show canary if
4584         GHOSTSCRIPT_VERSION undefined.
4585
4586         * GNUmakefile.in: remove $(VERSION) symlink.
4587
4588         * lily/relocate.cc (setup_paths): add + 
4589
4590 2006-02-13  Heikki Junes  <hjunes@cc.hut.fi>
4591
4592         * Documentation/index.html.in: specify sizes for all big HTML pages.
4593
4594 2006-02-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4595
4596         * config.hh.in: remove @FRAMEWORKDIR@
4597
4598         * lily/system-start-text.cc (get_stencil): new file: separate out
4599         system-start-delimiter text support.
4600
4601         * input/**ly: replace \context with \new where appropriate.
4602         
4603         * THANKS: add Don.
4604
4605         * lily/slur-scoring.cc (get_base_attachments): use
4606         robust_relative_extent. This fixes problems with empty paper-columns. 
4607
4608 2006-02-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4609
4610         * Documentation/topdocs/NEWS.tely (Top): document \new syntax.
4611
4612         * scm/define-music-properties.scm (all-music-properties):
4613         create-new property.
4614
4615         * lily/context-specced-music-iterator.cc (construct_children):
4616         inspect 'create-new property iso. magical $uniqueContextId context
4617         id.
4618
4619         * lily/parser.yy (optional_id): allow \new "Bar" = "foo" too.
4620
4621         * lily/context-key-manager.cc (Module): new file. Encapsulate
4622         object key generation.
4623
4624         * lily/include/context-key-manager.hh (Module): new file.
4625
4626 2006-02-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4627
4628         * scm/define-grobs.scm (all-grob-descriptions): center instrument
4629         names vertically
4630
4631         * configure.in (LINK_GXX_STATICALLY): strip -DSTRING_UTILS_INLINED
4632         options.
4633         (reloc_b): excise --enable-framework-dir
4634
4635         * lily/relocate.cc (framework_relocation): use getenv
4636         LILYPOND_GS_VERSION or -DGHOSTSCRIPT_VERSION to set GS version.
4637
4638 2006-02-11  Jan Nieuwenhuizen  <janneke@gnu.org>
4639
4640         * flower/include/std-string.hh: 
4641         * flower/include/std-vector.hh: Finish std:: conversion; move
4642         flower extensions from std:: namespace.  Update users.
4643
4644         * lily/include/lily-proto.hh: Replace Link_array__*_ macros by
4645         their expansion to vector<*>.  Update users.
4646
4647 2006-02-10  Graham Percival  <gpermus@gmail.com>
4648
4649         * Documentation/user/invoking.itely: add example to File structure.
4650
4651         * Documentation/user/ instrument-notation.itely, cheatsheet.itely,
4652         examples.itely, putting.itely: {\new|\context} Lyrics \lyricsto.
4653
4654 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4655
4656         * ly/paper-defaults.ly: typo.
4657
4658         * lily/parenthesis-engraver.cc (acknowledge_grob): don't do
4659         set_parent() for parentheses. This will make it show up in bbox
4660         calculations.
4661
4662         * scm/output-lib.scm (parentheses-item::print): rewrite, using
4663         ly:grob-common* functions.
4664
4665         * lily/grob-scheme.cc (LY_DEFINE):
4666         ly:grob-common-refpoint-of-array: new function 
4667         ly:grob-common-refpoint: new function 
4668         ly:grob-relative-coordinate: new function 
4669
4670         * lily/instrument-name-engraver.cc (process_music): use
4671         Text_interface::is_markup(). This fixes \markup on instrument names.  
4672
4673         * scm/define-grobs.scm (all-grob-descriptions): set line-thickness
4674         for ties and slurs.
4675
4676         * lily/slur.cc (print): idem.
4677
4678         * lily/tie.cc: add line-thickness for ties. 
4679
4680 2006-02-10  Jan Nieuwenhuizen  <janneke@gnu.org>
4681
4682         * scm/output-svg.scm: Document diversion from GNU coding standards
4683         as a workaround for a bug in Microsoft Internet Explorer.
4684
4685 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4686
4687         * lily/instrument-name-engraver.cc (process_music): use
4688         is_markup() iso. is_string()
4689
4690         * Documentation/user/changing-defaults.itely (Module): add menu entry.
4691
4692         * lily/percent-repeat-engraver.cc (process_music): only look at
4693         main_part_ for % repeats.
4694
4695         * lily/stem-tremolo.cc (get_beam_translation): new function.
4696         (calc_slope): new function.
4697         (height): don't use real slope.
4698
4699 2006-02-10  Jürgen Reuter  <reuter@ipd.uka.de>
4700
4701         * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: add
4702         new connect-to-neighbor, control-points and staff-padding
4703         properties to make ligature brackets showing up again.
4704
4705 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4706
4707         * VERSION: release 2.7.33
4708
4709         * lily/relocate.cc (prefix_relocation): oops. One TOPLEVEL_VERSION
4710         too many.
4711
4712         * Documentation/user/changing-defaults.itely (Difficult tweaks):
4713         remove applyOutput example.
4714         (Objects connected to the input): document \tweak, \parenthesize
4715
4716         * lily/relocate.cc (prefix_relocation): allow "current"
4717         iso. TOPLEVEL_VERSION for share/lilypond/ suffix. This makes
4718         changing VERSION in a lily tree less painful.
4719
4720         * input/regression/parenthesize.ly: new file. 
4721
4722         * scm/output-lib.scm (parenthesize-element): new function.
4723
4724         * scm/define-grobs.scm (all-grob-descriptions): add ParenthesesItem.
4725
4726         * lily/parenthesis-engraver.cc (acknowledge_grob): new file.
4727
4728         * lily/accidental-engraver.cc (make_standard_accidental): reroute
4729         cause: accidentals are caused by note heads, not note events. 
4730
4731 2006-02-08  Graham Percival  <gpermus@gmail.com>
4732
4733         * darwin.patch: small patch from Erlend, thanks!
4734
4735         * Documentation/user/basic-notation.itely: add stem-neutral example.
4736
4737         * Documentation/user/putting.itely: clarifications.
4738
4739 2006-02-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4740
4741         * Documentation/topdocs/NEWS.tely (Top): remove internal cleanup
4742         note, add more guidelines to what should go into NEWS.
4743
4744         * input/sakura-sakura.ly: document how to override font.
4745
4746         * input/regression/font-family-override.ly:  doc -dshow-available-fonts
4747
4748 2006-02-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4749
4750         * lily/midi-item.cc (to_string): truncate time sig at 255 beats.
4751
4752 2006-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
4753
4754         * scripts/convert-ly.py (lilypond_version_re_str): Move from
4755         convertrules.  Add explicit grouping, needed for python2.2.
4756
4757 2006-02-07  Jan Nieuwenhuizen  <janneke@gnu.org>
4758
4759         * Documentation/topdocs/NEWS.tely (Top): Mention code cleanup.
4760
4761 2006-02-07  Graham Percival  <gpermus@gmail.com>
4762
4763         * Documentation/user/global.itely: fix line-width in (text) docs.
4764
4765         * Documentation/user/lilypond-book.itely: same.
4766
4767 2006-02-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4768
4769         * VERSION (PACKAGE_NAME): release 2.7.32
4770
4771         * Documentation/topdocs/NEWS.tely (Top): document new variable
4772         naming.
4773
4774         * flower/include/array.icc (Message): remove file.
4775
4776         * flower/include/std-vector.hh: make sure vsize and VPOS are
4777         defined for binary_search_bounds().
4778
4779         * flower/std-string.cc (std): add to_string(long unsigned).
4780
4781         * configure.in (gui_b): excise std_string option.
4782         (gui_b): excise std_vector option.
4783
4784         * flower/string.cc (Module): excise flower array & string
4785
4786         * flower/include/std-string.hh: excise flower string.
4787
4788         * {ly,lily,scm}/*: use dashes in \paper and \layout variables
4789
4790         * python/convertrules.py (lilypond_version_re_str): require
4791         only numbers and dots in \version string.
4792
4793 2006-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4794
4795         * lily/system-start-delimiter.cc (print): allow style = text too.
4796
4797         * lily/system-start-delimiter-engraver.cc
4798         (acknowledge_system_start_text): new function, also add add to
4799         support of system-start-text (instrument names). This fixes
4800         instrument names on piano staves.
4801
4802         * lily/instrument-name-engraver.cc: rewrite. Use
4803         system-start-delimiter approach. This save memory and cpu.
4804
4805         * scm/define-grobs.scm (all-grob-descriptions): remove
4806         instrument-name from break-alignment.
4807
4808         * mf/GNUmakefile ($(NCSB_TTFS)): depend on pfx2ttf script too.
4809
4810 2006-02-05  Jan Nieuwenhuizen  <janneke@gnu.org>
4811
4812         * stepmake/stepmake/generic-vars.make (LOOP): Add PLUS to keep -j
4813         jobserver going.
4814
4815         * configure.in (std_vector): On by default.
4816
4817         * lily/include/font-metric.hh:
4818         * lily/include/tfm-reader.hh: 
4819         * lily/include/spanner.hh: Use unsigned for indices and sizes.
4820         Update users.
4821
4822         * Documentation/user/changing-defaults.itely: Fix link v2.5, out-www.
4823
4824 2006-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4825
4826         * VERSION (PACKAGE_NAME): 2.7.31
4827
4828         * scm/framework-ps.scm (dump-stencil-as-EPS): don't hardcode left
4829         EPS edge at 0, but take minimum with left-overshoot. This fixes
4830         cut off system start delims. 
4831
4832         * lily/instrument-name-engraver.cc (stop_translation_timestep):
4833         hack: add to axis group if not added yet. This fixes hara kiri'd
4834         piano staves.
4835
4836         * lily/hara-kiri-group-spanner.cc
4837         (force_hara_kiri_in_y_parent_callback): fix signatures.
4838
4839         * lily/hairpin.cc (print): check next hairpin to see whether or
4840         not to be continuing.
4841
4842 2006-02-04  Jan Nieuwenhuizen  <janneke@gnu.org>
4843
4844         * Remove trailing whitespace from makefiles.
4845         
4846         * flower/include/std-vector.hh: Add binary_search_bounds workaround
4847         for earlier gcc.
4848
4849         * .cvsignore: Add out*, out-www, config-*.  Remove lots of cruft.
4850
4851         * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Workaround.
4852
4853         * config.hh.in (HAVE_STL_DATA_METHOD): Add.
4854
4855         * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): New function.
4856
4857         * configure.in: Use it.
4858
4859 2006-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4860
4861         * scm/music-functions.scm (pitch-of-note): new function.
4862
4863         * ly/music-functions-init.ly: add \octave and \addquote
4864
4865         * lily/parser.yy (music_function_chord_body): softcode \octave.
4866         (lilypond_header): softcode \addquote
4867
4868 2006-02-03  Jan Nieuwenhuizen  <janneke@gnu.org>
4869
4870         * flower/include/std-vector.hh[STD_VECTOR]: Do not include
4871         array.hh, parray.hh at all.  Getting ready to flip the
4872         configure default.
4873
4874         * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
4875
4876         * lily/source-file.cc (file::get_line): Help binary_search_bounds
4877         a bit.
4878
4879         * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
4880
4881 2006-02-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4882
4883         * flower/include/array.hh: typo. 
4884
4885 2006-02-02  Graham Percival  <gpermus@gmail.com>
4886
4887         * Documentation/user/advanced-notation.itely: doc "\#" in text.
4888
4889 2006-02-03  Jan Nieuwenhuizen  <janneke@gnu.org>
4890
4891         * flower/include/pqueue.hh: Derive from std::vector.
4892
4893         * flower/include/parray.hh: Conform to std::vector interface.
4894         Update users.
4895
4896 2006-02-02  Graham Percival  <gpermus@gmail.com>
4897
4898         * Documentation/topdocs/NEWS.itely: grammar fix from Laura.
4899
4900 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4901
4902         * flower/file-path.cc (is_file): remove if 0 section.
4903
4904         * buildscripts/pfx2ttf.fontforge (err): robustness fix for
4905         selecting afii61352.
4906
4907 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
4908
4909         * flower/include/std-vector.hh (boundary): Oops, reverse.
4910
4911         * flower/string-convert.cc (convert::unsigned_string): Bugfix:
4912         remove superfluous `d'.
4913
4914         * flower/include/std-vector.hh (boundary, top): Detach from class.
4915         Remove empty vector shell.
4916
4917         * flower/include/array.hh (reverse, swap): Detach from class.
4918         Update users.
4919         
4920         * flower/include/std-vector.hh
4921         * flower/include/array.hh (concat): Globally change to insert ().
4922
4923         
4924         * flower/include/std-vector.hh
4925         * flower/include/parray.hh
4926         * flower/include/array.hh (elem, elem_ref): Globally replace by
4927         at ().
4928
4929 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4930
4931         * Documentation/topdocs/NEWS.tely (Top): use ly: prefix for members.
4932
4933         * python/convertrules.py (FatalConversionError.sub_cxx_id):
4934         anticipate on identifier substitutions.
4935
4936 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
4937
4938         * flower/include/std-vector.hh (insert): Remove, replace by
4939         std::vector interface.  Update callers.
4940
4941         * flower/include/array.icc (insert): Change signature to
4942         match std::vector interface.
4943         
4944         * flower/include/array.icc (vector_sort): Bugfix.
4945
4946 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4947
4948         * lily/parser.yy (output_def_head_with_mode_switch): new
4949         production. Result: dashes and underscores may be used in the
4950         \paper block.
4951
4952         * lily/lexer.ll: add DASHED_WORD.  Accept in INITIAL mode.
4953
4954         * python/convertrules.py (conv): oops. One slash too much.
4955
4956 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
4957
4958         * flower/include/std-vector.hh (sort): Remove, replace by
4959         ::vector_sort.  Update callers.
4960
4961         * flower/include/std-vector.hh (slice): Remove.  Update callers.
4962         (sort): Bugfix.
4963
4964         * flower/test-std.cc (vector_sort): New test.
4965
4966 2006-02-01  Graham Percival  <gpermus@gmail.com>
4967
4968         * Documentation/user/putting.itely: fixes from Erik.
4969
4970 2006-02-01  Jan Nieuwenhuizen  <janneke@gnu.org>
4971
4972         * flower/test-std.cc: Add simple unit test for vector migration.
4973
4974         * stepmake/stepmake/test*: Unit test support.
4975
4976         * flower/include/std-vector.hh (del): Remove.  Use erase (),
4977         update callers.
4978
4979         * flower/include/array.hh (begin, end): Add.
4980         (del, get): Remove.
4981
4982 2006-02-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4983
4984         * lily/include/lily-guile-macros.hh (MAKE_SCHEME_CALLBACK): use
4985         std::string not String. 
4986
4987         * lily/context-def.cc (path_to_acceptable_context): use INT_MAX
4988         iso UINT_MAX.
4989
4990         * lily/prob.cc (Prob): copy type_ too.
4991
4992         * lily/lily-guile.cc (mangle_cxx_identifier): new
4993         function. Class_bla::foo_bar_[px] ->
4994         ly:class-bla::foo-bar[?!]. Changes throughout
4995
4996 2006-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4997
4998         * flower/include/guile-compatibility.hh (scm_from_unsigned): add scm_from_unsigned().
4999
5000         * lily/beam.cc (calc_direction): take dir from visible stem in
5001         degenerate case.
5002
5003 2006-01-31  Jan Nieuwenhuizen  <janneke@gnu.org>
5004
5005         * lily/melody-spanner.cc (spanner::calc_neutral_stem_direction):
5006         Fix -1, >=0 boundary checks for unsigned vsize.
5007
5008         * lily/separating-group-spanner.cc (spanner::find_rods): Fix >=0
5009         loop for unsigned vsize.
5010
5011         * configure.in (--enable-std-vector): New option.
5012         (--enable-std-string): On by default.
5013
5014         * flower/include/std-vector.hh: New file.  Enable switch to
5015         std::vector, update client code.
5016
5017 2006-01-30  Graham Percival  <gpermus@gmail.com>
5018
5019         * scm/document-translation.scm: clarify "this context is also
5020         known as".  Thanks, Werner!
5021
5022         * Documentation/user/putting.itely: small fixes from Don Blaheta.
5023
5024         * Documentation/user/invoking.itely: small fix from Don.
5025
5026 2006-01-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5027
5028         * scm/lily.scm (define-scheme-options): rename option
5029         preview-include-book-title to book-title-preview
5030         (define-scheme-options): move force-eps-font-include (from paper
5031         block) to eps-font-include -d option.
5032
5033         * VERSION (PATCH_LEVEL): release 2.7.30
5034
5035         * input/bach-schenker.ly (staffPiano): new file.
5036
5037         * buildscripts/pfx2ttf.fontforge: remove No. glyph from TTF file.
5038
5039         * Documentation/topdocs/NEWS.tely (Top): simplify NEWS entry, add
5040         credits to Nicolas.
5041
5042         * scm/define-markup-commands.scm (epsfile): add scaling to \epsfile.
5043
5044         * ps/lilyponddefs.ps: remove start-system, stop-system,
5045         start-page fluff. This saves putting { } code on the stack, fixing
5046         stack overflows when including EPS files.
5047
5048 2006-01-29  Graham Percival  <gpermus@gmail.com>
5049
5050         * Documentation/user/putting.itely: minor fixes (comments on -devel).
5051
5052 2006-01-29  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5053
5054         * Documentation/topdocs/NEWS.tely (Top): add \parallelMusic news.
5055
5056 2006-01-28  Graham Percival  <gpermus@gmail.com>
5057
5058         * Documentation/user/putting.itely: minor fixes (mostly tab->space).
5059
5060 2006-01-28  Jan Nieuwenhuizen  <janneke@gnu.org>
5061
5062         * input/mutopia/claop.py: Update.
5063
5064 2006-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5065
5066         * input/regression/completion-heads.ly (texidoc): fix.
5067
5068         * lily/staff-symbol-referencer.cc (on_staff_line): idem.
5069
5070         * lily/tie-formatting-problem.cc
5071         (set_ties_config_standard_directions): use abs iso fabs for ints.
5072
5073         * Documentation/topdocs/INSTALL.texi (Top): document ncsb requirement.
5074
5075         * mf/feta-bolletjes.mf (overdone_heads): solfa_noteheight, a
5076         little less than noteheight, to prevent overlaps in chords.
5077
5078         * lily/note-collision.cc (check_meshing_chords): wipe upper FA
5079         head, and fudge stem-attachment.
5080
5081         * scm/lily-library.scm (not): define hash-for-each for guile 1.6
5082
5083         * lily/slur-scoring.cc (get_best_curve): handle opt_idx < 0 case.
5084
5085 2006-01-27  Jan Nieuwenhuizen  <janneke@gnu.org>
5086
5087         * lily/main.cc (main): Debugging aid: catch exceptions.
5088
5089         * flower/std-string.cc (to_string): Robustification.  Fixes midi
5090         output with std::string.
5091
5092 2006-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5093
5094         * Documentation/topdocs/INSTALL.texi (Top): remove libkpathsea notes.
5095
5096 2006-01-26  Jan Nieuwenhuizen  <janneke@gnu.org>
5097
5098         * Fix -DSTRING_UTILS_INLINED.
5099
5100 2006-01-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5101
5102         * VERSION (PATCH_LEVEL): release 2.7.29
5103
5104         * lily/relocate.cc (setup_paths): mingw uses std string too.
5105
5106         * lily/*.cc: various fixes for substr(ARG).
5107
5108         * lily/sustain-pedal.cc (print): 
5109
5110         * flower/file-name.cc (slashify): use std strings.
5111
5112         * flower/string-convert.cc: remove publib.h
5113
5114         * scm/define-markup-commands.scm (verbatim-file): new markup
5115         command \verbatim-file
5116
5117         * Documentation/topdocs/NEWS.tely: fixup URLs
5118
5119         * input/regression/alignment-vertical-manual-setting.ly (Module):
5120         new file.
5121
5122         * lily/align-interface.cc (align_elements_to_extents): overwrite
5123         translations with numbers in alignment-offsets from left bound
5124
5125         * scm/page.scm (make-page-stencil): read X-offset from paper-system.
5126         (page-translate-systems): new function: take into account Y-offset.
5127
5128         * Documentation/topdocs/NEWS.tely (Top): document new features.
5129
5130         * input/regression/page-layout-manual-position.ly (Module): new
5131         file.
5132
5133 2006-01-26  Jan Nieuwenhuizen  <janneke@gnu.org>
5134
5135         * flower/file-path.cc (path::parse_path): Oops.
5136
5137         * Finish std::string interface.  For now, use std:: marker
5138         throughout for easy s/r.
5139
5140 2006-01-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5141
5142         * Documentation/user/putting.itely (Score is a single musical
5143         expression): typo.
5144         (Score is a single musical expression): more typos.
5145
5146         * scm/page.scm (annotate-space-left): thinko.
5147         (annotate-page): more thinkos.
5148
5149 2006-01-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5150
5151         * scm/layout-page-layout.scm (write-page-breaks): record tweaks
5152         for different \score blocks separately.
5153         (post-process-pages): put write-page-layout into paper block.
5154
5155         * lily/output-def.cc (get_parser): new file.
5156
5157         * lily/output-def-scheme.cc (LY_DEFINE): ly:output-def-parser, new
5158         file.
5159
5160         * lily/include/output-def.hh (class Output_def): add parser_ member.
5161
5162         * input/regression/page-layout-twopass.ly (Module): new file.
5163
5164         * scm/lily.scm: remove cpp hack.
5165
5166         * lily/lyric-engraver.cc (get_voice_to_lyrics): use NPOS everywhere.
5167
5168 2006-01-25  Jan Nieuwenhuizen  <janneke@gnu.org>
5169
5170         * GNUmakefile.in (c-clean): New target.
5171
5172         * flower/include/std-string.hh: String/std::string compatibility:
5173         Use NPOS for `not found' (iso -1), use ssize for length () and pos
5174         type.
5175
5176         * flower/rational.cc: 
5177         * flower/include/rational.hh: 
5178
5179         * flower/offset.cc: 
5180         * flower/include/offset.hh: 
5181
5182         * flower/interval.cc: 
5183         * flower/include/interval.hh: 
5184
5185         * flower/string-convert.cc: 
5186         * flower/include/string-convert.hh: Use std::string [interface].
5187         Update callers.
5188
5189 2006-01-25  Heikki Junes  <hjunes@cc.hut.fi>
5190
5191         * Documentation/index.html.in: clean up.
5192
5193 2006-01-25  Graham Percival  <gpermus@gmail.com>
5194
5195         * Documentation/user/putting.itely: another new untested doc section.
5196
5197 2006-01-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5198
5199         * scm/layout-page-layout.scm (write-page-breaks): write
5200         \spacingTweaks #ALIST. Handle grace timing.
5201
5202         * scm/: more imports.
5203
5204         * scm/page.scm (make-page): add footer/header.
5205         (annotate-space-left): revise: only take page argument.
5206         (layout->page-init): new function.
5207
5208         * scm/layout-page-layout.scm (write-page-breaks): preliminary
5209         version of the system/spacing/linebreak hack writing to the output
5210
5211         * lily/prob-scheme.cc (LY_DEFINE): take optional 'key val args in
5212         ly:make-prob.
5213
5214         * lily/grob-scheme.cc (LY_DEFINE): ly:spanner-get-bound ->
5215         ly:spanner-bound
5216
5217 2006-01-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5218
5219         * scm/stencil.scm (annotate-y-interval): move from layout-page-layout.scm
5220
5221         * scm/paper-system.scm (paper-system-annotate): new file. Handle paper-system.
5222
5223         * scm/layout-page-layout.scm (optimal-page-breaks): move all page
5224         handling to page.scm
5225
5226         * lily/prob-scheme.cc (LY_DEFINE): new file.
5227         (LY_DEFINE): functions ly:make-prob , ly:prob-type? , ly:prob-(set-)property(!)
5228
5229         * lily/music-scheme.cc (LY_DEFINE): rewrite get/set property using
5230         prob functions.
5231
5232         * lily/music.cc (derived_mark): derive Music from Prob.
5233
5234         * lily/paper-system.cc (LY_DEFINE): derive from Prob.
5235
5236         * lily/prob.cc (Module): Implement Prob (Property Object), object
5237         with shared and r/w property alists.  
5238
5239         * lily/include/prob.hh (Module): new file. Declare Prob.
5240
5241         * flower/string.cc: remove is_empty().
5242
5243         * flower/include/string.hh (class String): remove String:: qualifier.
5244
5245         * buildscripts/analyse-cxx-log.py: new file. Read compile log to
5246         substitute appropriate functions.
5247
5248         * flower/include/string.hh (class String): remove to_str0 and
5249         is_empty(). S&R everywhere.
5250
5251 2006-01-23  Graham Percival  <gpermus@gmail.com>
5252
5253         * Documentation/user/basic-notation.itely: add hairpin
5254         after-linebreak tweak to commonprop.
5255
5256         * Documentation/user/putting.itely: added two new sections.
5257
5258 2006-01-23  Jan Nieuwenhuizen  <janneke@gnu.org>
5259
5260         * flower/international.cc: 
5261         * flower/include/international.hh: 
5262
5263         * flower/getopt-long.cc: 
5264         * flower/include/getopt-long.hh: Use std::string [interface].
5265         Update callers.
5266
5267         * flower/include/std-string.hh: Oops, bugfix for --disable-std-string.
5268
5269         * stepmake/stepmake/executable-rules.make: Add dependency on
5270         module libraries.
5271
5272 2006-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
5273
5274         * flower/file-path.cc: 
5275         * flower/include/file-path.hh: Use std::string [interface].
5276         Update callers.
5277
5278         * flower/direction.cc: 
5279         * flower/axis.cc: Unused.  Remove.
5280
5281         * configure.in (--enable-std-string): New option.
5282
5283         * flower/std-string.cc: 
5284         * flower/include/std-string.hh: New file.
5285
5286         * flower/file-name.cc[STD_STRING]:
5287         * flower/include/file-name.hh[STD_STRING]: Use it.  Update callers.
5288
5289 2006-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5290
5291         * scm/output-svg.scm (placebox): no GNU coding standards in SVG output. 
5292
5293         * scm/define-markup-commands.scm (with-dimensions):
5294         with-dimensions markup command.
5295
5296         * input/test/font-table.ly: use it.
5297
5298         * lily/open-type-font.cc (glyph_list): new function.
5299
5300         * lily/open-type-font-scheme.cc (LY_DEFINE): ly:otf-glyph-list function.
5301
5302         * lily/ttf.cc: remove ly:font-glyph-list scheme function
5303
5304 2006-01-22  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5305
5306         * ly/music-functions-init.ly (parallelMusic): new music function
5307         for parallel music entry.
5308
5309         * scm/define-music-properties.scm (all-music-properties): new
5310         'void music property
5311
5312         * scm/music-functions.scm (ly:music-message): make public, to be
5313         used in music function definitions
5314
5315         * scm/lily-library.scm (collect-music-for-book): discard music
5316         when the 'void property is set.
5317
5318 2006-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5319
5320         * lily/ttf.cc (LY_DEFINE): store name before destroying face.
5321
5322         * mf/GNUmakefile: idem.
5323
5324         * buildscripts/mf-to-table.py (help): excise fetaXXlist.ly support.
5325
5326         * stepmake/bin/install.py (dest): Only chmod/chown just created directories
5327
5328         * Documentation/user/notation-appendices.itely (The Feta font):
5329         use it.
5330
5331         * input/test/font-table.ly: new file. Generate font table within lily.
5332
5333         * Documentation/user/notation-appendices.itely (The Feta font):
5334         use new font-table.ly file. 
5335
5336         * stepmake/stepmake/install-out-targets.make
5337         (local-install-outfiles): only create directory if
5338         $(INSTALLATION_OUT_DIR) is defined. This fixes install on Gentoo.
5339
5340 2006-01-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5341
5342         * lily/ttf.cc (LY_DEFINE): new function ly:font-glyph-list.
5343
5344         * VERSION (PACKAGE_NAME): release 2.7.28
5345
5346         * scm/framework-ps.scm (write-preamble): use it to pick exactly
5347         the right font from a Mac dfont.
5348         (write-preamble): don't forget directory, only look at files.
5349
5350         This fixes problems with TTF files in dfonts that don't match
5351         their PostScript names.
5352          
5353         * lily/ttf.cc (LY_DEFINE): ly:ttf-ps-name: new routine to extract
5354         PS name from TTF font.
5355
5356         * input/regression/tie-manual.ly: document new feature.
5357
5358         * Documentation/topdocs/NEWS.tely (Top): add tie NEWS.
5359
5360         * VERSION (MY_PATCH_LEVEL): bump to .28
5361
5362         * Documentation/user/basic-notation.itely (Ties): add tie examples
5363         refs.
5364
5365         * lily/tie-formatting-problem.cc (score_ties_configuration):
5366         symmetry penalties for outer ties.
5367
5368 2006-01-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5369
5370         * lily/tie-formatting-problem.cc (generate_configuration) 
5371         (set_manual_tie_configuration): skip non-pair manual
5372         tie-configuration, so you can set individual ties as
5373
5374           #'tie-configuration = #'((7 . 1) #t (-3 . 1))
5375
5376         * input/regression/tie-chord.ly: use generateTiePattern to
5377         simplify file.
5378
5379         * lily/tie-formatting-problem.cc (peak_around): new function.
5380         (score_configuration): use sliding criterion for staff line collisions. 
5381         (score_configuration): idem for dot collisions.
5382         (generate_configuration): use separate stem_gap for gap to stem.
5383
5384         * lily/include/tie-formatting-problem.hh (struct Tie_details):
5385         separate penalty factors for x and y distance.
5386         (struct Tie_details): separate penalties for tip and center line collisions.
5387
5388 2006-01-19 Han-Wen Nienhuys  <hanwen@xs4all.nl>
5389
5390         * lily/tie-formatting-problem.cc (generate_configuration): make
5391         large ties avoid stafflines in the horizontal section.
5392         (score_configuration): use softcoded penalties
5393         (score_aptitude): idem.
5394
5395         * lily/tie-helper.cc (from_grob): softcode tie details
5396
5397         * lily/staff-symbol-referencer.cc (on_staff_line): new function
5398
5399         * lily/staff-symbol-referencer.cc (on_line): rename from
5400         on_staffline 
5401
5402 2006-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5403
5404         * ly/music-functions-init.ly: remove duplicate tag.
5405
5406         * lily/include/*.hh: GCC 4.1 fixes.
5407
5408 006-01-16  Erlend Aasland  <erlenda@gmail.com>
5409
5410         * Documentation/user/global.itely: fix typos; @bugs -> @refbugs
5411
5412         * scm/define-music-types.scm: fix bug in desc. string
5413         for OverrideProperty
5414
5415 2006-01-15 Erik Sandberg  <mandolaerik@gmail.com>
5416
5417         * scripts/lilypond-book.py: bugfix
5418
5419         * scm/define-music-types.scm: fix typos.
5420
5421 2006-01-14  Graham Percival  <gpermus@gmail.com>
5422
5423         * Documentation/user/ basic-notation.itely, global.itely,
5424         advanced-notation.itely, instrument-notation.itely: small
5425         additions (bugs and commonly tweaked properties).
5426
5427 2006-01-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5428
5429         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): generic
5430         detection of mingw build.
5431         (MINGW_BUILD): opps.
5432
5433 2006-01-12  Jan Nieuwenhuizen  <janneke@gnu.org>
5434
5435         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Add
5436         i686-mingw32.
5437
5438 2006-01-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5439
5440         * scm/music-functions.scm (skip->rest): add skip->rest
5441
5442 2006-01-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5443
5444         * lily/font-config.cc (init_fontconfig): call FcConfigBuildFonts()
5445         explicitly.
5446
5447         * lily/font-config-scheme.cc (LY_DEFINE): also display font and
5448         config dirs. Aids debugging. 
5449         (display_config): also display config files.
5450
5451 2006-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5452
5453         * VERSION: release 2.7.27
5454
5455         * lily/bar-line.cc (calc_bar_size): inspect staff->extent (Y_AXIS)
5456         for determining bar size.
5457
5458         * lily/staff-symbol.cc (print): place lines at distance line-positions
5459
5460         * scm/define-grob-properties.scm (all-user-grob-properties): add
5461         line-positions.
5462
5463         * lily/staff-symbol.cc (height): new function.
5464
5465         * input/regression/staff-line-positions.ly:  new file.
5466
5467 2006-01-06  Graham Percival  <gpermus@gmail.com>
5468
5469         * input/test/add-staccato.ly: remove reference to old file.
5470
5471 2006-01-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5472
5473         * scripts/lilypond-book.py (invokes_lilypond): allow . in path to
5474         lilypond binary too.
5475
5476 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5477
5478         * make/mutopia-rules.make (Module): use LILYPOND_BINARY
5479
5480 2006-01-06  Jan Nieuwenhuizen  <janneke@gnu.org>
5481
5482         * scripts/midi2ly.py: Bugfix: Declare datadir.
5483
5484         * make/ly-rules.make:
5485         * make/mutopia-rules.make: Use LILYPOND_BINARY (WAS: LILYPOND, but
5486         that seems to be gone). Fixes make web.
5487
5488         * The grand 2005-2006 replace.
5489
5490         * VERSION (MY_PATCH_LEVEL): Stay on .26 for now.
5491
5492 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5493
5494         * make/lilypond-vars.make: set LILYPOND_BINARY variable
5495         (LILYPOND_BOOK_LILYPOND_FLAGS): new variable
5496         LILYPOND_BOOK_LILYPOND_FLAGS to hold system dependent settings,
5497         like -dgs-font-load.
5498
5499         * Documentation/user/GNUmakefile ($(outdir)/interfaces.itexi):
5500         remove absolute path to lilypond binary.
5501         
5502 2006-01-05 Pedro Kroeger    <kroeger@pedrokroeger.net>
5503
5504         * configure.in (NCSB_DIR): fix --with-ncsb-dir option.
5505
5506 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5507
5508         * make/lilypond-vars.make: support LILYPOND_EXTERNAL_BINARY variable.
5509
5510         * mf/GNUmakefile: remove broken dvips map symlink.
5511
5512 2006-01-04  Jan Nieuwenhuizen  <janneke@gnu.org>
5513
5514         * lily/main.cc: 
5515         * configure.in: Cosmetic fixes.
5516
5517 2006-01-04  Mats Bengtsson  <mabe@s3.kth.se>
5518
5519         * Documentation/user/music-glossary.tely (Pitch names): Added
5520         Spanish pitch names and durations, thanks to Ernesto Gancedo
5521
5522 2006-01-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5523
5524         * scm/lily.scm (define-scheme-options): use quasi-quote for option
5525         init. Fixes verbose printing of .scm files.
5526
5527         * stepmake/aclocal.m4: add spaces before - options.
5528         
5529 2006-01-03  Jan Nieuwenhuizen  <janneke@gnu.org>
5530
5531         * lily/relocate.cc (setup_paths): Bugfix: do not store result
5532         of path search in local block variable.
5533
5534 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5535
5536         * configure.in (NCSB_DIR): --enable-ncsb-dir
5537         (LINK_GXX_STATICALLY): denko.
5538
5539         * mf/GNUmakefile ($(NCSB_TTFS)): NCSB_DIR iso. NCSB_PATH. 
5540
5541         * configure.in (LINK_GXX_STATICALLY): --enable-ncsb-path option. 
5542         use locate to find c059033l.pfb. 
5543         
5544 2006-01-02  Jan Nieuwenhuizen  <janneke@gnu.org>
5545
5546         * lily/tie-formatting-problem.cc
5547         (problem::generate_base_chord_configuration): Use my_round (was
5548         round).
5549
5550         * lily/source-file.cc (file::get_counts)[!HAVE_MBRTOWC]: Bugfix,
5551         do not invoke mbrtowc.
5552
5553         * lily/relocate.cc (setup_paths): Add more debugging verbosity.
5554
5555 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5556
5557         * scm/lily.scm (lilypond-all): oops. remove debugging hack.
5558
5559 2005-01-02  Heikki Junes  <hjunes@cc.hut.fi>
5560
5561         * Documentation/user/invoking.itely (svg): revise.
5562
5563 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5564
5565         * lily/lexer.ll: use sourcefilename iso. renameinput.
5566
5567 2006-01-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5568
5569         * mf/GNUmakefile ($(NCSB_TTFS)): revise rule. Create
5570         <PostScriptName>.ttf instead of c059XXXttf.
5571
5572         * lily/program-option.cc (LY_DEFINE): special support for
5573         --verbose, so it works before option init too.
5574  
5575         * mf/GNUmakefile (local-install): oops.
5576
5577         * lily/lyric-hyphen.cc (print): oops.
5578
5579         * buildscripts/pfx2ttf.fontforge: new file.
5580         
5581         * mf/GNUmakefile (NCSB_PATH): add vars for NCSB.
5582         ($(outdir)/%.ttf): new rule. 
5583
5584         * scm/define-grobs.scm (all-grob-descriptions): add font-interface
5585         to LyricHyphen.
5586
5587         * lily/lyric-hyphen.cc (print): multiply hyphen height by
5588         font-size
5589
5590 2005-12-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5591
5592         * VERSION: release 2.7.26
5593         
5594         * mf/GNUmakefile (install-fc-cache): remove old font.cache-1 files.
5595
5596 2005-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5597
5598         * lily/font-config.cc (init_fontconfig): verbosity.
5599
5600         * THANKS: add Muziekacademie Lede. 
5601
5602         * scripts/musicxml2ly.py (print_voice_definitions): new function 
5603         (print_score_setup): new function
5604         (convert): read part definition to output staves properly.
5605
5606         * python/musicxml.py (Measure.get_notes): new class. Wrap lists of
5607         Music_xml notes.
5608
5609         * python/musicexp.py (Output_printer.__init__): use _ in data
5610         members.
5611         (Output_printer.unformatted_output): new function: no formatting,
5612         but count braces.
5613         (Duration.get_length): remove isinstance() checks for
5614         Output_printer everywhere.
5615
5616         * input/regression/lyrics-bar.ly (texidoc): add
5617         Separating_line_group_engraver.
5618
5619 2005-12-29  Jan Nieuwenhuizen  <janneke@gnu.org>
5620
5621         * lily/relocate.cc (framework_relocation): New function,
5622         factored from set_relocation ().
5623         (prefix_relocation): Rename from set_relocation ().
5624         (setup_paths): Use it.
5625
5626 2005-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5627
5628         * scm/*.scm: use LEFT/RIGHT/UP/DOWN etc. iso. magical
5629         numbers. Patch by Erlend Aasland.
5630
5631 2005-12-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5632
5633         * lily/font-config.cc (init_fontconfig): print warning if cache
5634         file is not existant.
5635
5636         * lily/main.cc: don't use #ifdef but #if
5637
5638 2005-12-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5639
5640         * lily/grob-property.cc (internal_set_property): don't abort on
5641         calculation-in-progress.
5642
5643         * lily/beam.cc (get_default_dir): robustness: don't divide by zero.
5644
5645         * lily/tuplet-bracket.cc (calc_control_points): oops: typo. Read
5646         connect-to-neighbor property not connect-to-other
5647
5648         * lily/program-option.cc (LY_DEFINE): remove Protected_scm global variable.
5649         (LY_DEFINE): oops. don't forget protection.
5650
5651         * flower/parse-afm.cc (Module): strip AFM handling completely.
5652
5653         * lily/stencil-expression.cc: idem.
5654
5655         * lily/grob-interface-scheme.cc (LY_DEFINE): idem.
5656
5657         * lily/function-documentation.cc (ly_add_function_documentation):
5658         use static member iso. Protected_scm
5659
5660         * lily/main.cc: use ifdef ARGV0_RELOCATION iso. MINGW
5661
5662         * config.make.in (prefix): remove HAVE_KPATHSEA_SO
5663
5664 2005-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
5665
5666         * lily/relocate.cc (set_env_dir): New function.
5667         (set_relocation): Use it to fix setting PANGO_PREFIX.
5668
5669 2005-12-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5670
5671         * input/regression/stem-direction-context.ly: remove rest.
5672
5673         * lily/melody-engraver.cc (process_music): restart for bar lines.
5674         (acknowledge_slur): restart for slurs.
5675
5676 2005-12-27  Heikki Junes  <hjunes@cc.hut.fi>
5677
5678         * Documentation/user/invoking.itely: describe how to view SVG 
5679         output using Inkscape which replace embedded fonts with OTF fonts.
5680
5681 2005-12-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5682
5683         * lily/relocate.cc (set_relocation): set PANGO_PREFIX
5684
5685 2005-12-23  Jan Nieuwenhuizen  <janneke@gnu.org>
5686
5687         * lily/melody-engraver.cc (class Melody_engraver): Remove lying
5688         comment.
5689
5690 2005-12-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5691
5692         * VERSION (PACKAGE_NAME): release 2.7.25
5693
5694         * Documentation/topdocs/NEWS.tely (Top): document new feature.
5695
5696         * input/regression/stem-direction-context.ly: new file.
5697
5698         * lily/relocate.cc (set_relocation): add PANGO_PREFIX
5699
5700         * lily/melody-engraver.cc (acknowledge_stem): restart MelodyItem
5701         on rest.
5702
5703         * ly/engraver-init.ly: add Melody_engraver
5704
5705         * lily/beam.cc (calc_direction): use default-direction
5706         iso. get_default_direction()
5707
5708         * scm/define-grob-properties.scm (all-user-grob-properties): add
5709         default-direction property.
5710
5711         * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem.
5712
5713         * lily/stem.cc (calc_default_direction): remove
5714         Stem::get_default_direction, use default-direction with callback
5715         instead.
5716
5717         * lily/melody-spanner.cc (calc_neutral_stem_direction): 
5718
5719         * lily/melody-engraver.cc: new file. Acknowledge stems for
5720         interpolated stem directions. 
5721
5722         * lily/melody-spanner.cc: new file. Interpolate stem directions.
5723
5724         * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem
5725
5726         * lily/slur-configuration.cc (fit_factor): more robust check for
5727         point in curve X-extent.
5728
5729         * lily/slur.cc (outside_slur_callback): return offset_scm, not 0.
5730         (outside_slur_callback): check for 'outside avoidance.
5731
5732         * lily/slur-configuration.cc (score_extra_encompass): don't use
5733         bound->column() == avoid->column() for checking extents, as this
5734         doesn't work for accidentals. 
5735
5736         * lily/slur-engraver.cc (acknowledge_extra_object): remove
5737         DynamicText hardcoding.
5738
5739         * lily/slur-scoring.cc (enumerate_attachments): robustness: don't
5740         crash if bound stem is NULL
5741
5742         * lily/piano-pedal-performer.cc: patch by MWD for enabling piano
5743         pedals.
5744
5745 2005-12-22  Graham Percival  <gpermus@gmail.com>
5746
5747         * scm/define-markup-commands.scm: typo.  @code{\raise}
5748         => @code{\\raise}.
5749
5750         * darwin.patch: now used again, includes a
5751         required patch from fink.
5752
5753 2005-12-21  Heikki Junes  <hjunes@cc.hut.fi>
5754
5755         * po/TODO: mention gtranslator along with kbabel.
5756         * po/fi.po: update translations.
5757
5758 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
5759
5760         * lily/relocate.cc (setup_paths): Bugfix.
5761
5762 2005-12-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5763
5764         * lily/slur-configuration.cc (score_extra_encompass): don't use
5765         "avoid" choice for avoid-slur.
5766
5767         * stepmake/bin/install.py (dest): don't create existing dir.
5768
5769 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
5770
5771         * stepmake/bin/install.py: Remove file before copying.
5772
5773         * config.make.in: 
5774         * stepmake/aclocal.m4: Do not substitute INSTALL.
5775
5776 2005-12-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5777
5778         * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
5779         depend on link-tree.
5780
5781         * lily/relocate.cc (setup_paths): only check path for non-absolute
5782         dir without directory part.
5783
5784         * flower/file-name.cc (is_absolute):  new method.
5785         (is_absolute): check root_ too.
5786
5787 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
5788
5789         * lily/relocate.cc (setup_paths) [__MINGW32__]: Comment-out broken
5790         relocation code.  Oops, don't comment out too much.
5791
5792         * stepmake/stepmake/generic-vars.make (INSTALL): Assign INSTALL_PY
5793         iso itself.
5794
5795         * lily/relocate.cc [HAVE_GETTEXT]: Include libintl.h.  Fixes mingw
5796         compile.
5797
5798 2005-12-20  Jan Nieuwenhuizen  <janneke@gnu.org>
5799
5800         * .cvsignore: Add install-sh.
5801
5802         * autogen.sh (srcdir): Typo.
5803
5804 2005-12-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5805
5806         * autogen.sh (srcdir): urg. Touch install-sh.
5807
5808         * stepmake/bin/install-sh (Module): remove.
5809
5810         * stepmake/stepmake/generic-vars.make (INSTALL): add $(INSTALL).
5811
5812         * lily/include/relocate.hh: new file.
5813
5814         * lily/relocate.cc: new file. Contain relocation logic.
5815
5816         * lily/main.cc (setup_paths): fix: LILYPOND_RELOCATE_PREFIX.
5817         (main): read LILYPOND_VERBOSE as the first thing.
5818
5819         * stepmake/aclocal.m4: remove INSTALL variable.
5820
5821         * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
5822         separate target for making font symlinks.
5823         (documentation-dir): use $(if $(findstring )) for switching off
5824         Documentation.
5825
5826         * stepmake/stepmake/help2man-vars.make (OUT_DIST_FILES): only do
5827         something if DOCUMENTATION is no.
5828
5829 2005-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5830
5831         * VERSION: release 2.7.24
5832
5833         * lily/script-column-engraver.cc (stop_translation_timestep):
5834         delay adding to script-column.
5835
5836         * lily/tuplet-bracket.cc (print): suicide if no control-points. 
5837
5838         * python/convertrules.py (conv): rule for number-visibility
5839
5840         * lily/slur-configuration.cc (score_extra_encompass): different
5841         distance measure for avoid and inside avoidance.
5842         (score_extra_encompass): use 1/(distance+eps) as penalty.
5843
5844         * lily/slur-scoring.cc (generate_avoid_offsets): use 'inside
5845         encompass objects for generating slur curves.
5846
5847         * lily/slur.cc: use details iso. slur-details property.
5848
5849         * input/regression/slur-tuplet.ly: new file.
5850
5851         * lily/slur-engraver.cc (acknowledge_tuplet_number): new function.  
5852
5853         * flower/include/offset.hh (class Offset): new operator /=
5854
5855         * lily/tuplet-number.cc (print): new file, new interface.
5856
5857         * scm/define-grob-properties.scm (all-user-grob-properties):
5858         remove number-visibility property.
5859
5860         * lily/tuplet-bracket.cc (calc_control_points): new function
5861         (calc_connect_to_neighbors): new function.
5862         (print): remove text handling for tuplet numberdef.
5863
5864         * lily/tuplet-engraver.cc (struct Tuplet_description): create
5865         TupletNumbers too. 
5866
5867         * lily/lily-guile.cc (robust_scm2booldrul): new function
5868
5869         * scm/define-grobs.scm (all-grob-descriptions): new grob TupletNumber
5870
5871         * lily/tuplet-bracket.cc (calc_position_and_height): use
5872         staff-padding to control whether tuplet brackets are over staves.
5873
5874         * lily/grob.cc (suicide): clear dim_caches_.
5875
5876         * lily/dimension-cache.cc (clear): new function.
5877
5878         * lily/grob.cc (extent): swap order of min-extent and extent
5879         calculations. This fixes hara kiri staves. 
5880
5881 2005-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
5882
5883         * lily/main.cc: Nitpick: relocation is not based on path, but on
5884         directory (location).
5885
5886 2005-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5887
5888         * lily/main.cc (setup_paths): read LILYPOND_RELOCATE_PREFIX
5889
5890         * stepmake/stepmake/install-targets.make (local-uninstall): idem.
5891
5892         * stepmake/stepmake/install-out-targets.make (local-install-outfiles): idem.
5893
5894         * stepmake/stepmake/help2man-targets.make (install-help2man): idem.
5895
5896         * stepmake/stepmake/generic-vars.make (Module): idem.
5897
5898         * stepmake/stepmake/executable-targets.make (default): use it.
5899
5900         * stepmake/bin/install.py (create_dir): new file. Replace install-sh.
5901
5902         * make/GNUmakefile: don't install make rules.
5903
5904         * lily/main.cc (setup_paths): don't inspect $PATH for argv0 with
5905         slashes.
5906         (prepend_env_path): more verbosity.
5907
5908 2005-12-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5909
5910         * GNUmakefile.in: add dir argument for find command.
5911
5912         * lily/parser.yy (bass_figure): set_spot() for bass figures. This
5913         fixes weird line numbers for point & click.
5914
5915         * lily/source-file.cc (get_counts): init line/column/char counts.
5916
5917 2005-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5918
5919         * lily/main.cc: remove ARGV0_RELOCATION, instead use --relocate.
5920
5921 2005-12-16  Graham Percival  <gpermus@gmail.com>
5922
5923         * Documentation/user/basic-notation.itely, advanced-notation.itely:
5924         minor fixes from Fredric.  Thanks!
5925
5926 2005-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5927
5928         * ly/music-functions-init.ly: add \bar and \clef music function 
5929
5930         * lily/lily-lexer.cc: idem.
5931
5932         * lily/parser.yy (FIXME): remove BAR and CLEF.
5933
5934 2005-12-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5935
5936         * Documentation/topdocs/NEWS.tely (Top): doc string argument change.
5937
5938         * lily/parser.yy (Generic_prefix_music_scm): allow strings as
5939         function arguments too
5940
5941         * lily/main.cc (set_relocation): new function.
5942
5943         * scripts/musicxml2ly.py (convert): add \version
5944
5945         * lily/tie.cc: remove get_default_attachments()
5946
5947         * VERSION (PACKAGE_NAME): release 2.7.23
5948         
5949         * lily/chord-tremolo-engraver.cc (acknowledge_stem): use
5950         ultimate_music_cause(). This fixes core dumps in unfold-all-repeats.ly
5951
5952         * Documentation/topdocs/NEWS.tely (Top): document new feature.
5953
5954         * lily/tie-formatting-problem.cc (score_ties): new function
5955         (get_variations): new function. Try flipping dirs for collisions.
5956         (generate_optimal_chord_configuration): new function. 1-opt search
5957         for better configuration.
5958
5959         * lily/tie-configuration.cc: new file.
5960
5961         * lily/tie.cc: junk Tie::get_configuration()
5962
5963         * lily/tie-formatting-problem.cc (score_ties_aptitude): new function.
5964         (score_ties_configuration): new function.
5965         (generate_ties_configuration): new function.
5966         (generate_base_chord_configuration): new function.
5967         (set_ties_config_standard_directions): Move body from tie-column-format.cc 
5968         (set_manual_tie_configuration): Move body from tie-column-format.cc 
5969
5970         * input/regression/tie-dot.ly: new file.
5971
5972         * lily/tie-formatting-problem.cc (score_configuration): score
5973         tie/dot collisions.
5974
5975         * lily/tie-helper.cc (get_transformed_bezier): new function
5976
5977         * Documentation/topdocs/NEWS.tely (Top): strip out-www.
5978
5979         * stepmake/stepmake/python-module-vars.make (SHARED_FLAGS): use
5980         -undefined suppress iso. -framework Python 
5981
5982         * scm/define-grobs.scm (all-grob-descriptions): set
5983         springs-and-rods (thanks Joe Neeman!)
5984
5985 2005-12-12  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5986
5987         * input/no-notation/display-lily-tests.ly (test): 
5988         * scm/display-lily.scm (tag->lily-string): the syntax for tags has
5989         changed from \tag #'(a b) to \tag #'a \tag #'b
5990
5991 2005-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5992
5993         * Documentation/topdocs/NEWS.tely: strip out-www.
5994
5995         * lily/include/grob-interface.hh: include lily-guile.hh not libguile.h
5996
5997         * config.make.in (AR): add AR and RANLIB
5998
5999         * flower/libc-extension.cc: include cassert
6000
6001         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): more robust
6002         darwin check.
6003
6004 2005-12-11  Graham Percival  <gpermus@gmail.com>
6005
6006         * stepmake/stepmake/generic-vars.make: define DARWIN_BUILD.
6007
6008         * stepmake/stepmake/python-modules-vars.make: define
6009         SHARED_FLAGS for OSX.  Thanks Johannes Schindelin!
6010
6011         * THANKS: added Johannes Schindelin.
6012
6013 2005-12-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6014
6015         * python/midi.c (pymidi_parse): use memcmp() iso. strcmp().
6016
6017         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
6018         Span_arpeggio_engraver, add Tweak_engraver to Score context. 
6019
6020         * lily/parser.yy: reorganize file layout.
6021
6022         * ly/music-functions-init.ly: add tweak music function.
6023
6024         * lily/grob-info.cc (ultimate_music_cause): new function:
6025         recursively lookup causes. 
6026
6027         * lily/parser.yy (chord_body_element): allow music functions for
6028         post-events, allow music functions for chord elements. 
6029  
6030         * lily/font-config-scheme.cc (display_fontset): add cast.
6031
6032         * python/convertrules.py (FatalConversionError.sub_syms): \tag
6033         #'(a b) -> \tag #'a \tag #'b rule.
6034
6035         * python/musicexp.py (Output_printer.dump_version): new function
6036
6037 2005-12-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6038
6039         * lily/parser.yy (FIXME): remove \tag
6040         (FIXME): remove tag_music() function.
6041
6042         * lily/lily-lexer.cc: remove \tag
6043
6044         * ly/music-functions-init.ly: define music-function "tag"
6045
6046         * lily/parser.yy (chord_body_element): allow tags in chord bodies.
6047
6048 2005-12-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6049
6050         * VERSION (PATCH_LEVEL): release 2.7.22
6051
6052         * input/regression/lyric-hyphen-retain.ly: renew.
6053
6054         * scm/define-grobs.scm (all-grob-descriptions): add LyricSpace
6055         grob
6056
6057         * lily/lyric-hyphen.cc (set_spacing_rods): use minimum-distance
6058         iso. minimum-length property for rods.
6059
6060         * lily/hyphen-engraver.cc (acknowledge_lyric_syllable): create
6061         LyricSpace item to keep lyrics spaced apart.
6062
6063         * ly/engraver-init.ly: remove Separating_line_group_engraver
6064
6065         * Documentation/user/music-glossary.tely: do setfilename before
6066         music-glossary.
6067
6068 2005-12-07  Heikki Junes  <hjunes@cc.hut.fi>
6069
6070         * Documentation/user/lilypond-book.itely: use `,´ after xref:
6071         See xref documentation, for example.
6072
6073 2005-12-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6074
6075         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): use
6076         pending_skip iso. ly_voice[-1]
6077         (main): add if __main__ for debugging.
6078
6079         * python/musicxml.py (Accidental.__init__): new class.
6080
6081         * scripts/musicxml2ly.py (progress): new function
6082         (musicxml_key_to_lily): don't barf on modeless keys.
6083         (create_skip_music): new function.
6084         (musicxml_spanner_to_lily_event): new function. Handle beams too.
6085         (musicxml_note_to_lily_main_event): new function.
6086
6087         * python/musicexp.py (Music.__init__): add comment field.
6088         (NestedMusic.append): new routine.
6089         (SequentialMusic.print_ly): print comment.
6090         (ArpeggioEvent.ly_expression): new class
6091         (BeamEvent.ly_expression): new class
6092         (NoteEvent.__init__): support for cautionary/forced accs.
6093
6094         * lily/lookup.cc (slur): normal order for array loop.
6095
6096         * scm/framework-ps.scm (dump-stencil-as-EPS): set left X of bbox
6097         to 0.0.
6098
6099         * ly/engraver-init.ly: set bar-size, so bar-lines aren't
6100         collapsed.
6101
6102 2005-12-06 Erik Sandberg  <mandolaerik@gmail.com>
6103
6104         * scm/music-functions.scm: Make phrasing slurs follow voice direction
6105
6106         * scripts/lilypond-book.py: Introduce option
6107             --preserve-line-breaks, for usage with srcltx
6108
6109 2005-12-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6110
6111         * scm/output-lib.scm (print-circled-text-callback): draw circle
6112         around text using make-circle-markup.
6113
6114         * Documentation/user/*: strip out-www from file names.
6115
6116 2005-12-05  Heikki Junes  <hjunes@cc.hut.fi>
6117
6118         * Documentation/user/lilypond.tely (direntry): remove empty lines;
6119         fixes invalid info entry issue with makeinfo 4.8 in debian sid.
6120
6121 2005-12-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6122
6123         * Documentation/user/GNUmakefile: idem.
6124
6125         * Documentation/user/macros.itexi: strip out-www
6126
6127         * python/rational.py: python 2.3 compat.
6128
6129         * VERSION (PATCH_LEVEL): release 2.7.21
6130
6131         * scripts/musicxml2ly.py (NonDentedHeadingFormatter.format_headi):
6132         option formatting, lilypond style.
6133
6134         * python/musicexp.py: grab from Ikebana: a library for composing
6135         ly music expressions. 
6136         (Output_printer): class for advanced .ly printing.
6137         (eg. tupletting) 
6138
6139         * python/musicxml.py: new file. Read MusicXML MiniDOM tree, and
6140         convert to pythonesque structure.
6141
6142         * python/rational.py: PD rational number class.
6143
6144         * Documentation/user/converters.itely (Invoking musicxml2ly):  new node.
6145
6146 2005-12-04  Erik Sandberg  <mandolaerik@gmail.com>
6147
6148         * lily/part-combine-iterator.cc: Minor bugfix
6149         
6150         * THANKS: Update bughunters
6151
6152 2005-12-02  Werner Lemberg  <wl@gnu.org>
6153
6154         * mf/README: Document process for proper mf2pt1 conversion.
6155
6156         * mf/feta-beugel.mf (draw_brace): Fix path to assure clean
6157         overlapping.
6158
6159         * mf/feta-harmonica.mf: Removed.  Unused.
6160
6161 2005-12-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6162
6163         * scripts/lilypond-book.py (do_file): fix thinkos.
6164
6165 2005-12-01  Jan Nieuwenhuizen  <janneke@gnu.org>
6166
6167         * lily/GNUmakefile ($(outdir)/FlexLexer.h):
6168         ($(outdir)/parser.cc): 
6169         ($(outdir)/lexer.cc): Bugfix: depend on config.h.
6170
6171 2005-11-30  Pedro Kröger  <kroeger@pedrokroeger.net>
6172
6173         * ly/titling-init.ly (tagline): it should be a space between
6174         "Music engraving by LilyPond" and the version number.
6175
6176 2005-12-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6177
6178         * VERSION (PACKAGE_NAME): release 2.7.20
6179
6180 2005-11-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6181
6182         * scm/define-markup-commands.scm (pad-to-box): new markup command.
6183
6184         * scm/define-grobs.scm (all-grob-descriptions): set thickness to
6185         1.0.
6186         (all-grob-descriptions): don't shift RehearsalMark arbitrarily.
6187
6188 2005-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6189
6190         * configure.in (LINK_GXX_STATICALLY): remove kpathsea checks.
6191
6192         * kpath-guile/: remove directory
6193
6194         * scm/kpathsea.scm (ly:kpathsea-expand-variable): new
6195         file. Encapsulate kpathsea using commandline tools.
6196
6197         * lily/all-font-metrics.cc (kpathsea_find_file): use (scm
6198         kpathsea) module.
6199
6200 2005-11-29  Mats Bengtsson  <mabe@s3.kth.se>
6201
6202         * Documentation/user/advanced-notation.itely (Setting automatic
6203         beam behavior): Correct a few typos. Thanks to David Bobroff.
6204
6205         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use
6206         \usepackage instead of \RequirePackage. Thanks to Bernard Hurley.
6207
6208 2005-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6209
6210         * scripts/*.py: gmane address for bugs.
6211
6212 2005-11-28 Pal Benko <benkop@freestart.hu>
6213         
6214         * make/ly-rules.make: add -f switch to mv
6215
6216         * scm/output-libs.scm: add new bar symbol "." for punctus divisionis
6217
6218         * lily/bar-line.cc: interpret it
6219
6220 2005-11-28  Jan Nieuwenhuizen  <janneke@gnu.org>
6221
6222         * configure.in (--disable-documentation): New switch.
6223
6224         * GNUmakefile.in: Use it.
6225
6226         * stepmake/aclocal.m4: Use AC_ARG_ENABLE for kpatsea.
6227
6228 2005-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6229
6230         * scripts/lilypond-book.py (do_file): search chunks for
6231         \\begin{document}
6232
6233         * GNUmakefile.in: add copy step in between so we can lose the
6234         out-www directories.
6235
6236 2005-11-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6237
6238         * lily/pango-font.cc (pango_item_string_stencil): put
6239         geometry.width into glyph-string too.
6240
6241 2005-11-26  Nicolas Sceaux  <nicolas.sceaux@free.fr>
6242
6243         * scm/define-music-display-methods.scm (RevertProperty):
6244         (OverrideProperty): Use grob-property-path property, a list of
6245         symbols, instead of grob-property, which used to be a single
6246         symbol.
6247         (BassFigureEvent): a figure can be a plain number, not necessarily a
6248         markup.
6249
6250 2005-11-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6251
6252         * VERSION: release 2.7.19
6253         
6254         * lily/figured-bass-engraver.cc (process_music): check
6255         figuredBassCenterContinuations first.
6256
6257         * scm/translation-functions.scm (format-bass-figure): make double
6258         sharp larger. 
6259
6260         * lily/mark-engraver.cc: read rehearsalMarkAlignSymbol to
6261         determine X-parent.
6262
6263         * lily/system-start-delimiter-engraver.cc: move from
6264         Nested_system_start_delimiter_engraver, rename
6265         Nested_system_start_delimiter_engraver ->
6266         System_start_delimiter_engraver.
6267
6268         * lily/nested-system-start-delimiter-engraver.cc (from_list): read
6269         bracket type from hierarchy.
6270
6271 2005-11-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6272
6273         * lily/rest.cc (y_offset_callback): read staff-position.
6274
6275         * scm/define-grob-properties.scm (all-user-grob-properties): don't
6276         mark after-line-breaking-callback as internal.
6277
6278         * lily/self-aligment-interface.cc: remove self-[XY]-offset.
6279
6280 2005-11-25  Werner Lemberg  <wl@gnu.org>
6281
6282         * mf/feta-banier.mf ("d3"): Make `flare' equal to `staff_space'.
6283
6284 2005-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6285
6286         * stepmake/bin/add-html-footer.py (do_file): add google
6287
6288         * lily/staff-symbol-engraver.cc (process_music): bugfix: stop
6289         staff if first_start_ is true.
6290
6291 2005-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6292
6293         * scripts/midi2ly.py (split_track): add __repr__ members.
6294         (track_first_item): only return Item if not None. This fixes a
6295         problem when dumping a track that starts with an empty channel.
6296
6297         * python/midi.c: doc module.
6298
6299 2005-11-22  Mats Bengtsson  <mabe@s3.kth.se>
6300
6301         * Documentation/user/global.itely (Creating MIDI files): Fix
6302         compilation problem.
6303
6304 2005-11-22  Graham Percival  <gpermus@gmail.com>
6305
6306         * Documentation/user/basic-notation.itely: clarify dynamic
6307         padding text.
6308
6309         * Documentation/user/advanced-notation.itely: add unicode
6310         escape control example, whatever that is.  :)
6311
6312         * Documentation/user/global.itely: added "removing dynamics
6313         from MIDI" code.
6314
6315 2005-11-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6316
6317         * VERSION (PATCH_LEVEL): release 2.7.18
6318
6319         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): replace
6320         System_start_delimiter_engraver by
6321         Nested_system_start_delimiter_engraver.
6322
6323         * lily/nested-system-start-delimiter-engraver.cc (struct
6324         Bracket_nesting_node): new class.
6325         (struct Bracket_nesting_group): new class
6326         (struct Bracket_nesting_staff): new class.
6327         (process_music): create hierarchy of grobs. This allows separate
6328         tuning of different SSDs. 
6329
6330         * scm/define-grobs.scm (all-grob-descriptions): new Grob SystemStartSquare
6331         (all-grob-descriptions): remove old NestedSystemStartDelimiter.
6332
6333 2005-11-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6334
6335         * lily/side-position-interface.cc (aligned_side): multiply
6336         staff_radius by 2.
6337
6338         * lily/script-engraver.cc (make_script_from_event): allow setting
6339         values to '()
6340
6341 2005-11-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6342
6343         * lily/system-start-delimiter.cc (line_bracket): don't shorten height.
6344
6345         * scm/define-grobs.scm (all-grob-descriptions): new grob
6346         NestedSystemStartDelimiter.
6347
6348         * input/regression/system-start-heavy-bar.ly: new file.
6349
6350         * lily/nested-system-start-delimiter-engraver.cc: new file.
6351
6352         * lily/nested-system-start-delimiter.cc: new file.
6353
6354         * input/regression/system-start-nesting.ly: new file.
6355
6356         * scm/define-grobs.scm (all-grob-descriptions): use X side
6357         positioning for positioning braces for nested contexts.
6358
6359         * lily/system-start-delimiter.cc (print): don't divide extent by
6360         staff_space.
6361         (print): use style iso. glyph.
6362         (staff_bracket): translate glyph inside routine already.
6363
6364 2005-11-18  Michael Welsh Duggan <md5i@cs.cmu.edu>
6365
6366         * lily/vaticana-ligature-engraver.cc: fixed 2 typos in glyph
6367         names.
6368
6369 2005-11-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6370
6371         * scm/define-context-properties.scm
6372         (all-user-translation-properties): rename figuredBassFormatter
6373         from newFiguredBassFormatter.
6374
6375         * scm/define-grobs.scm (all-grob-descriptions): move from NewBassFigure
6376
6377         * lily/figured-bass-engraver.cc: move from new-figured-bass-engraver.cc
6378
6379         * lily/stem.cc (calc_stem_info): trigger beaming calculation.
6380
6381         * lily/beam.cc (calc_beaming): new function.
6382         (calc_shorten): new function.
6383
6384         * THANKS: add Edward Neeman.
6385
6386         * input/regression/accidental-clef-change.ly: new file.
6387
6388         * lily/note-collision.cc (check_meshing_chords): don't merge fa heads.
6389
6390         * scm/define-grobs.scm (all-grob-descriptions): add Y-offset property.
6391
6392         * lily/clef-engraver.cc (inspect_clef_properties): reset
6393         localKeySignature for clef changes.
6394
6395 2005-11-17  Mats Bengtsson  <mabe@s3.kth.se>
6396
6397         * python/midi.c: PyMIDINIT_FUNC isn't defined in Python < 2.3 
6398         add dummy definition that works in Linux and add information in
6399         INSTALL.texi on the specific Python requirements for Cygwin/Mingw.
6400
6401         * Documentation/user/changing-defaults.itely (Modifying context
6402         plug-ins): Add index for \with.
6403
6404         * Documentation/user/music-glossary.tely (dal segno): Updated
6405         example to version >=2.6.
6406
6407 2005-11-16  Mats Bengtsson  <mabe@s3.kth.se>
6408
6409         * Documentation/user/instrument-notation.itely (Printing chord
6410         names): Reorder \chordmode and \repeat in one example.
6411
6412 2005-11-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6413
6414         * VERSION: release 2.7.17
6415         
6416         * Documentation/topdocs/NEWS.tely (Top): add note about
6417         refactoring.
6418
6419         * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
6420         new function. Search region of 3 positions for best tie.
6421         (score_configuration): new function.
6422         (score_aptitude): new function.
6423         (generate_configuration): new function.
6424         (get_configuration): new function.
6425         (Tie_formatting_problem): new function
6426
6427         * input/regression/page-top-space.ly: a6 for page-top-space demo. 
6428
6429         * stepmake/aclocal.m4: use $(if ) for config-FOOF.make
6430
6431         * THANKS: add Eduardo Vieira & Ralph Little
6432
6433         * mf/feta-bolletjes.mf (solfa_quarter_width): make solfa heads
6434         narrower.
6435
6436         * lily/include/tie-formatting-problem.hh (class
6437         Tie_formatting_problem): add Tie_details to
6438         Tie_formatting_problem. Update calling conventions.
6439
6440         * stepmake/aclocal.m4: oops. Include $CONFIGFILE.make, not
6441         config.make.
6442
6443         * Documentation/user/lilypond.tely: remove musedata2ly entry.
6444
6445 2005-11-16  Jürgen Reuter  <reuter@ipd.uka.de>
6446
6447         * lily/ligature-engraver.cc, lily/include/ligature-engraver.hh,
6448         scm/define-context-properties.scm: Maintenance bugfix: make
6449         ligature brackets work again by removing obsolete ligature
6450         primitive callback push/pop.
6451
6452         * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: do
6453         not call Tuplet_bracket::calc_direction.  Removed obsolete gap
6454         value.
6455
6456 2005-11-15  Jan Nieuwenhuizen  <janneke@gnu.org>
6457
6458         * stepmake/aclocal.m4 (depth): Explain why absolute directory is
6459         used and do not call it a path.
6460         (FLEXLEXER_FILE): Rename from FLEXLEXER_PATH and add file name.
6461
6462 2005-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6463
6464         * lily/include/tie-formatting-problem.hh (class
6465         Tie_formatting_problem): new file.
6466
6467         * lily/tie-formatting-problem.cc (common_x_refpoint): new file.
6468
6469         * Documentation/misc/ChangeLog-2.3:  new file.
6470
6471         * lily/audio-staff.cc (output): degarianize.
6472
6473 2005-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
6474
6475         * stepmake/stepmake/python-module-rules.make ($(outdir)/%.pyc):
6476         Unset PYTHONOPTIMIZE.  Fixes install if set.
6477
6478 2005-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6479
6480         * python/convertrules.py (conv): add warning about drums. 
6481
6482         * make/stepmake.make: include toplevel-version.make after config.make.
6483
6484         * stepmake/aclocal.m4 (depth): make sure $srcdir is absolute.
6485         also allow python2.4
6486
6487         * config.make.in (configure-srcdir): remove GXX GCC vars.
6488
6489         * stepmake/aclocal.m4: don't do non-srcdir build with
6490         symlinks. Use inclusion, so the src directory name can be changed.
6491
6492 2005-11-13  Jan Nieuwenhuizen  <janneke@gnu.org>
6493
6494         * make/mutopia-vars.make:
6495         * make/ly-vars.make: Use src-wildcard iso wildcard for source
6496         files.
6497
6498 2005-11-13  Werner Lemberg  <wl@gnu.org>
6499
6500         * mf/feta-arrow.mf: For all glyphs, don't mirror `currentpicture'
6501         but the affected path.  This ensures that the (overlapping) outlines
6502         have the same direction, which is a necessary prerequisite for
6503         FontForge's algorithm to remove overlaps.
6504         Formatting.
6505
6506         * mf/feta-haak.mf: Formatting.
6507         (draw_bracket): Slightly modify outline to avoid an unnecessary
6508         corner.
6509         Don't use ad-hoc values for `leave_angle' and `tip_angle' but derive
6510         them from the affected paths.
6511
6512 2005-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6513
6514         * mf/README: remove xpm / accordion notes.
6515
6516         * lily/tie-column-format.cc (set_chord_outline): add dots into
6517         skyline extents. This fixes tie formatting if the left head has dots.
6518
6519         * lily/tie.cc (get_configuration): only shift tie by a whole staff
6520         space inside the staff.
6521         (get_configuration): shift another position if necessary in case
6522         of left head tie  
6523
6524 2005-11-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6525
6526         * stepmake/stepmake/texinfo-vars.make (GENERATE_OMF): use
6527         buildscript-dir iso. $(depth)/buildscripts.
6528
6529         * tex/GNUmakefile (local-uninstall): remove
6530         music-drawing-routines.ps juggling.
6531
6532         * stepmake/stepmake/install-targets.make (local-install-files):
6533         prepend src-dir to install targets.
6534
6535         * lily/system-start-delimiter-engraver.cc
6536         (acknowledge_system_start_delimiter): use
6537         add_offset_callback(). This fixes translation of nested
6538         staffgroups.
6539
6540         * lily/grob-closure.cc (add_offset_callback): only encaps in
6541         simple_closure if it's a procedure.
6542         
6543         * lily/span-bar.cc (calc_glyph_name): read glyph-name, not glyph
6544         from bar-line.
6545
6546         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
6547         remove-empty where pertinent.
6548
6549 2005-11-12  Graham Percival  <gpermus@gmail.com>
6550
6551         * Documentation/user/instrument-notation.itely: added
6552         Cameron Horsburgh's multiple stanzas docs.  Thanks!
6553
6554 2005-11-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6555
6556         * lily/GNUmakefile
6557         ($(top-build-dir)/Documentation/pictures/$(outbase)/lilypond.ico):
6558         make picture in builddir, not srcdir.
6559
6560 2005-11-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6561
6562         * VERSION: release 2.7.16
6563         
6564         * scripts/lilypond-book.py (main): use commands.mkarg () to quote
6565         shell arguments. 
6566
6567 2005-11-10  Mats Bengtsson  <mabe@s3.kth.se>
6568
6569         * Documentation/user/examples.itely (Piano templates): Minor
6570         modification to the Piano centered lyrics example.
6571
6572 2005-11-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6573
6574         * scripts/lilypond-invoke-editor.scm (run-browser): look at
6575         $BROWSER.
6576
6577         * Documentation/user/point-and-click.itely: simplify p&c
6578         instruction: don't configure firefox. Put lilypond-invoke-editor
6579         in front of the browser.
6580
6581         * scripts/lilypond-invoke-editor.scm (run-editor): new function.
6582         (run-browser): new function.
6583
6584         * lily/parser.yy (Lily_lexer): recognize Book
6585
6586         * lily/book.cc (clone): new function
6587
6588         * lily/parser.yy (book_body): allow BOOK_IDENTIFIER.
6589
6590 2005-11-10  Jürgen Reuter  <reuter@ipd.uka.de>
6591
6592         * lily/vaticana-ligature.cc, lily/vaticana-ligature-engraver.cc:
6593         Maintenance bugfix: reduce number of font related warnings by
6594         updating naming conventions for glyph-name.
6595
6596 2005-11-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6597
6598         * scm/define-grobs.scm (all-grob-descriptions): add
6599         rhythmic-grob-interface to TabNoteHead.
6600
6601         * scm/layout-beam.scm (check-quant-callbacks): remove
6602         set_stem_lengths()
6603
6604 2005-11-08  Jürgen Reuter  <reuter@ipd.uka.de>
6605
6606         * ly/gregorian-init.ly (divisiones): Maintenance bugfix: vertical
6607         alignment of centered divisiones.
6608
6609         * scm/scripts.scm (articulations): Maintenance bugfix:
6610         follow-into-staff -> quantize-position.
6611
6612         * lily/vaticana-ligature-engraver.cc (transform_heads): Bugfix:
6613         plica head in porrectus deminutus.
6614
6615 2005-11-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6616
6617         * make/lilypond.fedora.spec.in (Group): add %clean section.
6618
6619         * lily/tuplet-bracket.cc (print): change check: remove bracket if
6620         less then 1/5th of total length.  
6621         (print): use gap too.  Fixes tupletUp-single-bracket.ly
6622
6623         * scm/music-functions.scm (glue-mm-rest-texts): also put other
6624         events into EventChord. This fixes textspanners on mm rests. Fixes
6625         spanner-rest.ly
6626
6627         * lily/side-position-interface.cc (get_axis): read side-axis
6628         (set_axis): set side-axis.
6629
6630         * scm/define-grobs.scm (all-grob-descriptions): add side-axis
6631         properties everywhere.
6632
6633         * lily/spacing-spanner.cc (breakable_column_spacing): add
6634         average-spacing-wishes. Take maximum if not set.
6635         (musical_column_spacing): idem. Fixes: spacing-keysig-note.ly
6636
6637         * scm/define-grobs.scm (all-grob-descriptions): add
6638         average-spacing-wishes.
6639
6640         * lily/grob-closure.cc (add_offset_callback): bugfix: properly add
6641         offset callbacks. This fixes alignment for Fingering objects.
6642
6643         * scm/define-grobs.scm (all-grob-descriptions): tiny bit less
6644         space for key - timesig combination. 
6645
6646         * input/regression/script-stem-tremolo.ly (Module): new file.
6647
6648         * scm/define-grobs.scm (all-grob-descriptions): decrease distance
6649         to key sig.
6650
6651         * lily/dynamic-engraver.cc (acknowledge_stem_tremolo): new function.
6652         Fixes: c-tremolo-script.ly.
6653         
6654         * lily/text-engraver.cc (acknowledge_stem_tremolo): new function.
6655
6656         * lily/script-engraver.cc (acknowledge_stem_tremolo): new function.
6657         
6658         * scm/define-grobs.scm (all-grob-descriptions): remove
6659         self-X-offset. Fixes alignment of octavate-8.
6660
6661         * scripts/lilypond-book.py (datadir): look in
6662         LILYPONDPREFIX/share/lilypond/current/
6663
6664         * GNUmakefile.in: symlink current to <VERSION>. 
6665
6666 2005-11-07  Pedro Kroger  <kroeger@pedrokroeger.net>
6667
6668         * lily/main.cc: eps listed as a backend.
6669
6670 2005-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6671
6672         * scm/lily-library.scm (print-music-as-book): quote $defaultpaper.
6673
6674 2005-11-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6675
6676         * lily/include/score.hh (class Score): remove texts_ member.
6677
6678         * lily/beam.cc (set_stem_lengths): force direction callback.
6679         (print): read quantized-positions, so we can force
6680         Beam::set_stem_lengths to occur.
6681         (rest_collision_callback): use common X parent. 
6682
6683 2005-11-03  Jan Nieuwenhuizen  <janneke@gnu.org>
6684
6685         * flower/file-path.cc (find): Bugfix: Return name of file found.
6686
6687         * lily/main.cc (setup_paths): Bugfix for argv0 logic.
6688         (setup_paths)[__CYGWIN__ || __MINGW32__]: Normalize argv0.
6689         (setup_paths)[__MINGW32__]: Also look for argv0 + .exe.
6690
6691 2005-11-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6692
6693         * flower/offset.cc: idem.
6694
6695         * mf/*.mf: update email address.
6696
6697         * lily/font-config-scheme.cc:  new file.
6698
6699         * GNUmakefile.in (SUBDIRS): remove debian/ directory.
6700
6701         * lily/*:  cs.uu.nl -> xs4all.nl
6702
6703         * VERSION (PATCH_LEVEL): release 2.7.15
6704
6705         * make/lilypond.mandrake.spec.in (Module): remove Mandrake & Suse
6706         spec files.
6707
6708         * make/lilypond.fedora.spec.in: add %{libdir}/lilypond/
6709
6710 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6711
6712         * GNUmakefile.in: bugfix: encapsulate mkdir && cd in parens.   
6713
6714         * lily/staff-performer.cc (process_music): add audio
6715         elements. This makes MIDI instrument changes work once again.
6716
6717         * lily/main.cc (LY_DEFINE): add gmane address.
6718
6719         * lily/beam.cc: remove calc_positions()
6720
6721         * lily/include/grob.hh (class Grob): move pscore, dim_cache_,
6722         original_ in private scope.
6723         (class Grob): drop pscore_ pointer, change to output_def pointer.
6724         (class Grob): cleanup class definition.
6725
6726         * ly/spanners-init.ly (assertBeamQuant): use make-simple-closure.
6727
6728 2005-11-02  Jan Nieuwenhuizen  <janneke@gnu.org>
6729
6730         * lily/main.cc (setup_paths)[__MINGW32__]: Do not assume argv0 is
6731         absolute.  Better diagnostics.
6732
6733         * GNUmakefile.in: Add bin/ to tree and populate with some links.
6734         This makes lilypond run from the build directory using argv0
6735         relocation (without any --prefix or LILYPONDPREFIX setting).
6736
6737 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6738
6739         * Documentation/topdocs/NEWS.tely (Top): document new backend design.
6740
6741         * scm/define-grobs.scm: purge self-[XY]-offset variables, replace
6742         with simple-closure.
6743
6744         * lily/self-aligment-interface.cc (set_align_self): new function
6745         (set_center_parent): new function.
6746
6747         * lily/side-position-interface.cc (set_axis): new function.
6748
6749         * lily/new-fingering-engraver.cc (position_scripts): use drul for
6750         generic code. 
6751
6752         * scm/define-grob-properties.scm (all-user-grob-properties):
6753         remove [XY]-offset-callbacks add [YX]-offset
6754         
6755 2005-11-02  Mats Bengtsson  <mabe@s3.kth.se>
6756
6757         * scm/define-grobs.scm (all-grob-descriptions): Added space-alist
6758         entry for time signatures after breathing signs. Bug report by
6759         Scott Russell.
6760
6761 2005-11-01  Jan Nieuwenhuizen  <janneke@gnu.org>
6762
6763         * lily/main.cc (setup_paths)[!__MINGW32__]: Bugfix: if argv0 is
6764         not absolute, make it absolute using PATH.
6765
6766 2005-10-28  Jan Nieuwenhuizen  <janneke@gnu.org>
6767
6768         * python/midi.c (initmidi): Fix type for mingw.
6769
6770 2005-10-27  Jan Nieuwenhuizen  <janneke@gnu.org>
6771
6772         * stepmake/stepmake/compile-vars.make (SHARED_FLAGS): Support mingw.
6773
6774         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Detect mingw
6775         cross compiling.
6776
6777         * stepmake/aclocal.m4: Support python cross compiling.
6778
6779         * stepmake/stepmake/python-module-vars.make (SHARED_MODULE_SUFFIX):
6780         Add mingw section.
6781
6782 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6783
6784         * scm/output-lib.scm (chain-grob-member-functions): replace
6785         chained-callback.cc
6786
6787         * lily/chained-callback.cc (Module): remove file.
6788
6789         * lily/rest-collision.cc (force_shift_callback_rest): change to
6790         chained callback.
6791
6792         * lily/rest.cc (y_offset_callback): merge function of 3 callbacks. 
6793
6794         * lily/grob.cc (y_parent_positioning): remove axis argument from
6795         parent_positioning callbacks.
6796         (Grob): junk init code
6797         (get_offset): use generic property callbacks for
6798         X-offset, Y-offset. Remove Grob::{add,has}_offset_callback.
6799         (axis_parent_positioning): new function
6800         (axis_offset_symbol): new function
6801         (chain_offset_callback): new function
6802         (add_offset_callback): new function
6803
6804         * lily/beam.cc (rest_collision_callback): change signature; this
6805         is now a chained callback.
6806
6807         * lily/include/dimension-cache.hh (class Dimension_cache): remove
6808         callback administration.
6809
6810         * lily/simple-closure.cc: new file. Smob type that allows "grob
6811         member functions",
6812
6813             (ly:make-simple-closure FUNC A B)
6814
6815         is evaluated as (FUNC grob A B). This allows chaining of callbacks
6816         in various ways.
6817
6818         * lily/slur-engraver.cc (acknowledge_extra_object): use chained
6819         callbacks.
6820
6821         * lily/slur.cc (outside_slur_callback): take 2 arguments.
6822
6823         * lily/rest.cc (polyphonic_offset_callback): remove.
6824
6825         * lily/script-engraver.cc (try_music): remove bool* argument.
6826
6827         * scm/script.scm (default-script-alist): set quantize-position
6828         appropriately.
6829
6830         * lily/script-engraver.cc: remove follow_into_staff_ special coding. 
6831
6832         * lily/side-position-interface.cc (aligned_side): move staff
6833         position quantization from
6834         Side_position_interface::quantised_position().
6835         (quantised_position): remove
6836         
6837 2005-10-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6838
6839         * input/regression/beam-quant-standard.ly: reindent, set
6840         debug-beam-quanting to #t.
6841
6842         * lily/beam-concave.cc (calc_concaveness): set concaveness to
6843         10000 if this is a "hard" concave beam.
6844
6845         * lily/beam.cc (calc_least_squares_positions): change from
6846         calc_least_squares_dy
6847         (set_stem_lengths): this is now a chained callback.
6848
6849         * lily/context-property.cc (execute_general_pushpop_property):
6850         bugfix override with procedure should have effect.
6851
6852         * scm/define-grob-properties.scm (all-internal-grob-properties):
6853         remove position-callbacks.
6854
6855         * scm/define-grobs.scm (all-grob-descriptions): use
6856         ly:make-callback-chain for positions property.
6857
6858         * scm/layout-beam.scm (check-quant-callbacks): return list of
6859         chained callbacks.
6860
6861         * scm/lily.scm (type-p-name-alist): add callback-chain
6862
6863         * lily/lily-guile.cc (type_check_assignment): type check failure
6864         is warning not message.
6865
6866         * lily/grob-property.cc (try_callback): walk callback chain if
6867         appropriate.
6868
6869         * lily/chained-callback.cc: new file. new smob type.
6870
6871         * lily/lily-guile.cc (procedure_arity): new function.
6872
6873 2005-10-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6874
6875         * Documentation/topdocs/INSTALL.texi (Top): add perl flex bison.
6876
6877 2005-10-25  John Mandereau  <john.mandereau@free.fr>
6878  
6879         * Documentation/user/instrument-notation.itely (Figured bass):
6880         describe new features
6881
6882 2005-10-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6883
6884         * lily/beam.cc (calc_least_squares_dy): use property callback.
6885
6886         * lily/beam-concave.cc (calc_concaveness): use property callback.
6887
6888         * ly/paper-defaults.ly: move fixed dimensions from paper.scm 
6889
6890 2005-10-25  Jan Nieuwenhuizen  <janneke@gnu.org>
6891
6892         * HACKING: Update.
6893
6894 2005-10-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6895
6896         * scm/layout-page-layout.scm (page-headfoot): annotate
6897         pagetopspace too.
6898
6899         * scm/stencil.scm (dimension-arrows): shorten arrowed lines a bit. 
6900
6901         * scm/layout-page-layout.scm (annotate-y-interval): y-annotation
6902         doesn't take y-space.
6903
6904         * scm/paper.scm (paper-alist): fix A7 dimensions. 
6905
6906 2005-10-24  Jan Nieuwenhuizen  <janneke@gnu.org>
6907
6908         * stepmake/stepmake/generic-vars.make (DIST_FILES): Fix
6909         src-wildcard, remove $(wildcard).
6910
6911         * po/GNUmakefile (PO_FILES): 
6912         * ps/GNUmakefile (PS_FILES): 
6913         * tex/GNUmakefile (TEX_FILES): 
6914         * cygwin/GNUmakefile (POSTINSTALLS):
6915         * vim/GNUmakefile (EXTRA_DIST_FILES): Bugfix: [etags sr?] missed
6916         some wildcard calls.
6917
6918 2005-10-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6919
6920         * THANKS: add Thomas Bushnell.
6921
6922 2005-10-23  Jan Nieuwenhuizen  <janneke@gnu.org>
6923
6924         * scm/lily.scm: Remove horrendous running-from-gui? kludge.
6925         (lilypond-main): Redirect to gui-main if 'gui is set.
6926
6927         * scripts/midi2ly.py (datadir): Add libdir iso datadir to path,
6928         for alternative installations kludging s/share/lib/g
6929         LILYPONDPREFIX. 
6930
6931         * SConstruct (libdir_package_version): Define.
6932
6933         * python/SConscript: 
6934         * python/GNUmakefile (INSTALLATION_OUT_DIR): Install binary .so
6935         module in libdir.  
6936
6937 2005-10-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6938
6939         * lily/main.cc: clarify --safe.
6940
6941 2005-10-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6942
6943         * VERSION: release 2.7.14
6944         
6945         * Documentation/user/*.itely: remove minimumVerticalExtent.
6946
6947         * scm/define-grobs.scm (all-grob-descriptions): remove
6948         RemoveEmptyVerticalGroup
6949
6950         * lily/hara-kiri-engraver.cc (get_spanner): create VerticalAxisGroup.
6951
6952         * lily/include/lily-guile.hh (GUILE_ELLIPSIS): define to get clean
6953         compile on MOSX
6954
6955         * python/convertrules.py (conv): add rules.
6956
6957         * lily/grob.cc: remove is_empty()
6958
6959         * lily/grob-property.cc: remove add_to_list_property().
6960
6961         * scripts/convert-ly.py (datadir): add prefix switching hack to
6962         .py too.
6963
6964         * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily (cresc): remove
6965         space-function tweak.
6966
6967         * lily/grob.cc: remove X-extent-callback / Y-extent-callback.
6968
6969         * scm/define-grob-properties.scm (all-user-grob-properties):
6970         remove callback property.
6971
6972         * lily/include/grob.hh (class Grob): remove property_callbacks_
6973         member. Properties of procedure type are assumed to be callbacks.
6974
6975         * lily/ligature-engraver.cc (override_stencil_callback):
6976         rewrite. Use noteHeadLigaturePrimitive as source.
6977
6978         * scm/define-grob-properties.scm (all-internal-grob-properties):
6979         remove ligature-primitive-callback
6980
6981         * lily/include/dimension-cache.hh (class Dimension_cache): make
6982         class, with Grob as friend.
6983
6984         * lily/grob.cc: remove set_extent_callback(), set_extent() and
6985         has_extent_callback()
6986
6987         * scm/translation-functions.scm (format-new-bass-figure): read
6988         figuredBassPlusDirection
6989
6990         * scm/define-context-properties.scm
6991         (all-user-translation-properties): add figuredBassPlusDirection.
6992
6993         * lily/staff-spacing.cc (next_notes_correction): oops. Init wishes.
6994
6995         * lily/align-interface.cc (set_ordered): new function.
6996
6997         * lily/grob.cc (flush_extent_cache): rewrite.
6998
6999         * lily/dimension-cache.cc (Dimension_cache): cache extent as
7000         Interval pointer directly.
7001
7002         * lily/main.cc (setup_paths): insert extra / .
7003         (setup_paths): junk cff entry.
7004
7005         * lily/font-config.cc (init_fontconfig): only add type1 / otf
7006         directories.
7007
7008         * lily/axis-group-engraver.cc (finalize): remove
7009         extraVerticalExtent, minimumVerticalExtent verticalExtent.
7010
7011         * lily/grob.cc (Grob): don't set extent from ctor.
7012         (extent): use property callbacks. 
7013
7014         * lily/axis-group-interface.cc: remove set_axes() function.
7015
7016         * lily/grob-property.cc (del_property): new function.
7017
7018 2005-10-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7019
7020         * lily/font-config.cc (init_fontconfig): resurrect mf/out/ check.
7021         
7022 2005-10-20  Jan Nieuwenhuizen  <janneke@gnu.org>
7023
7024         * stepmake/stepmake/script-vars.make (PYTHON_SCRIPTS_IN): Oops.  Add.
7025
7026 2005-10-19  Jan Nieuwenhuizen  <janneke@gnu.org>
7027
7028         * mf/SConscript: Updates.
7029
7030         * lily/GNUmakefile (OUT_DIST_FILES): Bugfix.
7031
7032         * stepmake/stepmake/*:
7033         * */GNUmakefile:
7034         * config.make.in:
7035         * GNUmakefile.in:
7036         * stepmake/aclocal.m4: Friendlier --srcdir build, allowing `make'
7037         from any directory in build-dir.  Cleanups.
7038
7039         * make/srcdir.make.in: Remove.
7040
7041         * lily/main.cc (setup_paths): Fix and document build-dir hack.
7042
7043         * SConstruct (CheckYYCurrentBuffer): Use TryCompile (there is no
7044         main).
7045
7046         * lily/SConscript: Remove ttftools.
7047
7048         * SConstruct: Resurrect.
7049
7050 2005-10-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7051
7052         * lily/tuplet-bracket.cc (print): use dy iso. positions[RIGHT] for
7053         Y coordinate. 
7054
7055         * lily/paper-book.cc (add_score_title): put Paper_score title into
7056         systems_ list.
7057
7058         * scm/translation-functions.scm (format-new-bass-figure): also
7059         allow plus in combination with _
7060
7061 2005-10-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7062
7063         * VERSION: 2.7.13 released.
7064
7065         * lily/note-collision.cc (check_meshing_chords): don't wipe
7066         stencil, merely set transparent.
7067
7068         * Documentation/topdocs/NEWS.tely (Top): mention John Mandereau. 
7069         (Top): document #'callbacks.
7070         (Top): document nested \override.
7071
7072         * input/regression/figured-bass.ly: update for slash and pluses.
7073
7074         * input/regression/figured-bass-continuation-forbid.ly (Module):
7075         new file.
7076
7077         * scm/translation-functions.scm (format-new-bass-figure): use
7078         slashed-digit if diminished is set.
7079         (format-new-bass-figure): add + if 'augmented is set.
7080
7081         * scm/define-markup-commands.scm (slashed-digit): new command slashed-digit.
7082
7083         * input/test/piano-staff-distance.ly: remove file.
7084
7085         * Documentation/user/advanced-notation.itely (Formatting cue
7086         notes): use length-fraction for making stems/beams smaller.
7087
7088         * lily/parser.yy (bass_figure): accept \+ \! and / as figured bass
7089         modifications.
7090
7091         * lily/new-figured-bass-engraver.cc: new property
7092         centerFiguredBassContinuations
7093
7094         * Documentation/user/changing-defaults.itely (Difficult tweaks):
7095         use callbacks.
7096
7097         * lily/context-property.cc (execute_general_pushpop_property):
7098         robustness checks.
7099
7100         * input/regression/override-nest.ly: new file.
7101
7102         * python/convertrules.py (FatalConversionError.subber): conversion
7103         rule for #'callbacks
7104
7105         * input/regression/override-nest.ly: new function.
7106
7107         * lily/parser.yy (music_property_def): allow \override #'a #'b =
7108         #c too. 
7109
7110         * lily/context-property.cc (lookup_nested_property): new function.
7111         (evict_from_alist): new function.
7112         (general_pushpop_property): new function.
7113         (execute_general_pushpop_property): rewrite. Support nested
7114         properties too.
7115
7116 2005-10-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7117
7118         * lily/beam.cc: use length-fraction too.
7119
7120         * scm/define-grob-properties.scm (all-user-grob-properties):
7121         remove property flag-width-function
7122         (all-user-grob-properties): remove space-function.
7123
7124         * scm/layout-beam.scm: remove flag-width-function.
7125
7126         * lily/beam.cc: remove flag-width-function
7127
7128         * scm/layout-beam.scm: remove beam dir functions.
7129
7130         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): use length-fraction.
7131
7132         * lily/stem.cc (calc_length): multiply with length_fraction. Makes
7133         for easier grace tweaks.
7134
7135         * lily/beam.cc: remove dir-function.
7136
7137         * lily/system.cc (pre_processing): use callback to trigger spacing procedures.
7138
7139         * lily/grob.cc: remove spacing-procedure.
7140
7141         * lily/note-head.cc (calc_stem_attachment): new function.
7142         (internal_print): use callback to get glyph-name.
7143
7144         * lily/grob-property.cc (get_interfaces): new function.
7145
7146         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-interfaces
7147
7148         * lily/stem.cc (calc_stem_end_position): new function.
7149         (calc_length): new function.
7150         document details for stem.
7151         remove Stem::get_direction()
7152
7153         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-set-callback! 
7154
7155         * lily/grob-property.cc (set_callback): new function.
7156
7157         * lily/script-engraver.cc (make_script_from_event): don't trigger callback.
7158
7159         * lily/item-scheme.cc: new file.
7160
7161         * lily/bar-line.cc (before_line_breaking): remove function.
7162         remove bar-size-procedure, break-glyph-function
7163
7164         * lily/clef-engraver.cc (set_glyph): use glyph iso. glyph-name
7165
7166         * lily/clef.cc (before_line_breaking): change to calc_glyph_name.
7167
7168         * lily/system-start-delimiter.cc (print): suicide from
7169         here. Remove after_line_breaking_callback.
7170
7171         * lily/script-interface.cc (calc_direction): use callback for direction.
7172
7173         * lily/side-position-interface.cc (aligned_side): don't use
7174         Side_position_interface::get_direction directly. Use callback. 
7175
7176         * lily/grob.cc (get_stencil): simplify: use callback mechanism to
7177         calculate stencil.
7178         (get_print_stencil): rename from get_stencil: create stencil with
7179         transparency, color and cause. 
7180
7181         * scm/define-grobs.scm: change print-function to stencil callback everywhere.
7182
7183         * python/convertrules.py (conv): insert temporary warning rule.
7184
7185         * lily/multi-measure-rest.cc (set_text_rods): use stencil directly.
7186
7187         * lily/grob-property.cc (try_callback): remove marker if applicable.
7188
7189         * lily/grob.cc: elucidate doc about after/before-line-breaking
7190
7191         * lily/slur-scoring.cc (enumerate_attachments): robustness fix.
7192
7193         * lily/stem.cc (height): idem.
7194
7195         * lily/stem-tremolo.cc: idem.
7196
7197         * lily/slur.cc (height): don't use get_uncached_stencil()
7198
7199         * lily/rest.cc (y_offset_callback): use offset callback
7200         iso. after-line-breaking callback.
7201
7202         * lily/grob.cc: change after/before-line-breaking-callback to
7203         after/before-line-breaking dummy properties.
7204
7205         * lily/include/grob.hh: remove Grob_status.
7206
7207         * scm/define-context-properties.scm
7208         (all-user-translation-properties): remove verticalAlignmentChildCallback
7209
7210         * lily/tuplet-bracket.cc: use positions property iso. left,right-position.
7211         (calc_direction): use callback
7212         (calc_positions): use callback.
7213
7214         * lily/tie.cc (calc_direction): use callback. Only call parent
7215         positioning for more than one tie.
7216
7217         * lily/tie-column.cc (calc_positioning_done): use callback
7218
7219         * lily/slur-scoring.cc (calc_control_points): use callback
7220
7221         * lily/slur.cc (calc_direction): use callback.
7222
7223         * lily/note-collision.cc (force_shift_callback): remove.
7224
7225         * lily/dot-column.cc (force_shift_callback): remove. Use
7226         other_axis_parent_positioning.
7227
7228         * lily/grob.cc (other_axis_parent_positioning): new function.
7229         (same_axis_parent_positioning): new function
7230
7231         * lily/align-interface.cc (alignment_callback): remove function.
7232
7233         * lily/note-collision.cc (calc_positioning_done): use callback.
7234
7235         * lily/laissez-vibrer-tie.cc (calc_control_points): use callback.
7236         (calc_direction): idem.
7237         remove print function.
7238
7239         * lily/laissez-vibrer-tie-column.cc (calc_positioning_done): use callback.
7240
7241         * lily/dot-column.cc (calc_positioning_done): use callback.
7242
7243         * lily/break-align-interface.cc (calc_positioning_done): use callback.
7244
7245         * lily/beam.cc (calc_direction): use pseudo-property for beam
7246         direction callback.
7247         (calc_positions): use callback 
7248
7249         * lily/align-interface.cc (calc_positioning_done): use
7250         callback. Fold fixed  distance and normal alignment in one function.
7251
7252         * lily/stem.cc (calc_stem_end_position): use callback.
7253         (calc_positioning_done): idem.
7254         (calc_direction): idem.
7255         (calc_stem_end_position): idem
7256         (calc_stem_info): idem.
7257
7258         * lily/grob-property.cc (get_property_data): new function: 
7259         (try_callback): new function.
7260
7261         * scm/define-grob-properties.scm (all-user-grob-properties): doc
7262         callbacks property.
7263
7264         * lily/break-align-interface.cc: remove Break_align_interface::alignment_callback.
7265
7266 2005-10-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7267
7268         * lily/tie.cc (get_position): robustness fix. Don't crash if a
7269         tie
7270         has no heads.
7271         
7272         * lily/include/*.hh (Module): compile fixes.
7273
7274 2005-10-14  Heikki Junes <hjunes@cc.hut.fi>
7275
7276         * elisp/lilypond-font-lock.el, elisp/lilypond-indent.el: Avoid nil 
7277         as an argument for char-syntax: use (char-syntax (or nil 0)) 
7278         instead of (char-syntax nil), thanks to Milan Zamazal.
7279
7280 2005-10-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7281
7282         * make/lilypond.fedora.spec.in (Group): add lilypond-internals to
7283         dist.
7284
7285         * lily/tuplet-bracket.cc: check columns of bounds, not bounds
7286         themselves.
7287
7288 2005-10-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7289
7290         * flower/include/virtual-methods.hh (VIRTUAL_COPY_CONSTRUCTOR):
7291         add class_name() method.
7292
7293         * lily/music-scheme.cc: remove ly:music-name.
7294
7295 2005-10-11  Jan Nieuwenhuizen  <janneke@gnu.org>
7296
7297         * cygwin/postinstall-lilypond.sh: Remove cruft.
7298
7299         * cygwin/postremove-lilypond.sh: Remove.
7300
7301         * cygwin/GNUmakefile (default): Remove postremove rules.
7302
7303 2005-10-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7304
7305         * ly/titling-init.ly (evenHeaderMarkup): use space in header on
7306         even header too.
7307         
7308         * scm/define-markup-commands.scm (wordwrap-string): bugfix for
7309         MacOS 9 users.
7310
7311         * lily/hara-kiri-group-spanner.cc (consider_suicide): only
7312         consider break index for broken spanner.
7313
7314         * scm/define-markup-commands.scm (wordwrap-string): remove \r
7315         characters from string before splitting.
7316
7317 2005-10-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7318
7319         * scm/framework-ps.scm (output-preview-framework): use
7320         is-book-title to determine whether to chop off the booktitle.
7321
7322         * lily/paper-book.cc (systems): init from book-title-properties
7323         (add_score_title): init score-title-properties.
7324
7325         * ly/paper-defaults.ly: add {score,book}-title-properties.
7326
7327         * scm/document-backend.scm (lookup-interface): error message if
7328         using unknown interface.
7329
7330         * lily/volta-bracket.cc (after_line_breaking): new function. Set
7331         edge-height.
7332
7333         * lily/horizontal-bracket.cc (make_enclosing_bracket): rename from
7334         make_bracket.
7335         (make_bracket): new function.
7336
7337         * scm/lily.scm (define-scheme-options): add paper-size option.
7338
7339         * ly/declarations-init.ly (laissezVibrer): get paper size from
7340         -dpaper-size
7341
7342         * scm/translation-functions.scm: use \fontsize for changing the
7343         fontsize.
7344
7345         * scm/define-grobs.scm (all-grob-descriptions): set
7346         between-length-limit to 1.0
7347
7348         * lily/tie-helper.cc: add between_length_limit_ detail property.
7349
7350         * mf/feta-bolletjes.mf: typos.
7351
7352         * lily/note-head.cc (internal_print): don't shadow idx
7353         parameter. This fixes wrong attachment for do shape heads.
7354
7355 2005-10-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7356
7357         * scm/parser-ly-from-scheme.scm: rename from ly-from-scheme.scm
7358
7359         * scm/parser-clef.scm (supported-clefs): rename from clef.scm
7360
7361         * scm/layout-slur.scm: rename from slur.scm
7362
7363         * scm/layout-page-layout.scm: rename from page-layout.scm
7364
7365         * scm/layout-beam.scm: rename from beam.scm
7366
7367         * scm/define-grob-interfaces.scm (bass-figure-interface): add
7368         bass-figure-interface
7369
7370         * lily/new-figured-bass-engraver.cc (process_music): add
7371         implicitBassFigures property.
7372         
7373         * scm/define-markup-commands.scm (pad-x): new markup.
7374
7375         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set
7376         minimumVerticalExtent on FiguredBass context.
7377
7378         * lily/figured-bass-continuation.cc (center_on_figures): kludge in
7379         case the continuation crosses a line break.
7380
7381 2005-10-09  Jan Nieuwenhuizen  <janneke@gnu.org>
7382
7383         * flower/file-name.cc (dos_to_posix)[__CYGWIN__]: Return
7384         unconverted value if cygwin_conv_to_posix_path () fails.  Fixes
7385         absolute file name bug.  
7386
7387 2005-10-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7388
7389         * VERSION (PACKAGE_NAME): release 2.7.12
7390
7391         * input/regression/figured-bass-continuation-center.ly: new file.
7392
7393         * input/regression/beam-outside-beamlets.ly: new file.
7394
7395         * lily/beam.cc (set_beaming): don't clip edges.
7396         (connect_beams): don't clip edges.
7397
7398         * lily/beaming-info.cc (clip_edges): new function.
7399
7400         * lily/enclosing-bracket.cc (struct Enclosing_bracket): new file.
7401
7402         * Documentation/user/instrument-notation.itely (Figured bass):
7403         demonstrate extenders, update seealso links.
7404
7405         * scm/titling.scm (marked-up-headfoot): change tagline
7406         handling. tagline = ##f will blank the tagline as well.
7407
7408 2005-10-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7409
7410         * Documentation/topdocs/NEWS.tely: add entry for Figured bass.
7411
7412         * lily/new-figured-bass-engraver.cc (struct
7413         New_figured_bass_engraver): add new_music_found_ member.
7414
7415         * lily/lilypond-version.cc (Lilypond_version): deal with
7416         incorrectly formatted version strings. 
7417
7418         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): switch on
7419         New_figured_bass_engraver by default.
7420
7421         * lily/ttf.cc (print_trailer): only define glyph names when
7422         FT_Face has FT_FACE_FLAG_GLYPH_NAMES
7423
7424 2005-10-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7425
7426         * lily/horizontal-bracket.cc (make_bracket): new function.
7427
7428         * scm/define-grobs.scm (all-grob-descriptions): new grobs
7429         NewBassFigure, BassFigureBracket, BassFigureContinuation,
7430         BassFigureLine, BassFigureAlignment
7431
7432         * lily/new-figured-bass-engraver.cc (process_music): new file.
7433
7434         * lily/figured-bass-continuation.cc: new file.
7435
7436         * lily/include/horizontal-bracket.hh (struct Horizontal_bracket):
7437         new file.
7438
7439 2005-10-04  Mats Bengtsson  <mabe@s3.kth.se>
7440
7441         * scripts/lilypond-book.py: Bug fix, put the quote around the
7442         actual score for LaTeX documents.
7443
7444         * scm/define-grobs.scm (all-grob-descriptions): Change
7445         collapse-height of the SystemStartBracket grob to 5.0, 
7446         so the bracket disappears for single stave score lines (similarly
7447         to SystemStartBraces). 
7448
7449         * Documentation/user/advanced-notation.itely (Polymetric
7450         notation): Clarify the use of compressMusic.
7451
7452         * Documentation/user/basic-notation.itely (Grace notes): Clarify
7453         that the grace spacer note in other staves need the same duration
7454         and document the stroke-style property.
7455
7456 2005-10-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7457
7458         * Documentation/user/global.itely (Vertical spacing): document
7459         alignment-extra-space and fixed-alignment-extra-space.
7460
7461         * Documentation/topdocs/NEWS.tely (Top): add entry.
7462
7463         * input/regression/alignment-vertical-spacing.ly: new file.
7464
7465         * python/convertrules.py (conv): add rule.
7466
7467         * ly/music-functions-init.ly: rename outputProperty to overrideProperty
7468
7469         * lily/align-interface.cc (stretch_after_break): new
7470         function. Read fixed-alignment-extra-space property.
7471         (align_elements_to_extents): read alignment-extra-space property.
7472
7473         * lily/lily-guile.cc (robust_scm2dir): new function.
7474
7475         * scm/page-layout.scm (page-headfoot): annotate headsep and footsep.
7476         (annotate-space-left): new function. Annotate space left on page. 
7477         (annotate-y-interval): new function.
7478         (paper-system-annotate-last): new function. Annotate bottom-space.
7479
7480         * mf/feta-beugel.mf (y): 
7481
7482 2005-10-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7483
7484         * VERSION (PACKAGE_NAME):  release 2.7.11
7485
7486         * scm/lily-library.scm (interval-translate): new function
7487         (interval-center): new function. 
7488
7489         * scm/page-layout.scm (paper-system-annotate): new function. Add
7490         arrows for dimensions.
7491  
7492         * scm/stencil.scm (dimension-arrows): new function.
7493
7494         * Documentation/user/global.itely (Vertical spacing): mention annotatespacing
7495
7496         * input/regression/page-spacing.ly: add annotatespacing
7497
7498         * lily/paper-system-scheme.cc (LY_DEFINE): remove ly:paper-system-{extent,stencil}
7499         (LY_DEFINE): new function ly:paper-system-set-property!
7500
7501         * Documentation/user/global.itely (Paper size): explain how to add
7502         sizes.
7503
7504         * scm/paper.scm (paper-alist): rename tabloid paper to 11x17 to
7505         correspond to GS's definition.
7506
7507         * lily/tuplet-bracket.cc (after_line_breaking): suicide empty
7508         tuplet bracket.
7509         (print): only connect to next bracket if the next one is alive.
7510         (print): set padding to 0.0 if the bound is a breakable
7511         column. This makes tupletFullLength brackets reach up to the staff
7512         line if it doesn't connect to the next line.
7513
7514 2005-09-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7515
7516         * lily/bar-number-engraver.cc: correct docs.
7517
7518         * scm/output-lib.scm (first-bar-number-invisible): rename from
7519         default-bar-number-visibility
7520
7521 2005-09-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7522
7523         * scm/define-music-properties.scm (all-music-properties): remove
7524         predicate property.
7525
7526 2005-09-28  Heikki Junes  <hjunes@cc.hut.fi>
7527
7528         * po/fi.po: refresh.
7529
7530 2005-09-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7531
7532         * input/regression/hara-kiri-pianostaff.ly (disappear): remove
7533         superfluous s1.
7534         (disappear): bugfix.
7535
7536         * lily/stem-tremolo.cc (raw_stencil): read slope property.
7537
7538         * lily/include/paper-system.hh (class Paper_system): remove
7539         staff_extents_ member.
7540
7541         * lily/paper-system-scheme.cc (LY_DEFINE): remove.
7542
7543         * lily/include/paper-system.hh (class Paper_system): remove
7544         number_ variable. Remove is_title_. Remove break_before_penalty_
7545
7546         * lily/paper-book.cc (systems): use 'number property iso. number_
7547         member.
7548
7549         * lily/paper-system-scheme.cc: remove ly:paper-system-break-before-penalty
7550         remove ly:paper-system-number.
7551
7552         * scm/lily-library.scm (paper-system-title?): new function.
7553
7554         * lily/book.cc (process): bugfix: flip ?: cases. 
7555
7556         * Documentation/user/changing-defaults.itely (Difficult tweaks):
7557         add outputProperty.
7558
7559         * ly/music-functions-init.ly: add outputProperty music function.
7560
7561         * scm/paper.scm (set-paper-dimension-variables): add pagetopspace
7562
7563         * scm/page-layout.scm (ly:optimal-page-breaks): read next-space
7564         and next-padding.
7565         (optimal-page-breaks): rename from ly:optimal-page-breaks.
7566
7567         * lily/paper-system-scheme.cc (LY_DEFINE): new function.
7568
7569         * lily/paper-system.cc (internal_get_property): new function.
7570
7571         * Documentation/user/global.itely (Vertical spacing): refer to
7572         page-spacing.ly
7573
7574         * scm/page-layout.scm (ly:optimal-page-breaks): add support for
7575         pagetopspace
7576
7577         * input/regression/page-spacing.ly: new file.
7578
7579         * input/regression/page-top-space.ly: new file.
7580
7581         * lily/spacing-spanner.cc: cmath -> math.h
7582
7583         * lily/paper-system.cc (read_left_bound): new function. Read
7584         line-break-system-details from left bound to determine extents.
7585  
7586         * Documentation/user/programming-interface.itely (Using LilyPond
7587         syntax inside Scheme): change applyxxx -> applyXxx.
7588
7589         * ly/music-functions-init.ly: add outputProperty music function.
7590
7591         * lily/parser.yy (Generic_prefix_music_scm): add scm-scm-scm signature.
7592
7593         * lily/grob-scheme.cc (LY_DEFINE): add ! to ly:grob-suicide! name.
7594
7595         * python/convertrules.py (conv): rule
7596
7597         * ly/music-functions-init.ly: applyxxx -> applyXxx
7598
7599         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): alias
7600         TabVoice to Voice.
7601
7602 2005-09-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7603
7604         * flower/include/real.hh: include <math.h> iso. <cmath>
7605
7606         * flower/include/offset.hh: include real.hh
7607
7608 2005-09-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7609
7610         * Documentation/user/changing-defaults.itely (Difficult tweaks):
7611         fix example, now that 'interfaces is no longer directly available.
7612
7613         * lily/book.cc (process): don't crash if paper == NULL.
7614
7615         * po/fr.po: update.
7616
7617 2005-09-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7618
7619         * scm/define-music-types.scm (music-descriptions): set length and
7620         start-callback for QuoteMusic
7621
7622 2005-09-15  Mats Bengtsson  <mabe@s3.kth.se>
7623
7624         * lily/tie.cc (get_configuration): Replace fabs -> abs for integer
7625         arguments. Fixes compilation error with gcc 3.3.
7626
7627 2005-09-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7628
7629         * VERSION: release 2.7.10
7630
7631         * stepmake/stepmake/python-module-rules.make
7632         ($(outdir)/%$(SHARED_MODULE_SUFFIX)): SHARED_FLAGS at the end.  
7633
7634         * lily/*.cc: remove <cmath> everywhere. <cmath> is included from
7635         real.hh
7636
7637 2005-09-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7638
7639         * stepmake/stepmake/c++-vars.make (#EXTRA_CXXFLAGS): don't add
7640         -Werror. Otherwise GCC barfs over various optimizations.
7641
7642         * scm/define-grob-properties.scm (all-internal-grob-properties):
7643         add note-head property
7644
7645         * Documentation/user/instrument-notation.itely (Laissez vibrer
7646         ties): new node.
7647
7648         * input/regression/laissez-vibrer-ties.ly: new file.
7649
7650         * lily/laissez-vibrer-engraver.cc: new file.    
7651
7652         * lily/include/tie-column-format.hh: new file.
7653
7654         * lily/tie-column-format.cc: new file. 
7655
7656         * lily/tie-column.cc (set_manual_tie_configuration): new function.
7657
7658         * lily/laissez-vibrer-tie.cc: new file.
7659
7660         * lily/include/laissez-vibrer-tie.hh: new file.
7661
7662         * ly/engraver-init.ly: add Laissez_vibrer_engraver
7663
7664         * ly/declarations-init.ly (laissezVibrer): add \laissezVibrer
7665
7666         * scm/define-grobs.scm (all-grob-descriptions): add
7667         LaissezVibrerTie, LaissezVibrerTieColumn
7668
7669         * lily/tie-column.cc (set_tie_config_directions): new function
7670         (final_shape_adjustment): new function.
7671         (shift_small_ties): new function.
7672
7673         * scm/define-music-types.scm (music-descriptions): add LaissezVibrerEvent
7674
7675         * lily/include/tie.hh (struct Tie_details): add x_gap_
7676         (struct Tie_configuration): add head_position_
7677
7678         * lily/tie-column.cc (set_chord_outline): new function.
7679
7680         * mf/cmr.enc.in:  remove file.
7681
7682 2005-09-11  Graham Percival  <gpermus@gmail.com>
7683
7684         * Documentation/user/examples.itely: typo fix.  Thanks, Matevž
7685
7686 2005-09-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7687
7688         * mf/feta-banier.mf: make vertical stem 1/2 stemthickness wide to
7689         reduce aliasing effects.
7690
7691         * lily/tie-column.cc (set_chord_outlines): bugfix: insert complete
7692         box in skyline.
7693
7694 2005-09-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7695
7696         * lily/tie.cc (get_configuration): don't crash if left_dot is NULL.
7697
7698         * flower/include/real.hh: std::fabs too.
7699
7700 2005-09-08  Jan Nieuwenhuizen  <janneke@gnu.org>
7701
7702         * Documentation/user/lilypond.tely: Spell Baßtuba in UTF-8 (Werner). 
7703
7704         * lily, flower: Include C++ iso C headers.  Import namespace std
7705         throughout.
7706
7707         * lily/side-position-interface.cc: 
7708         * lily/scm-hash.cc: 
7709         * lily/note-head.cc: 
7710         * lily/include/includable-lexer.hh: 
7711         * flower/include/string-data.icc: Remove using std::*.
7712
7713         * lily, flower: Include C++ iso C headers.  Import namespace std
7714         throughout.
7715
7716         * lily/side-position-interface.cc: 
7717         * lily/scm-hash.cc: 
7718         * lily/note-head.cc: 
7719         * lily/include/includable-lexer.hh: 
7720         * flower/include/string-data.icc: Remove using std::*.
7721
7722         * Documentation/user/instrument-notation.itely (Entering lyrics):
7723         Multiple latin-1->utf-8 conversion fix.
7724
7725         * Documentation/user/*tely: Update Emacs cookie to utf-8.
7726
7727 2005-09-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7728
7729         * lily/tie.cc (get_configuration): also avoid dots for non-space
7730         situations.
7731
7732 2005-09-07  Jan Nieuwenhuizen  <janneke@gnu.org>
7733
7734         * Documentation/user/instrument-notation.itely: Bugfix.
7735
7736 2005-09-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7737
7738         * tex/GNUmakefile: don't install texinfo.tex
7739
7740         * tex/ : cleanup: remove unused files.
7741
7742         * lily/general-scheme.cc: remove my_{isinf,isnan}.
7743
7744         * flower/include/real.hh: using std::{isnan,isinf}
7745         
7746         * VERSION (PATCH_LEVEL): release 2.7.9
7747
7748 2005-09-05  Graham Percival  <gpermus@gmail.com>
7749
7750         * Documentation/user/ instrument-notation.itely,
7751         advanced-notation.itely: minor tweaks.
7752
7753         * input/test/script-chart.ly: add item padding.
7754
7755 2005-09-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7756
7757         * flower/offset.cc: use math.h iso. <cmath>
7758
7759         * scm/ps-to-png.scm (make-ps-images): use png16m again, for sake
7760         of IE users.
7761
7762         * scm/framework-eps.scm (dump-stencils-as-EPSes): cleanup.
7763         (widen-left-stencil-edges): new function. Fix alignment problems
7764         with LaTeX includegraphics.
7765
7766         * lily/text-interface.cc (interpret_markup): use abort().
7767
7768 2005-09-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7769
7770         * input/regression/tie-chord.ly (testLong): add a chord in 4ths
7771
7772         * lily/tie.cc (get_configuration): update bezier shape as we
7773         change Y positions.
7774         (get_configuration): don't move large ties if we're outside of the
7775         staff.
7776
7777 2005-09-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7778
7779         * scm/define-markup-commands.scm (strut): swap X and Y dims.
7780         
7781 2005-09-03  Jan Nieuwenhuizen  <janneke@gnu.org>
7782
7783         * .cvsignore: Add auto-generated configure files and then some.
7784
7785 2005-09-02  Jan Nieuwenhuizen  <janneke@gnu.org>
7786
7787         * scm/define-grobs.scm (DynamicLineSpanner): Add
7788         X-extent-callback.  Fixes hairpin-slur collision.
7789
7790 2005-08-31  Graham Percival  <gpermus@gmail.com>
7791
7792         * Documentation/user/advanced-notation.itely,
7793         basic-notation.itely: minor changes.
7794
7795 2005-08-31  Mats Bengtsson  <mabe@s3.kth.se>
7796
7797         * scm/framework-eps.scm (dump-stencils-as-EPSes): Insert a
7798         \linebreak between each .eps file if \betweenLilyPondSystem is
7799         undefined. 
7800
7801         * Documentation/user/lilypond-book.itely (Integrating LaTeX and
7802         music): Document the \linebreak
7803
7804         * Documentation/user/lilypond-book.itely,
7805         input/tutorial/lbook-latex-test.tex,
7806         Documentation/user/examples.itely: Remove \usepackage{graphics}
7807
7808 2005-08-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7809
7810         * mf/aybabtu.pe.in (i): don't merge alphabet into aybabtu.
7811
7812         * lily/ly-module.cc (make_stand_in_procs_weak): 1.6.4 and earlier
7813         compat bugfix.
7814
7815         * scripts/lilypond-book.py (PREAMBLE_LY): define
7816         inside-lilypond-book
7817         (modify_preamble): new function. Insert \RequirePackage{graphics}
7818         when no {graphics found in preamble.  
7819
7820 2005-08030  Graham Percival  <gpermus@gmail.com>
7821
7822         * Documentation/user/basic-notation.itely, global.itely,
7823         tutorial.itely: misc small changes.
7824
7825 2005-08-30  Jan Nieuwenhuizen  <janneke@gnu.org>
7826
7827         * stepmake/aclocal.m4: Include MY_PATCH_LEVEL in config.make's
7828         VERSION.
7829
7830 2005-08-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7831
7832         * lily/tie-column.cc (new_directions): put Tie down on center
7833         staff line. 
7834
7835         * lily/script-interface.cc (before_line_breaking): use
7836         Grob::programming_error
7837
7838         * scm/ps-to-png.scm (make-ps-images): use pngalpha device.
7839
7840         * scripts/lilypond-book.py (get_latex_textwidth): oops. Take [0]
7841         of splitext.
7842
7843 2005-08-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7844
7845         * VERSION (PACKAGE_NAME): VERSION release 2.7.8
7846
7847 2005-08-29  Werner Lemberg  <wl@gnu.org>
7848
7849         * mf/GNUmakefile: Add `-f' flag to `rm' command while removing
7850         the `*.scale.pfa' files to avoid warnings.
7851
7852 2005-08-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7853
7854         * lily/tempo-performer.cc (process_music): idem.
7855
7856         * lily/midi-def.cc (get_tempo): Rational to int conversion bug.
7857
7858 2005-08-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7859
7860         * Documentation/user/advanced-notation.itely (Text markup): not a
7861         fragment.
7862
7863         * lily/midi-item.cc (to_string): use to_int() iso. int cast.
7864
7865         * lily/staff-performer.cc (initialize): add tempo/name to
7866         audio_staff_
7867
7868
7869 2005-08-26  Graham Percival  <gpermus@gmail.com>
7870
7871         * Documentation/user/advanced.itely: add text-only example.
7872
7873         * Documentation/user/invoking.itely: add index entries for
7874         convert-ly.
7875
7876         * Documentation/user/ tutorial.itely, basic-notation.itely:
7877         small fixes suggested by Steve D.  Thanks!
7878
7879 2005-08-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7880
7881         * input/regression/markup-bidi-pango.ly: new file.
7882
7883         * lily/pango-font.cc (pango_item_string_stencil): make Mingw code
7884         standard. Remove #ifdef. Remove memleak.
7885         (text_stencil): use text_dir to decide how to composite items.
7886         (text_stencil): determine uniform text direction for the entire
7887         string.
7888
7889         * scripts/lilypond-book.py (output_name): remove
7890         latex_filter_cmd. Non-portable to non-Unix systems. 
7891         (get_latex_textwidth): use File.write and os.unlink() instead.
7892
7893         * THANKS: add Vicente & Trevor.
7894
7895         * lily/grob.cc (discretionary_processing): look up origin for
7896         programming_error too. 
7897
7898         * input/regression/tie-broken.ly: new file.
7899
7900         * lily/tie-column.cc (set_chord_outlines): set outline for line
7901         break case too.
7902         
7903 2005-08-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7904
7905         * lily/pango-font.cc (text_stencil): don't translate glyphs in
7906         unscaled transform, just translate stencils.
7907
7908         * ly/performer-init.ly: init timing to #t.  Fixes bar checks in
7909         MIDI.
7910
7911         * scm/define-markup-commands.scm (wordwrap-string): use
7912         text-direction
7913         (wordwrap-stencils): idem.
7914         (line): idem.
7915         (fill-line): idem.
7916         (wordwrap-stencils): translate last line to right for
7917         text-direction = LEFT.
7918
7919         * scm/define-grob-properties.scm (all-user-grob-properties): add
7920         text-direction.
7921
7922 2005-08-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
7923
7924         * lily/lily-parser.cc (Lily_parser): also copy output_basename_
7925         when copying a Lily_parser object.
7926
7927 2005-08-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7928
7929         * scm/define-markup-commands.scm (null): add null markup.
7930
7931 2005-08-25  Mats Bengtsson  <mabe@s3.kth.se>
7932
7933         * lily/item.cc: Add documentation of center-invisible
7934
7935 2005-08-24  Graham Percival  <gpermus@gmail.com>
7936
7937         * Documentation/user/advanced-notation.itely: add info about
7938         raising text.
7939
7940         * Documentation/user/programming-interface.itely: fix example
7941         involving raised text.
7942
7943 2005-08-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7944
7945         * lily/beam.cc (print): fix X start/end points of isolated
7946         beamlets.
7947
7948         * scm/output-ps.scm (grob-cause): escape spaces in URLs.
7949
7950         * lily/multi-measure-rest.cc (set_text_rods): new function.
7951
7952         * lily/vertical-align-engraver.cc (process_music): call
7953         Align_interface::set_axis(). This forces #'elements to be ordered,
7954         preventing random vertical reordering of staves.
7955
7956         * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
7957         add avoid-slur property. 
7958
7959         * Documentation/user/basic-notation.itely (Measure repeats): add
7960         countPercentRepeats example.
7961
7962         * Documentation/user/advanced-notation.itely (Other text markup
7963         issues): remove remark about normal-font.  We have \normal-text
7964
7965         * input/regression/tie-chord.ly: add note about remaining bugs.
7966
7967         * lily/tie.cc (print): try Tie_column::set_directions () if
7968         control-points not yet defined.
7969
7970 2005-08-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7971
7972         * lily/system-start-delimiter.cc (staff_brace): don't remove brace
7973         extent. This fixes braces falling out of the EPS bbox.
7974
7975         * mf/feta-beugel.mf (braces_per_font): make brace glyph align
7976         exactly to bbox.
7977
7978 2005-08-23  Graham Percival  <gpermus@gmail.com>
7979
7980         * {various} : change #up->#UP and #down->#DOWN.
7981
7982         * ly/titling-init.ly: Spacing fix when using printallheaders=##t.
7983
7984         * Documentation/user/advanced-notation.itely: clarify
7985         what objects handles text on a multimeasure rest.
7986
7987 2005-08-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7988
7989         * VERSION (PATCH_LEVEL): release 2.7.7
7990
7991 2005-08-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7992
7993         * make/lilypond-vars.make: set -dgs-font-load for "make web" 
7994
7995         * Documentation/topdocs/INSTALL.texi (Top): add GS bugfix requirement.
7996
7997         * input/regression/*.ly: formatting clean-up. Default layout
7998         before music expression.
7999
8000         * input/mutopia/R.Schumann/GNUmakefile (examples): switch off
8001         romanze28-2 example.
8002
8003         * scm/ps-to-png.scm: remove dir-re function.
8004         (make-ps-images): generate page names, instead of globbing them.
8005         This brings down LilyPond memory usage for make web by a factor
8006         10. 
8007
8008         * scripts/lilypond-book.py (Lilypond_snippet.png_is_outdated):
8009         don't use glob. With 3000 files, globbing
8010         Documentation/user/out-www/ can take too much time. 
8011         
8012         * lily/lily-guile.cc (gulp_file_to_string): take size argument.
8013
8014         * lily/general-scheme.cc (LY_DEFINE): take optional size argument.
8015
8016         * input/regression/tie-manual.ly: new file
8017
8018         * input/regression/tie-chord.ly: update.
8019
8020         * flower/include/interval.hh (struct Interval_t): 
8021
8022         * lily/tie.cc (distance): new function 
8023         (height): new function.
8024         (init): new function
8025         (Tie_details): new struct.
8026
8027         * lily/skyline.cc (skyline_height): new function.
8028
8029         * lily/tie-column.cc (set_chord_outlines): new function.
8030         (new_directions): read tie-configuration
8031
8032         * lily/skyline.cc: fix ASCII art.
8033         
8034 2005-08-22  Mats Bengtsson  <mabe@s3.kth.se>
8035
8036         * python/convertrules.py (string_or_scheme): Fix spelling error
8037
8038 2005-08-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8039         
8040         * lily/tie-column.cc (set_directions): set directions only once.
8041         (add_configuration): new function.
8042
8043         * lily/tie.cc (set_control_points): new function
8044
8045         * lily/tie-column.cc (new_directions): new function.
8046
8047         * ly/music-functions-init.ly: set 'pitch property
8048         iso. trill-pitch. This makes \relative work with \pitchedTrill
8049
8050         * lily/tie.cc (get_configuration): new function. Don't generate
8051         control points, rather, generate configuration.
8052         remove head-pair property.
8053
8054         * lily/include/tie.hh (struct Tie_configuration): new struct.
8055
8056 2005-08-22  Heikki Junes  <hjunes@cc.hut.fi>
8057
8058         * Documentation/topdocs/NEWS.tely: clarify.
8059
8060 2005-08-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8061
8062         * lily/tie.cc: remove minimum-length
8063
8064         * scm/define-grob-properties.scm (all-user-grob-properties):
8065         remove staffline-clearance, y-offset 
8066
8067         * input/regression/tie-dots.ly (Module): remove.
8068
8069         * lily/tie.cc (get_control_points): rewrite. Put short ties in
8070         staff-spaces, make long ties cross staff lines. Avoid flags and dots.
8071
8072         * input/regression/tie-single.ly: new file.
8073
8074 2005-08-21  Graham Percival  <gpermus@gmail.com>
8075
8076         * ly/bagpipe.ly: fix compile problem.
8077
8078 2005-08-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8079
8080         * lily/midi-item.cc (name): new method.
8081
8082         * lily/staff-performer.cc (acknowledge_audio_element): use
8083         signature of baseclass.
8084
8085         * lily/engraver-group.cc (do_announces): move recursion call out
8086         of while loop. 
8087
8088         * lily/drum-note-performer.cc (class Drum_note_performer): use
8089         process_music everywhere.
8090
8091         * ly/performer-init.ly: add default children everywhere.
8092
8093         * lily/paper-book.cc (output): call paper-book-write-midis
8094         directly: always write MIDI, even if no \layout {} block. 
8095
8096 2005-08-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8097
8098         * VERSION (PACKAGE_NAME): release 2.7.6
8099
8100         * lily/percent-repeat-engraver.cc (try_music): don't print warning
8101         about not being able to handle repeat.
8102
8103 2005-08-19  Jan Nieuwenhuizen  <janneke@gnu.org>
8104
8105         * Documentation/user/examples.itely (Piano templates):
8106         * lily/include/performer-group.hh: Remove last traces of
8107         Performer_group_performer.  Fixes make web.
8108
8109 2005-08-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8110
8111         * Documentation/user/examples.itely (Piano templates): change
8112         Engraver_group_engraver -> Engraver_group
8113
8114         * lily/ly-module.cc (make_stand_in_procs_weak): only kludge if
8115         scm_stand_in_procs is not weak_any.
8116
8117         * lily/volta-bracket.cc (print): don't use strcmp().
8118
8119         * lily/volta-engraver.cc (process_music): use
8120         Text_interface::is_markup() for setting the 'text property of the
8121         volta bracket.
8122
8123         * input/mutopia/claop.py (accents): update syntax to 2.6
8124
8125         * scm/define-context-properties.scm
8126         (all-user-translation-properties): add countPercentRepeats.
8127
8128         * Documentation/user/basic-notation.itely (Measure repeats): add
8129         isolated percent example.
8130
8131 2005-08-18  Graham Percival  <gpermus@gmail.com>
8132
8133         * input/ {various}: change direction #1, #-1 to
8134         #up/#down or \fooUp, \fooDown.
8135
8136         * Documentation/user/music-glossary.tely: #-1 to #down.
8137
8138         * ly/bagpipe.ly, engraver-init.ly, property-init.ly: #1
8139         to #up, #-1 to #down.
8140
8141 2005-08-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8142
8143         * lily/include/engraver-group.hh: rename.
8144
8145         * lily/include/performer-group.hh: rename.
8146
8147 2005-08-18  Mats Bengtsson  <mabe@s3.kth.se>
8148
8149         * input/test/script-abbreviations.ly: Removed some old LaTeX
8150         left overs.
8151
8152 2005-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
8153
8154         * python/convertrules.py (conv): inside-slur -> avoid-slur.
8155         Remove functions.  Remove if 1: constructs, reindent.
8156
8157         * scripts/convert-ly.py (add_version): Add functions from
8158         convertrules.py
8159
8160         * scm/script.scm (default-script-alist):
8161         s/priority/script-priority.  Fixes script stacking.  Backportme.
8162         (Fermata): Very low priority.
8163
8164 2005-08-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8165
8166         * input/regression/*.ly: remove superfluous \score blocks. Reindent.
8167
8168         * input/regression/slur-script.ly: remove padding tweaks. Add
8169         comment strings.
8170
8171         * lily/note-spacing.cc (get_spacing): remove kludge for EOL wide
8172         time sigs and related stuff.
8173
8174         * scm/define-grob-properties.scm (all-user-grob-properties): add
8175         @code{} tags to property description.
8176
8177         * lily/include/line-group-group-engraver.hh (Module): remove file.
8178
8179         * python/convertrules.py (conv): add rule for
8180         Engraver_group_engraver -> Engraver_group.
8181
8182         * lily/include/performer-group-performer.hh: analogous.
8183
8184         * lily/include/engraver-group-engraver.hh: rename to Engraver_group.
8185
8186         * lily/context-def.cc (instantiate): check for
8187         Engraver_group_engraver and Performer_group_performer not
8188         Engraver/Performer. Fixes crashes when doing \with { \consists .. }
8189  
8190 2005-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
8191
8192         * input/les-nereides.ly: Remove three fingering tweaks, update
8193         remaining one.
8194
8195         * input/regression/slur-script-inside.ly: Update, fix doc.
8196
8197         * scm/script.scm: Update to avoid-slur.
8198
8199         * scm/define-grob-properties.scm (avoid-slur): New property.
8200
8201         * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
8202         * lily/slur-engraver.cc (acknowledge_extra_object): Invoke
8203         outside_slur_callback if avoid-slur != #'inside.
8204
8205         * scm/define-grobs.scm (Fingering, Textscript): No
8206         inside-slur/outside-slur preference.
8207         (DynamicLineSpanner): Always outside slur.
8208
8209         * input/regression/slur-script.ly: More tests.
8210
8211 2005-08-17  Graham Percival  <gpermus@gmail.com>
8212
8213         * Documentation/user/lilypond-book: fix notime entry.
8214
8215         * Documentation/user/advanced-notation.itely: add info on
8216         getting an I rehearsal mark.
8217
8218         * Documentation/user/putting.itely: reinstate "I", re-enforce
8219         the fact that \override numbers are the result of
8220         experimentation and personal taste.
8221
8222         * Documentation/user/invoking.itely: update convert-ly bugs.
8223
8224 2005-08-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8225
8226         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set timing
8227         to #t.
8228
8229         * lily/timing-translator.cc (initialize): don't initialize timing.
8230
8231         * input/regression/stem-spacing.ly (Module): remove file.
8232
8233         * input/regression/spacing-stick-out.ly: specify Score context for
8234         \override
8235
8236         * input/regression/clefs.ly: remove spurious {}s 
8237
8238 2005-08-17  Heikki Junes  <hjunes@cc.hut.fi>
8239
8240         * Documentation/topdocs/NEWS.tely,
8241         input/regression/repeat-percent-count.ly: clarify a bit.
8242
8243 2005-08-16  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8244
8245         * input/no-notation/display-lily-tests.ly: delete
8246         display-lily-init call.
8247
8248         * ly/music-functions-init.ly (displayLilyMusic): move
8249         display-lily-init call at top level, so that the user should not
8250         have to call it.
8251
8252         * scm/define-music-display-methods.scm (note-name->lily-string):
8253         retrieve note names directly from pitchnames using new function `rassoc'.
8254         (display-lily-init): note names list construction removed.
8255
8256 2005-08-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8257
8258         * THANKS: spello.
8259
8260         * lily/lily-parser.cc (get_header): copy module, instead of
8261         returning it.
8262
8263         * Documentation/topdocs/NEWS.tely (Top): add entry for percent
8264         counters.
8265
8266         * Documentation/user/basic-notation.itely (Measure repeats): add
8267         links to Counter grobs.
8268
8269         * scm/define-grobs.scm (all-grob-descriptions): add
8270         DoublePercentRepeatCounter
8271         (all-grob-descriptions): add PercentRepeatCounter
8272
8273         * lily/percent-repeat-engraver.cc (class Percent_repeat_engraver):
8274         also create counter grobs.
8275
8276         * lily/separation-item.cc (extremal_break_aligned_grob): don't
8277         return grob without space-alist.
8278
8279         * input/proportional.ly: tune staff-padding.
8280
8281         * input/regression/repeat-percent-count.ly: new file. 
8282
8283 2005-08-16  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8284
8285         * input/no-notation/display-lily-tests.ly: moved from
8286         input/regression/ to input/no-notation. Be sure to call
8287         `display-lily-init' before trying to use the display function.
8288
8289 2005-08-16  Mats Bengtsson  <mabe@s3.kth.se>
8290
8291         * scripts/lilypond-book.py (option_definitions): Don't localize
8292         the empty string. Fixes bug when --psfonts was used with
8293         non-English locale.
8294
8295 2005-08-15  Graham Percival  <gpermus@gmail.com>
8296
8297         * lily/tuplet-bracket.cc: simple build fix.
8298
8299         * Documentation/user/putting.itely: use "we" instead of "I".
8300
8301         * Documentation/user/basic-notation.itely: cautionary accidentals
8302         work with naturals, too.
8303
8304 2005-08-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8305
8306         * lily/tuplet-bracket.cc (calc_position_and_height): add
8307         staff-padding support.
8308
8309         * input/proportional.ly: set staff-padding.
8310         
8311         * VERSION (PATCH_LEVEL): release 2.7.5
8312
8313         * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): text formatting
8314         fixes. Remove tweaks.
8315
8316         * input/regression/tuplet-slope.ly: add a test case.
8317
8318         * lily/tuplet-bracket.cc (calc_position_and_height): revert
8319         erroneous fix. Add spanner bounds to offset array with relative X
8320         positions.
8321
8322         * ly/engraver-init.ly: add Rest_engraver only once.
8323
8324         * scm/define-music-display-methods.scm (KeyChangeEvent): only do
8325         (*parser*) lookup if (*parser*) != #f.
8326
8327 2005-08-15  Jan Nieuwenhuizen  <janneke@gnu.org>
8328
8329         * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
8330         Cut-and paste update.
8331
8332         * input/regression/slur-script.ly: Add example of reverting
8333         inside-slur for fingering.
8334
8335         * scm/define-grobs.scm (DynamicLineSpanner, Fingering,
8336         TextScript): Explicitly set inside-slur #f, forcing these out of slur.
8337
8338         * lily/slur-engraver.cc (acknowledge_extra_object): Only invoke
8339         outside_slur_callback if inside-slur == #f (as opposed to unset).
8340
8341 2005-08-14  Jan Nieuwenhuizen  <janneke@gnu.org>
8342
8343         * tex/GNUmakefile (INSTALLATION_FILES): Remove enc symlink setup,
8344         encoding files are already removed.
8345
8346 2005-08-15  Mats Bengtsson  <mabe@s3.kth.se>
8347
8348         * Documentation/user/advanced-notation.itely (Instrument names):
8349         Document a workaround for instrument names that collide with
8350         system start braces/brackets.
8351
8352 2005-08-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8353
8354         * lily/rest-collision.cc (do_shift): spello.
8355
8356         * input/proportional.ly: use #'used property. Set break-overshoot
8357         property.
8358
8359         * mf/feta-arrow.mf: center on arrow tip center, iso. tip edge.
8360
8361         * lily/paper-column.cc: add #'used property
8362
8363         * lily/mark-engraver.cc (stop_translation_timestep): set grob
8364         array for staves found.
8365
8366         * lily/metronome-engraver.cc (stop_translation_timestep): set grob
8367         array for stavesFound.
8368
8369         * lily/staff-spacing.cc (next_note_correction): add fixed and
8370         space to calling convention. This fixes spacing of accidentals
8371         after barlines.
8372
8373         * input/regression/spacing-accidental-stretch.ly: add barline -
8374         accidental case.
8375
8376         * scm/framework-ps.scm (page-header): add version number to
8377         creator
8378         (eps-header): idem.
8379
8380         * mf/feta-bolletjes.mf: swap d0 and u0 fa heads.
8381         
8382 2005-08-13  Graham Percival  <gpermus@gmail.com>
8383
8384         * Documentation/user/global.itely: add "fit as much as
8385         possible onto this page" example (Vertical spacing).
8386
8387 2005-08-13  Jan Nieuwenhuizen  <janneke@gnu.org>
8388
8389         * *: Nitpick run.
8390
8391         * buildscripts/fixcc.py: Fixes.
8392
8393 2005-08-12  Graham Percival  <gpermus@gmail.com>
8394
8395         * Documentation/user/advanced-notation.itely: add markup
8396         example to Text spanners.
8397
8398 2005-08-12  Mats Bengtsson  <mabe@s3.kth.se>
8399
8400         * Documentation/user/basic-notation.itely (Ties): Add example of
8401         tying a tremolo to a chord. Thanks to Steve Doonan. 
8402
8403         * lily/tie-engraver.cc: Add tieWaitForNote to the list of read
8404         properties and move tieMelismaBusy to the list of written
8405         properties. 
8406
8407 2005-08-12  Heikki Junes  <hjunes@cc.hut.fi>
8408
8409         * po/TODO: suggest to use a dedicated tool like kbabel.
8410
8411         * po/fi.po: update using kbabel.
8412
8413 2005-08-12  Jan Nieuwenhuizen  <janneke@gnu.org>
8414
8415         * *: Remove obsolete files.  Nitpick run.
8416
8417         * lily/lily-guile.cc (parse_symbol_list): Bugfix.
8418
8419 2005-08-11  Jan Nieuwenhuizen  <janneke@gnu.org>
8420
8421         * mf/GNUmakefile (get-*-fonts): Rename from get-*-pfa.  Copy SVG
8422         too.
8423
8424         * Documentation/topdocs/NEWS.tely (Top): Add slur script feature.
8425
8426         * lily/lily-guile.cc (parse_symbol_list): Rewrite.  Grok multiple
8427         whitespace as symbol separator.
8428
8429         * lily/side-position-interface.cc: Add slur-padding.
8430
8431         * input/regression/slur-script.ly: Fixed.  Backportme?  This is
8432         quite a large fix, and it never worked in a stable release; so not
8433         really a regression.
8434
8435         * lily/phrasing-slur-engraver.cc (class Phrasing_slur_engraver):
8436         Update cut and paste code from Slur_engraver.
8437
8438         * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
8439         Add.
8440
8441         * scm/define-grobs.scm (DynamicLineSpanner): Add
8442         dynamic-line-spanner-interface.
8443         (DynamicLineSpanner, TextScript, Fingering): Add slur-padding.
8444
8445 2005-08-09  Jan Nieuwenhuizen  <janneke@gnu.org>
8446
8447         * lily/slur-engraver.cc (acknowledge_extra_object): Bugfix: use
8448         to_boolean () so that non-set 'inside-slur means false.
8449
8450         * lily/slur.cc (outside_slur_callback): Bugfixes: make sure that
8451         slur has control-points.  Skip script without direction.  Always
8452         do_shift if script inside slur, even if slur not contained in
8453         script y-extent.  Increment k in loop.
8454
8455 2005-08-11  Mats Bengtsson  <mabe@s3.kth.se>
8456
8457         * scm/define-markup-commands.scm: Improved regexp to search for
8458         EPS bounding boxes and corrected call to ly:warning.
8459
8460 2005-08-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8461
8462         * Documentation/user/programming-interface.itely (Displaying music
8463         expressions): doc for \displayLilyMusic. Also some precisions in
8464         "Markup construction in Scheme"
8465
8466 2005-08-10  Mats Bengtsson  <mabe@s3.kth.se>
8467
8468         * scm/define-markup-commands.scm (normal-text): Added 2 new
8469         markup commands, \normal-text and \medium (the latter thanks to
8470         Bruce Fairchild). 
8471
8472 2005-08-08  Graham Percival  <gpermus@gmail.com>
8473
8474         * Documentation/user/programming-interface.itely: fix @{ @}.
8475
8476         * scm/define-markup-commands.scm: add linewidth info to
8477         \justify and \wordwrap, add "upright is the opposite of italic".
8478
8479         * Documentation/user/advanced-notation.itely: shaped->shape,
8480         add (cons (markup "foo")) type of example to text markup,
8481         reword multi-measure rests section.
8482
8483         * lily/note-heads-engraver.cc: changed Shaped->Shape in a
8484         comment.  No actual code was touched.
8485
8486         * Documentation/user/invoking.itely: add more info about
8487         \include.  Thanks, Bruce!
8488
8489         * THANKS: add Bruce Fairchild, alphabetise.
8490
8491         * Documentation/user/global.itely: document \score{\header{}}
8492         behavior.
8493
8494         * Documentation/user/basic-notation.itely: reword multi-measure
8495         rest discussion in Rests.
8496
8497 2005-08-08  Mats Bengtsson  <mabe@s3.kth.se>
8498
8499         * Documentation/user/programming-interface.itely (Markup
8500         construction in Scheme): Corrected example and tried to clarify
8501         the implicit \line in the table.
8502
8503 2005-08-07  Graham Percival  <gpermus@gmail.com>
8504
8505         * Documentation/user/instrument-notation.itely: moved
8506         some bagpipe info back into the bagpipe section.  Somehow
8507         it ended up in the "other vocal issues" section?!  :o_O
8508
8509 2005-08-07  Jan Nieuwenhuizen  <janneke@gnu.org>
8510
8511         * scm/framework-ps.scm (dir-join): Rename from path-join (joins
8512         directories, not paths).
8513
8514 2005-08-06  Jan Nieuwenhuizen  <janneke@gnu.org>
8515
8516         * scm/framework-ps.scm (munge-lily-font-name): Bugfix: Munge only
8517         plain emmentaler/aybabtu.  Backportme.
8518
8519         * lily/tuplet-bracket.cc (calc_position_and_height): Bugfix:
8520         missing dir correction.
8521
8522 2005-08-05  Graham Percival  <gperlist@shaw.ca>
8523
8524         * scm/define-markup-commands: fix reversed justify/wordwrap
8525         doc strings.
8526
8527 2005-08-05  Jürgen Reuter  <reuter@ipd.uka.de>
8528
8529         * lily/ligature-engaver.cc, lily/coherent-ligature-engaver.cc,
8530         lily/gregorian-ligature-engaver.cc,
8531         lily/include/ligature-engraver.hh,
8532         lily/include/coherent-ligature-engraver.hh,
8533         lily/include/gregorian-ligature-engraver.hh: make these classes
8534         truely abstract.  This should fix some internal oddities such as
8535         duplicate as well as dead translator/property declarations, and
8536         also some dead code.
8537
8538         * lily/ligature-bracket-engraver.cc, lily/ligature-engraver.cc:
8539         bugfix: avoid message "junking empty ligature" on ligature
8540         brackets by collecting dummy grobs.
8541
8542 2005-08-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8543
8544         * lily/tuplet-bracket.cc (print): default right overshoot to 0.0
8545
8546         * input/proportional.ly (staffKind): bugfix.
8547         (staffKind): updates by Trevor Baca.
8548
8549         * scm/define-grobs.scm (all-grob-descriptions): remove arrows as
8550         default layout. 
8551
8552         * lily/tuplet-bracket.cc (print): check whether edge-text is a
8553         pair.
8554
8555         * lily/beam.cc (rest_collision_callback): call position_beam() if
8556         necessary.
8557
8558         * VERSION: release 2.7.4
8559
8560         * input/regression/spacing-uniform-stretching.ly: new file.
8561
8562         * lily/spacing-loose-columns.cc (set_loose_columns): use robust_relative_extent().
8563
8564         * Documentation/topdocs/NEWS.tely (Top): add Nicolas as
8565         contributor.
8566
8567         * lily/include/ly-module.hh: define MODULE_GC_KLUDGE globally.
8568
8569         * input/proportional.ly: new file.
8570
8571         * lily/tuplet-bracket.cc (after_line_breaking): don't suicide if
8572         columns is empty
8573
8574         * lily/tuplet-engraver.cc (finalize): new function. Reset right
8575         bounds to currentCommandColumn for the last step.
8576         (start_translation_timestep): if tupletFullLength is set, set
8577         bound to Paper Column
8578
8579         * input/regression/tuplet-full-length.ly (indent): new file.
8580
8581         * lily/spacing-loose-columns.cc (set_loose_columns): space a whole
8582         clique of loose columns, eg. a set of grace notes in strict
8583         notespacing.
8584
8585         * input/regression/spacing-strict-spacing-grace.ly: new file.
8586
8587         * lily/key-signature-interface.cc: change property name to
8588         alteration-alist
8589
8590         * lily/key-engraver.cc (read_event): read keyAlterationOrder, not
8591         keyAccidentalOrder
8592
8593         * python/convertrules.py (conv): keyAccidentalOrder ->
8594         keyAlterationOrder
8595
8596         * lily/key-engraver.cc (create_key): always print a cancellation
8597         for going to C-major/A-minor, regardless of printKeyCancellation.
8598         (create_key): remove typecheck for visibility. This fixes key
8599         signature not being printed.
8600
8601         * lily/spacing-determine-loose-columns.cc: new file.
8602
8603         * input/regression/spacing-strict-notespacing.ly: new file.
8604
8605         * lily/spacing-spanner.cc (generate_springs): rename from
8606         do_measure. 
8607         (generate_pair_spacing): new function.
8608         (init, generate_pair_spacing): set between-cols for floating
8609         nonmusical columns.
8610
8611         * lily/spaceable-grob.cc (get_spring): new function. 
8612
8613         * lily/tuplet-bracket.cc (print): on the left, the overshoot is
8614         relative to the right edge of the prefatory matter.
8615
8616         * lily/beam.cc (print): read break-overshoot to determine where to
8617         stop/start broken beams.
8618
8619         * input/regression/spanner-break-overshoot.ly: new file.
8620
8621 2005-08-04  Graham Percival  <gperlist@shaw.ca>
8622
8623         * ly/bagpipe.ly: updated.
8624
8625         * Documentat/user/instrument.itely: un-comment out bagpipe example.
8626
8627 2005-08-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8628
8629         * lily/dynamic-engraver.cc (acknowledge_slur): add slur to
8630         support: now (de)crescs avoid slurs as well.
8631
8632         * Documentation/user/instrument-notation.itely (Bagpipe example):
8633         comment out non-functioning bagpipe example.
8634         (Bagpipe definitions): idem.
8635
8636         * Documentation/topdocs/NEWS.tely (Top): add uniform-stretching example.
8637         (Top): add proportionalNotationDuration example.
8638
8639         * input/regression/spacing-proportional.ly: new file.
8640
8641         * lily/tuplet-bracket.cc (parallel_beam): broken bracket never is
8642         synched to a beam.
8643
8644         * lily/beam.cc (shift_region_to_valid): divide by zero fix. This
8645         fixes beams with a single stem (eg. beams across linebreaks.)
8646
8647         * lily/parser.yy (simple_string): allow \new STRING_IDENTIFIER.
8648
8649         * flower/rational.cc (operator +): prevent overflow. This fixes
8650         heavily nested tuplets.
8651
8652         * lily/auto-beam-engraver.cc (derived_mark): new method. Yes. We
8653         have to protect even those unlikely to be corrupted data members.  
8654
8655 2005-08-04  Graham Percival  <gperlist@shaw.ca>
8656
8657         * ly/bagpipe.ly: new file.
8658
8659         * THANKS: added Sven Axelsson.
8660
8661 2005-08-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8662
8663         * lily/spacing-engraver.cc (stop_translation_timestep): directly
8664         copy proportionalNotationDuration into currentMusicalColumn if
8665         set.
8666
8667         * lily/spacing-spanner.cc (musical_column_spacing): if
8668         uniform-stretching set, fixed space is 0.0
8669
8670         * input/regression/spacing-multi-tuplet.ly: show
8671         uniform-stretching property.
8672
8673         * lily/spacing-spanner.cc (effective_shortest_duration): new function.
8674
8675         * lily/include/spacing-spanner.hh (class Spacing_spanner): new file.
8676         (struct Spacing_options): new struct.
8677
8678         * lily/spacing-basic.cc: new file.
8679
8680         * lily/spacing-spanner.cc (note_spacing): remove outdated code:
8681         delta_t doesn't have to be smaller than shortest_playing_len
8682
8683 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8684
8685         * input/regression/markup-arrows.ly:  new file.
8686
8687         * lily/tuplet-bracket.cc: document new behavior.
8688
8689         * input/regression/tuplet-broken.ly: new file. Demonstrate tuplets
8690         with line breaks.
8691
8692         * scm/define-markup-commands.scm (arrow-head): arrow-head markup command.
8693
8694         * scm/define-grobs.scm (all-grob-descriptions): set arrows as
8695         default 
8696
8697         * lily/tuplet-bracket.cc: add edge-text property.
8698         add break-overshoot.
8699         (print): read break-overshoot.
8700         (print): read edge-text, add stencils.
8701
8702         * mf/feta-arrow.mf: new file.
8703
8704         * mf/feta-generic.mf: add feta-arrow.
8705
8706 2005-08-03  Mats Bengtsson  <mabe@s3.kth.se>
8707
8708         * Documentation/user/lilypond-book.itely (An example of a
8709         musicological document): Added flag -o to dvips for people who use
8710         the default setting in teTeX where output is sent to the printer. 
8711
8712         * Documentation/user/global.itely (Vertical spacing): Added
8713         reference to the Axis_group_engraver which documents the *Extent
8714         properties.
8715
8716 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8717
8718         * Documentation/user/basic-notation.itely (Tuplets): add note
8719         about nested tuplets. Remove BUG. 
8720
8721         * input/regression/tuplet-nest.ly: update: remove manual hack. 
8722
8723         * lily/tuplet-bracket.cc (print): use robust_scm2drul
8724         (print): manually call print() for subtuplets.
8725         (calc_position_and_height): add subtuplets to the
8726         support. Vertically shift outer tuplet 
8727
8728         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): set
8729         remove-first for Lyrics, ChordNames and FiguredBass
8730
8731         * scm/define-grob-properties.scm (all-internal-grob-properties):
8732         use ly:grob-array? iso. grob-list?
8733         (all-internal-grob-properties): add tuplets grob-array.
8734
8735         * lily/tuplet-bracket.cc (add_tuplet_bracket):
8736         new function
8737
8738 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8739
8740         * input/test/time-signature-staff.ly: new file.
8741
8742         * ly/declarations-init.ly (center): escape to Scheme. Fixes
8743         spurious #<Music FingerEvent> errors. Backportme.
8744
8745 2005-08-03  Mats Bengtsson  <mabe@s3.kth.se>
8746
8747         * Documentation/user/programming-interface.itely (Markup
8748         construction in Scheme): Corrected markup syntax in the
8749         translation table.
8750
8751 2005-08-03  Graham Percival  <gperlist@shaw.ca>
8752
8753         * Documentation/user/instrument-notation.itely: small update
8754         to bagpipe notation docs; thanks Sven!
8755
8756         * Documentation/user/basic-notation.itely: add link about trills.
8757
8758 2005-08-02  Graham Percival  <gperlist@shaw.ca>
8759
8760         * Documentation/user/music-glossary: remove accidentally committed
8761         fink patch.
8762
8763 2005-08-02  Yoshinobu Ishizaki  <isizaki@mte.biglobe.ne.jp>
8764
8765         * lily/lily-parser.cc (get_header): new function. Enable multiple
8766         \header definitions.
8767
8768         * lily/parser.yy (lilypond_header_body): use get_header.
8769
8770         * ly/init.ly:
8771         * scm/lily-library.scm (print-score-with-defaults): renamed
8772         $globalheader to $defaultheader
8773             
8774         * Documentation/user/global.itely (Creating titles): added short
8775         explanation that multiple headers are useable.
8776
8777
8778 2005-08-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8779
8780         * lily/module-scheme.cc (LY_DEFINE): new file. 
8781
8782         * Documentation/user/advanced-notation.itely (Font selection): add
8783         doco for make-pango-font-tree.
8784
8785 2005-07-31  Graham Percival  <gperlist@shaw.ca>
8786
8787         * Documentation/user/music-glossary: more languages
8788         for tenuto.
8789
8790         * Docuemntation/user/instrument-notation.itely: minor
8791         update for bagpipe example.
8792
8793 2005-07-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8794
8795         * input/regression/+.ly (TODO): add some text.
8796
8797 2005-07-28  Graham Percival  <gperlist@shaw.ca>
8798
8799         * Documentation/user/invoking.itely: \score begins with music.
8800
8801         * Documentation/user/ basic-notation.itely,
8802         instrument-notation.itely: minor changes.
8803
8804         * Documentation/user/music-glossary.itely: began tenuto entry.
8805
8806 2005-07-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8807
8808         * scm/output-socket.scm (bezier-sandwich): add bezier-sandwich
8809
8810         * mf/feta-bolletjes.mf: swap up and down for aiken heads.
8811
8812 2005-07-27  Graham Percival  <gperlist@shaw.ca>
8813
8814         * Documentation/user/examples.itely: remove bagpipe template.
8815
8816         * Documentation/user/instrument-notation.itely: add bagpipe
8817         section, maybe fix quotes in lyrics.  I hate text encoding.
8818         Clarify chord durations, more bagpipe stuff.
8819
8820 2005-07-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8821  
8822         * lily/accidental-engraver.cc: formatting fixes.
8823
8824         * lily/spacing-spanner.cc (prune_loose_columns): right-items is a
8825         grob-array.
8826
8827         * lily/arpeggio.cc (print): suicide arpeggio for single notehead.
8828
8829         * lily/note-column.cc (arpeggio): new function.
8830
8831         * lily/note-spacing.cc (get_spacing): also take arpeggio into
8832         account for spacing.
8833
8834 2005-07-25  Jan Nieuwenhuizen  <janneke@gnu.org>
8835
8836         * lily/main.cc (sane_setenv)[!ARGV0_RELOCATION]: Also define.
8837         (setup_guile_env): Use it instead of nonstandard setenv.  Fixes
8838         mingw build.
8839         
8840 2005-07-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8841
8842         * scm/lily.scm (lilypond-all): clear anonymous modules after
8843         processing files.
8844
8845 2005-07-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8846
8847         * flower/include/guile-compatibility.hh (SCM_I_CONSP): add
8848         SCM_I_CONSP
8849
8850         * VERSION: 2.7.3 released
8851
8852         * Documentation/user/invoking.itely (Invoking lilypond): add
8853         LILYPOND_GC_YIELD documentation.
8854
8855         * lily/*: cleanups: use scm_from_int iso. scm_int2num. Idem for
8856         scm_from_real / scm_make_real.
8857
8858         * lily/main.cc (setup_guile_env): new function. Set GC min_yields
8859         higher. This increases memory footprint, but provides overall
8860         speedup of 15 to 20%. 
8861
8862         * lily/include/translator.hh (class Translator): remove
8863         PRECOMPUTED_VIRTUAL everywhere.
8864
8865         * lily/include/lily-guile.hh: inline scm_c[ad]r, scm_is_pair.
8866
8867         * lily/context.cc (now_mom): non-recursive now_mom() 
8868
8869         * lily/include/profile.hh: new file.
8870
8871         * lily/profile.cc: new file.
8872
8873         * lily/grob.cc (Grob::Grob): look properties up directly.
8874
8875         * lily/open-type-font.cc (get_indexed_char): cache index -> bbox
8876         lookups.
8877
8878         * lily/include/box.hh (class Box): smob Box type.
8879
8880         * lily/smobs.cc (protect_smob): O(1) GC (un)protection.
8881
8882         * lily/include/smobs.hh (DECLARE_BASE_SMOBS): add methods
8883         protect() and unprotect(). Use throughout.
8884
8885 2005-07-24  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8886
8887         * Documentation/topdocs/NEWS.tely: new item for \displayLilyMusic
8888
8889         * scm/define-music-display-methods.scm (markup->lily-string):
8890         markup elements can also be strings (without simple-markup
8891         appended)
8892
8893 2005-07-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8894
8895         * lily/context.cc (where_defined): also assign value in
8896         where_defined().
8897
8898         * lily/bezier.cc (get_other_coordinate): use curve_coordinate
8899         (curve_coordinate): new function
8900
8901         * lily/simple-spacer.cc (add_columns): only add rods between
8902         column i and begin/end if keep-inside-line is set (this repleces
8903         allow-outside-line as default)
8904
8905 2005-07-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8906
8907         * lily/tuplet-engraver.cc (start_translation_timestep): only read
8908         tupletSpannerDuration if applicable.
8909
8910         * lily/font-size-engraver.cc (process_music): read fontSize only
8911         once per timestep.
8912
8913         * lily/engraver*cc: use throughout.
8914         
8915         * lily/include/translator.icc (ADD_ACKNOWLEDGER): new macro.
8916
8917         * lily/translator.cc (add_acknowledger): new file. Directly jump
8918         into an Engraver::acknowledge_xxx () method based on a grobs
8919         interface-list.
8920
8921         * lily/include/translator-dispatch-list.hh (class
8922         Engraver_dispatch_list): new struct, new file.
8923
8924         * scm/define-context-properties.scm
8925         (all-internal-translation-properties): remove acceptHashTable,
8926         acknowledgeHashTable
8927
8928         * lily/translator-group.cc (mark_smob): idem for acceptHashTable.
8929
8930         * lily/engraver-group-engraver.cc (Engraver_group_engraver):
8931         change acknowledgeHashTable to C++ member. 
8932
8933         * lily/rest-collision.cc (do_shift): use extract_grob_set().
8934
8935 2005-07-22  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8936
8937         * scm/display-lily.scm: new file. Define a `display-lily-music'
8938         function, that displays the music expression given as an argument,
8939         using LilyPond notation.
8940
8941         * scm/define-music-display-methods.scm: new file. Implementation
8942         of display methods for each music type.
8943
8944         * ly/music-functions-init.ly (displayLilyMusic): new function for
8945         displaying music with LilyPond notation.
8946
8947         * input/regression/display-lily-tests.ly: new regression test file
8948         for `display-lily-music'.
8949
8950         * scm/markup.scm: remove obsolete debugging code (for printing
8951         markups with LilyPond notation).
8952
8953         * scm/define-music-types.scm (music-name-to-property-table):
8954         * scm/clef.scm (supported-clefs): export, in order to be accessible
8955         from the (scm display-lily) module.
8956
8957 2005-07-22  Jan Nieuwenhuizen  <janneke@gnu.org>
8958
8959         * Documentation/topdocs/NEWS.tely (Top): Typo.
8960
8961 2005-07-22  Heikki Junes  <hjunes@cc.hut.fi>
8962
8963         * Documentation/index.html.in, Documentation/texinfo.css,
8964           stepmake/bin/text2html.py, buildscripts/mutopia-index.py,
8965           Documentation/bibliography/index.html.in,
8966           Documentation/bibliography/html-long.bst: revert css-width patch,
8967           it does not work with IE6.
8968
8969 2005-07-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8970
8971         * Documentation/texinfo.css: revert 760px hack. 
8972
8973         * VERSION: release 2.7.2
8974
8975         * Documentation/topdocs/NEWS.tely (Top): mention barNumberCheck
8976
8977         * Documentation/user/basic-notation.itely (Barnumber check): add
8978         section.
8979
8980         * scm/music-functions.scm (skip-to-last): new function. Show only
8981         last showLastLength part of the \score.
8982
8983         * lily/moment-scheme.cc (LY_DEFINE): new function ly:moment-sub
8984
8985         * python/convertrules.py (conv): add ly:x-moment rule
8986
8987         * lily/moment-scheme.cc (LY_DEFINE): rename ly:X-moment  -> ly:moment-X
8988
8989         * Documentation/topdocs/NEWS.tely (Top): add new feature.
8990
8991         * Documentation/user/instrument-notation.itely (Flexibility in
8992         alignment): options in subsections.
8993
8994         * lily/lyric-engraver.cc (process_music): don't typeset text for _
8995         syllable text. Instead, assume that the previous lyric text is a
8996         melismated text.
8997
8998         * Documentation/index.html.in: revert 800x600 change.
8999
9000 2005-07-19  Jan Nieuwenhuizen  <janneke@gnu.org>
9001
9002         * lily/main.cc (main): Remove invalid handle kludge.
9003
9004         * scm/lily.scm (running-from-gui?): WINDOWS: check -dgui.
9005         (lambda): add gui define.
9006
9007 2005-07-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9008
9009         * Documentation/topdocs/NEWS.tely (Top): add note about Musica ficta.
9010
9011         * Documentation/user/instrument-notation.itely (Musica ficta
9012         accidentals): add section Musica ficta accidentals
9013
9014         * lily/accidental-engraver.cc (make_suggested_accidental): new
9015         function.
9016         (make_standard_accidental): move into new function.
9017         (create_accidental): new function.
9018
9019         * scm/define-grobs.scm (all-grob-descriptions): new Grob
9020         AccidentalSuggestion
9021
9022         * lily/output-def-scheme.cc (LY_DEFINE): take default  argument.
9023
9024         * lily/output-def.cc (lookup_variable): return SCM_UNDEFINED if
9025         undefined.
9026
9027         * Documentation/user/global.itely (Page formatting): document
9028         horizontalshift.
9029
9030         * scm/page-layout.scm (default-page-music-height):
9031         horizontalshift: new variable, shift all systems by
9032         horizontalshift to the right, to make space for instrument names.
9033
9034         * scm/paper.scm (set-paper-dimension-variables): add horizontalshift
9035
9036         * lily/input-scheme.cc (LY_DEFINE): take format commands.
9037
9038 2005-07-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9039
9040         * lily/note-column.cc (dir): idem.
9041
9042         * lily/spacing-spanner.cc (Module): idem.
9043
9044         * lily/script-column.cc (before_line_breaking): use extract_grob_set()
9045
9046         * lily/include/paper-column.hh (class Paper_column): add
9047         non-static get_rank() member.
9048
9049         * VERSION: release 2.7.1
9050         
9051         * scm/framework-null.scm: new file, used for benchmarking.
9052
9053 2005-07-20  Heikki Junes  <hjunes@cc.hut.fi>
9054
9055         * Documentation/topdocs/INSTALL.texi, configure.in: fix
9056         version dependencies for fontforge and gs.
9057
9058         * Documentation/index.html.in, Documentation/texinfo.css,
9059         stepmake/bin/text2html.py, buildscripts/mutopia-index.py,
9060         Documentation/bibliography/index.html.in, 
9061         Documentation/bibliography/html-long.bst: optimize width of
9062         html for a 800x600 screen (width:760), increases printability
9063         when 'fit to page' is not set and readability in wide screens.
9064
9065         * stepmake/bin/add-html-footer.py: add missing </p>.
9066
9067 2005-07-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9068
9069         * scm/define-markup-commands.scm (beam): use polygon in beam
9070         command.
9071
9072         * lily/grob-pq-engraver.cc (stop_translation_timestep): save up
9073         all acknowledged grobs, and do potentially expensive merge and
9074         write in one go.
9075
9076         * buildscripts/mf-to-table.py (write_fontlist): enforce noBreak.
9077
9078         * configure.in (reloc_b): add --enable-static-gxx to statically
9079         link to libstdc++
9080
9081         * lily/GNUmakefile (static-gxx-libs): new target
9082         static-gxx-libs. Create symlink to libstdc++.a
9083
9084         * lily/new-lyric-combine-music-iterator.cc: rename to
9085         Lyric_combine_music_iterator
9086
9087         * lily/lyric-combine-music-iterator.cc
9088         (Old_lyric_combine_music_iterator): rename to
9089         Old_lyric_combine_music_iterator
9090
9091         * lily/*-engraver.cc (various): remove double use of
9092         PRECOMPUTED_VIRTUAL function: only use
9093         start_translation_timestep() and stop_translation_timestep(), not
9094         both.
9095
9096         * lily/break-substitution.cc (fast_substitute_grob_array): do
9097         fast_substitute_grob_array for all unordered grob_arrays.
9098         (substitute_grob): return Grob *. Saves packing/unpacking SCMs.
9099         (substitute_grob_array): optimize.
9100
9101         * lily/align-interface.cc (set_axis): set ordered_ for 'elements
9102
9103         * lily/include/grob-array.hh (class Grob_array): ordered_ member.
9104
9105         * lily/parser.yy: revert $globalheader patch.
9106         
9107         * lily/include/translator.icc
9108         (IMPLEMENT_FETCH_PRECOMPUTABLE_METHODS): directly jump into
9109         Translator methods, without _static helper.
9110  
9111         * lily/grob-smob.cc (derived_mark): rename from
9112         do_derived_mark(). Return void.
9113
9114         * scm/define-context-properties.scm
9115         (all-internal-translation-properties): remove tweakCount/tweakRank.
9116
9117         * scm/output-lib.scm (begin-of-line-invisible): use vectors for
9118         predefined break-visibilities.
9119
9120         * lily/item.cc (handle_prebroken_dependencies): use a vector of 3
9121         booleans for break-visibility.
9122
9123         * Documentation/topdocs/NEWS.tely (Top): add note about engravers.
9124
9125         * python/convertrules.py (conv): rule for Timing_translator. 
9126
9127         * lily/include/translator.icc: new file. 
9128
9129         * lily/paper-column-engraver.cc (process_music): new
9130         file. Separate Paper_column factory from Score_engraver.
9131
9132         * lily/vertically-spaced-context-engraver.cc: administer
9133         spaceable-staves property of System.
9134
9135         * lily/translator-group-ctors.cc: new file.
9136
9137         * lily/context-property.cc (make_grob_from_properties): construct
9138         the right Grob class programmatically, looking at the class entry
9139         for the meta property.
9140
9141         * lily/break-align-engraver.cc (stop_translation_timestep): call
9142         Break_align_interface::add_element() directly.
9143
9144         * lily/context.cc (measure_position): measure_position() is now a
9145         normal function.
9146
9147         * lily/include/translator.hh (class Translator): rename
9148         process_acknowledged_grobs() to process_acknowledged() and move to
9149         Translator.
9150
9151         * scm/define-grobs.scm (all-grob-descriptions): add a 'class meta
9152         field for each grob description.
9153
9154         * lily/include/translator-group.hh (class Translator_group):
9155         change to base class. Separate class from Translator. This gets
9156         rid of virtual inheritance for Engravers/Performers.
9157
9158         * lily/staff-performer.cc (class Staff_performer): derive
9159         Staff_performer from Performer, not Performer_group_performer 
9160
9161         * Lily/translator-group.cc (precomputed_recurse_over_translators):
9162         new function.
9163         (precompute_method_bindings): new function. Precompute lists of
9164         Translators, so we only call methods (process_music,
9165         start_translation_timestep, etc.) for Translators needing
9166         it. Also: dispose of pointer-to-member-function calls.
9167
9168         * lily/engraver-group-engraver.cc: remove engraver_each,
9169         recurse_down_engravers ()
9170
9171         * lily/note-head.cc (internal_print): only call
9172         glyph-name-procedure if style != default. 
9173
9174 2005-07-16  Graham Percival  <gperlist@shaw.ca>
9175
9176         * ly/titling-init.ly: add printallheaders option.
9177
9178         * Documentation/user/global.itely: document printallheaders.
9179
9180 2005-07-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9181
9182         * lily/system.cc (do_derived_mark): don't mark from object_alist_
9183         anymore, but do it centrally.  
9184
9185         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
9186         hammer hack.
9187
9188         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-object
9189
9190         * scm/output-lib.scm: remove hammer-print-function.
9191
9192         * lily/include/pointer-group-interface.hh (extract_grob_set): new
9193         macro. Declare a Link_array<Grob> and fill it from a grob.
9194         (extract_item_set): idem for item.
9195
9196         * lily/break-substitution.cc: add header.
9197         (fast_substitute_grob_array): rewrite for Grob_arrays.
9198         (substitute_grob_array): idem.
9199
9200         * lily/group-interface.cc (add_thing): remove file.
9201
9202         * flower/include/parray.hh (class Link_array): slice() is const.
9203
9204         * lily/include/grob-array.hh: new file.
9205
9206         * lily/grob-array.cc (spanner): new file.
9207
9208         * lily/beam-quanting.cc (fill): read details property from beam.
9209
9210         * lily/beam.cc: support details property.
9211
9212         * total speedups below: approx 10%.
9213
9214         * lily/include/beam.hh: new struct, softcode beam quanting parameters
9215
9216         * lily/include/grob.hh (class Grob): add interfaces_ member.
9217
9218         * lily/bezier.cc (init_polynomial_cache): new function: cache
9219         binom(3,j) t^j (1-t)^{3-j}
9220         (curve_point): opps, actually use the cache for t^j , (1-t)^j! 
9221
9222         * lily/*.cc: substitution throughout.
9223
9224         * lily/grob-property.cc (internal_get_object): new routine.
9225         (internal_set_object): idem. Store grob refrences in separate
9226         alist. This saves processing time, since properties aren't
9227         break-substituted, and the per grob namespace is smaller, both for
9228         grobs and non-grob properties.
9229
9230         * scm/define-grob-properties.scm (all-internal-grob-properties):
9231         remove center-element.
9232
9233         * lily/grob.cc: remove tweak-count, tweak-rank.
9234
9235 2005-07-15  Graham Percival  <gperlist@shaw.ca>
9236
9237         * Documentation/user/lilypond-book.itely: fixes example.
9238
9239 2005-07-15  Nicolas Sceaux  <nicolas.sceaux@free.fr>
9240
9241         * Documentation/user/global.itely (Creating titles):    
9242         * Documentation/user/examples.itely (All headers): change the
9243         place of \header in \score blocks (after music block) to make
9244         examples compile (cf. changes on parser.yy on 2005-07-10)
9245
9246 2005-07-13  Graham Percival  <gperlist@shaw.ca>
9247
9248         * python/convertrules.py: add exc -> ecc rule.
9249
9250         * scripts/convert-ly.py: add location of convertrules.py
9251         in a comment.
9252
9253         * Documentation/user/changing-defaults.itely: fix language.
9254
9255 2005-07-12  Jan Nieuwenhuizen  <janneke@gnu.org>
9256
9257         * lily/lily-parser-scheme.cc (LY_DEFINE): Guile 1.6 fix.
9258
9259 2005-07-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9260
9261         * scm/output-socket.scm (grob-bbox): don't use inf? 
9262
9263         * flower/include/rational.hh: add operator bool() 
9264
9265         * scm/define-music-types.scm (music-descriptions): remove
9266         internal-class-name properties.
9267
9268         * lily/include/event.hh: remove file.
9269
9270         * lily/include/music-constructor.hh: remove file.
9271
9272         * lily/parser.yy (Lily_lexer): check EVENT_IDENTIFIER using 'event
9273         in 'types property.
9274
9275         * lily/music.cc (duration_length_callback): new function.
9276
9277         * lily/event.cc: remove file.
9278
9279         * lily/music-constructor.cc: remove file.
9280
9281         * lily/music-scheme.cc (LY_DEFINE): rename to ly:make-music
9282
9283         * lily/context.cc (get_grob_key): nop if use_object_keys not set.
9284         (get_context_key): idem.
9285
9286         * scm/lily.scm (lambda): new option object-keys (default to #f)
9287
9288         * scm/output-svg.scm (utf-8-string): rename  from utf8-string.
9289
9290         * scm/output-gnome.scm: remove beam routine.
9291
9292         * scm/output-ps.scm (scm): idem.
9293
9294         * scm/output-svg.scm: remove beam.
9295
9296         * ps/music-drawing-routines.ps: remove draw_beam.
9297
9298         * lily/lookup.cc (beam): use round_filled_polygon() for beam.
9299
9300         * flower/include/guile-compatibility.hh (scm_from_locale_string):
9301         add scm_from_locale_string compatibility glue. 
9302
9303 2005-07-13  Yoshinobu Ishizaki  <isizaki@mte.biglobe.ne.jp>
9304
9305         * scripts/lilypond-book.py: Prevent occuring error when
9306         'lilypond-book --output=foo/ somefile.ly' is executed multiple
9307         times and target file shoud be overwritten.  (Error message said
9308         'input file and output file is same'.)
9309
9310 2005-07-13  Graham Percival  <gperlist@shaw.ca>
9311
9312         * input/regression/slur-extreme.ly,
9313         input/regression/slur-scoring.ly, lily/slur-configuration.cc,
9314         lily/slur.cc, mf/feta-din-code.mf, mf/feta-timesig.mf,
9315         mf/parmesan-heads.mf, scm/define-grob-properties.scm: Change
9316         "excentricity" to "eccentricity".
9317
9318         * Documentation/user/converters.itely: fix URL for Noteedit and
9319         Rosegarden.
9320
9321         * THANKS: added Yoshinobu Ishizaki.
9322
9323 2005-07-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9324
9325         * scm/define-markup-commands.scm (justify-field): add. 
9326
9327         * scm/define-grobs.scm (all-grob-descriptions): decrease font size.
9328
9329 2005-07-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9330
9331         * lily/lookup.cc (filled_box): express filled_box with
9332         round_filled_box
9333
9334         * scm/midi.scm (paper-book-write-midis): new function. Write all
9335         performances in numbered MIDI files.
9336
9337         * lily/performance-scheme.cc (LY_DEFINE): new file.
9338         (LY_DEFINE): new function ly:performance-write.
9339
9340         * lily/lily-parser-scheme.cc (LY_DEFINE): ly:parser-output-name:
9341         new function.
9342         (LY_DEFINE): change name ly:parser-define -> ly:parser-define!
9343
9344         * scm/framework-*.scm: use port arguments throughout.
9345
9346         * lily/include/lily-guile.hh: rename ly_c_X_p -> ly_is_X
9347
9348         * lily/paper-outputter.cc (Paper_outputter): take port argument.
9349
9350         * lily/paper-outputter-scheme.cc (LY_DEFINE): take port argument.
9351
9352         * scm/framework-texstr.scm (output-framework): 
9353
9354         * input/regression/repeat-fold.ly (texidoc): remove TeX strings.
9355
9356         * scm/output-lib.scm (tablature-stem-attachment-function):
9357         tablature stem attachment fix. 
9358
9359 2005-07-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9360
9361         * lily/bezier.cc: hardcode binomial coefficients of order 3.
9362
9363         * lily/include/music-wrapper.hh: remove Music_wrapper as Music subtype.
9364
9365         * scm/define-music-types.scm (music-descriptions): don't use
9366         Music_wrapper type.
9367
9368         * lily/paper-column.cc (print): print moment too.
9369
9370         * scripts/mup2ly.py (cp_to_dir): remove 1.5.2 compat glue.  
9371         remove compatibility cruft.
9372
9373         * lily/parser.yy (score_body): \score can only begin with Music. 
9374
9375         * lily/score-scheme.cc (LY_DEFINE): rename scorify to
9376         make-score. Take music argument only. Move parser interaction to
9377         Scheme.
9378
9379         * scm/lily-library.scm (scorify-music): new function.
9380
9381         * python/lilylib.py (datadir): remove 2.1 compat kludge.
9382         (datadir): remove resource import.
9383         (print_environment): remove get_bbox()
9384         (cp_to_dir): remove pre 1.5.2 compat glue.
9385
9386 2005-07-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9387
9388         * lily/include/simple-spacer.hh (Module): idem.
9389
9390         * lily/include/spring.hh (struct Spring): store inverse
9391         strength. This prevents division by zero.
9392
9393         * VERSION: release 2.7.0
9394         
9395         * lily/include/music.hh (class Music): remove Music::duration_log()
9396
9397         * lily/stem-engraver.cc (make_stem): take duration log from event.
9398
9399         * lily/chord-tremolo-engraver.cc: don't ack note-head-interface.
9400
9401 2005-07-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9402
9403         * scm/lily.scm (ly:load): load autochange.scm
9404
9405         * Documentation/user/tutorial.itely (Running LilyPond for the
9406         first time): remove reference to DVI/TeX
9407
9408         * scm/define-markup-commands.scm (text): add \text markup command.
9409
9410         * configure.in (reloc_b): bump requirement to Python 2.2.
9411
9412         * lily/include/dots.hh (class Dots): make has_interface() static.
9413
9414         * python/convertrules.py (conv): add rule for ly:grob-default-font
9415
9416         * scm/define-grobs.scm (all-grob-descriptions): reorganize in
9417         alphabetical order.
9418
9419         * input/regression/trill-spanner-pitched.ly: new file.
9420
9421         * lily/font-interface-scheme.cc (LY_DEFINE): function
9422         ly:grob-default-font (changed from get-default-font).
9423
9424         * lily/axis-group-interface-scheme.cc (LY_DEFINE): new file.
9425
9426         * lily/note-head.cc (internal_print): if style is not a symbol,
9427         set style to 'default. 
9428         (internal_print): no style suffix if glyph-name-procedure not
9429         set. Default to quarter head.
9430
9431         * scm/define-grobs.scm (Module): new grob TrillPitchHead.
9432
9433         * scm/define-music-properties.scm (all-music-properties): add trill-pitch.
9434
9435         * ly/music-functions-init.ly: \pitchedTrill
9436
9437         * lily/pitched-trill-engraver.cc (acknowledge_grob): new file.
9438
9439         * ly/Welcome_to_LilyPond.ly: update to 2.6.0
9440
9441         * lily/trill-spanner-engraver.cc (finalize): rename req -> event
9442
9443         * scm/define-markup-commands.scm (pad-markup): pad-markup command.
9444
9445         * po/fr.po: update
9446
9447         * po/de.po: update.
9448
9449 2005-07-06  Graham Percival  <gperlist@shaw.ca>
9450
9451         * Documentation/user/changing-defaults.itely: add link
9452         to grob-iterface.
9453
9454         * Documentation/user/advanced-notation.itely: add material
9455         to Setting automatic beam behaviour.  Thanks, Joe!
9456
9457         * Documentation/user/lilypond.itely: change encoding to utf-8.
9458
9459 2005-07-01  Mats Bengtsson  <mabe@s3.kth.se>
9460
9461         * Documentation/user/advanced-notation.itely (Setting automatic
9462         beam behavior): Correct the documentation of
9463         revert-auto-beam-setting (backportme)
9464
9465 2005-07-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9466
9467         * lily/ly-module.cc (ly_make_anonymous_module): define
9468         %module-public-interface of module. 
9469
9470         * lily/lily-parser.cc (print_smob): allow printing of parser smob
9471         without lexer.
9472
9473 2005-07-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9474
9475         * input/regression/fret-diagrams.ly: stretch example.
9476
9477 2005-06-30  Jan Nieuwenhuizen  <janneke@gnu.org>
9478
9479         * cygwin/GNUmakefile ($(outdir)/%.sh): Bugfix: use TAB (Bertalan
9480         Fodor).
9481
9482 2005-06-30  Graham Percival  <gperlist@shaw.ca>
9483
9484         * Documentation/topdocs/AUTHORS.texi: update personal web address.
9485
9486         * Documentation/user/examples.itely, lilypond-book.itely:
9487         change \RequirePackage to \usepackage.
9488
9489         * Documentation/user/global.itely: document copyright and tagline.
9490
9491 2005-06-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9492
9493         * Documentation/user/basic-notation.itely (Transpose): remove link
9494         to nonexistent UntransposableMusic.
9495
9496         * scm/output-svg.scm: remove old definitions.
9497
9498         * scripts/lilypond-book.py (do_file): search for kpsewhich before
9499         invoking.
9500
9501         * python/lilylib.py (search_exe_path): new function.
9502
9503 2005-06-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9504
9505         * python/lilylib.py (mkdir_p): remove setup_environment()
9506         (backportme)
9507
9508         * buildscripts/mutopia-index.py (headertext): trim text.
9509
9510         * Documentation/topdocs/NEWS.tely (Top): refresh.
9511
9512         * scm/define-markup-commands.scm (wordwrap-string): new function:
9513         split string in paras and words.
9514         (wordwrap-markups): new function.
9515         (wordwrap-stencils): new function. 
9516         (justify): use it.
9517         (wordwrap): use it.
9518         (wordwrap-string): use it
9519         (justify-string): use it.
9520
9521         * scm/lily-library.scm (regexp-split): new function.
9522
9523         * scm/define-markup-commands.scm: remove encoded-simple. 
9524         remove font-markup.
9525         (fontsize): remove old version  of fontsize.
9526         (wordwrap): new markup function. Wrap into paragraphs.
9527
9528         * VERSION: Branch lilypond_2_6
9529         (MINOR_VERSION): go to 2.7.0
9530
9531 2005-06-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9532
9533         * po/zh_TW.po: update from translation project.
9534
9535 2005-06-28  Graham Percival  <gperlist@shaw.ca>
9536
9537         * scm/midi.scm: compile fix.
9538
9539 2005-06-28  Mats Bengtsson  <mabe@s3.kth.se>
9540
9541         * scripts/lilypond-book.py : Fix embarrassing bug in my previous
9542         patch. Now, the tempfile module is loaded too, not only used.
9543
9544 2005-06-28  Stephen Charles McCarthy  <stecmccarthy@hotpop.com>
9545
9546         * scm/midi.scm: changed midi volumes in absolute-volume-alist from
9547         0.05 - 1.00 to 0.25 - 1.00
9548
9549         * scm/midi.scm: moved the default-instrument-equalizer procedure
9550         to just under the insturment-equalizer-alist it takes as an
9551         argument.
9552
9553 2005-06-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9554
9555         * Documentation/user/advanced-notation.itely (Font selection):
9556         remove CMR note.
9557
9558         * scm/framework-ps.scm (write-preamble): ly:warning iso. ly:warn 
9559
9560 2005-06-28  Jan Nieuwenhuizen  <janneke@gnu.org>
9561
9562         * THANKS: Add UTF-8 marker.
9563
9564         * Documentation/user/point-and-click.itely (http): Update: use
9565         lilypond-invoke-editor.  Fix: instruct to use user.js.
9566
9567 2005-06-27  Graham Percival  <gperlist@shaw.ca>
9568
9569         * ly/titling-init.ly: implements printpagenumber, increases
9570         space between dedication and title (to avoid collisions with
9571         "g" and "q" in dedication), and nicer logic about copyright
9572         and instrument fields being printed on the first page.
9573         Thanks Vincent!
9574
9575         * Documentation/user/global.itely: document printpagenumber.
9576
9577 2005-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
9578
9579         * Documentation/topdocs/NEWS.tely: Update to 2.6.
9580
9581 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9582
9583         * THANKS: update to 2.6
9584
9585         * VERSION: 2.6.0 released.
9586
9587 2005-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
9588
9589         * cygwin/GNUmakefile (OUT_POSTREMOVES): Reinclude install script
9590         rule, errorneously removed probably because of misleading comment.
9591
9592 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9593
9594         * python/lilylib.py (datadir): py2exe comments.
9595
9596         * Documentation/topdocs/INSTALL.texi (Top): remove EC fonts requirement.
9597
9598         * configure.in (reloc_b): make fontconfig REQUIRED.
9599
9600 2005-06-27  Heikki Junes <hjunes@cc.hut.fi>
9601
9602         * po/fi.po: add latest translations.
9603
9604 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9605
9606         * ChangeLog: recode utf-8
9607
9608         * Documentation/pictures/lilypond.xpm (Module): edited photo as
9609         logo.
9610
9611         * Documentation/user/examples.itely (Module): 2.4.0 -> 2.6.0
9612
9613         * input/*.ly (Module): 2.4 -> 2.6 grand convert-ly s/r. 
9614
9615         * python/convertrules.py (do_conversion): don't print program_name
9616         from within a module
9617
9618         * configure.in (reloc_b): bump fontforge requirement to 20050624.
9619
9620         * python/convertrules.py (conv): add 2.6.0 dummy rule.
9621
9622 2005-06-23  Graham Percival  <gperlist@shaw.ca>
9623
9624         * Documentation/user/lilypond-book.itely,
9625         Documentation/user/examples.itely: add \RequirePackage{graphics}.
9626
9627         * ly/titling.ly: checks printfirstpagenumber, adds meter, and
9628         fixes baseline-skip.  Thanks Vincent!
9629
9630         * Documentation/user/advanced-notation.itely, global.itely:
9631         moved "Selecting font sizes" to global, since it deals with
9632         notation font size, not text fonts.
9633
9634 2005-06-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9635
9636         * buildscripts/gen-emmentaler-scripts.py (notice): add GPL notice
9637         to fonts.
9638
9639 2005-06-23  Mats Bengtsson  <mabe@s3.kth.se>
9640
9641         * scripts/lilypond-book.py (LATEX_DOCUMENT): More or less ugly
9642         workaround since /dev/stdin doesn't work on Cygwin. Using a
9643         temporary file in the current directory since latex doesn't
9644         understand the path name to the default TMP in Cygwin (at least on
9645         win XP).
9646         
9647         * Documentation/user/global.itely (Creating titles): Correct
9648         misprint in example. Thanks to Rob Vlasaty.
9649
9650 2005-06-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9651
9652         * VERSION (PATCH_LEVEL): release 2.5.32
9653
9654         * lily/lily-parser-scheme.cc (LY_DEFINE): don't set 'parser
9655         variable in lily module
9656
9657         * scm/framework-ps.scm (output-classic-framework): error message
9658         regarding the classic framework.
9659
9660         * Documentation/user/henle-flat-gray.png (Module): new file.
9661
9662         * Documentation/user/baer-flat-gray.png (Module): new file.
9663
9664         * scm/output-lib.scm (fret-number-tablature-format): vcenter and
9665         whiteout for markups.
9666
9667         * buildscripts/substitute-encoding.py (note_glyph): include _ in
9668         regex too. This fixes change clef appearance in PDF. 
9669
9670         * ttftool/include/*: remove.
9671
9672         * configure.in (reloc_b): remove TTFTOOL_ENDIAN
9673
9674         * config.make.in (WINDRES): remove TTFTOOL_ENDIAN.
9675
9676         * lily/GNUmakefile (MODULE_INCLUDES): remove ttftool
9677
9678         * ttftool/*: remove ttftool subdirectory.
9679
9680         * GNUmakefile.in (SUBDIRS): remove ttftool subdirectory.
9681
9682         * lily/ttf.cc (print_header): new file. Convert to type42, using
9683         FreeType to parse the TTF. 
9684
9685         * ttftool/parse.c (readPostTable): ugh. Kludge: nglyphs in maxp
9686         and post table may differ. Pass around post_nglyphs as well.
9687
9688 2005-06-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9689
9690         * ly/music-functions-init.ly (musicMap): new music function
9691         musicMap. 
9692         
9693 2005-06-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9694
9695         * make/mutopia-rules.make: anti-alias-factor = 2
9696
9697         * scm/ps-to-png.scm (make-ps-images): cleanup multipage vs. single
9698         page switch.
9699
9700         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): set
9701         anti-alias-factor for lilypond-book runs.
9702
9703         * scm/ps-to-png.scm (scale-down-image): new function.
9704         (my-system): new function.
9705         (make-ps-images): blow up GS resolution by anti-alias-factor,
9706         scale down image by anti-alias-factor.  This improves appearance
9707         of bitmaps
9708         (make-ps-images): remove showpage. Fixes spurious empty png at
9709         end.
9710
9711         * scm/framework-ps.scm (write-preamble): downcase filename before
9712         string-matching. Should fix .TTF files (as opposed to ttf files)  
9713
9714         * Documentation/user/tutorial.itely (Running LilyPond for the
9715         first time): separate subsections for windows, macos and unix.  
9716
9717         * Documentation/user/invoking.itely (Updating files with
9718         convert-ly): add MacOS X note.
9719
9720 2005-06-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9721
9722         * Documentation/user/introduction.itely (Engraving): don't include
9723         file optical-spacing, add directly.
9724
9725         * lily/paper-outputter.cc (file): open file in binary mode. This
9726         fixes OTF embedding on windows.
9727
9728 2005-06-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9729
9730         * scm/framework-ps.scm (write-preamble): remove debugging output.
9731
9732         * mf/aybabtu.pe.in (i): don't generate aybabtu.cff
9733
9734         * mf/GNUmakefile ($(outdir)/fonts.cache-1): create font cache for
9735         outdir.
9736         (install-fc-cache): install font cache in installation directories.
9737
9738 2005-06-17  Jan Nieuwenhuizen  <janneke@gnu.org>
9739
9740         * scm/editor.scm (editor-command-template-alist): Use char iso
9741         column, except for Emacs.
9742         (get-editor-command): Substitute char too (Bertalan Fodor).
9743
9744 2005-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
9745
9746         * scm/ps-to-png.scm (make-ps-images): Use ~S instead of single
9747         quoted ~s.  This should fix PNG output on Windows; single quotes
9748         are regular characters on Windows.
9749
9750 2005-06-16  Graham Percival  <gperlist@shaw.ca>
9751
9752         * Documentation/user/basic-notation.itely: include ChoirStaff
9753         in System start delimiters.
9754
9755         * Documentation/user/putting.itely: new doc section on
9756         fixing overlapping notation.
9757
9758 2005-06-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9759
9760         * Documentation/user/global.itely (Paper size): \paper is in
9761         \book, not \score.
9762
9763         * make/mutopia-rules.make: -ddelete-intermediate-files
9764
9765         * ly/engraver-init.ly: make Staff default child of ChoirStaff.
9766
9767 2005-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
9768
9769         * ChangeLog: Recode utf-8.
9770
9771         * python/GNUmakefile (INSTALLATION_OUT_DIR): Install .so module in
9772         datadir with .py modules.
9773
9774 2005-06-15  Heikki Junes  <hjunes@cc.hut.fi>
9775
9776         * Documentation/user/basic-notation.itely (Ties): add tieDashed.
9777
9778 2005-06-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9779
9780         * make/mutopia-rules.make: switch off ps, p&c for lilypond runs.
9781         
9782         * scm/framework-ps.scm (write-preamble): remove status check.
9783
9784         * Documentation/user/invoking.itely (Updating files with
9785         convert-ly): remove -o option.
9786
9787         * VERSION (PACKAGE_NAME): release 2.5.31
9788
9789         * scm/framework-ps.scm (write-preamble): use ly:system.
9790         (write-preamble): verbosity.
9791
9792         * scripts/convert-ly.py: cleanup. Use lilylib. Use convertrules.
9793
9794         * python/convertrules.py: new file. Store conversion rules
9795         separately.
9796
9797 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9798
9799         * scm/backend-library.scm (postprocess-output): remove debugging gobs.
9800
9801 2005-06-14  Mats Bengtsson  <mabe@s3.kth.se>
9802
9803         * Documentation/topdocs/NEWS.tely (Top): Corrected name of
9804         \musicDisplay 
9805
9806         * Documentation/user/instrument-notation.itely (More stanzas): Add
9807         reference to StanzaNumber.
9808
9809 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9810
9811         * THANKS: separate section for website translators.
9812
9813 2005-06-14  Graham Percival  <gperlist@shaw.ca>
9814
9815         * Documentation/topdocs/INSTALL.texi: update vim info;
9816         thanks Simon Bailey!
9817
9818         * Documentation/user/advanced-notation.itely: included
9819         color names.
9820
9821         * Documentation/user/advanced-notation.itely,
9822         Documentation/usr/notation-appendices.itely: moved
9823         color names into an appendix.
9824
9825 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9826         
9827         * lily/program-option.cc (LY_DEFINE): new function ly_add_option.
9828
9829         * scm/lily.scm (lambda): initialize program options from here.
9830
9831         * scm/framework-*.scm: add header info.
9832
9833         * lily/main.cc (parse_argv): only set output format to pdf if no
9834         other format specified.
9835
9836         * scm/backend-library.scm (postprocess-output): process
9837         'delete-intermediate-files after running convert-to-*. This fixes
9838         PNG generation when 'delete-intermediate-files is set.
9839         
9840 2005-06-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9841
9842         * buildscripts/mutopia-index.py (list_item): thinko. Fixes png
9843         links on website. 
9844
9845 2005-06-13  Graham Percival  <gperlist@shaw.ca>
9846
9847         * Documentation/topdocs/INSTALL.texi,
9848         Documentation/user/lilypond-book.itely: typos.
9849
9850 2005-06-12  Pal Benko  <benkop@freestart.hu>
9851
9852         * elisp/lilypond-mode.el (LilyPond-command-alist: 2PS): space
9853         added between program name and switch; -b changed to -f not
9854         to generate pdf
9855
9856 2005-06-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9857
9858         * elisp/lilypond-mode.el (LilyPond-command-alist): remove 2midi
9859         (LilyPond-command-alist): use -f ps (thanks to Pal Benko)
9860
9861         * input/sakura-sakura.ly: add \midi.
9862
9863         * buildscripts/mutopia-index.py (find): use /usr/bin/find
9864         iso. python find. 
9865
9866         * ttftool/test.c (main): cosmetics.
9867
9868         * ttftool/util.c (surely_lseek): use stdio FILE's for I/O 
9869
9870         * ttftool/test.c: new file. If compiled with -DTEST_TTFTOOL,
9871         create a ttf2ps binary.
9872
9873         * scm/ps-to-png.scm (make-ps-images): fix rename-page-1 functionality.
9874
9875         * scm/backend-library.scm (postscript->png): set rename-page-1 to
9876         true.
9877
9878 2005-06-11  Graham Percival <gperlist@shaw.ca>
9879
9880         * Documentation/user/lilypond-book.itely: add warning about
9881         the font warnings in dvips.
9882
9883 2005-06-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9884
9885         * THANKS: typo
9886
9887         * mf/GNUmakefile ($(outdir)/$(redhat-package)): Fedora-4 url.
9888
9889         * GNUmakefile.in: remove links for .map, .enc
9890         don't fail if out/ doesn't exist yet.
9891
9892 2005-06-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9893
9894         * ttftool/util.c (surely_read): return nbytes
9895
9896         * stepmake/bin/text2html.py (txt2html): add utf-8 marker. 
9897
9898         * VERSION (PACKAGE_NAME): release 2.5.30
9899
9900         * flower/string-convert.cc (precision_string): >? fix.
9901
9902         * scm/ps-to-png.scm (make-ps-images): search-gs for multipage too.
9903         (make-ps-images): add verbose -q too.
9904
9905         * lily/default-actions.cc (Module): new file. default
9906         {book,score}-print functions.
9907
9908         * scm/ly-from-scheme.scm (ly:parse-string-result): use new setup:
9909         pass results via parseStringResult, lookup via ly:parser-lookup.  
9910
9911         * lily/lily-parser.cc (Lily_parser): only clone lexer in
9912         constructors.
9913         (parse_file): encapsulate do_yyparse() in scm_set_current_module()
9914         (parse_string): idem.
9915
9916         * ly/spanners-init.ly (assertBeamQuant): don't use #{ #} in init.
9917
9918         * lily/main.cc (main_with_guile): copy be_verbose_global into
9919         ly_set_option()
9920
9921 2005-06-10  Jan Nieuwenhuizen  <janneke@gnu.org>
9922
9923         * scm/backend-library.scm (postscript->pdf):
9924         * scm/ps-to-png.scm (make-ps-images): Do not use gs -q switch in
9925         verbose mode.  Search for several names of gs executable.
9926
9927 2005-06-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9928
9929         * lily/ly-module.cc (ly_make_anonymous_module): call make-module
9930         directly. This fixes a massive memory leak, provided you use CVS
9931         GUILE.
9932
9933 2005-06-10  Erik Sandberg  <ersa9195@student.uu.se>
9934
9935         * ly/property-init.ly: Added tieDashed.
9936
9937         * THANKS: Added some bughunters for 2.5.
9938
9939 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9940
9941         * lily/program-option.cc: add debug-gc option.
9942
9943         * lily/include/lily-guile-macros.hh: don't protect exported module
9944         objects.
9945
9946         * lily/include/lily-parser.hh (class Lily_parser): remove beam_check().
9947
9948         * scm/backend-library.scm (postscript->pdf): use
9949         delete-intermediate-files iso. running-from-gui? 
9950
9951         * ttftool/util.c (surely_read): robustness. Allow read() to return
9952         less bytes than requested, as per posix standards.
9953
9954         * lily/pfb.cc (LY_DEFINE): set ttf_verbosity from ttf-verbosity
9955         program option.
9956
9957         * ttftool/include/ttftool.h ("C"): rename verbosity to
9958         ttf_verbosity. Add to public interface.
9959
9960         * scm/music-functions.scm (unfold-repeats): remove debugging display.
9961
9962         * lily/program-option.cc: rename from scm-option.cc
9963
9964         * lily/scm-option.cc (LY_DEFINE): handle no-foobar option setting.
9965         (get_help_string): Print pretty help string.
9966
9967         * scripts/lilypond-book.py (PREAMBLE_LY): add no-point-and-click
9968         to snippet preamble.
9969
9970         * lily/scm-option.cc: remove command-line-settings option. Fold
9971         all command-line options plus default settings in a generic
9972         interface. 
9973
9974         * flower/getopt-long.cc (table_string): indent 2nd lines of help
9975         texts too.
9976
9977 2005-06-09  Jan Nieuwenhuizen  <janneke@gnu.org>
9978
9979         * flower/file-name.cc: Bugfix: only append DIRSEP if BASE_
9980         or EXT_ components non-empty.
9981
9982 2005-06-08  Jan Nieuwenhuizen  <janneke@gnu.org>
9983
9984         * scm/lily.scm (running-from-gui?): Export.
9985
9986         * lily/lily-parser-scheme.cc (ly:parse-file): Use it to generate
9987         output in .ly source directory.
9988
9989 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9990
9991         * ttftool/util.c (surely_lseek): more verbosity.
9992
9993         * lily/include/lily-proto.hh: add Context_def. This fixes FC4
9994         compile.
9995
9996         * lily/parser.yy (Repeated_music): remove >? 
9997
9998         * scm/backend-library.scm (postscript->pdf): Support for
9999         -dgs-font-load=1
10000
10001         * scm/framework-ps.scm (write-preamble): make font loading
10002         switchable to GS via --define-default gs-font-load=1
10003
10004 2005-06-09  Graham Percival  <gperlist@shaw.ca>
10005
10006         * Documentation/user/global.itely: added \layout docs.
10007
10008 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10009
10010         * lily/lily-parser-scheme.cc: add unistd.h
10011
10012 2005-06-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10013
10014         * scm/editor.scm: add char argument.
10015
10016         * scripts/lilypond-invoke-editor.scm (dissect-uri): add char. 
10017
10018         * ttftool/util.c (syserror): use errno for better error reporting.
10019
10020         * lily/source-file.cc (get_counts): new function. Calc column,
10021         line and char count in one go.
10022
10023         * lily/binary-source-file.cc (quote_input): rename to quote_input
10024
10025         * lily/input.cc (set): new function.
10026
10027 2005-06-08  Jan Nieuwenhuizen  <janneke@gnu.org>
10028
10029         * flower/file-path.cc (find): Bugfix.  Append rather than prepend
10030         directory part of file name to search directory.
10031
10032         * lily/lily-parser-scheme.cc (ly:parse-file): Prepend cwd to
10033         search path and chdir to DIR if --outname=DIR used.
10034
10035         * lily/main.cc (prepend_env_path): Bugfix: Check directory
10036         existence before appending original path.
10037
10038 2005-06-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10039
10040         * ttftool/parse.c (readNamingTable): verbosity for "bad TTF
10041         file" massage.
10042
10043         * Documentation/user/GNUmakefile (TEXINPUTS): set TEXINPUTS so our
10044         texinfo.tex is always used.
10045         
10046 2005-06-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10047
10048         * flower/include/axis.hh: rename from axes.hh
10049
10050         * lily/include/text-interface.hh (Module): rename from text-item.hh
10051
10052         * VERSION (PATCH_LEVEL): release 2.5.29
10053
10054         * ttftool/parse.c (readNamingTable): handle Apple/8bit encoding too.
10055
10056         * scm/framework-ps.scm (font-file-as-ps-string): new function.
10057         (handle-macfont): new function. Call fondu for Native mac fonts.
10058
10059         * scm/define-markup-commands.scm (fill-line): handle text-widths =
10060         '() case.
10061
10062 2005-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
10063
10064         * scm/ps-to-png.scm (make-ps-images): Bugfix: `Pages: 1\n' is not
10065         multi-page.  Fix .eps regular expression.
10066
10067 2005-06-07  Graham Percival  <gperlist@shaw.ca>
10068
10069         * Documentation/user/putting.itely: add info on modifying templates.
10070
10071         * Documentation/user/lilypond.itely, converters.itely, invoking.itely:
10072         misc small changes.
10073
10074 2005-06-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10075
10076         * scm/ps-to-png.scm (make-ps-images): no paper size for multi-page.
10077
10078         * scripts/lilypond-ps2png.scm
10079
10080         * VERSION (PACKAGE_NAME): release 2.5.28
10081
10082 2005-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
10083
10084         * lily/main.cc (prepend_env_path): Do not append /, that does not
10085         work.  Localedir lives in datadir, not in prefix.
10086
10087         * scm/framework-ps.scm (write-preamble): Remove load-font-via-GS
10088         hack for windows.
10089
10090         * flower/include/file-cookie.hh: Compile fix.
10091
10092 2005-06-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10093
10094         * ly/engraver-init.ly: add \defaultchild to InnerStaffGroup. 
10095
10096         * scm/ps-to-png.scm (gulp-port): rename from read. Don't redefine
10097         system primitives.
10098         (gulp-port): using read-string!/partial. We don't want to read an
10099         entire PS file  (GUILE 1.6 limits strings to 16M) 
10100
10101         * scm/define-grobs.scm (all-grob-descriptions): remove arch-*
10102         properties. Add font-interface. 
10103
10104         * scm/define-grob-properties.scm (all-user-grob-properties):
10105         remove old bracket properties.
10106
10107         * scm/x11-color.scm: reformat. 
10108
10109         * lily/ledger-line-engraver.cc (acknowledge_grob): create new
10110         LedgerLineSpanner if new StaffSymbol is found. 
10111
10112         * lily/staff-symbol-engraver.cc (acknowledge_grob): also set
10113         staff-symbol for finishing staff. 
10114
10115         * lily/GNUmakefile (OUT_DIST_FILES): don't dist Flex output
10116
10117         * scm/output-svg.scm (setcolor): implement (re)setcolor with <g>
10118         change black to currentColor everywhere. This fixes color support
10119         in SVG.
10120
10121 2005-06-06  Carl Sorensen  <carldsorensen@comcast.net>
10122
10123         * input/regression/fret-diagrams.ly: new file to test fret diagram
10124         capability
10125
10126         * scm/output-tex.scm: remove white-dot and white-text
10127
10128         * scm/output-ps.scm: remove white-dot and white-text
10129
10130         * scm/fret-diagrams.scm (sans-serif-stencil-white): removed -- 
10131         using ly:stencil-in-color instead
10132         (draw-dots) : remove call to white-dot
10133
10134 2005-06-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10135
10136         * flower/memory-stream.cc (Memory_out_stream): remove fopencookie
10137         support.
10138
10139         * ttftool/ttfps.c: use lily_cookie functions everywhere. 
10140
10141         * flower/include/file-cookie.hh: new file. lily_cookie extension 
10142
10143         * flower/file-cookie.cc: new file. lily_cookie extension.
10144         
10145 2005-06-06  Jan Nieuwenhuizen  <janneke@gnu.org>
10146
10147         * scm/editor.scm (editor-command-template-alist): Add syn
10148         editor (Jaap [de Vos]).
10149
10150 2005-06-05  Jan Nieuwenhuizen  <janneke@gnu.org>
10151
10152         * scripts/lilypond-ps2png.scm:
10153         * scm/ps-to-png.scm: New file.
10154
10155         * scm/backend-library.scm (postscript->png): Use it.
10156
10157         * scripts/lilypond-ps-to-png.py: Remove file.
10158
10159         * python/lilylib.py (get_bbox, make_ps_images): Remove.
10160
10161 2005-06-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10162
10163         * lily/auto-beam-engraver.cc (acknowledge_grob): remove dead code.
10164
10165         * scm/auto-beam.scm (default-auto-beam-check): only forbid beam
10166         start on grace moment. Fixes autobeam-grace.ly.
10167
10168         * lily/auto-beam-engraver.cc (process_acknowledged_grobs): don't
10169         process anything unless we're at the end of a pending beam. Fixes
10170         syncopated 8ths beamed across a beat.
10171
10172 2005-06-03  Jan Nieuwenhuizen  <janneke@gnu.org>
10173
10174         * scm/editor.scm (editor-command-template-alist): Start emacs if
10175         emacslient fails.
10176
10177         * lily/main.cc (setup_localisation): Listen to LILYPOND_LOCALEDIR.
10178
10179         * flower/file-path.cc (is_file, is_dir): Export.
10180
10181         * lily/main.cc (prepend_env_path, set_env_file): Use them.
10182
10183 2005-06-02  Mats Bengtsson  <mabe@s3.kth.se>
10184
10185         * lily/easy-notation.cc: Added include cctype to correct
10186         compilation error.
10187
10188 2005-06-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10189
10190         * scm/backend-library.scm (postscript->pdf): set resolution to
10191         1200, so bitmap fonts aren't that ugly. 
10192
10193         * Documentation/topdocs/NEWS.tely (Top): add entry about font family.
10194
10195         * lily/dynamic-engraver.cc (acknowledge_grob): only center on
10196         parent if we have a notehead. Fixes incorrect offsets when
10197         Paper_column is very wide in the X direction.
10198
10199         * input/regression/font-family-override.ly (Module): new file.
10200
10201         * scm/font.scm (make-pango-font-tree): new function.
10202
10203         * lily/beam.cc (before_line_breaking): remove warning about less
10204         than 2 visible stems. We still get a warning when there is only
10205         one stem.
10206
10207 2005-06-01  Werner Lemberg  <wl@gnu.org>
10208
10209         * buildscripts/substitute-encoding.py: Handle PFAemmentaler-xx.pfa
10210         correctly.
10211
10212 2005-06-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10213
10214         * lily/slur-scoring.cc (generate_avoid_offsets): new
10215         function. Generate avoid offsets once per slur.
10216
10217         * lily/slur.cc (add_extra_encompass): add dependency to
10218         extra-encompass object. This fixes bugs/c-phrasing-slur.ly
10219
10220         * lily/stencil.cc (is_empty): check dim_ field for is_empty()
10221         too. Fixes inf error with added bass notes.
10222
10223         * scripts/lilypond-book.py (do_options): --psfonts doesn't take
10224         argument anymore.
10225
10226         * make/ly-vars.make (DVIPS_FLAGS): use .psfonts as extension.
10227
10228         * input/tutorial/lbook-latex-test.tex: add line length test.
10229
10230         * scripts/lilypond-book.py (set_default_options): new
10231         function. Call this before dissecting snippets, so linewidth
10232         settings reach the snippets.
10233
10234 2005-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
10235
10236         * scm/lily.scm (PLATFORM, slashify): Remove double slashes.
10237
10238 2005-06-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10239
10240         * input/mutopia/R.Schumann/romanze-op28-2.ly (leftb): bugfix.
10241
10242 2005-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
10243
10244         * stepmake/aclocal.m4: More autopackage friendliness.
10245
10246 2005-05-31  Graham Percival  <gperlist@shaw.ca>
10247
10248         * Documentation/index.html.in: remove link to LSR.
10249
10250         * Documentation/user/global.itely: remove duplicate
10251         "dedication" \header{} section.
10252
10253 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10254
10255         * VERSION (PACKAGE_NAME): release 2.5.27.
10256
10257         * lily/lily-parser-scheme.cc (LY_DEFINE): unprotect paper
10258         too. Plugs memory leak.
10259
10260         * make/lilypond.fedora.spec.in (Group): remove
10261         lilypond-pdfpc-helper.
10262
10263         * scripts/GNUmakefile (SEXECUTABLES): remove
10264         lilypond-pdfpc-helper. Use lilypond-invoke-editor instead.
10265
10266         * scm/font.scm (make-century-schoolbook-tree): add Mono as
10267         'typewriter family.
10268
10269         * lily/score.cc (Score): unprotect copy of Output_def. Plugs
10270         memory leak.
10271
10272         * lily/parser.yy (score_body): don't clone Score, that's done in
10273         Lily_lexer::try_special_identifiers(). This fixes a memory leak.
10274
10275         * lily/score-engraver.cc (derived_mark): new function.
10276         (initialize): unprotect Paper_score. This fixes a memory leak.
10277
10278         * lily/score-performer.cc (derived_mark): new function.
10279
10280         * lily/score-translator.cc (get_output): use SCM for get_output() call.
10281
10282         * stepmake/aclocal.m4: put FlexLexer.h test in conftest.cc. Fixes
10283         spurious warning.
10284
10285         * scm/font.scm (make-century-schoolbook-tree): use Sans for sans
10286         serif.
10287
10288 2005-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
10289
10290         * configure.in (reloc_b): Add --enable-relocation.
10291
10292 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10293
10294         * lily/pfb.cc (LY_DEFINE): show file name when loading PFB. 
10295
10296         * input/regression/alignment-order.ly: add Staff example.
10297
10298 2005-05-31  John Mandereau   <john.mandereau@free.fr>
10299
10300         * po/fr.po: update.
10301
10302 2005-05-31  Graham Percival  <gperlist@shaw.ca>
10303
10304         * Documentation/index.html.in: add link to LSR.
10305
10306 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10307
10308         * scm/define-stencil-commands.scm (Module): new file. Register all
10309         allowed stencil expression heads in a central place.
10310
10311         * lily/stencil-scheme.cc (LY_DEFINE): check is_stencil_head in
10312         ly:make-stencil
10313
10314         * lily/stencil-expression.cc (all_stencil_heads): registering
10315         stencil expressions.
10316
10317         * lily/stencil-interpret.cc: new file. Stencil expression
10318         interpreting.
10319
10320         * input/xiao-haizi-guai-guai.ly: move file back.
10321
10322 2005-05-30  Graham Percival  <gperlist@shaw.ca>
10323
10324         * Documentation/user/advanced.itely, converters.itely,
10325         instrument-notation.itely, lilypond-book.itely: misc small
10326         changes.
10327
10328 2005-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
10329
10330         * lily/lexer.ll: Skip UTF-8 BOM at BOF.
10331
10332         * make/lilypond.fedora.spec.in: Fix source url.
10333
10334         * cygwin: Update from mingw patches.
10335
10336         * scm/editor.scm (editor-command-template-alist): Use jedit
10337         -reuseview (Bertalan), add uedit (Patrick Huberts).
10338
10339         * input/xiao-hai-zi-guai-guai.ly: Rename from
10340         xiao-haizi-guai-guai.ly.
10341
10342         * input/*: Reindent, do not use TAB.
10343
10344         * Documentation/pictures/ly.xpm: Bugfix: do not anti-alias against
10345         white background.
10346
10347 2005-05-29  Jan Nieuwenhuizen  <janneke@gnu.org>
10348
10349         * scm/framework-ps.scm (dump-stencil-as-EPS): Add silly fix for
10350         numerical overflow error.
10351
10352 2005-05-29 Laura Conrad <lconrad@laymusic.org>
10353         
10354         * abc2ly.py: fix to syntax error in multi-part output.
10355
10356 2005-05-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10357
10358         * lily/span-bar.cc (print): sort bar line extents. Fixes problem
10359         with disappearing span bars when alignAboveContext is active
10360
10361         * lily/property-iterator.cc (check_grob): use is-grob?
10362         object-property. Fixes crash-key-sig-font-size.ly. 
10363
10364 2005-05-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10365
10366         * lily/bar-line.cc (print): don't round barlines; this produces
10367         odd aliasing effects in Acroread.
10368
10369         * lily/timing-engraver.cc (process_music): robustness fix.
10370
10371         * lily/context-def.cc (filter_engravers): bugfix.
10372
10373 2005-05-28  Jan Nieuwenhuizen  <janneke@gnu.org>
10374
10375         * lily/lilypond.rc.in: Add ly-icon.
10376
10377         * lily/GNUmakefile: 
10378         * Documentation/pictures/GNUmakefile (OUT_DIST_FILES): Add ly-icon
10379         rules.
10380
10381 2005-05-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10382
10383         * lily/stencil-scheme.cc (LY_DEFINE): ly:stencil-in-color
10384
10385         * ps/music-drawing-routines.ps: 
10386
10387         * scm/output-ps.scm: remove draw ez_ball.
10388
10389         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
10390         EasyNotation context definition.
10391
10392         * lily/easy-notation.cc (brew_ez_stencil): new file. Use
10393         Text_interface and color for making easy note heads.
10394
10395         * lily/stencil.cc (with_color): new function.
10396
10397         * ps/music-drawing-routines.ps: remove draw_zigzag_line
10398
10399         * lily/line-spanner.cc (zigzag_stencil): rewrite to use draw-line
10400         output routine. Zigzag now works in SVG too.
10401
10402         * scm/output-tex.scm (filledbox): idem.
10403
10404         * scm/output-svg.scm (filledbox): idem.
10405
10406         * scm/output-ps.scm (lily-def): remove horizontal-line. 
10407
10408         * lily/lookup.cc (horizontal_line): use draw-line. 
10409
10410         * lily/system-start-delimiter.cc: remove old staff bracket code.
10411
10412         * mf/feta-haak.mf: further tweaks.
10413
10414         * lily/system-start-delimiter.cc (staff_bracket): use glyphs.
10415
10416         * mf/feta-generic.mf: include feta-haak.
10417
10418         * mf/feta-haak.mf: rewrite. Make separate glyphs for the tips 
10419
10420         * scm/framework-ps.scm (write-preamble): only load fonts if their
10421         filename is a string. 
10422
10423 2005-05-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10424
10425         * scm/output-svg.scm (circle): support circle.
10426         (bracket): stub for bracket.
10427
10428         * scripts/lilypond-book.py (main): make sure --psfonts warning is
10429         correct.
10430
10431 2005-05-26  Graham Percival  <gperlist@shaw.ca>
10432
10433         * Documentation/user/lilypond.tely, advanced-notation.itely,
10434         basic-notation.itely, instrument-notation.itely, global.itely,
10435         introduction.itely, tutorial.itely: rearranging, editing,
10436         clean-up.
10437
10438         * mf/GNUmakefile: change a "make -C" to "${MAKE} -C", required
10439         for compiling on FreeBSD.
10440
10441 2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10442
10443         * lily/pfb.cc (LY_DEFINE): progress indication for opening ttf and
10444         otf files.
10445
10446         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly (lower):
10447         bugfixes.
10448
10449         * VERSION: 2.5.26 released.
10450
10451         * scm/titling.scm (marked-up-headfoot): revert Pedro's patch. 
10452
10453 2005-05-25  Pedro Kroger  <kroeger@pedrokroeger.net>
10454
10455         * scm/titling.scm (marked-up-headfoot): doesn't print pagenumbers
10456         if printpagenumber is false.
10457
10458 2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10459
10460         * lily/font-config.cc (init_fontconfig): comment out FontConfig
10461         cache warning.
10462
10463         * lily/tie.cc (print): support dotted ties.
10464         
10465 2005-05-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10466
10467         * scm/define-grobs.scm (all-grob-descriptions): switch off
10468         debugging
10469         (all-grob-descriptions): Arpeggio has Y-extent.
10470
10471         * scm/define-music-properties.scm (all-music-properties): document
10472         length-callback and start-callback as "read-only".
10473
10474         * scm/music-functions.scm (unfold-repeats): rewrite. Cannot set
10475         length-callback after creation. 
10476
10477         * scripts/convert-ly.py (conv): unfoldrepeats -> unfoldRepeats,
10478         compressmusic -> compressMusic.
10479
10480         * ly/music-functions-init.ly (oldaddlyrics): idem.
10481
10482         * lily/parser.yy: NewLyricCombineMusic ->
10483         LyricCombineMusic. LyricCombineMusic -> OldLyricCombineMusic.
10484
10485 2005-05-24  Pedro Kroger  <kroeger@pedrokroeger.net>
10486
10487         * ly/Welcome_to_LilyPond.ly: typo.
10488
10489 2005-05-24  Graham Percival  <gperlist@shaw.ca>
10490
10491         * Documentation/user/lilypond.tely: move changing-defaults to be
10492         before global issues.
10493
10494         * Documentation/user/basic-notation.itely: move Transpose section
10495         here from advanced/Other.
10496
10497         * Documentation/user/changing-defaults.itely,
10498         advanced-notation.itely: move Fonts to advanced, edit.
10499
10500 2005-05-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10501
10502         * lily/parser.yy (bare_int): remove rule.  From now on, we require
10503         # before negative integers.
10504
10505 2005-05-23  Graham Percival  <gperlist@shaw.ca>
10506
10507         * ly/property.ly: Update tieDotted to have the same form as slurDotted.
10508
10509         * Documentation/user/lilypond.tely: change Unified index to
10510         LilyPond index.
10511
10512         * Documentation/user/advanced-notation.itely,
10513         instrument-notation.itely: editing.
10514
10515 2005-05-23  Jan Nieuwenhuizen  <janneke@gnu.org>
10516
10517         * scm/lily.scm (lilypond-all): Bugfix: return failed.
10518
10519         * lily/main.cc (setup_paths)[__MINGW32__]: Normalize LILYPONDPREFIX.
10520
10521 2005-05-21  Jan Nieuwenhuizen  <janneke@gnu.org>
10522
10523         * lily/general-scheme.cc (ly:stderr-redirect): Rename from
10524         ly:port-move.  Needs to be stderr-specific on mingw.
10525         Run fixcc.
10526
10527 2005-05-20  Jan Nieuwenhuizen  <janneke@gnu.org>
10528
10529         * lily/general-scheme.cc (ly:port-move): Remove.
10530
10531         * scm/backend-library.scm (postscript->pdf): Remove -dSAFER in
10532         windows.
10533
10534         * lily/main.cc (setup_paths) [ARGV0_RELOCATION]: Reinstate GS_*
10535         variables.  This eliminates the need for a gs.bat wrapper, which
10536         opens a console.
10537
10538         * scripts/lilypond-invoke-editor.scm (running-from-gui?): 
10539         * scm/lily.scm (running-from-gui?): 
10540         * lily/main.cc[MINGW]: Remove isatty inversion, this is an
10541         artifact of not compiling with -mwindows.
10542
10543         * scm/editor.scm: Define PLATFORM.
10544
10545 2005-05-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10546
10547         * scripts/lilypond-book.py (PREAMBLE_LY): add marker, where people
10548         can start to cut & paste lilypond-book fragments.  
10549
10550         * scm/define-music-types.scm (music-descriptions): remove
10551         UntransposableMusic
10552
10553 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10554
10555         * scm/output-ps.scm (glyph-string): remove / before CIDs.
10556
10557 2005-05-20  Graham Percival  <gperlist@shaw.ca>
10558
10559         * Documentation/user/instrument-notation.itely: remove *Engraver.
10560
10561         * Documentation/user/advanced-notation.itely: edit, rearrange.
10562
10563 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10564
10565         * scm/output-ps.scm (glyph-string): take cid? argument. Use
10566         findresource iso. findfont for CID CFF fonts.
10567
10568         * VERSION (PACKAGE_NAME): release 2.5.25
10569
10570         * ly/Welcome_to_LilyPond.ly: add  \version
10571
10572 2005-05-20  Graham Percival  <gperlist@shaw.ca>
10573
10574         * Documentation/user/programming-interface.itely: move
10575         \displayMusic into its own section.
10576
10577         * Documentation/user/basic-notation.itely: finish editing.
10578
10579 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10580
10581         * flower/file-path.cc (find): don't throw away file_name.dir, but
10582         append to it. Fixes \include with directories.
10583
10584         * flower/include/file-path.hh (class File_path): don't derive from
10585         Array<String>.
10586
10587         * flower/include/file-name.hh (class File_name): remove to_str0()
10588
10589         * lily/hara-kiri-engraver.cc (acknowledge_grob): split
10590         Hara_kiri_engraver in separate file.
10591
10592         * lily/slur-configuration.cc (score_encompass): oops, <? to min()
10593         translation went wrong. Fixes vertically translated slurs.
10594
10595 2005-05-19  Graham Percival  <gperlist@shaw.ca>
10596
10597         * Documentation/user/basic-notaton.itely: editing.
10598
10599 2005-05-18  Graham Percival  <gperlist@shaw.ca>
10600
10601         * Documentation/user/macros.itexi, basic-notation.itely:
10602         add @commonprop (commonly used properties) macro.
10603
10604 2005-05-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10605
10606         * ly/Welcome_to_LilyPond.ly: talk about icon, not program.
10607
10608         * scripts/lilypond-book.py (invokes_lilypond): new function
10609         (main): only run fontextract if invokes_lilypond() is true.
10610
10611         * lily/function-documentation.cc (ly_add_function_documentation):
10612         duh, use !=
10613
10614         * Documentation/topdocs/INSTALL.texi (Top): add MacOS command.
10615
10616         * stepmake/aclocal.m4: remove kpathsea warning, change to OPTIONAL.
10617
10618         * scm/lily.scm (running-from-gui?): lowercase Darwin.
10619
10620         * lily/function-documentation.cc (ly_add_function_documentation):
10621         use scm_hash_table_p() for checking.
10622
10623 2005-05-18  Jan Nieuwenhuizen  <janneke@gnu.org>
10624
10625         * Documentation/user/advanced-notation.itely (Text scripts):
10626         Change nonexisting @internalsref{Text markup} to @ref{Text
10627         markup}.  Change @internalsref{Text script} to
10628         @internalsref{TextScript}.
10629
10630         * lily/main.cc (setup_paths): Bugfix: pangorc is not pango.modules.
10631
10632 2005-05-17  Graham Percival  <gperlist@shaw.ca>
10633
10634         * Documentation/user/tutorial.itely, basic-notation.itely,
10635         changing-defaults.itely: remove duplicate cindex entries
10636         that appear on the same page.
10637
10638         * scm/define-grobs.scm: change default padding for TextSpanner.
10639
10640         * Documentation/topdocs/AUTHORS.texi: update email address.
10641
10642         * Documentation/user/global.itely: add info about \include.
10643
10644 2005-05-17  Jan Nieuwenhuizen  <janneke@gnu.org>
10645
10646         * scm/backend-library.scm (postscript->pdf): Remove (useless) .ps
10647         when running-from-gui.
10648
10649         * scm/editor.scm (get-editor): Add platform defaults.
10650
10651         * scm/backend-library.scm (postscript->pdf): Typo.
10652
10653 2005-05-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10654
10655         * scm/lily.scm (running-from-gui?): Darwin never runs from GUI.
10656
10657         * lily/font-config.cc (init_fontconfig): add warning about cache.
10658
10659 2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
10660
10661         * lily/main.cc (setup_paths)[ARGV0_RELOCATION]: Remove GS_*.
10662
10663 2005-05-16  Mats Bengtsson  <mabe@s3.kth.se>
10664
10665         * lily/horizontal-bracket.cc (print): Take care of the direction
10666         property so brackets above the stave point downwards. 
10667
10668         * scm/define-grobs.scm (all-grob-descriptions): Set staff-padding
10669         for HorizontalBracket so it doesn't end up within the stave.
10670
10671 2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
10672
10673         * lily/GNUmakefile (default): Typo.
10674
10675         * scm/lily.scm (PLATFORM): Export.
10676
10677         * scm/framework-ps.scm (write-preamble)[MINGW]: Use
10678         load-font-via-GS, ttftool or fopencookie is broken on windows.
10679         
10680         * scm/backend-library.scm (postscript->pdf)[MINGW]: Do not use
10681         -dSAFER, that is broken on windows.
10682
10683 2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10684
10685         * lily/GNUmakefile ($(outdir)/FlexLexer.h): conditional dependency
10686         for FlexLexer.h
10687
10688         * scripts/lilypond-invoke-editor.scm: remove stray -
10689
10690 2005-05-15  Jan Nieuwenhuizen  <janneke@gnu.org>
10691
10692         * lily/lily-guile.cc (ly_scm2newstr): Use scm_i_string_length.
10693         Fixes deprecation warning.
10694
10695         * flower/include/string.icc (to_string): Only inline if
10696         -DSTRING_UTILS_INLINED.
10697
10698         * lily/pango-font.cc (pango_item_string_stencil): Normalize file
10699         name.  Remove windows comment.
10700
10701         * scm/editor.scm (slashify): New function.
10702         (get-editor-command): Use it.
10703         (get-command-template): Do not alter editor command if
10704         environment value includes `%(file)s' magic.
10705
10706         * scripts/lilypond-invoke-editor.scm (unquote-uri): New function.
10707         (dissect-uri): Use it.
10708         (unquote-uri): Bugfix.
10709
10710 2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10711
10712         * scm/framework-ps.scm (write-preamble): add TTF rule.
10713
10714         * Documentation/topdocs/README.texi (Top): remove note about
10715         xdelta.
10716
10717         * Documentation/topdocs/INSTALL.texi (Top): remove Flex
10718         requirement.
10719
10720         * stepmake/aclocal.m4: STEPMAKE_FLEXLEXER_LOCATION: new
10721         function. Figure out where FlexLexer.h lives
10722
10723         * lily/GNUmakefile (OUT_DIST_FILES): dist lexer.cc and FlexLexer.h
10724         
10725 2005-05-14  Jan Nieuwenhuizen  <janneke@gnu.org>
10726
10727         * scripts/lilypond-invoke-editor.scm (dissect-uri): Handle URIs
10728         with Windows root in file name.
10729
10730         * scm/backend-library.scm (ly:system): Only redirect output (using
10731         system and shell, ugh) if /dev/null is writable.
10732
10733         * Documentation/pictures/GNUmakefile [PLATFORM_WINDOWS]: Build
10734         windows icon.
10735
10736         * scm/lily.scm (is-absolute?): New function.  Fixes absolute files
10737         on Mingw.
10738
10739         * scm/output-ps.scm (grob-cause): Use it.  Fixes PDF point and
10740         click.
10741
10742         * flower/file-path.cc (is_dir, is_file): New function.  Actually
10743         use result of stat when available.
10744
10745         * flower/file-path.cc (find): Use it.  Refactor.  Fixes Mingw,
10746         absolute file name and root.
10747
10748         * scm/lily.scm (PLATFORM): On mingw, slashify getcwd.
10749
10750         * scm/editor.scm (get-editor-command): Typo: do not apply editor.
10751
10752         * flower/file-name.cc (slashify): Bugfix, do substitute if no
10753         slashes in file name.
10754
10755 2005-05-13  Jan Nieuwenhuizen  <janneke@gnu.org>
10756
10757         * Documentation/user/preface.itely (Preface): Run
10758         texinfo-all-menus-update.
10759
10760         * scm/editor.scm (get-editor-command): Bugfix: allow full
10761         LYEDITOR setting, partial XEDITOR setting.  With typo fix.
10762
10763         * Documentation/pictures/lilypond-48.xpm: New file.
10764
10765         * flower/file-path.cc (to_string): Bugfix: use PATHSEP.
10766
10767         * ly/Welcome_to_LilyPond.ly: New file.
10768
10769         * lily/main.cc (main): Only identify if we have a terminal.
10770
10771         * scm/backend-library.scm (postscript->png)
10772         (postscript->pdf): Fix file name quoting for GS/MINGW (ie,
10773         non-/bin/sh).
10774
10775 2005-05-13  Heikki Junes  <hjunes@cc.hut.fi>
10776
10777         * Documentation/topdocs/AUTHORS.texi: polish, update.
10778
10779 2005-05-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10780
10781         * Documentation/user/preface.itely (Notes for version 2.6): new
10782         notes for 2.6
10783
10784         * lily/dynamic-engraver.cc (stop_translation_timestep): first set
10785         finished_span_, then call typeset_all(). Fixes spurious "Hairpin
10786         is not fully contained" warnings.
10787
10788         * lily/slur-scoring.cc (get_bound_info): remove warning.
10789
10790         * lily/staff-symbol-engraver.cc (process_music): start initial
10791         spanner in process_music(). This fixes overrides of StaffSymbol
10792         properties.
10793
10794         * scm/framework-pdf.scm (Module): remove.
10795
10796         * Documentation/topdocs/AUTHORS.texi (AUTHORS): clean up, update.
10797
10798         * lily/ambitus-engraver.cc: formatting cleanups.
10799
10800         * mf/feta-solfa.mf (Module): remove.
10801
10802         * ChangeLog: more details about contributions.
10803
10804 2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10805
10806         * lily/align-interface.cc (align_elements_to_extents): warn if
10807         called too early. Fixes: disappearing-staff-lines.ly
10808
10809         * VERSION (PACKAGE_NAME): release 2.5.24
10810
10811 2005-05-12  Jan Nieuwenhuizen  <janneke@gnu.org>
10812
10813         * stepmake/aclocal.m4: Typo.
10814
10815         * flower/string.cc (substitute): Take two strings or two
10816         characters.  Update callers.
10817
10818 2005-05-11  Jan Nieuwenhuizen  <janneke@gnu.org>
10819
10820         * flower/file-name.cc (File_name): Slashify.
10821
10822         * scm/lily.scm: Use gui-main iso lilypond-main on MINGW.
10823
10824         * scripts/GNUmakefile (SEXECUTABLES): Add lilypond-invoke-editor.
10825
10826         * stepmake/aclocal.m4 (STEPMAKE_WINDOWS): New function.
10827
10828         * configure.in (gui_b): Use it.
10829
10830         * lily/lilypond.rc.in: New file.
10831
10832         * lily/GNUmakefile[PLATFROM_WINDOWS]: Compile it into executable.
10833
10834 2005-05-12  Graham Percival  <gperlist@shaw.ca>
10835
10836         * Documentation/user/advanced-notation.itely: edit of Text
10837         section; clarify text scripts vs. text markup.
10838
10839 2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10840
10841         * lily/multi-measure-rest-engraver.cc
10842         (Multi_measure_rest_engraver): init bar_seen_ to true. Notice
10843         separation items on start. Fixes mm rests in start of score.
10844
10845         * lily/slur-scoring.cc (move_away_from_staffline): robustness,
10846         don't access StaffSymbol if not there.
10847         Fixes: crash-staff-symbol-engraver.ly.
10848
10849         * lily/instrument-name-engraver.cc (class
10850         Instrument_name_engraver): data member first_. Create
10851         InstrumentName on start. 
10852
10853 2005-05-12  Graham Percival  <gperlist@shaw.ca>
10854
10855         * Documentation/user/instrument-notation.itely: add guitar
10856         position.
10857
10858         * Documentation/user/introduction.itely,
10859         Documentation/user/lilypond.tely,
10860         Documentation/user/tutorial.itely: begin pruning
10861         unused (duplicated) cindex entries and misc cleanup.
10862
10863 2005-05-12  Mats Bengtsson  <mabe@s3.kth.se>
10864
10865         * input/test/volta-chord-names.ly: Bring the explanation up to
10866         date.
10867
10868 2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
10869
10870         * Documentation/topdocs/{AUTHORS.texi,INSTALL.texi,README.texi}:
10871         Specify `@documentencoding utf-8' for html, ignore warnings.
10872
10873 2005-05-11  Erik Sandberg  <ersa9195@student.uu.se>
10874
10875         * THANKS: Added bughunters.
10876
10877 2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
10878
10879         * lily/main.cc: update help string for `lilypond -H'.
10880
10881         * po/fi.po: update.
10882         
10883 2005-05-10  Graham Percival  <gperlist@shaw.ca>
10884
10885         * Documentation/user/advanced-notation.itely: minor fixes.
10886
10887 2005-05-10  Jan Nieuwenhuizen  <janneke@gnu.org>
10888
10889         * scm/editor.scm: New module.
10890
10891         * scm/lily.scm (gui-main): Use it.
10892
10893         * scm/framework-gnome.scm (spawn-editor): Use it.
10894
10895         * scripts/lilypond-invoke-editor.scm: Use it in new script.
10896
10897 2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10898
10899         * scm/framework-ps.scm (load-font-via-GS):  new function.
10900
10901         * lily/pango-font.cc (pango_item_string_stencil): add support for
10902         CID keyed font.
10903
10904         * scm/output-ps.scm (glyph-string): add support for CID keyed font.
10905
10906 2005-05-10  Graham Percival  <gperlist@shaw.ca>
10907
10908         * Documentation/user/basic-notation.itely: add @ref.
10909
10910         * Documentation/user/advanced-notation.itely: add example
10911         of 5/8 beaming.
10912
10913 2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10914
10915         * scripts/lilypond-pdfpc-helper.py (ly_pc_editor): robustness fixes.
10916
10917         * scm/backend-library.scm (postscript->pdf): Invoke gs instead of
10918         going through ps2pdf wrappers.
10919
10920 2005-05-09  Jürgen Reuter  <reuter@ipd.uka.de>
10921
10922         * Documentation/user/instrument-notation.itely: petrucci note
10923         heads: updated docu
10924
10925         * input/regression/note-head-style.ly: updated regression test;
10926         indentation fixes
10927
10928         * ly/engraver-init.ly: MensuralVoiceContext: use petrucci note
10929         heads as default
10930
10931         * mf/parmesan-heads.mf: minor editing; use musicological names
10932         (rather than optical description) as note head names
10933
10934         * scm/output-lib.scm: complete petrucci heads
10935
10936 2005-05-09  Pal Benko  <benkop@freestart.hu>
10937
10938         * mf/parmesan-heads.mf: add petrucci heads (like neo-mensural
10939         heads, but bigger)
10940
10941 2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
10942
10943         * lily/main.cc (main_with_guile): Remove no files check.
10944
10945         * lily/main.cc (ly:usage): Export to Scheme.
10946
10947         * scm/lily.scm (no-files-handler): New function.
10948
10949         * scm/lily.scm (lilypond-main): Use it.
10950
10951         * configure.in (gui_b): Add mbrtowc checking.
10952         Resurrect [utf8/]wchar.h checking.
10953
10954 2005-05-09  Mats Bengtsson  <mabe@s3.kth.se>
10955
10956         * Documentation/user/advanced-notation.itely (Metronome marks):
10957         Add link to the program reference for MetronomeMark
10958
10959         * Documentation/user/lilypond-book.itely (An example of a
10960         musicological document): Correct the example using psfonts 
10961
10962 2005-05-09  Heikki Junes  <hjunes@cc.hut.fi>
10963
10964         * po/fi.po: update after a lesson how to update entries against
10965         source.
10966         
10967         * po/TODO: document the lesson.
10968
10969 2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10970
10971         * configure.in (gui_b): remove wcrtomb checking.
10972
10973         * lily/general-scheme.cc (LY_DEFINE): hand-convert utf8 to 32
10974         bits. Patch by Matthias Neeracher. <neeracher@mac.com>
10975
10976 2005-05-09  Mats Bengtsson  <mabe@s3.kth.se>
10977
10978         * scripts/convert-ly.py: In the conversion to version 1.9.0, 
10979         keep Scheme expressions and strings unmodified when doing the
10980         conversion to postfix notation for slurs and beams. Should
10981         hopefully solve most related conversion problems. 
10982
10983         * Documentation/user/lilypond-book.itely : Clarify and correct how
10984         to call dvips with -h psfonts.
10985
10986 2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
10987
10988         * Documentation/user/instrument-notation.itely (Entering lyrics):
10989         Typo.  Fixes build.
10990
10991 2005-05-09  Graham Percival  <gperlist@shaw.ca>
10992
10993         * Documentation/user/lilypond-book.itely: document PSFONTS file.
10994
10995         * Documentation/user/lilypond.tely, lilypond-book.itely,
10996         tutorial.itely: change references to 2.5.x to 2.6.x.
10997
10998         * Documentation/user/instrument-notation.itely: clarified \addlyrics
10999         vs \lyricmode.
11000
11001         * Documentation/user/invoking.itely: remove old info about
11002         lilypond-profile.
11003
11004         * Documentation/topdocs/INSTALL.texi: remove old info about
11005         lilypond-profile, add warning about needing international fonts
11006         to build docs.
11007
11008 2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11009
11010         * lily/include/grob-info.hh (class Grob_info): make data member
11011         private. Changes throughout.
11012
11013         * input/regression/alignment-order.ly: new file. 
11014
11015         * lily/vertical-align-engraver.cc (acknowledge_grob): read
11016         alignAboveContext and alignBelowContext
11017
11018 2005-05-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11019
11020         * lily/pfb.cc (LY_DEFINE): add cast.
11021
11022         * scm/framework-ps.scm (write-preamble): embed CFFs if file name
11023         matches .otf
11024         (write-preamble): warn about unknown fonts.
11025
11026         * lily/pfb.cc (Module): new function ly:otf->cff
11027
11028         * lily/open-type-font.cc (get_otf_table): use ::get_otf_table
11029         (get_otf_table): new function.
11030
11031 2005-05-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11032
11033         * scm/backend-library.scm (postscript->png): call lilypond-ps2png
11034         iso. ps2png.
11035
11036 2005-05-06  Heikki Junes  <hjunes@cc.hut.fi>
11037
11038         * po/fi.po: apply second round of update.
11039
11040 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11041
11042         * scm/x11-color.scm (make-x11-color-handler): don't use
11043         #\sp. Apparently doesn't work on all platforms. 
11044
11045 2005-05-06  Graham Percival  <gperlist@shaw.ca>
11046
11047         * Documentation/user/advanced-notation.itely, putting.itely,
11048         tutorial.itely, global.itely, introduction.itely: really minor fixes.
11049
11050 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11051
11052         * VERSION (PACKAGE_NAME): release 2.5.23
11053
11054 2005-05-06  Jan Nieuwenhuizen  <janneke@gnu.org>
11055
11056         * Documentation/topdocs/AUTHORS.texi: Remove texinfo @accents,
11057         convert to utf-8.
11058
11059         * THANKS: Add translators for this release, convert to utf-8.
11060
11061         * mf/GNUmakefile (MFTRACE_FLAGS):
11062         * buildscripts/substitute-encoding.py (outdir): Build fix: pass
11063         outdir as option (WAS: hardcoded).
11064
11065 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11066
11067         * lily/staff-symbol-engraver.cc (Staff_symbol_engraver): init
11068         finished_span_
11069
11070         * THANKS: add Hans Forbrich.
11071
11072         * Documentation/topdocs/NEWS.tely (Top): document new feature.
11073
11074         * Documentation/user/basic-notation.itely (Staff symbol): document
11075         start/stop staff. Reference to ossia.ly
11076
11077         * input/test/ossia.ly: new example using stop and startStaff.
11078
11079         * lily/timing-engraver.cc: remove Timing_engraver::initialize(),
11080         in other words, don't create "|" barline at start of the score.
11081         (start_translation_timestep): don't set whichBar for start of score.
11082
11083         * input/regression/staff-halfway.ly: use new functionality.
11084
11085         * lily/staff-symbol-engraver.cc (try_music): take StaffSpanEvents,
11086         start and stop staff based on events.
11087
11088         * scm/define-music-types.scm (music-descriptions): add StaffSpanEvent
11089
11090         * ly/declarations-init.ly (startStaff, stopStaff): new identifiers.
11091
11092 2005-05-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11093
11094         * Documentation/user/programming-interface.itely (How markups work
11095         internally ): remove \encoding reference.
11096
11097 2005-05-04  Mats Bengtsson  <mabe@s3.kth.se>
11098
11099         * scripts/convert-ly.py: Attempt to do a smarter update of 
11100         text markups from versions < 1.9.0 with arbitrary nesting.
11101
11102 2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
11103
11104         * po/fi.po: convert to utf-8, and update.
11105
11106 2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11107
11108         * make/lilypond.suse.spec.in: update from suse 2.4 package.
11109
11110         * lily/*.cc: more <? >? to min/max changes
11111
11112         * lily/include/interpretation-context-handle.hh: rename
11113         Interpretation_context_handle to Context_handle.
11114
11115 2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
11116
11117         * input/regression/GNUmakefile (local_delete): use `find` together 
11118         with `xargs` to avoid too long argument-lists in cmd line.
11119
11120 2005-05-04  Graham Percival  <gperlist@shaw.ca>
11121
11122         * Documentation/user/introduction.itely: updates "About this manual".
11123
11124         * Documentation/user/advanced-notation.itely,
11125         invoking.itely: minor fixes.
11126
11127 2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11128
11129         * COPYING: add font exception. Update FSF address. 
11130
11131         * lily/context-def.cc (path_to_acceptable_context): bugfix, depth
11132         should be taken without child context.
11133
11134         * ly/chord-modifiers-init.ly (blackTriangleMarkup): use it.
11135
11136         * scm/define-markup-commands.scm (triangle): new command, as
11137         robust replacement for unicode Delta/Triangle.
11138
11139 2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11140
11141         * ps/music-drawing-routines.ps: add fillp argument.
11142
11143         * lily/lookup.cc (round_filled_polygon): polygon takes filled? argument
11144
11145         * lily/font-config.cc (init_fontconfig): don't add cff/
11146
11147         * VERSION (PACKAGE_NAME): release 2.5.22
11148
11149         * mf/GNUmakefile: remove cff/cff.ps/.map install rules.
11150
11151         * lily/grace-engraver.cc (consider_change_grace_settings): use
11152         is_alias(). Fixes problem with CueVoice grace notes. 
11153
11154         * lily/simultaneous-music-iterator.cc (construct_children): call
11155         Music_iterator::quit() for iterators that start out invalid. This
11156         fixes indefinitely continuing contexts.
11157
11158         * buildscripts/substitute-encoding.py: new file
11159
11160         * Documentation/user/basic-notation.itely (Basic polyphony): fix
11161         missing @end 
11162
11163         * scripts/lilypond-book.py (write_if_updated): print file name.
11164
11165         * Documentation/user/basic-notation.itely (Explicitly
11166         instantiating voices): idem.
11167
11168         * Documentation/user/advanced-notation.itely (Text spanners):
11169         remove stray { } 
11170
11171         * lily/context.cc (default_child_context_name): the default child
11172         is now first in accepts_list_.
11173
11174         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
11175         \defaultchild to all relevant contexts.  This fixes:
11176         drums-pitch.ly.
11177
11178         (Probably also fixes similar problems with ancient
11179         transcriptions getting CueVoices instead of the desired voices.)
11180  
11181         * lily/context-def.cc (get_default_child): new function.
11182         (get_accepted): place default child in front of list.
11183
11184         * lily/parser.yy (FIXME): add DEFAULTCHILD token.
11185
11186         * lily/include/context-def.hh (struct Context_def): add
11187         default_accept_
11188
11189 2005-05-03  Graham Percival  <gperlist@shaw.ca>
11190
11191         * scm/define-grobs.scm: remove "remove-first" line, since
11192         the absent property is set to #f anyway.
11193
11194         * Documentation/user/basic-notation.itely,
11195         advanced-notation.itely, instrument-notation.itely: minor
11196         fixes.
11197
11198         * ly/property-init.ly: add textSpanner{Up,Down,Neutral}.
11199
11200         * Documentation/user/advanced-notation.itely,
11201         changing-defaults.itely: consolidate Text stuff in
11202         advanced notation.
11203
11204         * Documentation/user/global.itely: better docs for \header.
11205
11206         * Documentation/user/putting.itely: new chapter; placeholder
11207         for future expansion.
11208
11209         * Documentation/user/examples.itely: moved "suggestions for
11210         writing LP files" section into putting.itely.
11211
11212         * Documentation/user/lilypond.itely: added new chapter,
11213         fixed the short table of contents.
11214
11215 2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11216
11217         * lily/beam-quanting.cc (quanting): robustness fix, don't produce
11218         infinity for unfeasible beams.
11219
11220         * make/lilypond.fedora.spec.in (Group): idem.
11221
11222         * scripts/GNUmakefile (SEXECUTABLES): rename ps2png to lilypond-ps2png
11223
11224         * mf/GNUmakefile (ALL_GEN_FILES): remove .map
11225
11226         * scm/framework-ps.scm (write-preamble): extract CFF from OTF
11227         fonts directly.
11228
11229         * buildscripts/gen-emmentaler-scripts.py (i): idem.
11230
11231         * mf/GNUmakefile: remove all CFF rules.
11232
11233         * scm/framework-ps.scm (ps-embed-cff): reinstate.
11234
11235         * lily/open-type-font-scheme.cc (LY_DEFINE):
11236         new function ly:otf-font-table-data.
11237         (LY_DEFINE): new function otf-font?
11238
11239 2005-05-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11240
11241         * mf/GNUmakefile ($(outdir)/lilypond.map): remove rule.
11242         ($(outdir)/Fontmap.lily): idem.
11243
11244         * buildscripts/gen-emmentaler-scripts.py (i): load fetaXX encoding
11245         for PFAEmmentaler-XXX.pfa. 
11246
11247         * Documentation/user/music-glossary.tely (accidental): NL
11248         translation of accidental.
11249
11250 2005-05-02  Jan Nieuwenhuizen  <janneke@gnu.org>
11251
11252         * flower/include/international.hh: Bugfix: include "string.hh".
11253
11254         * lily/include/mingw-compatibility.hh: New file.
11255
11256         * flower/include/libc-extension.hh (memrev): Rename from strrev.
11257
11258         * configure.in: Search for mingw wcrtomb library.
11259
11260 2005-05-02  Mats Bengtsson  <mabe@s3.kth.se>
11261
11262         * scripts/convert-ly.py: Bug fix
11263
11264         * Documentation/user/changing-defaults.itely (Common tweaks):
11265         Added example where the context has to be specified explicitly
11266         (MetronomeMark). 
11267
11268 2005-05-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11269
11270         * scripts/lilypond-book.py (ly_options): set timing to #f for
11271         notime option.
11272
11273         * scripts/convert-ly.py (conv): typo.
11274
11275         * flower/*.cc: remove <? and >?
11276         
11277         * lily/*.cc: remove <? and >?
11278
11279         * lily/tweak-registration.cc (insert_tweak_from_file): Make sure
11280         that 0x0 isn't passed into scm_cons(). Fixes crash with tweak
11281         editor.
11282
11283 2005-04-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11284
11285         * lily/part-combine-engraver.cc: add space to variable list.
11286
11287 2005-04-30  Graham Percival  <gperlist@shaw.ca>
11288
11289         * scm/define-grobs.scm: changed RemoveEmptyVerticalGroup's
11290         remove-first to false (matches docs)
11291
11292         * Documentation/user/advanced-notation.itely: corrected docs
11293         concerning remove-first.
11294
11295 2005-04-29  Mats Bengtsson  <mabe@s3.kth.se>
11296
11297         * lily/part-combine-engraver.cc: make sure that the relevant
11298         properties are included in the documentation.
11299
11300 2005-04-28  Graham Percival  <gperlist@shaw.ca>
11301
11302         * Documentation/user/lilypond-book.itely: Bernard's docs
11303         for \betweenLilyPondSystem.
11304
11305 2005-04-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11306
11307         * Documentation/topdocs/INSTALL.texi (Top): remove TeX outdated
11308         remarks.
11309
11310 2005-04-28  Pal Benko  <benkop@freestart.hu>
11311
11312         * lily/mensural-ligature.cc (brew_flexa): apply thickness property
11313         only on vertical lines of flexa shape, and use a constant
11314         thickness value for horizontal lines (patch slightly modified by
11315         Jürgen Reuter)
11316
11317         * lily/include/mensural-ligature.hh: make 2 comments clearer
11318
11319 2005-04-28  Jürgen Reuter  <reuter@ipd.uka.de>
11320
11321         * lily/vaticana-ligature-engraver.cc (need_extra_space): renamed
11322         to need_extra_horizontal_space; bugfix: use class scope to avoid
11323         global namespace pollution
11324
11325         * Documentation/user/instrument-notation.itely (ligatures): added
11326         comment on possible future syntax change and how to work around
11327
11328         * lily/vaticana-ligature-engraver.cc, mf/parmesan-heads.mf
11329         (epiphonus, cephalicus): fine-tune shape of plica head for narrow
11330         intervals (fixes agnus dei example)
11331
11332         * Documentation/user/instrument-notation.itely (white mensural
11333         ligatures): selected a more illustrative example
11334
11335 2005-04-28  Heikki Junes <hjunes@cc.hut.fi>
11336
11337         * Documentation/index.html.in: specify utf-8 charset in meta content.
11338
11339 2005-04-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11340
11341         * python/lilylib.py (make_ps_images): bugfixes; GS can produce
11342         empty 2nd page for single page.
11343
11344         * scm/lily.scm: remove p&c definitions.
11345
11346         * po/zh_TW.po (Module): new translation.
11347
11348         * lily/lily-guile.cc (ly_chain_assoc): remove.
11349
11350         * lily/general-scheme.cc (LY_DEFINE): export ly:chain_assoc_get
11351         (LY_DEFINE): recurse, iso. calling ly_chain_assoc.
11352
11353 2005-04-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11354
11355         * lily/beaming-info.cc: remove infinity_i
11356
11357         * scripts/abc2ly.py (out_filename): fix thinko with \version.
11358
11359 2005-04-26  Graham Percival  <gperlist@shaw.ca>
11360
11361         * Documentation/user/basic-notation.itely,
11362         instrument-notation.itely, advanced-notation.itely,
11363         changing-defaults.itely: minor fixes.  Added docs
11364         for colors to advanced-notation.itely.
11365
11366         * Documentation/user/advanced-notation.itely: fixed compile
11367         problem and added Bernard's x11-color doc patch.
11368
11369 2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
11370
11371         * scm/output-ps.scm (grob-cause): Yet another fix, hope it's
11372         alright this time round.
11373
11374 2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11375
11376         * Documentation/topdocs/INSTALL.texi (Top): idem.
11377
11378         * Documentation/topdocs/README.texi (Top): remove clean-fonts refs.
11379
11380         * VERSION (MAJOR_VERSION): release 2.5.21
11381
11382         * scm/output-ps.scm (grob-cause): bugfix.
11383
11384 2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
11385
11386         * cygwin/*: Update.
11387
11388         * cygwin/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Remove profile
11389         stuff.
11390
11391         * scm/output-ps.scm (grob-cause): Bugfix.
11392
11393         * scm/lily.scm (ly:load): Remove x11-color.
11394
11395         * stepmake/aclocal.m4 (STEPMAKE_GET_EXECUTABLE): Bugfix: do not
11396         quote executable, fixes getting version from program --with
11397         --options.
11398         (STEPMAKE_KPATHSEA): Bugfix for Cygwin cross building: use
11399         $ac_exeect.
11400
11401         * Documentation/user/GNUmakefile: Only build music-glossary with
11402         rendered lilypond snippets during web.
11403
11404 2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11405
11406         * po/de.po: update.
11407
11408         * lily/GNUmakefile (OUT_DIST_FILES): don't dist lexer.cc
11409
11410 2005-04-22  Laura Conrad <lconrad@laymusic.org>
11411  
11412         * scripts/abc2ly:
11413         second title line append with punctuation dash character;
11414         encode abc2ly python strings in utf-8
11415        
11416 2005-04-21  Laura Conrad <lconrad@laymusic.org>
11417
11418         * scripts/abc2ly fix chords (again)
11419  
11420 2005-04-22  Bernard Hurley  <bernard@fong-hurley.org.uk>
11421
11422         * scm/x11-color.scm: new file
11423         All x11 color names can be accessed with:
11424         #(x11-color 'ColorName),
11425         #(x11-color "ColorName") or:
11426         #(x11-color "color name")
11427         If the x11 color name is not recognised then it defaults
11428         to black
11429
11430         * scm/lily.scm: amended to call scm/x11-color.scm
11431
11432 2005-04-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11433
11434         * Documentation/user/invoking.itely (Reporting bugs): comment out
11435         reference to online PNG bug repository.
11436
11437 2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
11438
11439         * lily/translator-scheme.cc (ly:translator-property): Remove.
11440         Update callers.
11441
11442         * lily/context-scheme.cc (ly:context-now): Move from translator.
11443         Update callers.
11444
11445 2005-04-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11446
11447         * input/regression/grid-lines.ly (skips): refine example.
11448
11449         * scm/define-context-properties.scm
11450         (all-user-translation-properties): doc autoBeamCheck
11451
11452         * input/regression/grid-lines.ly (Module): new file.
11453
11454         * lily/grid-point-engraver.cc (Module): new file.
11455
11456         * lily/grid-line.cc (Module): new file.
11457
11458         * lily/grid-line-span-engraver.cc (Module): new file.
11459
11460         * lily/grid-line-interface.cc (Module): new file.
11461
11462 2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
11463
11464         * scm/auto-beam.scm (revert-property-setting): Bugfixes: add
11465         missing parameter, actualy cdr through list.  Actually return a
11466         list with ENTRY removed (was '()).
11467
11468         * scripts/convert-ly.py: Update.  Print warning if file cannot be
11469         opened.
11470         (do_conversion): Fix printing of continuation comma.
11471
11472         * Documentation/user/advanced-notation.itely (Beam formatting):
11473         Remove refbugs about compound time and mixed duration.
11474
11475         * scm/auto-beam.scm (default-auto-beam-settings): Write out all
11476         modulo moments explicitely.
11477
11478         * lily/moment.cc (operator %): New function.
11479
11480         * lily/moment-scheme.cc (ly:mod-moment): Wrap it.
11481
11482         * lily/translator-scheme.cc (ly:translator-now,
11483         ly:translator-property): New function.
11484
11485         * scm/auto-beam.scm (default-auto-beam-check): New function.
11486
11487         * lily/auto-beam-engraver.cc (test_moment): Use it.
11488
11489         * flower/rational.cc (operator %): Bugfix.
11490
11491 2005-04-21  Erik Sandberg  <ersa9195@student.uu.se>
11492
11493         * scripts/abc2ly: Bugfix
11494
11495 2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11496
11497         * python/fontextract.py (write_extracted_fonts): bugfix, too many
11498         %'s on EndFont comment.
11499
11500         * lily/ledger-line-spanner.cc: some more words of explanation.
11501
11502 2005-04-20  John Williams <williams@tni.com>  
11503         
11504         * scripts/lilypond-book.py: htmlquote bugfix.
11505         Allow snippets to be given distinct filenames.
11506         Allow the default alt text to be overridden.
11507
11508 2005-04-20  Erik Sandberg  <ersa9195@student.uu.se>
11509
11510         * ly/performer-init.ly: Bugfix
11511
11512         * THANKS: Added bughunters.
11513
11514 2005-04-20  Jan Nieuwenhuizen  <janneke@gnu.org>
11515
11516         * SConstruct (test_lib): Bump mftrace requirement to 1.1.9.
11517
11518         * lily/auto-beam-engraver.cc (test_moment): Test exact measure
11519         position (was: use modulo measure length).
11520
11521         * configure.in (no gui_b): Remove optional gtk+ requirement.
11522
11523 2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11524
11525         * Documentation/user/basic-notation.itely (Pitches): add
11526         LedgerLineSpanner.
11527
11528         * lily/dynamic-engraver.cc (process_music): set right bound to
11529         script if present. Else, do not set.
11530         (acknowledge_grob): only set right bound of finished spanner to
11531         note column if no other bound is set.
11532
11533         * python/lilylib.py (make_ps_images): switch back to png16m.
11534         
11535 2005-04-19  Jan Nieuwenhuizen  <janneke@gnu.org>
11536
11537         * scripts/lilypond-book.py (write_if_updated): Bugfix for not
11538         writing up to date file.  Add dvips usage suggestion.
11539
11540         * scripts/convert-ly.py: Fix error message.
11541         Print usage if no files on command line.
11542         (usage): Add example usage.
11543
11544         * input/test/compound-time.ly: New file.
11545
11546         * input/test/circle.ly: New file.
11547
11548         * Documentation/topdocs/NEWS.tely: Use them.
11549
11550         * input/test/boxed-stencil.ly: Remove \score.
11551
11552         * buildscripts/mf-to-table.py (base): Add .log dependency.
11553
11554         * mf/GNUmakefile: Add PFAemmentaler and PFAaybabtu dependencies on
11555         pfa's.  Add .log dependency
11556
11557         * scm/define-markup-commands.scm (lower): New command.
11558
11559         * elisp/lilypond-mode.el (LilyPond-pdf-command): New command,
11560         make it default.
11561
11562 2005-04-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11563
11564         * lily/dynamic-engraver.cc (acknowledge_grob): add note-column
11565         also to finished cresc as right bound. This fixes:
11566         skip-string-decresc.ly
11567
11568         * lily/slur-scoring.cc (get_bound_info): robustness: substitute
11569         relative_coordinate if extent is empty.
11570
11571         * lily/stem.cc (width_callback): determine correct extent if flag
11572         is not there. This fixes slur-no-flag.ly
11573
11574         * lily/grace-engraver.cc (consider_change_grace_settings): new
11575         function.
11576         (initialize): also consider_change_grace_settings() on
11577         initialization. Fixes large grace notes at start of score.
11578
11579         * lily/break-align-interface.cc (do_alignment): don't translate if
11580         total_extent is empty.
11581
11582         * buildscripts/lilypond-{login,profile}.sh (Module): remove file.
11583
11584 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11585
11586         * scm/output-ps.scm (grob-cause): don't add cwd if path starts
11587         with slash.
11588
11589 2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
11590
11591         * stepmake/aclocal.m4: Remove tfm_path.
11592
11593 2005-04-18  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11594
11595         * scm/music-functions.scm (markup-expression->make-markup): fix
11596         bug with cons arguments of markup commands.
11597         (music->make-music): fix music expression property list building
11598
11599 2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
11600
11601         * aclocal.m4: Massage package names.
11602
11603         * SCons updates.
11604
11605 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11606
11607         * VERSION (PACKAGE_NAME): release 2.5.20
11608
11609         * lily/stem.cc (calc_stem_info): add minimum Y extent of
11610         stem-tremolo.  Fixes: bugs/tremolo-stem-length-beamed
11611
11612         * lily/percent-repeat-engraver.cc (try_music): add measure before
11613         next_moment to future processing moment. Fixes:
11614         percent-repeat-mm-rest.ly
11615         (process_music): don't add moment for 2nd time.
11616
11617         * input/regression/repeat-percent.ly: add mmrests as extra test.
11618
11619         * lily/axis-group-engraver.cc (acknowledge_grob): read
11620         keepAliveInterfaces to decide what to kill.
11621
11622         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add
11623         percent-repeat-interface to keepAliveInterfaces. This fixes
11624         percent-repeat-harakiri.
11625
11626 2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
11627
11628         * SCons updates.
11629
11630 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11631
11632         * config.make.in (TTFTOOL_ENDIAN): rm TFM_PATH
11633
11634         * aclocal.m4: remove --enable-tfm-path configure option
11635
11636         * input/test/ancient-font.ly (lowerStaff): clef name errors.
11637
11638         * scm/backend-library.scm (postscript->png): newline after
11639         finishing command.
11640
11641         * lily/paper-score-scheme.cc (LY_DEFINE): new file.
11642         (LY_DEFINE): ly:paper-score-paper-systems: new function 
11643
11644         * lily/score-scheme.cc (LY_DEFINE): require music argument. 
11645
11646         * lily/score.cc (default_rendering): use Music_output too.
11647
11648         * input/test/chord-names-languages.ly (Module): rename file.
11649
11650         * lily/text-spanner.cc: add bound-padding.
11651
11652         * lily/paper-book.cc (systems): accept Paper_score
11653         iso. Paper_system vector. 
11654
11655         * input/regression/line-arrows.ly: new file.
11656
11657         * lily/paper-score.cc (process): run get_paper_systems() only once.
11658
11659         * lily/line-spanner.cc (line_stencil): add arrows.
11660
11661 2005-04-18  Jonatan Liljedahl  <lijon@kymatica.com>
11662
11663         * lily/line-interface.cc (make_arrow): new function. 
11664         (arrows): idem.
11665
11666 2005-04-18  Mathieu Giraud  <magiraud@free.fr>
11667
11668         * input/test/chord-names-german.ly: update for italian/french
11669         chords.
11670         
11671         * Documentation/user/instrument-notation.itely (Printing chord
11672         names): update.
11673
11674 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11675
11676         * lily/include/paper-score.hh (class Paper_score): remove unused
11677         prototypes.
11678
11679         * lily/book.cc (process): add -COUNT to midi output.
11680
11681         * lily/score.cc (book_rendering): remove outname argument
11682         (book_rendering): return list of Music_outputs. 
11683
11684         * lily/global-context-scheme.cc (LY_DEFINE): remove outname argument.
11685
11686         * lily/book.cc (process): loop over Music_outputs returned from
11687         Score::book_rendering().
11688
11689         * lily/*.cc (width_callback): remove spurious "unused" warnings
11690         for assert (axis==[XY]_AXIS); 
11691
11692         * lily/include/music-output.hh (class Music_output): smobify class.
11693
11694         * lily/include/paper-score.hh (class Paper_score): make members
11695         private.
11696
11697         * lily/performance.cc (process): return #f iso. #<undefined>. This
11698         prevents #<undefined> leaking into GUILE-userspace.
11699
11700 2005-04-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11701
11702         * config.hh.in: remove HAVE_PANGO_FC_FONT_MAP_ADD_DECODER_FIND_FUNC.
11703
11704 2005-04-17  Mathieu Giraud  <magiraud@free.fr>
11705
11706         * scm/chord-name.scm : support for italian and french
11707         chords names.
11708
11709         * scm/chord-ignatzek-names.scm (ignatzek-chord-names): add
11710         a space defined by chordPrefixSpacer when the root name is
11711         direclty followed by a prefix.
11712
11713         * ly/engraver-init.ly : chordPrefixSpacer       
11714         * scm/define-context-properties.scm : chordPrefixSpacer
11715         * ly/property-init.ly : italianChords, frenchChords 
11716
11717 2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
11718
11719         * mf/feta-din.mf: Remove.
11720
11721         * mf/GNUmakefile (fontdir): Bugfix.
11722
11723         * mf/SConstruct: Some updates.
11724
11725         * SConstruct: Require pkg-config.
11726         (test_program): Bugfix for double digit version compares, use
11727         integer (not string-) compare.
11728         Optionally require gs 8.14.
11729
11730         * stepmake/aclocal.m4 (STEPMAKE_PANGO_FT2): Define HAVE_PANGO16 too.
11731
11732         * lily/*: s/ifdef HAVE_*/if have/.
11733
11734         * SConstruct (test_lib): New function.  Update pkg-config and some
11735         other requirements.
11736
11737         * configure.in: Require pkg-config.  Enforce REQUIRE and version for
11738         freetype, pangof2t.
11739
11740 2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
11741
11742         * po/lilypond.pot, ...: Update using bison-CVS.
11743
11744         * python/lilylib.py (make_ps_images): Fixo.
11745
11746 2005-04-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11747
11748         * python/lilylib.py (make_ps_images): typo.
11749
11750         * configure.in (gui_b): make bison optional.
11751
11752         * lily/GNUmakefile (OUT_DIST_FILES): dist parser and lexer.
11753
11754 2005-04-16  Bernard Hurley  <bernard@fong-hurley.org.uk>
11755
11756         * framework-eps.scm: code added so that a macro \betweenLilyPondSystem
11757         with one parameter can be defined in a LaTeX file when processed
11758         by lilypond-book this will be evaluated between the systems of
11759         a multi-system score. The parameter is the number of systems processed.
11760
11761 2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
11762
11763         * python/lilylib.py (make_ps_images): Escape newline.
11764
11765         * Documentation/user/music-glossary.tely: Run
11766         texinfo-all-menus-update.
11767
11768 2005-04-14  Jan Nieuwenhuizen  <janneke@gnu.org>
11769
11770         * scm/lily-library.scm (old-relative-not-used-message)
11771         (version-not-seen-message): Add input-file-name-location to message.
11772
11773         * lily/parser.yy (lilypond): Add token aliases.
11774
11775         * Documentation/user/music-glossary.tely (accidental): Fixes.  Do
11776         not confuse with alteration.
11777         (alteration): Add.
11778
11779 2005-04-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11780
11781         * python/lilylib.py (make_ps_images): use -dEPSCrop
11782
11783         * VERSION (PACKAGE_NAME): release 2.5.19 
11784
11785         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
11786         only put xrefs in info documentation.
11787
11788         * make/ly-rules.make ($(outdir)/%.html.omf): transplant .dvi ->
11789         .pdf rule to tex-rules.make.
11790
11791         * scm/framework-eps.scm (dump-stencils-as-EPSes): remove comments
11792         from -systems.* output.
11793
11794         * stepmake/stepmake/tex-rules.make ($(outdir)/%.pdf): make PDF
11795         directly, remove -$(PAGESIZE) target.
11796
11797         * input/test/embedded-postscript.ly: update.
11798
11799 2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11800
11801         * make/lysdoc-targets.make (local-WWW): remove ps.gz target.
11802
11803         * Documentation/user/changing-defaults.itely (Font selection):
11804         document font-name.
11805
11806         * input/regression/font-name.ly: show Pango fonts for
11807         font-name. Update example. 
11808
11809         * lily/pango-select.cc (properties_to_pango_description): don't
11810         convert symbol font-size to number, but use to lookup.
11811
11812         * python/fontextract.py (write_extracted_fonts): add VMusage 0.
11813
11814         * scm/framework-ps.scm (write-preamble): use (NAME . CONTENTS) and
11815         (NAME . FILE-NAME) tuples for font descriptions. 
11816         (write-preamble): display BeginFont DSC comments.
11817
11818         * python/fontextract.py (write_extracted_fonts): new file. Extract
11819         font resources from a PS file.
11820
11821         * scripts/lilypond-book.py (option_definitions): --psfonts option.
11822         (Compile_error.process_include): do_file returns chunks.
11823
11824         * make/ly-vars.make (DVIPS_FLAGS): don't load .map file.
11825
11826         * make/lysdoc-targets.make: .texi is .PRECIOUS
11827
11828         * scripts/lilypond-book.py (write_if_updated): new function.
11829
11830 2005-04-13  Jan Nieuwenhuizen  <janneke@gnu.org>
11831
11832         * scm/framework-eps.scm (dump-stencils-as-EPSes): Massage messages.
11833
11834 2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11835
11836         * scm/framework-eps.scm (dump-stencils-as-EPSes): no massages.
11837
11838         * input/regression/markup-syntax.ly: remove \score.
11839
11840         * scm/define-markup-commands.scm (draw-circle): add fill argument
11841
11842         * scm/stencil.scm (make-circle-stencil): add fill argument
11843
11844         * ps/music-drawing-routines.ps: add fill argument.
11845
11846         * ly/performer-init.ly: add CueVoice to MIDI too.
11847
11848         * ps/music-drawing-routines.ps: new routine BeginEPSF /
11849         EndEPSF.
11850
11851         * input/regression/markup-eps.ly: new file.
11852
11853         * scm/framework-ps.scm (write-preamble): change order: vars should
11854         be inited before procedures.
11855
11856         * scm/output-ps.scm (glyph-string): break lines. 255 chars is max
11857         for EPS files.
11858
11859         * scm/define-markup-commands.scm (epsfile): add epsfile command.
11860
11861 2005-04-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11862
11863         * configure.in (gui_b): add check for ghostscript 8.15
11864
11865 2005-04-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11866
11867         * lily/hairpin.cc (after_line_breaking): suicide the hairpinlet at
11868         start of line. Fixes cresc-after-newline.ly
11869
11870         * lily/source-file.cc (file_line_column_string): use get_column().
11871
11872 2005-04-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11873
11874         * lily/source-file.cc (get_column): utf-8 support for column numbers.
11875
11876 2005-04-12  Jan Nieuwenhuizen  <janneke@gnu.org>
11877
11878         * lily/*: use message () iso progress_indication () for messages.
11879         Revise/uniformise user messages.
11880
11881         * flower/warn.cc (progress_indication): New function.
11882         (message): Use it.  Fixes newline problems.
11883
11884         * config.make.in (webdir): Sort out install dirs.
11885
11886         * stepmake/stepmake/generic-targets.make (final-install): Bugfix.
11887
11888         * python/lilylib.py (command_name): Bugfix.
11889         (make_ps_images):
11890
11891 2005-04-11  Pedro Kroger  <kroeger@pedrokroeger.net>
11892
11893         * lily/main.cc: --help says what types of backends are availabe
11894
11895 2005-04-11  Jan Nieuwenhuizen  <janneke@gnu.org>
11896
11897         Fix ./VERSION dependency, and without need to reconfigure.
11898
11899         * lily/main.cc (setup_paths): Update.
11900
11901         * stepmake/bin/make-version.py (defs): Add TOPLEVEL_VERSION define..
11902
11903         * config.hh.in (LILYPOND_DATADIR): Remove TOPLEVEL_VERSION.
11904
11905         * scripts/convert-ly.py (\markup): Fix too simplistic regexps.
11906         Add \line for some simplistic cases.
11907
11908         * lily/GNUmakefile (main.o): Add missing dependency on version.hh.
11909
11910 2005-04-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11911
11912         * elisp/lilypond-mode.el (LilyPond-lilypond-command): command used
11913         to compile LY files (useful for adding eg. "-I" args)
11914         (LilyPond-command-alist): use `LilyPond-lilypond-command'. Add a
11915         2Gnome command for gnome backend.
11916         (LilyPond-command-formatgnome): call the 2Gnome command. key
11917         binding: C-c C-g
11918
11919 2005-04-10  Jan Nieuwenhuizen  <janneke@gnu.org>
11920
11921         * Documentation/user/GNUmakefile (lilypond/index.html): Bugfix:
11922         depend on all PNG images.
11923
11924 2005-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
11925
11926         * GNUmakefile.in: Bugfix: also link .map files.
11927
11928 2005-04-09  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11929
11930         * scm/music-functions.scm (music->make-music): generate 
11931         a (make-music ...) sexpr from a music expression.
11932         (display-scheme-music): use guile pretty printer to display the
11933         make-music sexpr.
11934
11935 2005-04-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11936
11937         * ly/engraver-init.ly: reindent.
11938         Add CueVoice.
11939
11940         * scm/music-functions.scm (music-pretty-string): handle moments
11941         too.
11942         (music-pretty-string): only print non-empty lists.
11943         (cue-substitute): create CueVoice context, which has smaller type.
11944
11945         * lily/moment-scheme.cc (LY_DEFINE): new methods
11946         ly:moment-grace-{numerator,denominator}
11947
11948         * lily/context-handle.cc: remove quit() method. 
11949
11950         * lily/font-config.cc (init_fontconfig): be verbose about font path.
11951         (init_fontconfig): success is 0, not !0
11952
11953 2005-04-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11954
11955         * mf/feta-nummer-code.mf (code): add plus glyph.
11956
11957         * lily/tie.cc (print): idem.
11958
11959         * lily/slur.cc (print): don't use thickness property for
11960         slur shape-thickness.
11961
11962         * lily/stencil-scheme.cc (LY_DEFINE): don't reverse the order
11963         while adding stencils.
11964
11965         * scm/define-markup-commands.scm (with-color): with-color markup
11966         command.
11967         (whiteout): new markup command 
11968         (filled-box): new markup command
11969
11970 2005-04-07  Jan Nieuwenhuizen  <janneke@gnu.org>
11971
11972         * Documentation/topdocs/NEWS.tely (Top): Make tex-able.  Handy
11973         test for PDF docs.
11974
11975         * mf/GNUmakefile (lilypond.map): Add PFAEmmentaler,
11976         PFAAybabtu-Regular.  Fixes feta font in PDFs.
11977         
11978         Notes for tetex-3.0 make web:
11979            psclean.map: s/uhv8a/uhvr8a/
11980            config.ps add:
11981                 p +psfonts_t1.map
11982                 p +psclean.map
11983                 p +typeface.map
11984
11985 2005-04-06  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11986
11987         * scm/music-functions.scm (music-pretty-string): fix bug with
11988         string argument.
11989
11990 2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
11991
11992         * stepmake/bin/add-html-footer.py (i18n): Bugfix.
11993
11994 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11995
11996         * scripts/lilypond-book.py (Lilypond_snippet.__init__): 
11997         only process options if they're there.
11998         (write_file_map): add version-seen? to snippet-map.ly
11999
12000 2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
12001
12002         * scripts/lilypond-book.py (split_options): Bugfix.  Small code
12003         formatting cleanups.
12004
12005         * mf/GNUmakefile: Rewrite $addprefix, $addsuffix using % short-forms.
12006         Add PFAaybabtu.pfa dependency on aybabtu.subfonts.
12007
12008 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12009
12010         * scm/framework-ps.scm (ps-font-command): don't hash, just use
12011         name directly.
12012
12013         * lily/main.cc (setup_paths): either add mf/out to search path or 
12014         fonts/{otf,type1,etc}
12015         
12016         * lily/font-config.cc (init_fontconfig): either add mf/out to
12017         FontConfig or fonts/{otf,type1,etc}
12018
12019         * GNUmakefile.in: don't put mf/ link in share/ dir.
12020
12021         * lily/staff-spacing.cc: move same-direction-correction to
12022         note-spacing-interface
12023
12024         * scm/lily.scm (lilypond-main): use variable argument count for
12025         exception handler.
12026
12027         * lily/font-config.cc (init_fontconfig): add operator pacification
12028         message.
12029
12030         * mf/aybabtu.pe.in (i): generate PFAAybabtu.pfa
12031
12032         * buildscripts/gen-emmentaler-scripts.py (i): generate
12033         PFAEmmentaler as well.
12034
12035         * scm/framework-ps.scm (munge-lily-font-name): new function
12036         (write-preamble): hack: insert PFA equivalent of CFF into
12037         .PS. This makes LilyPond output printable on normal PS printers
12038         again.
12039
12040         * buildscripts/gen-emmentaler-scripts.py (i): generate
12041         PFAEmmentaler.pfa aswell.
12042
12043 2005-04-06  John Williams <williams@tni.com>  
12044         
12045         * scripts/lilypond-book.py: refactor the compose_ly procedure.
12046         
12047 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12048
12049         * scm/page-layout.scm (default-page-make-stencil): always combine
12050         the header stencil, even if empty. This prevents the body text to
12051         reach up to the margins.
12052
12053         * po/rw.po (Module): new file, for Kinyarwanda.
12054
12055         * input/test/spacing-optical.ly (Module): new file.
12056
12057         * lily/staff-spacing.cc: add same-direction-correction
12058
12059 2005-04-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12060
12061         * Documentation/user/introduction.itely (Engraving): Comment-out
12062         non-existent file.
12063
12064 2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12065
12066         * scm/define-grob-properties.scm (all-user-grob-properties): add
12067         same-direction-correction
12068
12069         * VERSION: release 2.5.18
12070
12071 2005-04-05  Jan Nieuwenhuizen  <janneke@gnu.org>
12072
12073         * lily/grob.cc (mark_smob): Check pscore->layout_ before
12074         dereferencing.  Fixes make web.
12075
12076         * lily/midi-stream.cc: Handle unwritable midi file.  Include
12077         errno.h.
12078
12079         * Documentation/user/: Fix links.
12080
12081 2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12082
12083         * lily/text-interface.cc (Module): rename from text-item.cc
12084
12085         * input/regression/apply-output.ly (texidoc): function naming fix.
12086
12087         * lily/time-signature-performer.cc (derived_mark): new function.
12088
12089         * lily/lily-parser-scheme.cc:  print mapped file name for progress
12090
12091         * scripts/lilypond-book.py (find_linestarts): new function.
12092         (find_toplevel_snippets): keep track of line numbers.
12093
12094         * lily/key-performer.cc (try_music): remove FIXME warning, gobble
12095         all key changes.
12096
12097         * ly/declarations-init.ly (partCombineListener): use
12098         ignoreBarChecks. Fixes: warn-partcombine-barcheck.ly
12099
12100         * lily/bar-check-iterator.cc (process): ignoreBarChecks property.
12101
12102 2005-04-04  Jan Nieuwenhuizen  <janneke@gnu.org>
12103
12104         * lily/text-item.cc: Fix link.
12105
12106         * Documentation/user/changing-defaults.itely (Changing defaults):
12107         Fix programs reference links.
12108
12109         * Documentation/user/music-glossary.tely: Convert to utf-8.
12110
12111 2005-04-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12112
12113         * make/lilypond-vars.make: remove TEXMF from variables.
12114         remove DEB_BUILD pk font variables.
12115         remove GUILE_LOAD_PATH
12116         remove TeX memory vars.
12117
12118 2005-04-04  Werner Lemberg  <wl@gnu.org>
12119
12120         * lilypond/scm-option.cc (ly_option_usage): Add final newline.
12121
12122 2005-04-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12123
12124         * ps/lilyponddefs.ps: remove reencode-font
12125
12126         * lily/simple-spacer.cc (add_columns): also compare
12127         directly. Column rank doesn't distinguish between broken and
12128         unbroken columns. This fixes large spaces before time sig changes.
12129
12130         * Documentation/user/point-and-click.itely: document ly:set-option.
12131
12132         * lily/grob.cc (get_uncached_stencil): only set grob-cause if
12133         point_and_click_global is set.
12134
12135         * lily/scm-option.cc (LY_DEFINE): add point-and-click
12136         ly:set-option argument.
12137
12138 2005-04-03  Jan Nieuwenhuizen  <janneke@gnu.org>
12139
12140         * GNUmakefile.in: Include symlinks in webball.
12141
12142         * Documentation/user/GNUmakefile (source-links): Add symlinks to
12143         source dir for split and non-split manuals.
12144
12145         * Documentation/user/*y: Fix @uref/@inputfile links for
12146         split/non-split HTML documents.
12147
12148         * Documentation/user/GNUmakefile (local-WWW): Do not generate
12149         .ps.gz.
12150         
12151 2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
12152
12153         * GNUmakefile.in: Add newline.
12154
12155 2005-04-01  Erlend Aasland  <erlenda@gmail.com>
12156
12157         * tex/lilyponddefs.tex: use color instead of xcolor
12158         * scm/output-tex.scm: minor editing
12159
12160 2005-04-02  Nicolas Sceaux  <nicolas.sceaux@free.fr>
12161
12162         * scm/music-functions.scm (display-scheme-music): pretty printer
12163         for music expressions.
12164
12165 2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
12166
12167         * buildscripts/install-info-html.sh (index_file): Fix link.
12168
12169 2005-04-01  Jan Nieuwenhuizen  <janneke@gnu.org>
12170
12171         * input/test/dynamic-extra.ly (piuf): Use utf-8 iso TeX accent.
12172
12173         * Documentation/index.html.in: Add size estimates with some big pages.
12174
12175         * Documentation/user/tutorial.itely (Running LilyPond for the
12176         first time): Add/replace some @rglos links.  TODO: add more
12177         @rglos links in tutorial, test non-intrusiveness (.css).
12178
12179         * stepmake/bin/add-html-footer.py (do_file): Remove info's
12180         annoying's indication of referencing external document.
12181
12182         * Documentation/user/GNUmakefile: Split version of glossary too.
12183         * Documentation/user/macros.itexi (@rglos): Have makeinfo produce
12184         links, not only for html.
12185
12186         * Documentation/user/introduction.itely: Fix some links for other
12187         than html, do not use `here' as link name.
12188
12189 2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
12190
12191         * scm/documentation-generate.scm (string-append): Fix @usermanref,
12192         @glossaryref.
12193
12194 2005-03-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12195
12196         * scm/page-layout.scm (default-page-make-stencil): only add header
12197         if existing and not empty. Fixes spurious programming error.
12198
12199         * lily/span-bar.cc (print): don't make rounded edges for spanbars.
12200
12201 2005-03-31  Erlend Aasland  <erlenda@gmail.com>
12202
12203         * scm/output-tex.scm: implement {re,}setcolor
12204         * tex/lilyponddefs.tex: use color package
12205
12206 2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
12207
12208         * GNUmakefile.in (local-WWW-post): Restore .htaccess and .html
12209         additions to website.
12210
12211         * Documentation/user/lilypond.tely: Remove reference to ps.gz.
12212
12213         * Documentation/user/macros.itexi: Fix @usermanref html links in
12214         split documents: use @inforef.
12215
12216 2005-03-30  Graham Percival  <gperlist@shaw.ca>
12217
12218         * Documentation/user/programming-interface.itely: minor fix.
12219
12220         * Documentation/user/advanced-notation.itely: added info to
12221         Metronome markings.
12222
12223 2005-03-30  Jan Nieuwenhuizen  <janneke@gnu.org>
12224
12225         * scm/output-lib.scm (make-stencil-boxer): Junk code duplication,
12226         use box-stencil.  Remove y-padding argument.
12227         (make-stencil-circler): New function.
12228
12229         * buildscripts/lilypond-words.py (F): 
12230         * elisp/SConscript (a): 
12231         * elisp/GNUmakefile (LILYPOND_WORDS_DEPENDS):
12232         * vim/SConscript (a): 
12233         * vim/GNUmakefile (LILYPOND_WORDS_DEPENDS): Update.
12234
12235         * lily/general-scheme.cc: Build fix.
12236
12237         * scm/markup.scm:
12238         * input/regression/markup-scheme.ly: 
12239         * input/regression/markup-syntax.ly: Drop 'new-' from name.
12240
12241         * scm/stencil.scm (make-circle-stencil): New function.
12242
12243         * scm/define-markup-commands.scm (draw-circle): Use it.  New
12244         name (was cicle).  Update callers.
12245         (circle): New markup command, similar to box.
12246
12247         * scm/stencil.scm (circle-stencil): New function.
12248
12249 2005-03-29  David Jedlinsky  <lilypond@ipnh.com>
12250
12251         * configure.in: Detect libutf8/wchar.h variant.
12252
12253         * stepmake/aclocal.m4: Modify shared size test.
12254
12255 2005-03-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12256
12257         * make/lilypond.fedora.spec.in (Group): remove texmf profile stuff.
12258
12259 2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12260
12261         * scripts/convert-ly.py (conv): add stencil-aligned-to! rule.
12262         
12263         * VERSION (PACKAGE_NAME):  release 2.5.17
12264
12265 2005-03-29  Jan Nieuwenhuizen  <janneke@gnu.org>
12266
12267         * scm/backend-library.scm (postscript->png): Fix comment and png
12268         message.
12269
12270         * GNUmakefile.in (link-tree): Fix locales.
12271
12272 2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12273
12274         * lily/stencil-scheme.cc (LY_DEFINE): change to
12275         ly:stencil-aligned-to, non mutating.
12276
12277         * scm/safe-lily.scm (lambda): remove ly:stencil-set-extent!
12278
12279         * lily/stencil-scheme.cc: remove ly:stencil-set-extent!
12280
12281         * lily/quote-iterator.cc (derived_mark): call
12282         Music_wrapper_iterator::derived_mark() too.
12283
12284         * lily/grace-engraver.cc (derived_mark): change signature, add
12285         const.
12286
12287 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12288
12289         * SConstruct (symlink): 
12290         * GNUmakefile.in (link-tree): Add scripts to prefix.
12291
12292         * lily/general-scheme.cc (ly:effective-prefix): New function.
12293
12294         * scm/backend-library.scm (postscript->png): Use it.
12295
12296 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12297
12298         * lily/paper-score.cc (process): don't delete grobs after
12299         producing stencils. 
12300
12301         * scm/part-combiner.scm (determine-split-list): switch off
12302         debugging info.
12303
12304         * scm/backend-library.scm (postscript->png): explicitly use ps2png.py
12305         if available.
12306
12307         * scm/define-context-properties.scm
12308         (all-user-translation-properties): add stringNumberOrientations.
12309
12310         * lily/new-fingering-engraver.cc (position_scripts): make generic,
12311         so fingering and string-numbers are separately controlled.
12312
12313 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12314
12315         * stepmake/aclocal.m4: Fix shared size test: add missing comma, do
12316         not use debugging.
12317
12318 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12319
12320         * GNUmakefile.in (local-WWW-post): remove UTF8 .htaccess.
12321
12322         * config.hh.in: add HAVE_FONTCONFIG.
12323
12324         * Documentation/user/instrument-notation.itely (String number
12325         indications): new node.
12326
12327         * input/regression/new-markup-syntax.ly (texidoc): add circle.
12328
12329         * lily/new-fingering-engraver.cc (add_string): new function. 
12330         (acknowledge_grob): accept string-number-event as well.
12331
12332         * scm/define-markup-commands.scm (circle): new markup command.
12333
12334         * scm/output-lib.scm (print-circled-text-callback): new function.
12335
12336         * lily/GNUmakefile: move ifeq after include stepmake.make.
12337
12338 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12339
12340         * config.make.in (HAVE_LIBKPATHSEA_SO):
12341         * stepmake/aclocal.m4: Also subst HAVE_LIBKPATHSEA_SO.
12342
12343         * lily/GNUmakefile (MODULE_LDFLAGS): Only if not HAVE_KPATHSEA_SO,
12344         add KPATHSEA_LIBS.
12345
12346         * debian/watch: 
12347         * debian/control: Update.
12348
12349 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12350
12351         * input/test/title-markup.ly (spaceTest): remove.
12352
12353         * input/test/embedded-tex.ly (Module): remove.
12354
12355         * input/test/music-box.ly: use 'name property, not ly:music-name.
12356
12357         * lily/GNUmakefile (MODULE_LDFLAGS): add KPATHSEA_LIBS.
12358
12359         * stepmake/aclocal.m4: STEPMAKE_FONTCONFIG: add.
12360
12361 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12362
12363         * Documentation/topdocs/INSTALL.texi (Top): Remove information
12364         about xdeltas.  Add information about CVS.
12365
12366         * scm/lily.scm (lilypond-main): Fix invocation of handler,
12367         gracefully handle failed files.
12368
12369         * lily/GNUmakefile (MODULE_LDFLAGS): Remove KPATHSEA_LIBS.
12370
12371         * Documentation/topdocs/INSTALL.texi (Top): Whitespace and other
12372         small fixes.
12373
12374         * scm/framework-tex.scm (convert-to-ps): Proper option spacing.
12375         No unnecessarily specific i18n messages.  Remove stray `1'.
12376
12377 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12378
12379         * buildscripts/lys-to-tely.py (strip_extension): add utf-8
12380         documentencoding
12381
12382         * scm/documentation-lib.scm (texi-file-head): set utf-8
12383         documentencoding.
12384
12385         * ly/chord-modifiers-init.ly (whiteTriangleMarkup): use the greek
12386         Delta, not the Symbol one. 
12387
12388         * mf/GNUmakefile ($(outdir)/lilypond.map): add -Regular to Aybabtu
12389         for the .map file.
12390
12391         * Documentation/topdocs/INSTALL.texi (Top): add running
12392         requirement as compilation requirement.
12393
12394 2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12395
12396         * buildscripts/mutopia-index.py (headertext): add h1 header and
12397         utf-8 charset meta field.
12398
12399         * input/GNUmakefile: prune example list.
12400
12401         * scm/framework-tex.scm (convert-to-ps): add -ofoo.ps to dvips
12402         options.
12403
12404         * lily/slur-scoring.cc (get_base_attachments): only look at stem
12405         extent for visible stems.
12406
12407         * lily/grob.cc (mark_smob): mark \layout block from Grob::mark_smob().
12408
12409 2005-03-27  Jan Nieuwenhuizen  <janneke@gnu.org>
12410
12411         * Documentation/topdocs/INSTALL.texi (Top): Updates.
12412
12413         * scripts/convert-ly.py: Python 2.2 compatibility (thanks Mats).
12414
12415 2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12416
12417         * lily/slur-scoring.cc (get_base_attachments): robustness. Don't
12418         pass inf/nan into slur scoring.
12419
12420         * ly/titling-init.ly (oddHeaderMarkup): don't show page no. on 1st
12421         page.
12422
12423         * scripts/abc2ly.py (dump_voices): use alphabet().
12424
12425 2005-03-27  Jeff Smith <whydoubt@yahoo.com>
12426         
12427         * mf/GNUmakefile (depth): use $(FONTFORGE). 
12428
12429 2005-03-27 Matthias Neeracher <neeracher@mac.com>
12430         
12431         * flower/include/virtual-methods.hh: simplify. Patch by
12432
12433 2005-03-25  John Williams <williams@tni.com>  
12434
12435         * scripts/lilypond-book.py (main): add png for HTML too, guess
12436         only if necessary. 
12437
12438 2005-03-25  Graham Percival  <gperlist@shaw.ca>
12439
12440         * Documentation/topdocs/INSTALL.texi: now recommends
12441         lexer-gcc-3.1.sh for gcc 3.1.1 or higher.
12442
12443         * Documentation/user/basic-notation.itely,
12444         Documentation/user/tutoria.itely: warn about
12445         only one (phrasing) slur at once.
12446
12447 2005-03-24  Pedro Kroger  <kroeger@pedrokroeger.net>
12448
12449         * ly/music-functions-init.ly (removeWithTag): fixed to return "music".
12450
12451 2005-03-23  Graham Percival  <gperlist@shaw.ca>
12452
12453         * Documentation/user/basic-notation.itely: fixed info about
12454         ending a (de)cresc.
12455
12456         * Documentation/user/lilypond-book.itely: fixed
12457         lilypond-book filter example and warned about not doing
12458         --filter and --process at the same time.
12459
12460 2005-03-23  Mats Bengtsson  <mabe@s3.kth.se>
12461
12462         * lily/parser.yy (bass_number),
12463         Documentation/user/instrument-notation.itely (Figured bass): 
12464         Add the possibility to use text markup in figured bass. 
12465
12466 2005-03-19  Graham Percival  <gperlist@shaw.ca>
12467
12468         * Documentation/user/global.itely: added info about naming
12469         identifiers and breakbefore.
12470
12471         * Documentation/user/invoking.itely: added info about batch
12472         processing files with convert-ly, removed references to TeX
12473         in the jail section.
12474
12475         * Documentation/user/examples.itely: possibly fixed piano
12476         dynamics.
12477
12478         * Documentation/user/advanced-notation.itely: added info
12479         about removing other types of Staff.
12480
12481         * Documentation/user/instrument-notation.itely: possibly
12482         fixed piano staff line switch.
12483
12484         * Documentation/user/changing-defaults.itely: added info
12485         about using normal font in titles.
12486
12487 2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12488
12489         * VERSION (PATCH_LEVEL): release 2.5.16
12490
12491         * make/ly-vars.make (DVIPS_FLAGS): include lilypond.map path
12492         explicitly.
12493
12494 2005-03-18  Jan Nieuwenhuizen  <janneke@gnu.org>
12495
12496         * scm/framework-tex.scm (convert-to-dvi): Barf if NAME contains
12497         whitespace.
12498
12499         * python/lilylib.py (make_ps_images):
12500         * scm/backend-library.scm (postscript->pdf, postscript->png):
12501         Quote file name.  Use format rather than string-append juggling.
12502
12503 2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12504
12505         * python/lilylib.py (make_ps_images): add x to -g argument. 
12506
12507         * lily/key-performer.cc (create_audio_elements): don't use
12508         scm_eval_string. Check for minor 3rd directly.
12509   
12510         * input/mutopia/J.S.Bach/baerenreiter-sarabande.ly
12511         (sarabandeCelloGlobal): key is D minor, not F major.
12512
12513 2005-03-17  Jan Nieuwenhuizen  <janneke@gnu.org>
12514
12515         Fix truncated --png output (Peter Danenberg).
12516         
12517         * python/lilylib.py (make_ps_images):
12518         * scripts/ps2png.py (copyright): Grok --papersize option.
12519
12520         * scm/backend-library.scm (postscript->png): Add parameter
12521         PAPERSIZE.  Update callers.
12522
12523         * scm/output-gnome.scm (music-font?): Bugfix: use "Emmentaler".
12524         Fixes symbol placement.
12525
12526         * lily/spanner.cc: 
12527         * lily/stencil.cc: Use "libc-extension.hh" (WAS:
12528         <libc-extension.hh>).
12529
12530 2005-03-16  Jan Nieuwenhuizen  <janneke@gnu.org>
12531
12532         * Nitpick run.
12533
12534         * buildscripts/fixcc.py: Update.
12535
12536         Builddir run fixes.
12537
12538         * HACKING (datadir): Add VERSION.
12539
12540         * GNUmakefile.in (linktree): Bugfix: outconfdirs are one dir
12541         higher up.
12542
12543 2005-03-15  Werner Lemberg  <wl@gnu.org>
12544
12545         * mf/feta-klef.mf (draw_gclef): Move z10' slightly so that the
12546         diagonal stem doesn't become thinner.
12547
12548 2005-03-15  Jan Nieuwenhuizen  <janneke@gnu.org>
12549
12550         * buildscripts/fixcc.py: Fixes (Werner).
12551
12552 2005-03-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12553
12554         * mf/GNUmakefile ($(outdir)/lilypond.map): capitalize
12555         Emmentaler/Aybabtu.
12556
12557         * GNUmakefile.in: fix lilypond-words path.
12558
12559         * po/tr.po: update to 2.3.21
12560
12561         * lily/new-fingering-engraver.cc (position_scripts): take priority
12562         from head position.
12563
12564         * input/regression/finger-chords-order.ly (texidoc): new file.
12565
12566 2005-03-14  Jan Nieuwenhuizen  <janneke@gnu.org>
12567
12568         * make/ly-rules.make: 
12569         * stepmake/aclocal.m4: 
12570         * Documentation/user/GNUmakefile: Remove old makeinfo compatibility.
12571
12572         * buildscripts/fixcc.py (rules): Leave space after operator.
12573
12574 2005-03-14  Werner Lemberg  <wl@gnu.org>
12575
12576         * mf/feta-klef.mf (draw_gclef): Replace `simple_serif' for
12577         top of the glyph with smooth curve.
12578
12579 2005-03-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12580
12581         * Documentation/user/global.itely (Page layout): remove
12582         printpagenumber.
12583
12584 2005-03-13  Jürgen Reuter  <reuter@ipd.uka.de>
12585
12586         * input/regression/mensural-ligatures.ly: new file (with examples
12587         compiled by Pal Benko).
12588
12589         * Documentation/user/instrument-notation.itely: Bugfix: yet some
12590         other "custodes.*-u0" -> "custodes.*.u0" renaming victims in
12591         musicglyph access.  Many small beautifications in ancient
12592         examples.
12593
12594         * input/test/divisiones.ly: fixed indentation; small
12595         beautifications
12596
12597         * ly/engraver-init.ly: added FIXME comment
12598
12599         * scripts/lilypond-book.py,
12600         Documentation/user/lilypond-book.itely: added music fragment
12601         option "packed" to lilypond-book
12602
12603         * Documentation/user/instrument-notation.itely: Bugfix: added
12604         missing LedgerLineSpanner color setting in several places.  Added
12605         music fragment option "packed" to VaticanaContext example.
12606
12607 2005-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12608
12609         * scm/define-grobs.scm (all-grob-descriptions): switch off
12610         Hyphen_spanner::set_spacing_rods 
12611
12612         * lily/lyric-hyphen.cc (print): add padding between syllable and
12613         hyphen.
12614         (print): shorten hyphen in tight situations (determine using
12615         minimum-length)
12616
12617         * scm/paper.scm (layout-set-staff-size): increase blotdiameter to
12618         0.4pt.
12619
12620 2005-03-13  Jan Nieuwenhuizen  <janneke@gnu.org>
12621
12622         * ly/titling-init.ly (bookTitleMarkup): Refinements.
12623
12624         * input/regression/page-breaks.ly (paper): Set not raggedlastbottom,
12625         header/footer markings for regression-test.
12626
12627         * scm/backend-library.scm (output-scopes, header-to-file): Move
12628         from framework-tex.scm.
12629
12630         * scm/framework-ps.scm (output-framework)
12631         (output-preview-framework):
12632         * scm/framework-eps.scm (output-classic-framework)
12633         (output-framework): Use it.  Fixes collated files.
12634
12635 2005-03-12  Jan Nieuwenhuizen  <janneke@gnu.org>
12636
12637         * input/sakura-sakura.ly: 
12638         * input/xiao-haizi-guai-guai.ly: Add from Debian package (Anthony).
12639
12640         * buildscripts/guile-gnome.sh: Update.
12641
12642         * mf/GNUmakefile (aybabtu.otf): Add dependency on .pe.
12643
12644         * mf/aybabtu.pe.in: Capitalize Aybabtu.
12645
12646 2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12647
12648         * lily/separating-group-spanner.cc (find_rods): oops. Fix the real
12649         culprit: always exit the loop if we find a rod, even if it has
12650         distance < 0. 
12651
12652         * lily/ledger-line-spanner.cc (set_spacing_rods): rewrite to O(n)
12653         algorithm.
12654
12655         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
12656         $(outdir)/%.svg $(outdir)/%.pfa): add --simplify.
12657
12658         * scm/output-svg.scm (dashed-line): new  function body.
12659         
12660         * GNUmakefile.in: create .htaccess.
12661
12662 2005-03-11  Jan Nieuwenhuizen  <janneke@gnu.org>
12663
12664         * Documentation/topdocs/NEWS.tely (Top): Fix text example.
12665
12666 2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12667
12668         * VERSION (PACKAGE_NAME): release 2.5.15
12669
12670         * scm/output-{pdf,pdftex,sketch}.scm (Module): remove bitrotted files.
12671
12672         * scm/framework-svg.scm (output-framework): put scaling in
12673         document header. Apply scaling only once.
12674         (output-framework): dump page size in px, not mm. 
12675
12676         * scm/lily-library.scm (modified-font-metric-font-scaling): rename
12677         from font-size.
12678
12679         * lily/paper-outputter-scheme.cc (LY_DEFINE):
12680         ly:outputter-output-scheme, new function.
12681
12682         * scm/output-svg.scm (pango-description-to-svg-font): new function
12683
12684 2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12685
12686         * Documentation/user/GNUmakefile (deep-symlinks): remove outimages
12687         target.
12688
12689         * input/typography-demo.ly: new file.
12690
12691 2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
12692
12693         * Documentation/user/global.itely (File structure): Add markup blocks
12694         to toplevel expressions.
12695         (Multiple movements, Creating titles): Add markup blocks.
12696
12697         * lily/stencil-scheme.cc: Use "libc-extension.hh" (WAS:
12698         <libc-extension.hh>).
12699
12700         * lily/accidental.cc (accurate_boxes): Compile fix: 1.51 was broken.
12701
12702         * flower
12703         * lily
12704         * kpath-guile: Nitpick run: buildscripts/fixcc.py.
12705
12706 2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12707
12708         * lily/accidental.cc: special bboxes for natural. 
12709
12710         * mf/feta-toevallig.mf: make stems heavier.
12711
12712         * lily/dynamic-text-spanner.cc (print): add bound padding for edge
12713         texts as well.
12714
12715         * mf/feta-klef.mf: revise. 
12716
12717         * mf/feta-schrift.mf: make thinning of accent less pronounced.
12718
12719         * mf/feta-klef.mf: add rounded curve at top. 
12720         make thinnib a little heavier.
12721
12722 2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
12723
12724         * lily/parser.yy (book_body): Oops, allow \markup in \book too.
12725
12726         * buildscripts/fixcc.py: New file.
12727
12728         * input/regression/utf8.ly: Update Debian font description.
12729
12730 2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
12731
12732         * stepmake/aclocal.m4: Fix test.
12733
12734 2005-03-09  Graham Percival  <gperlist@shaw.ca>
12735
12736         * Documentation/user/invoking.itely: added Sebastino Vigna's
12737         docs for the --jail option.
12738
12739 2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12740
12741         * lily/stem.cc (print): only produce stemlets if there are no
12742         noteheads on this stem.
12743
12744         * lily/note-spacing.cc (stem_dir_correction): robustness fix:
12745         don't crash on stemlet (visible stem without heads).
12746
12747         * scm/define-grobs.scm (all-grob-descriptions): junk LeftEdge for
12748         unbroken situations. 
12749
12750         * scm/output-lib.scm (center-invisible): new function.
12751
12752         * lily/spacing-loose-columns.cc (set_loose_columns): use spacing
12753         wishes to determine loose column space.
12754
12755         * lily/font-config.cc (init_fontconfig): add
12756         fonts/{otf,type1,cff}  to path.
12757
12758         * lily/main.cc (setup_paths): add fonts/{otf,svg,tfm,cff} to path
12759
12760         * mf/GNUmakefile (Module): install all fonts under otf/
12761
12762         * scm/framework-ps.scm (Module): read fonts from fonts/extension,
12763         replace /fonts/otf/ by /ps/ 
12764
12765         
12766 2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
12767
12768         * lily/paper-book.cc (classic_output): Reinstate header_0_ hack.
12769
12770         * lily/book.cc (process): Oops, add score_.header_.
12771
12772         * lily/paper-book.cc: Fold hearders, score and texts into scores_.
12773
12774         * lily/parser.yy: Handle toplevel and book texts as score.
12775
12776         * scm/page-layout.scm (default-page-make-stencil):
12777         Bugfix: (page-properties rename.
12778
12779         * scm/backend-library.scm (ly:system): Typo.
12780
12781 2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12782
12783         * stepmake/stepmake/executable-targets.make (installexe): don't
12784         strip installed executables
12785
12786         * lily/font-select.cc (get_font_by_design_size): revert
12787         pango_description_string as well.
12788
12789         * lily/system.cc (set_loose_columns): put loose column just left
12790         of next column.
12791
12792         * lily/include/group-interface.hh (extract_grob_array): rename
12793         from Pointer_group_interface__extract_grobs
12794
12795         * input/regression/ledger-line-minimum.ly (texidoc): new file.
12796
12797         * lily/ledger-line-spanner.cc (set_spacing_rods): new
12798         function. Keep ledgered note heads at a minimum distance.
12799         Introduce minimum-length-fraction
12800         (print): introduce length-fraction property.
12801
12802 2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12803
12804         * tex/GNUmakefile: remove latin1.enc rules.
12805
12806 2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
12807
12808         * scm/titling.scm: Typo.
12809
12810         * input/regression/score-text.ly: Really add.
12811
12812         * lily/score.cc: Bugfixes for SCM header_ and texts_ members.
12813
12814 2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12815
12816         * lily/open-type-font-scheme.cc:  new file.
12817
12818 2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
12819
12820         * scm/titling.scm (layout-extract-page-properties): Rename from
12821         page-properties.  Update callers.
12822
12823         * lily/lexer.ll (Lily_lexer):
12824         * lily/parser.yy: Junk lyric_markup state.
12825
12826         * Documentation/topdocs/NEWS.tely (Top): Mention markup text feature.
12827
12828         * scripts/lilypond-book.py (PREAMBLE_LY): toplevel-music-handler:
12829         Add texts parameter.
12830
12831 2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
12832
12833         * lily/lexer.ll (lyric_markup): New mode.
12834         (Lily_lexer::push_lyric_markup_state): New method.
12835         (MARKUPCOMMAND): Markup during lyric mode returns LYRIC_MARKUP.
12836
12837         * lily/parser.yy (book_body):
12838         (toplevel_expression): Grok \markup texts.
12839
12840         * lily/score-scheme.cc (ly:music-scorify): 
12841         * scm/lily-library.scm (collect-music-for-book): Take texts
12842         parameter.
12843
12844         * lily/score.cc (texts_): New member.
12845
12846         * lily/paper-book.cc (systems): Format score texts.
12847
12848         * score-text.ly: New file.
12849
12850         * ttftool/SConscript:
12851         * kpath-guile/SConscript: New file.
12852
12853         * lily/SConscript:
12854         * SConstruct: Update.
12855
12856 2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12857
12858         * VERSION (PACKAGE_NAME): release 2.5.14
12859
12860 2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
12861
12862         * lily/main.cc: Add dummy xgettext markers.
12863
12864 2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12865
12866         * make/lilypond.fedora.spec.in (Requires): scrap kpathsea/tex
12867         requirements
12868
12869         * stepmake/aclocal.m4: check dynamic link, by checking if kpathsea
12870         executable is < 40k
12871
12872         * lily/main.cc (setup_paths): remove tfm1 tfm2 tfm3 include path
12873         hack.
12874
12875 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12876
12877         * flower/libc-extension.cc:
12878         * flower/include/libc-extension.hh: [Open]BSD simply cast
12879         cookie/funopen declarations.
12880
12881         * stepmake/aclocal.m4: Check for libkpathsea.so.
12882
12883         * kpath-guile/kpath.c (ly_kpathsea_expand_variable): Use
12884         dl_kpse_find_file.
12885
12886 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12887
12888         * kpath-guile/kpath.c (open_library): dlopen libkpathsea.so
12889         (open_library): alternative for static library.
12890
12891 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12892
12893         * configure.in: Set TTFTOOL_ENDIAN iso global CFLAGS.
12894
12895         * ttftool/GNUmakefile (MODULE_CFLAGS): Add $(TTFTOOL_ENDIAN).
12896
12897         Drop run-time dependency on teTeX.
12898
12899         * lily/kpath.cc (initialize_kpathsea): dlopen libkpathsea.
12900
12901         * stepmake/aclocal.m4 (STEPMAKE_KPATHSEA): Do not include
12902         KPATHSEA_LIBS in LIBS.
12903         (STEPMAKE_DLOPEN): New function.
12904
12905         * lily/font-config.cc (init_fontconfig): Use dir for directory,
12906         not path.
12907
12908         * flower/file-path.cc (directories): Rename from paths, as this
12909         return an array of directories (a single path).
12910
12911 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12912
12913         * lily/GNUmakefile (MODULE_LIBS): link with kpath-guile
12914
12915         * lily/all-font-metrics.cc (kpathsea_find_file): wrapper around
12916         new ly:kpathsea-find-file
12917
12918         * kpath-guile/kpath.c: new file. Put kpath bindings in lib.
12919
12920         * kpath-guile/GNUmakefile: new file
12921
12922         * buildscripts/gen-emmentaler-scripts.py (i): generate
12923         emmentaler-X.fontname as well.
12924
12925         * buildscripts/ps-embed-cff.py: new script
12926
12927         * scm/lily-library.scm: remove ps-embed-cff.
12928
12929         * scm/framework-ps.scm (write-preamble): don't use kpathsea for
12930         font loading. 
12931
12932         * scm/font.scm (add-music-fonts): load dynamics/numbers through
12933         fontconfig as well.
12934
12935         * lily/font-config.cc (init_fontconfig): add cff/ too.
12936
12937         * ly/generate-embedded-cff.ly: capitalize.
12938
12939         * lily/pango-select.cc (select_pango_font): use ::find_pango_font,
12940         so as to register the pango font.
12941
12942         * lily/font-config.cc (init_fontconfig): add
12943         prefix/{otf,type1,mf/out} to fontconfig path.
12944
12945         * lily/main.cc: only look at one prefix directory, LILYPONDPREFIX
12946         overrides all. 
12947
12948         * configure.in (gui_b): remove ec mftrace check
12949
12950         * config.hh.in: use lilypond-Major.Minor as data directory.
12951
12952         * scm/framework-ps.scm (dump-page): use output-units for landscape.
12953
12954         * buildscripts/gen-emmentaler-scripts.py (i): lower case file
12955         name.
12956
12957 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12958
12959         * lily/main.cc (do_chroot_jail): Small cleanups.  Avoid constant
12960         error messages.
12961
12962         * flower/libc-extension.cc:
12963         * flower/include/libc-extension.hh: [Open]BSD fixes for
12964         cookie/funopen declarations.
12965
12966 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12967
12968         * buildscripts/gen-emmentaler-scripts.py (outdir): capitalize
12969         emmentaler.
12970
12971         * lily/score-engraver.cc (initialize): remove check for ecrm10 /
12972         lcrm10.
12973
12974         * scm/define-markup-commands.scm (fontsize): new markup
12975         command. Also set baseline-skip
12976
12977 2005-03-06 Sebastiano Vigna <vigna@dsi.unimi.it>.
12978         
12979         * lily/main.cc (do_chroot_jail): paranoia security for webserver
12980         use.
12981
12982 2005-03-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12983
12984         * stepmake/bin/add-html-footer.py (do_file): make wiki link optional.
12985
12986         * lily/pdf.cc: remove PDF related files
12987
12988 2005-03-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12989
12990         * ly/deutsch.ly: add quarter tones, patch by Arno Waschk.
12991         <hamamatsu@gmx.de>
12992
12993 2005-03-05  Graham Percival  <gperlist@shaw.ca>
12994
12995         * Documentation/user/advanced-notation.itely: first draft
12996         of reorg done.
12997
12998         * Documentation/user/global.itely: fixed (sub)section
12999         bits of MIDI.
13000
13001 2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
13002
13003         * cygwin/mknetrel (extras): Bufix (Bertalan).
13004
13005         * Documentation/user/basic-notation.itely (Chords): @ref fix.
13006         * Documentation/user/instrument-notation.itely (Introducing chord
13007         names): Compile fix: must have unique name.
13008
13009 2005-03-02  Graham Percival  <gperlist@shaw.ca>
13010
13011         * Documentation/user/instrument-notation.itely: reorg.
13012
13013 2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
13014
13015         * scm/output-gnome.scm:
13016         * scm/output-svg.scm: Fix font scaling.
13017
13018 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13019
13020         * ly/titling-init.ly (tagline): Use Engraving.  Add comment about
13021         what link to use best.
13022
13023         * Documentation/user/instrument-notation.itely (Ancient accidentals): 
13024         * Documentation/user/tutorial.itely (Automatic and manual beams):
13025         Fix @ref.
13026
13027         * lily/tweak-registration.cc (replace_grob_tweak): New function.
13028         * lily/tweak-registration-scheme.cc (LY_DEFINE): Wrap it.
13029         * scm/framework-gnome.scm (tweak): Use it.
13030
13031 2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13032
13033         * Documentation/topdocs/NEWS.tely (Top): elucidate GS problem.
13034
13035         * scm/output-ps.scm (white-text): reinstate white-text
13036
13037 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13038
13039         * scm/output-ps.scm (offset-add): Remove.
13040
13041         * scm/lily-library.scm (offset-flip-y): New function.
13042         * scm/framework-gnome.scm (tweak): Use it.
13043
13044         * scm/output-gnome.scm (grob-cause): Add parameter.
13045
13046         * scm/lily.scm (ly:all-stencil-expressions): Add url-link.
13047         * scm/output-ps.scm (url-link): Move.
13048         (white-text): Warn user about brokenness.
13049
13050         * Documentation/topdocs/NEWS.tely: Be more accurate and respectful
13051         wrt ghostscript.
13052
13053 2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13054
13055         * lily/slash-repeat-engraver.cc (try_music): always make slashes
13056         if body length smaller than measure length.
13057
13058         * scm/define-markup-commands.scm (with-url): oops. use Y extent
13059         for Y.
13060
13061         * ly/titling-init.ly (tagline): put default tagline in \paper
13062
13063 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13064
13065         * lily/kpath.cc: 
13066         * lily/pdf.cc (Pdf_file): Use more generic error messages.
13067
13068         * scm/lily-library.scm (version-not-seen-message): New function.
13069         * ly/init.ly: Use it.
13070
13071         * scm/page-layout.scm (ly:optimal-page-breaks): Display page
13072         breaks as progess.
13073
13074         * scripts/lilypond-book.py (do_process_cmd): Do not lump
13075         whitespace with l10n message.
13076
13077         * scm/framework-tex.scm (convert-to-ps):
13078         (convert-to-dvi): Do not use overly specific l10n messages.
13079
13080         * ly/titling-init.ly (bookTitleMarkup): Add baseline skips from 2.4.
13081
13082         * tex/GNUmakefile $(outdir)/latin1.enc: Build fix:
13083         merge stderr with stdout.  
13084
13085 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13086
13087         * flower/libc-extension.cc: Tested BSD compile fix (Matthias
13088         Neeracher).
13089
13090 2005-02-29  Graham Percival  <gperlist@shaw.ca>
13091
13092         * Documentation/user/instrument-notation.teily: moved
13093         \arpeggio to Basic.
13094
13095         * Documentation/user/advanced-notation.itely: Articulation to
13096         Basic, a bunch of stuff from Basic moved to Advanced.
13097
13098         * Documentation/user/basic.itely: swapped various sections,
13099         reorganized Basic.
13100
13101 2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
13102
13103         * flower/memory-stream.cc: 
13104         * flower/libc-extension.cc: Remove obsolete #undefs.
13105
13106         * flower/include/libc-extension.hh: Bugfix for BSD, place #ifdef
13107         more carefully.
13108
13109 2005-02-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13110
13111         * make/lilypond.fedora.spec.in (Requires): add GS 8.15 as
13112         dependency.
13113
13114         * VERSION (PACKAGE_NAME): release 2.5.13
13115
13116         * GNUmakefile.in (web-ext): don't ship ps.gz
13117
13118         * tex/GNUmakefile ($(outdir)/latin1.enc): redirect stderr to
13119         stdout
13120
13121 2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
13122
13123         * lily/general-scheme.cc (LY_DEFINE): Compile fix for systems
13124         without libintl.  Now it compiles too.
13125
13126 2005-02-28  Graham Percival  <gperlist@shaw.ca>
13127
13128         * Documentation/user/basic-notation.itely,
13129         instument-notation.itely, advanced-notation.itely:
13130         split up contents of notation.itely.
13131
13132         * Documentation/user/notation.itely: file removed.
13133
13134         * Documentation/user/invoking.itely, converters.itely:
13135         moved convert-ly info to invoking.itely.
13136
13137         * Documentation/user/global.itely, changing-defaults.itely,
13138         sound-output.itexi: moved global settings, file layout, and
13139         sound into global.itely.
13140
13141         * Documentation/user/sound-output.itexi: file removed.
13142
13143         * Documentation/user/lilypond.tely: removed links to
13144         notation.itely and sound.itely.
13145
13146 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13147
13148         * scm/output-ps.scm (grob-cause): only do mark_URI if non-empty.
13149
13150         * scm/framework-ps.scm (write-preamble): remove pdf-viewer code.
13151  
13152         * THANKS: add sponsor.
13153
13154         * scm/define-markup-commands.scm (with-url): new markup command.
13155
13156         * scm/page-layout.scm (TAGLINE): add www.lilypond.org with URL to
13157         tagline.
13158         
13159         * scm/output-tex.scm (url-link): stub.
13160
13161         * scm/output-ps.scm (url-link): new function.
13162
13163         * lily/lily-parser-scheme.cc (LY_DEFINE): deprecate
13164         ly:set-point-and-click
13165
13166 2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
13167
13168         * ps/music-drawing-routines.ps (mark_file_line): Switch Action
13169         based on pdf-viewer setting.
13170
13171         * scm/framework-ps.scm (write-preamble): Find and set preferred
13172         pdf-viewer.
13173
13174 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13175
13176         * Documentation/user/point-and-click.itely: update for PDF point &
13177         click.
13178
13179         * scripts/lilypond-pdfpc-helper.py: new file. Invoke different
13180         editors based on EDITOR setting.
13181
13182 2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
13183
13184         * scm/*: Oops, more grand 2005 replace bits.
13185
13186 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13187
13188         * ps/music-drawing-routines.ps: new routine: insert PDF mark
13189
13190         * scm/output-ps.scm (grob-cause): point & click support for
13191         PostScript
13192
13193 2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13194
13195         * lily/input-scheme.cc (LY_DEFINE): rename to
13196         ly:input-file-line-column
13197
13198 2005-02-26  Graham Percival  <gperlist@shaw.ca>
13199
13200         * Documentation/user/examples.itely: small fix from Steve Doonan.
13201
13202         * Documentation/user/scheme-tutorial.itely: small fix from Steve Doonan.
13203
13204         * THANKS: added Yuval Harel.
13205
13206         * Documentation/user/{various}: inserted two spaces after a period.
13207
13208         * Documentation/user/lilypond.tely: added framework for reorg.
13209
13210         * Documentation/user/basic-notation.itely, instrument-notation.itely,
13211         advanced-notation.itely, global.itely: new files, placeholder for
13212         future reorg.
13213
13214 2005-02-26 Yuval Harel  <yuvalh@hotpop.com>
13215
13216         * Documentation/user/notation.itely: revamped Polyphony section
13217         
13218 2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13219
13220         * Documentation/user/lilypond-book.itely (Music fragment options):
13221         doc fontload.
13222
13223         * Documentation/user/changing-defaults.itely (Text encoding): add
13224         fontload option to utf8 include
13225
13226         * scripts/lilypond-book.py (compose_ly): add fontload option
13227
13228         * scm/framework-eps.scm (dump-stencils-as-EPSes): add
13229         force-eps-font-include option.
13230
13231         * ly/chord-modifiers-init.ly (blackTriangleMarkup): reinstate
13232         black triangle
13233
13234         * Documentation/user/invoking.itely (Editor support): remove
13235         lilypond-latex section.
13236
13237         * scripts/lilypond-latex.py (Module): remove script.
13238
13239         * cygwin/lily-wins.py (stat): write to .lylog, so as not to
13240         overwrite .log. 
13241
13242         * lily/main.cc: remove -m, --no-layout
13243
13244         * flower/include/libc-extension.hh: add ALIAS_FILE_TO_FILECOOKIE
13245         to define. We don't want to override fprintf everywhere.
13246
13247 2005-02-26  Jan Nieuwenhuizen  <janneke@gnu.org>
13248
13249         * cygwin/lilypond.hint: 
13250         * cygwin/README.in: Update dependencies.
13251
13252         * stepmake/aclocal.m4 (STEPMAKE_PANGO, STEPMAKE_PANGO_FT2):
13253         Bugfix: do not pollute CPPFLAGS, LIBS.
13254
13255         * cygwin/mknetrel (extras): Cross compile fixes.
13256
13257         * ttftool/util.c: 
13258         * ttftool/ttfps.c: 
13259         * ttftool/ps.c: #include libc-extension.hh
13260
13261         * flower/include/libc-extension.hh:
13262         * flower/libc-extension.cc (fopencookie)[!HAVE_FOPENCOOKIE]: Add
13263         wrapper using funopen.
13264         (fopencookie, handle_cookie_io_fclose, handle_cookie_io_fprintf,
13265         handle_cookie_io_fprintf): Add wrappers catching Memory_out_stream.
13266
13267         * config.hh.in:
13268         * configure.in (AC_CHECK_FUNCS): Add fopencookie, funopen.
13269         (AC_CHECK_HEADERS): Add libio.h
13270
13271         * scripts/convert-ly.py: Uniformize, internationalize.
13272         (2.5.2): Remove fatal encoding rule.
13273         (2.5.13): Handle latin1 encoding gracefully.
13274
13275 2005-02-23  Jan Nieuwenhuizen  <janneke@gnu.org>
13276
13277         * HACKING: Fix line breaks.
13278
13279 2005-02-23  Werner Lemberg  <wl@gnu.org>
13280
13281         * mf/graycx.mf, mf/graylj.mf: Removed.  Any decent TeX distribution
13282         contains those two files.
13283
13284 2005-02-21  Werner Lemberg  <wl@gnu.org>
13285
13286         * mf/feta-nummer-code.mf ("Numeral 5"): Include intersection point
13287         to improve overlap removal process.
13288
13289         * mf/feta-slag.mf (draw_trillelement): Add parameter to control
13290         left and right ending.  This ensures better overlapping.
13291         Update all callers.
13292         ("lineprall"): Don't use draw_gridline to get better overlapping.
13293
13294 2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13295
13296         * scm/lily-library.scm (ps-embed-cff): add \n after EndResource
13297
13298         * Documentation/topdocs/NEWS.tely (Top): oops.
13299
13300 2005-02-21  Pedro Kroger  <kroeger@pedrokroeger.net>
13301
13302         * HACKING: new file.
13303
13304         * input/regression/utf8.ly (portuguese): added a portuguese example
13305         to show latin1 accents.
13306
13307 2005-02-21  Pal Benko  <benkop@freestart.hu>
13308
13309         * lily/mensural-ligature-engraver.cc:
13310         * lily/mensural-ligature.cc:
13311         * lily/include/mensural-ligature.hh: new algorithm implemented
13312
13313         * scm/define-grob-properties.scm: join-left killed (add-join may
13314         be used); join-left-amount changed to join-right-amount
13315
13316 2005-02-21  Graham Percival  <gperlist@shaw.ca>
13317
13318         * Documentation/user/notation.itely: small but urgent fix.
13319
13320 2005-02-21  Jürgen Reuter  <reuter@ipd.uka.de>
13321
13322         * lily/duration-scheme.cc: bugfix: correct parameters to
13323         SCM_ASSERT_TYPE.
13324
13325         * THANKS: added Pal.
13326
13327         * Documentation/user/notation.itely: bugfix: unTeXified
13328         $\\backslash$.  Bugfix: yet another glyph renaming victim:
13329         "timesig.*x/y" -> "timesig.*xy".
13330
13331 2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13332         
13333         * VERSION (PACKAGE_NAME): release 2.5.12
13334
13335 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13336
13337         * ly/engraver-init.ly: set tieWaitForNote to #t by default
13338
13339         * configure.in (gui_b): bump GUILE requirement to 1.6.5 
13340
13341         * Documentation/topdocs/NEWS.tely: add inputfileref macro.
13342
13343         * scm/framework-ps.scm (supplies-or-needs): uniq font name list.
13344
13345 2005-02-20  Jan Nieuwenhuizen  <janneke@gnu.org>
13346
13347         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly: recode
13348         latin1..utf-8.
13349
13350         * input/regression/stanza-number.ly:
13351         * input/regression/utf8.ly (hebrew): Use addlyrics.  Update.
13352
13353         * lily/tie-engraver.cc (acknowledge_grob): Compile fix.
13354
13355 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13356
13357         * Documentation/topdocs/NEWS.tely (Top): only mention 2.5
13358         NEWS. Refer to website for older news.  
13359
13360         * stepmake/bin/add-html-footer.py (i18n): don't strip .PNG /
13361         .HTML. This should be done for specific servers only.
13362
13363         * Documentation/topdocs/NEWS.tely (Top): move to .tely. Add some
13364         .ly image examples.
13365
13366         * scm/define-grobs.scm (all-grob-descriptions): put ledger lines
13367         in layer 0 too.
13368
13369         * scm/define-context-properties.scm
13370         (all-user-translation-properties): add tieWaitForNote
13371
13372         * scm/define-grobs.scm (all-grob-descriptions): add
13373         Tie_column::before_line_breaking
13374
13375         * lily/tie.cc (get_column_rank): new function
13376
13377         * lily/tie-column.cc (before_line_breaking): new function.
13378         (werner_directions): take into account ties that start on
13379         different columns.  
13380
13381         * lily/score-engraver.cc (set_columns): move add_column() so we
13382         have column rank available.
13383
13384         * lily/tie.cc (get_column_rank): new function.
13385
13386         * input/regression/utf8.ly (japanese): add japanese lyrics.
13387
13388         * lily/pfb.cc (LY_DEFINE): ly:ttf->pfa, new function.
13389
13390         * THANKS: add Steve D
13391
13392         * ttftool/*.c: add TTF -> Type42 conversion library. Based on
13393         Public Domain work by Juliusz Chroboczek <jch@pps.jussieu.fr>
13394
13395 2005-02-20  Tatsuya Ono  <tats_ono@infoseek.jp>
13396
13397         * mf/parmesan-heads.mf: "0harmonic" -> "s0harmonic"
13398         to show harmonic notes
13399         * scm/define-markup-commands.scm: in \markup-by-number
13400         "dots-dot" -> "dots.dot" to show dotted notes
13401
13402 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13403
13404         * flower/include/memory-stream.hh (class Memory_out_stream): new file.
13405
13406         * flower/memory-stream.cc (writer): new file.
13407
13408         * configure.in: add endian test.
13409
13410 2005-02-19  Jürgen Reuter  <reuter@ipd.uka.de>
13411
13412         * Documentation/user/examples.itely: small
13413         simplification/beautification
13414
13415         * Documentation/user/notation.ietly: bugfix: fixed many artefacts
13416         from the "x-y-z"->"x.y.z" renaming of glyphs throughout the whole
13417         notation manual.
13418
13419         * lily/mensural-ligature.cc: bugfix: another few victims of the
13420         "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
13421
13422         * ly/gregorian-init.ly: commit some experimental code for hi-level
13423         ligature input language lying around here for several months.
13424
13425         * lily/mensural-ligature-engraver.cc: bugfix: another victim of
13426         the "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
13427
13428         * lily/vaticana-ligature-engraver.cc: bugfix: another few
13429         "x-y-z"->"x.y.s-z" fixes.
13430
13431 2005-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13432
13433         * scm/framework-pdf.scm (scm): new file
13434
13435         * lily/include/pdf.hh (class Pdf_file): new file.
13436
13437         * lily/pdf.cc (write_trailer): new file.
13438
13439 2005-02-18  Erlend Aasland  <erlenda@gmail.com>
13440
13441         * input/regression/color.ly: new file
13442
13443         * lily/stencil.cc (interpret_stencil_expression):
13444         when a color expression is encountered: save current color,
13445         process the rest of the expression, and restore previous color.
13446
13447         * lily/system.cc (get_line): check all grobs for color property and
13448         prepare the stencil scheme expressions for further processing.
13449         Fix layer-loop.
13450
13451         * scm/define-grob-properties.scm: introduce the color property.
13452
13453         * scm/output-lib.scm: color helper functions.
13454
13455         * scm/output-ps.scm: introduce setcolor/resetcolor.
13456
13457 2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
13458
13459         * ly/*.ly, input/regression/*.ly: Added missing \version
13460         statements in some files.
13461
13462 2005-02-15  Graham Percival  <gperlist@shaw.ca>
13463
13464         * Documentation/user/notation.itely: minor editing.
13465
13466         * Documentation/user/converters.itely: updated convert-ly bugs.
13467
13468         * Documentation/user/lilypond-book.itely: add info about using
13469         feta characters in latex.
13470
13471 2005-02-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13472
13473         * scripts/convert-ly.py: new slur dash patch by Bertalan Fodor.
13474
13475 2005-02-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13476
13477         * scm/define-grob-properties.scm (all-user-grob-properties):
13478         removed 'dashed property.
13479
13480 2005-02-13  Nicolas Sceaux  <nicolas.sceaux@free.fr>
13481
13482         * scm/lily.scm (define-safe-public): new macro for defining
13483         variables that can be used in --safe mode. Use it in *.scm
13484         instead of manually setting safe-objects in safe-lily.scm.
13485
13486 2005-02-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13487         
13488         * lily/slur.cc: Slur-dash patch by Bertalan.
13489
13490         * ly/engraver-init.ly (EasyNotation): glyph name dash -> period.
13491
13492         * stepmake/bin/add-html-footer.py (do_file): do i18n only once. 
13493
13494 2005-02-10  Jan Nieuwenhuizen  <janneke@gnu.org>
13495
13496         * stepmake/aclocal.m4: teTeX-3.0 inimf fix.  Comment-out.
13497
13498 2005-02-09  Jan Nieuwenhuizen  <janneke@gnu.org>
13499
13500         * mf/GNUmakefile: teTeX-3.0 install fix.
13501
13502         * Cygwin patch from Bertalan.
13503
13504         * stepmake/stepmake/metafont-rules.make: Remove bashism.
13505
13506 2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
13507
13508         * GNUmakefile.in: 
13509         * SConstruct (symlink): teTeX-3.0 build fix: add map symlink.
13510
13511         * tex/GNUmakefile: teTeX-3.0 fix: install .enc in fonts/enc.  Add
13512         2.0.x compatibility.
13513
13514 2005-02-08  Werner Lemberg  <wl@gnu.org>
13515
13516         * mf/feta-din-code.mf: Format; clean up code.
13517         Replace `---' with `--' plus explicit path directions.
13518         (linethickness#, stafflinethickness#): Remove.
13519         ("dynamic f"): Replace `draw' with `draw_rounded_block'.
13520         ("dynamic s"): Improve shape.
13521         ("dynamic p"): Improve shape.
13522         Replace `draw' with better outline approximation.
13523         ("dynamic r"): Improve shape.
13524         Don't call `fill' and `draw' at the same time.
13525
13526 2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
13527
13528         * SConstruct (symlink):
13529         * GNUmakefile.in ($(builddir)/share/lilypond-force): teTeX-3.0
13530         build fix: add enc symlink.
13531
13532         * lily/general-scheme.cc: Compile fixes: include wchar.h, string.h.
13533
13534         Support for DESTDIR besides prefix=/foo
13535
13536         * vim/GNUmakefile (local-install): Use $(INSTALL) -d iso mkdir.
13537
13538         * stepmake/stepmake/*.make:
13539         * */GNUmakefile:
13540         * GNUmakefile.in: Prepend $(DESTDIR) to installation directory.
13541
13542         * config.make.in (prefix): Remove broken $(DESTDIR) hack.
13543
13544         * stepmake/aclocal.m4: Use %0.f iso %d to quiet gawk < 3.1.4 and
13545         mawk in fontforge (date) test.
13546
13547 2005-02-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13548
13549         * scm/font.scm (make-century-schoolbook-tree): add NCS as
13550         font-family=roman. Add Luxi Sans as sans
13551
13552 2005-02-07  Graham Percival  <gperlist@shaw.ca>
13553
13554         * Documentation/user/notation.itely: add warning about
13555         percent repeats and Voice contexts.
13556
13557         * Documentation/user/lilypond-book.itely: clarified the
13558         necessity of dvips -u arguments.
13559
13560 2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
13561
13562         * THANKS: Added a bunch of bug hunters.
13563
13564 2005-02-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13565
13566         * scm/framework-ps.scm (output-preview-framework): bugfix.
13567
13568         * ly/chord-modifiers-init.ly (ignatzekExceptionMusic): use unicode
13569         o/ for chord modifier..
13570
13571         * lily/general-scheme.cc (LY_DEFINE): new function ly:wide-char->utf-8.
13572
13573         * lily/drum-note-performer.cc:  remove unused (thanks Michael
13574         Welsh Duggan). 
13575
13576 2005-02-06  Jan Nieuwenhuizen  <janneke@gnu.org>
13577
13578         * Documentation/user/changing-defaults.itely (Text encoding): Clarify.
13579
13580         * ly/titling-init.ly: Do not also print intstrument in header on
13581         first page.  Do not print page number on first and only page.
13582
13583 2005-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13584
13585         * input/regression/*.ly: remove old-relative everywhere
13586
13587         * lily/music-sequence.cc (simultaneous_relative_callback): do
13588         what-if analysis on copy, not on original. Fixes old-relative
13589         compatibility.
13590
13591         * scm/backend-library.scm (postscript->png): space before
13592         --verbose.
13593         
13594 2005-02-05  Werner Lemberg  <wl@gnu.org>
13595
13596         * mf/feta-autometric.mf (fet_beginchar): Check whether `feta_group'
13597         is defined.
13598
13599         * mf/feta-alphabet.mf: Define `staffsize#'.
13600         Include `feta-params.mf'.
13601         s/staffheight/design_size/.
13602
13603         * mf/feta-alphabet??.mf: s/staffheight/design_size/.
13604
13605         * mf/feta-alphabet26.mf: Fix a serious bug (design size off by 8pt).
13606
13607         * mf/feta-nummer-code.mf: Reformatted.
13608         (draw_six): Use outline intersection to avoid a self-intersecting
13609         path.
13610         ("Numeral comma"): Fix serious outline glitches.  This slightly
13611         changes the glyph shape.
13612         ("Numeral dash"): Use `draw_rounded_block'.
13613         ("Numeral dot"): Use `drawdot'.
13614         ("Numeral 1"): Assure identical tangent directions for the
13615         intersection points of paths.  The glyph shape improvement is only
13616         visible at very high magnifications.
13617         ("Numeral 2"): Use `solve' macro to make the lower right part of
13618         the glyph outline touch the x axis exactly.  This changes the
13619         glyph shape.
13620         Minor fixes for better overlap removal support.
13621         ("Numeral 4"): Make lefter corner `rounder'.
13622         ("Numeral 5"): Assure identical tangent directions for the
13623         intersection points of paths.  This improves the glyph shape at
13624         high magnifications.
13625         ("Numeral 7"): Use `solve' macro to make the upper right part of
13626         the glyph outline touch the metrics box exactly.  This changes the
13627         glyph shape.
13628         Avoid corner in the upper left part of the glyph (causing a minor
13629         shape change).
13630
13631         * mf/feta-ital-*.mf: Removed.  Unused.
13632
13633 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13634
13635         * VERSION (PATCH_LEVEL): release 2.5.11
13636
13637         * input/regression/fill-line-test.ly: new file.
13638
13639         * buildscripts/gen-emmentaler-scripts.py (i): insert dash in
13640         emmentaler name, eg. emmentaler-23. 
13641
13642 2005-02-04  Christian Hitz  <chhitz@gmx.net>
13643
13644         * scm/scm/define-markup-commands.scm (fill-line): rework for better
13645         alignment with centered texts
13646
13647         * scm/stencil.scm (stack-stencils-padding-list): new function, takes a
13648         list of paddings
13649
13650 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13651
13652         * mf/GNUmakefile ($(outdir)/lilypond.map): add aybabtu to .map file.
13653
13654         * lily/note-column.cc (translate_rests): call flush_extent_cache()
13655         of parents when translating rests. Fixes: c-chord-rest.ly 
13656
13657         * lily/include/dimension-cache.hh (struct Dimension_cache): add
13658         dimension_callback_ member.
13659
13660         * lily/grob.cc (flush_extent_cache): new function. Force recompute
13661         of extents.
13662
13663 2005-02-04  Jan Nieuwenhuizen  <janneke@gnu.org>
13664
13665         * all but lily/*: The grand 2004/2005 replace.
13666
13667 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13668
13669         * lily/*: add space after ,  
13670
13671         * scm/music-functions.scm (has-request-chord): don't use
13672         ly:music-name anywhere. Fixes <<\\>> notation. 
13673
13674         * scm/define-markup-commands.scm (box): use font-size for
13675         padding. Fixes boxed-rehearsal-marks.ly
13676
13677         * lily/parser.yy (assignment_id): allow LYRICS_STRING as
13678         identifier definition too, so foo = \lyrics { ...   } bar = #1
13679         doesn't complain about "bar" being LYRICS_STRING.
13680
13681         * lily/paper-def.cc (find_pango_font): new routine; Store
13682         pango_fonts in hash tab too. This is necessary for retrieving
13683         Pango_fonts::physical_font_tab() later on.
13684  
13685         * lily/pango-font.cc (pango_item_string_stencil): bugfix: don't
13686         crash if psname is null.
13687
13688         * lily/lily-guile.cc (ly_hash2alist): new function
13689
13690         * Documentation/user/changing-defaults.itely (Text encoding):
13691         rewrite. 
13692
13693         * lily/pango-font.cc (physical_font_tab): new member. Store PSname
13694         -> font_filename mapping.
13695
13696         * lily/pango-font-scheme.cc (LY_DEFINE): new file. New function
13697         ly_pango_font_physical_fonts
13698
13699         * scm/framework-ps.scm (supplies-or-needs): extract names from
13700         physical Pango_fonts.
13701
13702         * utf8.ly: new file.
13703
13704 2005-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13705
13706         * Documentation/user/changing-defaults.itely (Page layout): add
13707         doco about systemSeparatorMarkup.
13708
13709         * scm/page-layout.scm (default-page-make-stencil): add-to-page
13710         function.
13711         (default-page-make-stencil): insert system separators.
13712
13713         * scm/define-markup-commands.scm (hcenter): add
13714         (beam): add.
13715
13716 2005-02-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13717
13718         * scm/output-ps.scm (ez-ball): reinstate ez notation.
13719
13720 2005-02-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13721
13722         * lily/main.cc: Spell backend consistently.  Sort options.
13723
13724 2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13725
13726         * scripts/lilypond-book.py (Module): revert @include.
13727         
13728 2005-01-31  Jan Nieuwenhuizen  <janneke@gnu.org>
13729
13730         * scripts/lilypond-book.py: Resurrect HTML links to .ly source.
13731         Bugfix: @include .tex (not .texi).  Small cleanups.
13732
13733         * stepmake/bin/add-html-footer.py (i18n): New function.
13734
13735 2005-01-31  Werner Lemberg  <wl@gnu.org>
13736
13737         * mf/feta-nummer.mf: Removed.  Unused.
13738
13739 2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13740
13741         * lily/ : 2004 -> 2005 s&r
13742
13743         * scm/file-cache.scm (cached-file-contents): add file. Read each
13744         file only once.
13745
13746         * scm/font.scm (add-pango-fonts): change order. Medium weight is
13747         now default.
13748
13749         * VERSION: release 2.5.10
13750         
13751         * mf/GNUmakefile (INSTALLATION_OUT_FILES4): install cff.ps files.
13752
13753         * make/ly-rules.make ($(outdir)/%.texi): detect new EOF marker.
13754
13755         * scm/framework-ps.scm (dump-stencil-as-EPS): robustness: ensure
13756         that both X and Y extents of bbox are non-nil.
13757
13758 2005-01-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13759
13760         * scm/chord-name.scm (alteration->text-accidental-markup): change
13761         - to . 
13762
13763         * scm/output-ps.scm (utf8-string): add utf8-string for completeness.
13764
13765         * scm/framework-ps.scm (dump-stencil-as-EPS): new function
13766
13767         * Documentation/user/invoking.itely (Invoking lilypond): add note
13768         about EPS backend.
13769
13770         * scm/framework-eps.scm: new file: create per-system/per-page EPS
13771         files for inclusion in lilypond-book document.
13772
13773         * input/tutorial/lbook-latex-test.tex: rename from lilbook.tex
13774
13775         * input/tutorial/lbook-texi-test.texi: new file.
13776
13777         * scm/safe-lily.scm (safe-objects): add
13778         {begin,end}-of-line-(in)?visible as safe.
13779  
13780 2005-01-30  Graham Percival  <gperlist@shaw.ca>
13781
13782         * Documentation/user/changing-defaults.itely: fixed example
13783         of (dynamics).
13784
13785 2005-01-29  Graham Percival  <gperlist@shaw.ca>
13786
13787         * lily/main.cc: fix info about -o=FILE.
13788
13789 2005-01-29  Werner Lemberg  <wl@gnu.org>
13790
13791         * mf/feta-toevallig.mf ("Natural"): Completely changed the
13792         construction to assure smooth transition from straight to curved
13793         lines.
13794
13795 2005-01-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13796
13797         * lily/stencil.cc (moved_to_edge): don't halt on adding empty
13798         stencils.
13799
13800         * ps/lilyponddefs.ps: add start-page, start-system doesn't
13801         translate to top of page. Fixes alignment problems of
13802         lilypond-generated EPS files.
13803
13804 2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13805
13806         * scm/part-combiner.scm (analyse-spanner-states): trigger on
13807         crescendo-end as well, since Decrescendo maybe ended with Stop
13808         Crescendo.). Fixes: partcombine-diminuendo.ly
13809
13810         * scm/script.scm (default-script-alist): swap portato symbols.
13811
13812         * lily/instrument-name-engraver.cc (acknowledge_grob): typo.
13813
13814         * lily/paper-outputter-scheme.cc (LY_DEFINE):
13815         ly:outputter-port. New function.
13816
13817         * scm/framework-ps.scm (output-classic-framework): dump a
13818         -systems.texi too
13819         (output-classic-framework): dump multiple systems on an "infinite"
13820         page EPS including fonts. 
13821
13822         * scripts/lilypond-book.py (Lilypond_snippet.ly_is_outdated): use
13823         .eps files for both texi and tex formats. Use PNG coming from
13824         lilypond.
13825         
13826 2005-01-28  Graham Percival  <gperlist@shaw.ca>
13827
13828         * Docuemntation/user/invoking.itely: fix info about -o=FILE.
13829
13830         * scripts/lilypond-latex.py: fix info about -o=FILE.
13831
13832 2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13833
13834         * ly/generate-embedded-cff.ly: write .cff.ps files.
13835
13836         * mf/GNUmakefile ($(outdir)/lilypond.map): add .cff.ps to .map file.
13837
13838         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
13839         $(outdir)/%.svg $(outdir)/%.pfa): remove --simplify
13840
13841 2005-01-28  Jan Nieuwenhuizen  <janneke@gnu.org>
13842
13843         * lily/include/guile-compatibility.hh (SCM_VECTOR_P): Compile fix.
13844
13845 2005-01-28  Werner Lemberg  <wl@gnu.org>
13846
13847         * mf/feta-macros.mf (soft_start_penstroke, soft_end_penstroke): New
13848         macros.
13849         (draw_bulb): Improved.
13850
13851         * mf/feta-pendaal.mf ("Pedal asterisk"): Remove workaround for
13852         metapost bug.
13853         (draw_pedal_P): Use soft_end_penstroke.
13854         (draw_pedal_d): Use soft_start_penstroke.
13855
13856         * mf/feta-schrift.mf ("Trill (`tr')"): Remove redundant point in
13857         path.
13858         ("Varied Coda"): Move some points to avoid fontforge warnings.  This
13859         doesn't change the glyph shape.
13860
13861         * mf/feta-accordion.mf ("accOldEE"): Draw glyph differently (without
13862         changing the shape) to avoid fontforge warnings.
13863
13864         * mf/feta-klef.mf (draw_tab_T, draw_tab_A, draw_tab_B): Use
13865         soft_end_penstroke and fix glyph shape.
13866
13867 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13868
13869         * lily/*.cc: Scheme deprecation of SCM_VECTOR_* 
13870
13871 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13872
13873         * scm/define-markup-commands.scm (line): filter out empty stencils
13874         from line command.
13875
13876         * lily/stencil-scheme.cc (LY_DEFINE): only allow finite real
13877         amount.
13878
13879 2005-01-27  Graham Percival  <gperlist@shaw.ca>
13880
13881         * Documentation/user/notation.itely: added info about what
13882         \voiceFoo does.  Also rewrote warning about marks at
13883         a line break.
13884
13885         * Documentation/user/changing-defaults.itely: added info
13886         about putting dynamics in parenthesis and brackets.
13887
13888 2005-01-27  Werner Lemberg  <wl@gnu.org>
13889
13890         * mf/feta-schrift.mf ("Trill (`tr')"): Fix typo.
13891
13892 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13893
13894         * mf/feta-schrift.mf: reverse u and d portato. Fixes:
13895         portato-direction.ly
13896
13897         * lily/beam.cc (consider_auto_knees): add beam height to
13898         threshold. Fixes: knee-multiple-beam.ly
13899
13900         * lily/instrument-name-engraver.cc (acknowledge_grob): also ignore
13901         pedal line spanners. Fixes: instrument-center-pedal.ly
13902
13903         * lily/auto-beam-engraver.cc (acknowledge_grob): stop beam
13904         if encountering barline. Fixes: auto-beam-repeat.ly
13905
13906 2005-01-26  Werner Lemberg  <wl@gnu.org>
13907
13908         * mf/feta-slag.mf (draw_trillelement): Fix shape to get clean
13909         overlapping.
13910
13911         * mf/feta-toevallig.mf (draw_meta_sharp): Fix shape to avoid curves
13912         with inflections for the 1/2 sharp glyph.
13913
13914         * mf/feta-schrift.mf ("Trill (`tr')"): Fix start position of
13915         connection between `t' and `r'.
13916         Unify bulb with the rest of `r' to avoid grazing outlines which
13917         confuses the overlap removal algorithm of fontforge.
13918
13919         * mf/feta-bolletjes.mf (draw_slash): Fix shape to avoid curves with
13920         inflections.
13921         (draw_cross): Fix shape to have uniform thickness in corners.
13922
13923         * mf/feta-pendaal.mf (draw_pedal_P): Break shape into smaller pieces
13924         to avoid an uneven number of self-intersections; this confuses
13925         fontforge.
13926         Fix a slight bug in the shape at left bottom (which is visible only
13927         at high magnifications).
13928         `Center' the stem horizontally to avoid overlapping.
13929
13930 2005-01-24  Werner Lemberg  <wl@gnu.org>
13931
13932         * mf/feta-autometric.mf (fet_beginfont): Set font_coding_scheme
13933         to `asis'.
13934         (fet_begingroup): Save group name in string `feta_group'.
13935         (fet_endgroup): Updated.
13936         (fet_beginchar): Emit `glyph_name' special for mf2pt1.
13937
13938         * mf/feta-bolletjes.mf: s/p/pat/ for paths.
13939
13940         * mf/feta-pendaal.mf ("Pedal asterisk"): Add workaround for bug
13941         in metapost.
13942
13943 2005-01-24  Graham Percival  <gperlist@shaw.ca>
13944
13945         * Documentation/user/notation.itely: really minor editing.
13946
13947 2005-01-22  Graham Percival  <gperlist@shaw.ca>
13948
13949         * Documentation/user/examples.itely: minor editing.
13950
13951         * Documentation/user/changing-defaults.itely: minor editing.
13952
13953         * Documentation/user/notation.itely: clarified info on polyphony
13954         and \addlyrics.
13955
13956 2005-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
13957
13958         * scm/output-gnome.scm: 
13959         * scm/output-svg.scm:
13960         * scm/lily-library.scm (font-name-style): Update font name
13961         kludging for fontconfig use.
13962
13963 2005-01-20  Erlend Aasland  <erlenda@gmail.com>
13964
13965         * scm/define-markup-commands.scm: Document right-align and
13966         larger markup commands. Remove "TODO" from the topmost comment
13967         "each markup function should have a doc string." More consistent
13968         use of new-lines.
13969
13970 2005-01-22  Graham Percival  <gperlist@shaw.ca>
13971
13972         * Documentation/user/changing-defaults: removed info about
13973         copyright symbol, since it's likely to change soon.
13974         Added info about betweensystemspace.
13975
13976         * Documentation/user/notation.itely: minor fixes.
13977
13978         * Documentation/user/lilypond.tely,
13979         Documentation/user/music-glossary.tely: changed copyright
13980         date to 2005 instead of 2004.
13981
13982         * input/test/volta-chord-names.ly: added old example back.
13983
13984 2005-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13985
13986         * mf/feta-beugel.mf: use design size 20 (not 15).
13987
13988         * mf/aybabtu.pe.in: scale brace fonts to design sizes.
13989         change name to aybabtu completely
13990
13991 2005-01-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13992
13993         * buildscripts/gen-emmentaler-scripts.py (outdir): add
13994         design_size to fontname
13995
13996 2005-01-19  Werner Lemberg  <wl@gnu.org>
13997
13998         * mf/feta-accordion.mf, mf/feta-klef.mf, mf/feta-pendaal.mf,
13999         mf/feta-schrift.mf: s/p/pat/ if a path variable.
14000
14001         * mf/feta-autometric.mf (set_char_box): Add code which emits
14002         specials for mf2pt1 if run with metapost.
14003         (to_bp): New macro for mf2pt1.
14004
14005 2005-01-18  Graham Percival  <gperlist@shaw.ca>
14006
14007         * Documentation/user/changing-defaults: added info on
14008         creating a copyright symbol.
14009
14010 2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14011
14012         * VERSION: release 2.5.9
14013         
14014 2005-01-18  Erlend Aasland  <erlenda@gmail.com>
14015
14016         * scm/auto-beam.scm: Simplify score-override-auto-beam-setting
14017
14018         * Documentation/user/notation.itely: Document
14019         score-override-auto-beam-setting Fix documentation for
14020         revert-auto-beam-setting.
14021
14022 2005-01-18  Werner Lemberg  <wl@gnu.org>
14023
14024         * scm/framework-ps.scm (ps-embed-cff): Fix DSC comments.
14025         (procset): New function to define a procset resource.
14026         (ps-embed-pfa): New function to define a font resource.
14027         (setup): New function to define a `Setup' environment.
14028         (preamble): Use new functions.
14029
14030         * ps/lilypond.defs (init-lilypond-parameters): New function to
14031         get rid of directly executed PS code.  Used in scm/framework-ps.scm.
14032
14033 2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14034
14035         * mf/GNUmakefile (MFTRACE_FLAGS): add --no-afm to MFTRACE_FLAGS
14036
14037 2005-01-17  Erlend Aasland  <erlenda@gmail.com>
14038
14039         * scm/define-markup-commands.scm: Change number->markletter-string
14040         to take two arguments (vector number). Add number->mark-alphabet-vector
14041         and markalphabet markup command.
14042
14043         * scm/translation-functions.scm: Add format-mark-box-alphabet,
14044         format-mark-alphabet, format-mark-box-barnumbers and
14045         format-mark-barnumbers. Fix bug in format-mark-box-numbers.
14046
14047 2005-01-17  Graham Percival  <gperlist@shaw.ca>
14048
14049         * Documentation/user/examples.itely: add SATB automatic piano
14050         reduction template.
14051
14052         * Documentation/user/notation.itely: added info about changing
14053         partcombine texts.  Also adds examples of alternate lyrics.
14054
14055         * Documentation/user/changing-defaults.itely: added warning
14056         about \RemoveEmptyStaffContext overriding previous changes.
14057
14058 2005-01-17  Werner Lemberg  <wl@gnu.org>
14059
14060         * buildscripts/mf-to-table.py: Use `FetaAlphabetEncoding' for
14061         feta-alphabet*.
14062
14063 2005-01-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14064
14065         * python/lilylib.py (make_ps_images): don't do final showpage for
14066         multi-page documents.
14067         
14068         * VERSION (MY_PATCH_LEVEL): release 2.5.8
14069
14070 2005-01-16  Graham Percival  <gperlist@shaw.ca>
14071
14072         * Documentation/user/lilypond.tely: changed order of appendices;
14073         unified index should be last.
14074
14075         * Documentation/user/notation.itely: add example of key signatures
14076         and info about Staff.printKeyCancellation.
14077
14078 2005-01-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14079
14080         * lily/include/repeated-music.hh (class Repeated_music): change
14081         into "namespace" class.
14082
14083         * lily/event.cc: remove Key_change_event.
14084
14085         * lily/include/transposed-music.hh (class Transposed_music): remove.
14086
14087         * lily/transposed-music.cc: remove
14088
14089         * lily/include/relative-music.hh: remove.
14090
14091         * lily/include/music-sequence.hh (struct Music_sequence): change
14092         into "namespace" class.
14093
14094         * lily/untransposable-music.cc (Module): remove
14095
14096         * lily/include/un-relativable-music.hh (Module): remove
14097
14098         * lily/include/untransposable-music.hh (Module): remove
14099
14100         * lily/include/music-list.hh (Module): remove file
14101
14102         * lily/un-relativable-music.cc: remove file.
14103
14104 2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
14105
14106         * lily/parser.yy: Compile fix.
14107
14108 2005-01-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14109
14110         * lily/include/music.hh (class Music): unvirtualize transpose().
14111
14112         * lily/sequential-music.cc: remove file.
14113
14114         * lily/include/lyric-combine-music.hh ("music.hh"): remove file.
14115
14116         * lily/slur-scoring.cc (get_best_curve): only switch on
14117         DEBUG_SLUR_SCORING for non NDEBUG builds.
14118
14119         * lily/include/music.hh (class Music): replace Music::start_mom()
14120         by start-callback property
14121
14122         * lily/include/grace-music.hh: remove file. 
14123
14124         * lily/stem.cc (height): robustness fix.
14125
14126         * lily/time-scaled-music.cc: remove file.
14127
14128         * lily/include/music.hh (class Music): include SCM init argument.
14129         (class Music): replace Music::get_length() virtual by
14130         length-callback property everywhere.
14131
14132         * scripts/convert-ly.py (conv): add  # to \property scalar value.
14133
14134         * mf/GNUmakefile: don't install *list.ly
14135
14136 2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
14137
14138         * mf/GNUmakefile (CFF_FILES): Bugfix: only big cheeses and braces.
14139
14140 2005-01-12  Werner Lemberg  <wl@gnu.org>
14141
14142         This patch addresses the following problems in the feta sources
14143         files which contribute to the fetaXX fonts.
14144
14145         . Many fixes for rasterization at low resolutions (consistent use of
14146           `vround' and `hround', integer shift values for paths, applying
14147           `eps' for mirrored paths, use of `define_whole_pixels' and
14148           friends, etc.) -- while this probably looks like a waste of time
14149           it has revealed deficiencies in some glyph shapes.  See comment at
14150           the end of feta-params.mf how vertical symmetry is achieved.
14151
14152         . The `---' operator has been replaced everywhere with `--'; this
14153           both improves and considerably reduces the font size after
14154           conversion with mf2pt1.
14155
14156         These change aren't explicitly mentioned below since virtually all
14157         glyphs are affected.
14158
14159         Other notable differences:
14160
14161         . Glyphs from feta-accordion.mf now have charboxes around the
14162           outline.
14163
14164         . Fixed incorrect charbox for `accDot'.
14165
14166         . The `rcomma' and `lcomma' glyphs were distorted due to a typo.
14167
14168         . Fixed position of the bow in the `upprall' glyph and its siblings.
14169
14170         . The bulb size in the `2/2 meter' and `4/4 meter' glyphs is now
14171           dependent on the staff line thickness to avoid touching the middle
14172           staff line at smaller sizes.
14173
14174         . Largely extended output for feta-testXX: Where useful, glyphs
14175         are shown both between and on staff lines.
14176
14177
14178         * mf/feta-params.mf (staff_space_rounded,
14179         stafflinethickness_rounded, linethickness_rounded,
14180         ledgerlinethickness_rounded, stemthickness_rounded): New variables.
14181         Update all code which uses them where appropriate.
14182         (feta_eps, feta_shift, feta_space_shift, feta_offset, feta_fillpen):
14183         New variables used to control rasterization at low resolutions.  Set
14184         to zero if feta code is processed with metapost.
14185
14186         * mf/feta-macros.mf (draw_staff, draw_staff_outline): Updated.
14187         (draw_rounded_block, draw_square_block): Updated to use `--' only.
14188         (flare_path): Updated.
14189         Make it work with `filldraw' (but only circular pens).
14190         (hfloor, vfloor, hceiling, vceiling): New macros.
14191
14192         * mf/feta-accordion.mf ("accDiscant", "accFreebase", "accStdbase"):
14193         Use `draw' again in mf mode to have good pixel dropout control.
14194         Fix intersection points of horizontal lines with circle.
14195         ("accDot"): Fix parameters for set_char_box.
14196         ("accOldEE"): Use `draw' again in mf mode to have good pixel dropout
14197         control.
14198
14199         * mf/feta-banier.mf: Updated.
14200
14201         * mf/feta-bolletjes.mf (remember_pic): New variable, used for
14202         testing.
14203         (undraw_inside_ellipse): Remove `center' argument.  Update all
14204         callers.
14205         (draw_brevis): New macro, called by "Brevis notehead".
14206         (draw_whole_triangle_head): New macro, called by "Whole
14207         trianglehead".
14208         (draw_small_triangle_head): Use `filldraw'.
14209
14210         * mf/feta-eindelijk.mf: Remove useless global group.
14211         Updated.
14212
14213         * mf/feta-klef.mf (draw_c_clef): Correct point positions for using
14214         `filldraw'.
14215
14216         * mf/feta-pendaal.mf: Updated.
14217
14218         * mf/feta-puntje.mf: Updated.
14219
14220         * mf/feta-schrift.mf (draw_very_long_fermata): Simplified to use
14221         less points.
14222         ("Flageolet"): Use `draw' again in mf mode to have good pixel
14223         dropout control.
14224         ("Varied Coda"): Use `draw_block'.
14225         (draw_comma): Fix typo.
14226         (draw_arpeggio_arrow): Use `draw' also in mf mode to have good
14227         pixel dropout control.
14228
14229         * mf/feta-slag.mf ("upprall", "downprall", "lineprall"): Fix start
14230         position of bow.
14231
14232         * mf/feta-timesig.mf (draw_C): Reduce bulb size for smaller design
14233         sizes.
14234
14235         * mf/feta-toevallig.mf (remember_pic): New variable, used for
14236         testing.
14237         (draw_meta_sharp): Much simplified.
14238         ("Sharp", "1/2 Sharp", "3/4 Sharp"): Don't rotate but shift.
14239
14240         * mf/feta-test-generic.mf: Include all files as in feta-generic.mf.
14241
14242 2005-01-13  Mats Bengtsson  <mabe@s3.kth.se>
14243
14244         * Documentation/user/notation.itely (Ancient rests): Fix typo
14245         (thanks Anthony)
14246
14247 2005-01-13  Jan Nieuwenhuizen  <janneke@gnu.org>
14248
14249         * scm/auto-beam.scm (score-override-auto-beam-setting): New function.
14250
14251         * lily/main.cc (setup_paths): Add cff.
14252
14253         * mf/GNUmakefile (foe): Include actual target %.cff.
14254         (INSTALLATION_OUT_SUFFIXES): Install CFF and SVG fonts too.
14255
14256 2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14257
14258         * lily/include/lily-lexer.hh (class Lily_lexer): lose hungarian _b
14259         suffix for main_input_b_.
14260
14261         * scm/music-functions.scm (toplevel-music-functions):
14262         precompute music lengths for music expressions.  
14263
14264 2005-01-11  Nicolas Sceaux  <nicolas.sceaux@free.fr>
14265
14266         * lily/include/input.hh (class Input): new `end_' slot for end of
14267         input. Renamed defined_str0_ to start_.
14268
14269         * lily/input.cc (Input): Add Input::Input (Input const &) and
14270         remove Input::Input (Source_file*, char const *). Use the new
14271         slots.
14272         (set_location): method used by bison to propagate input
14273         locations (YYLLOC_DEFAULT).
14274         (end_line_number, end_column_number, step_forward): new methods
14275         
14276         * lily/input-scheme.cc (ly:input-both-locations): new function,
14277         similar to ly:input-location, but also return the end line and
14278         column.
14279
14280         * lily/include/includable-lexer.hh: 
14281         * lily/includable-lexer.cc: 
14282         * lily/include/lily-lexer.hh (class Lily_lexer): 
14283         * lily/lily-lexer.cc (add_lexed_char): Move add_lexed_char from
14284         Includable_lexer to Lily_lexer, in order to update lexloc (the
14285         yylloc), a new slot of Lily_lexer.
14286         (here_input, LexerError): simplify by using the lexloc slot (aka
14287         yylloc)
14288
14289         * lily/lexer.ll: #define yylloc to use input locations (it may
14290         be useless here?). Fixed the #embedded_scm rule (step the location
14291         forward in order to skip the sharp sign before parsing the scheme
14292         expression)
14293
14294         * lily/include/lily-parser.hh (class Lily_parser): 
14295         * lily/lily-parser.cc: Remove push_spot(), pop_spot() and
14296         here_input()
14297         (parser_error): overload for more precise locations of errors.
14298
14299         * lily/parser.yy (YYLTYPE): set location type to Input
14300         (YYLLOC_DEFAULT): use Input::set_location()
14301         (yylex): add the YYLTYPE* location parameter.
14302         Clean push_spot()/pop_spot()/here_input(), and use @$, @1, etc.
14303         Give an Input parameter to THIS->parser-error() for more accurate
14304         messages.
14305
14306 2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14307
14308         * stepmake/aclocal.m4: do NDEBUG for optimizing builds.
14309
14310         * lily/include/beam.hh (DEBUG_QUANTING): performance: only switch
14311         on BEAMQUANTING for non-NDEBUG builds.
14312
14313         * lily/stem.cc (head_count): performance: avoid String::String()
14314         inside oft called function.
14315
14316 2005-01-09  Graham Percival  <gperlist@shaw.ca>
14317
14318         * Documentation/user/examles.itely: attempted fix for broken
14319         string quartet template.
14320
14321         * Documentation/user/notation.itely: remove unnecessary broken
14322         link.
14323
14324 2005-01-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14325
14326         * VERSION (PACKAGE_NAME): release 2.5.7
14327
14328 2005-01-09  Jan Nieuwenhuizen  <janneke@gnu.org>
14329
14330         * config.make.in (METAFONT): Append -progname=mf, fixes use with
14331         mf-nowin for teTeX-3.0.  Backportme.
14332
14333         * scm/output-svg.scm (utf8-string): New function.
14334
14335         * scm/output-gnome.scm (utf8-string): New function.
14336         (otf-name-mangling): Remove.
14337
14338         * lily/pango-font.cc (Pango_font): Use font string iso font
14339         filename for utf8-text.
14340
14341         * buildscripts/gen-emmentaler-scripts.py: Remove designsize from
14342         name.
14343
14344 2005-01-08  Graham Percival  <gperlist@shaw.ca>
14345
14346         * Documentation/user/notation.itely: add info about
14347         Staff.extraNatural = ##f in Pitches section.  Also
14348         fixed some minor issues in the Vocal music section.
14349
14350 2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14351
14352         * scm/output-ps.scm (white-text): comment out Helvetica font,
14353         which is broken for my GS install.
14354
14355         * lily/pango-font.cc (pango_item_string_stencil): use ink_rect,
14356         which provides a tighter bbox.
14357
14358         * scm/define-grobs.scm (all-grob-descriptions): remove all
14359         extra-offsets from definitions.
14360
14361 2005-01-08  Erlend Aasland  <erlenda@gmail.com>
14362
14363         * scm/output-lib.scm: Rename guitar-tunings to guitar-tuning and
14364         add tuning for 4-string bass and some common 4/5-string banjo
14365         tunings.  New function (four-string-banjo) turns a 5-string tuning
14366         into a 4-string tuning.  New function
14367         (fret-number-tablature-format-banjo) computes correct fret numbers
14368         on 5-string banjos.
14369
14370         * ly/engraver-init.ly: Default stringTunings = #guitar-tuning
14371         Add beam correction to TabVoice.
14372
14373         * scm/define-grobs.scm: Adjust notehead offset. Print fret numbers
14374         using bold font; makes tabs more readable.
14375
14376 2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14377
14378         * lily/font-select.cc (get_font_by_design_size): don't make
14379         Modified_font_metric; this causes trouble, since we don't know the
14380         font magnification from inside Pango_font::text_stencil()
14381
14382         * lily/all-font-metrics.cc (find_pango_font): take magnification argument.
14383
14384         * Documentation/user/notation.itely (The Lyrics context): comment out
14385         broken {Small ensembles} link.
14386
14387         * scm/framework-svg.scm (output-framework): change calling convention.
14388
14389         * lily/object-key-dumper-scheme.cc: new file.
14390
14391         * lily/object-key-undumper-scheme.cc: new file.
14392
14393         * lily/tweak-registration-scheme.cc: new file.
14394
14395         * lily/pango-select.cc (symbol_to_pango_variant): init local variable.
14396
14397         * Documentation/user/examples.itely (String quartet): uncomment
14398         broken example.
14399
14400         * lily/font-config.cc: new file.
14401
14402 2005-01-08  Jan Nieuwenhuizen  <janneke@gnu.org>
14403
14404         * scm/output-svg.scm: 
14405         * scm/output-gnome.scm: s/bigcheese/emmentaler.
14406
14407         * lily/score-engraver.cc (MUSIC_FONT): Use emmentaler20.
14408
14409 2005-01-07  Jan Nieuwenhuizen  <janneke@gnu.org>
14410
14411         * lily/general-scheme.cc (LY_DEFINE): Use snprintf (WAS: sprintf).
14412         Add headers.
14413
14414         * lily/GNUmakefile (general-scheme.o): Add version.hh dependency.
14415
14416 2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14417
14418         * mf/GNUmakefile (debian-mirror): rename bigcheese to emmentaler.
14419
14420         * lily/include/main.hh: lose _b hungarian suffixes for global
14421         variables.
14422
14423         * lily/include/lily-guile-macros.hh: new file.
14424
14425         * lily/pango-select-scheme.cc (LY_DEFINE): new file.
14426
14427         * lily/general-scheme.cc: new file. 
14428
14429         * lily/font-select.cc (get_font_by_design_size): retrieve
14430         PangoFont for (designsize . "pango-descr") entries.
14431
14432         * lily/lily-parser-scheme.cc: new file.
14433
14434         * lily/output-def-scheme.cc: new file.
14435
14436         * lily/paper-book-scheme.cc: new file.
14437
14438         * lily/duration-scheme.cc (LY_DEFINE): new file.
14439
14440         * lily/pitch-scheme.cc:  new file.
14441
14442         * scm/font.scm (add-cmr-fonts): use real dimens in font selection.
14443
14444 2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14445
14446         * lily/dimensions.cc (LY_DEFINE): add ly:{inch,cm,mm,bp,pt}.
14447
14448 2005-01-06  Graham Percival  <gperlist@shaw.ca>
14449
14450         * Documentation/user/notation.itely: minor editing.
14451
14452         * Documentation/user/changing-defaults: minor editing.
14453
14454         * Documentation/user/examples.itely: add template for
14455         string quartet part extraction; demonstrates tag.
14456
14457 2005-01-06  Erlend Aasland  <erlenda@gmail.com>
14458
14459         * Documentation/user/notation.itely: documents
14460         format-mark-box-letters and format-mark-box-numbers
14461
14462         * scm/define-context-properties.scm: change comment.
14463
14464 2005-01-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14465
14466         * scm/framework-ps.scm (output-classic-framework): new function:
14467         dump systems as separate .eps files (without fonts) and write a
14468         single collecting .tex file.
14469
14470 2005-01-05  Mats Bengtsson  <mabe@s3.kth.se>
14471
14472         * Documentation/user/notation.itely (Setting simple songs):
14473         Correct several errors in the equivalent formulation of
14474         \addlyrics. 
14475         (The Lyrics context): Corrected link to the SATB example.
14476
14477 2005-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14478
14479         * scm/lily.scm (completize-formats): new function
14480         (postprocess-output): new function
14481
14482         * lily/paper-book.cc (classic_output): change calling
14483         convention. Give basename as first argument. 
14484         remove Paper_book::post_processing().
14485
14486         * lily/lily-guile.cc (LY_DEFINE): ly:output-backend, new function.
14487
14488 2005-01-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14489
14490         * lily/paper-outputter.cc (LY_DEFINE): new function
14491         ly:outputter-close.
14492
14493         * lily/main.cc: change --format,-f to --backend,-b
14494
14495         * lily/include/main.hh: rename format to backend.
14496
14497         * scm/translation-functions.scm (format-mark-box-numbers): add.
14498         patch by Erlend Aasland
14499
14500 2005-01-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14501
14502         * lily/pango-font.cc (text_stencil): dump string as
14503         (utf-8-string FONTDESC UTF8) for use in -f gnome, -f svg.
14504
14505 2005-01-03  Jan Nieuwenhuizen  <janneke@gnu.org>
14506
14507         * configure.in (gui_b): Remove handy developer-only
14508         PKG_CONFIG_PATH settings that cater for Jan-and-Han-Wen ~/usr/pkg/
14509         CVS source installations (but break other non-default but correct
14510         PKG_CONFIG_PATH setups), as this is no longer developer-only.
14511
14512         * SConstruct: 
14513         * ps/GNUmakefile (INSTALLATION_FILES): teTeX-3.0
14514         compatibility (backportme).
14515
14516         * GNUmakefile.in: teTeX-3.0 compatibility (backportme).
14517
14518 2005-01-03  Werner Lemberg  <wl@gnu.org>
14519
14520         Prepare glyph shapes for mf2pt1 conversion.
14521
14522         * mf/feta-accordion.mf (accreg_pen): Removed.  No longer used.
14523         (accDiscant, accFreebase, accStdbase): Replace `draw' with
14524         `penstroke'.
14525         (accDot): Use `drawdot'.
14526         (accBayanbase): Replace `draw' with `draw_gridline'.
14527         (print_penpos): Moved to feta-macros.mf.
14528         (accOldEE): Replace `filldraw' with `penstroke'.
14529         Replace `draw' with `penstroke' and `drawdot'.
14530
14531         * mf/feta-banier.mf: Code clean-up.
14532         ("grace dash (up)", "grace dash (down)"): Replace `draw' with
14533         `fill'.
14534
14535         * mf/feta-bolletjes (draw_cross): Remove call to `labels'.
14536
14537         * mf/feta-eindelijk.mf (draw_rest_bulb, draw_eigth_rest): Add
14538         paremeter to control drawing of labels.  Update all callers.
14539
14540         * mf/feta-klef.mf (draw_c_clef): Use `&' not `..' to connect paths.
14541         (new_bulb): Return a bulb as a single path.  To do that, it now
14542         takes some more parameters.  Updated all callers.
14543         (draw_gclef): Major clean-up.  `draw' has been replaced with
14544         `penstroke', unnecessary outlines have been removed.
14545         Remove (unused) gnome-canvas code.
14546
14547         * mf/feta-macros.mf (print_penpos): New macro (from
14548         feta-accordion.mf).
14549         Other minor fixes.
14550
14551         * mf/feta-pendaal.mf ("Pedal asterisk"): Use `undrawdot'.
14552         ("Pedal dot"): Use `drawdot'.
14553         (draw_pedal_P): Add parameter to control drawing of labels.  Update
14554         all callers.
14555         Fix shape at top.
14556         (draw_pedal_e): Add parameter to control drawing of labels.  Update
14557         all callers.
14558         (draw_pedal_d): Add parameter to control drawing of labels.  Update
14559         all callers.
14560         Revert drawing direction.
14561
14562         * mf/feta-schrift.mf (draw_fermata): Use single path.
14563         (draw_short_fermata): Replace `filldraw' with `fill'.
14564         (draw_long_fermata, draw_very_long_fermata): Replace calls to
14565         `draw_rounded_block' with a single path.
14566         ("Thumb"): Draw full circle instead of mirroring segments.
14567         (draw_accent): New macro.
14568         ("> accent", "espr"): Use it.
14569         (draw_marcato): Replace `filldraw' and `draw' with `fill'.
14570         ("open (unstopped)"): Draw full circle instead of mirroring
14571         segments.
14572         (draw_vee): Removed.
14573         ("Upbow"): Use `draw_accent' instead of `draw_vee'.
14574         ("Downbow"): Replace calls to `draw_rounded_block' with a single
14575         path.
14576         ("Trill (`tr')"): Replace overlapping loop drawn with `draw' with
14577         partial pieces drawn with `fill' -- these do still overlap with the
14578         stem of the `t' but just once, not multiple times so that fontforge
14579         can handle it gracefully.
14580         Change other parts of the glyph so that fontforge's overlapping
14581         algorithm reliably works.
14582         (draw_heel): Replace `draw' with `fill'.
14583         (draw_toe): Use `draw_accent' instead of `draw_vee'.
14584         ("Flageolet"): Replace `draw' with `penstroke'.
14585         ("Segno"): Replace `filldraw' with `penstroke'.
14586         Replace `draw' with `drawdot'.
14587         ("Coda"): Replace `fill' with `penstroke', using a single path.
14588         ("Varied Coda"): Use less overlapping paths.
14589         (draw_arpeggio_arrow): Replace `filldraw' with `fill', using a
14590         single path.
14591
14592         * mf/feta-slag.mf (draw_trillelement): Put `clearxy' outside of
14593         group to better control the `labels' command.
14594         Rename argument to `offset' and use it actually.  Update all
14595         callers.
14596         Replace `filldraw' with `fill'.
14597         ("mordent", "prallmordent", "upmordent", "downmordent",
14598         "lineprall"): Replace `draw' with `draw_gridline'.
14599         ("upprall", "downprall"): Replace `draw' with `fill'.
14600
14601         * mf/feta-timesig.mf: Formatting.
14602
14603         * mf feta-toevallig.mf (draw_meta_flag): Move code to draw labels
14604         to...
14605         ("Flat"): Here.
14606         (draw_paren): Move code to draw labels to...
14607         ("Right Parenthesis"): Here.
14608
14609 2005-01-02  Graham Percival <gperlist@shaw.ca>
14610
14611         * Documentation/user/notation.itely: add example of \setTextDecresc
14612         and \setTextDim.
14613
14614 2005-01-02  Tatsuya Ono <tats_ono@infoseek.jp>
14615
14616         * scm/define-markup-commands.scm :  fix glyph-strings of
14617         accidentals and \note-by-number
14618
14619 2005-01-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14620
14621         * VERSION: 2.5.6 released.
14622         
14623         * ps/lilyponddefs.ps: put mm -> pt scaling in here.
14624
14625         * input/regression/new-markup-scheme.ly: oops. font-family=music
14626         -> font-encoding fetaMusic.  
14627
14628         * lily/main.cc: put default to PS.
14629
14630         * lily/tfm.cc: idem.
14631
14632         * lily/afm.cc: idem.
14633
14634         * lily/include/modified-font-metric.hh (struct
14635         Modified_font_metric): remove coding_scheme() method.
14636
14637         * input/mutopia/F.Schubert/morgenlied.ly: convert to utf8
14638
14639         * scripts/convert-ly.py (conv): crash on encountering \encoding.
14640
14641         * input/les-nereides.ly: convert to utf8
14642
14643         * lily/modified-font-metric.cc (text_dimension): idem.
14644
14645         * lily/parser.yy (TODO): idem.
14646
14647         * lily/include/lily-lexer.hh (class Lily_lexer): idem.
14648
14649         * lily/lexer.ll: remove encoding
14650
14651         * scm/framework-ps.scm (output-variables): separately scale the
14652         page to mm 
14653
14654         * lily/pango-font.cc (Pango_font): fix scaling.
14655
14656         * lily/font-metric.cc (design_size): design_size returns a
14657         dimension now as well.
14658
14659 2004-12-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14660
14661         * mf/GNUmakefile ($(outdir)/%.otf-table): use findstring. Fixes
14662         brace generation. 
14663
14664         * lily/text-metrics.cc (LY_DEFINE): use scm_c_make_hash_table().
14665
14666 2004-12-30  Jan Nieuwenhuizen  <janneke@gnu.org>
14667
14668         * mf/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Do not try to
14669         install unbuildable Fontmap and Fontmap.lily (Simon Aridis-Lang).
14670
14671 2004-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14672
14673         * mf/GNUmakefile ($(outdir)/%.otf-table): include parmesan20.lisp
14674         in first run as well.
14675
14676         * scm/paper.scm (layout-set-staff-size): use text-font-size in
14677         dimension less points (ie. 12 = 12 point)
14678
14679         * lily/pango-select.cc (select_pango_font): use find_scaled_font().
14680
14681         * lily/all-font-metrics.cc (find_pango_font): set description_
14682
14683         * lily/pango-font.cc (text_stencil): export size as well.
14684         (text_stencil): fix scaling and extents box.
14685
14686 2004-12-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14687
14688         * Documentation/topdocs/NEWS.texi (Top): add -f texstr
14689
14690         * Documentation/user/invoking.itely (Invoking lilypond): document
14691         texstr
14692
14693         * scripts/convert-ly.py (conv): add ancient rules.
14694
14695         * scm/clef.scm (c0-pitch-alist): replace - with .
14696
14697         * scripts/lilypond-book.py (process_snippets): add texstr support.
14698
14699         * scm/framework-texstr.scm (header): change extension to .textmetrics
14700
14701         * lily/lily-parser.cc (parse_file): do try_load_text_metrics for
14702         -f tex.
14703
14704         * lily/text-metrics.cc: new file.
14705         (try_load_text_metrics): new function
14706
14707         * lily/include/text-metrics.hh: new file.
14708
14709 2004-12-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14710
14711         * lily/include/lily-guile.hh (ly_lily_module_constant): rename
14712         ly_scheme_function to ly_lily_module_constant.
14713
14714         * lily/modified-font-metric.cc (text_dimension): try
14715         lookup_tex_text_dimension() first.
14716
14717         * lily/tfm.cc: new function ly:load-text-dimensions
14718
14719 2004-12-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14720
14721         * scm/output-texstr.scm (text): use \lilygetmetrics
14722
14723         * scm/framework-texstr.scm (header): dump in new format.
14724
14725         * tex/lilypond-tex-metrics: new file.
14726         
14727 2004-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
14728
14729         * lily/pango-font.cc (text_stencil): Quick try at glyph->charcode
14730         mapping.
14731         (index_to_charcode): New method.
14732
14733         * scm/output-ps.scm (glyph-string): 
14734         * scm/output-gnome.scm (glyph-string): Add FONT parameter.
14735
14736 2004-12-26  Jan Nieuwenhuizen  <janneke@gnu.org>
14737
14738         * scm/output-gnome.scm (FIXME-glyph-string): New function.  Cannot
14739         implement fully, need FONT to get to charcode.
14740
14741         * scm/lily.scm (ly:all-stencil-expressions): Add glyph-string.
14742
14743         * scm: Cleanups.
14744
14745         * Documentation/user/changing-defaults.itely: Fix internalsrefs
14746         {Tunable context properties},
14747         {All layout objects},
14748         {Music definitions}.
14749
14750 2004-12-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14751
14752         * VERSION: release 2.5.5
14753         
14754         * lily/main.cc: use TeX as default output format.
14755
14756         * flower/file-path.cc (find): try to open directly as well, so we
14757         find absolute path files. 
14758
14759         * lily/pango-select.cc: new file.
14760
14761         * scm/framework-ps.scm: remove all encoding code. 
14762         load pfb/pfa for PangoFont too.
14763         
14764         * lily/lily-guile.cc (ly_chain_assoc_get): new function.
14765
14766 2004-12-22  Werner Lemberg  <wl@gnu.org>
14767
14768         Prepare glyph shapes for mf2pt1 conversion.
14769
14770         * mf/feta-toevallig.mf ("Double Sharp"): Minor path fix.
14771
14772         * mf/feta-bolletjes.mf (penposx): New auxiliary macro.
14773         (define_triangle_shape): Use it to replace `draw' with `fill' and
14774         `unfill'.  Update all callers.
14775         (draw_slash): Replace `filldraw' with `fill'.  Update all callers.
14776         (draw_cross): Ditto.
14777         ("X-Circled notehead"): Replace `draw' with `fill' and `unfill'.
14778         Use penrazor for better conversion with mf2pt1.
14779         (generic_draw_solfa_note_shape, draw_solfa_note_shape,
14780         draw_solfa_quarter_note_shape, triangle): Removed.  Unused.
14781         (draw_do_head, draw_re_head, draw_mi_head, draw_fa_head,
14782         draw_la_head, draw_ti_head): Replace `filldraw' with
14783         `fill'.  Update all callers.
14784
14785 2004-12-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14786
14787         * lily/paper-book.cc (output): revert: only allow a single output
14788         format.
14789
14790         * lily/include/pango-font.hh: new file.
14791
14792         * lily/pango-font.cc: new file.
14793
14794         * lily/font-metric.cc (text_stencil): new routine
14795
14796         * lily/all-font-metrics.cc (find_pango_font): new routine.
14797
14798         * lily/include/font-metric.hh (struct Font_metric): add
14799         text_stencil()
14800
14801         * configure.in (PKG_CONFIG_PATH): require PANGO_FT2
14802
14803 2004-12-22  Werner Lemberg  <wl@gnu.org>
14804
14805         Prepare glyph shapes for mf2pt1 conversion.
14806
14807         * mf/feta-macros.mf, mf_feta-eindelijk.mf: Some formatting.
14808
14809         * mf/feta-toevallig.mf: Formatting.
14810         (draw_meta_sharp): Modify path to replace `filldraw' with `fill'.
14811         ("Natural"): Fix paths to allow better postprocessing.
14812         (draw_meta_flat): Use `z3l' as additional point in path to get
14813         better conversion with mf2pt1.
14814         Other minor cleanups.
14815         ("3/4 Flat"): Add auxiliary points and modify path to replace
14816         `draw' with `fill'.
14817         ("Double Sharp"): Mirror path segments instead of picture elements
14818         to get a single outline.
14819         Modify path to replace `filldraw' with `fill'.
14820
14821 2004-12-22  Graham Percival  <gperlist@shaw.ca>
14822
14823         * input/test/unfold-all-repeats.ly: added file back.
14824
14825         * Documentation/user/notation.itely,
14826         Documentation/user/programming-interface.itely
14827         Documentation/user/changing-defaults.itely: fixed misc broken
14828         links to input/test/ files.
14829
14830 2004-12-22  Jan Nieuwenhuizen  <janneke@gnu.org>
14831
14832         * tex/texinfo.tex: Update.  We should not be distributing this,
14833         but since we do, use latest version.
14834
14835         * Documentation/user/macros.itexi: Comment-out \fetaflat,
14836         \fetasharp.  Fixes make web.  FIXME: make usable (compatible?) TeX
14837         macros for feta glyphs.
14838
14839 2004-12-22  Graham Percival  <gperlist@shaw.ca>
14840
14841         * Documentation/user/changing-defaults.itely: fix index for set.
14842
14843         * Documentation/user/converters.itely: added convert-ly bugs list
14844         from CVS.
14845
14846 2004-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
14847
14848         * python/lilylib.py (setup_environment): Set GS_FONTPATH, GS_LIB
14849         to empty.  Fixes make web, using gs-gpl-8.01.  In fact,
14850         gs-afpl-8.50 has more trouble with make web (ie, uses *a lot* more
14851         resourses; 3x MAXSIZE, 4x MAXRSS, 1.5x user).
14852
14853         * mf/GNUmakefile (pfa_warning): Use less broken check.
14854
14855         * python/lilylib.py (setup_environment): Remove cruft from
14856         GS_FONTPATH.
14857
14858         * configure.in: Bump mftrace requirement to 1.1.1.
14859
14860 2004-12-20  Jan Nieuwenhuizen  <janneke@gnu.org>
14861
14862         * scm/output-svg.scm (beam): Use polygon.
14863
14864         * scm/lily-library.scm: Bugfix.
14865
14866         * Documentation/user/invoking.itely (Invoking lilypond): Bugfix.
14867
14868         * mf/GNUmakefile (ALL_GEN_FILES): Remove unbuildable Fontmap.lily.
14869
14870 2004-12-19  Werner Lemberg  <wl@gnu.org>
14871
14872         Prepare glyph shapes for mf2pt1 conversion.
14873
14874         * mf/feta-eindelijk: Some formatting.
14875         (multi_rest_x, multi_beam_height): Removed.  Unused.
14876         ("Quarter rest"): Use `intersectiontimes' to create a single
14877         outline.
14878         (rest_crook): Removed.  Unused.
14879         (draw_rest_bulb): Return path (without filling).  Update callers.
14880         Simplified.
14881         (draw_eighth_rest, "16th rest", "32th rest", "64th rest",
14882         "128th rest"): Simplify `pat'.
14883         Create single outline.
14884
14885 2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
14886
14887         * mf/GNUmakefile (ALL_GEN_FILES):
14888         (INSTALLATION_OUT_SUFFIXES): Remove unbuildable fonts.scale.
14889
14890         * scm/output-svg.scm (polygon, draw-line, dashed-line): New
14891         function.
14892
14893 2004-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14894
14895         * scm/output-texstr.scm (placebox): add routine
14896
14897         * VERSION (PACKAGE_NAME): release 2.5.4
14898
14899         * scm/framework-texstr.scm (output-framework): new file.  
14900
14901         * scm/output-texstr.scm: new file. Collect (TEXT . ) calls for TeX
14902         processing.
14903
14904         * Documentation/user/invoking.itely (Invoking lilypond): add SVG
14905
14906         * stepmake/stepmake/metafont-rules.make: make single SVG/PFA/PFB
14907         rule.
14908
14909         * configure.in (gui_b): bump mftrace requirement to 1.1.0
14910
14911         * mf/feta-bolletjes.mf (triangle): add s to 0triangle.
14912
14913         * mf/GNUmakefile (ALL_GEN_FILES): make SVG files too.
14914
14915 2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
14916
14917         * scm/framework-svg.scm (dump-page): Implement landscape.
14918
14919 2004-12-18  Jan Nieuwenhuizen  <janneke@gnu.org>
14920
14921         * lily/main.cc (setup_paths): Add svg to search path.
14922
14923         * scm/output-svg.scm:
14924         * scm/framework-svg.scm: Add pageSet.  Update.
14925         (dump-fonts): New function.
14926         (output-framework): Use it.
14927
14928         * mf/GNUmakefile: 
14929         * buildscripts/gen-bigcheese-scripts.py: Also generate SVG font.
14930
14931 2004-12-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14932
14933         * tex/lilyponddefs.tex: comment out new ifpdf code.
14934
14935 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
14936
14937         * GNUmakefile.in: 
14938         * SConstruct (symlink): Replace afm by otf.
14939
14940         * scm/framework-gnome.scm (gnome-main): Remove invocation of
14941         ly:pango-add-afm-decoder.
14942
14943         * lily/lily-guile.cc ("ly:pango-add-afm-decoder"): Build fix: Remove.
14944
14945 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14946
14947         * scm/output-ps.scm (new-text): don't access t glyph for getting
14948         space dimension.
14949
14950         * ly/init.ly: warn about \version
14951
14952         * lily/lexer.ll: set version-seen?
14953
14954 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
14955
14956         * scm/output-svg.scm (string->entities): Update.
14957
14958 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14959
14960         * lily/main.cc (setup_paths): replace afm by otf for path. 
14961
14962         * lily/pangofc-afm-decoder.cc: remove.
14963
14964         * lily/include/pangofc-afm-decoder.hh: remove.
14965
14966         * scm/framework-scm.scm (output-framework): new file.
14967
14968         * mf/GNUmakefile: remove SAUTER_FONTS.
14969         remove SVG/sodipodi hacks.
14970
14971         * scm/lily-library.scm (stderr): move stderr.
14972
14973         * mf/GNUmakefile: remove AFM support.
14974
14975         * buildscripts/mf-to-table.py (base): remove AFM support.
14976
14977         * lily/open-type-font.cc (design_size): use design_size
14978
14979 2004-12-17  Pedro Kroger  <kroeger@pedrokroeger.net>
14980
14981         * lily/font-metric.cc (LY_DEFINE): Fix the docstring.
14982
14983 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
14984
14985         * mf/GNUmakefile: Generate combined aybabtu info.
14986         * mf/aybabtu.pe.in (i): Load it.
14987
14988         * scm/framework-tex.scm (otf-font-load-command): Bugfix: subfonts
14989         are not symbols.
14990
14991         * lily/include/open-type-font.hh (count): New method.
14992
14993         * mf/aybabtu.pe.in: Typo.
14994
14995         * Documentation/user/out/lilypond-internals.nexi (Scheme
14996         functions): Typo.
14997
14998         * lily/include/guile-compatibility.hh (SCM_HASHTABLE_P): Add compat.
14999
15000 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15001
15002         * buildscripts/gen-bigcheese-scripts.py (i): use symbols for
15003         subfonts.
15004
15005         * scm/output-tex.scm (named-glyph): new function. This fixes TeX output.
15006
15007         * scm/framework-tex.scm (otf-font-load-command): load subfonts.
15008         (tex-font-command-raw): new function.
15009
15010         * lily/include/virtual-font-metric.hh (Module): remove file
15011
15012         * lily/virtual-font-metric.cc (Module): remove file.
15013         
15014
15015         * lily/open-type-font.cc (LY_DEFINE): ly:otf-font-glyph-info
15016         (get_indexed_char): read bbox from lily table if present.
15017
15018 2004-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15019
15020         * mf/GNUmakefile ($(outdir)/aybabtu.subfonts): rule for
15021         aybabtu.subfonts
15022
15023         * mf/feta-beugel.mf (y): don't number consecutively, instead, use
15024         global glyphname. Enables more than 64 glyphs in the OTF.
15025
15026 2004-12-16  Jan Nieuwenhuizen  <janneke@gnu.org>
15027
15028         * scm/font.scm (add-music-fonts): Load aybabtu iso all separate
15029         braces.
15030
15031         * lily/open-type-font.cc (design_size): Use 12 as default for
15032         design size.
15033
15034         * mf/aybabtu.pe.in: New file.  Merge all our braces.
15035
15036         * mf/GNUmakefile: Generate aybabtu.
15037
15038         * tex/lilyponddefs.tex: teTeX 3.0 pdfetex fix.
15039
15040 2004-12-14  Jan Nieuwenhuizen  <janneke@gnu.org>
15041
15042         * scm/lily-library.scm (char->unicode-index): Remove.
15043
15044         * scm/output-gnome.scm (text): Bugfix for plain string input.
15045         Updates.
15046
15047         * scm/output-svg.scm (svg-font): Add weight to font selection.
15048
15049 2004-12-14  Mats Bengtsson  <mabe@s3.kth.se>
15050
15051         * Documentation/topdocs/INSTALL.texi (Top): Point to
15052         buildscripts/out/clean-fonts instead of
15053         buildscripts/clean-fonts.sh. 
15054
15055 2004-12-13  Graham Percival  <gperlist@shaw.ca>
15056
15057         * input/regression/figured-bass.ly: attempt to clarify text.
15058
15059         * Documentation/user/notation.tely: add cindex for tag, attempt to
15060         add figured bass example.
15061
15062         * Documentation/user/changing-defaults: basic editing.
15063
15064 2004-12-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15065
15066         * buildscripts/gen-bigcheese-scripts.py (i): load .subfonts table. 
15067
15068         * lily/open-type-font.cc (LY_DEFINE): new function
15069         ly:font-sub-fonts
15070
15071         * lily/include/font-metric.hh (struct Font_metric): new method
15072         sub_fonts()
15073
15074         * lily/vaticana-ligature-engraver.cc (transform_heads): replace
15075         . with - in add.stem.
15076         
15077 2004-12-13  Jan Nieuwenhuizen  <janneke@gnu.org>
15078
15079         * scm/encoding.scm (coding-alist): Fix encodings for fetaNumber
15080         and fetaDynamic.
15081
15082         * lily/rest.cc (glyph_name): Change - to . .
15083
15084         * scm/output-gnome.scm (text): Hello world, again.
15085
15086         * scm/output-svg.scm (named-glyph): New function.  Hello world!
15087
15088         * lily/modified-font-metric.cc (index_to_charcode): New method.
15089
15090         * lily/include/font-metric.hh (index_to_charcode): New function.
15091
15092         * lily/font-metric.cc (ly:font-glyph-name-to-charcode): Use it in
15093         new function.
15094         (ly:font-glyph-to-index): Remove.
15095
15096 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15097
15098         * lily/open-type-font.cc (make_index_to_charcode_map): new method.
15099
15100         * mf/feta-autometric.mf (code): remove tex name from fet_beginchar.
15101
15102         * lily/open-type-font.cc (load_scheme_table): new function
15103
15104         * lily/dots.cc (print): replace - 
15105
15106         * lily/open-type-font.cc (attachment_point): new function.
15107         (load_table): read LILC table
15108
15109         * buildscripts/gen-bigcheese-scripts.py (Module): new
15110         file. Generate FF scripts.
15111
15112         * mf/feta-din10.mf: idem.
15113
15114         * mf/feta-nummer10.mf: remove mf files.
15115
15116         * mf/feta-alphabet.mf (dynamic_design_size): merge din and number font.
15117
15118 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
15119
15120         * lily/lily-guile.cc: Use scm_from_locale_stringn.
15121
15122         * lily/include/guile-compatibility.hh (scm_from_locale_stringn): Add
15123         compatibility.
15124
15125 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15126
15127         * lily/open-type-font.cc (get_indexed_char): scale metrics by
15128         design-size and units_per_EM.
15129
15130         * mf/bigcheese.pe.in: set PUA codepoints before loading din & nummer.
15131
15132 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
15133
15134         * mf/bigcheese.pe.in (i): Map to 0xe000 (PUA) for testing, which
15135         does not crash fontforge.
15136
15137         * scm/lily-library.scm (char->unicode-index): Hack to map onto
15138         PUA.
15139
15140 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15141
15142         * scm/framework-ps.scm (ps-embed-cff): new function.
15143
15144         * lily/lily-guile.cc (LY_DEFINE): make ly:gulp-file binary proof.
15145
15146 2004-12-12  Werner Lemberg  <wl@gnu.org>
15147
15148         * mf/bigcheese.pe.in: Add PUA mapping.
15149         Don't create Type 42 but bare CFF font.
15150
15151 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
15152
15153         * scm/output-gnome.scm (placebox): Hackery to get bigcheese symbols
15154         within canvas boundaries.
15155
15156         * mf/merge.pe.in: Set font names, version, license GPL.
15157
15158         * make/substitute.make: Add FONTFORGE.
15159
15160         * config.make.in (FONTFORGE): Add.
15161
15162         * configure.in (gui_b): Use PATH_PROG for fontforge.
15163
15164 2004-12-11  Graham Percival  <gperlist@shaw.ca>
15165
15166         * scm/define-markup-commands.scm: add baseline-skip to info
15167         about \column.
15168
15169 2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
15170
15171         * lily/font-metric.cc (ly:font-get-glyph-index): New function.
15172
15173         * scm/output-gnome.scm (named-glyph): Use it.
15174
15175         * scm/lily.scm (ly:all-stencil-expressions): Add named-glyph.
15176
15177         * flower/string.cc (substitute_char): Rename, rewrite, modify this.
15178         (upper_string, lower_string, reverse_string): Remove.
15179
15180         * configure.in (fontforge): Reinstate version check.
15181
15182         * ly/engraver-init.ly: Fix clef glyph names.
15183
15184         * lily/time-signature.cc (special_time_signature): Fix fraction
15185         glyph names.
15186
15187 2004-12-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15188
15189         * mf/merge.pe: new file.
15190
15191         * lily/freetype.cc: new file.
15192
15193         * lily/include/open-type-font.hh (class Open_type_font): new file.
15194
15195         * lily/include/freetype.hh: new file.
15196
15197         * lily/open-type-font.cc: new file.
15198
15199         * lily/all-font-metrics.cc (find_otf): new function.
15200
15201 2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
15202
15203         * lily/time-signature.cc (special_time_signature): Fix.
15204
15205         * configure.in (PKG_CONFIG_PATH): Remove stray `i'.  Check for
15206         GTK2 before checking for pango.  Fixes -fgnome.
15207
15208         * lily/font-metric.cc (LY_DEFINE): Also rename C name to match
15209         Scheme name.
15210
15211         * scm/define-markup-commands.scm:
15212         * scm/safe-lily.scm: Bugfix: ly:font-by-name.
15213
15214         * configure.in: Require makeinfo 4.7 (needed for @ifdocbook).
15215
15216         * stepmake/aclocal.m4 (STEPMAKE_GET_VERSION): Grok fontforge-like
15217         date versions.  Fixes configure.
15218         (STEPMAKE_CHECK_VERSION): Support optional actual program version
15219         argument.
15220
15221 2004-12-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15222
15223         * buildscripts/mf-to-table.py (write_ps_encoding): write real
15224         names in .enc
15225
15226         * lily/*.cc: use '.' iso. '-' for separating glyph name elements.
15227
15228 2004-12-09  Graham Percival  <gperlist@shaw.ca>
15229
15230         * Documentation/user/changing-defaults.itely: add info about
15231         make-dynamic-script
15232
15233         * Documentation/user/notation.itely: add link in dynamics to
15234         section about make-dynamic-script.
15235
15236 2004-12-09  Christian hitz  <chhitz@gmx.net>
15237
15238         * lily/lily-guile.cc: change MACOS_X to __APPLE__
15239
15240 2004-12-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15241
15242         * buildscripts/mf-to-table.py (parse_logfile): use . for
15243         concatting name and group.
15244         (parse_logfile): use M for Minus (negative.)
15245
15246         * lily/include/type-swallow-translator.hh
15247         (DECLARE_EVENT_SWALLOWER): ENTER_DESCRIPTION -> ADD_TRANSLATOR
15248
15249         * lily/*.cc: cosmetics around = sign.
15250
15251         * lily/paper-column.cc (Paper_column): copy rank_. This fixes
15252         lyric spacing on the penultimate column.
15253
15254 2004-12-05  Christian Hitz  <chhitz@gmx.net>
15255
15256         * configure.in:
15257         * lily/accidental-placement.cc:
15258         * lily/bar-line.cc:
15259         * lily/beam-concave.cc:
15260         * lily/beam-quanting.cc:
15261         * lily/beam.cc:
15262         * lily/bezier-bow.cc:
15263         * lily/bezier.cc:
15264         * lily/break-align-interface.cc:
15265         * lily/custos.cc:
15266         * lily/dimension-cache.cc:
15267         * lily/dot-column.cc:
15268         * lily/font-metric.cc:
15269         * lily/font-select.cc:
15270         * lily/gourlay-breaking.cc:
15271         * lily/grob-property.cc:
15272         * lily/grob.cc:
15273         * lily/lily-guile.cc:
15274         * lily/line-spanner.cc:
15275         * lily/lookup.cc:
15276         * lily/lyric-extender.cc:
15277         * lily/lyric-hyphen.cc:
15278         * lily/mensural-ligature.cc:
15279         * lily/midi-def.cc:
15280         * lily/misc.cc:
15281         * lily/note-collision.cc:
15282         * lily/note-column.cc:
15283         * lily/note-head.cc:
15284         * lily/paper-outputter.cc:
15285         * lily/percent-repeat-item.cc:
15286         * lily/rest-collision.cc:
15287         * lily/side-position-interface.cc:
15288         * lily/simple-spacer.cc:
15289         * lily/slur-configuration.cc:
15290         * lily/slur-scoring.cc:
15291         * lily/slur.cc:
15292         * lily/spaceable-grob.cc:
15293         * lily/spacing-spanner.cc:
15294         * lily/spanner.cc:
15295         * lily/staff-symbol-referencer.cc:
15296         * lily/stem.cc:
15297         * lily/stencil.cc:
15298         * lily/system-start-delimiter.cc:
15299         * lily/system.cc:
15300         * lily/text-item.cc:
15301         * lily/tie.cc:
15302         * lily/tuplet-bracket.cc:
15303         * lily/vaticana-ligature.cc: Fix for MacOS X: use <math.h> instead of
15304         <cmath> beacause isinf/isnan is undefined in <cmath>
15305
15306 2004-12-03  Mats Bengtsson  <mabe@s3.kth.se>
15307
15308         * cygwin/lily-wins.py (stat): remove old flag -p when calling lilypond.
15309
15310 2004-12-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15311
15312         * VERSION: release 2.5.3
15313         
15314 2004-11-29  Arno Waschk <arno@arnowaschk.de>
15315
15316         * mf/feta-schrift.mf: added <>-like articulation mark as "espressivo"
15317
15318 2004-12-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15319
15320         * scm/music-functions.scm (cue-substitute): voice counts start at 0.
15321
15322         * lily/note-head.cc (internal_print): always try the "s" head if
15323         u/d not found.
15324
15325         * scm/titling.scm (marked-up-headfoot): reinstate default tagline.
15326
15327 2004-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15328
15329         * mf/parmesan-heads.mf (overdone_heads): typos.
15330
15331 2004-11-30  Nicolas Sceaux  <nicolas.sceaux@free.fr>
15332
15333         * lily/parser.yy (markup): in markups, { .. } without command
15334         before are also flattened, ie \line must be explicitely used.
15335
15336         * Documentation/user/changing-defaults.itely:
15337         * Documentation/user/notation.itely: 
15338         * input/wilhelmus.ly: 
15339         * input/regression/instrument-name-markup.ly: 
15340         * input/regression/markup-score.ly: 
15341         * input/regression/new-markup-scheme.ly: 
15342         * input/regression/new-markup-syntax.ly: 
15343         * input/test/coriolan-margin.ly: use \line in markups where
15344         appropriate
15345         
15346 2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
15347
15348         * scm/new-markup.scm (map-markup-command-list): helper function
15349         used in parser.yy to map markup commands on a markup list.
15350
15351         * lily/parser.yy: get rid off < > in markups by treating { } as
15352         real lists.
15353
15354         * lily/lexer.ll: remove < > from markup lexer mode.
15355
15356         * scripts/convert-ly.py (conv): add rule for converting 
15357         \markup < > to \markup { }
15358
15359         * ly/titling-init.ly: 
15360         * input/test/coriolan-margin.ly: 
15361         * input/regression/new-markup-syntax.ly: 
15362         * input/regression/new-markup-scheme.ly: 
15363         * input/regression/multi-measure-rest-text.ly: 
15364         * input/regression/markup-stack.ly: 
15365         * input/regression/markup-score.ly: 
15366         * input/regression/instrument-name-markup.ly: 
15367         * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: 
15368         * input/mutopia/R.Schumann/romanze-op28-2.ly: 
15369         * input/mutopia/J.S.Bach/wtk1-fugue2.ly: 
15370         * input/wilhelmus.ly: 
15371         * Documentation/user/notation.itely: 
15372         * Documentation/user/music-glossary.tely: 
15373         * Documentation/user/changing-defaults.itely: change < > to { } in
15374         markups
15375
15376 2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15377
15378         * lily/accidental-placement.cc (position_accidentals): shortcut if
15379         no accidentals to place.
15380
15381 2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
15382
15383         * scm/define-grob-properties.scm (all-user-grob-properties): fixed
15384         typo s/ly:dimension ?/ly:dimension?/
15385
15386         * input/regression/lily-in-scheme.ly: 
15387         * input/regression/music-function.ly: 
15388         * ly/spanners-init.ly (assertBeamSlope): 
15389         * scm/music-functions.scm (def-grace-function): add the paper
15390         argument to music function definitions.
15391
15392 2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15393
15394         * lily/moment.cc (LY_DEFINE):
15395         ly:moment-main-{denominator,numberator}, new function.
15396
15397         * lily/score-engraver.cc (typeset_all): assign to column on basis
15398         of axis-group-parent-X setting.
15399
15400         * lily/axis-group-engraver.cc (process_acknowledged_grobs): do
15401         add_element() on basis of axis-group-parent-Y setting.
15402
15403         * lily/grob.cc: add axis-group-parent-{XY} properties.
15404
15405         * input/regression/spacing-stick-out.ly: new file.
15406
15407         * lily/simple-spacer.cc (add_columns): use binary search for
15408         setting column rods. Changes O(n^2) to O(n log(n)) for
15409         constructing spacing problem from columns.
15410         (add_columns): read allow-outside-line to make sure no texts stick
15411         out.
15412         (solve): Simple_spacer::is_active() only determines
15413         satisfies_constraints_ for non-ragged typesetting.
15414
15415         * lily/simultaneous-music.cc (to_relative_octave): only set
15416         old_relative_used if return pitch actually changed.
15417
15418         * scm/define-context-properties.scm
15419         (all-user-translation-properties): change to match implementation.
15420
15421         * python/lilylib.py: Replace re.match by re.search and adds "-c
15422         showpage" to the gs command line (Johannes Schindelin)
15423
15424         * scm/framework-ps.scm (output-preview-framework): sanitize bbox
15425         before processing. Prevents crash when inf is in the extent.
15426
15427         * scm/define-markup-commands.scm (note-by-number): add "s" to
15428         "noteheads-" glyphname.
15429  
15430         * lily/parser.yy (Generic_prefix_music): supply parser argument to
15431         music function as well.
15432         
15433 2004-11-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15434
15435         * VERSION: release 2.5.2
15436
15437         * Documentation/user/changing-defaults.itely (Creating titles):
15438         add breakbefore variable.
15439
15440         * lily/paper-book.cc (set_system_penalty): new function. Set
15441         penalty_ based on breakBefore setting
15442
15443         * lily/context-specced-music-iterator.cc (construct_children):
15444         interpret special context id $uniqueContextId 
15445
15446         * lily/context.cc (create_unique_context): new method. Move
15447         creation of unique (\new) contexts into interpreting phase. This
15448         makes
15449
15450           foo= \new Staff ..
15451           << \foo \foo >>
15452
15453         produce 2 staves.
15454         
15455
15456         * scm/define-music-properties.scm (all-music-properties): add
15457         quoted-voice-direction
15458
15459         * ly/music-functions-init.ly: killCues function.
15460
15461         * scm/music-functions.scm (cue-substitute): move creation of voice
15462         contexts further to the back. 
15463
15464 2004-11-25  Werner Lemberg  <wl@gnu.org>
15465
15466         * tex/GNUmakefile ($(outdir)/latin1.enc): Replace `/minus' with
15467         `/hyphen' in encoding vector to get correct glyph name for EC fonts.
15468
15469 2004-11-24  Erik Sandberg  <ersa9195@student.uu.se>
15470
15471         * buildscripts/guile-gnome.sh: Fixed typo.
15472
15473 2004-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15474
15475         * lily/lexer.ll: add < >  to markup lexer mode (backportme)
15476
15477         * scripts/abc2ly.py (dump_slyrics): add ord(). 
15478
15479         * lily/note-heads-engraver.cc (process_music): add shapeNoteStyles
15480         to regular engraver. 
15481
15482 2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15483
15484         * mf/feta-bolletjes.mf (triangle): rewrite solfa heads.
15485
15486 2004-11-22  Jan Nieuwenhuizen  <janneke@gnu.org>
15487
15488         * scm/define-markup-commands.scm (fill-line): Typo.
15489
15490         * buildscripts/guile-gnome.sh (GGVERSION): Build update for 2.7.96
15491         and newer.
15492
15493 2004-11-22  Erik Sandberg  <ersa9195@student.uu.se>
15494
15495         * ly/dynamic-scripts-init.ly: Fixed typo.
15496
15497 2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15498
15499         * mf/feta-bolletjes.mf (overdone_heads): cleanup triangle
15500         note-head, to have different attachment points for up and down.
15501
15502         * mf/feta-bolletjes.mf: merge solfa heads into main note heads.
15503
15504         * mf/feta-generic.mf (else): remove solfa.
15505
15506         * mf/feta-bolletjes.mf (tishape): remove unicode test.
15507
15508         * scm/define-context-properties.scm
15509         (all-user-translation-properties): add shapeNoteStyles property.
15510
15511         * lily/shape-note-heads-engraver.cc (process_music): new file.
15512
15513         * lily/event.cc (transpose): call Event::transpose() for
15514         transposing the tonic.
15515
15516 2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
15517
15518         * scm/output-gnome.scm: Save some pointers about pango/fontconfig
15519         Unicode/OpenType and AFM.
15520
15521         * lily/include/guile-compatibility.hh (scm_from_bool): Add.
15522
15523 2004-11-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15524
15525         * lily/grob.cc (Grob): idem. Plugs mem leaks. 
15526
15527         * lily/context.cc (Context): unprotect key from ctor.
15528
15529         * scm/stencil.scm (stack-lines): return empty-stencil if argument
15530         is '()
15531         (stack-stencils): idem.
15532
15533         * Documentation/user/changing-defaults.itely (Creating titles):
15534         document new title layout options.
15535
15536         * lily/parser.yy (lilypond_header_body): copy previous
15537         $globalheader if present.
15538
15539         * lily/ly-module.cc (LY_DEFINE): rename ly:import-module to
15540         ly:module-copy
15541         
15542         * scm/page-layout.scm (marked-up-headfoot): remove old functions.
15543
15544         * scm/titling.scm: remove old titling functions
15545
15546         * lily/stencil.cc (translate): remove absolute dimension.
15547
15548         * ly/titling-init.ly (oddFooterMarkup): new file. Generate titles
15549         via markup.
15550
15551         * scm/page-layout.scm (marked-up-headfoot): create header/footer
15552         field from user-supplied markup
15553
15554         * scm/define-markup-commands.scm (on-the-fly): new markup
15555         command. Enter SCM markup procedure directly in Scheme.
15556         (fromproperty): new markup command. Read markup from props argument.
15557
15558         * scm/titling.scm (marked-up-title): create title via
15559         user-specified markup. 
15560
15561         * scm/define-markup-commands.scm (column): remove empty stencils
15562         from column.
15563
15564         * lily/ly-module.cc (LY_DEFINE): use ly_module_lookup(). This does
15565         not have side-effect of creating variable stub.
15566
15567         * lily/stencil-scheme.cc (LY_DEFINE): add ly:stencil-empty?
15568
15569 2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
15570
15571         * scm/encoding.scm (coding-alist): 
15572         * scm/font.scm (add-ec-fonts):
15573         * ly/paper-defaults.ly: Use actual name for EC fontencoding:
15574         Extended-TeX-Font-Encoding---Latin.
15575
15576         * lily/side-position-interface.cc (general_side_position): Add
15577         actual offset to error message (avoid constant error messages).
15578
15579         * lily/all-font-metrics.cc (find_font): Add "lm" to try-AFM-first
15580         block.
15581
15582         * lily/font-select.cc (select_encoded_font)
15583         (get_font_by_mag_step, get_font_by_design_size): 
15584         * lily/modified-font-metric.cc (Modified_font_metric): 
15585         * lily/paper-def.cc (find_scaled_font): Add font_encoding parameter.
15586
15587         * scm/encoding.scm (coding-alist): Add fetaDynamic.
15588         (read-encoding-file): Bugfix: do not require space after bracket.
15589
15590         * scm/font.scm (add-cork-lm-fonts): Remove lmbxi8 and lmbxi14,
15591         these do not exist.
15592
15593 2004-11-20  Graham Percival  <gperlist@shaw.ca>
15594
15595         * Documentation/user/notation.itely: added info about typesetting
15596         boxed bar numbers.
15597
15598 2004-11-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15599
15600         * flower/interval.cc (T_to_string): gcc4 fixes.
15601
15602         * scm/define-markup-commands.scm (fill-line): use
15603         stack-stencils. This fixes problems with putting already centered
15604         stencils in a line.
15605
15606         * VERSION: release 2.5.1
15607
15608         * lily/bar-line.cc (get_staff_bar_size): add line thickness.
15609
15610 2004-11-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15611
15612         * input/example-[1-3].ly: simplify.
15613
15614         * lily/cluster-engraver.cc (try_music): react to busy-playing-event
15615
15616         * scm/output-ps.scm (new-text): new function. Use glyphshow to
15617         show glyphs.
15618
15619         * scm/encoding.scm (decode-byte-string): new function.
15620
15621         * scripts/convert-ly.py (conv): add warning about
15622         set-global-staff-size.
15623
15624         * Doxyfile: add. 
15625
15626         * scripts/convert-ly.py (conv): add raggedlastbottom rule
15627         (conv): warn for TextSpanner split.
15628         (conv): warn for textheight.
15629
15630 2004-11-19  Jan Nieuwenhuizen  <janneke@gnu.org>
15631
15632         * GNUmakefile.in (install-WWW): Invoke install-info, so that when
15633         building the documentation, info with images are installed.
15634         (final-install): Fix description.  Mention sourcing of login
15635         scripts (instead of running).
15636
15637 2004-11-18  Jan Nieuwenhuizen  <janneke@gnu.org>
15638
15639         * Debian lmodern support.  Note that LilyPond will issue warnings
15640         
15641             no such encoding: "FontSpecific"
15642
15643           The font selection mechanism wants to get the encoding from the
15644           font itself, but the idea of lmodern is that it is usable with
15645           different encodings, ie, Lily should get the encoding from the
15646           font tree, rather than the font itself.  This would require some
15647           more work.
15648         
15649         * configure.in: Test for and accept lmodern if EC fonts not found.
15650
15651         * scm/framework-tex.scm (font-load-command): TeX font name
15652         mangling for latin1 encoded cork-lm fonts.
15653         (convert-to-ps): Load lm.map if available.
15654
15655         * ly/paper-defaults.ly: Use cork-lm encoding if ec is not
15656         available.
15657
15658         * scm/encoding.scm (coding-alist): Add cork-lm encoding.
15659
15660         * scm/font.scm: Add header.  Autoload cork-lm and ec fonts if
15661         available.
15662
15663         * lily/kpath.cc (ly_kpathsea_find_file): Rename.  Do not use
15664         path for absolute file name, that is silly.
15665
15666         * lily/score-engraver.cc (initialize): 
15667
15668         * Documentation/user/GNUmakefile (local-install-info): Invoke
15669         install-info --remove first.
15670
15671         * #include cleanup (Andreas Scherer).
15672
15673 2004-11-18  Heikki Junes  <hjunes@cc.hut.fi>
15674
15675         * input/test/script-abbreviations.ly: fix typos.
15676
15677 2004-11-17  Werner Lemberg  <wl@gnu.org>
15678
15679         * python/lilylib.py (options_help_str): Support pretty-printing of
15680         newlines in fourth element of option description.
15681
15682         * scripts/lilypond-book.py (option_definitions): Use new lilylib
15683         feature.
15684         Sort options.
15685
15686         * Documentation/user/lilypond-book.itely: Finish update.
15687
15688 2004-11-17  Jan Nieuwenhuizen  <janneke@gnu.org>
15689
15690         * Documentation/user/macros.itexi: Add comment about \command.
15691
15692         * Documentation/user/lilypond.tely:
15693         * Documentation/user/lilypond-book.itely: Fix names of lilypond
15694         and lilypond-book nodes, so that `info lilypond' visits the manual
15695         at top level, and `info lilypond-book' visits the lilypond-book
15696         section.
15697
15698         * Documentation/user/GNUmakefile (local-install-info): Fix rules
15699         and packager messages.
15700
15701         * lily/pangofc-afm-decoder.cc: Update test.
15702
15703 2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
15704
15705         * scm/lily-library.scm (char->unicode-index): New function.
15706
15707         * scm/output-gnome.scm: 
15708         * scm/output-svg.scm: Cleanup.  Map custom fonts to PUA.
15709
15710         * Proper naming of file name throughout; s/filename/file[-_]name/.
15711
15712         * lily/modified-font-metric.cc ("ly:font-encoding"): New function.
15713
15714         * lily/pangofc-afm-decoder.cc (pango_fc_afm_get_glyph): Map onto PUA.
15715
15716 2004-11-16  Werner Lemberg  <wl@gnu.org>
15717
15718         * scripts/lilypond-book.py: The Lord has commanded me to use only
15719         tabs for indentation.  Your humble servant obeys.
15720
15721 2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
15722
15723         * scm/output-svg.scm: Font fixes.  Sodipodi now groks svg
15724         including font, if LilyPond-feta font is only feta font in path.
15725
15726         * scm/output-gnome.scm (text): Revert to file name of font if font
15727         has no name.  Fixes ec font selection.
15728         (char): Bugfix: do not utf8 twice.  Fixes clefs.
15729
15730         * scm/framework-svg.scm:
15731         * scm/output-svg.scm: New file.  TODO: figure out how to
15732         do character by index in font.
15733
15734         * scm/output-sodipodi.scm: Remove.
15735
15736         * scm/output-ps.scm (stem): Remove.
15737
15738 2004-11-15  Jan Nieuwenhuizen  <janneke@gnu.org>
15739
15740         * scm/output-gnome.scm (beam): New function.
15741         (slur): Round corners.
15742         (round-filled-box): Round corners.
15743
15744 2004-11-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15745
15746         * scm/output-gnome.scm (beam): add function.
15747         (draw-line): new routine.
15748         (dashed-line): stub; call draw-line
15749         (polygon): new routine.
15750
15751 2004-11-15  Werner Lemberg  <wl@gnu.org>
15752
15753         * Documentation/user/lilypond-book.itely: Revise section on
15754         lilypond-book options.
15755         Other minor fixes.
15756
15757         * scripts/lilypond-book.py: Change indentation to 4.
15758         Minor formatting.
15759
15760 2004-11-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15761
15762         * lily/system.cc (apply_tweaks): new function. Run tweaks on all
15763         grobs that have tweaks specced.
15764         
15765 2004-11-14  Heikki Junes  <hjunes@cc.hut.fi>
15766
15767         * Documentation/user/sound-output.itexi: add code snippets for MIDI.
15768
15769 2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
15770
15771         * lily/font-metric.cc (get_indexed_char_stencil): Bugfix: get
15772         actual char #, not 0 based index.
15773
15774         * lily/system-start-delimiter.cc (staff_brace): Start at 65.
15775
15776         * mf/feta-beugel.mf: Actually start at char #65.  Add header.
15777         Warning: do make -C mf clean.
15778
15779         * lily/context-property.cc: Compile fix.
15780
15781         * scm/output-gnome.scm: Add ec-fonts-mftraced to ~/.fonts.conf.
15782         Grok ec-fonts, braces and dynamics.
15783
15784         * scm/framework-gnome.scm (gnome-main): Register braces with pango.
15785
15786 2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15787
15788         * lily/include/tweak-registration.hh: new file.
15789
15790         * lily/tweak-registration.cc: new file.
15791
15792         * scm/framework-gnome.scm (save-tweaks): use new key mechanism for
15793         saving tweaks.
15794
15795         * scm/output-gnome.scm (text): comment dribble.
15796
15797 2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
15798
15799         * lily/pangofc-afm-decoder.cc (main): Test more feta fonts.
15800
15801         * scm/output-gnome.scm (bezier-sandwich): New function.  Reset
15802         path-def before using.  Fixes muchtomany slurs in wrong places
15803         bug.
15804
15805 2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15806
15807         * lily/grob-scheme.cc (LY_DEFINE): add new function ly:grob-key.
15808
15809         * lily/include/object-key-undumper.hh (Module): new file.
15810
15811         * lily/object-key-undumper.cc (Module): New file. Deserialize
15812         keys. SCM bindings
15813
15814         * lily/object-key-dumper.cc (Object_key_dumper): idem.
15815         Provide SCM bindings.
15816
15817         * lily/include/object-key-dumper.hh (class Object_key_dumper): 
15818         new file. Serialize object keys.
15819         
15820         * lily/object-key.cc (dump): new function.
15821         (as_scheme): new virtual function
15822         (undump): new function
15823         (undumpers): new table.
15824
15825         * lily/include/global-context.hh (Context): take \score key upon init.
15826
15827         * lily/object-key-dumper.cc (serialize_key): new file.
15828
15829         * lily/include/object-key-dumper.hh (class Object_key_dumper): new file.
15830
15831         * lily/lily-lexer.cc: remove \quote.
15832
15833         * lily/lookup.cc (triangle): rewrite, obviating symmetric_x_triangle().
15834
15835         * lily/context.cc (Context): take key argument in ctor.
15836         (create_context): new function
15837
15838         * lily/grob.cc (Grob): take key argument in ctor.  
15839
15840         * lily/lilypond-key.cc (do_compare): new file.
15841
15842         * lily/object-key.cc (Object_key): new file.
15843
15844         * lily/include/object-key.hh (class Object_key): new file.
15845
15846         * lily/include/lilypond-key.hh (class Lilypond_context_key): new file.
15847
15848 2004-11-13  Graham Percival  <gperlist@shaw.ca>
15849
15850         * Documentation/user/lilypond-book.itely: add small warning about
15851         noindent default in lilypond-book.
15852
15853         * Documentation/user/converters.itely: add examples for convert-ly.
15854
15855         * Documentation/user/examples.itely: change version string in templates
15856         to 2.4.0.
15857
15858 2004-11-12  Karl Hammar  <karl@aspodata.se>
15859
15860         * GNUmakefile.in (local-WWW-post): `find ...` overflows the
15861         cmdline, use xargs instead (backportme)
15862
15863 2004-11-10  Andreas Scherer  <andreas_mutopia@freenet.de>
15864         
15865         * Documentation/user/: Numerous fixes in the user manual.
15866
15867 2004-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15868
15869         * lily/parser.yy (re_rhythmed_music): search music expression for
15870         context-id, surround by \new Voice if not found. Fixes:
15871         addlyrics-second-staff.ly
15872
15873         * VERSION: 2.5.0 released.
15874         
15875 2004-11-12  Jan Nieuwenhuizen  <janneke@gnu.org>
15876
15877         * Documentation/index.html.in: Fix url to one big page.  (backportme)
15878
15879         * Documentation/user/GNUmakefile: Separate rules for split and
15880         unsplit html documents.  Remove perl massaging.  (backportme)
15881
15882 2004-11-11  Graham Percival  <gperlist@shaw.ca>
15883
15884         * Documentation/user/lilypond-book.itely: add short warning about
15885         \lilypond{} in LaTeX docs.
15886
15887 2004-11-11  Jan Nieuwenhuizen  <janneke@gnu.org>
15888
15889         * stepmake/aclocal.m4: Barf if kpathsea/kpathsea.h is not
15890         found.  (backportme)
15891
15892         * Documentation/topdocs/INSTALL.texi (ec-fonts-mtraced): Add
15893         version requirement.  (backportme)
15894
15895         * configure.in: Be explicit about old versions of
15896         ec-fonts-mtraced.  (backportme)
15897
15898         * lily/context-selector.cc (set_tweaks): New function.
15899         * lily/grob-selector.cc (set_tweaks): (Re)set hash table.  Fixes
15900         web with -DTWEAK.
15901
15902         * Documentation/user/introduction.itely (Automated engraving):
15903         Remove fragment option.  Fixes web.
15904
15905         * lily/context-property.cc (make_item_from_properties):
15906         * lily/context.cc (add_context)[TWEAK]: Tweak registration behind
15907         #ifdef.
15908
15909         * scm/define-context-properties.scm
15910         (all-internal-translation-properties): Add tweakRank and tweakCount.
15911
15912         * lily/grob.cc: 
15913         * scm/define-grob-properties.scm (all-internal-grob-properties):
15914         Add tweak-rank and tweak-count.
15915
15916 2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
15917
15918         * scm/output-gnome.scm (string->utf8-string, char->utf8-string):
15919         New function.
15920         (text): Use them.
15921
15922         * scm/framework-gnome.scm (item-event): Add support from TLA.  Support
15923         animated/opaque grob dragging tweaks.
15924
15925         * buildscripts/guile-gnome.sh: Update.
15926
15927 2004-11-10  Mats Bengtsson  <mabe@s3.kth.se>
15928
15929         * scm/define-grobs.scm (all-grob-descriptions): Added
15930         line-interface to the LigatureBracket object.
15931
15932 2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
15933
15934         * scm/framework-gnome.scm (item-event): Support non-animated mouse
15935         dragging tweaks.
15936
15937         * lily/lily-guile.cc (ly_to_string, ly_to_symbol): New function.
15938
15939         * lily/context-selector.cc (store_context): New function.
15940
15941         * lily/grob-selector.cc (register_grob)[TWEAK]: Apply tweak.
15942         (store_grob): New function.
15943         (identify_grob): Add Moment parameter.
15944
15945         * lily/lily-parser.cc (parse_file)[TWEAK]: Read .ly.t file if it
15946         exists.
15947
15948         * scm/framework-gnome.scm (save-tweaks): Write as alist.
15949
15950 2004-11-09  Jan Nieuwenhuizen  <janneke@gnu.org>
15951
15952         * scm/framework-gnome.scm (item-event): Print grob id.
15953         (save-tweaks): New function.
15954         (tweak): New funtion.
15955         (item-event): Use it, bound to arrow keys.
15956
15957         * lily/context-property.cc (make_item_from_properties): Register grob.
15958         * lily/context.cc (add_context): Register context.
15959
15960         * lily/include/context-selector.hh:
15961         * lily/include/grob-selector.hh:
15962         * lily/context-selector.cc:
15963         * lily/grob-selector.cc: New file.
15964
15965 2004-11-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15966
15967         * lily/slur.cc: add 'positions to interface
15968
15969         * lily/main.cc: reinstate PS as standard output format. 
15970
15971         * scm/framework-tex.scm (output-preview-framework): print systems
15972         up to first non title system.
15973
15974         * lily/grace-engraver.cc (start_translation_timestep): split
15975         scm_cadddr
15976         
15977 2004-11-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15978
15979         * lily/quote-iterator.cc (Module): remove old quote-iterator
15980
15981         * scm/define-music-types.scm (music-descriptions): move
15982         NewQuoteMusic over QuoteMusic
15983
15984         * Documentation/user/notation.itely (Formatting cue notes): use
15985         \cueDuring.
15986
15987         * lily/new-quote-iterator.cc (quote_ok): new function.
15988
15989         * input/regression/quote-cue-during.ly: new file.
15990
15991         * input/regression/quote-grace.ly: new file.
15992
15993         * scm/define-context-properties.scm (Module): change definition of
15994         graceSettings
15995
15996         * lily/context-property.cc (Module): rename from
15997         translator-property.cc
15998
15999         * lily/context.cc (context_name_symbol): new function
16000
16001         * lily/grace-engraver.cc: new file. Set properties for grobs based
16002         on the grace-ness of now_moment().
16003
16004         * scm/music-functions.scm (add-grace-property): use list
16005         iso. vector for graceSettings
16006         remove set-{start,stop}-grace-properties. 
16007
16008         * lily/new-quote-iterator.cc (construct_children): set
16009         quote_outlet_ if no quoted-context-{id,type} specified.
16010
16011         * scripts/convert-ly.py (conv): \quote -> \quoteDuring.
16012
16013         * lily/parser.yy (command_element): remove \quote.
16014
16015         * ly/music-functions-init.ly (location): add quoteDuring music
16016         function. 
16017
16018         * lily/lexer.ll: allow \encoding in lyrics as well.  Remove
16019         optional semicolon. (backportme)
16020
16021 2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
16022
16023         * python/GNUmakefile (STEPMAKE_TEMPLATES): Unset USER_LDFLAGS, no
16024         need to link to GUILE et al.
16025
16026 2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16027
16028         * scm/define-music-properties.scm (all-music-properties): add
16029         quoted-context-type, quoted-context-id.
16030
16031         * scm/lily.scm (type-check-list): new function.
16032         
16033         * scm/lily-library.scm: new file. Generic library routines.
16034
16035         * lily/parser.yy (Generic_prefix_music): move typechecking out of
16036         parser.
16037
16038         * ly/music-functions-init.ly: add quoteDuring function.
16039
16040         * lily/include/music-iterator.hh (class Music_iterator): rename
16041         set_translator -> set_context
16042
16043         * lily/parser.yy (Generic_prefix_music_scm): add
16044         MUSIC_FUNCTION_SCM_SCM_MUSIC
16045
16046         * scm/lily.scm (sanitize-command-option): new function. (backportme)
16047
16048         * scm/framework-tex.scm (header): sanitize TeX paper size.
16049         (backportme)
16050
16051 2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
16052
16053         * elisp/lilypond-indent.el (LilyPond-indent-level): 2 is now standard.
16054
16055         * tex/lilyponddefs.tex: If no inputencoding use latin1.  (backportme)
16056
16057         * scm/framework-tex.scm (font-load-command): Use T1 if no
16058         font-encoding set.  (backportme)
16059
16060         * scm/lily.scm (postscript->pdf): Remove .pdf file if it
16061         exists before converting.  (backportme)
16062
16063         * scm/framework-tex.scm (convert-to-dvi): Remove .dvi file if it
16064         exists before converting.  (backportme)
16065         (convert-to-ps): Remove .ps file if it exists before
16066         converting.  (backportme)
16067
16068         * lily/lexer.ll: Remove extra progress newline, use present tense.
16069
16070         * scm/paper.scm (paper-alist): public.
16071         * scm/framework-tex.scm (convert-to-ps):
16072         * scm/lily.scm (postscript->pdf): Do not leak papersizename into
16073         command line.
16074
16075 2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16076
16077         * scm/lily.scm (ly:system): add > /dev/null 2>&1 . (backportme)
16078
16079         * lily/recording-group-engraver.cc (derived_mark): mark
16080         now_events_. (backportme)
16081
16082 2004-11-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16083
16084         * mf/GNUmakefile: use Fedora-3 in download link. (backportme.)
16085
16086         * scm/framework-tex.scm (convert-to-dvi): use ly:system for
16087         invoking latex. (backportme.)
16088
16089         * lily/stem.cc (off_callback): center stems for all rest stems.
16090
16091 2004-11-05  Werner Lemberg  <wl@gnu.org>
16092
16093         * Documentation/user/lilypond.tely: Add more guidelines for writing
16094         lilypond texinfo documents.
16095
16096 2004-11-05  Heikki Junes  <hjunes@cc.hut.fi>
16097
16098         * Documentation/index.html.in: remove <hr>.
16099
16100         * THANKS: change 2.3 to 2.4.
16101
16102 2004-11-05  Jan Nieuwenhuizen  <jannneke@gnu.org>
16103
16104         * scm/output-gnome.scm: More fontconfig comment.
16105
16106 2004-11-05  Pedro Kroger  <kroeger@pedrokroeger.net>
16107
16108         * GNUmakefile.in ($(builddir)/share/lilypond-force): create the
16109         <package> directory in $(builddir)/share according with
16110         PACKAGE_NAME defined in the VERSION file.
16111
16112 2004-11-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16113
16114         * lily/beam.cc (rest_collision_callback): use local beam
16115         multiplicity.
16116
16117         * input/regression/stem-stemlet.ly: new file.
16118
16119         * lily/stem.cc (add_head): store rests as well.
16120
16121         * scm/define-grob-properties.scm (all-user-grob-properties): add
16122         stemlet-length
16123
16124         * lily/stem.cc: store rests as well.
16125         
16126         * input/regression/new-slur.ly: mention forcing.
16127
16128 2004-11-04  Werner Lemberg  <wl@gnu.org>
16129
16130         * Documentation/user/*: A new round of layout fixes and document
16131         structure cleanup.
16132
16133 2004-11-04  Heikki Junes <hjunes@cc.hut.fi>
16134
16135         * Documentation/user/lilypond.tely: changes 2.3.x to 2.5.x.
16136
16137 2004-11-04  Jan Nieuwenhuizen  <janneke@gnu.org>
16138
16139         * Documentation/topdocs/INSTALL.texi (Top): Remove geometry.
16140
16141 2004-11-03  Jan Nieuwenhuizen  <janneke@gnu.org>
16142
16143         * Documentation/topdocs/INSTALL.texi (Top): Fix geometry url (dax).
16144
16145         * lily/lily-parser.cc (LY_DEFINE): Remove "Now " from message.
16146
16147         * lily/main.cc (main): Invoke identify.
16148
16149         * scm/lily.scm (postscript->pdf): Remove progress newline.
16150         Write progress to stderr.
16151
16152         * lily/paper-book.cc (output): Remove progress newline.
16153
16154         * scm/framework-tex.scm (convert-to-dvi, convert-to-ps): Call
16155         gettext on user messages, and remove whitespace.
16156
16157         * lily/paper-outputter.cc (get_paper_outputter): Add progress newline.
16158
16159         * scripts/lilypond-latex.py (program_name): Bugfix: use only basename of
16160         argv[0] (Thomas Scharkowski).
16161
16162         * configure.in: Bugfix: add REQUIRED parameter to STEPMAKE_TEXMF
16163         call (carlyannehorse).  Also check for mf and mf-nowin.  Add check
16164         for ec-fonts-mtraced.
16165
16166         * GNUmakefile.in (builddir-exec): Add symlink tex/out.  Fixes
16167         --srcdir build (Bertalan).
16168
16169         * stepmake/aclocal.m4 (STEPMAKE_GUILE_DEVEL): Check for guile
16170         headers and library too (Laura Conrad).
16171
16172         * Documentation/topdocs/INSTALL.texi (Top): Mention development
16173         package for guile too (Laura Conrad).
16174
16175         * lily/main.cc (usage): Typo.
16176
16177 2004-11-02  Werner Lemberg  <wl@gnu.org>
16178
16179         * Documentation/user/notation.ly: More fixes to improve appearance.
16180
16181         * tex/texinfo.tex: Updated from texinfo CVS -- this version provides
16182         better output for multicolumn tables.
16183
16184 2004-11-01  Mats Bengtsson  <mabe@s3.kth.se>
16185
16186         * lily/main.cc (dir_info): Fixed typo in the printouts.
16187
16188 2004-11-01  Werner Lemberg  <wl@gnu.org>
16189
16190         * buildscripts/mf-to-table.py (write_fontlist): Improve formatting
16191         of output.
16192         Set `per_line' to 2; replace hard-coded value with it.
16193
16194         * Documentation/user/*: Many fixes to improve appearance of
16195         printed manual.
16196
16197 2004-11-01  Werner Lemberg  <wl@gnu.org>
16198
16199         * Documentation/user/changing-defaults.itely,
16200         Documentation/user/notation.ly,
16201         Documentation/user/programming-interface.itely: Use @/.
16202         Fix formatting of some lilypond snippets and tables.
16203
16204         * scripts/lilypond-book.py (compose_ly): Provide useful default
16205         for LINEWIDTH in `override'.
16206
16207 2004-10-31  Graham Percival  <gperlist@shaw.ca>
16208
16209         * Documentation/user/invoking.itely: change "3.0" -> "2.4"
16210
16211 2004-10-31  Werner Lemberg  <wl@gnu.org>
16212
16213         Resetting @exampleindent to `5' gives ugly results with texinfo's
16214         DVI output.  Use `@format @exampleindent 0 ... @end format' instead
16215         (if not quoting) to change @exampleindent only locally.
16216
16217         * scripts/lilypond-book.py (NOQUOTE): New variable.
16218         (output) [LATEX]: Remove AFTER and BEFORE.
16219         [TEXINFO]: Remove AFTER and BEFORE.
16220         Fix QUOTE and VERBATIM pattern.
16221         Add NOQUOTE pattern.
16222         (Lilypond_snippet) [output_info, output_latex]: Don't handle AFTER
16223         and BEFORE.
16224         [output_texinfo]: Use NOQUOTE.
16225
16226 2004-10-31  Graham Percival  <gperlist@shaw.ca>
16227
16228         * Documentation/user/changing-defaults.itely: clarify paper
16229         size commands with correct info.
16230
16231         * Documentation/user/lilypond-book.itely: add more docs for
16232         filename extensions.
16233
16234 2004-10-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16235
16236         * VERSION (PATCH_LEVEL): Branch lilypond_2_4, release 2.4.0
16237         (PATCH_LEVEL): start 2.5.0.
16238
16239 #Local variables:
16240 #coding: utf-8
16241 #End:
16242