]> git.donarmstrong.com Git - lilypond.git/blob - ChangeLog
(acknowledge_script): only ack
[lilypond.git] / ChangeLog
1 2006-10-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
2
3         * lily/phrasing-slur-engraver.cc (acknowledge_script): only ack
4         non-dynamic scripts. Fixes #30.
5
6         * lily/slur.cc (outside_slur_callback): make offset_scm optional.
7
8         * lily/beam.cc (rest_collision_callback): make prev_offset optional.
9
10         * lily/grob-closure.cc (chain_offset_callback): don't pass 0 but
11         SCM_UNDEFINED for non-existent data.
12
13         * lily/side-position-interface.cc (general_side_position): allow
14         optional current_offset argument for chaining, so combinations of side-position
15         and outside slur callback don't add up.  Fixes issue #92.
16
17         * lily/pango-font.cc (pango_item_string_stencil): use
18         logical_rect. This prevents spaces after words from disappearing,
19         issue #72.
20         
21         * VERSION: release 2.9.20
22
23 2006-10-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
24
25         * scm/define-grob-properties.scm (all-user-grob-properties):
26         mention stencil as user settable.
27
28 2006-10-02  Joe Neeman  <joeneeman@gmail.com>
29
30         * Documentation/user/page.itely (Page formatting): 
31         document auto-first-page-number
32
33         * lily/page-breaking.cc (find_chunks_and_breaks): 
34         * lily/paper-score.cc (calc_breaking): Follow changes to the
35         Constrained_breaking interface
36
37         * lily/constrained-breaking.cc (calc_subproblem): run the main loop
38         here backwards, as an optimisation
39         (initialize): new function; move most of the code in resize () here
40         (combine_demerits): cache ragged_right_
41         (Constrained_breaking): constructor now takes the Paper_score
42
43 2006-10-02  Erik Sandberg  <mandolaerik@gmail.com>
44         
45         * lily/lexer.ll, lily/parser.yy: Add EXPECT_NO_MORE_ARGS token, to
46         avoid parser lookahead for 0-ary functions.
47
48         * lily/translator.cc: Extract event classes from
49         IMPLEMENT_TRANSLATOR_LISTENER for documentation generation.
50
51 2006-10-02  Heikki Junes  <hjunes@gmail.com>
52
53         * po/fi.po: Fix spaces, commas etc. in Finnish translation using
54         KBabel fix tool.
55
56 2006-10-01  Nicolas Sceaux  <nicolas.sceaux@free.fr>
57
58         * scm/layout-page-layout.scm (page-breaking-wrapper): new
59         function. Call the page breaking function selected in the
60         `page-breaking' \paper variable, then the post processing function
61         chosen using the `page-post-process' \paper variable.
62         (line-height): new function. Return the height of a system.
63         (line-minimum-position-on-page): new function. Return the position
64         of a system on page (using the previous line position), only
65         considering between system padding.
66         (stretchable-line?): new function. Says whether a line can be
67         stretched (ie. is not a title nor a single staff system).
68         (page-maximum-space-left): new function. Computes space left on a
69         page, when all systems are separated by their padding.
70
71         * lily/page-breaking.cc (breaking::make_pages): Move page post
72         processing function call to page breaking wrapper (common to all
73         page breakers).
74
75         * lily/paper-book.cc (book::pages): call the page breaking
76         wrapper, instead of the page breaker directly
77
78         * ly/paper-defaults.ly: Add \paper variables for page breaking
79         wrapper and page post processing function. Make
80         `write-page-layout' value depend on the 'dump-tweaks option. Add a
81         `system-maximum-stretch-procedure' variable for holding a function
82         computing the maximum stretch a system allows.
83
84         * scm/layout-page-dump.scm (write-page-breaks): computes the
85         stretch to apply to systems on a page to minimize left
86         space. Dump this stretch length.
87
88         * ly/music-functions-init.ly (spacingTweaks): implement it. Read
89         the system-stretch property of the tweak data to stretch the
90         system.
91         (includePageLayoutFile): Void function which includes the
92         generated page-layout file if it exists and if the page layout
93         dumping is not asked.
94         (scoreTweak): if the score tweak named by the argument exists,
95         return it.
96
97 2006-10-01  Joe Neeman  <joeneeman@gmail.com>
98
99         * lily/page-spacing.cc (compress_lines, uncompress_solution):
100         handle correctly the case where there are multiple \noPageBreaks
101         in a row.
102
103 2006-09-30  Laura Conrad <lconrad@laymusic.org>
104
105         * abc2ly.py adds segno (S) and Coda (O) to articulations.
106         
107         * abc2ly.py fix so that entering " -- " will translate to a -- in
108         the lilypond instead of a " - - "
109         
110 2006-09-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
111
112         * lily/align-interface.cc: fix typo
113
114         * lily/dynamic-text-spanner.cc (print): Add a special case for
115         trill spanner right sides. 
116
117         * scm/define-grobs.scm (all-grob-descriptions): set padding to 0.1
118
119         * lily/align-interface.cc (get_extents_aligned_translates): add
120         support for padding variable.
121
122         * lily/break-align-interface.cc (self_align_callback): oops: use
123         loop variable in guard.
124
125         * input/regression/repeat-percent-grace.ly: new file.
126
127         * lily/percent-repeat-engraver.cc (start_translation_timestep):
128         remember first currentCommandColumn of a grace run. Fixes issue 70.
129
130         * lily/percent-repeat-iterator.cc (class Percent_repeat_iterator):
131         move class definition to CC file.
132
133         * lily/multi-measure-rest.cc (percent): use robust_relative_extent()
134
135         * lily/slash-repeat-engraver.cc (listen_percent): don't warn for
136         measure-long  repeats.
137
138         * flower/include/international.hh: include stdarg.h
139
140 2006-09-30  Joe Neeman  <joeneeman@gmail.com>
141
142         * lily/page-turn-page-breaking.cc (calc_demerits): now that we allow
143         put_systems_on_pages to return an empty result, we need to assign
144         demerits properly in that case.
145         (put_systems_on_pages): Make the number of pages depend on the
146         evenness of page_number. Add auto-first-page-number.
147         (calc_subproblem): ensure that the page-number is even for the
148         left-hand page. Warn if the first page-turn doesn't fit onto the
149         first (right-hand) page.
150
151         * lily/page-spacing.cc (solve): bug: demerits_ would always be inf
152         (min_page_count): make this publicly accessible
153         (min_page_count): fix a bug when there are forced page breaks that
154         was introduced when I made this loop run backwards
155         (space_systems_on_n_pages, space_systems_on_n_or_one_more_pages):
156         replace space_systems_on_min_pages with these two. The logic in
157         space_systems_on_min_pages was getting too convoluted and is better
158         contained in page-turn-page-breaking.
159
160         * lily/page-turn-engraver.cc (breakable_column): remove an always-true
161         conditional
162         (breakable_column): typo
163
164         * lily/source-file.cc (get_line): fix off-by-one error
165         and clean up some of the logic
166
167 2006-09-29  Joe Neeman  <joeneeman@gmail.com>
168
169         * lily/page-breaking.cc (make_pages): honour the first-page-number
170         property
171
172 2006-09-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
173
174         * VERSION (PACKAGE_NAME): bump version.
175
176 2006-09-26  Pal Benko  <benko.pal@gmail.com>
177
178         * scm/parser-clef.scm: add petrucci-f3 and -f4 clefs
179         (the latter is the same as petrucci-f which is kept for compatibility)
180
181 2006-09-26  Erik Sandberg  <mandolaerik@gmail.com>
182         
183         * lily/part-combine-iterator.cc: solo1-event -> solo-one-event
184
185 2006-09-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
186
187         * lily/global-context.cc (run_iterator_on_me): break out of loop
188         if moment doesn't increase.
189
190         * scm/define-grob-properties.scm (all-user-grob-properties): add
191         forced property.
192
193         * lily/accidental.cc (after_line_breaking): read forced property.
194
195         * lily/accidental-engraver.cc (process_acknowledged): set 'forced
196         property.
197
198         * input/regression/accidental-forced-tie.ly:  new file.
199
200 2006-09-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
201
202         * ly/engraver-init.ly: set ignoreFiguredBassRest in Staff context.
203
204         * lily/figured-bass-engraver.cc: only listen to rest events if
205         ignoreFiguredBassRest is not set.
206
207         * scm/define-context-properties.scm
208         (all-user-translation-properties): add ignoreFiguredBassRest property
209
210 2006-09-24  Joe Neeman  <joeneeman@gmail.com>
211
212         * lily/paper-book.cc (get_system_specs):
213         (set_system_penalty): fix breakbefore.
214         We used to set a penalty on the system after the break, now we
215         set a permission on the system before the break
216
217         * lily/grob-property.cc: add scm debugging hooks into
218         property modification
219
220         * lily/context-property.cc:
221         * lily/engraver.cc:
222         rename make_foo_from_properties to internal_make_foo and
223         move it from context-property.cc to a member function of
224         Engraver.
225         
226         * lily/include/lily-guile-macros.hh:
227         overload ly_symbol2scm macro so that there is no more need
228         to use internal_foo
229
230         * lily/volta-repeat-iterator.cc:
231         * lily/tweak-engraver.cc:
232         * lily/tuplet-bracket.cc:
233         * lily/span-bar-engraver.cc:
234         * lily/script-engraver.cc:
235         * lily/prob-scheme.cc:
236         * lily/pointer-group-interface.cc:
237         * lily/parser.yy:
238         * lily/grob-scheme.cc:
239         * lily/grob-property.cc:
240         * lily/context.cc:
241         * lily/context-property.cc:
242         * lily/break-substitution.cc:
243         * lily/break-align-engraver.cc:
244         * lily/axis-group-interface.cc:
245         * lily/align-interface.cc:
246         remove calls to internal_FOO
247
248         * lily/system-start-delimiter-engraver.cc:
249         * lily/parenthesis-engraver.cc:
250         * lily/accidental-engraver.cc:
251         remove calls to make_foo_from_properties
252
253 2006-09-23  Graham Percival  <gpermus@gmail.com>
254
255         * Documentation/user/programming-iterfaces.itely: fix
256         def-music-function -> define-music... leftover.
257
258 2006-09-23  Joe Neeman  <joeneeman@gmail.com>
259
260         * lily/page-spacing.cc (min_page_count): by running the loop
261         backwards, we can calculate ragged_last properly.
262
263 2006-09-22  Mats Bengtsson  <mabe@drongo.s3.kth.se>
264
265         * ly/titling-init.ly (scoreTitleMarkup): Rename (typo!?)
266         printfirst-page-number -> print-first-page-number
267
268         * python/convertrules.py: corresponding rule.
269
270         * Documentation/user/page.itely (Page formatting): Document the
271         default values of all page layout parameters. 
272
273 2006-09-22  Erik Sandberg  <mandolaerik@gmail.com>
274
275         * lily/lexer.ll: remove limitation on music function arity. New
276         mode extratoken, which inserts extra EXPECT_* tokens after
277         MUSIC_FUNCTION token. Junk all MUSIC_FUNCTION_* tokens.
278
279         * lily/parser.yy: Change grammar for music function accordingly.
280
281         * lily/include/lily-parser.hh: New method get_state, new member
282         hidden_state. Works around a problem when parser fetches
283         MUSIC_FUNCTION token but not the following EXPECT_* token.
284
285         * lily/translator.cc, lily/context.cc:, lily/translator-group.cc:
286         remove try_music
287
288         * lily/*-engraver.cc, lily/*-performer.cc: Remove all remaining
289         references to Music; use ASSIGN_EVENT_ONCE everywhere
290
291         * lily/grob-info.cc: junk *music_cause
292
293         * lily/music.cc: copy eventified articulations to stream event
294
295         * lily/part-combine-iterator.cc: Cleanup using enums
296
297         * lily/translator-group.cc: Junk OldMusicEvent, and associated
298         methods
299
300         * lily/include/engraver.hh: Junk music.hh include
301
302         * lily/stream-event.cc: Changed constructors
303
304 2006-09-21  Graham Percival  <gpermus@gmail.com>
305
306         * Documentation/user/tweaks.itely (Fitting music onto fewer
307         pages): change settings to avoid warning messages.
308
309 2006-09-21  Mats Bengtsson  <mabe@drongo.s3.kth.se>
310
311         * Documentation/user/tweaks.itely (Fitting music onto fewer
312         pages): Add between-system-space setting. 
313
314 2006-09-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
315
316         * lily/accidental-placement.cc (calc_positioning_done): don't
317         trigger Y-extent calculation too early. Use pure_height instead.
318
319         * lily/scale.cc (LY_DEFINE): new file. 
320
321 2006-09-20  Joe Neeman  <joeneeman@gmail.com>
322
323         * lily/page-breaking.cc (find_chunks_and_breaks): ignore breaks
324         that happen at the start of a score: having a zero-length
325         chunk was messing up min_system_count calculations.
326
327         * lily/source-file.cc (get_line): lower_bound, not
328         binary_search. Fixes problem where point-and-click would
329         always point to the first line.
330
331 2006-09-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
332
333         * lily/accidental-placement.cc (calc_positioning_done): also put
334         stems into accidental support. 
335
336         * lily/tie-engraver.cc (process_music): also set tieMelismaBusy if
337         event_ detected.
338
339         * scm/script.scm (default-script-alist): avoid-slur and
340         slur-padding for portato script.
341
342         * lily/stem-tremolo.cc (translated_stencil): new function. 
343         (height): use new function. Fixes tremolos on whole notes.
344
345         * lily/slur-scoring.cc (get_best_curve): don't crash if no optimal
346         slur found.
347
348 2006-09-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
349
350         * scripts/abc2ly.py (try_parse_comment): idem.
351
352         * scripts/lilypond-book.py (find_toplevel_snippets): use 'foo' in
353         bar_string iso. string.find()
354
355         * lily/*.cc: idem.
356
357         * lily/slur.cc (get_curve): always use scm_is_pair() looping
358         scheme lists.  
359
360 2006-09-18  Graham Percival  <gpermus@gmail.com>
361
362         * Documentation/user/basic-notation.itely: add bug
363         warning about ties and octavation/clef.
364
365 2006-09-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
366
367         * VERSION (PACKAGE_NAME): release 2.9.18
368
369 2006-08-29  Milan Zamazal  <pdm@brailcom.org>
370
371         * elisp/lilypond-mode.el (LilyPond-command-alist): Don't try to
372         figure out midi file names right here.
373         
374 2006-09-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
375
376         * scm/framework-ps.scm (dump-stencil-as-EPS): naming pad-eps-boxes.
377
378         * scm/backend-library.scm: option naming:  gs-font-load*s*
379
380         * scm/framework-eps.scm (dump-stencils-as-EPSes): rename option to
381         include-eps-fonts
382
383 2006-09-17  Joe Neeman  <joeneeman@gmail.com>
384
385         * scm/define-music-types.scm (music-descriptions): remove
386         BreakEvent and fix {Page,Line}{Break,Turn}Event so
387         Music::to_event doesn't complain.
388
389         * lily/accidental-placement.cc (ape_compare):
390         * lily/semi-tie.cc (compare): 
391         * lily/note-column.cc (shift_compare): replace by XXX_less
392
393         * lily/tie-formatting-problem.cc (set_chord_outline): 
394         * lily/tie-column.cc (calc_positioning_done): 
395         * lily/system.cc (post_processing)
396         (get_paper_system): 
397         * lily/stem.cc (note_head_positions)
398         (calc_positioning_done): 
399         * lily/spanner.cc (do_break_processing)
400         (find_broken_piece): 
401         * lily/span-bar.cc (print): 
402         * lily/semi-tie-column.cc (calc_positioning_done): 
403         * lily/rest-collision.cc (calc_positioning_done): 
404         * lily/program-option.cc (get_help_string): 
405         * lily/note-collision.cc (get_clash_groups):
406         * lily/new-fingering-engraver.cc (position_scripts):
407         * lily/keyword.cc (Keyword_table):
408         * lily/hara-kiri-group-spanner.cc (request_suicide):
409         * lily/grob-pq-engraver.cc (stop_translation_timestep):
410         * lily/accidental-placement.cc (calc_positioning_done):
411         (stagger_apes):
412         * lily/beam.cc (get_beam_segments):
413         * lily/grob-array.cc (remove_duplicates):
414         use new vector_sort
415         
416         * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily:
417         ragged-last-bottom = ##f (test the new page breaker)
418
419         * flower/include/std-vector.hh (vector_sort): use STL sort stuff
420
421         * scm/define-context-properties.scm
422         (all-internal-translation-properties): remove properties that
423         were used to communicate page-turn stuff to the paper-column
424         engraver.
425
426         * lily/lily-guile.cc (robust_scm2string): new function
427
428         * lily/paper-column-engraver.cc: Clean up page turn stuff
429
430         * lily/page-turn-engraver.cc: Re-write the page turn logic here
431         instead of cluttering up paper-column-engraver.cc
432
433 2006-09-17  Nicolas Sceaux  <nicolas.sceaux@free.fr>
434
435         * scm/layout-page-dump.scm (scm): export utility function names,
436         to allow user writing cutsom dumping functions.
437
438         * scm/layout-page-layout.scm: export utility function names to
439         enable custom page breaking function writing. Tabify.
440         (line-next-space): use ?-suffix only for predicates
441         (page-maximum-space-to-fill): new function. Return the space
442         between first and bottom system of a page, to give to
443         space-systems.
444         (space-systems): use a space-to-fill argument (for instance as
445         computed by page-maximum-space-to-fill) instead of computing
446         internaly this space with the page height. That way, the caller
447         can adjust the space to use.
448         (make-page-from-systems, walk-paths): compute space to fill before
449         calling space-systems.
450
451 2006-09-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
452
453         * scm/script.scm (default-script-alist): set paddings for every
454         type here, increase for portato mark.
455
456         * scm/lily.scm (define-scheme-options): typo: add s, so it is 
457         -dinclude-eps-fonts
458
459 2006-09-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
460
461         * scm/define-grobs.scm (all-grob-descriptions): oops, typo:
462         use spanner::set-spacing-rods
463
464         * lily/note-column.cc: reformat.
465
466         * lily/rest-collision.cc (calc_positioning_done): fix whole/half
467         step positioning for note/rest combinations.
468
469         * input/regression/rest-note-collision.ly: new file.
470
471         * scm/define-grobs.scm (all-grob-descriptions): add
472         springs-and-rods
473
474         * flower/include/std-vector.hh: switch off again.
475
476         * VERSION (PATCH_LEVEL): bump to 2.9.18
477
478         * flower/include/std-string.hh: idem.
479
480         * flower/include/std-vector.hh (_GLIBCXX_DEBUG): set if NDEBUG not set.
481
482 2006-09-15  Mats Bengtsson  <mabe@drongo.s3.kth.se>
483
484         * ly/engraver-init.ly: Make FiguredBass accepted in GrandStaff and
485         PianoStaff. 
486
487 2006-09-08  Joe Neeman  <joeneeman@gmail.com>
488
489         * Documentation/user/page.itely: update page breaking documentation
490
491 2006-09-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
492
493         * lily/note-collision.cc (calc_positioning_done): only access
494         first head if available.
495
496         * lily/tuplet-engraver.cc: add tupletFullLengthNote to description.
497
498         * scm/framework-ps.scm (output-preview-framework): use new name.
499
500         * lily/program-option.cc (internal_set_option): use new names.
501
502         * Documentation/user/SConscript (lilypond_book_flags): update -d
503         variable names.
504
505         * Documentation/user/lilypond-book.itely (Inserting LilyPond
506         output into other programs): new variable names.
507
508         * scm/lily.scm (define-scheme-options): uniformize var names.
509
510         * lily/tuplet-engraver.cc (listen_tuplet_span): verify that
511         tuplets_ is non-empty before popping.
512
513 2006-09-07  Joe Neeman  <joeneeman@gmail.com>
514
515         * lily/spanner.cc (find_broken_piece): 
516         * lily/spacing-spanner.cc (get_columns): 
517         * lily/source-file.cc (get_line): 
518         * lily/simple-spacer.cc (get_column_description): 
519         * lily/keyword.cc (lookup): 
520         use the new binary search.
521
522         * flower/include/std-vector.hh: replace binary_search with
523         a more STL-like version
524
525 2006-09-04  Michael Welsh Duggan  <md5i@cs.cmu.edu>
526
527         * lily/tie-performer.cc: remove unused last_event_ property.
528         (class Tie_performer): add now_tied_heads_ property for
529         partially-tied heads.
530         (acknowledge_audio_element): when adding an Audio_note, put the
531         note in now_tied_heads_ if the audio note is partially tied.
532         (stop_translation_timestep): always include entries in
533         now_tied_heads_ in heads_to_tie_.
534
535         * lily/drum-note-performer.cc (process_music): look for tie-events
536         in the articulations; pass to Audio_note constructor.
537
538         * lily/note-performer.cc (process_music): look for tie-events in
539         the articulations; pass to Audio_note constructor.
540
541         * lily/audio-item.cc (Audio_note): Initialize tie_event_ in
542         constructor.
543
544         * lily/include/audio-item.hh (class Audio_note): add tie_event_.
545         include initializer in constructor.
546
547 2006-09-02  Joe Neeman  <joeneeman@gmail.com>
548
549         * lily/simple-spacer.cc (get_line_forces): Ignore loose columns
550         unless they are breakable. This fixes discrepancies between the forces
551         calculated here and the forces calculated in get_line_configuration.
552
553         * lily/grob.cc (pure_relative_y_coordinate): fix some
554         mis-estimation that was happening with piano staves.
555
556         * lily/constrained-breaking.cc (resize): don't choke if we get a
557         measure that won't fit on a line.
558         (combine_demerits): don't consider uniformity when ragged
559
560         * lily/page-spacing.cc (solve): why the f* were there two of these?
561         (calc_subproblem): properly handle the case where a system is taller
562         than the page.
563
564         * lily/system.cc (get_paper_system): ensure that all the permissions
565         and penalties are passed to the paper systems.
566
567         * lily/page-breaking.cc (create_system_list): support system-count.
568
569         * scm/define-grobs.scm (pure-print-callbacks): add
570         ly:script-interface::print
571
572         * lily/page-spacing.cc (min_page_count): fix calculation of min
573         pages if we are ragged and there are non-zero springs.
574
575         * scm/layout-page-layout.scm: if the pure-height estimates are under
576         the real height, allow space-systems to ignore padding if it is
577         needed in order to fit the systems on one page
578
579         * lily/optimal-page-breaking.cc (try_page_spacing): fix reading
580         ragged properties
581         (solve): fix performance problem. Make sure we always get at least
582         one solution
583
584         * lily/page-breaking.cc (make_pages): include write-page-breaks
585         and page-stencil
586
587         * lily/paper-score.cc (calc_breaking): remove Gourlay breaker
588
589         * scm/define-grobs.scm: add the new slur-callback
590         fix pure-relevant to not exclude grobs whose extent is already
591         calculated
592
593         * ly/paper-defaults.ly: make ly:optimal-breaking the new default
594         page breaker
595
596         * lily/slur.cc (pure_height): new callback to estimate the height
597         of a slur
598
599 2006-09-02  Graham Percival  <gpermus@gmail.com>
600
601         * Documentation/user/invoking.itely: small update on
602         MacOS X notes; thanks Trevor!
603
604 2006-09-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
605
606         * VERSION (MY_PATCH_LEVEL): release 2.9.17
607
608         * lily/lexer.ll: accept EOF in all states.
609
610         * lily/tempo-performer.cc (Tempo_performer): initialize last_tempo_.
611
612         * lily/source-file.cc (Source_file): always 0-terminate character
613         array, to prevent Flex from barfing.
614
615         * lily/global-context.cc (get_output): robustness: don't crash if
616         no Score context found.
617
618         * lily/include/book.hh (class Book): idem.
619
620         * lily/include/context-def.hh (struct Context_def): idem.
621
622         * lily/include/score.hh (class Score): don't derive from Input.
623
624         * lily/book.cc (Book): add a copy ctor. 
625
626         * buildscripts/output-distance.py (FileLink.calc_distance): count
627         orphans in distance too.
628
629         * python/midi.c (midi_parse_track): robustness: don't read past
630         end of string.
631
632         * ly/performer-init.ly: add Control_track_performer, move
633         Tempo_performer and Time_signature_performer to Score.        
634
635         * lily/score-performer.cc (acknowledge_audio_elements): override
636         from base class: add to audio-columns
637
638         * lily/control-track-performer.cc (add_text): new file: generate
639         the control track.
640
641         * lily/performance.cc: move output_header_track to
642         Control_track_performer ()
643
644         * lily/midi-walker.cc (Midi_walker): get channel in constructor.
645
646         * lily/include/midi-item.hh (class Midi_channel_item): insert
647         class into hierarchy, for items that can have a channel setting. Dehungarify.
648
649         * lily/include/performer.hh (class Performer): remove
650         play_element();  move functionality into announce/acknowledge.
651
652         * lily/audio-staff.cc (output): remove channel_ from Midi_track.
653
654         * lily/tie-engraver.cc (stop_translation_timestep): only wipe
655         heads_to_tie_ if there are new heads to tie.  Fixes polyphony in ties.
656
657 2006-08-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
658
659         * lily/tie-engraver.cc (stop_translation_timestep): robustness for
660         ambituses.
661
662         * lily/all-font-metrics.cc: remove TFM support.
663
664         * lily/include/tfm.hh: remove TFM support, TFM reader.
665
666         * lily/include/binary-source-file.hh: remove Binary_source_file.
667
668 2006-08-27  Graham Percival  <gpermus@gmail.com>
669
670         * Documentation/topdocs/NEWS.itely: add @c marker for
671         stuff I've processed.
672
673         * Documentation/user/ various: info from NEWS.
674
675 2006-08-27  Joe Neeman  <joeneeman@gmail.com>
676
677         * lily/paper-column-engraver.cc (finalize): Oops, this change
678         should have gone in on 2006-08-23
679
680 2006-08-26  Mats Bengtsson  <mabe@s3.kth.se>
681
682         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use double
683         quotes to quote arguments. Fixes Windows problem.
684
685         * python/lilylib.py (progress): idem
686
687 2006-08-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
688
689         * scripts/musicxml2ly.py: fix for importing
690         minor key signatures from MusicXML.  (Phillip Kirlin)
691
692 2006-08-24  Phillip Kirlin  <pkirlin@acm.org>
693
694         * python/musicxml.py: 
695         (Attributes.get_key_signature): now correctly retrieves mode from 
696         MusicXML. 
697
698 2006-08-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
699
700         * lily/parser.yy (output_def_body): take ownership of identifier
701         back to C++.
702
703         * Documentation/user/advanced-notation.itely (Metronome marks):
704         update use of \tempo in \midi.
705
706         * VERSION: release 2.9.16
707         
708 2006-08-24  Erik Sandberg  <mandolaerik@gmail.com>
709
710         * input/mutopia/*: upgrade to new midi tempo syntax (repairs make
711         web partially)
712
713 2006-08-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
714
715         * input/regression/tie-chord-partial.ly: clarify example.
716
717         * scm/define-music-properties.scm (all-music-properties): remove
718         untied.
719
720         * ly/music-functions-init.ly: remove \untied.
721
722         * lily/tie-engraver.cc (struct Head_event_tuple): store both
723         stream events and music events.
724         (stop_translation_timestep): search acknowledged heads for
725         tie-event.
726
727         * input/regression/tie-chord-partial.ly: new file.
728
729         * scm/define-markup-commands.scm (char): use ly:wide-char->utf-8
730         for \char markup command.
731
732         * scm/define-event-classes.scm (unlistened-music-event-classes): idem.
733
734         * scm/define-music-types.scm (music-descriptions): consistency:
735         Use solo-{one,two}-event iso. solo-[12]-event.
736
737         * lily/part-combine-engraver.cc (process_music):
738         Use solo-{one,two}-event iso. solo-[12]-event.
739
740         * ly/declarations-init.ly (partCombineListener): add Timing as
741         alias
742
743         * flower/std-string.cc (string_copy): use copy ()
744
745         * lily/source-file.cc (Source_file): use copy(). Remove contents_str0()
746
747 2006-08-24  Graham Percival  <gpermus@gmail.com>
748
749         * Documentation/user/changing-defaults.itely, global.itely,
750         lilypond-book.itely, page.itely: minor changes from mailist.
751
752 2006-08-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
753
754         * buildscripts/mutopia-index.py (allfiles): filter lily-XXX and
755         snippet-map
756
757         * scm/define-context-properties.scm
758         (translator-property-description): robustness: detect type errors
759         in property definitions.
760
761         * lily/parser.yy (score_body): protect SCORE_IDENTIFIER result
762         after getting it from SCM. 
763
764         * lily/smobs.cc (protect_smob): switch off fancy smob protection
765         for now. 
766
767         * lily/include/performer.hh (class Performer): strip get_tempo()
768         method.
769
770         * lily/midi-def.cc: strip file.
771
772         * lily/lexer.ll (Lily_lexer): don't protect hash key separately.
773
774         * lily/include/context-def.hh (struct Context_def): use
775         VIRTUAL_COPY_CONSTRUCTOR().
776
777         * lily/source-file.cc: smobification.
778
779         * lily/include/source-file.hh (class Source_file): smobify
780         Source_file. Trim redundant members.
781
782         * lily/parser.yy (Lily_lexer::try_special_identifiers): unprotect
783         clones after creation. This plugs a huge memory leak.
784
785         * python/convertrules.py (FatalConversionError.sub_tempo):
786         complete rule for \midi{ \tempo }
787
788         * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): idem.
789
790         * input/mutopia/F.Schubert/morgenlied.ly (pianoLH): update tempo.
791
792 2006-08-23  Joe Neeman  <joeneeman@gmail.com>
793
794         * input/regression/optimal-page-breaking-hstretch.ly: test for
795         ragged-last-bottom also
796
797         * lily/paper-column-engraver.cc (finalize): make the end of a score
798         breakable by default. This is to balance out a change in behaviour
799         of the page-turn-breaker which no longer makes the end of a score
800         breakable.
801
802         * lily/paper-book.cc (pages): set the systems_ once the pages are
803         broken
804
805         * lily/page-turn-page-breaking.cc (calc_subproblem): use the new
806         Page_breaking interface.
807
808         * lily/page-breaking.cc (class Page_breaking): make the interface
809         more consistent and provide abstractions for dealing with
810         Line_divisions.
811
812         * lily/optimal-page-breaking.cc (solve): use a more straightforward
813         algorithm. Use the new interface to Page_breaking.
814
815         * lily/page-spacing.cc: better support for ragged-bottom and
816         ragged-last-bottom
817
818 2006-08-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
819
820         * python/convertrules.py (conv): warning on \tempo{}
821
822         * ly/performer-init.ly: set tempoWholesPerMinute.
823
824         * ly/midi-init.ly: remove \midi
825
826         * lily/tempo-performer.cc: look at tempoWholesPerMinute to set
827         MIDI tempo.
828
829         * lily/metronome-engraver.cc (process_music): use tempoUnitCount
830         tempoUnitDuration for determining what to print.
831
832         * lily/lyric-extender.cc: typo.
833
834         * lily/parser.yy (output_def_body): disallow \tempo in \midi{}
835
836         * lily/duration-scheme.cc (LY_DEFINE): ly:duration-length: new
837         function.
838
839         * scm/lily.scm (define-scheme-options): alphabetize, add eps-pad-boxes.
840
841         * scm/framework-ps.scm (dump-stencil-as-EPS): only pad boxes if
842         eps-pad-boxes is set.
843
844         * scripts/lilypond-book.py (main): use -deps-pad-boxes.
845
846         * THANKS: update sponsors.
847
848         * ly/english.ly: quarter tone naming (thanks, Trevor Baca)
849
850         * Documentation/topdocs/NEWS.tely (Top): doc new feature.
851
852         * input/regression/tie-chord-untied.ly: new file.
853
854         * lily/tie-engraver.cc (acknowledge_note_head): check 'untied property.
855
856         * scm/define-music-properties.scm (all-music-properties): add
857         'untied property.
858
859         * buildscripts/mutopia-index.py (allfiles): look for .ly rather
860         than .ly.txt.
861         (headertext_nopics): sanitize no-examples text.
862
863         * scm/page.scm (make-page-stencil): don't rely on extents of
864         page-stencil. This fixes spurious space around .EPS files produced
865         with the EPS backend.
866
867 2006-08-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
868
869         * lily/stencil-scheme.cc (LY_DEFINE): make extent arguments optional.
870
871         * lily/hara-kiri-engraver.cc (process_music): remember
872         keepAliveInterfaces after processing \set
873
874         * lily/lyric-extender.cc (print): support left/right-padding for
875         extenders.
876
877         * scm/documentation-generate.scm (string-append): revert lilypond/
878         path, doc why.
879
880 2006-08-20  Graham Percival  <gpermus@gmail.com>
881
882         * Documentation/user/lilypond.tely: clarification to
883         license presentation (not to actual license).
884
885         * Documentation/user/basic-notation.itely,
886         instrument-notation.itely: minor changes.
887
888         * input/ {regression, test}/+.ly: clarification to
889         text (you can click on examples).  Thanks, Mats!
890
891         * input/manual/bar-lines.ly: adds ||: repeats.
892
893 2006-08-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
894
895         * make/ly-vars.make (OMF_FILES): strip ps.gz from OMF_FILES 
896
897         * scm/documentation-lib.scm (texi-file-head): category LilyPond.
898
899         * Documentation/user/lilypond.tely: strip lilypond/ from info
900         links, rename to category LilyPond
901
902         * lily/pango-font.cc (description_string): new function.
903
904         * VERSION: release 2.9.15
905
906         * lily/spacing-engraver.cc (stop_translation_timestep): use
907         Dscho's fix for spacing spanner. 
908
909         * scm/define-music-types.scm (music-descriptions): use
910         apply-output-event for ApplyOutputEvent
911
912         * lily/output-property-engraver.cc (listen_apply_output): rename
913         from listen_layout_instruction.
914
915         * lily/piano-pedal-engraver.cc (struct Pedal_type_info): new
916         function protect()
917
918 2006-08-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
919
920         * scm/lily.scm (lilypond-all): option read-file-list: substitute
921         commandline args with contains, split by \n.
922
923         * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
924         write snippet-names file, call with -dread-file-list. Fixes
925         command limitations on 64-bit systems.
926
927         * input/regression/stencil-color-rotation.ly: new file.
928
929         * lily/include/translator.hh (struct Acknowledge_information):
930         revert: don't use Protected_scm in global objects, as GUILE can't
931         handle gc_unprotect from automated destructors on MacOS X.
932  
933         * lily/grob.cc (get_print_stencil): use retval.expr() as base for
934         color, not the original stencil. Fixes combinations of
935         color/transparency/rotation. 
936
937         * scripts/lilypond-book.py (main): add --formats=eps for
938         texinfo/latex.
939
940         * lily/spacing-engraver.cc (stop_translation_timestep): don't
941         crash if spacing_ is nonexistent.
942
943 2006-08-14  Mats Bengtsson  <mabe@s3.kth.se>
944
945         * scripts/lilypond-book.py (output): Remove obsolete(!?)
946         \catcode`\@=12 in the LaTeX output.
947
948 2006-08-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
949
950         * scm/define-music-types.scm (music-descriptions):
951         use sustain-event iso. sustain-pedal-event.
952
953 2006-08-11  Joe Neeman  <joeneeman@gmail.com>
954
955         * scripts/convert-ly.py: honour the -n command-line switch
956
957 2006-08-10  Han-Wen Nienhuys  <hanwen@lilypond.org>
958
959         * scm/output-lib.scm (bar-line::calc-glyph-name): add dashed liine
960         break specification.
961
962 2006-08-10  Joe Neeman  <joeneeman@gmail.com>
963
964         * Documentation/user: convert-ly the user manual
965
966 2006-08-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
967
968         * stepmake/aclocal.m4: version check patch (thanks MWD)
969
970         * ly/music-functions-init.ly: robustness. Don't crash if
971         currentBarNumber is not a number.
972
973         * VERSION (PATCH_LEVEL): bump.
974
975 2006-08-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
976
977         * stepmake/aclocal.m4: better version check; handle fooX.Y
978         binaries too.
979
980         * ly/performer-init.ly: instrument name fixup.
981
982         * input/manual/chord-names-jazz.ly (banterProperties):
983         instrumentName update
984
985         * scm/define-event-classes.scm (lambda): use ly:is-listened-event-class
986
987         * lily/ly-module.cc (ly_module_symbols): use ly_hash_table_keys
988
989         * lily/translator.cc (LY_DEFINE): ly:is-listened-event-class: new
990         function. Use hash tables to check membership.
991
992         * lily/general-scheme.cc (LY_DEFINE): new function.
993
994         * lily/piano-pedal-engraver.cc (struct Pedal_type_info): idem
995
996         * lily/include/translator.hh (struct Acknowledge_information): add
997         Protected_scm
998
999         * ly/music-functions-init.ly: change name to BreathingEvent
1000
1001         * input/regression/*.ly: apply it.
1002
1003         * python/convertrules.py (conv): better instrumentName conversion
1004         rule.
1005
1006         * scm/define-music-types.scm (music-descriptions): add
1007         line-break-event to LineBreakEvent music
1008
1009         * lily/music.cc (to_event): don't crash if music type not set.
1010
1011         * lily/spacing-loose-columns.cc (set_loose_columns): don't barf if
1012         spacing not set.
1013
1014         * lily/spacing-engraver.cc (stop_translation_timestep): set
1015         spacing for proportional notation too.
1016
1017         * scm/translation-functions.scm (format-bass-figure): inspect
1018         stream-event.
1019
1020         * scripts/lilypond-book.py (bindir): add bindir to $PATH.
1021
1022 2006-08-08  Joe Neeman  <joeneeman@gmail.com>
1023
1024         * lily/include/constrained-breaking.hh: add Line_details (Prob*)
1025
1026         * scm/page.scm (make-page): make it friendlier to call (esp. from C++)
1027
1028         * scm/layout-page-layout.scm (make-page-from-systems): new function
1029         (optimal-page-breaks): use the new page-breaking calling convention
1030
1031         * scm/define-context-properties.scm (all-user-translation-properties):
1032         add revokePageTurns
1033
1034         * lily/paper-column-engraver.cc (stop_translation_timestep): add
1035         revokePageTurns  functionality. If there is a special barline within
1036         the breakable region, break there instead of at the end of the region.
1037
1038         * lily/paper-book.cc (pages): use the new page-breaking calling
1039         convention
1040
1041 2006-08-07  Erik Sandberg  <mandolaerik@gmail.com>
1042
1043         * lily/lexer.ll, lily/source-file.cc: Add \sourcefileline command
1044
1045         * scripts/lilypond-book.py: insert \sourcefileline command in
1046         output, so lilypond error messages refer to the spot in the
1047         original .lytex / .itely sourcefile.
1048
1049 2006-08-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
1050
1051         * lily/spacing-loose-columns.cc (set_loose_columns): oops: use
1052         space to next column for distance to fixed col.
1053
1054         * VERSION (PACKAGE_NAME): release 2.9.14
1055
1056         * lily/pitched-trill-engraver.cc (make_trill): do set_parent also
1057         if no accidental.
1058
1059         * lily/accidental-engraver.cc (process_acknowledged): don't create
1060         accidental for trill span event. This fixes spurious accidentals
1061         on trills.
1062
1063 2006-08-04  Mats Bengtsson  <mabe@s3.kth.se>
1064
1065         * scm/define-grob-properties.scm (all-user-grob-properties):
1066         Clarify documentation of side-axis and direction. Thanks to Paul
1067         for the inspiration.
1068
1069         * lily/bar-line.cc: Add documentation for "||:" also in the
1070         interface documentation.
1071
1072 2006-08-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
1073
1074         * lily/spacing-loose-columns.cc (set_loose_columns): bugfix.
1075
1076         * lily/paper-column.cc (set_system): new function.
1077
1078         * lily/spacing-engraver.cc (stop_translation_timestep): store
1079         SpacingSpanner refs in Paper_column.
1080
1081         * lily/spacing-loose-columns.cc (set_loose_columns): rewrite
1082         compute loose clique spacing using GraceSpacing/SpacingSpanner.
1083
1084 2006-08-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
1085
1086         * lily/beam-engraver.cc (listen_beam): add method for
1087         Grace_beam_engraver too.
1088
1089 2006-08-03  Mats Bengtsson  <mabe@s3.kth.se>
1090
1091         * python/convertrules.py: Fix indentation bug that broke
1092         conversion of files older than 1.3.117.
1093         Fix escape error in the description for 2.9.6.
1094
1095 2006-08-02  Erik Sandberg  <mandolaerik@gmail.com>
1096
1097         * lily/*-engraver.cc: convert all try_music functions to listen_*
1098         functions.
1099
1100         * lily/piano-pedal-engraver.cc: some additional cleanups: use
1101         enums to represent pedal types, and calculate more data statically.
1102
1103         * scm/part-combiner.scm (recording-group-emulate): create a
1104         softcoded substitute for recording-group-engraver.cc.
1105
1106         * lily/music.cc: make a common transpose function for events and
1107         music
1108
1109         * ly/declarations-init.ly: change melisma/melismaEnd. Eliminates
1110         ManualMelismaEvent, and obsoletes Melisma_translator.
1111
1112 2006-08-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
1113
1114         * input/test/instrument-name-align.ly: update version.
1115
1116 2006-08-02  Mats Bengtsson  <mabe@s3.kth.se>
1117
1118         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
1119         Doc the --pdf flag to lilypond-book.
1120
1121 2006-07-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
1122
1123         * Documentation/topdocs/NEWS.tely (Top): add description.
1124
1125         * input/regression/tuplet-full-length-note.ly: add file.
1126
1127         * lily/instrument-name-engraver.cc (acknowledge_axis_group):
1128         always store axis group.
1129
1130 2006-07-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
1131
1132         * input/regression/instrument-switch.ly: new file.
1133
1134         * lily/instrument-switch-engraver.cc (process_music): new file.
1135
1136         * ly/engraver-init.ly: add Instrument_switch_engraver
1137
1138         * ly/music-functions-init.ly: \instrumentSwitch
1139
1140         * scm/define-context-properties.scm
1141         (all-user-translation-properties): add instrumentCueName
1142
1143         * scm/define-grobs.scm (all-grob-descriptions): add InstrumentSwitch
1144
1145 2006-07-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
1146
1147         * ly/music-functions-init.ly: music function \transposition.
1148
1149         * lily/parser.yy (command_element): softcode \transposition.
1150
1151         * lily/fall-engraver.cc (process_music): delta-pitch -> delta-step.
1152         (process_music): oops.
1153
1154         * lily/instrument-name-engraver.cc (start_spanner): new
1155         function. Create spanner when property changes.
1156         (stop_spanner): new function.
1157
1158         * python/convertrules.py (conv): add rule.
1159
1160         * lily/instrument-name-engraver.cc: shortVocalName iso. vocNam,
1161         shortInstrumentName iso. instr.
1162
1163         * scm/output-ps.scm (dashed-line): add phase argument to
1164         dashed-line.
1165
1166         * lily/bar-line.cc (dashed_bar_line): new function.
1167         (compound_barline): support \bar "dashed". 
1168
1169         * lily/lily-parser-scheme.cc (LY_DEFINE): only write
1170         --output=DIR to DIR/BASE if it is a dir. 
1171
1172         * flower/file-name.cc (file_part): new function
1173         (dir_part): new function
1174
1175         * lily/lily-parser-scheme.cc (LY_DEFINE): 
1176
1177         * DEDICATION: update
1178
1179 2006-07-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
1180
1181         * lily/instrument-name-engraver.cc: formatting.
1182
1183         * python/convertrules.py (conv): bugfix for \epsfile.
1184
1185 2006-07-25  Joe Neeman  <joeneeman@gmail.com>
1186
1187         * lily/grob.cc:
1188         
1189         * lily/gourlay-breaking.cc: Oops, these should have been included
1190         in my last commit
1191
1192 2006-07-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
1193
1194         * scripts/*.py (program_name): cleanup relocation snippets.
1195
1196         * scripts/convert-ly.py (datadir): remove LILYPONDPREFIX support.
1197
1198 2006-07-24  Joe Neeman  <joeneeman@gmail.com>
1199
1200         * scm/define-grobs.scm (all-grob-descriptions): make NonMusicalPaperColumn
1201         page-breakable by default
1202
1203         * scm/layout-page-layout.scm (space-systems): fix bug where the force isn't
1204         correctly calculated for a single-system page
1205
1206         * scm/lily-library.scm (interval-sane?): also check that the first number is no
1207         bigger than the second number
1208
1209         * lily/simple-spacer.cc (solve): allow compression even when ragged (but we
1210         acknowledge that we aren't satisfying constraints)
1211
1212         * lily/hara-kiri-group-spanner.cc (request_suicide): give equal treatment to
1213         non-Items
1214
1215         * lily/grob.cc (pure_height): add minimum-Y-extent
1216
1217         * lily/gourlay-breaking.cc (solve): don't ignore a compression force, even if we're
1218         ragged
1219
1220         * lily/constrained-breaking.cc: convert code to use new Matrix class
1221         (get_best_solution): new function
1222
1223         * scm/page.scm (make-page-stencil): don't crash if we annotate-layout when there
1224         is a page with no systems
1225
1226 2006-07-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
1227
1228         * VERSION (PACKAGE_NAME): release 2.9.13
1229
1230         * scm/define-grobs.scm (all-grob-descriptions): remove stray
1231         assignment.
1232
1233 2006-07-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
1234
1235         * Documentation/topdocs/NEWS.tely (Top): doc new features.
1236
1237         * scm/output-lib.scm (grace-spacing::calc-shortest-duration): new
1238         function.
1239
1240         * scm/define-grob-properties.scm (all-user-grob-properties):
1241         remove grace-space-factor.
1242
1243         * scm/define-grob-interfaces.scm (grace-spacing-interface): add
1244         grace-spacing-interface
1245         (spacing-options-interface): add.
1246
1247         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add Grace_spacing_engraver
1248
1249         * lily/spacing-options.cc (get_duration_space): move function from spacing-basic.cc
1250
1251         * lily/spacing-basic.cc (note_spacing): do init_from_grob on
1252         GraceSpacing object.
1253
1254         * lily/note-spacing.cc: fix prop list formatting
1255
1256         * lily/beaming-pattern.cc (de_grace): new function. Sensible
1257         beaming for grace notes too.
1258
1259         * input/regression/spacing-grace.ly: update.
1260
1261         * lily/grace-spacing-engraver.cc: new file.
1262
1263         * lily/spacing-spanner.cc: add strict-grace-spacing.
1264
1265 2006-07-20  Graham Percival  <gpermus@gmail.com>
1266
1267         * lily/parser.yy: compile fix.
1268
1269 2006-07-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
1270
1271         * scm/define-grobs.scm (all-grob-descriptions): typo.
1272
1273         * scm/framework-eps.scm (dump-stencils-as-EPSes): just strip
1274         .eps extension from includegraphics.
1275
1276         * scripts/lilypond-book.py (main): add support for --pdf. 
1277
1278         * lily/spacing-spanner.cc (calc_common_shortest_duration): use
1279         callback to compute common shortest duration.
1280         (set_springs): typo.
1281
1282         * scm/define-grob-properties.scm (all-user-grob-properties): add
1283         strict-grace-spacing.
1284
1285         * lily/spacing-determine-loose-columns.cc (is_loose_column):
1286         support float_grace_columns_.
1287
1288         * lily/spacing-options.cc (init_from_grob): new file.
1289
1290         * Documentation/topdocs/NEWS.tely (Top): doc tupletFullLengthNote.
1291
1292         * input/regression/spacing-loose-grace.ly: new file.
1293
1294         * Documentation/topdocs/NEWS.tely (Top): document new feature.
1295
1296         * lily/tuplet-engraver.cc (struct Tuplet_description): read
1297         tupletFullLengthNote too. Choose right bound depending on value.
1298
1299         * input/regression/tuplet-full-length-note.ly: new file.
1300
1301 2006-07-19  Erik Sandberg  <mandolaerik@gmail.com>
1302
1303         * lily/*-performer.cc: Converted try_music to listen_*
1304
1305         * lily/grob-info.cc, lily/engraver.cc: represent the cause of grob
1306         as a stream-event internally. Introduce event_cause (), deprecate
1307         music_cause ().
1308
1309         * scm/define-music-types.scm: Removed BusyPlayingEvent
1310         
1311 2006-07-19  Mats Bengtsson  <mabe@s3.kth.se>
1312
1313         * Documentation/user/advanced-notation.itely (Font selection):
1314         Document how to get a list of available fonts using 'lilypond
1315         -dshow-available-fonts blabla'.
1316
1317 2006-07-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
1318
1319         * GNUmakefile.in: filter lily-XXX.pdf files.
1320
1321         * scm/define-grob-interfaces.scm (bend-after-interface): add thickness.
1322
1323         * scm/define-grob-properties.scm (all-internal-grob-properties):
1324         remove delta-pitch. Use delta-position everywhere.
1325
1326         * scm/output-lib.scm (fall::print): use new order.
1327
1328         * scm/output-ps.scm (path): reorder arguments.
1329
1330         * scm/output-svg.scm (path): support for path primitive.
1331
1332         * input/regression/bend-after.ly: new file.
1333
1334         * Documentation/user/GNUmakefile ($(outdir)/%.pdf): foolproof
1335         recipe for eps -> pdf conversion.
1336
1337 2006-07-19  Erik Sandberg  <mandolaerik@gmail.com>
1338
1339         * lily/parser.yy, lily/lexer.ll: added some simplifications by
1340         Angelo Contardi.
1341
1342 2006-07-19  Graham Percival  <gpermus@gmail.com>
1343
1344         * input/manual/screech-boink.ly: moved to here.
1345
1346         * input/screech-boink.ly: deleted.
1347
1348         * scm/define-grob-properties.scm: clarify doc string.
1349
1350 2006-07-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
1351
1352         * Documentation/topdocs/NEWS.tely (Top): doc new feature.
1353
1354         * scm/output-ps.scm (path): define path.
1355
1356         * scm/define-stencil-commands.scm
1357         (ly:register-stencil-expression): add path.
1358
1359         * scm/define-music-properties.scm (all-music-properties): add delta-pitch.
1360
1361         * ly/engraver-init.ly: add Fall_engraver
1362
1363         * lily/parser.yy (music_function_event): allow musicfunction
1364         without music arg as music_function_event.
1365
1366         * lily/grob-scheme.cc (LY_DEFINE):
1367         ly:grob-robust-relative-extent. New function.
1368
1369         * scm/define-grobs.scm (all-grob-descriptions): add BendAfter
1370
1371         * scm/define-music-types.scm (music-descriptions): add BendAfterEvent.
1372
1373         * scm/output-lib.scm (fall::print): new function
1374
1375         * lily/fall-engraver.cc (stop_fall): new file.
1376
1377         * ly/music-functions-init.ly: alphabetise.
1378
1379         * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): pdf iso. eps as
1380         base.
1381
1382 2006-07-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
1383
1384         * VERSION (PATCH_LEVEL): bump version. Release 2.9.12
1385
1386         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
1387         doc pdftex usage.
1388
1389         * lily/translator-group.cc (connect_to_context): non const error message.
1390
1391         * Documentation/user/GNUmakefile ($(outdir)/%.pdf): update to use PDF
1392
1393         * scm/paper.scm (internal-set-paper-size): define landscape to #f
1394         if unset.
1395
1396         * scm/framework-ps.scm (convert-to-pdf): swap h and w in case of landscape. 
1397
1398         * stepmake/stepmake/texinfo-rules.make: strip DVI support.
1399
1400         * scm/framework-eps.scm (dump-stencils-as-EPSes): generate
1401         systems.pdftex too.
1402
1403         * scm/backend-library.scm (postscript->pdf): use -dEPSCrop for PDF.
1404
1405         * make/lilypond-vars.make (TEXINPUTS): add pdf output format.
1406
1407         * Documentation/topdocs/NEWS.tely (Top): add pdftex note.
1408
1409         * scm/output-ps.scm (resetrotation): use gsave/grestore for rotation.
1410
1411         * lily/main.cc (parse_argv): don't overwrite previous --formats string.
1412
1413         * scm/backend-library.scm (postscript->pdf): strip .eps too. 
1414
1415 2006-07-14  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1416
1417         * scm/layout-page-layout.scm: Define module, tidy code, use more
1418         functions iso. a single big one.
1419
1420         * scm/layout-page-dump.scm: move page dump functions used in two
1421         pass spacing to this file. Define module.
1422
1423         * scm/lily.scm (ly:load): don't load layout-page-layout.scm
1424          (separate module)
1425
1426         * ly/paper-defaults.ly: use module layout-page-layout.
1427
1428 2006-07-14  Erik Sandberg  <mandolaerik@gmail.com>
1429
1430         * lily/music.cc: Revised MusicEvent event class. It now contains
1431         event data directly instead of encapsulating it in music. The
1432         previously used class is renamed to OldMusicEvent.
1433
1434         * lily/stream-event.cc: Stream events are now probs.
1435         
1436         * lily/translator-group.cc, lily/translator.cc: Translators can
1437         now listen directly to stream events, by using macros
1438         [DECLARE,IMPLEMENT]_TRANSLATOR_LISTENER.
1439
1440         * lily/arpeggio-engraver.cc: Converted to use new event system
1441
1442         * THANKS: Corrected spelling mistake.
1443
1444 2006-07-12  Graham Percival  <gpermus@gmail.com>
1445
1446         * Documentation/user/SConscript, make/lilypond-vars.make,
1447         input/GNUmakefile: doc build looks in input/manual instead
1448         of input/test/
1449
1450         * input/manual/ GNUmakefile, SConscript: build files for
1451         input/manual/
1452
1453         * input/test/ various: some files moved to input/manual/ 
1454
1455         * Documentation/user/basic-notation.itely: small updates;
1456         thanks Kieren and Charles!
1457
1458 2006-07-12  Han-Wen Nienhuys  <hanwen@lilypond.org>
1459
1460         * VERSION (PACKAGE_NAME): release 2.9.11
1461
1462         * Documentation/topdocs/NEWS.tely (Top): update prop value 
1463
1464         * Documentation/user/basic-notation.itely (Tuplets): new property
1465         value.
1466
1467 2006-07-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
1468
1469         * python/convertrules.py (conv): tweaks. 
1470
1471         * VERSION (PATCH_LEVEL): bump version.
1472
1473         * python/convertrules.py (conv): add rule for
1474         tupletNumberFormatFunction.
1475
1476         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
1477         tupletNumberFormatFunction.
1478
1479         * scm/define-grobs.scm (all-grob-descriptions): calc TupletNumber
1480         text through 'text callback.
1481
1482         * lily/time-scaled-music-iterator.cc (construct_children): copy
1483         tweaks generated events.
1484
1485         * scm/define-context-properties.scm
1486         (all-user-translation-properties): remove tupletNumberFormatFunction
1487
1488         * lily/tuplet-engraver.cc (process_music): don't read
1489         tupletNumberFormatFunction
1490
1491         * scm/output-lib.scm (tuplet-number::calc-fraction-text): new
1492         function.
1493
1494 2006-07-11  Erik Sandberg  <mandolaerik@gmail.com>
1495
1496         * lily/global-context-scheme.cc: Separated ly:run-translator into
1497         smaller pieces.
1498
1499         * lily/score-engraver.cc, lily/score-performer.cc,
1500         scm/define-context-properties.scm: Make paper/midi output
1501         accessable as a context property.
1502
1503         * lily/score-translator.cc, lily/score-context.cc: Removed.
1504
1505 2006-07-07  Guido Amoruso  <guidonte@katamail.com>
1506
1507         * scm/ps-to-png.scm (Module): 
1508         * scm/framework-tex.scm (Module): 
1509         * scm/framework-ps.scm (Module): 
1510         * scm/backend-library.scm (Module): 
1511         * scm/framework-ps.scm: invoke gs with "-dDEVICEWIDTHPOINTS" and
1512         "dDEVICEHEIGHTPOINTS".
1513
1514 2006-07-04  Graham Percival  <gpermus@gmail.com>
1515
1516         * Documentation/user/ various: general improvements to
1517         "working with lilypond files" section.
1518
1519 2006-07-03  Erik Sandberg  <mandolaerik@gmail.com>
1520
1521         * lily/sequential-iterator.cc: Change the default get_music_list
1522         to read elements-callback music property
1523
1524         * scm/define-music-types.scm, scm/music-functions.scm: Cleaner
1525         processing of multimeasure rests. Softcoded
1526         sequential-music-iterator.
1527
1528         * lily/sequential-music-iterator.cc: Removed.
1529
1530 2006-06-28  Graham Percival  <gpermus@gmail.com>
1531
1532         * Documentation/user/basic-notation.itely: clarify \repeatTie.
1533
1534 2006-06-27  Erik Sandberg  <mandolaerik@gmail.com>
1535
1536         * lily/parser.yy: Wrap non-post-events in EventChords before
1537         assigning them to identifiers.
1538
1539 2006-06-27  Mats Bengtsson  <mabe@s3.kth.se>
1540
1541         * lily/bar-line.cc (compound_barline): Fix parenthesis error,
1542         gives correct vertical placement of \bar ":" in all staff
1543         sizes. Thanks Martial!
1544
1545 2006-06-26  Graham Percival  <gpermus@gmail.com>
1546
1547         * Documentation/user/invoking.itely : minor update from mailist.
1548
1549 2006-06-26  Erik Sandberg  <mandolaerik@gmail.com>
1550
1551         * lily/ various: Introduce stream events of types Prepare,
1552         OneTimeStep, CreateContext, AnnounceNewContext, RemoveContext,
1553         ChangeContext, SetProperty, RevertProperty, Override and Revert.
1554
1555         * lily/global-context*.cc: Time is now -inf before iteration
1556         starts.
1557
1558         * lily/include/context.hh: Removed unique_, init_
1559
1560         * Documentation/topdocs/NEWS: Make the feathered beam example
1561         avoid triggering a bug.
1562
1563 2006-06-24  Graham Percival  <gpermus@gmail.com>
1564
1565         * Documentation/user/ various: small additions from mailist.
1566
1567 2006-06-22  Mats Bengtsson  <mabe@s3.kth.se>
1568
1569         * ly/performer-init.ly: Add some missing links in the context
1570         hierarchy for MIDI output. There are probably some more missing!
1571
1572 2006-06-21  Graham Percival  <gpermus@gmail.com>
1573
1574         * Documentation/user/ various: minor spelling fixes;
1575         thanks Dave Luttinen!
1576
1577         * Documentation/user/ various: small clarifications;
1578         thanks Anthony Youngman!
1579
1580 2006-06-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
1581
1582         * po/fr.po: add \n appropriately.
1583
1584         * lily/lexer.ll: remove ? from version-seen?  
1585
1586 2006-06-19  John Mandereau  <john.mandereau@free.fr>
1587
1588         * po/fr.po; update translation, by Jean-Charles Malahieude and
1589         John Mandereau.
1590
1591 2006-06-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
1592
1593         * THANKS: add Markus Schneider.
1594
1595         * lily/tab-staff-symbol-engraver.cc: derive from Engraver, not
1596         Staff_symbol_engraver
1597
1598         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): don't
1599         replace staff_engraver
1600
1601         * lily/staff-symbol-engraver.cc (stop_spanner): announce end of
1602         spanner.
1603
1604         * lily/staff-collecting-engraver.cc
1605         (acknowledge_end_staff_symbol): new function
1606
1607         * lily/volta-engraver.cc (acknowledge_end_staff_symbol): new function. 
1608
1609         * lily/staff-collecting-engraver.cc
1610         (acknowledge_end_staff_symbol): new function.
1611
1612         * lily/main.cc: switch on relocation by default.
1613
1614 2006-06-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
1615
1616         * lily/spacing-spanner.cc (musical_column_spacing): set
1617         compound_fixed_note_space to 0.0. Document why.
1618
1619         * lily/simple-spacer.cc (is_sane): also have a kludge for numeric
1620         range of inverse_hooke_
1621         (Simple_spacer): init completely.
1622         (fits): const
1623         (get_line_configuration): don't use cols.resize(); it introduces
1624         initialized data.
1625
1626         * scm/framework-ps.scm (dump-page): add setstrokeadjust. 
1627
1628         * ps/music-drawing-routines.ps: remove selectfont L1 hack.
1629
1630         * lily/beaming-pattern.cc (best_splitpoint_index): urg, 2nd
1631         try. Divide by beatlength.
1632
1633         * input/regression/beaming-ternary-metrum.ly: update doc.
1634         add beatLength hack.
1635
1636         * scm/music-functions.scm (make-time-signature-set): add
1637         standard-beat-grouping. 
1638
1639 2006-06-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
1640
1641         * input/regression/tie-whole.ly: new file.
1642
1643         * lily/tie-formatting-problem.cc (set_column_chord_outline): don't
1644         cross center of note head in case of invisible stem. 
1645
1646 2006-06-16  Graham Percival  <gpermus@gmail.com>
1647
1648         * Documentation/user/ various: small fixes from mailist.
1649
1650 2006-06-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
1651
1652         * lily/breathing-sign.cc (offset_callback): idem.
1653
1654         * lily/align-interface.cc (align_to_fixed_distance): remove
1655         hungarian suffix.
1656
1657         * lily/beaming-pattern.cc (count_factor_twos): oops. We want
1658         x%2==0.
1659
1660 2006-06-15  Han-Wen Nienhuys  <hanwen@lilypond.org>
1661
1662         * VERSION (PACKAGE_NAME): release 2.9.9
1663
1664         * ly/lilypond-book-preamble.ly: add \version
1665
1666 2006-06-14  Han-Wen Nienhuys  <hanwen@lilypond.org>
1667
1668         * scripts/lilypond-book.py (PREAMBLE_LY): include
1669         lilypond-book-preamble.ly
1670
1671         * lily/stem.cc (get_beaming): return max of 0 and
1672         scm_ilength. Fixes slurring from/to beams.
1673
1674         * ly/lilypond-book-preamble.ly: new file.
1675
1676         * lily/slur.cc: add inspect-index feature.
1677
1678 2006-06-13  Graham Percival  <gpermus@gmail.com>
1679
1680         * Documentation/user/tutorial.itely: trivial fix.
1681
1682 2006-06-13  Erik Sandberg  <mandolaerik@gmail.com>
1683
1684         * lily/parser.yy, scm/ly-syntax-constructors.scm: Produce almost
1685         all non-event music in the parser via MAKE_SYNTAX.
1686
1687         * lily/parser-scheme.cc: Add ly:parser-error function
1688
1689         * scm/paper.scm: fix typo
1690
1691 2006-06-13  Han-Wen Nienhuys  <hanwen@lilypond.org>
1692
1693         * THANKS: add RT.
1694
1695         * lily/font-config.cc (init_fontconfig): add warning if cache_file
1696         is null.
1697
1698         * buildscripts/output-distance.py (test_compare_signatures):
1699         timing routines.
1700         (read_signature_file): use new signature format.
1701
1702         * scm/stencil.scm (write-system-signature): simpler signature
1703         format.
1704
1705         * lily/stem.cc (calc_stem_end_position): calc quantized-positions
1706         for beamed case. 
1707
1708         * lily/note-spacing.cc (stem_dir_correction): don't inspect
1709         stem_end_position, but estimate instead. 
1710
1711         * lily/tuplet-bracket.cc (calc_positions): look at
1712         stem-end-position for tuplet bracket slope. Fixes sloped tuplet
1713         brackets narrower than beams. 
1714
1715         * lily/lexer.ll: set version-seen? even if version is
1716         INVALID. 
1717
1718         * lily/rest.cc (y_offset_callback): bugfix: decide position
1719         override based on scm_is_number(). Fixes \rest on center staff
1720         line. 
1721
1722         * lily/beaming-pattern.cc (best_splitpoint_index): fix beaming
1723         patterns for 16th triplets.
1724
1725 2006-06-10  Graham Percival  <gpermus@gmail.com>
1726
1727         * Documentation/user/ page.itely, global.itely: editing
1728         and reorg.
1729
1730         * Documentation/user/ various: findex -> funindex.
1731
1732 2006-06-10  Erik Sandberg  <mandolaerik@gmail.com>
1733
1734         * lily/time-scaled-music-iterator.cc: Use tupletSpannerDuration to
1735         insert extra tuplet events.
1736
1737 2006-06-10  Graham Percival  <gpermus@gmail.com>
1738
1739         * Documentation/user/programming-interfaces.itely: add
1740         info from NEWS.
1741
1742         * python/convertrules.py: add annotatefoo -> annotate-foo
1743         rules.
1744
1745         * Documentation/user/global.itely: start editing.
1746
1747         * Documentation/user/page.itely: major editing, new spacing
1748         docs.
1749
1750 2006-06-10  Han-Wen Nienhuys  <hanwen@lilypond.org>
1751
1752         * scm/define-markup-commands.scm (wordwrap-markups): use
1753         output-def 'line-width if undefined.
1754
1755         * HACKING: trim outdated info.
1756
1757 2006-06-09  Mats Bengtsson  <mabe@s3.kth.se>
1758
1759         * scm/define-grobs.scm (all-grob-descriptions): Add
1760         line-spanner-interface to all grobs that already have
1761         text-spanner-interface or dynamic-text-spanner-interface
1762
1763         * scm/page.scm: Rename annotate{headers,systems,page}->
1764         annotate-*
1765
1766         * input/regression/page-spacing.ly,
1767         input/regression/page-layout-manual-position.ly: idem
1768
1769 2006-06-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
1770
1771         * lily/line-spanner.cc: cleanup property list.
1772
1773         * scripts/lilypond-book.py (find_toplevel_snippets): don't use
1774         generator expressions (2.3 compat). 
1775
1776 2006-06-09  Mats Bengtsson  <mabe@s3.kth.se>
1777
1778         * lily/vertical-align-engraver.cc: Make sure that the
1779         align{Above,Below}Context properties are included in the automatic
1780         documentation.
1781
1782 2006-06-08  Joe Neeman  <joeneeman@gmail.com>
1783
1784         * scm/paper-system.scm (paper-system-annotate): also annotate the
1785         estimated pure-Y-extent
1786
1787         * scm/define-grobs.scm: add pure-Y-extent and pure-Y-offset functions
1788
1789         * lily/system.cc (break_into_pieces): set the estimated height
1790         of each child system
1791
1792         * lily/stem.cc (pure_height): new pure-Y-extent callback
1793
1794         * lily/staff-symbol-referencer.cc (callback): don't destroy
1795         the staff-position property
1796
1797         * lily/hara-kiri-group-spanner.cc (request_suicide): split
1798         consider_suicide into two functions
1799
1800         * lily/constrained-breaking.cc (resize): use the new pure
1801         callbacks to estimate the height of a system
1802
1803         * lily/axis-group-interface.cc (pure_group_height): new
1804         side-effect-free VerticalAxisGroup height-callback
1805
1806         * lily/align-interface.cc (get_extents_aligned_translates):
1807         split align_elements_to_extents into two functions
1808         (get_pure_child_y_translation): new function
1809
1810         * lily/grob.cc: new functions for pure-Y-extent and pure-Y-offset
1811
1812         * lily/item.cc: new functions pure_is_visible and spanned_rank_iv
1813
1814         * lily/paper-score.cc: cache break_indices and columns
1815
1816         * lily/side-position-interface.cc: new pure-Y-extent callbacks
1817         
1818 2006-06-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
1819
1820         * lily/font-config.cc (init_fontconfig): do the init if
1821         cache_file, but don't look at cache_file.
1822
1823         * input/regression/quote-tie.ly: new file.
1824
1825         * lily/tie-engraver.cc (struct Head_event_tuple): add end_moment_
1826         to Head_event_tuple, so we deal gracefully with ties on
1827         cue-endings.
1828
1829         * lily/pango-font.cc (pango_item_string_stencil): type correctness
1830         for FcChar8*
1831
1832 2006-06-08  Graham Percival  <gpermus@gmail.com>
1833
1834         * input/test/ smart-transpose.ly, reverse-music.ly:
1835         \applyMusic to music functions update, thanks Michael!
1836
1837 2006-06-07  Graham Percival  <gpermus@gmail.com>
1838
1839         * input/test/ add-staccato.ly, add-text-script.ly,
1840         unfold-all-repeats.ly, music-box.ly: \applyMusic to
1841         music functions update, thanks to Michael Meixner.
1842
1843         * Documentation/user/music-glossary.tely: small fix
1844         from Francisco.
1845
1846         * Documentation/user/ various: minor additions from mailist.
1847
1848         * Documentation/user/lilypond.tely, basic-notation.itely:
1849         small test of @funindex.  (works here)
1850
1851         * input/test/font-table.ly: reduce size to partially
1852         de-ugly version in manual.
1853
1854         * Documentation/user/page.itely: new file (split former
1855         "global issues" into "page settings" and "non-musical
1856         output".
1857
1858         * Documentation/user/ various: fix @ref{}s to match
1859         new chapter names (above).
1860
1861 2006-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
1862
1863         * SConstruct (LILYPONDPREFIX): Bootstrap fix.
1864
1865 2006-06-06  Graham Percival  <gpermus@gmail.com>
1866
1867         * Documentation/user/advanced-notation.itely: add example
1868         for segno/coda on barline.
1869
1870         * tex/texinfo.tex: merge from upstream.
1871
1872 2006-06-06  Jan Nieuwenhuizen  <janneke@gnu.org>
1873
1874         * scripts/lilypond-book.py (process_snippets): Argument fix.
1875
1876         * SConstruct:
1877         * buildscripts/builder.py:
1878         * lily/SConscript: 
1879         * mf/SConscript: 
1880         * Documentation/user/SConscript:  More SCons fixes.
1881
1882 2006-06-03  Jan Nieuwenhuizen  <janneke@gnu.org>
1883
1884         * lily/font-config.cc (init_fontconfig): Only initialize if
1885         global cache_file is found.
1886
1887 2006-06-06  Erik Sandberg  <mandolaerik@gmail.com>
1888
1889         * ly/music-functions-init.ly: Updated \overrideProperty to use the
1890         new \applyOutput.
1891
1892 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
1893
1894         * VERSION (PACKAGE_NAME): release 2.9.8
1895
1896         * lily/ledger-line-engraver.cc (stop_translation_timestep): new
1897         function. Delay ledger modifying ledgered grobs to
1898         stop_translation_timestep(), to ensure that we're ledgering
1899         according to the new spanner.
1900         (acknowledge_staff_symbol): don't check for non-NULL
1901         staff_sym->get_bound()
1902
1903         * lily/staff-symbol-engraver.cc (start_spanner): set left bound on
1904         creation.
1905
1906         * Documentation/pictures/GNUmakefile (XPM_FILES): src-wildcard for
1907         pictures too.
1908
1909         * GNUmakefile.in (dist-toplevel-txt-files): dist aclocal.m4
1910         directly from srcdir/stepmake/aclocal.m4
1911         
1912         * Documentation/misc/GNUmakefile (TEXTS): use src-wildcard for
1913         disting MISC files.
1914
1915         * lily/simple-spacer.cc (get_column_desc): desc -> description.
1916
1917 2006-06-06  Joe Neeman  <joeneeman@gmail.com>
1918
1919         * lily/simple-spacer.cc (get_line_configuration): add
1920         keep-inside-line rods
1921         (struct Column_desc): add constructor
1922         (struct Rod_desc): add constructor
1923         (get_line_forces): check for forced page breaks here too
1924
1925         * lily/instrument-name-engraver.cc (acknowledge_axis_group): prevent
1926         support/elements cycles between InstrumentNames and AxisGroups
1927
1928 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
1929
1930         * config.make.in (METAFONT): remove MAKEINFO_VERSION
1931
1932         * stepmake/stepmake/topdocs-targets.make (make-txt-files): define
1933         make-txt-files target.
1934
1935         * stepmake/stepmake/toplevel-targets.make (do-top-doc): use
1936         make-txt-files target.
1937
1938         * configure.in (LINK_GXX_STATICALLY): $srcdir for readlink.py
1939
1940         * stepmake/stepmake/generic-vars.make (distdir): create dist in
1941         top-build-dir.
1942
1943 2006-06-06  Jürgen Reuter  <reuter@ipd.uka.de>
1944
1945         * Documentation/user/instrument-notation.itely,
1946         input/regression/breathing-sign-ancient.ly,
1947         input/test/divisiones.ly: Removed redundant property settings for
1948         vaticana contexts.
1949
1950         * ly/gregorian-init.ly: Rewrote \versus and \responsum in order to
1951         fix lyrics alignment problems.  They are implemented now as scheme
1952         functions that add the appropriate unicode char to the first lyric
1953         event rather than adding a separate lyric event.  Minor edit of
1954         comments.
1955
1956 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
1957
1958         * GNUmakefile.in (dist-toplevel-txt-files): new target. Don't
1959         pollute src dir with built .txt files, but install directly from
1960         Documentation/topdocs/out/
1961
1962         * buildscripts/output-distance.py
1963         (ComparisonData.create_html_result_page): put version/directories
1964         in table header.
1965
1966         * Documentation/topdocs/NEWS.tely (Top): document spacing section
1967         feature.
1968
1969         * configure.in (LINK_GXX_STATICALLY): use readlink.py to resolve links.
1970         Patch by Karl Hammar
1971         
1972         * buildscripts/readlink.py: add  file.
1973         Patch by Karl Hammar
1974
1975 2006-06-06  Joe Neeman  <joeneeman@gmail.com>
1976
1977         * lily/tuplet-number.cc (print): prevent stencil from being
1978         garbage collected.
1979
1980 2006-06-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
1981
1982         * scm/stencil.scm (write-system-signature): explicitly 
1983         -well, superfluously- close output port.
1984
1985         * buildscripts/output-distance.py (main): oops. Add extra argument.
1986
1987 2006-06-05  Graham Percival  <gpermus@gmail.com>
1988
1989         * Documentation/user/music-glossary.tely: clarified example
1990         from Francisco Vila, thanks!
1991
1992 2006-06-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
1993
1994         * input/regression/spacing-section.ly: new file.
1995
1996         * lily/input.cc (programming_error): new function.
1997
1998         * lily/spacing-engraver.cc (try_music): new function. Accept
1999         spacing-section-event
2000
2001         * lily/spacing-spanner.cc (set_springs): take slices of all
2002         columns for spacing.
2003
2004         * lily/include/paper-column.hh (class Paper_column): add
2005         Paper_column::compare.
2006
2007         * ly/spanners-init.ly (newSpacingSection): add newSpacingSection.
2008
2009         * scm/define-music-types.scm (music-descriptions): add
2010         SpacingSectionEvent
2011
2012         * lily/music-iterator.cc (report_event): use programming_error for
2013         sending non-event error.
2014
2015         * lily/input.cc (programming_error): new function
2016
2017         * buildscripts/output-distance.py (main): use compare-XXX for
2018         compare files.
2019         (main): --threshold option, default at 0.30
2020
2021         * output-distance.py (main): add --threshold option.
2022
2023 2006-06-04  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2024
2025         * scm/paper-system.scm (paper-system-annotate): fix problem when
2026         annotating an empty system
2027
2028 2006-06-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
2029
2030         * GNUmakefile.in: reinstate old web tar/copying.
2031
2032 2006-06-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
2033
2034         * lily/lyric-combine-music-iterator.cc (find_voice): return 0 if
2035         nothing changes. (Erik S) 
2036
2037         * lily/percent-repeat-iterator.cc (get_music_list): fix repeat
2038         count. (Erik S)
2039
2040 2006-05-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2041
2042         * scm/define-markup-commands.scm (whiteout): do not force
2043         foreground color of argument markup to black.
2044
2045         * scm/stencil.scm (annotate-y-interval): put arrow dimension at
2046         the left of the arrow, instead of below the arrow name, so that,
2047         when two little arrows are vertically stacked, their dimensions
2048         and name should not overlap. Add a color key parameter.
2049
2050         * scm/paper-system.scm (paper-system-annotate): Annotate
2051         next-space+next-padding instead of next-space. Annotate space
2052         between next-padding and next-space+padding, respectively, and
2053         following system extent and refpoint-Y-extent. Use colors.
2054
2055         * scm/page.scm (annotate-page): translate annotations slightly to
2056         the right.
2057
2058 2006-06-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
2059
2060         * lily/figured-bass-position-engraver.cc (acknowledge_end_slur):
2061         fix for x-staff slurs. Thanks Joe!
2062
2063         * buildscripts/output-distance.py
2064         (SystemLink.output_expression_change_count): keep track of changed
2065         details, and dump in details html page.
2066  
2067         * input/regression/figured-bass-staff.ly: add note about setting
2068         properties in Staff context.
2069
2070         * lily/figured-bass-position-engraver.cc (acknowledge_slur):
2071         add slurs and ties to support too.
2072
2073         * buildscripts/output-distance.py (main): set dest_dir
2074         argument. Add --max-count option.
2075
2076 2006-06-02  Jürgen Reuter  <reuter@ipd.uka.de>
2077
2078         * ly/gregorian-init.ly: Converted to utf-8.  Added memorable
2079         shortcuts for special unicode chars that are useful in chant
2080         notation.  Revised exisiting and added new comments.
2081
2082 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
2083
2084         * make/mutopia-rules.make: remove duplicate recipe.
2085
2086 2006-06-02  Werner Lemberg  <wl@gnu.org>
2087
2088         * tex/texinfo.cnf: Fix typo (\euro -> \minus).
2089         Add support for U+0132 (IJ) and U+0133 (ij).
2090
2091 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
2092
2093         * buildscripts/output-distance.py (FileLink): new class. collect
2094         info systems from one .ly file. 
2095         (FileLink.link_files_for_html): further tweaks.
2096
2097 2006-06-02  Graham Percival  <gpermus@gmail.com>
2098
2099         * tex/texinfo.tex: partial fix for @funindex.
2100
2101         * Documentation/user/macros.tely: uncomment @funindex (doesn't
2102         break anything).
2103
2104 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
2105
2106         * make/mutopia-vars.make (ly_examples): replace .ly.txt with .ly
2107
2108         * tex/texinfo.tex (sectionheading, q.v.): call \quoteexpand for
2109         @example too. Backportme.
2110
2111 2006-06-02  Graham Percival  <gpermus@gmail.com>
2112
2113         * tex/texinfo.cnf: added UTF-8 support for texinfo; patch
2114         from Werner Lemberg.
2115
2116 2006-06-02  Paco (Francisco Vila)  <fravd@ya.com>
2117
2118         * Documentation/user/music-glossary.tely: additional spanish
2119         updates and a lyrics fix in an example.
2120
2121 2006-06-02  Jürgen Reuter  <reuter@ipd.uka.de>
2122
2123         * scm/define-grob-properties.scm: Previous patch contained
2124         spurious line from another patch not yet committed.  Fixed.
2125
2126         * scm/define-grob-properties.scm: Add missing doc strings for
2127         ancient notation.
2128
2129 2006-06-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
2130
2131         * buildscripts/output-distance.py
2132         (ComparisonData.write_text_result_page): separate the scores, sort
2133         by geo_score.
2134
2135         * scm/framework-eps.scm (output-classic-framework): start at 1 for
2136         system signatures.
2137
2138         * buildscripts/output-distance.py (me_path): use argv[0] for
2139         sys.path extension
2140         (ComparisonData.img_cell): use colored borders.
2141
2142         * scm/stencil.scm (write-system-signature): escape newlines too.
2143         (write-system-signature): use (1,-1) interval for empty interval
2144
2145 2006-01-01  Graham Percival  <gpermus@gmail.com>
2146
2147         * Documentation/user/music-glossary.tely: Spanish updates
2148         from Francisco Vila.
2149
2150         * Documentation/user/lilypond-book.itely: addition from
2151         Vaclav Smilauer.
2152
2153         * Documentation/user/ various: edits, small additions
2154         from mailist, etc.
2155
2156 2006-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
2157
2158         * GNUmakefile.in (tree-lib-prefix-current):
2159         (tree-share-prefix-current): Use version number in tree, add
2160         `current' symlinks.
2161
2162 2006-06-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
2163
2164         * GNUmakefile.in: write VERSION, again.
2165
2166         * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
2167         $(outdir)/%.ly $(outdir)/%.ps): dump sigs for normal files too.
2168
2169         * stepmake/aclocal.m4: robuster version detection.
2170
2171         * buildscripts/output-distance.py
2172         (ComparisonData.create_html_result_page): copy only if file
2173         exists, fixup src paths.
2174
2175         * stepmake/bin/add-html-footer.py (built): junk gulp_file()
2176
2177 2006-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
2178
2179         * stepmake/aclocal.m4: Robustification for (gcc) version detection.
2180         Another datarootdir reto.
2181
2182         * cygwin/postinstall-lilypond.sh: Do not fail if info docs aren't
2183         available.  This should be moved to postinstall-lilypond-doc.
2184
2185 2006-05-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
2186
2187         * GNUmakefile.in: simplify local-WWW-post. 
2188         remove -type l from find.
2189
2190         * buildscripts/output-distance.py (ComparisonData.compare_trees):
2191         fixes. Don't follow symlinks.
2192         (ComparisonData.create_html_result_page): remove previous results.
2193         insert ../python in path.
2194
2195         * scripts/lilypond-book.py (PREAMBLE_LY): spacing fixes.
2196
2197 2006-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
2198
2199         * config.make.in (datadir): Add datarootdir to silence autoconf.
2200
2201         * stepmake/aclocal.m4: Update for autoconf-2.59d.
2202
2203 2006-05-31  Erlend Aasland  <erlenda@gmail.com>
2204
2205         * dynamic-engraver.cc: fix bug (dynamics collide with accidentals)
2206
2207         * scm/output-ps.scm (repeat-slash): fix a bug that made repeat
2208         slash beams too wide.
2209
2210 2006-05-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
2211
2212         * VERSION: release 2.9.7
2213         
2214 2006-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
2215
2216         * lily/relocate.cc (read_relocation_dir): Do not blindly
2217         dereference DIR.
2218
2219 2006-05-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
2220
2221         * lily/parser.yy: replace THIS by PARSER
2222
2223         * Documentation/index.html.in: add link to test-results.html page.
2224
2225         * Documentation/topdocs/NEWS.tely (Top): update NEWS entry.
2226
2227         * scm/translation-functions.scm (format-bass-figure): translate
2228         digits over 10 to the left
2229
2230         * scm/define-markup-commands.scm (translate-scaled): new markup.
2231
2232         * mf/feta-nummer-code.mf (code): overshoot the topright tip of the
2233         7 glyph. 
2234
2235         * ly/engraver-init.ly: add Figured_bass_engraver
2236
2237         * lily/engraver-group.cc (acknowledge_grobs): use start/stop drul.
2238
2239         * lily/figured-bass-engraver.cc (clear_spanners): use everywhere.
2240
2241         * lily/score-engraver.cc (announce_grob): only note START announces.
2242
2243         * lily/include/engraver-group.hh (Translator_group):
2244         acknowledge_hash_table_ is now drul.
2245
2246         * lily/engraver.cc (announce_end_grob): new method.
2247
2248         * lily/include/grob-info.hh (class Grob_info): add start_end_ member.
2249
2250         * lily/translator-dispatch-list.cc (create): take start_end argument.
2251
2252         * lily/include/translator.hh (TRANSLATOR_DECLARATIONS): change
2253         acknowledge_static_array_ to drul
2254
2255         * lily/include/translator.icc (ADD_END_ACKNOWLEDGER): new macro.
2256
2257         * scm/define-grob-interfaces.scm
2258         (bass-figure-alignment-interface): add bass-figure-alignment-interface
2259
2260         * scm/define-grobs.scm (all-grob-descriptions): add
2261         BassFigureAlignmentPositioning
2262
2263         * ly/Welcome-to-LilyPond-MacOS.ly: include in LilyPond, so version
2264         number stays up to date. Backportme.
2265
2266 2006-05-30  Mats Bengtsson  <mabe@s3.kth.se>
2267
2268         * Documentation/user/basic-notation.itely (Bar lines): Document
2269         the "||:" bar type. 
2270
2271 2006-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
2272
2273         * buildscripts/builder.py: Remove --ly option/target from mf-to-table.
2274
2275         * scripts/lilypond-book.py: Bugfix: do not blindly attempt
2276         .../current hack if LILYPONDPREFIX is fine.  Fixes `scons doc'
2277         build.
2278
2279         * Resurrect `scons lily' build.
2280
2281         * SConstruct (symlink_tree): Bugfix: link
2282         music-drawing-routines.ps to file iso directory.
2283
2284         * lily/SConscript: Remove kpath-guile from LIBS.
2285
2286         * SConstruct (libdir_package_version): Typo.
2287         (configure): Comment-out fontforge for lack of fontforge.pc .
2288         Also add libdir* to environment.
2289
2290 2006-05-30  Graham Percival  <gpermus@gmail.com>
2291
2292         * Documentation/user/ various: minor additions from mailist and
2293         editing.
2294
2295 2006-05-30  Paco <fravd@ya.com>
2296
2297         * Documentation/user/music-glossary.tely: numerous corrections and
2298         some new translations.
2299
2300 2006-05-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
2301
2302         * BackportmeStart.
2303         
2304         * buildscripts/output-distance.py
2305         (ComparisonData.create_html_result_page): new routine: summarise
2306         results in HTML page with images. 
2307         (ComparisonData.create_text_result_page): create summary text files too.
2308
2309         * GNUmakefile.in (web-ext): package .signature files too. They
2310         compress well. 
2311
2312         * scm/stencil.scm (write-system-signature): typo.
2313
2314         * GNUmakefile.in: create web-root/VERSION to help upload scripts.
2315
2316         * scm/stencil.scm (write-system-signature): better escaping.
2317         only write signature for music systems, not for markup systems.
2318
2319         * scm/framework-ps.scm (output-framework): dump-signatures support
2320         for plain output.
2321
2322         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): add -ddump-signatures.
2323
2324         * scm/framework-ps.scm (write-preamble): redefine mark_URI to nop
2325         for -dno-point-and-click
2326
2327         * lily/grob.cc (get_print_stencil): don't read
2328         point_and_click_global to determine whether to set grob-cause.
2329
2330 2006-05-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
2331
2332         * buildscripts/output-distance.py (main): new function.
2333         (ComparisonData): new class.
2334
2335         * lily/ledger-line-engraver.cc (acknowledge_staff_symbol): be more
2336         careful with generating new LedgerLineSpanners.
2337
2338         * lily/ledger-line-spanner.cc (set_spacing_rods): suicide if no staff.
2339
2340         * ly/engraver-init.ly: remove Ledger_line_engraver from Voice
2341         context. This fixes double ledger lines in output. 
2342
2343         * lily/system.cc (get_paper_system): remove 3 layer limit.
2344
2345         * buildscripts/output-distance.py (SystemLink.distance): new
2346         file. Compare signatures.
2347
2348         * python/safeeval.py (SafeEval.visitUnarySub): new file.
2349
2350         * lily/grob-array.cc (remove_duplicates): rename from
2351         uniq(). Sort before calling uniq() so it actually works.
2352
2353 2006-05-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
2354
2355         * scripts/lilypond-book.py (Lilypond_file_snippet.ly): strip
2356         \version from lilypond file snippet.
2357         (Lilypond_file_snippet.ly): oops. typo.
2358         (find_toplevel_snippets): urgh. again.
2359
2360         * lily/system.cc (get_paper_systems): uniq all_elements_ , to
2361         prevent duplicated broken items in output.
2362
2363         * scm/framework-eps.scm (output-classic-framework): only dump if
2364         dump-signatures is set.
2365
2366         * scm/lily.scm (define-scheme-options): add dump-signatures option.
2367
2368         * scm/stencil.scm (write-system-signature): new routine: write
2369         python parseable signature of a separate paper system.
2370         BackportmeEnd.
2371         
2372 2006-05-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
2373
2374         * lily/stanza-number-engraver.cc (process_music): use is_markup()
2375         iso is_string().
2376         include header.
2377
2378 2006-05-25  Erik Sandberg  <mandolaerik@gmail.com>
2379
2380         * translator-group.cc: send music events to engravers in
2381         non-bottom contexts.
2382
2383         * tuplet-engraver.cc: process tuplet brackets in correct order.
2384
2385 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
2386
2387         * stepmake/aclocal.m4: STEPMAKE_PYTHON(): clear cached value since
2388         arg 2 might point us to a new binary (patch by Karl Hammar)
2389         
2390 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
2391
2392         * VERSION (PACKAGE_NAME): release 2.9.6
2393
2394         * Documentation/topdocs/NEWS.tely (Top): trim explanation. 
2395
2396         * Documentation/user/*.itely: 2nd
2397         attempt: replace funindex -> findex globally.
2398
2399 2006-05-24  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2400
2401         * input/no-notation/display-lily-tests.ly: fix \applyOutput
2402         test. Add \break, \pageBreak, \pageTurn, etc, tests.
2403
2404         * scm/define-music-display-methods.scm: display methods for
2405         breaks. Fix \applyOutput.
2406
2407 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
2408
2409         * Documentation/user/macros.itexi: comment out funindex expansion. 
2410
2411         * Documentation/user/music-glossary.tely: junk \oldaddlyrics
2412         everywhere.
2413
2414         * GNUmakefile.in: fix wildcarding for scrips/out/ links. Thanks
2415         Karl Hammar. Backportme.
2416  
2417         * Documentation/user/advanced-notation.itely (Balloon help): idem.
2418
2419         * Documentation/user/changing-defaults.itely (Creating contexts): idem.
2420
2421         * Documentation/user/programming-interface.itely (Running a
2422         function on all layout objects): idem.
2423
2424         * Documentation/user/introduction.itely (Automated engraving):
2425         update \applyOutput syntax
2426
2427         * lily/lyric-combine-music-iterator.cc (start_new_syllable):
2428         remove debugging hook.
2429
2430         * configure.in (LINK_GXX_STATICALLY): use "" to allow $
2431         expansion. 
2432
2433         * Documentation/user/GNUmakefile (TEXI2DVI_FLAGS): add -E.
2434
2435         * stepmake/stepmake/texinfo-rules.make ($(outdir)/%.dvi): add
2436         TEXI2DVI_FLAGS to texi2dvi invocation. 
2437
2438 2006-05-24  Erik Sandberg  <mandolaerik@gmail.com>
2439
2440         * lily/chord-tremolo-*.cc: Reworked how \repeat "tremolo"
2441         works. More work is done by iterator now, and engraver has been
2442         very much simplified.
2443
2444         * lily/translator-group.cc: try_music is now invoked through a
2445         listener
2446
2447         * lily/*-iterator.cc: Massive cleanups. Junked
2448         try_music_in_children globally. Renamed try_music to report_event,
2449         and made that method descend to a bottom context automatically.
2450
2451         * lily/event-iterator.cc: New file.
2452
2453         * lily/output-property-iterator.cc,
2454         lily/old-lyric-combine-music-iterator.cc: Removed.
2455
2456         * python/convert-rules.py: Modified the syntax for \applyOutput.
2457
2458 2006-05-23  Graham Percival  <gpermus@gmail.com>
2459
2460         * stepmake/stepmake/texinfo-rules.make: added -E, allows pdf doc
2461         creation.
2462
2463         * Documentation/user/ various: stuff that might have helped
2464         to fix the pdf creation, plus some minor doc additions.
2465
2466         * Documentation/user/changing-defaults.itely: remove @b from
2467         @b{ @internasref{foo}}; this breaks texi2dvi -E.
2468
2469 2006-05-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
2470
2471         * lily/beaming-pattern.cc (beamify): deal with negative start
2472         moments for beaming patterns.
2473
2474 2006-05-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
2475
2476         * lily/beaming-info.cc (beamify): new function: read beatLength
2477         and beatGrouping from context. 
2478
2479         * input/regression/beam-beat-grouping.ly (Module): new file.
2480
2481         * input/regression/beam-unconnected-beamlets.ly (Module): new file.
2482
2483         * lily/beam.cc (get_beam_segments): generate events for
2484         max_connect_ case too.
2485         (get_beam_segments): read Stem::max-beam-connect.
2486
2487         * input/regression/beam-single-stem.ly: new file.
2488
2489         * lily/stem.cc (set_beaming): use #f as signaling value for
2490         beamcount 0.
2491
2492         * lily/beam-engraver.cc (typeset_beam): set right bound if unset.
2493
2494         * lily/beam.cc (set_beaming): read clip-edges property.
2495         (calc_direction): don't suicide for single stem.
2496
2497         * lily/beaming-info.cc (best_splitpoint_index): take bool*
2498         argument, remove 1<<15 hack. Remove clip_edges() 
2499
2500         * lily/hairpin.cc (print): only do padding for nonmusical bounds
2501
2502 2006-05-21  Graham Percival  <gpermus@gmail.com>
2503
2504         * Documentation/user/basic-notation.itely: reorg.
2505
2506         * Documentation/user/ various: minor fixes.
2507
2508 2006-05-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
2509
2510         * lily/stencil-expression.cc (register_stencil_head): opps, append
2511         to cdr of static SCM object.
2512
2513 2006-05-19  Graham Percival  <gpermus@gmail.com>
2514
2515         * Documentation/user/README.txt, lilypond.tely, macros.itexi:
2516         update framework for command index.  DOC WRITERS: use @funindex
2517         instead of @cindex @code{}.
2518
2519         * Documentation/user/ various: replace @cindex @code{} => @funindex
2520
2521 2006-05-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
2522
2523         * lily/beam.cc (set_stem_lengths): trigger 'beaming callback, in
2524         case positions is set manually. 
2525
2526 2006-05-18  Erik Sandberg  <mandolaerik@gmail.com>
2527         
2528         * scm/ly-syntax-constructors.scm: New file. Converted a few syntax
2529         rules to Scheme.
2530
2531 2006-05-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
2532
2533         * Documentation/user/changing-defaults.itely (Contexts explained):
2534         use absolute dimension for @image.
2535
2536         * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): generate PNG
2537         out image for illustration too.
2538         ($(outdir)/%.png): add more png <-> eps rules. 
2539
2540 2006-05-17  Graham Percival  <gpermus@gmail.com>
2541
2542         * Documentation/user/ various: remove trailing whitespace, cosmetic
2543         change to reduce changes produced by diff.
2544
2545 2006-05-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
2546
2547         * lily/main.cc (do_chroot_jail): correctness tweak.
2548
2549         * python/lilylib.py (system): import subprocess in system () only.
2550
2551         * scripts/*.py: use TARGET_PYTHON iso PYTHON. Backportme.
2552
2553         * make/substitute.make (ATVARIABLES): add TARGET_PYTHON as subst
2554         variable. Backportme.
2555
2556 2006-05-17  Erik Sandberg  <mandolaerik@gmail.com>
2557         
2558         * lily/parser.yy: Change all syntax rules of type Music to SCM type
2559
2560 2006-05-17  Werner Lemberg  <wl@gnu.org>
2561
2562         * lily/lexer.ll (init_signature_has_table): Add
2563         `scm-scm-music-music'.
2564
2565         * lily/parser.yy (MUSIC_FUNCTION_SCM_SCM_MUSIC_MUSIC): New token.
2566         (Generic_prefix_music_scm): Add rule for it.
2567
2568         * lily/quote-iterator.cc (Quote_iterator::process): Handle
2569         `quoted-transposition' property.
2570
2571         * ly/music-functions-init.ly (transposedCueDuring): New function.
2572
2573         * scm/define-music-properties.scm (all-music-properties): Updated.
2574
2575         * Documenation/topdocs/NEWS.itely: Document it.
2576
2577 2006-05-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
2578
2579         * python/lilylib.py (system): move import subprocess to system()
2580         definition. 
2581
2582         * python/convertrules.py (conv): fix convert-ly rules for 2.9.4
2583
2584         * VERSION (PATCH_LEVEL): release 2.9.5
2585         
2586         * Documentation/topdocs/INSTALL.texi (Top): update versions and
2587         build instructions. 
2588
2589         * ly/engraver-init.ly: switch on hairpinToBarline by default.
2590
2591 2006-05-16  Graham Percival  <gpermus@gmail.com>
2592
2593         * Documentation/user/basic-notation.itely: editing from Dave, thanks!
2594
2595         * Documentation/user/ various: minor fixes.
2596
2597 2006-05-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
2598
2599         * Documentation/topdocs/NEWS.tely (Top): add hairpinToBarline feature.
2600
2601 2006-05-16  Mats Bengtsson  <mabe@s3.kth.se>
2602
2603         * Documentation/user/advanced-notation.itely (Instrument names):
2604         Modified obsolete instruction on how to move instrument names away
2605         from the staves. Hmm, at second thought the bug probably has been
2606         solved, so the full bug description should probably be removed.
2607
2608 2006-05-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
2609
2610         * lily/dynamic-engraver.cc (typeset_all): hang ending on
2611         currentCommandColumn. 
2612
2613         * lily/hairpin.cc (print): also add padding for non-neighbor
2614         hairpin bounds.
2615
2616         * scm/define-context-properties.scm
2617         (all-user-translation-properties): add hairpinToBarline
2618
2619         * input/regression/hairpin-to-barline.ly: new file.
2620
2621         * lily/context.cc (internal_send_stream_event): thinko fix.
2622
2623         * lily/tie.cc (set_default_control_points): robustness fix.
2624
2625         * python/musicxml.py (Part.interpret): don't complain about
2626         incomplete measures.
2627
2628         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): only add
2629         new music if last_event_chord() returned None.
2630
2631         * python/musicxml.py (Part.interpret): skip back over chord notes.
2632
2633 2006-05-16  Erik Sandberg  <mandolaerik@gmail.com>
2634         
2635         * lily/percent-repeat-engraver.cc, lily/parser.yy,
2636         lily/define-music-types.cc, lily/percent-repeat-iterator.cc,
2637         lily/slash-repeat-engraver.cc,
2638         lily/include/percent-repeat-iterator.hh: Rework percent repeats:
2639         iterator sends PercentEvents
2640
2641         * lily/time-scaled-music-iterator.cc, lily/tuplet-engraver.cc:
2642         rework tuplets: send start/stop events to engraver
2643
2644         * lily/context.cc, lily/music.cc, lily/context-scheme.cc: Add
2645         dispatchers event-source and events-below to Context
2646         
2647 2006-05-15  Graham Percival  <gpermus@gmail.com>
2648
2649         * Documentation/user/README.txt: update info for doc writers.
2650
2651         * Documentation/user/programming-interface.itely: integrate
2652         Nicolas' fixes for chapter rewrite.
2653
2654         * Documentation/user/ various: minor fixes.
2655
2656 2006-05-15  Han-Wen Nienhuys  <hanwen@lilypond.org>
2657
2658         * lily/clef-engraver.cc: cleanup.
2659
2660         * Documentation/user/GNUmakefile: dist context-example.eps too.
2661
2662         * lily/key-engraver.cc (create_key): use
2663         explicitKeySignatureVisibility for cancellation too. 
2664
2665         * lily/font-config.cc (init_fontconfig): don't close file if
2666         f==NULL. 
2667
2668 2006-05-15  Erlend Aasland  <erlenda@gmail.com>
2669
2670         * Documentation/topdocs/NEWS.tely: niente and rotation news
2671
2672 2006-05-14  Erlend Aasland  <erlenda@gmail.com>
2673
2674         * lily/include/stencil.hh
2675         * lily/stencil.cc (rotate): new function. Makes it possible
2676         to rotate a stencil around a given offset.
2677
2678         * lily/grob.cc (get_print_stencil): add rotation support
2679
2680         * lily/stencil-interpret.cc (interpret_stencil_expression):
2681         add rotation support
2682
2683         * lily/stencil-scheme.cc (ly:stencil-rotate): new function
2684
2685         * scm/define-grob-properties.scm: add 'rotation property
2686
2687         * scm/define-markup-commands.scm: add rotate markup command
2688         
2689         * scm/output-ps.scm: add rotation support in PostScript backend
2690
2691         * scm/output-svg.scm: add rotation support in SVG backend
2692
2693 2006-05-13  Graham Percival  <gpermus@gmail.com>
2694
2695         * Documentation/user/music-glossary.itely: French correction.
2696
2697         * Documentation/user/programming-interface.itely: major
2698         new docs, some reorg, some info from Nicolas.
2699
2700         * Documentation/user/ various: small fixes.
2701
2702 2006-05-12  Mats Bengtsson  <mabe@s3.kth.se>
2703
2704         * Documentation/user/programming-interface.itely (Markup
2705         programmer interface): Remove duplicate text.
2706
2707 2006-05-12  Graham Percival  <gpermus@gmail.com>
2708
2709         * Documentation/user/context-example.eps: new file.
2710
2711         * Documentation/user/changing-defaults.itely: set up file to
2712         use eps image.
2713
2714         * Documentation/user/programming-interface.itely: changes
2715         from mailist.
2716
2717 2006-05-12  Han-Wen Nienhuys  <hanwen@lilypond.org>
2718
2719         * configure.in (LINK_GXX_STATICALLY): python 2.4 req.
2720
2721 2006-05-11  Graham Percival  <gpermus@gmail.com>
2722
2723         * Documentation/user/programming-interface.itely: first round of
2724         editing and merging emails from Nicolas.
2725
2726         * Documentation/user/scheme-tutorial: minor edit.
2727
2728 2006-05-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
2729
2730         * python/musicxml.py (Xml_node.__init__): _attribute_dict stores
2731         XML attributes.
2732         (Xml_node.message): use it.
2733
2734         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): 
2735         oops. Add duration argument.
2736
2737 2006-05-10  Joe Neeman  <joeneeman@gmail.com>
2738
2739         * lily/paper-column-engraver.cc (make_columns):
2740         * scm/define-grobs.scm: Revert my previous change and set the default
2741         in define-grobs.scm instead.
2742
2743 2006-05-09  Graham Percival  <gpermus@gmail.com>
2744         
2745         * Documentation/user/changing-defaults.itely: general editing,
2746         info about \set and \override.
2747
2748         * Documentation/user/tweaking.itely, advanced-notation.itely:
2749         fixes from Dave Luttinen, thanks!
2750
2751 2006-05-09  Joe Neeman  <joeneeman@gmail.com>
2752
2753         * lily/paper-column-engraver.cc (make_columns): By default, a column
2754         needs to be breakable.
2755
2756 2006-05-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
2757
2758         * scripts/musicxml2ly.py (musicxml_clef_to_lily): use new
2759         Attributes methods
2760         (musicxml_time_to_lily): idem
2761         (musicxml_key_to_lily): idem
2762         (instrument_drumtype_dict): dict for supported drumtypes.
2763         (LilyPondVoiceBuilder.__init__): new class: sanely keep track of
2764         moments and pending mm rests
2765         (musicxml_voice_to_lily_voice): rewrite to use LilyPondVoiceBuilder
2766         (musicxml_voice_to_lily_voice): strip KeyChangeEvents for drums.
2767         (musicxml_voice_to_lily_voice): add mode change.
2768         (option_parser): lxml.etree (http://codespeak.net/lxml/) for more
2769         speed and less memory usage (factor 5 to 10).
2770         (convert): write -defs.ly  and driver file separately so people
2771         can script their own part extraction.
2772
2773         * python/musicxml.py (minidom_demarshal_node): new function:
2774         separate minidom handling.
2775         (lxml_demarshal_node): new function: support lxml.etree too.
2776         (Xml_node.message): new function: verbose error message, with XML
2777         path to offending node.
2778         (Attributes.get_measure_length): sane interface to MusicXML attributes.
2779         (Part_list.generate_id_instrument_dict): new method: collect
2780         instrument names, to be able to set drum_type.
2781         (Part.interpret): handle underfull measures
2782         (Part.interpret): assign instrument names.
2783
2784         * python/musicexp.py (Output_printer.close): new method
2785         (MusicWrapper.print_ly): new class: support other modes,
2786         eg. \drummode
2787         (BarCheck.print_ly): new class. Support bar checks, with comments
2788         and fancy barchecks. 
2789         (NoteEvent.__init__): also set drum_type for drum notes.
2790         (MultiMeasureRest.lisp_expression): dump mm rests.
2791
2792         * lily/paper-column-engraver.cc (stop_translation_timestep): set
2793         line-break-permission if forbidBreak is not set.
2794
2795 2006-05-09  Joe Neeman  <joeneeman@gmail.com>
2796
2797         * scm/define-context-properties.scm:
2798         * scm/define-grob-properties.scm:
2799         * scm/define-grobs.scm:
2800         * scm/define-music-display-methods.scm:
2801         * scm/define-music-properties.scm:
2802         * scm/define-music-types.scm:
2803         * scm/music-functions.scm:
2804         * ly/declarations-init.ly:
2805         * lily/include/constrained-breaking.hh:
2806         * lily/system.cc:
2807         * lily/spaceable-grob.cc:
2808         * lily/simple-spacer.cc:
2809         * lily/paper-score.cc:
2810         * lily/paper-column.cc:
2811         * lily/paper-column-engraver.cc:
2812         * lily/item.cc:
2813         * lily/gourlay-breaking.cc:
2814         * lily/constrained-breaking.cc:
2815         * python/convertrules.py:
2816         Change "penalty", "page-penalty" and "breakable" to "line-break-penalty",
2817         "page-break-penalty" and "line-break-permission".
2818         Add "page-break-permission", "page-turn-permission" and "page-turn-penalty".
2819         Replace BreakEvent with LineBreakEvent, PageBreakEvent and PageTurnEvent.
2820
2821         * lily/bar-engraver.cc:
2822         * lily/beam-engraver.cc:
2823         * lily/forbid-break-engraver.cc:
2824         * lily/ligature-engraver.cc:
2825         * lily/paper-column-engraver.cc:
2826         * lily/percent-repeat-engraver.cc:
2827         * lily/score-engraver.cc:
2828         * lily/score-engraver.hh:
2829         * lily/paper-column-engraver.hh:
2830         Inter-engraver communication regarding line breaks is done through context
2831         properties (Score.forbidBreak) instead of function calls.
2832
2833 2006-05-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
2834
2835         * VERSION (PACKAGE_NAME): release 2.9.4
2836
2837 2006-05-08  Graham Percival  <gpermus@gmail.com>
2838
2839         * Documentation/user/working.itely: proofreading from Dave
2840         Luttinen, thanks.
2841
2842         * Doucmentation/user/README.txt: updated with manual style info.
2843
2844         * Documentation/user/ various: trim linewidth to 78 chars.
2845
2846 2006-05-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
2847
2848         * scm/define-grob-properties.scm (all-internal-grob-properties):
2849         remove chord-tremolo property.
2850
2851         * lily/beam.cc (get_beam_segments): don't use stem position as
2852         base for broken ends.
2853
2854 2006-05-06  Graham Percival  <gpermus@gmail.com>
2855
2856         * Documentation/user/putting.itely: proofreading from Dave
2857         Luttinen, thanks!
2858
2859         * Documentation/user/ various: more reorg and clarifications.
2860
2861 2006-05-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
2862
2863         * scm/lily.scm (TEX_STRING_HASHLIMIT): move from framework-texstr.scm.
2864
2865         * ly/music-functions-init.ly: new function featherDurations
2866
2867         * lily/beam.cc: read grow-direction for feathered beaming.
2868
2869         * Documentation/topdocs/NEWS.tely (Top): typo.
2870
2871 2006-05-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
2872
2873         * lily/include/beam.hh (struct Beam_stem_segment): add gapped_ for
2874         tremolo beams.
2875
2876 2006-05-05  Erik Sandberg  <mandolaerik@gmail.com>
2877         * lily/context.cc, lily/global-context.cc: Added 'unique' member,
2878         used by music streams.
2879
2880         * lily/dispatcher.cc, lily/dispatcher-scheme.cc,
2881         lily/stream-event.cc, lily/stream-event-scheme.cc,
2882         lily/listener.cc, lily/scheme-listener.cc,
2883         lily/scheme-listener-scheme.cc, lily/include/dispatcher.hh,
2884         lily/include/stream-event.hh, lily/include/listener.hh,
2885         lily/include/scheme-listener.hh, scm/define-event-classes.scm:
2886         Created data structures for music streams.
2887         
2888 2006-05-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
2889
2890         * lily/beam.cc (get_beam_segments): new function. Reorganise the
2891         construction of a beam. 
2892         (print): rewrite. 
2893
2894         * flower/include/std-vector.hh (default_compare): use only one comparison.
2895
2896         * scm/define-markup-commands.scm (note-by-number): remove debug display.
2897         (note-by-number): further attachment fixes.
2898
2899         * scm/lily-library.scm (ordered-cons): new function.
2900         (interval-index): new function
2901
2902         * lily/note-head-scheme.cc (LY_DEFINE): new file.
2903
2904         * lily/note-head.cc (get_stem_attachment): new function.
2905
2906         * scm/define-markup-commands.scm (note-by-number): read 'style
2907         property. 
2908
2909         * input/regression/markup-note.ly: show note-head style option.
2910
2911         * mf/feta-bolletjes.mf (overdone_heads): fix attachment points for
2912         triangle head.
2913
2914 2006-05-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
2915
2916         * mf/GNUmakefile (NCSB_OTFS): remove old ncsb detection further.
2917
2918         * configure.in (LINK_GXX_STATICALLY): fix for ncsb detection.
2919
2920         * lily/include/constrained-breaking.hh: GCC 4 fix.
2921
2922 2006-05-04  Joe Neeman  <joeneeman@gmail.com>
2923
2924         * lily/simple-spacer.cc: Remove class Simple_spacer_wrapper.
2925         Replace it with functions get_line_forces and get_line_configuration.
2926         (class Simple_spacer): Make data private.
2927         Rewrite compression algorithm to be faster and simpler.
2928
2929         * lily/simple-spacer-scheme.cc (ly_solve_rod_and_spring_problem):
2930         * lily/gourlay-breaking.cc (solve):
2931         * lily/constrained_breaking.cc (space_line):
2932         Change it to the new simple-spacer code.
2933
2934         * lily/paper-score.cc (get_paper_systems):
2935         (Paper_score):
2936         (process):
2937         Delay breaking the systems until they are requested.
2938         (find_break_indices):
2939         Use vsize for indices.
2940         (calc_breaking):
2941         Move the "Calculating line breaks" message here.
2942
2943         * lily/system.cc (pre_processing):
2944         Move the "Calculating line breaks" message away from here.
2945         (break_into_pieces):
2946         Allow multiple calls to this function in sequence (with touching-but-
2947         not-overlapping breakpoints).
2948
2949         * lily/constrained-breaking.cc:
2950         Replace most of the get_XXXX functions with get_line_details.
2951         Only calculate the force for each line. Calculate configurations only
2952         for the lines we will actually use.
2953         Replace cols_ with lines_.
2954
2955 2006-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2956
2957         * mf/GNUmakefile (depth): remove FC_FIND.
2958
2959         * config.make.in (NCSB_SOURCE_FILES): subst NCSB_SOURCE_FILES
2960
2961         * configure.in (LINK_GXX_STATICALLY): call fc-match from within configure.
2962
2963         * scm/framework-ps.scm (write-preamble): new function.
2964         (write-preamble): load mac fonts via fondu, even if gs-font-load
2965         is set.
2966
2967 2006-05-03  Werner Lemberg  <wl@gnu.org>
2968
2969         * mf/GNUmakefile (FC_FIND): Fix typo.
2970
2971 2006-05-03  Erlend Aasland  <erlenda@gmail.com>
2972
2973         * stepmake/stepmake/generic-targets.make (cvs-clean): also remove out-www dirs.
2974
2975 2006-05-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
2976
2977         * stepmake/aclocal.m4: run python-config for crosscompiling
2978         flags. 
2979
2980         * scripts/lilypond-book.py (Lilypond_file_snippet.my_system): add
2981         -f png for HTML, TEXINFO formats. 
2982
2983         * input/tutorial/lbook-html-test.html: new file.
2984
2985         * lily/include/tie-formatting-problem.hh (class
2986         Tie_formatting_problem): index Chord_outline_map by Tuple2 for
2987         [column, direction]. This fixes laissez vibrer ties.
2988  
2989         * flower/include/tuple.hh (struct Tuple2): new file.
2990
2991         * mf/GNUmakefile (FC_FIND): new function. Find ncsb using
2992         $(FCMATCH), only if $(NCSB_DIR) not set. 
2993
2994         * configure.in (LINK_GXX_STATICALLY): only warn if $NCSB_DIR set.
2995
2996         * config.make.in (DOCUMENTATION): set FCMATCH.  
2997
2998         * autogen.sh (srcdir): don't set --with-ncsb-dir. 
2999
3000 2006-05-03  Graham Percival  <gpermus@gmail.com>
3001
3002         * Documentation/user/ various: final round of reorg.
3003
3004         * Documentation/user/instrument-notation.itely: some more
3005         fixes from Eduardo, thanks!
3006
3007 2006-05-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
3008
3009         * VERSION (PACKAGE_NAME): release 2.9.3
3010
3011         * flower/file-path.cc (is_dir): canonicalize file name before stat'ing.
3012
3013         * lily/relocate.cc (framework_relocation): remove old relocation stuff.
3014
3015 2006-05-01  Mats Bengtsson  <mabe@s3.kth.se>
3016
3017         * scm/define-grob-properties.scm (all-user-grob-properties):
3018         Correct typo, thanks to Eduardo.
3019
3020 2006-05-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
3021
3022         * scripts/GNUmakefile (SEXECUTABLES): remove lilypond-ps2png.scm
3023
3024         * buildscripts/lilypond-words.py (F): indent fix.
3025
3026         * input/regression/tie-arpeggio-collision.ly: new file.
3027
3028         * lily/tie-formatting-problem.cc (set_column_chord_outline): new
3029         function: store outlines per column rank.
3030
3031         * lily/include/tie-configuration.hh (class Tie_configuration): add
3032         column_ranks_ to specification and configuration, to distinguish
3033         between ties for different heads in arpegiated chords.
3034
3035         * lily/relocate.cc (framework_relocation): use INSTALLER_PREFIX.
3036
3037         * *.py: more 4 space indents.
3038
3039         * autogen.sh (conf_flags): set sensible default for with-ncsb-dir
3040
3041 2006-05-01  Joe Neeman  <joeneeman@gmail.com>
3042
3043         * scm/lily-library.scm: Fix guile 1.6 compatibility in inf? and nan?
3044
3045 2006-05-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
3046
3047         * buildscripts/pfx2ttf.fontforge (err): create OTF files.
3048
3049         * scripts/abc2ly.py (dump_score): indent of 4 for python code. 
3050
3051         * configure.in (LINK_GXX_STATICALLY): remove locate() call.
3052
3053 2006-04-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3054
3055         * python/convertrules.py (conv): indent 4 for python files.
3056
3057 2006-04-29  Mats Bengtsson  <mabe@s3.kth.se>
3058
3059         * Documentation/user/changing-defaults.itely (Creating contexts):
3060         Clarify \new semantics.
3061
3062 2006-04-28  Graham Percival  <gpermus@gmail.com>
3063
3064         * Documentation/user/ various: major new sections in the
3065         Learning manual, slight reorg elsewhere.
3066
3067 2006-04-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
3068
3069         * mf/GNUmakefile (MFTRACE_FLAGS): add $(outdir) to $(ENCODING_FILE) 
3070
3071         * scm/framework-ps.scm (output-framework): remove PageMedia
3072
3073 2006-04-27  Graham Percival  <gpermus@gmail.com>
3074
3075         * Documentation/user/ tweaks.itely, working.itely: new
3076         files, being more advanced "learning manual" chapters.
3077
3078         * Documentation/user/ tutorial, putting, lilypond: reorg.
3079
3080 2006-04-26  Graham Percival  <gpermus@gmail.com>
3081
3082         * input/regression/lyric-combine-polyphonic.ly: fixed test
3083         (no more "can't find context `one'" error).
3084
3085 2006-04-25  Joe Neeman <joeneeman@gmail.com>
3086
3087         * lily/stem-tremolo.cc (print): fix whole note tremolo placement
3088
3089         * input/regression/stem-tremolo.ly: add 2 more whole note examples
3090         
3091 2006-04-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3092
3093         * lily/relocate.cc (read_relocation_dir): new function.
3094
3095 2006-04-26  Graham Percival  <gpermus@gmail.com>
3096
3097         * Documentation/user/instrument-notation.itely: a few more fixes
3098         from Eduardo, thanks!
3099
3100         * Documentation/user/README.txt: new file; contains info on
3101         style that used to be in lilypond.tely.
3102
3103         * Documentation/user/ various: first round of doc reorg.
3104
3105         * Documentation/user/baer-flat-bw.png: remove alpha bit from
3106         graphic; this probably causes problems on some pdf
3107         viewers, notably Adobe Acrobat.
3108
3109 2006-04-24  Graham Percival  <gpermus@gmail.com>
3110
3111         * Documentation/user/instrument-notation.itely: many alterations
3112         to Vocal music, from Eduardo Viera.
3113
3114 2006-04-23  Graham Percival  <gpermus@gmail.com>
3115
3116         * Documentation/user/instrument-notation.itely: fix \new
3117         instead of \context problem.
3118
3119 2006-04-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3120
3121         * lily/relocate.cc (expand_environment_variables): new function.
3122         (read_line): id.
3123         (read_relocation_file): id.
3124
3125         * scm/stencil.scm (eps-file->stencil): fix EPS PS embedding code 
3126
3127 2006-04-21  Erlend Aasland  <erlenda@gmail.com>
3128
3129         * ly/engraver-init.ly: remove old comments from TabVoice
3130
3131 2006-04-20  Graham Percival  <gpermus@gmail.com>
3132
3133         * Documentation/user/instrument-notation.itely: added Erlend's
3134         latest doc patch, thanks!
3135
3136 2006-04-19  Erlend Aasland <erlenda@gmail.com>
3137
3138         * lily/include/slur.hh:
3139         * lily/slur.cc:
3140         * lily/phrasing-slur-engraver.cc:
3141         * lily/slur-engraver.cc: Fix 'cut & paste' code by merging
3142         acknowledge_extra_object () from Phrasing_slur_engraver:: and
3143         Slur_engraver:: and putting it in
3144         Slur::auxiliary_acknowledge_extra_object ().
3145
3146         * ps/music-drawing-routines.ps (draw_dashed_slur): fix another bug
3147
3148         * lily/note-collision.cc: fix a comment
3149
3150 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
3151
3152         * stepmake/bin/add-html-footer.py: fix footer position in
3153         generated html files: before </body> and </html> tags.
3154
3155 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
3156
3157         * scripts/GNUmakefile: revert last "fix", which rather broke make.
3158         Earlier successive `make' commands finally compiled ok.
3159
3160         * Documentation/topdocs/INSTALL.texi: require mftrace 1.1.19.
3161
3162 2006-04-18  Erlend Aasland <erlenda@gmail.com>
3163
3164         * lily/include/stem-tremolo.hh:
3165         * lily/stem-tremolo.cc: move rotated_box () to Lookup:: and update
3166         callers.
3167
3168         * lily/lookup.cc:
3169         * lily/include/lookup.hh: add rotated_box ()
3170
3171 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
3172
3173         * scripts/GNUmakefile: bugfix: run help2man only after scripts have 
3174         been generated. Fixes "can't get `--help'" bug after make clean.
3175
3176         * THANKS: alphabetize contributors.
3177
3178 2006-04-17  Graham Percival  <gpermus@gmail.com>
3179
3180         * Documentation/user/instrument-notation.itely: added Erlend's
3181         tabs and banjo doc patch.  Thanks!
3182
3183 2006-04-17  Erlend Aasland  <erlenda@gmail.com>
3184
3185         * scm/define-grobs.scm: fix stem-attachment for tablature note heads.
3186
3187         * ps/music-drawing-routines.ps (draw_dashed_line): fix dash pattern bug.
3188
3189         * scm/output-lib.scm: add some more predefined string tunings.
3190
3191         * Documentation/user/instrument-notation.itely: and doc them.
3192
3193 2006-04-16  Jürgen Reuter  <reuter@ipd.uka.de>
3194
3195         * ly/engraver.ly: Remove obsolete comments.
3196
3197         * ly/gregorian-init.ly: Define default layout block.
3198
3199         * input/puer-fragment.ly: Updated and extended.
3200
3201 2006-04-15  Jan Nieuwenhuizen  <janneke@gnu.org>
3202
3203         * lily/lily-parser-scheme.cc: Use them to fix --output=DIR/BASE
3204         pdf conversion behaviour.
3205
3206         * flower/file-name.cc (dir_name)
3207         (get_working_directory): Move from relocate.cc.
3208
3209         * lily/relocate.cc (setup_paths): Remove rogue stat calls.
3210         
3211         * lily/relocate.cc: Encapsulate sys/stat.h in
3212         HAVE_STAT_H.
3213
3214 2006-04-14  Graham Percival  <gpermus@gmail.com>
3215
3216         * Documentation/user/ various: small updates from Cameron
3217         and Juergen, thanks!
3218
3219         * Documentation/user/ various: small updates of my own.
3220
3221         * THANKS: 2.7 -> 2.8.
3222
3223 2006-04-11  Graham Percival  <gpermus@gmail.com>
3224
3225         * scm/define-context-properties.scm: typo.
3226
3227         * Documentation/user/ : many more small updates.
3228
3229 2006-04-13  Jürgen Reuter  <reuter@ipd.uka.de>
3230
3231         * scm/define-music-types.scm: disposed "docme".
3232
3233 2006-04-11  Erlend Aasland  <erlenda@gmail.com>
3234
3235         * lily/hairpin.cc: make niente circles a bit smaller.
3236
3237 2006-04-10  Erlend Aasland  <erlenda@gmail.com>
3238
3239         * mf/GNUmakefile: remove redundant mftrace check. Also remove
3240         get-pfa and get-*-fonts targets.
3241
3242 2006-04-10  Graham Percival  <gpermus@gmail.com>
3243
3244         * THANKS, Documentation/user/ basic-notation, advanced-notation,
3245         music-glossary, programming-interface: more minor fixes
3246         from mailist.
3247
3248         * scm/define-grob-properties.scm: clarified direction, thanks Mats!
3249
3250         * scm/define-context-properties.scm: another old \property update.
3251         This time tested for compiling!
3252
3253 2006-04-10  Erlend Aasland  <erlenda@gmail.com>
3254
3255         * mf/GNUmakefile: fix for mftrace version >= 1.2.0
3256
3257 2006-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
3258
3259         * scm/define-context-properties.scm (all-user-translation-properties): 
3260         * Documentation/user/global.itely (Page formatting): Compile fix.
3261
3262 2006-04-09  Mats Bengtsson  <mabe@s3.kth.se>
3263
3264         * Documentation/user/advanced-notation.itely (Polymetric
3265         notation): Update the example to use the "+" symbol and add link
3266         to input/test/compound-time.ly.
3267
3268 2006-04-08  Graham Percival  <gpermus@gmail.com>
3269
3270         * scm/define-grob-properties.scm: clarify docs for #'direction.
3271
3272         * scm/define-context-properties.scm: update old \property override.
3273
3274         * Documentation/user/ advanced-notation, global, lilypond-book:
3275         more minor doc updates.
3276
3277 2006-04-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
3278
3279         * lily/parser.yy (Generic_prefix_music_scm): append lists, not objects.
3280
3281         * scm/backend-library.scm (search-gs): oops.
3282
3283 2006-04-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
3284
3285         * scripts/lilypond-book.py (output): use base, not filename for href.
3286
3287         * scm/backend-library.scm: only look for gs.
3288
3289         * scripts/lilypond-book.py (output): fix printfilename.
3290
3291         * lily/parser.yy (music_function_musicless_prefix): fold together
3292         definitions of signature (SCM*) (Music|post_event|chord_body_element)
3293
3294         * lily/slur.cc (print): only set font-size if not set yet.
3295
3296         * lily/slur-configuration.cc (add_score): improved layout of debug
3297         scoring output.
3298
3299 2006-04-05  David Feuer  <David.Feuer@gmail.com>
3300
3301         * music-drawing-routines.ps (draw_round_box): removed testing artifact.
3302         (draw_circle): Hopefully fixed regression.
3303         Improved documentation for several procedures.
3304         
3305 2006-03-04  Werner Lemberg  <wl@gnu.org>
3306
3307         * ly/engraver-init.ly (\Score): Add beam-event to quotedEventTypes.
3308
3309 2006-04-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
3310
3311         * scripts/musicxml2ly.py (bindir): add dynamic
3312         relocation. 
3313
3314 2006-04-04  Graham Percival  <gpermus@gmail.com>
3315
3316         * Documentation/user/ basic-notation, advanced-notation, putting,
3317         instrument-notation, invoking, lilypond, THANKS: another ream of small
3318         fixes from the Doc Helpers.
3319
3320 2006-04-03  David Feuer  <David.Feuer@gmail.com>
3321
3322         * music-drawing-routines.ps: remove superfluous gsave/grestore pairs.
3323
3324         * lilyponddefs.ps (set-ps-scale-to-lily-scale): Fixed code duplication.
3325
3326         * Cleaned up interfaces between PostScript and Scheme, and moved
3327         computations from PostScript to Scheme:
3328
3329         * music-drawing-routines.ps
3330         (*SF, stroke_and_fill): new procedures.  Replaced stroke and fill
3331         with stroke_and_fill throughout.
3332         (euclidean_length, print_letter, draw_box): Deleted unused
3333         procedures.  If someone needs draw_box, implement it using
3334         draw_round_box; don't duplicate code.
3335         (print_glyphs, draw_round_box, draw_polygon, draw_repeat_slash):
3336         Refactored/cleaned up interfaces.
3337         (mark_URI): Moved.
3338
3339         * output-ps.scm: reordered arguments to PostScript functions to
3340         match new interfaces
3341         (glyph-string): Rewrote glyph-string.
3342         (grob-cause): Replaced string-append with format.
3343         (repeat-slash): Rewrote to do computation here.
3344         (round-filled-box): Rewrote to do computation here.
3345
3346 2006-04-04  Erlend Aasland  <erlenda@gmail.com>
3347
3348         * stepmake/stepmake/generic-targets.make: add cvs-clean target
3349
3350         * stepmake/stepmake/toplevel- targets.make: print help info about
3351         cvs-clean
3352
3353 2006-04-03  Erlend Aasland  <erlenda@gmail.com>
3354
3355         * input/regression/hairpin-circled.ly: new file
3356
3357 2006-04-03  Erlend Aasland  <erlenda@gmail.com>
3358
3359         * lily/hairpin.cc (print): add support for circled tip
3360
3361         * scm/define-grob-properties.scm: add circled-tip parameter
3362
3363         * scm/define-grobs.scm: init circled-tip to false
3364         
3365 2006-04-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
3366
3367         * scm/music-functions.scm (quote-substitute): set
3368         iterators-ctor. 
3369
3370 2006-03-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
3371
3372         * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): set
3373         BSTINPUTS. 
3374
3375         * Documentation/topdocs/AUTHORS.texi (Top): add David Feuer.
3376
3377         * scm/output-ps.scm (glyph-string): revert cid selectfont.
3378
3379 2006-03-31  David Feuer  <david.feuer@gmail.com>
3380         
3381         * scm/framework-ps.scm:
3382         
3383         * scm/output-ps.scm: glyph-string now produces smaller, more
3384         readable, and probably faster PostScript.  Several findfont
3385         scalefont setfont instances changed to selectfont
3386         Hacked-up string-appends changed to formats.
3387
3388         * ps/music-drawing-routines.ps: add print_letter, print_glyphs.
3389         
3390 2006-03-30  Graham Percival  <gpermus@gmail.com>
3391
3392         * scm/lily-library.scm: make "no version" warning message more polite.
3393
3394         * lily/music.cc: add double quotes to failed octave check.
3395
3396         * Documentation/user/ advanced-notation, changing-defaults,
3397         instrument-notation, invoking, music-glossary: whole bunch of minor
3398         fixes from mailist.
3399
3400 2006-03-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
3401
3402         * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): use
3403         $(buildscriptdir) iso. depth.
3404
3405         * VERSION (PACKAGE_NAME): release 2.9.1
3406
3407 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
3408
3409         * lily/pango-font.cc (pango_item_string_stencil): more robustness.
3410
3411         * VERSION (PATCH_LEVEL): bump version number.
3412
3413         * flower/include/guile-compatibility.hh (scm_from_uint32): add
3414         scm_from_uint32 ()
3415
3416         * lily/pango-font.cc (pango_item_string_stencil): use
3417         scm_from_uint32 ()
3418
3419         * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
3420         $(outdir)/emmentaler-%.svg): remove canary.
3421
3422         * lily/pango-font.cc (pango_item_string_stencil): only use uXXX
3423         glyphnames if we have a ttf font.
3424
3425 2006-03-30  Mats Bengtsson  <mabe@s3.kth.se>
3426
3427         * Documentation/user/advanced-notation.itely (Font selection):
3428         Corrected reference to the font-family-override.ly example.
3429
3430 2006-03-30  Joe Neeman  <joeneeman@gmail.com>
3431         
3432         * lily/chord-tremolo-engraver.cc (acknowledge_stem): set the
3433         stem-tremolo object in the stem (or else the stem might not be
3434         long enough).
3435
3436 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
3437
3438         * lily/ttf.cc (print_trailer): only print existing glyphs.
3439
3440 2006-03-30  Joe Neeman  <joeneeman@gmail.com>
3441
3442         * lily/stem-tremolo.cc (print): for whole notes (and breves, etc.)
3443         position the tremolo based on the position of the notehead.
3444
3445         * input/regression/stem-tremolo.ly: add example of unbeamed eighth
3446         notes and update the texidoc line with the new positioning rules.
3447         
3448 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
3449
3450         * lily/ttf.cc (print_trailer): don't always use uXXX glyphname.
3451
3452         * scripts/lilypond-book.py (Module): set default for linewidth if
3453         preamble not found.
3454
3455 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
3456
3457         * VERSION (PACKAGE_NAME): release 2.9.0.
3458
3459         * input/regression/stem-tremolo-position.ly: new file.
3460
3461         * lily/stem-tremolo.cc: remove Stem_tremolo::dim_callback
3462
3463 2006-03-28  Joe Neeman  <joeneeman@gmail.com>
3464
3465         * lily/stem-tremolo.cc (print): position
3466         the tremolo depending only on the end of the stem
3467         and not on the notehead
3468         (raw_stencil): center, on the middle staff line, the
3469         flag that is closest to the end of the stem (previously
3470         the bottom flag)
3471         (calc_width): add this callback to shorten a tremolo when
3472         it is beamed or it is stemup with a flag
3473         (style): add this callback to make a tremolo rectangular when
3474         it is beamed or it is stemup with a flag
3475         (rotated_box): this is like Lookup::beam but makes a rotated
3476         rectangle instead of a parallelogram
3477
3478         * lily/stem.cc (calc_stem_info): make sure the stem
3479         is long enough to fit the tremolo
3480         (calc-length): reduce the length of tremolo stems since the
3481         tremolo code is now capable of better positioning
3482
3483         * scm/define-grobs.scm: make calc_width the default beam-width
3484         callback for stem-tremolo and add the style callback
3485                 
3486 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
3487
3488         * lily/tuplet-bracket.cc (calc_control_points): handle suicide
3489         case. 
3490
3491 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
3492
3493         * lily/ttf.cc (make_index_to_charcode_map): restore old
3494         cmap. 
3495
3496 2006-03-28  Werner Lemberg  <wl@gnu.org>
3497
3498         * lily/pango-font.cc (get_unicode_name): Fix `uXXXXX' glyph names.
3499
3500 2006-03-28  Graham Percival  <gpermus@gmail.com>
3501
3502         * THANKS: update for 2.9, add section for Documentation helpers.
3503
3504         * Documentation/topdocs/NEWS.tely: compile fix.
3505
3506         * Documentation/user/ basic-notation, global, advanced-notation,
3507         examples.itely: minor fixes from mailist.
3508
3509 2006-03-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
3510
3511         * mf/feta-bolletjes.mf: match width of solfa notes with normal
3512         note heads. 
3513
3514         * lily/ttf.cc (print_trailer): use it.
3515
3516         * lily/pango-font.cc (get_unicode_name): new function.
3517
3518         * lily/ttf.cc (make_index_to_charcode_map): move function from
3519         open-type-font.cc
3520         (print_trailer): substitute uniXXXX name if applicable. 
3521
3522         * lily/pango-font.cc (get_index_to_charcode_map): new function.
3523         (pango_item_string_stencil): use it to generate uniXXXX names.
3524
3525         * mf/feta-bolletjes.mf (overdone_heads): add small style (ugly)
3526         note heads, for uniform widths in shape note output.
3527         (overdone_heads): hmm. remove them again.
3528
3529         * scripts/lilypond-book.py (output): add links to filenames.
3530
3531         * Documentation/topdocs/INSTALL.texi (Top): update versions.
3532
3533         * lily/note-collision.cc (get_clash_groups): only consider when
3534         Note_column::dir <> CENTER. 
3535
3536         * scripts/lilypond-book.py (get_option_parser): init output_name
3537         to ''. 
3538
3539 2006-03-24  Graham Percival  <gpermus@gmail.com>
3540
3541         * Documentation/topdocs/NEWS.tely: add @end itemize
3542
3543         * Documentation/user/ global, advanced-notation: minor
3544         stuff from mailist.
3545
3546 2006-03-23  Graham Percival  <gpermus@gmail.com>
3547
3548         * Documentation/user/ lilypond.tely, music-glossary,
3549         preface: housekeeping; 2005->2006, remove "notes for 2.6"
3550
3551 2006-03-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
3552
3553         * mf/GNUmakefile: don't install .enc files.
3554
3555         * Documentation/topdocs/NEWS.tely: clear for 2.9 cycle.
3556
3557         * VERSION (PATCH_LEVEL): bump to 2.9.0
3558
3559 2006-03-22  Graham Percival  <gpermus@gmail.com>
3560
3561         * Documentation/user/advanced-notation.itely: minor fixes
3562         from mailist.
3563
3564 2006-03-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
3565
3566         * Documentation/topdocs/AUTHORS.texi (Top): add Joe Neeman.
3567
3568         * branch lilypond_2_8
3569
3570 2006-03-22  Han-Wen Nienhuys  <lilydev@localhost.localdomain>
3571
3572         * scripts/lilypond-book.py (samefile): new function, for windoze
3573         compatibility.
3574
3575 2006-03-21  Graham Percival  <gpermus@gmail.com>
3576
3577         * ly/engraver-init.ly: add info about StaffGroup.
3578
3579 2006-03-21  Han-Wen Nienhuys  <lilydev@localhost.localdomain>
3580
3581         * input/regression/stem-direction-context.ly: idem.
3582
3583         * Documentation/topdocs/NEWS.tely (Top): fix interpolation example.
3584
3585         * THANKS: add Mats.
3586
3587         * input/regression/page-layout-twopass.ly: comment out \markup so
3588         tweak-file is left.
3589
3590         * lily/instrument-name-engraver.cc (finalize): add to instrument
3591         name global System. This also fixes chopped instrument names, but
3592         doesn't crash when there are slurs/beams.
3593
3594         * lily/slur-configuration.cc (add_score): disallow negative slur
3595         scores.
3596         
3597 2006-03-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3598
3599         * scm/framework-ps.scm (dump-stencil-as-EPS): remove debugging code.
3600
3601         * lily/instrument-name-engraver.cc (process_music): kludge: add
3602         InstrumentName spanner to axis group of left bound. Fixes chopped
3603         off instrument names in EPS images.
3604
3605         * input/regression/lyric-hyphen-retain.ly: elaborate explanation.
3606
3607         * scripts/abc2ly.py (option_parser): update to 2.7.40
3608
3609 2006-03-20  Graham Percival  <gpermus@gmail.com>
3610
3611         * THANKS: move small doc contributors to SUGGESTIONS.
3612
3613         * Documentation/user/ basic-notation, advanced-notation,
3614         global: small changes from mailist.
3615
3616 2006-03-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3617
3618         * Documentation/user/advanced-notation.itely (Text marks): update
3619         for new rehearsalMarkAlignSymbol convention.
3620
3621         * VERSION (PATCH_LEVEL): bump version.
3622
3623         * input/test/instrument-name-align.ly: new file.
3624
3625         * scm/define-markup-commands.scm (hcenter-in): add hcenter-in.
3626
3627         * input/test/instrument-name-align.ly: new file. Document how to
3628         align instrument names.
3629
3630         * lily/mark-engraver.cc: remove properties.
3631
3632         * scm/define-context-properties.scm
3633         (all-user-translation-properties): remove align symbol properties
3634         for barnumber/reh. mark.
3635
3636         * lily/break-align-interface.cc (self_align_callback): new
3637         interface, new function. Look at complete alignment. This handles
3638         tunable break alignments in case break-align-symbols are missing.
3639
3640         * lily/bar-number-engraver.cc (acknowledge_break_alignment): new function
3641
3642         * lily/mark-engraver.cc (acknowledge_break_alignment): new function.
3643
3644         * python/convertrules.py (conv): mark/bar number alignment rule.
3645
3646         * lily/break-align-interface.cc (calc_positioning_done): also
3647         store offset from last visible break-alignment to its
3648         neighbor. This makes alignment on non-visible objects more reliable.
3649
3650         * po/lilypond.pot (Module): ran po-replace.
3651
3652         * input/regression/tie-single-manual.ly (Module): new file.
3653
3654         * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
3655         look at has_manual_position_.
3656         (from_ties): set has_manual_position_ if tie has staff-position set.
3657
3658         * lily/tuplet-bracket.cc (calc_positions): idem.
3659
3660         * lily/tuplet-number.cc (print): don't print tupletnumber if it
3661         doesn't span time.
3662
3663 2006-03-19  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3664
3665         * scm/define-markup-commands.scm (smallCaps): new markup command
3666         for turning a text to small caps using smaller font size and upper
3667         casing.
3668
3669 2006-03-17  Graham Percival  <gpermus@gmail.com>
3670
3671         * Documentation/user/ examples, instrument-notation,
3672         advnaced-notation: minor fixes from mailist.
3673
3674 2006-03-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3675
3676         * Documentation/user/tutorial.itely (First steps): change example
3677         to verbatim.  
3678
3679 2006-03-17  Graham Percival  <gpermus@gmail.com>
3680
3681         * Documentation/user/ examples, advanced: minor changes from mailist.
3682
3683         * THANKS: add Geoff Horton, for documentation stuff.
3684
3685 2006-03-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3686
3687         * python/lilylib.py (system): revert have_select kludge.
3688
3689         * Documentation/user/tutorial.itely (Commenting input files):
3690         update version numbers in doc. 
3691
3692         * scm/define-grob-interfaces.scm (multi-measure-interface): add
3693         bound-padding to multi-measure-interface
3694
3695 2006-03-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3696
3697         * input/test/engraver-example.ily: update version number.
3698
3699         * VERSION (PACKAGE_NAME): release 2.7.39
3700
3701         * lily/note-spacing.cc (get_spacing): heighten threshold where
3702         accidentals/arpeggios influence previous spacing fully.
3703
3704         * lily/rest.cc (y_offset_callback): only use direction if
3705         staff-position wasn't set before.
3706
3707         * lily/bar-number-engraver.cc: add support for
3708         barNumberAlignSymbol. 
3709         add ADD_ACKNOWLEDGER() call for break_aligned. Fixes bar-number-breathe
3710
3711         * lily/pointer-group-interface.cc (set_ordered): new function. 
3712         (add_unordered_grob): new function.
3713
3714         * lily/grob-array.cc (Grob_array): grob-arrays are always assumed
3715         to ordered, unless the opposite has been proved.  This fixes
3716         random reordering of large object groups across linebreaks,
3717         eg. beams.
3718
3719         * lily/main.cc (do_chroot_jail): printf format fix.
3720
3721         * lily/tie-formatting-problem.cc (generate_configuration):
3722         multiply y-shift for dot with direction.
3723  
3724         * scm/define-markup-commands.scm (note-by-number): put (magstep
3725         size) in y-attach too.
3726
3727         * Documentation/topdocs/NEWS.tely (Top): show override.
3728
3729         * scm/define-grobs.scm (all-grob-descriptions): reinstate neutral
3730         direction for stems.
3731         
3732 2006-03-15  Graham Percival  <gpermus@gmail.com>
3733
3734         * Documentation/user/ changing-defaults, global: minor
3735         fixes from mailist.
3736
3737 2006-03-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3738
3739         * lily/lexer.ll (Lily_lexer): bump required version to 2.7.38
3740
3741         * lily/spacing-spanner.cc (musical_column_spacing): crude fix for
3742         breakable items after uniformly stretched notes.
3743
3744         * lily/tie-formatting-problem.cc (set_chord_outline): initialize
3745         outline with outer edge of note heads. This prevents infinity
3746         problems with tied whole notes.
3747
3748         * scripts/lilypond-book.py (do_file): use os.popen
3749
3750         * python/convertrules.py (conv): add rule for Stem #'beamed-*
3751
3752 2006-03-14 Erik Sandberg  <mandolaerik@gmail.com>
3753
3754         * Documentation/user/invoking.itely: Add ragged-right to bug report
3755         guidelines.
3756
3757 2006-03-14  Graham Percival  <gpermus@gmail.com>
3758
3759         * Documentation/user/global.itely: small fix from mailist.
3760
3761 2006-03-14  Mats Bengtsson  <mabe@s3.kth.se>
3762
3763         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use the
3764         file descriptor returned by tempfile.mkstemp() when writing
3765         to tmpfile and closing it. Solves problem with unlink(tmpfile)
3766         on mingw.
3767
3768 2006-03-14  Jan Nieuwenhuizen  <janneke@gnu.org>
3769
3770         * po/fi.po: newline bugfix.
3771
3772 2006-03-12  Jan Nieuwenhuizen  <janneke@gnu.org>
3773
3774         * scm/paper.scm (paper-alist): Rounding fixes.
3775
3776 2006-03-13  Graham Percival  <gpermus@gmail.com>
3777
3778         * Documentation/user/ changing-defaults, instrument-notation,
3779         tutorial: small fixes from mailist, mostly from Mats.  Thanks!
3780
3781 2006-03-13 Heikki Junes  <hjunes@cc.hut.fi>
3782
3783         * po/fi.po: update.
3784
3785 2006-03-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3786
3787         * stepmake/bin/add-html-footer.py (mail_address_url): don't add
3788         mailto: to http:// 
3789
3790         * python/lilylib.py (print_environment): move ps_page_count to
3791         lilypond-book.py
3792
3793 2006-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3794
3795         * Documentation/user/music-glossary.tely (G clef): fix clef alignments.
3796
3797         * scm/framework-ps.scm (embed-document): new function. Use to
3798         embed PFA files.
3799
3800         * ly/engraver-init.ly: init rehearsalMarkAlignSymbol to staff-bar.
3801
3802 2006-03-12  Mats Bengtsson  <mabe@s3.kth.se>
3803
3804         * Documentation/user/instrument-notation.itely (Setting simple
3805         songs): Added \book{...} around the full example, so the separate
3806         markups are included in the printed example. 
3807
3808 2006-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3809
3810         * scripts/lilypond-book.py (get_latex_textwidth): explicitly close
3811         tmphandle.
3812
3813         * python/lilylib.py (system): rewrite system() using
3814         subprocess. Remove >& redirection trickery.
3815
3816 2006-03-11  Graham Percival  <gpermus@gmail.com>
3817
3818         * Documentation/user/ changing-defaults, global, scheme-tutorial,
3819         notation-appendices.itely: minor fixes from mailist.
3820
3821 2006-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3822
3823         * Documentation/user/GNUmakefile ($(outdir)/lilypond.html):
3824         unsplit man also needs images.
3825
3826         * tex/texinfo.tex (sectionheading, q.v.): relax after \char'15.
3827
3828         * VERSION (PACKAGE_NAME): 2.7.38 released.
3829
3830 2006-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3831
3832         * scripts/lilypond-book.py (get_latex_textwidth): look for latex
3833         log in output dir.
3834
3835 2006-03-08  Johannes Schindelin  <Johannes.Schindelin@gmx.de>
3836
3837         * lily/audio-column.cc, lily/score-performer.cc: MIDI output now
3838         respects the Score.skipTypesetting property.
3839         
3840 2006-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3841
3842         * scm/framework-ps.scm (ps-embed-cff): no Setup section in
3843         Prolog. No %%EOF after CFF file.
3844
3845 2006-03-08  Joe Neeman  <joeneeman@gmail.com>
3846         
3847         * lily/constrained-breaking.cc (get_max_systems): used to return a
3848         much too big value
3849         (combine_demerits): use pointers to reduce copying data
3850         (calc_subproblem): idem
3851         (get_page_penalty): add page turn penalties
3852         
3853 2006-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3854
3855         * Documentation/user/invoking.itely (Invoking lilypond): better
3856         explanation of -e usage.
3857
3858         * lily/main.cc (main_with_guile): don't append to
3859         init_scheme_code_string
3860
3861         * tex/texinfo.tex (sectionheading, q.v.): don't center @image.
3862
3863         * Documentation/user/invoking.itely: add note about MacOS X scripts.
3864
3865         * scripts/convert-ly.py (do_options): don't print help for
3866         --show-rules rule.
3867
3868         * tex/texinfo.tex: patch texinfo.tex to leave single quotes in
3869         @code and @example. Update from texinfo.tex from CVS.
3870
3871 2006-03-08  Graham Percival  <gpermus@gmail.com>
3872
3873         * Documentation/user/scheme-tutorial.itely: clarifies distances
3874         measured in staff-spaces.
3875
3876 2006-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3877
3878         * lily/slur.cc (outside_slur_callback): only calculate offsets if
3879         consider[k] is true.
3880
3881         * scm/output-ps.scm (grob-cause): put numbers to ~$ (Thanks Johannes!)
3882
3883         * lily/spacing-basic.cc (standard_breakable_column_spacing): also
3884         consider columns that have originals.  Unifies spacing for mm
3885         rests around line breaks.
3886
3887         * lily/multi-measure-rest.cc (set_spacing_rods): read bound-padding.
3888         (set_text_rods): idem.
3889         (calculate_spacing_rods): new function: share code between
3890         set_text_rods and set_spacing_rods.
3891         (set_text_rods): take extents of bounds into account.  
3892
3893 2006-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3894
3895         * Documentation/user/basic-notation.itely (Writing music in
3896         parallel): don't use relative.
3897
3898 2006-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3899
3900         * ly/music-functions-init.ly (Module): add shiftDurations
3901
3902         * ly/drumpitch-init.ly (drumPitchNames): add tamtam.
3903
3904         * scm/paper.scm (paper-alist): no decimals for Ax paper sizes. 
3905
3906         * ly/engraver-init.ly: init vocalName to nil.
3907
3908 2006-03-05 Erik Sandberg  <mandolaerik@gmail.com>
3909
3910         * scm/music-functions.scm (music->make-music): bugfix,
3911         KeyChangeEvents are now handled correctly.
3912
3913         * scripts/lilypond-book.py: Add --debug option.
3914
3915 2006-03-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3916
3917         * python/lilylib.py: add tempfile.
3918
3919 2006-03-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3920
3921         * VERSION (PACKAGE_NAME): release 2.7.37
3922
3923         * python/lilylib.py (ps_page_count): remove make_ps_images().
3924         (ps_page_count): remove mkdir_p
3925         (system): remove cleanup_temp.
3926         (exit): remove lilypond_version_(check)
3927         (error_log): remove pseudo_filter_p
3928         remove read_pipe
3929         remove cp_to_dir
3930         remove identify
3931
3932         * scripts/lilypond-book.py (Lilypond_snippet.compose_ly): don't
3933         use __main__
3934
3935         * lily/accidental-engraver.cc (make_standard_accidental): only add
3936         support for side-axis is X_AXIS. Fixes text-spacing-accidental.ly
3937
3938         * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
3939         $(outdir)/emmentaler-%.svg): rewrite without functions; too many
3940         Make incompatibilities.
3941
3942         * scm/output-ps.scm (grob-cause): replace backslashes by /
3943         (glyph-string): use ~$ for less decimals for glyph-string and grob-cause.
3944
3945 2006-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
3946
3947         * cygwin/GNUmakefile: Install fixes.
3948
3949         * scripts/GNUmakefile (SEXECUTABLES): Install fix: remove mup2ly.
3950
3951         * lily/note-head.cc (head::get_balltype): Compile fix.
3952
3953         * flower/file-name.cc (dos_to_posix): Flower string fix.
3954
3955 2006-03-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3956
3957         * python/lilylib.py: pychecker cleanups.
3958
3959         * scripts/lilypond-book.py
3960         (Lilypond_snippet.output_print_filename): pychecker cleanups
3961
3962         * scripts/midi2ly.py (Key.dump): pychecker cleanups.
3963
3964         * python/lilylib.py (underscore): remove identify() , warranty()
3965
3966         * ps/music-drawing-routines.ps: change Border routine for GSView
3967         compatibility.
3968
3969         * lily/stem.cc (height): use quantize-positions.  This triggers
3970         set_stem_lengths, so scripts on beamed stems are handled correctly.
3971
3972         * lily/side-position-interface.cc (aligned_side): check if edges
3973         of script are inside staff. Fixes accent of edge of the staff.
3974
3975         * input/regression/staccato-pos.ly: more examples.
3976
3977         * stepmake/aclocal.m4 (depth): fix bashism.
3978
3979         * lily/lyric-combine-music-iterator.cc: move from
3980         new-lyric-combine-iterator.cc
3981         (process): add pending_grace_lyric_ member to delay lyrics on
3982         grace notes.
3983
3984         * lily/system-start-text.cc (print): suicide if we don't have any
3985         elements. Fixes hara kiri'd instrument names.
3986
3987         * scripts/mup2ly.py (Module): remove.
3988
3989 2006-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3990
3991         * Documentation/user/global.itely (A single music expression):
3992         close @lilypond properly
3993
3994         * lily/volta-bracket.cc (modify_edge_height): change from
3995         after_line_breaking_callback. Suicide last bracket if appropriate.
3996  
3997         * python/lilylib.py: strip getopt support
3998
3999         * scripts/etf2ly.py (do_options): use optparse
4000
4001         * scripts/midi2ly.py: optparse, strip lilylib copy. 
4002
4003         * scripts/abc2ly.py (voices): use optparse.
4004
4005         * stepmake/stepmake/generic-vars.make: new function absdir.
4006
4007         * scripts/convert-ly.py (bindir): use optparse, argv[0] relocation.
4008
4009         * scripts/lilypond-book.py (find_file): use global_options for
4010         include path
4011
4012         * scm/ps-to-png.scm (ps-page-count): prevent null characters
4013         entering C code.
4014
4015 2006-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4016
4017         * python/lilylib.py (get_global_option): ughness for extracting
4018         global options from lilylib.
4019         (NonDentedHeadingFormatter.format_heading): move from musicxml2ly
4020
4021         * scripts/lilypond-book.py (get_option_parser): use optparse for
4022         option handling.  Put options in global_options variable.
4023
4024 2006-02-28  Heikki Junes  <hjunes@cc.hut.fi>
4025
4026         * Documentation/index.html.in: clarify.
4027
4028 2006-02-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4029
4030         * scm/layout-page-layout.scm (write-page-breaks): add a
4031         music-system-heights property to the page layout output.
4032
4033         * scm/page.scm (make-page-stencil): take footer into account when
4034         computing the 'space-left page property
4035         (annotate-space-left): take footer into account when annonating
4036         space left.
4037
4038 2006-02-28  Graham Percival  <gpermus@gmail.com>
4039
4040         * Documentation/user/ advanced-notation, global: more (final)
4041         docs for music expressions, removed special fermatas.
4042
4043 2006-02-27  Graham Percival  <gpermus@gmail.com>
4044
4045         * Documentation/user/ basic-notation, global: minor changes
4046         from mailist.
4047
4048 2006-02-26  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4049
4050         * scm/framework-ps.scm:         
4051         * scm/lily-library.scm (nan?, inf?): Move guile 1.6 compatibility
4052         layer for inf? and nan? from framework-ps to lily-library.
4053
4054 2006-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4055
4056         * mf/GNUmakefile ($(outdir)/emmentaler-$(1).otf
4057         $(outdir)/emmentaler-$(1).svg): remove backslashes from define endef.
4058
4059         * buildscripts/substitute-encoding.py (Module): remove file.
4060
4061         * mf/GNUmakefile: more PFA strippage.
4062
4063         * mf/aybabtu.pe.in (i): remove PFAaybabtu generation
4064
4065         * buildscripts/gen-emmentaler-scripts.py (i): remove PFAemmentaler
4066         generation
4067
4068         * scm/framework-ps.scm: remove font name munging.
4069
4070         * Documentation/topdocs/INSTALL.texi (Top): bump GS requirement.
4071
4072 2006-02-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4073
4074         * scm/markup.scm (define-markup-command): change
4075         def-markup-command to define-markup-command
4076
4077         * scm/music-functions.scm (define-music-function): change
4078         def-music-function to define-music-function.
4079
4080         * python/convertrules.py (conv): rules for def-music-function
4081         and def-markup-commands
4082
4083         * Documentation/user/programming-interface.itely,
4084         input/no-notation/display-lily-tests.ly,
4085         input/regression/lily-in-scheme.ly,
4086         input/regression/markup-user.ly,
4087         input/regression/music-function.ly, input/regression/tie-chord.ly,
4088         scm/fret-diagrams.scm, ly/music-functions-init.ly,
4089         ly/gregorian-init.ly: use new macro names (define-music-function,
4090         define-markup-command).
4091
4092 2006-02-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4093
4094         * scripts/lilypond-book.py (main): write Makefile dependencies file. 
4095         (output): add comments to lp-book latex output.
4096
4097         * GNUmakefile.in (footifymail): use gmane address for webpage bug
4098         address.
4099
4100 2006-02-23  Graham Percival  <gpermus@gmail.com>
4101
4102         * Documentation/user/ tutorial, global: minor changes.
4103
4104 2006-02-23  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4105
4106         * mf/GNUmakefile: add '\' in multi-line "define ... endef"
4107         blocks (for make 3.80)
4108
4109         * scm/parser-ly-from-scheme.scm (ly:parse-string-result): add
4110         \notemode so that user should not have to explicitely type it.
4111
4112         * scm/define-music-display-methods.scm: various
4113         fixes (ApplyOutputEvent, ApplyContext; \new, \context and derived
4114         constructs)
4115
4116         * input/no-notation/display-lily-tests.ly: new tests for
4117         \applyOutput and \applyContext
4118
4119 2006-02-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4120
4121         * lily/constrained-breaking.cc: patch by Joe Neeman: "I have
4122         changed it slightly so that the number of systems returned by
4123         solve () will be the same as the last value passed to resize
4124         (). I've also added more documentation, removed casts, fixed style
4125         problems and put in some recovery if constraints aren't satisfied."
4126
4127 2006-02-23  Jan Nieuwenhuizen  <janneke@gnu.org>
4128
4129         * elisp/lilypond-mode.el (count-matches-as-number): New funtion
4130         for emacs < 22 compatibility.
4131         (count-rexp): Use it.
4132         (LilyPond-string-current-midi, LilyPond-string-all-midi): Remove
4133         substring juggling (Milan Zamazal).
4134
4135 2006-02-23  Graham Percival  <gpermus@gmail.com>
4136
4137         * Documentation/user/ basic-notation, advanced-notation,
4138         global.itely, invoking.itely, tutorial,itely:
4139         minor fixes from mailist.
4140
4141         * scm/define-markup-commands.scm: improve docs of \filled-box.
4142
4143 2006-02-23  Heikki Junes  <hjunes@cc.hut.fi>
4144
4145         * Documentation/index.html.in: changes concern the previous release.
4146
4147         * input/regression/+.ly: cultivate typographical terminology.
4148
4149 2006-02-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4150
4151         * scm/define-grob-interfaces.scm (parentheses-interface): add
4152         padding to parentheses-interface.
4153
4154         * Documentation/user/GNUmakefile: remove $(CROSS) support from
4155         Documentation/user/GNUmakefile. Use --disable-documentation for that.
4156
4157         * VERSION (PATCH_LEVEL): release 2.7.36
4158
4159         * lily/slur.cc: add avoid-slur (ugh.)
4160         
4161         * lily/slur-configuration.cc (fit_factor): oops, skip point if
4162         intersection gets smaller. This fixes slurs over extreme points.
4163
4164         * lily/melody-engraver.cc (stop_translation_timestep): ignore
4165         stems with neutral-direction set.
4166
4167         * lily/piano-pedal-engraver.cc (create_text_grobs): idem.
4168
4169         * lily/open-type-font.cc (load_table): format error.
4170
4171         * lily/change-iterator.cc (process): format fix.
4172
4173         * flower/include/international.hh (_f): idem.
4174
4175         * flower/include/std-string.hh: add format printf attribute.
4176
4177         * scm/define-grobs.scm (all-grob-descriptions): height of all
4178         PedalLineSpanner is Y-extent property. Fixes pedal-ped.ly
4179
4180         * lily/ambitus-engraver.cc (finalize): use grob_array. This fixes
4181         ambitus lines.
4182
4183         * input/regression/beam-cross-staff-slope.ly: remove decrescendo.
4184
4185 2006-02-22 Erik Sandberg  <mandolaerik@gmail.com>
4186
4187         * input/regression/: upgraded syntax for some files.
4188
4189         * THANKS: Add bughunters.
4190
4191 2006-02-22  Graham Percival  <gpermus@gmail.com>
4192
4193         * Documentation/user/ invoking.itely, advanced-notation.itely,
4194         global.itely: long-awaited "let's make chapter 10 not suck"
4195         update.  Rearrange chapter 10; now called "global issues",
4196         addresses file structure, etc.  Some info from other files
4197         moved into global.itely.
4198
4199 2006-02-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4200
4201         * lily/accidental-engraver.cc (acknowledge_rhythmic_head): also
4202         catch trill-span-event notes.
4203
4204         * Documentation/user/examples.itely (Ancient notation templates): typo.
4205         (Jazz combo): typo.
4206
4207         * scripts/lilypond-book.py (main): scrap invokes_lilypond(). 
4208
4209         * Documentation/user/basic-notation.itely (Ties): document \repeatTie.
4210
4211         * Documentation/topdocs/NEWS.tely (Top): document \repeatTie.
4212
4213         * scm/define-music-types.scm (music-descriptions): add RepeatTieEvent
4214
4215         * lily/repeat-tie-engraver.cc (acknowledge_note_head): new file. cut & paste
4216         froum Laissez_vibrer_engraver.
4217
4218         * ly/declarations-init.ly (repeatTie): add \repeatTie
4219
4220         * scm/define-grobs.scm (all-grob-descriptions): add RepeatTie, RepeatTieColumn
4221
4222         * scm/define-grob-properties.scm (all-user-grob-properties): add
4223         head-direction property.
4224
4225         * lily/tie-formatting-problem.cc (from_semi_ties): rename from
4226         from_lv_ties. Take head direction argument.
4227
4228         * lily/semi-tie-column.cc: rename from
4229         laissez-vibrer-tie-column.cc. Rename class too.
4230
4231         * lily/semi-tie.cc: rename from laissez-vibrer-tie.cc. Rename
4232         class too.
4233
4234         * lily/paper-score.cc (find_break_indices): move from Break_algorithm.
4235
4236         * lily/break-algorithm.cc (find_break_indices): remove linewidth <
4237         0 case.
4238         (find_breaks): idem.
4239
4240 2006-02-21  Graham Percival  <gpermus@gmail.com>
4241
4242         * Documentation/user/advanced-notation.itely: fixed make-moment]
4243         example.
4244
4245         * Documentation/user/basic-notation.itely: more clarification to
4246         transpose.
4247
4248 2006-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4249
4250         * lily/include/constrained-breaking.hh (class
4251         Constrained_breaking): new file.
4252
4253         * lily/constrained-breaking.cc (resize): new file.
4254
4255         * lily/gourlay-breaking.cc (do_solve): ragged-last iso raggedlast
4256
4257         * Documentation/user/advanced-notation.itely (Clusters): insert
4258         end ignore too.
4259
4260         * lily/tie-column.cc (calc_positioning_done): support for
4261         tie-score debugging
4262
4263         * lily/tie-formatting-problem.cc
4264         (generate_extremal_tie_variations): factor out.
4265         (score_ties_configuration): annotate all tie 
4266         (print_ties_configuration): new routine.
4267         (generate_configuration): nudge extremal ties outside of the head
4268         Y extents.
4269         (score_ties_configuration): oops. convert to staff-space before
4270         determining position symmetry.
4271
4272 2006-02-20  Graham Percival  <gpermus@gmail.com>
4273
4274         * Documentation/user/*-notation.itely: misc minor editing,
4275         shifting doc sections around.
4276
4277         * Documentation/user/*-notation-itely, global.itely,
4278         changing-defaults.itely: added new stuff from NEWS.
4279
4280 2006-02-20  Heikki Junes  <hjunes@cc.hut.fi>
4281
4282         * po/fi.po: update.
4283
4284 2006-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4285
4286         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): don't run
4287         lilypond --verbose for lp-book.
4288
4289         * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
4290         $(outdir)/%.ly $(outdir)/%.ps): use $(srcdir) iso $(shell pwd).
4291
4292         * make/lysdoc-rules.make ($(outdir)/collated-files.tely): use
4293         $(buildscript-dir) iso. absolute depth.
4294
4295         * buildscripts/genicon.py (dir): thinko.
4296
4297         * Documentation/pictures/GNUmakefile ($(outdir)/%.ico): typo.
4298
4299 2006-02-19 Erik Sandberg  <mandolaerik@gmail.com>
4300
4301         * scm/output-lib.scm: swap darkcyan/darkyellow
4302
4303         * THANKS: Add bughunters.
4304
4305 2006-02-19  Graham Percival  <gpermus@gmail.com>
4306
4307         * Documentation/user/programming-interfaces.itely: fixed example.
4308
4309         * Documentation/user/instrument-notation.itely: fix @{ @}.
4310
4311         * scm/script.scm: add avoid-slur for \open.
4312
4313 2006-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4314
4315         * lily/tie-formatting-problem.cc (score_configuration): use
4316         sliding score for min-length. 
4317
4318         * Documentation/pictures/GNUmakefile (local-dist): loose the rule
4319         spaghetti for icons.
4320
4321         * buildscripts/genicon.py (program_name): new file.
4322
4323         * lily/tie-formatting-problem.cc (set_chord_outline): put dots
4324         in outline too.  
4325         (generate_configuration): for small ties, also look for collisions
4326         at Y + DIR*h + DELTA_Y.
4327         (get_variations): consider variation for dot positions too.
4328
4329         * lily/side-position-interface.cc (aligned_side): take abs for
4330         quantized rounded position. Fixes tenuto below staff.
4331
4332         * scm/stencil.scm (annotate-y-interval): robustify: print nan/inf
4333         markers when necessary.
4334
4335         * lily/program-option.cc (internal_set_option): add
4336         strict_infinity_checking option.
4337
4338         * scm/output-lib.scm (cyan): swap yellow and cyan.
4339
4340 2006-02-19  Graham Percival  <gpermus@gmail.com>
4341
4342         * darwin.patch: trivial linenumber update.
4343
4344         * Documentation/user/ {various}: `\context foo = named' changed
4345         to `\new foo = "name"' in docs.
4346
4347 2006-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4348
4349         * scm/stencil.scm (annotate-y-interval): use it.
4350
4351         * scm/lily-library.scm (interval-sane?): new function.
4352
4353         * buildscripts/mf-to-table.py (Char_metric.__init__): remove
4354         tfm_checksum stuff.
4355
4356         * lily/tie-formatting-problem.cc (from_lv_ties): add heads for
4357         common refpoint.
4358
4359         * flower/include/std-vector.hh (iterof): add iterof macro.
4360
4361         * lily/enclosing-bracket.cc (width): new function.
4362
4363         * lily/align-interface.cc (align_elements_to_extents): reinstate
4364         warning.
4365
4366 2006-02-18  Heikki Junes  <hjunes@cc.hut.fi>
4367
4368         * Documentation/index.html.in: fix spelling: thankyous.
4369
4370 2006-02-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4371
4372         * lily/lyric-hyphen.cc: typo.
4373
4374 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4375
4376         * stepmake/stepmake/c++-rules.make ($(outdir)/%.cc
4377         $(outdir)/%.hh): generate h and c in one rule; otherwise -jX
4378         builds don't work. 
4379
4380         * VERSION: release 2.7.35
4381
4382         * lily/beam.cc (get_default_dir): oops. Take abs () for
4383         extremes[DOWN].
4384         (get_default_dir): use extreme position criterion only in absence
4385         of forced stem directions.
4386
4387         * VERSION (PATCH_LEVEL): bump VERSION.
4388
4389         * mf/GNUmakefile: explicit rules for emmentaler/aybabtu
4390         dependencies. Necessary for -jX builds.  
4391
4392 2006-02-17  Jan Nieuwenhuizen  <janneke@gnu.org>
4393
4394         * lily/relocate.cc (setup_paths): Yet another const fix.
4395
4396 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4397
4398         * configure.in (HOST_ARCH): determine HOST_ARCH in configure.
4399
4400         * lily/relocate.cc (setup_paths): oops.
4401
4402 2006-02-17  Heikki Junes  <hjunes@cc.hut.fi>
4403
4404         * Documentation/index.html.in: order links: html before PDF.
4405
4406 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4407
4408         * lily/tie-column-format.cc (Module): remove.
4409
4410         * lily/relocate.cc (setup_paths): GCC 4.2 fixes: const correctness.
4411
4412         * lily/text-spanner.cc (print): idem.
4413
4414         * lily/dynamic-text-spanner.cc (print): only print line if longer
4415         than dash-period.
4416
4417         * lily/auto-change-iterator.cc (change_to): formatting.
4418
4419         * lily/beam.cc (get_default_dir): take extreme note head as input
4420         for stem direction.
4421
4422         * lily/tie.cc (get_default_dir): only look directions for visible
4423         stems. 
4424
4425         * lily/side-position-interface.cc (aligned_side): oops. Don't
4426         mutiply with direction. This fixes quantized (staccato, tenuto)
4427         scripts below notes.
4428
4429         * lily/lyric-hyphen.cc (set_spacing_rods): oops. Multiply with
4430         direction. Fixes c-lyrics-center-align.ly
4431
4432 2006-02-16  Jan Nieuwenhuizen  <janneke@gnu.org>
4433
4434         * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Add copy
4435         constructor.
4436
4437         * lily/std-string.cc:
4438         * lily/include/std-vector.hh (split_string): Move and rename from
4439         lily/include/misc.hh, lily/misc.cc.  Update callers.
4440
4441 2006-02-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4442
4443         * lily/include/pango-font.hh: HAVE_PANGO_FT2 iso. HAVE_PANGO_16
4444
4445 2006-02-16  Jan Nieuwenhuizen  <janneke@gnu.org>
4446
4447         * flower/test-file.cc: New file.
4448
4449         * stepmake/stepmake/test-vars.make (TEST_MODULE_LIBES): Fixes for
4450         libraries.
4451
4452         * flower/GNUmakefile (TEST_MODULE_LIBS): Link to flower lib.
4453
4454 2006-02-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4455
4456         * flower/include/file-storage.hh: remove file.
4457
4458         * lily/include/midi-item.hh (class Midi_track): idem.
4459
4460         * lily/include/source.hh (class Sources): idem.
4461
4462         * lily/include/performance.hh (class Performance): use vector
4463         iso. Cons<>
4464
4465         * flower/include/cons.hh (class Cons): remove file.
4466
4467         * flower/include/flower-proto.hh: remove template cruft.
4468
4469         * lily/include/font-metric.hh: use size_t not vsize for indices.
4470
4471         * flower/include/flower-proto.hh (Module): remove std-vector.hh
4472         from proto.
4473
4474         * lily/include/all-font-metrics.hh: use HAVE_PANGO_FT2
4475
4476         * lily/include/paper-book.hh (class Paper_book):
4477         make get_system_specs() public.
4478
4479         * scm/layout-page-layout.scm (optimal-page-breaks): only consider
4480         the force=10000 case if we don't have a current-best. 
4481
4482         * lily/tuplet-bracket.cc (get_bounds): don't do (size() - 1) for
4483         vsize 
4484
4485         * flower/include/flower-proto.hh: remove outdated templates.
4486
4487         * scm/page.scm: use annotate-spacing
4488
4489 2006-02-15  Graham Percival  <gpermus@gmail.com>
4490
4491         * scm/translation-functions.scm: circle patch from Erlend, thanks!
4492
4493         * THANKS: moved Erlend Aasland to contributors.
4494
4495 2006-02-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4496
4497         * config.hh.in: remove HAVE_PANGO_16
4498
4499         * lily/tuplet-bracket.cc (calc_positions): multiply with
4500         staff-space for beam case. This fixes tuplets+beams on scaled
4501         staves.
4502
4503         * config.hh.in: remove all Kpathsea related defines.
4504
4505         * lily/dot-column.cc (side_position): reach stem via dots->
4506         head->stem. Inspect all stems for dot collisions. 
4507
4508         * lily/dot-column-engraver.cc (class Dot_column_engraver): excise
4509         stem handling.
4510
4511         * lily/bar-number-engraver.cc (process_music): document function
4512         of whichBar.
4513
4514         * lily/score.cc (default_rendering): add pscore, not systems
4515         themselves.
4516
4517         * lily/paper-book.cc (get_system_specs): separate generation of
4518         titles and systems.
4519
4520         * flower/include/std-vector.hh: don't include config.hh
4521
4522 2006-02-15  Jan Nieuwenhuizen  <janneke@gnu.org>
4523
4524         * flower/include/std-vector.hh: Better wrapper compatibility with
4525         std::vector.
4526
4527         * flower/include/flower-proto.hh: Remove cheap forward declaration
4528         attempts.
4529
4530         * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): Bugfix.
4531
4532 2006-02-14  Graham Percival  <gpermus@gmail.com>
4533
4534         * Documentation/user/invoking.itely: add warning about command line.
4535
4536 2006-02-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4537
4538         * lily/include/lily-proto.hh: add Prob, rm Page.
4539
4540         * flower/include/std-vector.hh (VPOS): use 64 bit-proof version.
4541
4542         * VERSION: release 2.7.34
4543
4544         * lily/relocate.cc (framework_relocation): show canary if
4545         GHOSTSCRIPT_VERSION undefined.
4546
4547         * GNUmakefile.in: remove $(VERSION) symlink.
4548
4549         * lily/relocate.cc (setup_paths): add + 
4550
4551 2006-02-13  Heikki Junes  <hjunes@cc.hut.fi>
4552
4553         * Documentation/index.html.in: specify sizes for all big HTML pages.
4554
4555 2006-02-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4556
4557         * config.hh.in: remove @FRAMEWORKDIR@
4558
4559         * lily/system-start-text.cc (get_stencil): new file: separate out
4560         system-start-delimiter text support.
4561
4562         * input/**ly: replace \context with \new where appropriate.
4563         
4564         * THANKS: add Don.
4565
4566         * lily/slur-scoring.cc (get_base_attachments): use
4567         robust_relative_extent. This fixes problems with empty paper-columns. 
4568
4569 2006-02-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4570
4571         * Documentation/topdocs/NEWS.tely (Top): document \new syntax.
4572
4573         * scm/define-music-properties.scm (all-music-properties):
4574         create-new property.
4575
4576         * lily/context-specced-music-iterator.cc (construct_children):
4577         inspect 'create-new property iso. magical $uniqueContextId context
4578         id.
4579
4580         * lily/parser.yy (optional_id): allow \new "Bar" = "foo" too.
4581
4582         * lily/context-key-manager.cc (Module): new file. Encapsulate
4583         object key generation.
4584
4585         * lily/include/context-key-manager.hh (Module): new file.
4586
4587 2006-02-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4588
4589         * scm/define-grobs.scm (all-grob-descriptions): center instrument
4590         names vertically
4591
4592         * configure.in (LINK_GXX_STATICALLY): strip -DSTRING_UTILS_INLINED
4593         options.
4594         (reloc_b): excise --enable-framework-dir
4595
4596         * lily/relocate.cc (framework_relocation): use getenv
4597         LILYPOND_GS_VERSION or -DGHOSTSCRIPT_VERSION to set GS version.
4598
4599 2006-02-11  Jan Nieuwenhuizen  <janneke@gnu.org>
4600
4601         * flower/include/std-string.hh: 
4602         * flower/include/std-vector.hh: Finish std:: conversion; move
4603         flower extensions from std:: namespace.  Update users.
4604
4605         * lily/include/lily-proto.hh: Replace Link_array__*_ macros by
4606         their expansion to vector<*>.  Update users.
4607
4608 2006-02-10  Graham Percival  <gpermus@gmail.com>
4609
4610         * Documentation/user/invoking.itely: add example to File structure.
4611
4612         * Documentation/user/ instrument-notation.itely, cheatsheet.itely,
4613         examples.itely, putting.itely: {\new|\context} Lyrics \lyricsto.
4614
4615 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4616
4617         * ly/paper-defaults.ly: typo.
4618
4619         * lily/parenthesis-engraver.cc (acknowledge_grob): don't do
4620         set_parent() for parentheses. This will make it show up in bbox
4621         calculations.
4622
4623         * scm/output-lib.scm (parentheses-item::print): rewrite, using
4624         ly:grob-common* functions.
4625
4626         * lily/grob-scheme.cc (LY_DEFINE):
4627         ly:grob-common-refpoint-of-array: new function 
4628         ly:grob-common-refpoint: new function 
4629         ly:grob-relative-coordinate: new function 
4630
4631         * lily/instrument-name-engraver.cc (process_music): use
4632         Text_interface::is_markup(). This fixes \markup on instrument names.  
4633
4634         * scm/define-grobs.scm (all-grob-descriptions): set line-thickness
4635         for ties and slurs.
4636
4637         * lily/slur.cc (print): idem.
4638
4639         * lily/tie.cc: add line-thickness for ties. 
4640
4641 2006-02-10  Jan Nieuwenhuizen  <janneke@gnu.org>
4642
4643         * scm/output-svg.scm: Document diversion from GNU coding standards
4644         as a workaround for a bug in Microsoft Internet Explorer.
4645
4646 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4647
4648         * lily/instrument-name-engraver.cc (process_music): use
4649         is_markup() iso. is_string()
4650
4651         * Documentation/user/changing-defaults.itely (Module): add menu entry.
4652
4653         * lily/percent-repeat-engraver.cc (process_music): only look at
4654         main_part_ for % repeats.
4655
4656         * lily/stem-tremolo.cc (get_beam_translation): new function.
4657         (calc_slope): new function.
4658         (height): don't use real slope.
4659
4660 2006-02-10  Jürgen Reuter  <reuter@ipd.uka.de>
4661
4662         * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: add
4663         new connect-to-neighbor, control-points and staff-padding
4664         properties to make ligature brackets showing up again.
4665
4666 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4667
4668         * VERSION: release 2.7.33
4669
4670         * lily/relocate.cc (prefix_relocation): oops. One TOPLEVEL_VERSION
4671         too many.
4672
4673         * Documentation/user/changing-defaults.itely (Difficult tweaks):
4674         remove applyOutput example.
4675         (Objects connected to the input): document \tweak, \parenthesize
4676
4677         * lily/relocate.cc (prefix_relocation): allow "current"
4678         iso. TOPLEVEL_VERSION for share/lilypond/ suffix. This makes
4679         changing VERSION in a lily tree less painful.
4680
4681         * input/regression/parenthesize.ly: new file. 
4682
4683         * scm/output-lib.scm (parenthesize-element): new function.
4684
4685         * scm/define-grobs.scm (all-grob-descriptions): add ParenthesesItem.
4686
4687         * lily/parenthesis-engraver.cc (acknowledge_grob): new file.
4688
4689         * lily/accidental-engraver.cc (make_standard_accidental): reroute
4690         cause: accidentals are caused by note heads, not note events. 
4691
4692 2006-02-08  Graham Percival  <gpermus@gmail.com>
4693
4694         * darwin.patch: small patch from Erlend, thanks!
4695
4696         * Documentation/user/basic-notation.itely: add stem-neutral example.
4697
4698         * Documentation/user/putting.itely: clarifications.
4699
4700 2006-02-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4701
4702         * Documentation/topdocs/NEWS.tely (Top): remove internal cleanup
4703         note, add more guidelines to what should go into NEWS.
4704
4705         * input/sakura-sakura.ly: document how to override font.
4706
4707         * input/regression/font-family-override.ly:  doc -dshow-available-fonts
4708
4709 2006-02-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4710
4711         * lily/midi-item.cc (to_string): truncate time sig at 255 beats.
4712
4713 2006-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
4714
4715         * scripts/convert-ly.py (lilypond_version_re_str): Move from
4716         convertrules.  Add explicit grouping, needed for python2.2.
4717
4718 2006-02-07  Jan Nieuwenhuizen  <janneke@gnu.org>
4719
4720         * Documentation/topdocs/NEWS.tely (Top): Mention code cleanup.
4721
4722 2006-02-07  Graham Percival  <gpermus@gmail.com>
4723
4724         * Documentation/user/global.itely: fix line-width in (text) docs.
4725
4726         * Documentation/user/lilypond-book.itely: same.
4727
4728 2006-02-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4729
4730         * VERSION (PACKAGE_NAME): release 2.7.32
4731
4732         * Documentation/topdocs/NEWS.tely (Top): document new variable
4733         naming.
4734
4735         * flower/include/array.icc (Message): remove file.
4736
4737         * flower/include/std-vector.hh: make sure vsize and VPOS are
4738         defined for binary_search_bounds().
4739
4740         * flower/std-string.cc (std): add to_string(long unsigned).
4741
4742         * configure.in (gui_b): excise std_string option.
4743         (gui_b): excise std_vector option.
4744
4745         * flower/string.cc (Module): excise flower array & string
4746
4747         * flower/include/std-string.hh: excise flower string.
4748
4749         * {ly,lily,scm}/*: use dashes in \paper and \layout variables
4750
4751         * python/convertrules.py (lilypond_version_re_str): require
4752         only numbers and dots in \version string.
4753
4754 2006-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4755
4756         * lily/system-start-delimiter.cc (print): allow style = text too.
4757
4758         * lily/system-start-delimiter-engraver.cc
4759         (acknowledge_system_start_text): new function, also add add to
4760         support of system-start-text (instrument names). This fixes
4761         instrument names on piano staves.
4762
4763         * lily/instrument-name-engraver.cc: rewrite. Use
4764         system-start-delimiter approach. This save memory and cpu.
4765
4766         * scm/define-grobs.scm (all-grob-descriptions): remove
4767         instrument-name from break-alignment.
4768
4769         * mf/GNUmakefile ($(NCSB_TTFS)): depend on pfx2ttf script too.
4770
4771 2006-02-05  Jan Nieuwenhuizen  <janneke@gnu.org>
4772
4773         * stepmake/stepmake/generic-vars.make (LOOP): Add PLUS to keep -j
4774         jobserver going.
4775
4776         * configure.in (std_vector): On by default.
4777
4778         * lily/include/font-metric.hh:
4779         * lily/include/tfm-reader.hh: 
4780         * lily/include/spanner.hh: Use unsigned for indices and sizes.
4781         Update users.
4782
4783         * Documentation/user/changing-defaults.itely: Fix link v2.5, out-www.
4784
4785 2006-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4786
4787         * VERSION (PACKAGE_NAME): 2.7.31
4788
4789         * scm/framework-ps.scm (dump-stencil-as-EPS): don't hardcode left
4790         EPS edge at 0, but take minimum with left-overshoot. This fixes
4791         cut off system start delims. 
4792
4793         * lily/instrument-name-engraver.cc (stop_translation_timestep):
4794         hack: add to axis group if not added yet. This fixes hara kiri'd
4795         piano staves.
4796
4797         * lily/hara-kiri-group-spanner.cc
4798         (force_hara_kiri_in_y_parent_callback): fix signatures.
4799
4800         * lily/hairpin.cc (print): check next hairpin to see whether or
4801         not to be continuing.
4802
4803 2006-02-04  Jan Nieuwenhuizen  <janneke@gnu.org>
4804
4805         * Remove trailing whitespace from makefiles.
4806         
4807         * flower/include/std-vector.hh: Add binary_search_bounds workaround
4808         for earlier gcc.
4809
4810         * .cvsignore: Add out*, out-www, config-*.  Remove lots of cruft.
4811
4812         * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Workaround.
4813
4814         * config.hh.in (HAVE_STL_DATA_METHOD): Add.
4815
4816         * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): New function.
4817
4818         * configure.in: Use it.
4819
4820 2006-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4821
4822         * scm/music-functions.scm (pitch-of-note): new function.
4823
4824         * ly/music-functions-init.ly: add \octave and \addquote
4825
4826         * lily/parser.yy (music_function_chord_body): softcode \octave.
4827         (lilypond_header): softcode \addquote
4828
4829 2006-02-03  Jan Nieuwenhuizen  <janneke@gnu.org>
4830
4831         * flower/include/std-vector.hh[STD_VECTOR]: Do not include
4832         array.hh, parray.hh at all.  Getting ready to flip the
4833         configure default.
4834
4835         * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
4836
4837         * lily/source-file.cc (file::get_line): Help binary_search_bounds
4838         a bit.
4839
4840         * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
4841
4842 2006-02-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4843
4844         * flower/include/array.hh: typo. 
4845
4846 2006-02-02  Graham Percival  <gpermus@gmail.com>
4847
4848         * Documentation/user/advanced-notation.itely: doc "\#" in text.
4849
4850 2006-02-03  Jan Nieuwenhuizen  <janneke@gnu.org>
4851
4852         * flower/include/pqueue.hh: Derive from std::vector.
4853
4854         * flower/include/parray.hh: Conform to std::vector interface.
4855         Update users.
4856
4857 2006-02-02  Graham Percival  <gpermus@gmail.com>
4858
4859         * Documentation/topdocs/NEWS.itely: grammar fix from Laura.
4860
4861 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4862
4863         * flower/file-path.cc (is_file): remove if 0 section.
4864
4865         * buildscripts/pfx2ttf.fontforge (err): robustness fix for
4866         selecting afii61352.
4867
4868 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
4869
4870         * flower/include/std-vector.hh (boundary): Oops, reverse.
4871
4872         * flower/string-convert.cc (convert::unsigned_string): Bugfix:
4873         remove superfluous `d'.
4874
4875         * flower/include/std-vector.hh (boundary, top): Detach from class.
4876         Remove empty vector shell.
4877
4878         * flower/include/array.hh (reverse, swap): Detach from class.
4879         Update users.
4880         
4881         * flower/include/std-vector.hh
4882         * flower/include/array.hh (concat): Globally change to insert ().
4883
4884         
4885         * flower/include/std-vector.hh
4886         * flower/include/parray.hh
4887         * flower/include/array.hh (elem, elem_ref): Globally replace by
4888         at ().
4889
4890 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4891
4892         * Documentation/topdocs/NEWS.tely (Top): use ly: prefix for members.
4893
4894         * python/convertrules.py (FatalConversionError.sub_cxx_id):
4895         anticipate on identifier substitutions.
4896
4897 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
4898
4899         * flower/include/std-vector.hh (insert): Remove, replace by
4900         std::vector interface.  Update callers.
4901
4902         * flower/include/array.icc (insert): Change signature to
4903         match std::vector interface.
4904         
4905         * flower/include/array.icc (vector_sort): Bugfix.
4906
4907 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4908
4909         * lily/parser.yy (output_def_head_with_mode_switch): new
4910         production. Result: dashes and underscores may be used in the
4911         \paper block.
4912
4913         * lily/lexer.ll: add DASHED_WORD.  Accept in INITIAL mode.
4914
4915         * python/convertrules.py (conv): oops. One slash too much.
4916
4917 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
4918
4919         * flower/include/std-vector.hh (sort): Remove, replace by
4920         ::vector_sort.  Update callers.
4921
4922         * flower/include/std-vector.hh (slice): Remove.  Update callers.
4923         (sort): Bugfix.
4924
4925         * flower/test-std.cc (vector_sort): New test.
4926
4927 2006-02-01  Graham Percival  <gpermus@gmail.com>
4928
4929         * Documentation/user/putting.itely: fixes from Erik.
4930
4931 2006-02-01  Jan Nieuwenhuizen  <janneke@gnu.org>
4932
4933         * flower/test-std.cc: Add simple unit test for vector migration.
4934
4935         * stepmake/stepmake/test*: Unit test support.
4936
4937         * flower/include/std-vector.hh (del): Remove.  Use erase (),
4938         update callers.
4939
4940         * flower/include/array.hh (begin, end): Add.
4941         (del, get): Remove.
4942
4943 2006-02-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4944
4945         * lily/include/lily-guile-macros.hh (MAKE_SCHEME_CALLBACK): use
4946         std::string not String. 
4947
4948         * lily/context-def.cc (path_to_acceptable_context): use INT_MAX
4949         iso UINT_MAX.
4950
4951         * lily/prob.cc (Prob): copy type_ too.
4952
4953         * lily/lily-guile.cc (mangle_cxx_identifier): new
4954         function. Class_bla::foo_bar_[px] ->
4955         ly:class-bla::foo-bar[?!]. Changes throughout
4956
4957 2006-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4958
4959         * flower/include/guile-compatibility.hh (scm_from_unsigned): add scm_from_unsigned().
4960
4961         * lily/beam.cc (calc_direction): take dir from visible stem in
4962         degenerate case.
4963
4964 2006-01-31  Jan Nieuwenhuizen  <janneke@gnu.org>
4965
4966         * lily/melody-spanner.cc (spanner::calc_neutral_stem_direction):
4967         Fix -1, >=0 boundary checks for unsigned vsize.
4968
4969         * lily/separating-group-spanner.cc (spanner::find_rods): Fix >=0
4970         loop for unsigned vsize.
4971
4972         * configure.in (--enable-std-vector): New option.
4973         (--enable-std-string): On by default.
4974
4975         * flower/include/std-vector.hh: New file.  Enable switch to
4976         std::vector, update client code.
4977
4978 2006-01-30  Graham Percival  <gpermus@gmail.com>
4979
4980         * scm/document-translation.scm: clarify "this context is also
4981         known as".  Thanks, Werner!
4982
4983         * Documentation/user/putting.itely: small fixes from Don Blaheta.
4984
4985         * Documentation/user/invoking.itely: small fix from Don.
4986
4987 2006-01-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4988
4989         * scm/lily.scm (define-scheme-options): rename option
4990         preview-include-book-title to book-title-preview
4991         (define-scheme-options): move force-eps-font-include (from paper
4992         block) to eps-font-include -d option.
4993
4994         * VERSION (PATCH_LEVEL): release 2.7.30
4995
4996         * input/bach-schenker.ly (staffPiano): new file.
4997
4998         * buildscripts/pfx2ttf.fontforge: remove No. glyph from TTF file.
4999
5000         * Documentation/topdocs/NEWS.tely (Top): simplify NEWS entry, add
5001         credits to Nicolas.
5002
5003         * scm/define-markup-commands.scm (epsfile): add scaling to \epsfile.
5004
5005         * ps/lilyponddefs.ps: remove start-system, stop-system,
5006         start-page fluff. This saves putting { } code on the stack, fixing
5007         stack overflows when including EPS files.
5008
5009 2006-01-29  Graham Percival  <gpermus@gmail.com>
5010
5011         * Documentation/user/putting.itely: minor fixes (comments on -devel).
5012
5013 2006-01-29  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5014
5015         * Documentation/topdocs/NEWS.tely (Top): add \parallelMusic news.
5016
5017 2006-01-28  Graham Percival  <gpermus@gmail.com>
5018
5019         * Documentation/user/putting.itely: minor fixes (mostly tab->space).
5020
5021 2006-01-28  Jan Nieuwenhuizen  <janneke@gnu.org>
5022
5023         * input/mutopia/claop.py: Update.
5024
5025 2006-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5026
5027         * input/regression/completion-heads.ly (texidoc): fix.
5028
5029         * lily/staff-symbol-referencer.cc (on_staff_line): idem.
5030
5031         * lily/tie-formatting-problem.cc
5032         (set_ties_config_standard_directions): use abs iso fabs for ints.
5033
5034         * Documentation/topdocs/INSTALL.texi (Top): document ncsb requirement.
5035
5036         * mf/feta-bolletjes.mf (overdone_heads): solfa_noteheight, a
5037         little less than noteheight, to prevent overlaps in chords.
5038
5039         * lily/note-collision.cc (check_meshing_chords): wipe upper FA
5040         head, and fudge stem-attachment.
5041
5042         * scm/lily-library.scm (not): define hash-for-each for guile 1.6
5043
5044         * lily/slur-scoring.cc (get_best_curve): handle opt_idx < 0 case.
5045
5046 2006-01-27  Jan Nieuwenhuizen  <janneke@gnu.org>
5047
5048         * lily/main.cc (main): Debugging aid: catch exceptions.
5049
5050         * flower/std-string.cc (to_string): Robustification.  Fixes midi
5051         output with std::string.
5052
5053 2006-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5054
5055         * Documentation/topdocs/INSTALL.texi (Top): remove libkpathsea notes.
5056
5057 2006-01-26  Jan Nieuwenhuizen  <janneke@gnu.org>
5058
5059         * Fix -DSTRING_UTILS_INLINED.
5060
5061 2006-01-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5062
5063         * VERSION (PATCH_LEVEL): release 2.7.29
5064
5065         * lily/relocate.cc (setup_paths): mingw uses std string too.
5066
5067         * lily/*.cc: various fixes for substr(ARG).
5068
5069         * lily/sustain-pedal.cc (print): 
5070
5071         * flower/file-name.cc (slashify): use std strings.
5072
5073         * flower/string-convert.cc: remove publib.h
5074
5075         * scm/define-markup-commands.scm (verbatim-file): new markup
5076         command \verbatim-file
5077
5078         * Documentation/topdocs/NEWS.tely: fixup URLs
5079
5080         * input/regression/alignment-vertical-manual-setting.ly (Module):
5081         new file.
5082
5083         * lily/align-interface.cc (align_elements_to_extents): overwrite
5084         translations with numbers in alignment-offsets from left bound
5085
5086         * scm/page.scm (make-page-stencil): read X-offset from paper-system.
5087         (page-translate-systems): new function: take into account Y-offset.
5088
5089         * Documentation/topdocs/NEWS.tely (Top): document new features.
5090
5091         * input/regression/page-layout-manual-position.ly (Module): new
5092         file.
5093
5094 2006-01-26  Jan Nieuwenhuizen  <janneke@gnu.org>
5095
5096         * flower/file-path.cc (path::parse_path): Oops.
5097
5098         * Finish std::string interface.  For now, use std:: marker
5099         throughout for easy s/r.
5100
5101 2006-01-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5102
5103         * Documentation/user/putting.itely (Score is a single musical
5104         expression): typo.
5105         (Score is a single musical expression): more typos.
5106
5107         * scm/page.scm (annotate-space-left): thinko.
5108         (annotate-page): more thinkos.
5109
5110 2006-01-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5111
5112         * scm/layout-page-layout.scm (write-page-breaks): record tweaks
5113         for different \score blocks separately.
5114         (post-process-pages): put write-page-layout into paper block.
5115
5116         * lily/output-def.cc (get_parser): new file.
5117
5118         * lily/output-def-scheme.cc (LY_DEFINE): ly:output-def-parser, new
5119         file.
5120
5121         * lily/include/output-def.hh (class Output_def): add parser_ member.
5122
5123         * input/regression/page-layout-twopass.ly (Module): new file.
5124
5125         * scm/lily.scm: remove cpp hack.
5126
5127         * lily/lyric-engraver.cc (get_voice_to_lyrics): use NPOS everywhere.
5128
5129 2006-01-25  Jan Nieuwenhuizen  <janneke@gnu.org>
5130
5131         * GNUmakefile.in (c-clean): New target.
5132
5133         * flower/include/std-string.hh: String/std::string compatibility:
5134         Use NPOS for `not found' (iso -1), use ssize for length () and pos
5135         type.
5136
5137         * flower/rational.cc: 
5138         * flower/include/rational.hh: 
5139
5140         * flower/offset.cc: 
5141         * flower/include/offset.hh: 
5142
5143         * flower/interval.cc: 
5144         * flower/include/interval.hh: 
5145
5146         * flower/string-convert.cc: 
5147         * flower/include/string-convert.hh: Use std::string [interface].
5148         Update callers.
5149
5150 2006-01-25  Heikki Junes  <hjunes@cc.hut.fi>
5151
5152         * Documentation/index.html.in: clean up.
5153
5154 2006-01-25  Graham Percival  <gpermus@gmail.com>
5155
5156         * Documentation/user/putting.itely: another new untested doc section.
5157
5158 2006-01-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5159
5160         * scm/layout-page-layout.scm (write-page-breaks): write
5161         \spacingTweaks #ALIST. Handle grace timing.
5162
5163         * scm/: more imports.
5164
5165         * scm/page.scm (make-page): add footer/header.
5166         (annotate-space-left): revise: only take page argument.
5167         (layout->page-init): new function.
5168
5169         * scm/layout-page-layout.scm (write-page-breaks): preliminary
5170         version of the system/spacing/linebreak hack writing to the output
5171
5172         * lily/prob-scheme.cc (LY_DEFINE): take optional 'key val args in
5173         ly:make-prob.
5174
5175         * lily/grob-scheme.cc (LY_DEFINE): ly:spanner-get-bound ->
5176         ly:spanner-bound
5177
5178 2006-01-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5179
5180         * scm/stencil.scm (annotate-y-interval): move from layout-page-layout.scm
5181
5182         * scm/paper-system.scm (paper-system-annotate): new file. Handle paper-system.
5183
5184         * scm/layout-page-layout.scm (optimal-page-breaks): move all page
5185         handling to page.scm
5186
5187         * lily/prob-scheme.cc (LY_DEFINE): new file.
5188         (LY_DEFINE): functions ly:make-prob , ly:prob-type? , ly:prob-(set-)property(!)
5189
5190         * lily/music-scheme.cc (LY_DEFINE): rewrite get/set property using
5191         prob functions.
5192
5193         * lily/music.cc (derived_mark): derive Music from Prob.
5194
5195         * lily/paper-system.cc (LY_DEFINE): derive from Prob.
5196
5197         * lily/prob.cc (Module): Implement Prob (Property Object), object
5198         with shared and r/w property alists.  
5199
5200         * lily/include/prob.hh (Module): new file. Declare Prob.
5201
5202         * flower/string.cc: remove is_empty().
5203
5204         * flower/include/string.hh (class String): remove String:: qualifier.
5205
5206         * buildscripts/analyse-cxx-log.py: new file. Read compile log to
5207         substitute appropriate functions.
5208
5209         * flower/include/string.hh (class String): remove to_str0 and
5210         is_empty(). S&R everywhere.
5211
5212 2006-01-23  Graham Percival  <gpermus@gmail.com>
5213
5214         * Documentation/user/basic-notation.itely: add hairpin
5215         after-linebreak tweak to commonprop.
5216
5217         * Documentation/user/putting.itely: added two new sections.
5218
5219 2006-01-23  Jan Nieuwenhuizen  <janneke@gnu.org>
5220
5221         * flower/international.cc: 
5222         * flower/include/international.hh: 
5223
5224         * flower/getopt-long.cc: 
5225         * flower/include/getopt-long.hh: Use std::string [interface].
5226         Update callers.
5227
5228         * flower/include/std-string.hh: Oops, bugfix for --disable-std-string.
5229
5230         * stepmake/stepmake/executable-rules.make: Add dependency on
5231         module libraries.
5232
5233 2006-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
5234
5235         * flower/file-path.cc: 
5236         * flower/include/file-path.hh: Use std::string [interface].
5237         Update callers.
5238
5239         * flower/direction.cc: 
5240         * flower/axis.cc: Unused.  Remove.
5241
5242         * configure.in (--enable-std-string): New option.
5243
5244         * flower/std-string.cc: 
5245         * flower/include/std-string.hh: New file.
5246
5247         * flower/file-name.cc[STD_STRING]:
5248         * flower/include/file-name.hh[STD_STRING]: Use it.  Update callers.
5249
5250 2006-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5251
5252         * scm/output-svg.scm (placebox): no GNU coding standards in SVG output. 
5253
5254         * scm/define-markup-commands.scm (with-dimensions):
5255         with-dimensions markup command.
5256
5257         * input/test/font-table.ly: use it.
5258
5259         * lily/open-type-font.cc (glyph_list): new function.
5260
5261         * lily/open-type-font-scheme.cc (LY_DEFINE): ly:otf-glyph-list function.
5262
5263         * lily/ttf.cc: remove ly:font-glyph-list scheme function
5264
5265 2006-01-22  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5266
5267         * ly/music-functions-init.ly (parallelMusic): new music function
5268         for parallel music entry.
5269
5270         * scm/define-music-properties.scm (all-music-properties): new
5271         'void music property
5272
5273         * scm/music-functions.scm (ly:music-message): make public, to be
5274         used in music function definitions
5275
5276         * scm/lily-library.scm (collect-music-for-book): discard music
5277         when the 'void property is set.
5278
5279 2006-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5280
5281         * lily/ttf.cc (LY_DEFINE): store name before destroying face.
5282
5283         * mf/GNUmakefile: idem.
5284
5285         * buildscripts/mf-to-table.py (help): excise fetaXXlist.ly support.
5286
5287         * stepmake/bin/install.py (dest): Only chmod/chown just created directories
5288
5289         * Documentation/user/notation-appendices.itely (The Feta font):
5290         use it.
5291
5292         * input/test/font-table.ly: new file. Generate font table within lily.
5293
5294         * Documentation/user/notation-appendices.itely (The Feta font):
5295         use new font-table.ly file. 
5296
5297         * stepmake/stepmake/install-out-targets.make
5298         (local-install-outfiles): only create directory if
5299         $(INSTALLATION_OUT_DIR) is defined. This fixes install on Gentoo.
5300
5301 2006-01-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5302
5303         * lily/ttf.cc (LY_DEFINE): new function ly:font-glyph-list.
5304
5305         * VERSION (PACKAGE_NAME): release 2.7.28
5306
5307         * scm/framework-ps.scm (write-preamble): use it to pick exactly
5308         the right font from a Mac dfont.
5309         (write-preamble): don't forget directory, only look at files.
5310
5311         This fixes problems with TTF files in dfonts that don't match
5312         their PostScript names.
5313          
5314         * lily/ttf.cc (LY_DEFINE): ly:ttf-ps-name: new routine to extract
5315         PS name from TTF font.
5316
5317         * input/regression/tie-manual.ly: document new feature.
5318
5319         * Documentation/topdocs/NEWS.tely (Top): add tie NEWS.
5320
5321         * VERSION (MY_PATCH_LEVEL): bump to .28
5322
5323         * Documentation/user/basic-notation.itely (Ties): add tie examples
5324         refs.
5325
5326         * lily/tie-formatting-problem.cc (score_ties_configuration):
5327         symmetry penalties for outer ties.
5328
5329 2006-01-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5330
5331         * lily/tie-formatting-problem.cc (generate_configuration) 
5332         (set_manual_tie_configuration): skip non-pair manual
5333         tie-configuration, so you can set individual ties as
5334
5335           #'tie-configuration = #'((7 . 1) #t (-3 . 1))
5336
5337         * input/regression/tie-chord.ly: use generateTiePattern to
5338         simplify file.
5339
5340         * lily/tie-formatting-problem.cc (peak_around): new function.
5341         (score_configuration): use sliding criterion for staff line collisions. 
5342         (score_configuration): idem for dot collisions.
5343         (generate_configuration): use separate stem_gap for gap to stem.
5344
5345         * lily/include/tie-formatting-problem.hh (struct Tie_details):
5346         separate penalty factors for x and y distance.
5347         (struct Tie_details): separate penalties for tip and center line collisions.
5348
5349 2006-01-19 Han-Wen Nienhuys  <hanwen@xs4all.nl>
5350
5351         * lily/tie-formatting-problem.cc (generate_configuration): make
5352         large ties avoid stafflines in the horizontal section.
5353         (score_configuration): use softcoded penalties
5354         (score_aptitude): idem.
5355
5356         * lily/tie-helper.cc (from_grob): softcode tie details
5357
5358         * lily/staff-symbol-referencer.cc (on_staff_line): new function
5359
5360         * lily/staff-symbol-referencer.cc (on_line): rename from
5361         on_staffline 
5362
5363 2006-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5364
5365         * ly/music-functions-init.ly: remove duplicate tag.
5366
5367         * lily/include/*.hh: GCC 4.1 fixes.
5368
5369 006-01-16  Erlend Aasland  <erlenda@gmail.com>
5370
5371         * Documentation/user/global.itely: fix typos; @bugs -> @refbugs
5372
5373         * scm/define-music-types.scm: fix bug in desc. string
5374         for OverrideProperty
5375
5376 2006-01-15 Erik Sandberg  <mandolaerik@gmail.com>
5377
5378         * scripts/lilypond-book.py: bugfix
5379
5380         * scm/define-music-types.scm: fix typos.
5381
5382 2006-01-14  Graham Percival  <gpermus@gmail.com>
5383
5384         * Documentation/user/ basic-notation.itely, global.itely,
5385         advanced-notation.itely, instrument-notation.itely: small
5386         additions (bugs and commonly tweaked properties).
5387
5388 2006-01-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5389
5390         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): generic
5391         detection of mingw build.
5392         (MINGW_BUILD): opps.
5393
5394 2006-01-12  Jan Nieuwenhuizen  <janneke@gnu.org>
5395
5396         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Add
5397         i686-mingw32.
5398
5399 2006-01-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5400
5401         * scm/music-functions.scm (skip->rest): add skip->rest
5402
5403 2006-01-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5404
5405         * lily/font-config.cc (init_fontconfig): call FcConfigBuildFonts()
5406         explicitly.
5407
5408         * lily/font-config-scheme.cc (LY_DEFINE): also display font and
5409         config dirs. Aids debugging. 
5410         (display_config): also display config files.
5411
5412 2006-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5413
5414         * VERSION: release 2.7.27
5415
5416         * lily/bar-line.cc (calc_bar_size): inspect staff->extent (Y_AXIS)
5417         for determining bar size.
5418
5419         * lily/staff-symbol.cc (print): place lines at distance line-positions
5420
5421         * scm/define-grob-properties.scm (all-user-grob-properties): add
5422         line-positions.
5423
5424         * lily/staff-symbol.cc (height): new function.
5425
5426         * input/regression/staff-line-positions.ly:  new file.
5427
5428 2006-01-06  Graham Percival  <gpermus@gmail.com>
5429
5430         * input/test/add-staccato.ly: remove reference to old file.
5431
5432 2006-01-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5433
5434         * scripts/lilypond-book.py (invokes_lilypond): allow . in path to
5435         lilypond binary too.
5436
5437 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5438
5439         * make/mutopia-rules.make (Module): use LILYPOND_BINARY
5440
5441 2006-01-06  Jan Nieuwenhuizen  <janneke@gnu.org>
5442
5443         * scripts/midi2ly.py: Bugfix: Declare datadir.
5444
5445         * make/ly-rules.make:
5446         * make/mutopia-rules.make: Use LILYPOND_BINARY (WAS: LILYPOND, but
5447         that seems to be gone). Fixes make web.
5448
5449         * The grand 2005-2006 replace.
5450
5451         * VERSION (MY_PATCH_LEVEL): Stay on .26 for now.
5452
5453 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5454
5455         * make/lilypond-vars.make: set LILYPOND_BINARY variable
5456         (LILYPOND_BOOK_LILYPOND_FLAGS): new variable
5457         LILYPOND_BOOK_LILYPOND_FLAGS to hold system dependent settings,
5458         like -dgs-font-load.
5459
5460         * Documentation/user/GNUmakefile ($(outdir)/interfaces.itexi):
5461         remove absolute path to lilypond binary.
5462         
5463 2006-01-05 Pedro Kroeger    <kroeger@pedrokroeger.net>
5464
5465         * configure.in (NCSB_DIR): fix --with-ncsb-dir option.
5466
5467 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5468
5469         * make/lilypond-vars.make: support LILYPOND_EXTERNAL_BINARY variable.
5470
5471         * mf/GNUmakefile: remove broken dvips map symlink.
5472
5473 2006-01-04  Jan Nieuwenhuizen  <janneke@gnu.org>
5474
5475         * lily/main.cc: 
5476         * configure.in: Cosmetic fixes.
5477
5478 2006-01-04  Mats Bengtsson  <mabe@s3.kth.se>
5479
5480         * Documentation/user/music-glossary.tely (Pitch names): Added
5481         Spanish pitch names and durations, thanks to Ernesto Gancedo
5482
5483 2006-01-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5484
5485         * scm/lily.scm (define-scheme-options): use quasi-quote for option
5486         init. Fixes verbose printing of .scm files.
5487
5488         * stepmake/aclocal.m4: add spaces before - options.
5489         
5490 2006-01-03  Jan Nieuwenhuizen  <janneke@gnu.org>
5491
5492         * lily/relocate.cc (setup_paths): Bugfix: do not store result
5493         of path search in local block variable.
5494
5495 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5496
5497         * configure.in (NCSB_DIR): --enable-ncsb-dir
5498         (LINK_GXX_STATICALLY): denko.
5499
5500         * mf/GNUmakefile ($(NCSB_TTFS)): NCSB_DIR iso. NCSB_PATH. 
5501
5502         * configure.in (LINK_GXX_STATICALLY): --enable-ncsb-path option. 
5503         use locate to find c059033l.pfb. 
5504         
5505 2006-01-02  Jan Nieuwenhuizen  <janneke@gnu.org>
5506
5507         * lily/tie-formatting-problem.cc
5508         (problem::generate_base_chord_configuration): Use my_round (was
5509         round).
5510
5511         * lily/source-file.cc (file::get_counts)[!HAVE_MBRTOWC]: Bugfix,
5512         do not invoke mbrtowc.
5513
5514         * lily/relocate.cc (setup_paths): Add more debugging verbosity.
5515
5516 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5517
5518         * scm/lily.scm (lilypond-all): oops. remove debugging hack.
5519
5520 2005-01-02  Heikki Junes  <hjunes@cc.hut.fi>
5521
5522         * Documentation/user/invoking.itely (svg): revise.
5523
5524 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5525
5526         * lily/lexer.ll: use sourcefilename iso. renameinput.
5527
5528 2006-01-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5529
5530         * mf/GNUmakefile ($(NCSB_TTFS)): revise rule. Create
5531         <PostScriptName>.ttf instead of c059XXXttf.
5532
5533         * lily/program-option.cc (LY_DEFINE): special support for
5534         --verbose, so it works before option init too.
5535  
5536         * mf/GNUmakefile (local-install): oops.
5537
5538         * lily/lyric-hyphen.cc (print): oops.
5539
5540         * buildscripts/pfx2ttf.fontforge: new file.
5541         
5542         * mf/GNUmakefile (NCSB_PATH): add vars for NCSB.
5543         ($(outdir)/%.ttf): new rule. 
5544
5545         * scm/define-grobs.scm (all-grob-descriptions): add font-interface
5546         to LyricHyphen.
5547
5548         * lily/lyric-hyphen.cc (print): multiply hyphen height by
5549         font-size
5550
5551 2005-12-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5552
5553         * VERSION: release 2.7.26
5554         
5555         * mf/GNUmakefile (install-fc-cache): remove old font.cache-1 files.
5556
5557 2005-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5558
5559         * lily/font-config.cc (init_fontconfig): verbosity.
5560
5561         * THANKS: add Muziekacademie Lede. 
5562
5563         * scripts/musicxml2ly.py (print_voice_definitions): new function 
5564         (print_score_setup): new function
5565         (convert): read part definition to output staves properly.
5566
5567         * python/musicxml.py (Measure.get_notes): new class. Wrap lists of
5568         Music_xml notes.
5569
5570         * python/musicexp.py (Output_printer.__init__): use _ in data
5571         members.
5572         (Output_printer.unformatted_output): new function: no formatting,
5573         but count braces.
5574         (Duration.get_length): remove isinstance() checks for
5575         Output_printer everywhere.
5576
5577         * input/regression/lyrics-bar.ly (texidoc): add
5578         Separating_line_group_engraver.
5579
5580 2005-12-29  Jan Nieuwenhuizen  <janneke@gnu.org>
5581
5582         * lily/relocate.cc (framework_relocation): New function,
5583         factored from set_relocation ().
5584         (prefix_relocation): Rename from set_relocation ().
5585         (setup_paths): Use it.
5586
5587 2005-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5588
5589         * scm/*.scm: use LEFT/RIGHT/UP/DOWN etc. iso. magical
5590         numbers. Patch by Erlend Aasland.
5591
5592 2005-12-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5593
5594         * lily/font-config.cc (init_fontconfig): print warning if cache
5595         file is not existant.
5596
5597         * lily/main.cc: don't use #ifdef but #if
5598
5599 2005-12-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5600
5601         * lily/grob-property.cc (internal_set_property): don't abort on
5602         calculation-in-progress.
5603
5604         * lily/beam.cc (get_default_dir): robustness: don't divide by zero.
5605
5606         * lily/tuplet-bracket.cc (calc_control_points): oops: typo. Read
5607         connect-to-neighbor property not connect-to-other
5608
5609         * lily/program-option.cc (LY_DEFINE): remove Protected_scm global variable.
5610         (LY_DEFINE): oops. don't forget protection.
5611
5612         * flower/parse-afm.cc (Module): strip AFM handling completely.
5613
5614         * lily/stencil-expression.cc: idem.
5615
5616         * lily/grob-interface-scheme.cc (LY_DEFINE): idem.
5617
5618         * lily/function-documentation.cc (ly_add_function_documentation):
5619         use static member iso. Protected_scm
5620
5621         * lily/main.cc: use ifdef ARGV0_RELOCATION iso. MINGW
5622
5623         * config.make.in (prefix): remove HAVE_KPATHSEA_SO
5624
5625 2005-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
5626
5627         * lily/relocate.cc (set_env_dir): New function.
5628         (set_relocation): Use it to fix setting PANGO_PREFIX.
5629
5630 2005-12-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5631
5632         * input/regression/stem-direction-context.ly: remove rest.
5633
5634         * lily/melody-engraver.cc (process_music): restart for bar lines.
5635         (acknowledge_slur): restart for slurs.
5636
5637 2005-12-27  Heikki Junes  <hjunes@cc.hut.fi>
5638
5639         * Documentation/user/invoking.itely: describe how to view SVG 
5640         output using Inkscape which replace embedded fonts with OTF fonts.
5641
5642 2005-12-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5643
5644         * lily/relocate.cc (set_relocation): set PANGO_PREFIX
5645
5646 2005-12-23  Jan Nieuwenhuizen  <janneke@gnu.org>
5647
5648         * lily/melody-engraver.cc (class Melody_engraver): Remove lying
5649         comment.
5650
5651 2005-12-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5652
5653         * VERSION (PACKAGE_NAME): release 2.7.25
5654
5655         * Documentation/topdocs/NEWS.tely (Top): document new feature.
5656
5657         * input/regression/stem-direction-context.ly: new file.
5658
5659         * lily/relocate.cc (set_relocation): add PANGO_PREFIX
5660
5661         * lily/melody-engraver.cc (acknowledge_stem): restart MelodyItem
5662         on rest.
5663
5664         * ly/engraver-init.ly: add Melody_engraver
5665
5666         * lily/beam.cc (calc_direction): use default-direction
5667         iso. get_default_direction()
5668
5669         * scm/define-grob-properties.scm (all-user-grob-properties): add
5670         default-direction property.
5671
5672         * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem.
5673
5674         * lily/stem.cc (calc_default_direction): remove
5675         Stem::get_default_direction, use default-direction with callback
5676         instead.
5677
5678         * lily/melody-spanner.cc (calc_neutral_stem_direction): 
5679
5680         * lily/melody-engraver.cc: new file. Acknowledge stems for
5681         interpolated stem directions. 
5682
5683         * lily/melody-spanner.cc: new file. Interpolate stem directions.
5684
5685         * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem
5686
5687         * lily/slur-configuration.cc (fit_factor): more robust check for
5688         point in curve X-extent.
5689
5690         * lily/slur.cc (outside_slur_callback): return offset_scm, not 0.
5691         (outside_slur_callback): check for 'outside avoidance.
5692
5693         * lily/slur-configuration.cc (score_extra_encompass): don't use
5694         bound->column() == avoid->column() for checking extents, as this
5695         doesn't work for accidentals. 
5696
5697         * lily/slur-engraver.cc (acknowledge_extra_object): remove
5698         DynamicText hardcoding.
5699
5700         * lily/slur-scoring.cc (enumerate_attachments): robustness: don't
5701         crash if bound stem is NULL
5702
5703         * lily/piano-pedal-performer.cc: patch by MWD for enabling piano
5704         pedals.
5705
5706 2005-12-22  Graham Percival  <gpermus@gmail.com>
5707
5708         * scm/define-markup-commands.scm: typo.  @code{\raise}
5709         => @code{\\raise}.
5710
5711         * darwin.patch: now used again, includes a
5712         required patch from fink.
5713
5714 2005-12-21  Heikki Junes  <hjunes@cc.hut.fi>
5715
5716         * po/TODO: mention gtranslator along with kbabel.
5717         * po/fi.po: update translations.
5718
5719 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
5720
5721         * lily/relocate.cc (setup_paths): Bugfix.
5722
5723 2005-12-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5724
5725         * lily/slur-configuration.cc (score_extra_encompass): don't use
5726         "avoid" choice for avoid-slur.
5727
5728         * stepmake/bin/install.py (dest): don't create existing dir.
5729
5730 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
5731
5732         * stepmake/bin/install.py: Remove file before copying.
5733
5734         * config.make.in: 
5735         * stepmake/aclocal.m4: Do not substitute INSTALL.
5736
5737 2005-12-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5738
5739         * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
5740         depend on link-tree.
5741
5742         * lily/relocate.cc (setup_paths): only check path for non-absolute
5743         dir without directory part.
5744
5745         * flower/file-name.cc (is_absolute):  new method.
5746         (is_absolute): check root_ too.
5747
5748 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
5749
5750         * lily/relocate.cc (setup_paths) [__MINGW32__]: Comment-out broken
5751         relocation code.  Oops, don't comment out too much.
5752
5753         * stepmake/stepmake/generic-vars.make (INSTALL): Assign INSTALL_PY
5754         iso itself.
5755
5756         * lily/relocate.cc [HAVE_GETTEXT]: Include libintl.h.  Fixes mingw
5757         compile.
5758
5759 2005-12-20  Jan Nieuwenhuizen  <janneke@gnu.org>
5760
5761         * .cvsignore: Add install-sh.
5762
5763         * autogen.sh (srcdir): Typo.
5764
5765 2005-12-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5766
5767         * autogen.sh (srcdir): urg. Touch install-sh.
5768
5769         * stepmake/bin/install-sh (Module): remove.
5770
5771         * stepmake/stepmake/generic-vars.make (INSTALL): add $(INSTALL).
5772
5773         * lily/include/relocate.hh: new file.
5774
5775         * lily/relocate.cc: new file. Contain relocation logic.
5776
5777         * lily/main.cc (setup_paths): fix: LILYPOND_RELOCATE_PREFIX.
5778         (main): read LILYPOND_VERBOSE as the first thing.
5779
5780         * stepmake/aclocal.m4: remove INSTALL variable.
5781
5782         * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
5783         separate target for making font symlinks.
5784         (documentation-dir): use $(if $(findstring )) for switching off
5785         Documentation.
5786
5787         * stepmake/stepmake/help2man-vars.make (OUT_DIST_FILES): only do
5788         something if DOCUMENTATION is no.
5789
5790 2005-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5791
5792         * VERSION: release 2.7.24
5793
5794         * lily/script-column-engraver.cc (stop_translation_timestep):
5795         delay adding to script-column.
5796
5797         * lily/tuplet-bracket.cc (print): suicide if no control-points. 
5798
5799         * python/convertrules.py (conv): rule for number-visibility
5800
5801         * lily/slur-configuration.cc (score_extra_encompass): different
5802         distance measure for avoid and inside avoidance.
5803         (score_extra_encompass): use 1/(distance+eps) as penalty.
5804
5805         * lily/slur-scoring.cc (generate_avoid_offsets): use 'inside
5806         encompass objects for generating slur curves.
5807
5808         * lily/slur.cc: use details iso. slur-details property.
5809
5810         * input/regression/slur-tuplet.ly: new file.
5811
5812         * lily/slur-engraver.cc (acknowledge_tuplet_number): new function.  
5813
5814         * flower/include/offset.hh (class Offset): new operator /=
5815
5816         * lily/tuplet-number.cc (print): new file, new interface.
5817
5818         * scm/define-grob-properties.scm (all-user-grob-properties):
5819         remove number-visibility property.
5820
5821         * lily/tuplet-bracket.cc (calc_control_points): new function
5822         (calc_connect_to_neighbors): new function.
5823         (print): remove text handling for tuplet numberdef.
5824
5825         * lily/tuplet-engraver.cc (struct Tuplet_description): create
5826         TupletNumbers too. 
5827
5828         * lily/lily-guile.cc (robust_scm2booldrul): new function
5829
5830         * scm/define-grobs.scm (all-grob-descriptions): new grob TupletNumber
5831
5832         * lily/tuplet-bracket.cc (calc_position_and_height): use
5833         staff-padding to control whether tuplet brackets are over staves.
5834
5835         * lily/grob.cc (suicide): clear dim_caches_.
5836
5837         * lily/dimension-cache.cc (clear): new function.
5838
5839         * lily/grob.cc (extent): swap order of min-extent and extent
5840         calculations. This fixes hara kiri staves. 
5841
5842 2005-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
5843
5844         * lily/main.cc: Nitpick: relocation is not based on path, but on
5845         directory (location).
5846
5847 2005-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5848
5849         * lily/main.cc (setup_paths): read LILYPOND_RELOCATE_PREFIX
5850
5851         * stepmake/stepmake/install-targets.make (local-uninstall): idem.
5852
5853         * stepmake/stepmake/install-out-targets.make (local-install-outfiles): idem.
5854
5855         * stepmake/stepmake/help2man-targets.make (install-help2man): idem.
5856
5857         * stepmake/stepmake/generic-vars.make (Module): idem.
5858
5859         * stepmake/stepmake/executable-targets.make (default): use it.
5860
5861         * stepmake/bin/install.py (create_dir): new file. Replace install-sh.
5862
5863         * make/GNUmakefile: don't install make rules.
5864
5865         * lily/main.cc (setup_paths): don't inspect $PATH for argv0 with
5866         slashes.
5867         (prepend_env_path): more verbosity.
5868
5869 2005-12-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5870
5871         * GNUmakefile.in: add dir argument for find command.
5872
5873         * lily/parser.yy (bass_figure): set_spot() for bass figures. This
5874         fixes weird line numbers for point & click.
5875
5876         * lily/source-file.cc (get_counts): init line/column/char counts.
5877
5878 2005-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5879
5880         * lily/main.cc: remove ARGV0_RELOCATION, instead use --relocate.
5881
5882 2005-12-16  Graham Percival  <gpermus@gmail.com>
5883
5884         * Documentation/user/basic-notation.itely, advanced-notation.itely:
5885         minor fixes from Fredric.  Thanks!
5886
5887 2005-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5888
5889         * ly/music-functions-init.ly: add \bar and \clef music function 
5890
5891         * lily/lily-lexer.cc: idem.
5892
5893         * lily/parser.yy (FIXME): remove BAR and CLEF.
5894
5895 2005-12-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5896
5897         * Documentation/topdocs/NEWS.tely (Top): doc string argument change.
5898
5899         * lily/parser.yy (Generic_prefix_music_scm): allow strings as
5900         function arguments too
5901
5902         * lily/main.cc (set_relocation): new function.
5903
5904         * scripts/musicxml2ly.py (convert): add \version
5905
5906         * lily/tie.cc: remove get_default_attachments()
5907
5908         * VERSION (PACKAGE_NAME): release 2.7.23
5909         
5910         * lily/chord-tremolo-engraver.cc (acknowledge_stem): use
5911         ultimate_music_cause(). This fixes core dumps in unfold-all-repeats.ly
5912
5913         * Documentation/topdocs/NEWS.tely (Top): document new feature.
5914
5915         * lily/tie-formatting-problem.cc (score_ties): new function
5916         (get_variations): new function. Try flipping dirs for collisions.
5917         (generate_optimal_chord_configuration): new function. 1-opt search
5918         for better configuration.
5919
5920         * lily/tie-configuration.cc: new file.
5921
5922         * lily/tie.cc: junk Tie::get_configuration()
5923
5924         * lily/tie-formatting-problem.cc (score_ties_aptitude): new function.
5925         (score_ties_configuration): new function.
5926         (generate_ties_configuration): new function.
5927         (generate_base_chord_configuration): new function.
5928         (set_ties_config_standard_directions): Move body from tie-column-format.cc 
5929         (set_manual_tie_configuration): Move body from tie-column-format.cc 
5930
5931         * input/regression/tie-dot.ly: new file.
5932
5933         * lily/tie-formatting-problem.cc (score_configuration): score
5934         tie/dot collisions.
5935
5936         * lily/tie-helper.cc (get_transformed_bezier): new function
5937
5938         * Documentation/topdocs/NEWS.tely (Top): strip out-www.
5939
5940         * stepmake/stepmake/python-module-vars.make (SHARED_FLAGS): use
5941         -undefined suppress iso. -framework Python 
5942
5943         * scm/define-grobs.scm (all-grob-descriptions): set
5944         springs-and-rods (thanks Joe Neeman!)
5945
5946 2005-12-12  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5947
5948         * input/no-notation/display-lily-tests.ly (test): 
5949         * scm/display-lily.scm (tag->lily-string): the syntax for tags has
5950         changed from \tag #'(a b) to \tag #'a \tag #'b
5951
5952 2005-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5953
5954         * Documentation/topdocs/NEWS.tely: strip out-www.
5955
5956         * lily/include/grob-interface.hh: include lily-guile.hh not libguile.h
5957
5958         * config.make.in (AR): add AR and RANLIB
5959
5960         * flower/libc-extension.cc: include cassert
5961
5962         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): more robust
5963         darwin check.
5964
5965 2005-12-11  Graham Percival  <gpermus@gmail.com>
5966
5967         * stepmake/stepmake/generic-vars.make: define DARWIN_BUILD.
5968
5969         * stepmake/stepmake/python-modules-vars.make: define
5970         SHARED_FLAGS for OSX.  Thanks Johannes Schindelin!
5971
5972         * THANKS: added Johannes Schindelin.
5973
5974 2005-12-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5975
5976         * python/midi.c (pymidi_parse): use memcmp() iso. strcmp().
5977
5978         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
5979         Span_arpeggio_engraver, add Tweak_engraver to Score context. 
5980
5981         * lily/parser.yy: reorganize file layout.
5982
5983         * ly/music-functions-init.ly: add tweak music function.
5984
5985         * lily/grob-info.cc (ultimate_music_cause): new function:
5986         recursively lookup causes. 
5987
5988         * lily/parser.yy (chord_body_element): allow music functions for
5989         post-events, allow music functions for chord elements. 
5990  
5991         * lily/font-config-scheme.cc (display_fontset): add cast.
5992
5993         * python/convertrules.py (FatalConversionError.sub_syms): \tag
5994         #'(a b) -> \tag #'a \tag #'b rule.
5995
5996         * python/musicexp.py (Output_printer.dump_version): new function
5997
5998 2005-12-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5999
6000         * lily/parser.yy (FIXME): remove \tag
6001         (FIXME): remove tag_music() function.
6002
6003         * lily/lily-lexer.cc: remove \tag
6004
6005         * ly/music-functions-init.ly: define music-function "tag"
6006
6007         * lily/parser.yy (chord_body_element): allow tags in chord bodies.
6008
6009 2005-12-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6010
6011         * VERSION (PATCH_LEVEL): release 2.7.22
6012
6013         * input/regression/lyric-hyphen-retain.ly: renew.
6014
6015         * scm/define-grobs.scm (all-grob-descriptions): add LyricSpace
6016         grob
6017
6018         * lily/lyric-hyphen.cc (set_spacing_rods): use minimum-distance
6019         iso. minimum-length property for rods.
6020
6021         * lily/hyphen-engraver.cc (acknowledge_lyric_syllable): create
6022         LyricSpace item to keep lyrics spaced apart.
6023
6024         * ly/engraver-init.ly: remove Separating_line_group_engraver
6025
6026         * Documentation/user/music-glossary.tely: do setfilename before
6027         music-glossary.
6028
6029 2005-12-07  Heikki Junes  <hjunes@cc.hut.fi>
6030
6031         * Documentation/user/lilypond-book.itely: use `,´ after xref:
6032         See xref documentation, for example.
6033
6034 2005-12-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6035
6036         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): use
6037         pending_skip iso. ly_voice[-1]
6038         (main): add if __main__ for debugging.
6039
6040         * python/musicxml.py (Accidental.__init__): new class.
6041
6042         * scripts/musicxml2ly.py (progress): new function
6043         (musicxml_key_to_lily): don't barf on modeless keys.
6044         (create_skip_music): new function.
6045         (musicxml_spanner_to_lily_event): new function. Handle beams too.
6046         (musicxml_note_to_lily_main_event): new function.
6047
6048         * python/musicexp.py (Music.__init__): add comment field.
6049         (NestedMusic.append): new routine.
6050         (SequentialMusic.print_ly): print comment.
6051         (ArpeggioEvent.ly_expression): new class
6052         (BeamEvent.ly_expression): new class
6053         (NoteEvent.__init__): support for cautionary/forced accs.
6054
6055         * lily/lookup.cc (slur): normal order for array loop.
6056
6057         * scm/framework-ps.scm (dump-stencil-as-EPS): set left X of bbox
6058         to 0.0.
6059
6060         * ly/engraver-init.ly: set bar-size, so bar-lines aren't
6061         collapsed.
6062
6063 2005-12-06 Erik Sandberg  <mandolaerik@gmail.com>
6064
6065         * scm/music-functions.scm: Make phrasing slurs follow voice direction
6066
6067         * scripts/lilypond-book.py: Introduce option
6068             --preserve-line-breaks, for usage with srcltx
6069
6070 2005-12-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6071
6072         * scm/output-lib.scm (print-circled-text-callback): draw circle
6073         around text using make-circle-markup.
6074
6075         * Documentation/user/*: strip out-www from file names.
6076
6077 2005-12-05  Heikki Junes  <hjunes@cc.hut.fi>
6078
6079         * Documentation/user/lilypond.tely (direntry): remove empty lines;
6080         fixes invalid info entry issue with makeinfo 4.8 in debian sid.
6081
6082 2005-12-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6083
6084         * Documentation/user/GNUmakefile: idem.
6085
6086         * Documentation/user/macros.itexi: strip out-www
6087
6088         * python/rational.py: python 2.3 compat.
6089
6090         * VERSION (PATCH_LEVEL): release 2.7.21
6091
6092         * scripts/musicxml2ly.py (NonDentedHeadingFormatter.format_headi):
6093         option formatting, lilypond style.
6094
6095         * python/musicexp.py: grab from Ikebana: a library for composing
6096         ly music expressions. 
6097         (Output_printer): class for advanced .ly printing.
6098         (eg. tupletting) 
6099
6100         * python/musicxml.py: new file. Read MusicXML MiniDOM tree, and
6101         convert to pythonesque structure.
6102
6103         * python/rational.py: PD rational number class.
6104
6105         * Documentation/user/converters.itely (Invoking musicxml2ly):  new node.
6106
6107 2005-12-04  Erik Sandberg  <mandolaerik@gmail.com>
6108
6109         * lily/part-combine-iterator.cc: Minor bugfix
6110         
6111         * THANKS: Update bughunters
6112
6113 2005-12-02  Werner Lemberg  <wl@gnu.org>
6114
6115         * mf/README: Document process for proper mf2pt1 conversion.
6116
6117         * mf/feta-beugel.mf (draw_brace): Fix path to assure clean
6118         overlapping.
6119
6120         * mf/feta-harmonica.mf: Removed.  Unused.
6121
6122 2005-12-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6123
6124         * scripts/lilypond-book.py (do_file): fix thinkos.
6125
6126 2005-12-01  Jan Nieuwenhuizen  <janneke@gnu.org>
6127
6128         * lily/GNUmakefile ($(outdir)/FlexLexer.h):
6129         ($(outdir)/parser.cc): 
6130         ($(outdir)/lexer.cc): Bugfix: depend on config.h.
6131
6132 2005-11-30  Pedro Kröger  <kroeger@pedrokroeger.net>
6133
6134         * ly/titling-init.ly (tagline): it should be a space between
6135         "Music engraving by LilyPond" and the version number.
6136
6137 2005-12-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6138
6139         * VERSION (PACKAGE_NAME): release 2.7.20
6140
6141 2005-11-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6142
6143         * scm/define-markup-commands.scm (pad-to-box): new markup command.
6144
6145         * scm/define-grobs.scm (all-grob-descriptions): set thickness to
6146         1.0.
6147         (all-grob-descriptions): don't shift RehearsalMark arbitrarily.
6148
6149 2005-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6150
6151         * configure.in (LINK_GXX_STATICALLY): remove kpathsea checks.
6152
6153         * kpath-guile/: remove directory
6154
6155         * scm/kpathsea.scm (ly:kpathsea-expand-variable): new
6156         file. Encapsulate kpathsea using commandline tools.
6157
6158         * lily/all-font-metrics.cc (kpathsea_find_file): use (scm
6159         kpathsea) module.
6160
6161 2005-11-29  Mats Bengtsson  <mabe@s3.kth.se>
6162
6163         * Documentation/user/advanced-notation.itely (Setting automatic
6164         beam behavior): Correct a few typos. Thanks to David Bobroff.
6165
6166         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use
6167         \usepackage instead of \RequirePackage. Thanks to Bernard Hurley.
6168
6169 2005-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6170
6171         * scripts/*.py: gmane address for bugs.
6172
6173 2005-11-28 Pal Benko <benkop@freestart.hu>
6174         
6175         * make/ly-rules.make: add -f switch to mv
6176
6177         * scm/output-libs.scm: add new bar symbol "." for punctus divisionis
6178
6179         * lily/bar-line.cc: interpret it
6180
6181 2005-11-28  Jan Nieuwenhuizen  <janneke@gnu.org>
6182
6183         * configure.in (--disable-documentation): New switch.
6184
6185         * GNUmakefile.in: Use it.
6186
6187         * stepmake/aclocal.m4: Use AC_ARG_ENABLE for kpatsea.
6188
6189 2005-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6190
6191         * scripts/lilypond-book.py (do_file): search chunks for
6192         \\begin{document}
6193
6194         * GNUmakefile.in: add copy step in between so we can lose the
6195         out-www directories.
6196
6197 2005-11-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6198
6199         * lily/pango-font.cc (pango_item_string_stencil): put
6200         geometry.width into glyph-string too.
6201
6202 2005-11-26  Nicolas Sceaux  <nicolas.sceaux@free.fr>
6203
6204         * scm/define-music-display-methods.scm (RevertProperty):
6205         (OverrideProperty): Use grob-property-path property, a list of
6206         symbols, instead of grob-property, which used to be a single
6207         symbol.
6208         (BassFigureEvent): a figure can be a plain number, not necessarily a
6209         markup.
6210
6211 2005-11-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6212
6213         * VERSION: release 2.7.19
6214         
6215         * lily/figured-bass-engraver.cc (process_music): check
6216         figuredBassCenterContinuations first.
6217
6218         * scm/translation-functions.scm (format-bass-figure): make double
6219         sharp larger. 
6220
6221         * lily/mark-engraver.cc: read rehearsalMarkAlignSymbol to
6222         determine X-parent.
6223
6224         * lily/system-start-delimiter-engraver.cc: move from
6225         Nested_system_start_delimiter_engraver, rename
6226         Nested_system_start_delimiter_engraver ->
6227         System_start_delimiter_engraver.
6228
6229         * lily/nested-system-start-delimiter-engraver.cc (from_list): read
6230         bracket type from hierarchy.
6231
6232 2005-11-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6233
6234         * lily/rest.cc (y_offset_callback): read staff-position.
6235
6236         * scm/define-grob-properties.scm (all-user-grob-properties): don't
6237         mark after-line-breaking-callback as internal.
6238
6239         * lily/self-aligment-interface.cc: remove self-[XY]-offset.
6240
6241 2005-11-25  Werner Lemberg  <wl@gnu.org>
6242
6243         * mf/feta-banier.mf ("d3"): Make `flare' equal to `staff_space'.
6244
6245 2005-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6246
6247         * stepmake/bin/add-html-footer.py (do_file): add google
6248
6249         * lily/staff-symbol-engraver.cc (process_music): bugfix: stop
6250         staff if first_start_ is true.
6251
6252 2005-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6253
6254         * scripts/midi2ly.py (split_track): add __repr__ members.
6255         (track_first_item): only return Item if not None. This fixes a
6256         problem when dumping a track that starts with an empty channel.
6257
6258         * python/midi.c: doc module.
6259
6260 2005-11-22  Mats Bengtsson  <mabe@s3.kth.se>
6261
6262         * Documentation/user/global.itely (Creating MIDI files): Fix
6263         compilation problem.
6264
6265 2005-11-22  Graham Percival  <gpermus@gmail.com>
6266
6267         * Documentation/user/basic-notation.itely: clarify dynamic
6268         padding text.
6269
6270         * Documentation/user/advanced-notation.itely: add unicode
6271         escape control example, whatever that is.  :)
6272
6273         * Documentation/user/global.itely: added "removing dynamics
6274         from MIDI" code.
6275
6276 2005-11-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6277
6278         * VERSION (PATCH_LEVEL): release 2.7.18
6279
6280         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): replace
6281         System_start_delimiter_engraver by
6282         Nested_system_start_delimiter_engraver.
6283
6284         * lily/nested-system-start-delimiter-engraver.cc (struct
6285         Bracket_nesting_node): new class.
6286         (struct Bracket_nesting_group): new class
6287         (struct Bracket_nesting_staff): new class.
6288         (process_music): create hierarchy of grobs. This allows separate
6289         tuning of different SSDs. 
6290
6291         * scm/define-grobs.scm (all-grob-descriptions): new Grob SystemStartSquare
6292         (all-grob-descriptions): remove old NestedSystemStartDelimiter.
6293
6294 2005-11-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6295
6296         * lily/side-position-interface.cc (aligned_side): multiply
6297         staff_radius by 2.
6298
6299         * lily/script-engraver.cc (make_script_from_event): allow setting
6300         values to '()
6301
6302 2005-11-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6303
6304         * lily/system-start-delimiter.cc (line_bracket): don't shorten height.
6305
6306         * scm/define-grobs.scm (all-grob-descriptions): new grob
6307         NestedSystemStartDelimiter.
6308
6309         * input/regression/system-start-heavy-bar.ly: new file.
6310
6311         * lily/nested-system-start-delimiter-engraver.cc: new file.
6312
6313         * lily/nested-system-start-delimiter.cc: new file.
6314
6315         * input/regression/system-start-nesting.ly: new file.
6316
6317         * scm/define-grobs.scm (all-grob-descriptions): use X side
6318         positioning for positioning braces for nested contexts.
6319
6320         * lily/system-start-delimiter.cc (print): don't divide extent by
6321         staff_space.
6322         (print): use style iso. glyph.
6323         (staff_bracket): translate glyph inside routine already.
6324
6325 2005-11-18  Michael Welsh Duggan <md5i@cs.cmu.edu>
6326
6327         * lily/vaticana-ligature-engraver.cc: fixed 2 typos in glyph
6328         names.
6329
6330 2005-11-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6331
6332         * scm/define-context-properties.scm
6333         (all-user-translation-properties): rename figuredBassFormatter
6334         from newFiguredBassFormatter.
6335
6336         * scm/define-grobs.scm (all-grob-descriptions): move from NewBassFigure
6337
6338         * lily/figured-bass-engraver.cc: move from new-figured-bass-engraver.cc
6339
6340         * lily/stem.cc (calc_stem_info): trigger beaming calculation.
6341
6342         * lily/beam.cc (calc_beaming): new function.
6343         (calc_shorten): new function.
6344
6345         * THANKS: add Edward Neeman.
6346
6347         * input/regression/accidental-clef-change.ly: new file.
6348
6349         * lily/note-collision.cc (check_meshing_chords): don't merge fa heads.
6350
6351         * scm/define-grobs.scm (all-grob-descriptions): add Y-offset property.
6352
6353         * lily/clef-engraver.cc (inspect_clef_properties): reset
6354         localKeySignature for clef changes.
6355
6356 2005-11-17  Mats Bengtsson  <mabe@s3.kth.se>
6357
6358         * python/midi.c: PyMIDINIT_FUNC isn't defined in Python < 2.3 
6359         add dummy definition that works in Linux and add information in
6360         INSTALL.texi on the specific Python requirements for Cygwin/Mingw.
6361
6362         * Documentation/user/changing-defaults.itely (Modifying context
6363         plug-ins): Add index for \with.
6364
6365         * Documentation/user/music-glossary.tely (dal segno): Updated
6366         example to version >=2.6.
6367
6368 2005-11-16  Mats Bengtsson  <mabe@s3.kth.se>
6369
6370         * Documentation/user/instrument-notation.itely (Printing chord
6371         names): Reorder \chordmode and \repeat in one example.
6372
6373 2005-11-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6374
6375         * VERSION: release 2.7.17
6376         
6377         * Documentation/topdocs/NEWS.tely (Top): add note about
6378         refactoring.
6379
6380         * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
6381         new function. Search region of 3 positions for best tie.
6382         (score_configuration): new function.
6383         (score_aptitude): new function.
6384         (generate_configuration): new function.
6385         (get_configuration): new function.
6386         (Tie_formatting_problem): new function
6387
6388         * input/regression/page-top-space.ly: a6 for page-top-space demo. 
6389
6390         * stepmake/aclocal.m4: use $(if ) for config-FOOF.make
6391
6392         * THANKS: add Eduardo Vieira & Ralph Little
6393
6394         * mf/feta-bolletjes.mf (solfa_quarter_width): make solfa heads
6395         narrower.
6396
6397         * lily/include/tie-formatting-problem.hh (class
6398         Tie_formatting_problem): add Tie_details to
6399         Tie_formatting_problem. Update calling conventions.
6400
6401         * stepmake/aclocal.m4: oops. Include $CONFIGFILE.make, not
6402         config.make.
6403
6404         * Documentation/user/lilypond.tely: remove musedata2ly entry.
6405
6406 2005-11-16  Jürgen Reuter  <reuter@ipd.uka.de>
6407
6408         * lily/ligature-engraver.cc, lily/include/ligature-engraver.hh,
6409         scm/define-context-properties.scm: Maintenance bugfix: make
6410         ligature brackets work again by removing obsolete ligature
6411         primitive callback push/pop.
6412
6413         * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: do
6414         not call Tuplet_bracket::calc_direction.  Removed obsolete gap
6415         value.
6416
6417 2005-11-15  Jan Nieuwenhuizen  <janneke@gnu.org>
6418
6419         * stepmake/aclocal.m4 (depth): Explain why absolute directory is
6420         used and do not call it a path.
6421         (FLEXLEXER_FILE): Rename from FLEXLEXER_PATH and add file name.
6422
6423 2005-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6424
6425         * lily/include/tie-formatting-problem.hh (class
6426         Tie_formatting_problem): new file.
6427
6428         * lily/tie-formatting-problem.cc (common_x_refpoint): new file.
6429
6430         * Documentation/misc/ChangeLog-2.3:  new file.
6431
6432         * lily/audio-staff.cc (output): degarianize.
6433
6434 2005-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
6435
6436         * stepmake/stepmake/python-module-rules.make ($(outdir)/%.pyc):
6437         Unset PYTHONOPTIMIZE.  Fixes install if set.
6438
6439 2005-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6440
6441         * python/convertrules.py (conv): add warning about drums. 
6442
6443         * make/stepmake.make: include toplevel-version.make after config.make.
6444
6445         * stepmake/aclocal.m4 (depth): make sure $srcdir is absolute.
6446         also allow python2.4
6447
6448         * config.make.in (configure-srcdir): remove GXX GCC vars.
6449
6450         * stepmake/aclocal.m4: don't do non-srcdir build with
6451         symlinks. Use inclusion, so the src directory name can be changed.
6452
6453 2005-11-13  Jan Nieuwenhuizen  <janneke@gnu.org>
6454
6455         * make/mutopia-vars.make:
6456         * make/ly-vars.make: Use src-wildcard iso wildcard for source
6457         files.
6458
6459 2005-11-13  Werner Lemberg  <wl@gnu.org>
6460
6461         * mf/feta-arrow.mf: For all glyphs, don't mirror `currentpicture'
6462         but the affected path.  This ensures that the (overlapping) outlines
6463         have the same direction, which is a necessary prerequisite for
6464         FontForge's algorithm to remove overlaps.
6465         Formatting.
6466
6467         * mf/feta-haak.mf: Formatting.
6468         (draw_bracket): Slightly modify outline to avoid an unnecessary
6469         corner.
6470         Don't use ad-hoc values for `leave_angle' and `tip_angle' but derive
6471         them from the affected paths.
6472
6473 2005-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6474
6475         * mf/README: remove xpm / accordion notes.
6476
6477         * lily/tie-column-format.cc (set_chord_outline): add dots into
6478         skyline extents. This fixes tie formatting if the left head has dots.
6479
6480         * lily/tie.cc (get_configuration): only shift tie by a whole staff
6481         space inside the staff.
6482         (get_configuration): shift another position if necessary in case
6483         of left head tie  
6484
6485 2005-11-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6486
6487         * stepmake/stepmake/texinfo-vars.make (GENERATE_OMF): use
6488         buildscript-dir iso. $(depth)/buildscripts.
6489
6490         * tex/GNUmakefile (local-uninstall): remove
6491         music-drawing-routines.ps juggling.
6492
6493         * stepmake/stepmake/install-targets.make (local-install-files):
6494         prepend src-dir to install targets.
6495
6496         * lily/system-start-delimiter-engraver.cc
6497         (acknowledge_system_start_delimiter): use
6498         add_offset_callback(). This fixes translation of nested
6499         staffgroups.
6500
6501         * lily/grob-closure.cc (add_offset_callback): only encaps in
6502         simple_closure if it's a procedure.
6503         
6504         * lily/span-bar.cc (calc_glyph_name): read glyph-name, not glyph
6505         from bar-line.
6506
6507         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
6508         remove-empty where pertinent.
6509
6510 2005-11-12  Graham Percival  <gpermus@gmail.com>
6511
6512         * Documentation/user/instrument-notation.itely: added
6513         Cameron Horsburgh's multiple stanzas docs.  Thanks!
6514
6515 2005-11-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6516
6517         * lily/GNUmakefile
6518         ($(top-build-dir)/Documentation/pictures/$(outbase)/lilypond.ico):
6519         make picture in builddir, not srcdir.
6520
6521 2005-11-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6522
6523         * VERSION: release 2.7.16
6524         
6525         * scripts/lilypond-book.py (main): use commands.mkarg () to quote
6526         shell arguments. 
6527
6528 2005-11-10  Mats Bengtsson  <mabe@s3.kth.se>
6529
6530         * Documentation/user/examples.itely (Piano templates): Minor
6531         modification to the Piano centered lyrics example.
6532
6533 2005-11-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6534
6535         * scripts/lilypond-invoke-editor.scm (run-browser): look at
6536         $BROWSER.
6537
6538         * Documentation/user/point-and-click.itely: simplify p&c
6539         instruction: don't configure firefox. Put lilypond-invoke-editor
6540         in front of the browser.
6541
6542         * scripts/lilypond-invoke-editor.scm (run-editor): new function.
6543         (run-browser): new function.
6544
6545         * lily/parser.yy (Lily_lexer): recognize Book
6546
6547         * lily/book.cc (clone): new function
6548
6549         * lily/parser.yy (book_body): allow BOOK_IDENTIFIER.
6550
6551 2005-11-10  Jürgen Reuter  <reuter@ipd.uka.de>
6552
6553         * lily/vaticana-ligature.cc, lily/vaticana-ligature-engraver.cc:
6554         Maintenance bugfix: reduce number of font related warnings by
6555         updating naming conventions for glyph-name.
6556
6557 2005-11-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6558
6559         * scm/define-grobs.scm (all-grob-descriptions): add
6560         rhythmic-grob-interface to TabNoteHead.
6561
6562         * scm/layout-beam.scm (check-quant-callbacks): remove
6563         set_stem_lengths()
6564
6565 2005-11-08  Jürgen Reuter  <reuter@ipd.uka.de>
6566
6567         * ly/gregorian-init.ly (divisiones): Maintenance bugfix: vertical
6568         alignment of centered divisiones.
6569
6570         * scm/scripts.scm (articulations): Maintenance bugfix:
6571         follow-into-staff -> quantize-position.
6572
6573         * lily/vaticana-ligature-engraver.cc (transform_heads): Bugfix:
6574         plica head in porrectus deminutus.
6575
6576 2005-11-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6577
6578         * make/lilypond.fedora.spec.in (Group): add %clean section.
6579
6580         * lily/tuplet-bracket.cc (print): change check: remove bracket if
6581         less then 1/5th of total length.  
6582         (print): use gap too.  Fixes tupletUp-single-bracket.ly
6583
6584         * scm/music-functions.scm (glue-mm-rest-texts): also put other
6585         events into EventChord. This fixes textspanners on mm rests. Fixes
6586         spanner-rest.ly
6587
6588         * lily/side-position-interface.cc (get_axis): read side-axis
6589         (set_axis): set side-axis.
6590
6591         * scm/define-grobs.scm (all-grob-descriptions): add side-axis
6592         properties everywhere.
6593
6594         * lily/spacing-spanner.cc (breakable_column_spacing): add
6595         average-spacing-wishes. Take maximum if not set.
6596         (musical_column_spacing): idem. Fixes: spacing-keysig-note.ly
6597
6598         * scm/define-grobs.scm (all-grob-descriptions): add
6599         average-spacing-wishes.
6600
6601         * lily/grob-closure.cc (add_offset_callback): bugfix: properly add
6602         offset callbacks. This fixes alignment for Fingering objects.
6603
6604         * scm/define-grobs.scm (all-grob-descriptions): tiny bit less
6605         space for key - timesig combination. 
6606
6607         * input/regression/script-stem-tremolo.ly (Module): new file.
6608
6609         * scm/define-grobs.scm (all-grob-descriptions): decrease distance
6610         to key sig.
6611
6612         * lily/dynamic-engraver.cc (acknowledge_stem_tremolo): new function.
6613         Fixes: c-tremolo-script.ly.
6614         
6615         * lily/text-engraver.cc (acknowledge_stem_tremolo): new function.
6616
6617         * lily/script-engraver.cc (acknowledge_stem_tremolo): new function.
6618         
6619         * scm/define-grobs.scm (all-grob-descriptions): remove
6620         self-X-offset. Fixes alignment of octavate-8.
6621
6622         * scripts/lilypond-book.py (datadir): look in
6623         LILYPONDPREFIX/share/lilypond/current/
6624
6625         * GNUmakefile.in: symlink current to <VERSION>. 
6626
6627 2005-11-07  Pedro Kroger  <kroeger@pedrokroeger.net>
6628
6629         * lily/main.cc: eps listed as a backend.
6630
6631 2005-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6632
6633         * scm/lily-library.scm (print-music-as-book): quote $defaultpaper.
6634
6635 2005-11-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6636
6637         * lily/include/score.hh (class Score): remove texts_ member.
6638
6639         * lily/beam.cc (set_stem_lengths): force direction callback.
6640         (print): read quantized-positions, so we can force
6641         Beam::set_stem_lengths to occur.
6642         (rest_collision_callback): use common X parent. 
6643
6644 2005-11-03  Jan Nieuwenhuizen  <janneke@gnu.org>
6645
6646         * flower/file-path.cc (find): Bugfix: Return name of file found.
6647
6648         * lily/main.cc (setup_paths): Bugfix for argv0 logic.
6649         (setup_paths)[__CYGWIN__ || __MINGW32__]: Normalize argv0.
6650         (setup_paths)[__MINGW32__]: Also look for argv0 + .exe.
6651
6652 2005-11-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6653
6654         * flower/offset.cc: idem.
6655
6656         * mf/*.mf: update email address.
6657
6658         * lily/font-config-scheme.cc:  new file.
6659
6660         * GNUmakefile.in (SUBDIRS): remove debian/ directory.
6661
6662         * lily/*:  cs.uu.nl -> xs4all.nl
6663
6664         * VERSION (PATCH_LEVEL): release 2.7.15
6665
6666         * make/lilypond.mandrake.spec.in (Module): remove Mandrake & Suse
6667         spec files.
6668
6669         * make/lilypond.fedora.spec.in: add %{libdir}/lilypond/
6670
6671 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6672
6673         * GNUmakefile.in: bugfix: encapsulate mkdir && cd in parens.   
6674
6675         * lily/staff-performer.cc (process_music): add audio
6676         elements. This makes MIDI instrument changes work once again.
6677
6678         * lily/main.cc (LY_DEFINE): add gmane address.
6679
6680         * lily/beam.cc: remove calc_positions()
6681
6682         * lily/include/grob.hh (class Grob): move pscore, dim_cache_,
6683         original_ in private scope.
6684         (class Grob): drop pscore_ pointer, change to output_def pointer.
6685         (class Grob): cleanup class definition.
6686
6687         * ly/spanners-init.ly (assertBeamQuant): use make-simple-closure.
6688
6689 2005-11-02  Jan Nieuwenhuizen  <janneke@gnu.org>
6690
6691         * lily/main.cc (setup_paths)[__MINGW32__]: Do not assume argv0 is
6692         absolute.  Better diagnostics.
6693
6694         * GNUmakefile.in: Add bin/ to tree and populate with some links.
6695         This makes lilypond run from the build directory using argv0
6696         relocation (without any --prefix or LILYPONDPREFIX setting).
6697
6698 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6699
6700         * Documentation/topdocs/NEWS.tely (Top): document new backend design.
6701
6702         * scm/define-grobs.scm: purge self-[XY]-offset variables, replace
6703         with simple-closure.
6704
6705         * lily/self-aligment-interface.cc (set_align_self): new function
6706         (set_center_parent): new function.
6707
6708         * lily/side-position-interface.cc (set_axis): new function.
6709
6710         * lily/new-fingering-engraver.cc (position_scripts): use drul for
6711         generic code. 
6712
6713         * scm/define-grob-properties.scm (all-user-grob-properties):
6714         remove [XY]-offset-callbacks add [YX]-offset
6715         
6716 2005-11-02  Mats Bengtsson  <mabe@s3.kth.se>
6717
6718         * scm/define-grobs.scm (all-grob-descriptions): Added space-alist
6719         entry for time signatures after breathing signs. Bug report by
6720         Scott Russell.
6721
6722 2005-11-01  Jan Nieuwenhuizen  <janneke@gnu.org>
6723
6724         * lily/main.cc (setup_paths)[!__MINGW32__]: Bugfix: if argv0 is
6725         not absolute, make it absolute using PATH.
6726
6727 2005-10-28  Jan Nieuwenhuizen  <janneke@gnu.org>
6728
6729         * python/midi.c (initmidi): Fix type for mingw.
6730
6731 2005-10-27  Jan Nieuwenhuizen  <janneke@gnu.org>
6732
6733         * stepmake/stepmake/compile-vars.make (SHARED_FLAGS): Support mingw.
6734
6735         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Detect mingw
6736         cross compiling.
6737
6738         * stepmake/aclocal.m4: Support python cross compiling.
6739
6740         * stepmake/stepmake/python-module-vars.make (SHARED_MODULE_SUFFIX):
6741         Add mingw section.
6742
6743 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6744
6745         * scm/output-lib.scm (chain-grob-member-functions): replace
6746         chained-callback.cc
6747
6748         * lily/chained-callback.cc (Module): remove file.
6749
6750         * lily/rest-collision.cc (force_shift_callback_rest): change to
6751         chained callback.
6752
6753         * lily/rest.cc (y_offset_callback): merge function of 3 callbacks. 
6754
6755         * lily/grob.cc (y_parent_positioning): remove axis argument from
6756         parent_positioning callbacks.
6757         (Grob): junk init code
6758         (get_offset): use generic property callbacks for
6759         X-offset, Y-offset. Remove Grob::{add,has}_offset_callback.
6760         (axis_parent_positioning): new function
6761         (axis_offset_symbol): new function
6762         (chain_offset_callback): new function
6763         (add_offset_callback): new function
6764
6765         * lily/beam.cc (rest_collision_callback): change signature; this
6766         is now a chained callback.
6767
6768         * lily/include/dimension-cache.hh (class Dimension_cache): remove
6769         callback administration.
6770
6771         * lily/simple-closure.cc: new file. Smob type that allows "grob
6772         member functions",
6773
6774             (ly:make-simple-closure FUNC A B)
6775
6776         is evaluated as (FUNC grob A B). This allows chaining of callbacks
6777         in various ways.
6778
6779         * lily/slur-engraver.cc (acknowledge_extra_object): use chained
6780         callbacks.
6781
6782         * lily/slur.cc (outside_slur_callback): take 2 arguments.
6783
6784         * lily/rest.cc (polyphonic_offset_callback): remove.
6785
6786         * lily/script-engraver.cc (try_music): remove bool* argument.
6787
6788         * scm/script.scm (default-script-alist): set quantize-position
6789         appropriately.
6790
6791         * lily/script-engraver.cc: remove follow_into_staff_ special coding. 
6792
6793         * lily/side-position-interface.cc (aligned_side): move staff
6794         position quantization from
6795         Side_position_interface::quantised_position().
6796         (quantised_position): remove
6797         
6798 2005-10-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6799
6800         * input/regression/beam-quant-standard.ly: reindent, set
6801         debug-beam-quanting to #t.
6802
6803         * lily/beam-concave.cc (calc_concaveness): set concaveness to
6804         10000 if this is a "hard" concave beam.
6805
6806         * lily/beam.cc (calc_least_squares_positions): change from
6807         calc_least_squares_dy
6808         (set_stem_lengths): this is now a chained callback.
6809
6810         * lily/context-property.cc (execute_general_pushpop_property):
6811         bugfix override with procedure should have effect.
6812
6813         * scm/define-grob-properties.scm (all-internal-grob-properties):
6814         remove position-callbacks.
6815
6816         * scm/define-grobs.scm (all-grob-descriptions): use
6817         ly:make-callback-chain for positions property.
6818
6819         * scm/layout-beam.scm (check-quant-callbacks): return list of
6820         chained callbacks.
6821
6822         * scm/lily.scm (type-p-name-alist): add callback-chain
6823
6824         * lily/lily-guile.cc (type_check_assignment): type check failure
6825         is warning not message.
6826
6827         * lily/grob-property.cc (try_callback): walk callback chain if
6828         appropriate.
6829
6830         * lily/chained-callback.cc: new file. new smob type.
6831
6832         * lily/lily-guile.cc (procedure_arity): new function.
6833
6834 2005-10-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6835
6836         * Documentation/topdocs/INSTALL.texi (Top): add perl flex bison.
6837
6838 2005-10-25  John Mandereau  <john.mandereau@free.fr>
6839  
6840         * Documentation/user/instrument-notation.itely (Figured bass):
6841         describe new features
6842
6843 2005-10-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6844
6845         * lily/beam.cc (calc_least_squares_dy): use property callback.
6846
6847         * lily/beam-concave.cc (calc_concaveness): use property callback.
6848
6849         * ly/paper-defaults.ly: move fixed dimensions from paper.scm 
6850
6851 2005-10-25  Jan Nieuwenhuizen  <janneke@gnu.org>
6852
6853         * HACKING: Update.
6854
6855 2005-10-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6856
6857         * scm/layout-page-layout.scm (page-headfoot): annotate
6858         pagetopspace too.
6859
6860         * scm/stencil.scm (dimension-arrows): shorten arrowed lines a bit. 
6861
6862         * scm/layout-page-layout.scm (annotate-y-interval): y-annotation
6863         doesn't take y-space.
6864
6865         * scm/paper.scm (paper-alist): fix A7 dimensions. 
6866
6867 2005-10-24  Jan Nieuwenhuizen  <janneke@gnu.org>
6868
6869         * stepmake/stepmake/generic-vars.make (DIST_FILES): Fix
6870         src-wildcard, remove $(wildcard).
6871
6872         * po/GNUmakefile (PO_FILES): 
6873         * ps/GNUmakefile (PS_FILES): 
6874         * tex/GNUmakefile (TEX_FILES): 
6875         * cygwin/GNUmakefile (POSTINSTALLS):
6876         * vim/GNUmakefile (EXTRA_DIST_FILES): Bugfix: [etags sr?] missed
6877         some wildcard calls.
6878
6879 2005-10-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6880
6881         * THANKS: add Thomas Bushnell.
6882
6883 2005-10-23  Jan Nieuwenhuizen  <janneke@gnu.org>
6884
6885         * scm/lily.scm: Remove horrendous running-from-gui? kludge.
6886         (lilypond-main): Redirect to gui-main if 'gui is set.
6887
6888         * scripts/midi2ly.py (datadir): Add libdir iso datadir to path,
6889         for alternative installations kludging s/share/lib/g
6890         LILYPONDPREFIX. 
6891
6892         * SConstruct (libdir_package_version): Define.
6893
6894         * python/SConscript: 
6895         * python/GNUmakefile (INSTALLATION_OUT_DIR): Install binary .so
6896         module in libdir.  
6897
6898 2005-10-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6899
6900         * lily/main.cc: clarify --safe.
6901
6902 2005-10-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6903
6904         * VERSION: release 2.7.14
6905         
6906         * Documentation/user/*.itely: remove minimumVerticalExtent.
6907
6908         * scm/define-grobs.scm (all-grob-descriptions): remove
6909         RemoveEmptyVerticalGroup
6910
6911         * lily/hara-kiri-engraver.cc (get_spanner): create VerticalAxisGroup.
6912
6913         * lily/include/lily-guile.hh (GUILE_ELLIPSIS): define to get clean
6914         compile on MOSX
6915
6916         * python/convertrules.py (conv): add rules.
6917
6918         * lily/grob.cc: remove is_empty()
6919
6920         * lily/grob-property.cc: remove add_to_list_property().
6921
6922         * scripts/convert-ly.py (datadir): add prefix switching hack to
6923         .py too.
6924
6925         * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily (cresc): remove
6926         space-function tweak.
6927
6928         * lily/grob.cc: remove X-extent-callback / Y-extent-callback.
6929
6930         * scm/define-grob-properties.scm (all-user-grob-properties):
6931         remove callback property.
6932
6933         * lily/include/grob.hh (class Grob): remove property_callbacks_
6934         member. Properties of procedure type are assumed to be callbacks.
6935
6936         * lily/ligature-engraver.cc (override_stencil_callback):
6937         rewrite. Use noteHeadLigaturePrimitive as source.
6938
6939         * scm/define-grob-properties.scm (all-internal-grob-properties):
6940         remove ligature-primitive-callback
6941
6942         * lily/include/dimension-cache.hh (class Dimension_cache): make
6943         class, with Grob as friend.
6944
6945         * lily/grob.cc: remove set_extent_callback(), set_extent() and
6946         has_extent_callback()
6947
6948         * scm/translation-functions.scm (format-new-bass-figure): read
6949         figuredBassPlusDirection
6950
6951         * scm/define-context-properties.scm
6952         (all-user-translation-properties): add figuredBassPlusDirection.
6953
6954         * lily/staff-spacing.cc (next_notes_correction): oops. Init wishes.
6955
6956         * lily/align-interface.cc (set_ordered): new function.
6957
6958         * lily/grob.cc (flush_extent_cache): rewrite.
6959
6960         * lily/dimension-cache.cc (Dimension_cache): cache extent as
6961         Interval pointer directly.
6962
6963         * lily/main.cc (setup_paths): insert extra / .
6964         (setup_paths): junk cff entry.
6965
6966         * lily/font-config.cc (init_fontconfig): only add type1 / otf
6967         directories.
6968
6969         * lily/axis-group-engraver.cc (finalize): remove
6970         extraVerticalExtent, minimumVerticalExtent verticalExtent.
6971
6972         * lily/grob.cc (Grob): don't set extent from ctor.
6973         (extent): use property callbacks. 
6974
6975         * lily/axis-group-interface.cc: remove set_axes() function.
6976
6977         * lily/grob-property.cc (del_property): new function.
6978
6979 2005-10-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6980
6981         * lily/font-config.cc (init_fontconfig): resurrect mf/out/ check.
6982         
6983 2005-10-20  Jan Nieuwenhuizen  <janneke@gnu.org>
6984
6985         * stepmake/stepmake/script-vars.make (PYTHON_SCRIPTS_IN): Oops.  Add.
6986
6987 2005-10-19  Jan Nieuwenhuizen  <janneke@gnu.org>
6988
6989         * mf/SConscript: Updates.
6990
6991         * lily/GNUmakefile (OUT_DIST_FILES): Bugfix.
6992
6993         * stepmake/stepmake/*:
6994         * */GNUmakefile:
6995         * config.make.in:
6996         * GNUmakefile.in:
6997         * stepmake/aclocal.m4: Friendlier --srcdir build, allowing `make'
6998         from any directory in build-dir.  Cleanups.
6999
7000         * make/srcdir.make.in: Remove.
7001
7002         * lily/main.cc (setup_paths): Fix and document build-dir hack.
7003
7004         * SConstruct (CheckYYCurrentBuffer): Use TryCompile (there is no
7005         main).
7006
7007         * lily/SConscript: Remove ttftools.
7008
7009         * SConstruct: Resurrect.
7010
7011 2005-10-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7012
7013         * lily/tuplet-bracket.cc (print): use dy iso. positions[RIGHT] for
7014         Y coordinate. 
7015
7016         * lily/paper-book.cc (add_score_title): put Paper_score title into
7017         systems_ list.
7018
7019         * scm/translation-functions.scm (format-new-bass-figure): also
7020         allow plus in combination with _
7021
7022 2005-10-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7023
7024         * VERSION: 2.7.13 released.
7025
7026         * lily/note-collision.cc (check_meshing_chords): don't wipe
7027         stencil, merely set transparent.
7028
7029         * Documentation/topdocs/NEWS.tely (Top): mention John Mandereau. 
7030         (Top): document #'callbacks.
7031         (Top): document nested \override.
7032
7033         * input/regression/figured-bass.ly: update for slash and pluses.
7034
7035         * input/regression/figured-bass-continuation-forbid.ly (Module):
7036         new file.
7037
7038         * scm/translation-functions.scm (format-new-bass-figure): use
7039         slashed-digit if diminished is set.
7040         (format-new-bass-figure): add + if 'augmented is set.
7041
7042         * scm/define-markup-commands.scm (slashed-digit): new command slashed-digit.
7043
7044         * input/test/piano-staff-distance.ly: remove file.
7045
7046         * Documentation/user/advanced-notation.itely (Formatting cue
7047         notes): use length-fraction for making stems/beams smaller.
7048
7049         * lily/parser.yy (bass_figure): accept \+ \! and / as figured bass
7050         modifications.
7051
7052         * lily/new-figured-bass-engraver.cc: new property
7053         centerFiguredBassContinuations
7054
7055         * Documentation/user/changing-defaults.itely (Difficult tweaks):
7056         use callbacks.
7057
7058         * lily/context-property.cc (execute_general_pushpop_property):
7059         robustness checks.
7060
7061         * input/regression/override-nest.ly: new file.
7062
7063         * python/convertrules.py (FatalConversionError.subber): conversion
7064         rule for #'callbacks
7065
7066         * input/regression/override-nest.ly: new function.
7067
7068         * lily/parser.yy (music_property_def): allow \override #'a #'b =
7069         #c too. 
7070
7071         * lily/context-property.cc (lookup_nested_property): new function.
7072         (evict_from_alist): new function.
7073         (general_pushpop_property): new function.
7074         (execute_general_pushpop_property): rewrite. Support nested
7075         properties too.
7076
7077 2005-10-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7078
7079         * lily/beam.cc: use length-fraction too.
7080
7081         * scm/define-grob-properties.scm (all-user-grob-properties):
7082         remove property flag-width-function
7083         (all-user-grob-properties): remove space-function.
7084
7085         * scm/layout-beam.scm: remove flag-width-function.
7086
7087         * lily/beam.cc: remove flag-width-function
7088
7089         * scm/layout-beam.scm: remove beam dir functions.
7090
7091         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): use length-fraction.
7092
7093         * lily/stem.cc (calc_length): multiply with length_fraction. Makes
7094         for easier grace tweaks.
7095
7096         * lily/beam.cc: remove dir-function.
7097
7098         * lily/system.cc (pre_processing): use callback to trigger spacing procedures.
7099
7100         * lily/grob.cc: remove spacing-procedure.
7101
7102         * lily/note-head.cc (calc_stem_attachment): new function.
7103         (internal_print): use callback to get glyph-name.
7104
7105         * lily/grob-property.cc (get_interfaces): new function.
7106
7107         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-interfaces
7108
7109         * lily/stem.cc (calc_stem_end_position): new function.
7110         (calc_length): new function.
7111         document details for stem.
7112         remove Stem::get_direction()
7113
7114         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-set-callback! 
7115
7116         * lily/grob-property.cc (set_callback): new function.
7117
7118         * lily/script-engraver.cc (make_script_from_event): don't trigger callback.
7119
7120         * lily/item-scheme.cc: new file.
7121
7122         * lily/bar-line.cc (before_line_breaking): remove function.
7123         remove bar-size-procedure, break-glyph-function
7124
7125         * lily/clef-engraver.cc (set_glyph): use glyph iso. glyph-name
7126
7127         * lily/clef.cc (before_line_breaking): change to calc_glyph_name.
7128
7129         * lily/system-start-delimiter.cc (print): suicide from
7130         here. Remove after_line_breaking_callback.
7131
7132         * lily/script-interface.cc (calc_direction): use callback for direction.
7133
7134         * lily/side-position-interface.cc (aligned_side): don't use
7135         Side_position_interface::get_direction directly. Use callback. 
7136
7137         * lily/grob.cc (get_stencil): simplify: use callback mechanism to
7138         calculate stencil.
7139         (get_print_stencil): rename from get_stencil: create stencil with
7140         transparency, color and cause. 
7141
7142         * scm/define-grobs.scm: change print-function to stencil callback everywhere.
7143
7144         * python/convertrules.py (conv): insert temporary warning rule.
7145
7146         * lily/multi-measure-rest.cc (set_text_rods): use stencil directly.
7147
7148         * lily/grob-property.cc (try_callback): remove marker if applicable.
7149
7150         * lily/grob.cc: elucidate doc about after/before-line-breaking
7151
7152         * lily/slur-scoring.cc (enumerate_attachments): robustness fix.
7153
7154         * lily/stem.cc (height): idem.
7155
7156         * lily/stem-tremolo.cc: idem.
7157
7158         * lily/slur.cc (height): don't use get_uncached_stencil()
7159
7160         * lily/rest.cc (y_offset_callback): use offset callback
7161         iso. after-line-breaking callback.
7162
7163         * lily/grob.cc: change after/before-line-breaking-callback to
7164         after/before-line-breaking dummy properties.
7165
7166         * lily/include/grob.hh: remove Grob_status.
7167
7168         * scm/define-context-properties.scm
7169         (all-user-translation-properties): remove verticalAlignmentChildCallback
7170
7171         * lily/tuplet-bracket.cc: use positions property iso. left,right-position.
7172         (calc_direction): use callback
7173         (calc_positions): use callback.
7174
7175         * lily/tie.cc (calc_direction): use callback. Only call parent
7176         positioning for more than one tie.
7177
7178         * lily/tie-column.cc (calc_positioning_done): use callback
7179
7180         * lily/slur-scoring.cc (calc_control_points): use callback
7181
7182         * lily/slur.cc (calc_direction): use callback.
7183
7184         * lily/note-collision.cc (force_shift_callback): remove.
7185
7186         * lily/dot-column.cc (force_shift_callback): remove. Use
7187         other_axis_parent_positioning.
7188
7189         * lily/grob.cc (other_axis_parent_positioning): new function.
7190         (same_axis_parent_positioning): new function
7191
7192         * lily/align-interface.cc (alignment_callback): remove function.
7193
7194         * lily/note-collision.cc (calc_positioning_done): use callback.
7195
7196         * lily/laissez-vibrer-tie.cc (calc_control_points): use callback.
7197         (calc_direction): idem.
7198         remove print function.
7199
7200         * lily/laissez-vibrer-tie-column.cc (calc_positioning_done): use callback.
7201
7202         * lily/dot-column.cc (calc_positioning_done): use callback.
7203
7204         * lily/break-align-interface.cc (calc_positioning_done): use callback.
7205
7206         * lily/beam.cc (calc_direction): use pseudo-property for beam
7207         direction callback.
7208         (calc_positions): use callback 
7209
7210         * lily/align-interface.cc (calc_positioning_done): use
7211         callback. Fold fixed  distance and normal alignment in one function.
7212
7213         * lily/stem.cc (calc_stem_end_position): use callback.
7214         (calc_positioning_done): idem.
7215         (calc_direction): idem.
7216         (calc_stem_end_position): idem
7217         (calc_stem_info): idem.
7218
7219         * lily/grob-property.cc (get_property_data): new function: 
7220         (try_callback): new function.
7221
7222         * scm/define-grob-properties.scm (all-user-grob-properties): doc
7223         callbacks property.
7224
7225         * lily/break-align-interface.cc: remove Break_align_interface::alignment_callback.
7226
7227 2005-10-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7228
7229         * lily/tie.cc (get_position): robustness fix. Don't crash if a
7230         tie
7231         has no heads.
7232         
7233         * lily/include/*.hh (Module): compile fixes.
7234
7235 2005-10-14  Heikki Junes <hjunes@cc.hut.fi>
7236
7237         * elisp/lilypond-font-lock.el, elisp/lilypond-indent.el: Avoid nil 
7238         as an argument for char-syntax: use (char-syntax (or nil 0)) 
7239         instead of (char-syntax nil), thanks to Milan Zamazal.
7240
7241 2005-10-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7242
7243         * make/lilypond.fedora.spec.in (Group): add lilypond-internals to
7244         dist.
7245
7246         * lily/tuplet-bracket.cc: check columns of bounds, not bounds
7247         themselves.
7248
7249 2005-10-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7250
7251         * flower/include/virtual-methods.hh (VIRTUAL_COPY_CONSTRUCTOR):
7252         add class_name() method.
7253
7254         * lily/music-scheme.cc: remove ly:music-name.
7255
7256 2005-10-11  Jan Nieuwenhuizen  <janneke@gnu.org>
7257
7258         * cygwin/postinstall-lilypond.sh: Remove cruft.
7259
7260         * cygwin/postremove-lilypond.sh: Remove.
7261
7262         * cygwin/GNUmakefile (default): Remove postremove rules.
7263
7264 2005-10-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7265
7266         * ly/titling-init.ly (evenHeaderMarkup): use space in header on
7267         even header too.
7268         
7269         * scm/define-markup-commands.scm (wordwrap-string): bugfix for
7270         MacOS 9 users.
7271
7272         * lily/hara-kiri-group-spanner.cc (consider_suicide): only
7273         consider break index for broken spanner.
7274
7275         * scm/define-markup-commands.scm (wordwrap-string): remove \r
7276         characters from string before splitting.
7277
7278 2005-10-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7279
7280         * scm/framework-ps.scm (output-preview-framework): use
7281         is-book-title to determine whether to chop off the booktitle.
7282
7283         * lily/paper-book.cc (systems): init from book-title-properties
7284         (add_score_title): init score-title-properties.
7285
7286         * ly/paper-defaults.ly: add {score,book}-title-properties.
7287
7288         * scm/document-backend.scm (lookup-interface): error message if
7289         using unknown interface.
7290
7291         * lily/volta-bracket.cc (after_line_breaking): new function. Set
7292         edge-height.
7293
7294         * lily/horizontal-bracket.cc (make_enclosing_bracket): rename from
7295         make_bracket.
7296         (make_bracket): new function.
7297
7298         * scm/lily.scm (define-scheme-options): add paper-size option.
7299
7300         * ly/declarations-init.ly (laissezVibrer): get paper size from
7301         -dpaper-size
7302
7303         * scm/translation-functions.scm: use \fontsize for changing the
7304         fontsize.
7305
7306         * scm/define-grobs.scm (all-grob-descriptions): set
7307         between-length-limit to 1.0
7308
7309         * lily/tie-helper.cc: add between_length_limit_ detail property.
7310
7311         * mf/feta-bolletjes.mf: typos.
7312
7313         * lily/note-head.cc (internal_print): don't shadow idx
7314         parameter. This fixes wrong attachment for do shape heads.
7315
7316 2005-10-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7317
7318         * scm/parser-ly-from-scheme.scm: rename from ly-from-scheme.scm
7319
7320         * scm/parser-clef.scm (supported-clefs): rename from clef.scm
7321
7322         * scm/layout-slur.scm: rename from slur.scm
7323
7324         * scm/layout-page-layout.scm: rename from page-layout.scm
7325
7326         * scm/layout-beam.scm: rename from beam.scm
7327
7328         * scm/define-grob-interfaces.scm (bass-figure-interface): add
7329         bass-figure-interface
7330
7331         * lily/new-figured-bass-engraver.cc (process_music): add
7332         implicitBassFigures property.
7333         
7334         * scm/define-markup-commands.scm (pad-x): new markup.
7335
7336         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set
7337         minimumVerticalExtent on FiguredBass context.
7338
7339         * lily/figured-bass-continuation.cc (center_on_figures): kludge in
7340         case the continuation crosses a line break.
7341
7342 2005-10-09  Jan Nieuwenhuizen  <janneke@gnu.org>
7343
7344         * flower/file-name.cc (dos_to_posix)[__CYGWIN__]: Return
7345         unconverted value if cygwin_conv_to_posix_path () fails.  Fixes
7346         absolute file name bug.  
7347
7348 2005-10-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7349
7350         * VERSION (PACKAGE_NAME): release 2.7.12
7351
7352         * input/regression/figured-bass-continuation-center.ly: new file.
7353
7354         * input/regression/beam-outside-beamlets.ly: new file.
7355
7356         * lily/beam.cc (set_beaming): don't clip edges.
7357         (connect_beams): don't clip edges.
7358
7359         * lily/beaming-info.cc (clip_edges): new function.
7360
7361         * lily/enclosing-bracket.cc (struct Enclosing_bracket): new file.
7362
7363         * Documentation/user/instrument-notation.itely (Figured bass):
7364         demonstrate extenders, update seealso links.
7365
7366         * scm/titling.scm (marked-up-headfoot): change tagline
7367         handling. tagline = ##f will blank the tagline as well.
7368
7369 2005-10-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7370
7371         * Documentation/topdocs/NEWS.tely: add entry for Figured bass.
7372
7373         * lily/new-figured-bass-engraver.cc (struct
7374         New_figured_bass_engraver): add new_music_found_ member.
7375
7376         * lily/lilypond-version.cc (Lilypond_version): deal with
7377         incorrectly formatted version strings. 
7378
7379         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): switch on
7380         New_figured_bass_engraver by default.
7381
7382         * lily/ttf.cc (print_trailer): only define glyph names when
7383         FT_Face has FT_FACE_FLAG_GLYPH_NAMES
7384
7385 2005-10-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7386
7387         * lily/horizontal-bracket.cc (make_bracket): new function.
7388
7389         * scm/define-grobs.scm (all-grob-descriptions): new grobs
7390         NewBassFigure, BassFigureBracket, BassFigureContinuation,
7391         BassFigureLine, BassFigureAlignment
7392
7393         * lily/new-figured-bass-engraver.cc (process_music): new file.
7394
7395         * lily/figured-bass-continuation.cc: new file.
7396
7397         * lily/include/horizontal-bracket.hh (struct Horizontal_bracket):
7398         new file.
7399
7400 2005-10-04  Mats Bengtsson  <mabe@s3.kth.se>
7401
7402         * scripts/lilypond-book.py: Bug fix, put the quote around the
7403         actual score for LaTeX documents.
7404
7405         * scm/define-grobs.scm (all-grob-descriptions): Change
7406         collapse-height of the SystemStartBracket grob to 5.0, 
7407         so the bracket disappears for single stave score lines (similarly
7408         to SystemStartBraces). 
7409
7410         * Documentation/user/advanced-notation.itely (Polymetric
7411         notation): Clarify the use of compressMusic.
7412
7413         * Documentation/user/basic-notation.itely (Grace notes): Clarify
7414         that the grace spacer note in other staves need the same duration
7415         and document the stroke-style property.
7416
7417 2005-10-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7418
7419         * Documentation/user/global.itely (Vertical spacing): document
7420         alignment-extra-space and fixed-alignment-extra-space.
7421
7422         * Documentation/topdocs/NEWS.tely (Top): add entry.
7423
7424         * input/regression/alignment-vertical-spacing.ly: new file.
7425
7426         * python/convertrules.py (conv): add rule.
7427
7428         * ly/music-functions-init.ly: rename outputProperty to overrideProperty
7429
7430         * lily/align-interface.cc (stretch_after_break): new
7431         function. Read fixed-alignment-extra-space property.
7432         (align_elements_to_extents): read alignment-extra-space property.
7433
7434         * lily/lily-guile.cc (robust_scm2dir): new function.
7435
7436         * scm/page-layout.scm (page-headfoot): annotate headsep and footsep.
7437         (annotate-space-left): new function. Annotate space left on page. 
7438         (annotate-y-interval): new function.
7439         (paper-system-annotate-last): new function. Annotate bottom-space.
7440
7441         * mf/feta-beugel.mf (y): 
7442
7443 2005-10-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7444
7445         * VERSION (PACKAGE_NAME):  release 2.7.11
7446
7447         * scm/lily-library.scm (interval-translate): new function
7448         (interval-center): new function. 
7449
7450         * scm/page-layout.scm (paper-system-annotate): new function. Add
7451         arrows for dimensions.
7452  
7453         * scm/stencil.scm (dimension-arrows): new function.
7454
7455         * Documentation/user/global.itely (Vertical spacing): mention annotatespacing
7456
7457         * input/regression/page-spacing.ly: add annotatespacing
7458
7459         * lily/paper-system-scheme.cc (LY_DEFINE): remove ly:paper-system-{extent,stencil}
7460         (LY_DEFINE): new function ly:paper-system-set-property!
7461
7462         * Documentation/user/global.itely (Paper size): explain how to add
7463         sizes.
7464
7465         * scm/paper.scm (paper-alist): rename tabloid paper to 11x17 to
7466         correspond to GS's definition.
7467
7468         * lily/tuplet-bracket.cc (after_line_breaking): suicide empty
7469         tuplet bracket.
7470         (print): only connect to next bracket if the next one is alive.
7471         (print): set padding to 0.0 if the bound is a breakable
7472         column. This makes tupletFullLength brackets reach up to the staff
7473         line if it doesn't connect to the next line.
7474
7475 2005-09-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7476
7477         * lily/bar-number-engraver.cc: correct docs.
7478
7479         * scm/output-lib.scm (first-bar-number-invisible): rename from
7480         default-bar-number-visibility
7481
7482 2005-09-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7483
7484         * scm/define-music-properties.scm (all-music-properties): remove
7485         predicate property.
7486
7487 2005-09-28  Heikki Junes  <hjunes@cc.hut.fi>
7488
7489         * po/fi.po: refresh.
7490
7491 2005-09-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7492
7493         * input/regression/hara-kiri-pianostaff.ly (disappear): remove
7494         superfluous s1.
7495         (disappear): bugfix.
7496
7497         * lily/stem-tremolo.cc (raw_stencil): read slope property.
7498
7499         * lily/include/paper-system.hh (class Paper_system): remove
7500         staff_extents_ member.
7501
7502         * lily/paper-system-scheme.cc (LY_DEFINE): remove.
7503
7504         * lily/include/paper-system.hh (class Paper_system): remove
7505         number_ variable. Remove is_title_. Remove break_before_penalty_
7506
7507         * lily/paper-book.cc (systems): use 'number property iso. number_
7508         member.
7509
7510         * lily/paper-system-scheme.cc: remove ly:paper-system-break-before-penalty
7511         remove ly:paper-system-number.
7512
7513         * scm/lily-library.scm (paper-system-title?): new function.
7514
7515         * lily/book.cc (process): bugfix: flip ?: cases. 
7516
7517         * Documentation/user/changing-defaults.itely (Difficult tweaks):
7518         add outputProperty.
7519
7520         * ly/music-functions-init.ly: add outputProperty music function.
7521
7522         * scm/paper.scm (set-paper-dimension-variables): add pagetopspace
7523
7524         * scm/page-layout.scm (ly:optimal-page-breaks): read next-space
7525         and next-padding.
7526         (optimal-page-breaks): rename from ly:optimal-page-breaks.
7527
7528         * lily/paper-system-scheme.cc (LY_DEFINE): new function.
7529
7530         * lily/paper-system.cc (internal_get_property): new function.
7531
7532         * Documentation/user/global.itely (Vertical spacing): refer to
7533         page-spacing.ly
7534
7535         * scm/page-layout.scm (ly:optimal-page-breaks): add support for
7536         pagetopspace
7537
7538         * input/regression/page-spacing.ly: new file.
7539
7540         * input/regression/page-top-space.ly: new file.
7541
7542         * lily/spacing-spanner.cc: cmath -> math.h
7543
7544         * lily/paper-system.cc (read_left_bound): new function. Read
7545         line-break-system-details from left bound to determine extents.
7546  
7547         * Documentation/user/programming-interface.itely (Using LilyPond
7548         syntax inside Scheme): change applyxxx -> applyXxx.
7549
7550         * ly/music-functions-init.ly: add outputProperty music function.
7551
7552         * lily/parser.yy (Generic_prefix_music_scm): add scm-scm-scm signature.
7553
7554         * lily/grob-scheme.cc (LY_DEFINE): add ! to ly:grob-suicide! name.
7555
7556         * python/convertrules.py (conv): rule
7557
7558         * ly/music-functions-init.ly: applyxxx -> applyXxx
7559
7560         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): alias
7561         TabVoice to Voice.
7562
7563 2005-09-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7564
7565         * flower/include/real.hh: include <math.h> iso. <cmath>
7566
7567         * flower/include/offset.hh: include real.hh
7568
7569 2005-09-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7570
7571         * Documentation/user/changing-defaults.itely (Difficult tweaks):
7572         fix example, now that 'interfaces is no longer directly available.
7573
7574         * lily/book.cc (process): don't crash if paper == NULL.
7575
7576         * po/fr.po: update.
7577
7578 2005-09-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7579
7580         * scm/define-music-types.scm (music-descriptions): set length and
7581         start-callback for QuoteMusic
7582
7583 2005-09-15  Mats Bengtsson  <mabe@s3.kth.se>
7584
7585         * lily/tie.cc (get_configuration): Replace fabs -> abs for integer
7586         arguments. Fixes compilation error with gcc 3.3.
7587
7588 2005-09-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7589
7590         * VERSION: release 2.7.10
7591
7592         * stepmake/stepmake/python-module-rules.make
7593         ($(outdir)/%$(SHARED_MODULE_SUFFIX)): SHARED_FLAGS at the end.  
7594
7595         * lily/*.cc: remove <cmath> everywhere. <cmath> is included from
7596         real.hh
7597
7598 2005-09-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7599
7600         * stepmake/stepmake/c++-vars.make (#EXTRA_CXXFLAGS): don't add
7601         -Werror. Otherwise GCC barfs over various optimizations.
7602
7603         * scm/define-grob-properties.scm (all-internal-grob-properties):
7604         add note-head property
7605
7606         * Documentation/user/instrument-notation.itely (Laissez vibrer
7607         ties): new node.
7608
7609         * input/regression/laissez-vibrer-ties.ly: new file.
7610
7611         * lily/laissez-vibrer-engraver.cc: new file.    
7612
7613         * lily/include/tie-column-format.hh: new file.
7614
7615         * lily/tie-column-format.cc: new file. 
7616
7617         * lily/tie-column.cc (set_manual_tie_configuration): new function.
7618
7619         * lily/laissez-vibrer-tie.cc: new file.
7620
7621         * lily/include/laissez-vibrer-tie.hh: new file.
7622
7623         * ly/engraver-init.ly: add Laissez_vibrer_engraver
7624
7625         * ly/declarations-init.ly (laissezVibrer): add \laissezVibrer
7626
7627         * scm/define-grobs.scm (all-grob-descriptions): add
7628         LaissezVibrerTie, LaissezVibrerTieColumn
7629
7630         * lily/tie-column.cc (set_tie_config_directions): new function
7631         (final_shape_adjustment): new function.
7632         (shift_small_ties): new function.
7633
7634         * scm/define-music-types.scm (music-descriptions): add LaissezVibrerEvent
7635
7636         * lily/include/tie.hh (struct Tie_details): add x_gap_
7637         (struct Tie_configuration): add head_position_
7638
7639         * lily/tie-column.cc (set_chord_outline): new function.
7640
7641         * mf/cmr.enc.in:  remove file.
7642
7643 2005-09-11  Graham Percival  <gpermus@gmail.com>
7644
7645         * Documentation/user/examples.itely: typo fix.  Thanks, Matevž
7646
7647 2005-09-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7648
7649         * mf/feta-banier.mf: make vertical stem 1/2 stemthickness wide to
7650         reduce aliasing effects.
7651
7652         * lily/tie-column.cc (set_chord_outlines): bugfix: insert complete
7653         box in skyline.
7654
7655 2005-09-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7656
7657         * lily/tie.cc (get_configuration): don't crash if left_dot is NULL.
7658
7659         * flower/include/real.hh: std::fabs too.
7660
7661 2005-09-08  Jan Nieuwenhuizen  <janneke@gnu.org>
7662
7663         * Documentation/user/lilypond.tely: Spell Baßtuba in UTF-8 (Werner). 
7664
7665         * lily, flower: Include C++ iso C headers.  Import namespace std
7666         throughout.
7667
7668         * lily/side-position-interface.cc: 
7669         * lily/scm-hash.cc: 
7670         * lily/note-head.cc: 
7671         * lily/include/includable-lexer.hh: 
7672         * flower/include/string-data.icc: Remove using std::*.
7673
7674         * lily, flower: Include C++ iso C headers.  Import namespace std
7675         throughout.
7676
7677         * lily/side-position-interface.cc: 
7678         * lily/scm-hash.cc: 
7679         * lily/note-head.cc: 
7680         * lily/include/includable-lexer.hh: 
7681         * flower/include/string-data.icc: Remove using std::*.
7682
7683         * Documentation/user/instrument-notation.itely (Entering lyrics):
7684         Multiple latin-1->utf-8 conversion fix.
7685
7686         * Documentation/user/*tely: Update Emacs cookie to utf-8.
7687
7688 2005-09-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7689
7690         * lily/tie.cc (get_configuration): also avoid dots for non-space
7691         situations.
7692
7693 2005-09-07  Jan Nieuwenhuizen  <janneke@gnu.org>
7694
7695         * Documentation/user/instrument-notation.itely: Bugfix.
7696
7697 2005-09-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7698
7699         * tex/GNUmakefile: don't install texinfo.tex
7700
7701         * tex/ : cleanup: remove unused files.
7702
7703         * lily/general-scheme.cc: remove my_{isinf,isnan}.
7704
7705         * flower/include/real.hh: using std::{isnan,isinf}
7706         
7707         * VERSION (PATCH_LEVEL): release 2.7.9
7708
7709 2005-09-05  Graham Percival  <gpermus@gmail.com>
7710
7711         * Documentation/user/ instrument-notation.itely,
7712         advanced-notation.itely: minor tweaks.
7713
7714         * input/test/script-chart.ly: add item padding.
7715
7716 2005-09-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7717
7718         * flower/offset.cc: use math.h iso. <cmath>
7719
7720         * scm/ps-to-png.scm (make-ps-images): use png16m again, for sake
7721         of IE users.
7722
7723         * scm/framework-eps.scm (dump-stencils-as-EPSes): cleanup.
7724         (widen-left-stencil-edges): new function. Fix alignment problems
7725         with LaTeX includegraphics.
7726
7727         * lily/text-interface.cc (interpret_markup): use abort().
7728
7729 2005-09-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7730
7731         * input/regression/tie-chord.ly (testLong): add a chord in 4ths
7732
7733         * lily/tie.cc (get_configuration): update bezier shape as we
7734         change Y positions.
7735         (get_configuration): don't move large ties if we're outside of the
7736         staff.
7737
7738 2005-09-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7739
7740         * scm/define-markup-commands.scm (strut): swap X and Y dims.
7741         
7742 2005-09-03  Jan Nieuwenhuizen  <janneke@gnu.org>
7743
7744         * .cvsignore: Add auto-generated configure files and then some.
7745
7746 2005-09-02  Jan Nieuwenhuizen  <janneke@gnu.org>
7747
7748         * scm/define-grobs.scm (DynamicLineSpanner): Add
7749         X-extent-callback.  Fixes hairpin-slur collision.
7750
7751 2005-08-31  Graham Percival  <gpermus@gmail.com>
7752
7753         * Documentation/user/advanced-notation.itely,
7754         basic-notation.itely: minor changes.
7755
7756 2005-08-31  Mats Bengtsson  <mabe@s3.kth.se>
7757
7758         * scm/framework-eps.scm (dump-stencils-as-EPSes): Insert a
7759         \linebreak between each .eps file if \betweenLilyPondSystem is
7760         undefined. 
7761
7762         * Documentation/user/lilypond-book.itely (Integrating LaTeX and
7763         music): Document the \linebreak
7764
7765         * Documentation/user/lilypond-book.itely,
7766         input/tutorial/lbook-latex-test.tex,
7767         Documentation/user/examples.itely: Remove \usepackage{graphics}
7768
7769 2005-08-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7770
7771         * mf/aybabtu.pe.in (i): don't merge alphabet into aybabtu.
7772
7773         * lily/ly-module.cc (make_stand_in_procs_weak): 1.6.4 and earlier
7774         compat bugfix.
7775
7776         * scripts/lilypond-book.py (PREAMBLE_LY): define
7777         inside-lilypond-book
7778         (modify_preamble): new function. Insert \RequirePackage{graphics}
7779         when no {graphics found in preamble.  
7780
7781 2005-08030  Graham Percival  <gpermus@gmail.com>
7782
7783         * Documentation/user/basic-notation.itely, global.itely,
7784         tutorial.itely: misc small changes.
7785
7786 2005-08-30  Jan Nieuwenhuizen  <janneke@gnu.org>
7787
7788         * stepmake/aclocal.m4: Include MY_PATCH_LEVEL in config.make's
7789         VERSION.
7790
7791 2005-08-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7792
7793         * lily/tie-column.cc (new_directions): put Tie down on center
7794         staff line. 
7795
7796         * lily/script-interface.cc (before_line_breaking): use
7797         Grob::programming_error
7798
7799         * scm/ps-to-png.scm (make-ps-images): use pngalpha device.
7800
7801         * scripts/lilypond-book.py (get_latex_textwidth): oops. Take [0]
7802         of splitext.
7803
7804 2005-08-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7805
7806         * VERSION (PACKAGE_NAME): VERSION release 2.7.8
7807
7808 2005-08-29  Werner Lemberg  <wl@gnu.org>
7809
7810         * mf/GNUmakefile: Add `-f' flag to `rm' command while removing
7811         the `*.scale.pfa' files to avoid warnings.
7812
7813 2005-08-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7814
7815         * lily/tempo-performer.cc (process_music): idem.
7816
7817         * lily/midi-def.cc (get_tempo): Rational to int conversion bug.
7818
7819 2005-08-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7820
7821         * Documentation/user/advanced-notation.itely (Text markup): not a
7822         fragment.
7823
7824         * lily/midi-item.cc (to_string): use to_int() iso. int cast.
7825
7826         * lily/staff-performer.cc (initialize): add tempo/name to
7827         audio_staff_
7828
7829
7830 2005-08-26  Graham Percival  <gpermus@gmail.com>
7831
7832         * Documentation/user/advanced.itely: add text-only example.
7833
7834         * Documentation/user/invoking.itely: add index entries for
7835         convert-ly.
7836
7837         * Documentation/user/ tutorial.itely, basic-notation.itely:
7838         small fixes suggested by Steve D.  Thanks!
7839
7840 2005-08-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7841
7842         * input/regression/markup-bidi-pango.ly: new file.
7843
7844         * lily/pango-font.cc (pango_item_string_stencil): make Mingw code
7845         standard. Remove #ifdef. Remove memleak.
7846         (text_stencil): use text_dir to decide how to composite items.
7847         (text_stencil): determine uniform text direction for the entire
7848         string.
7849
7850         * scripts/lilypond-book.py (output_name): remove
7851         latex_filter_cmd. Non-portable to non-Unix systems. 
7852         (get_latex_textwidth): use File.write and os.unlink() instead.
7853
7854         * THANKS: add Vicente & Trevor.
7855
7856         * lily/grob.cc (discretionary_processing): look up origin for
7857         programming_error too. 
7858
7859         * input/regression/tie-broken.ly: new file.
7860
7861         * lily/tie-column.cc (set_chord_outlines): set outline for line
7862         break case too.
7863         
7864 2005-08-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7865
7866         * lily/pango-font.cc (text_stencil): don't translate glyphs in
7867         unscaled transform, just translate stencils.
7868
7869         * ly/performer-init.ly: init timing to #t.  Fixes bar checks in
7870         MIDI.
7871
7872         * scm/define-markup-commands.scm (wordwrap-string): use
7873         text-direction
7874         (wordwrap-stencils): idem.
7875         (line): idem.
7876         (fill-line): idem.
7877         (wordwrap-stencils): translate last line to right for
7878         text-direction = LEFT.
7879
7880         * scm/define-grob-properties.scm (all-user-grob-properties): add
7881         text-direction.
7882
7883 2005-08-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
7884
7885         * lily/lily-parser.cc (Lily_parser): also copy output_basename_
7886         when copying a Lily_parser object.
7887
7888 2005-08-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7889
7890         * scm/define-markup-commands.scm (null): add null markup.
7891
7892 2005-08-25  Mats Bengtsson  <mabe@s3.kth.se>
7893
7894         * lily/item.cc: Add documentation of center-invisible
7895
7896 2005-08-24  Graham Percival  <gpermus@gmail.com>
7897
7898         * Documentation/user/advanced-notation.itely: add info about
7899         raising text.
7900
7901         * Documentation/user/programming-interface.itely: fix example
7902         involving raised text.
7903
7904 2005-08-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7905
7906         * lily/beam.cc (print): fix X start/end points of isolated
7907         beamlets.
7908
7909         * scm/output-ps.scm (grob-cause): escape spaces in URLs.
7910
7911         * lily/multi-measure-rest.cc (set_text_rods): new function.
7912
7913         * lily/vertical-align-engraver.cc (process_music): call
7914         Align_interface::set_axis(). This forces #'elements to be ordered,
7915         preventing random vertical reordering of staves.
7916
7917         * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
7918         add avoid-slur property. 
7919
7920         * Documentation/user/basic-notation.itely (Measure repeats): add
7921         countPercentRepeats example.
7922
7923         * Documentation/user/advanced-notation.itely (Other text markup
7924         issues): remove remark about normal-font.  We have \normal-text
7925
7926         * input/regression/tie-chord.ly: add note about remaining bugs.
7927
7928         * lily/tie.cc (print): try Tie_column::set_directions () if
7929         control-points not yet defined.
7930
7931 2005-08-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7932
7933         * lily/system-start-delimiter.cc (staff_brace): don't remove brace
7934         extent. This fixes braces falling out of the EPS bbox.
7935
7936         * mf/feta-beugel.mf (braces_per_font): make brace glyph align
7937         exactly to bbox.
7938
7939 2005-08-23  Graham Percival  <gpermus@gmail.com>
7940
7941         * {various} : change #up->#UP and #down->#DOWN.
7942
7943         * ly/titling-init.ly: Spacing fix when using printallheaders=##t.
7944
7945         * Documentation/user/advanced-notation.itely: clarify
7946         what objects handles text on a multimeasure rest.
7947
7948 2005-08-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7949
7950         * VERSION (PATCH_LEVEL): release 2.7.7
7951
7952 2005-08-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7953
7954         * make/lilypond-vars.make: set -dgs-font-load for "make web" 
7955
7956         * Documentation/topdocs/INSTALL.texi (Top): add GS bugfix requirement.
7957
7958         * input/regression/*.ly: formatting clean-up. Default layout
7959         before music expression.
7960
7961         * input/mutopia/R.Schumann/GNUmakefile (examples): switch off
7962         romanze28-2 example.
7963
7964         * scm/ps-to-png.scm: remove dir-re function.
7965         (make-ps-images): generate page names, instead of globbing them.
7966         This brings down LilyPond memory usage for make web by a factor
7967         10. 
7968
7969         * scripts/lilypond-book.py (Lilypond_snippet.png_is_outdated):
7970         don't use glob. With 3000 files, globbing
7971         Documentation/user/out-www/ can take too much time. 
7972         
7973         * lily/lily-guile.cc (gulp_file_to_string): take size argument.
7974
7975         * lily/general-scheme.cc (LY_DEFINE): take optional size argument.
7976
7977         * input/regression/tie-manual.ly: new file
7978
7979         * input/regression/tie-chord.ly: update.
7980
7981         * flower/include/interval.hh (struct Interval_t): 
7982
7983         * lily/tie.cc (distance): new function 
7984         (height): new function.
7985         (init): new function
7986         (Tie_details): new struct.
7987
7988         * lily/skyline.cc (skyline_height): new function.
7989
7990         * lily/tie-column.cc (set_chord_outlines): new function.
7991         (new_directions): read tie-configuration
7992
7993         * lily/skyline.cc: fix ASCII art.
7994         
7995 2005-08-22  Mats Bengtsson  <mabe@s3.kth.se>
7996
7997         * python/convertrules.py (string_or_scheme): Fix spelling error
7998
7999 2005-08-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8000         
8001         * lily/tie-column.cc (set_directions): set directions only once.
8002         (add_configuration): new function.
8003
8004         * lily/tie.cc (set_control_points): new function
8005
8006         * lily/tie-column.cc (new_directions): new function.
8007
8008         * ly/music-functions-init.ly: set 'pitch property
8009         iso. trill-pitch. This makes \relative work with \pitchedTrill
8010
8011         * lily/tie.cc (get_configuration): new function. Don't generate
8012         control points, rather, generate configuration.
8013         remove head-pair property.
8014
8015         * lily/include/tie.hh (struct Tie_configuration): new struct.
8016
8017 2005-08-22  Heikki Junes  <hjunes@cc.hut.fi>
8018
8019         * Documentation/topdocs/NEWS.tely: clarify.
8020
8021 2005-08-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8022
8023         * lily/tie.cc: remove minimum-length
8024
8025         * scm/define-grob-properties.scm (all-user-grob-properties):
8026         remove staffline-clearance, y-offset 
8027
8028         * input/regression/tie-dots.ly (Module): remove.
8029
8030         * lily/tie.cc (get_control_points): rewrite. Put short ties in
8031         staff-spaces, make long ties cross staff lines. Avoid flags and dots.
8032
8033         * input/regression/tie-single.ly: new file.
8034
8035 2005-08-21  Graham Percival  <gpermus@gmail.com>
8036
8037         * ly/bagpipe.ly: fix compile problem.
8038
8039 2005-08-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8040
8041         * lily/midi-item.cc (name): new method.
8042
8043         * lily/staff-performer.cc (acknowledge_audio_element): use
8044         signature of baseclass.
8045
8046         * lily/engraver-group.cc (do_announces): move recursion call out
8047         of while loop. 
8048
8049         * lily/drum-note-performer.cc (class Drum_note_performer): use
8050         process_music everywhere.
8051
8052         * ly/performer-init.ly: add default children everywhere.
8053
8054         * lily/paper-book.cc (output): call paper-book-write-midis
8055         directly: always write MIDI, even if no \layout {} block. 
8056
8057 2005-08-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8058
8059         * VERSION (PACKAGE_NAME): release 2.7.6
8060
8061         * lily/percent-repeat-engraver.cc (try_music): don't print warning
8062         about not being able to handle repeat.
8063
8064 2005-08-19  Jan Nieuwenhuizen  <janneke@gnu.org>
8065
8066         * Documentation/user/examples.itely (Piano templates):
8067         * lily/include/performer-group.hh: Remove last traces of
8068         Performer_group_performer.  Fixes make web.
8069
8070 2005-08-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8071
8072         * Documentation/user/examples.itely (Piano templates): change
8073         Engraver_group_engraver -> Engraver_group
8074
8075         * lily/ly-module.cc (make_stand_in_procs_weak): only kludge if
8076         scm_stand_in_procs is not weak_any.
8077
8078         * lily/volta-bracket.cc (print): don't use strcmp().
8079
8080         * lily/volta-engraver.cc (process_music): use
8081         Text_interface::is_markup() for setting the 'text property of the
8082         volta bracket.
8083
8084         * input/mutopia/claop.py (accents): update syntax to 2.6
8085
8086         * scm/define-context-properties.scm
8087         (all-user-translation-properties): add countPercentRepeats.
8088
8089         * Documentation/user/basic-notation.itely (Measure repeats): add
8090         isolated percent example.
8091
8092 2005-08-18  Graham Percival  <gpermus@gmail.com>
8093
8094         * input/ {various}: change direction #1, #-1 to
8095         #up/#down or \fooUp, \fooDown.
8096
8097         * Documentation/user/music-glossary.tely: #-1 to #down.
8098
8099         * ly/bagpipe.ly, engraver-init.ly, property-init.ly: #1
8100         to #up, #-1 to #down.
8101
8102 2005-08-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8103
8104         * lily/include/engraver-group.hh: rename.
8105
8106         * lily/include/performer-group.hh: rename.
8107
8108 2005-08-18  Mats Bengtsson  <mabe@s3.kth.se>
8109
8110         * input/test/script-abbreviations.ly: Removed some old LaTeX
8111         left overs.
8112
8113 2005-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
8114
8115         * python/convertrules.py (conv): inside-slur -> avoid-slur.
8116         Remove functions.  Remove if 1: constructs, reindent.
8117
8118         * scripts/convert-ly.py (add_version): Add functions from
8119         convertrules.py
8120
8121         * scm/script.scm (default-script-alist):
8122         s/priority/script-priority.  Fixes script stacking.  Backportme.
8123         (Fermata): Very low priority.
8124
8125 2005-08-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8126
8127         * input/regression/*.ly: remove superfluous \score blocks. Reindent.
8128
8129         * input/regression/slur-script.ly: remove padding tweaks. Add
8130         comment strings.
8131
8132         * lily/note-spacing.cc (get_spacing): remove kludge for EOL wide
8133         time sigs and related stuff.
8134
8135         * scm/define-grob-properties.scm (all-user-grob-properties): add
8136         @code{} tags to property description.
8137
8138         * lily/include/line-group-group-engraver.hh (Module): remove file.
8139
8140         * python/convertrules.py (conv): add rule for
8141         Engraver_group_engraver -> Engraver_group.
8142
8143         * lily/include/performer-group-performer.hh: analogous.
8144
8145         * lily/include/engraver-group-engraver.hh: rename to Engraver_group.
8146
8147         * lily/context-def.cc (instantiate): check for
8148         Engraver_group_engraver and Performer_group_performer not
8149         Engraver/Performer. Fixes crashes when doing \with { \consists .. }
8150  
8151 2005-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
8152
8153         * input/les-nereides.ly: Remove three fingering tweaks, update
8154         remaining one.
8155
8156         * input/regression/slur-script-inside.ly: Update, fix doc.
8157
8158         * scm/script.scm: Update to avoid-slur.
8159
8160         * scm/define-grob-properties.scm (avoid-slur): New property.
8161
8162         * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
8163         * lily/slur-engraver.cc (acknowledge_extra_object): Invoke
8164         outside_slur_callback if avoid-slur != #'inside.
8165
8166         * scm/define-grobs.scm (Fingering, Textscript): No
8167         inside-slur/outside-slur preference.
8168         (DynamicLineSpanner): Always outside slur.
8169
8170         * input/regression/slur-script.ly: More tests.
8171
8172 2005-08-17  Graham Percival  <gpermus@gmail.com>
8173
8174         * Documentation/user/lilypond-book: fix notime entry.
8175
8176         * Documentation/user/advanced-notation.itely: add info on
8177         getting an I rehearsal mark.
8178
8179         * Documentation/user/putting.itely: reinstate "I", re-enforce
8180         the fact that \override numbers are the result of
8181         experimentation and personal taste.
8182
8183         * Documentation/user/invoking.itely: update convert-ly bugs.
8184
8185 2005-08-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8186
8187         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set timing
8188         to #t.
8189
8190         * lily/timing-translator.cc (initialize): don't initialize timing.
8191
8192         * input/regression/stem-spacing.ly (Module): remove file.
8193
8194         * input/regression/spacing-stick-out.ly: specify Score context for
8195         \override
8196
8197         * input/regression/clefs.ly: remove spurious {}s 
8198
8199 2005-08-17  Heikki Junes  <hjunes@cc.hut.fi>
8200
8201         * Documentation/topdocs/NEWS.tely,
8202         input/regression/repeat-percent-count.ly: clarify a bit.
8203
8204 2005-08-16  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8205
8206         * input/no-notation/display-lily-tests.ly: delete
8207         display-lily-init call.
8208
8209         * ly/music-functions-init.ly (displayLilyMusic): move
8210         display-lily-init call at top level, so that the user should not
8211         have to call it.
8212
8213         * scm/define-music-display-methods.scm (note-name->lily-string):
8214         retrieve note names directly from pitchnames using new function `rassoc'.
8215         (display-lily-init): note names list construction removed.
8216
8217 2005-08-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8218
8219         * THANKS: spello.
8220
8221         * lily/lily-parser.cc (get_header): copy module, instead of
8222         returning it.
8223
8224         * Documentation/topdocs/NEWS.tely (Top): add entry for percent
8225         counters.
8226
8227         * Documentation/user/basic-notation.itely (Measure repeats): add
8228         links to Counter grobs.
8229
8230         * scm/define-grobs.scm (all-grob-descriptions): add
8231         DoublePercentRepeatCounter
8232         (all-grob-descriptions): add PercentRepeatCounter
8233
8234         * lily/percent-repeat-engraver.cc (class Percent_repeat_engraver):
8235         also create counter grobs.
8236
8237         * lily/separation-item.cc (extremal_break_aligned_grob): don't
8238         return grob without space-alist.
8239
8240         * input/proportional.ly: tune staff-padding.
8241
8242         * input/regression/repeat-percent-count.ly: new file. 
8243
8244 2005-08-16  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8245
8246         * input/no-notation/display-lily-tests.ly: moved from
8247         input/regression/ to input/no-notation. Be sure to call
8248         `display-lily-init' before trying to use the display function.
8249
8250 2005-08-16  Mats Bengtsson  <mabe@s3.kth.se>
8251
8252         * scripts/lilypond-book.py (option_definitions): Don't localize
8253         the empty string. Fixes bug when --psfonts was used with
8254         non-English locale.
8255
8256 2005-08-15  Graham Percival  <gpermus@gmail.com>
8257
8258         * lily/tuplet-bracket.cc: simple build fix.
8259
8260         * Documentation/user/putting.itely: use "we" instead of "I".
8261
8262         * Documentation/user/basic-notation.itely: cautionary accidentals
8263         work with naturals, too.
8264
8265 2005-08-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8266
8267         * lily/tuplet-bracket.cc (calc_position_and_height): add
8268         staff-padding support.
8269
8270         * input/proportional.ly: set staff-padding.
8271         
8272         * VERSION (PATCH_LEVEL): release 2.7.5
8273
8274         * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): text formatting
8275         fixes. Remove tweaks.
8276
8277         * input/regression/tuplet-slope.ly: add a test case.
8278
8279         * lily/tuplet-bracket.cc (calc_position_and_height): revert
8280         erroneous fix. Add spanner bounds to offset array with relative X
8281         positions.
8282
8283         * ly/engraver-init.ly: add Rest_engraver only once.
8284
8285         * scm/define-music-display-methods.scm (KeyChangeEvent): only do
8286         (*parser*) lookup if (*parser*) != #f.
8287
8288 2005-08-15  Jan Nieuwenhuizen  <janneke@gnu.org>
8289
8290         * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
8291         Cut-and paste update.
8292
8293         * input/regression/slur-script.ly: Add example of reverting
8294         inside-slur for fingering.
8295
8296         * scm/define-grobs.scm (DynamicLineSpanner, Fingering,
8297         TextScript): Explicitly set inside-slur #f, forcing these out of slur.
8298
8299         * lily/slur-engraver.cc (acknowledge_extra_object): Only invoke
8300         outside_slur_callback if inside-slur == #f (as opposed to unset).
8301
8302 2005-08-14  Jan Nieuwenhuizen  <janneke@gnu.org>
8303
8304         * tex/GNUmakefile (INSTALLATION_FILES): Remove enc symlink setup,
8305         encoding files are already removed.
8306
8307 2005-08-15  Mats Bengtsson  <mabe@s3.kth.se>
8308
8309         * Documentation/user/advanced-notation.itely (Instrument names):
8310         Document a workaround for instrument names that collide with
8311         system start braces/brackets.
8312
8313 2005-08-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8314
8315         * lily/rest-collision.cc (do_shift): spello.
8316
8317         * input/proportional.ly: use #'used property. Set break-overshoot
8318         property.
8319
8320         * mf/feta-arrow.mf: center on arrow tip center, iso. tip edge.
8321
8322         * lily/paper-column.cc: add #'used property
8323
8324         * lily/mark-engraver.cc (stop_translation_timestep): set grob
8325         array for staves found.
8326
8327         * lily/metronome-engraver.cc (stop_translation_timestep): set grob
8328         array for stavesFound.
8329
8330         * lily/staff-spacing.cc (next_note_correction): add fixed and
8331         space to calling convention. This fixes spacing of accidentals
8332         after barlines.
8333
8334         * input/regression/spacing-accidental-stretch.ly: add barline -
8335         accidental case.
8336
8337         * scm/framework-ps.scm (page-header): add version number to
8338         creator
8339         (eps-header): idem.
8340
8341         * mf/feta-bolletjes.mf: swap d0 and u0 fa heads.
8342         
8343 2005-08-13  Graham Percival  <gpermus@gmail.com>
8344
8345         * Documentation/user/global.itely: add "fit as much as
8346         possible onto this page" example (Vertical spacing).
8347
8348 2005-08-13  Jan Nieuwenhuizen  <janneke@gnu.org>
8349
8350         * *: Nitpick run.
8351
8352         * buildscripts/fixcc.py: Fixes.
8353
8354 2005-08-12  Graham Percival  <gpermus@gmail.com>
8355
8356         * Documentation/user/advanced-notation.itely: add markup
8357         example to Text spanners.
8358
8359 2005-08-12  Mats Bengtsson  <mabe@s3.kth.se>
8360
8361         * Documentation/user/basic-notation.itely (Ties): Add example of
8362         tying a tremolo to a chord. Thanks to Steve Doonan. 
8363
8364         * lily/tie-engraver.cc: Add tieWaitForNote to the list of read
8365         properties and move tieMelismaBusy to the list of written
8366         properties. 
8367
8368 2005-08-12  Heikki Junes  <hjunes@cc.hut.fi>
8369
8370         * po/TODO: suggest to use a dedicated tool like kbabel.
8371
8372         * po/fi.po: update using kbabel.
8373
8374 2005-08-12  Jan Nieuwenhuizen  <janneke@gnu.org>
8375
8376         * *: Remove obsolete files.  Nitpick run.
8377
8378         * lily/lily-guile.cc (parse_symbol_list): Bugfix.
8379
8380 2005-08-11  Jan Nieuwenhuizen  <janneke@gnu.org>
8381
8382         * mf/GNUmakefile (get-*-fonts): Rename from get-*-pfa.  Copy SVG
8383         too.
8384
8385         * Documentation/topdocs/NEWS.tely (Top): Add slur script feature.
8386
8387         * lily/lily-guile.cc (parse_symbol_list): Rewrite.  Grok multiple
8388         whitespace as symbol separator.
8389
8390         * lily/side-position-interface.cc: Add slur-padding.
8391
8392         * input/regression/slur-script.ly: Fixed.  Backportme?  This is
8393         quite a large fix, and it never worked in a stable release; so not
8394         really a regression.
8395
8396         * lily/phrasing-slur-engraver.cc (class Phrasing_slur_engraver):
8397         Update cut and paste code from Slur_engraver.
8398
8399         * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
8400         Add.
8401
8402         * scm/define-grobs.scm (DynamicLineSpanner): Add
8403         dynamic-line-spanner-interface.
8404         (DynamicLineSpanner, TextScript, Fingering): Add slur-padding.
8405
8406 2005-08-09  Jan Nieuwenhuizen  <janneke@gnu.org>
8407
8408         * lily/slur-engraver.cc (acknowledge_extra_object): Bugfix: use
8409         to_boolean () so that non-set 'inside-slur means false.
8410
8411         * lily/slur.cc (outside_slur_callback): Bugfixes: make sure that
8412         slur has control-points.  Skip script without direction.  Always
8413         do_shift if script inside slur, even if slur not contained in
8414         script y-extent.  Increment k in loop.
8415
8416 2005-08-11  Mats Bengtsson  <mabe@s3.kth.se>
8417
8418         * scm/define-markup-commands.scm: Improved regexp to search for
8419         EPS bounding boxes and corrected call to ly:warning.
8420
8421 2005-08-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8422
8423         * Documentation/user/programming-interface.itely (Displaying music
8424         expressions): doc for \displayLilyMusic. Also some precisions in
8425         "Markup construction in Scheme"
8426
8427 2005-08-10  Mats Bengtsson  <mabe@s3.kth.se>
8428
8429         * scm/define-markup-commands.scm (normal-text): Added 2 new
8430         markup commands, \normal-text and \medium (the latter thanks to
8431         Bruce Fairchild). 
8432
8433 2005-08-08  Graham Percival  <gpermus@gmail.com>
8434
8435         * Documentation/user/programming-interface.itely: fix @{ @}.
8436
8437         * scm/define-markup-commands.scm: add linewidth info to
8438         \justify and \wordwrap, add "upright is the opposite of italic".
8439
8440         * Documentation/user/advanced-notation.itely: shaped->shape,
8441         add (cons (markup "foo")) type of example to text markup,
8442         reword multi-measure rests section.
8443
8444         * lily/note-heads-engraver.cc: changed Shaped->Shape in a
8445         comment.  No actual code was touched.
8446
8447         * Documentation/user/invoking.itely: add more info about
8448         \include.  Thanks, Bruce!
8449
8450         * THANKS: add Bruce Fairchild, alphabetise.
8451
8452         * Documentation/user/global.itely: document \score{\header{}}
8453         behavior.
8454
8455         * Documentation/user/basic-notation.itely: reword multi-measure
8456         rest discussion in Rests.
8457
8458 2005-08-08  Mats Bengtsson  <mabe@s3.kth.se>
8459
8460         * Documentation/user/programming-interface.itely (Markup
8461         construction in Scheme): Corrected example and tried to clarify
8462         the implicit \line in the table.
8463
8464 2005-08-07  Graham Percival  <gpermus@gmail.com>
8465
8466         * Documentation/user/instrument-notation.itely: moved
8467         some bagpipe info back into the bagpipe section.  Somehow
8468         it ended up in the "other vocal issues" section?!  :o_O
8469
8470 2005-08-07  Jan Nieuwenhuizen  <janneke@gnu.org>
8471
8472         * scm/framework-ps.scm (dir-join): Rename from path-join (joins
8473         directories, not paths).
8474
8475 2005-08-06  Jan Nieuwenhuizen  <janneke@gnu.org>
8476
8477         * scm/framework-ps.scm (munge-lily-font-name): Bugfix: Munge only
8478         plain emmentaler/aybabtu.  Backportme.
8479
8480         * lily/tuplet-bracket.cc (calc_position_and_height): Bugfix:
8481         missing dir correction.
8482
8483 2005-08-05  Graham Percival  <gperlist@shaw.ca>
8484
8485         * scm/define-markup-commands: fix reversed justify/wordwrap
8486         doc strings.
8487
8488 2005-08-05  Jürgen Reuter  <reuter@ipd.uka.de>
8489
8490         * lily/ligature-engaver.cc, lily/coherent-ligature-engaver.cc,
8491         lily/gregorian-ligature-engaver.cc,
8492         lily/include/ligature-engraver.hh,
8493         lily/include/coherent-ligature-engraver.hh,
8494         lily/include/gregorian-ligature-engraver.hh: make these classes
8495         truely abstract.  This should fix some internal oddities such as
8496         duplicate as well as dead translator/property declarations, and
8497         also some dead code.
8498
8499         * lily/ligature-bracket-engraver.cc, lily/ligature-engraver.cc:
8500         bugfix: avoid message "junking empty ligature" on ligature
8501         brackets by collecting dummy grobs.
8502
8503 2005-08-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8504
8505         * lily/tuplet-bracket.cc (print): default right overshoot to 0.0
8506
8507         * input/proportional.ly (staffKind): bugfix.
8508         (staffKind): updates by Trevor Baca.
8509
8510         * scm/define-grobs.scm (all-grob-descriptions): remove arrows as
8511         default layout. 
8512
8513         * lily/tuplet-bracket.cc (print): check whether edge-text is a
8514         pair.
8515
8516         * lily/beam.cc (rest_collision_callback): call position_beam() if
8517         necessary.
8518
8519         * VERSION: release 2.7.4
8520
8521         * input/regression/spacing-uniform-stretching.ly: new file.
8522
8523         * lily/spacing-loose-columns.cc (set_loose_columns): use robust_relative_extent().
8524
8525         * Documentation/topdocs/NEWS.tely (Top): add Nicolas as
8526         contributor.
8527
8528         * lily/include/ly-module.hh: define MODULE_GC_KLUDGE globally.
8529
8530         * input/proportional.ly: new file.
8531
8532         * lily/tuplet-bracket.cc (after_line_breaking): don't suicide if
8533         columns is empty
8534
8535         * lily/tuplet-engraver.cc (finalize): new function. Reset right
8536         bounds to currentCommandColumn for the last step.
8537         (start_translation_timestep): if tupletFullLength is set, set
8538         bound to Paper Column
8539
8540         * input/regression/tuplet-full-length.ly (indent): new file.
8541
8542         * lily/spacing-loose-columns.cc (set_loose_columns): space a whole
8543         clique of loose columns, eg. a set of grace notes in strict
8544         notespacing.
8545
8546         * input/regression/spacing-strict-spacing-grace.ly: new file.
8547
8548         * lily/key-signature-interface.cc: change property name to
8549         alteration-alist
8550
8551         * lily/key-engraver.cc (read_event): read keyAlterationOrder, not
8552         keyAccidentalOrder
8553
8554         * python/convertrules.py (conv): keyAccidentalOrder ->
8555         keyAlterationOrder
8556
8557         * lily/key-engraver.cc (create_key): always print a cancellation
8558         for going to C-major/A-minor, regardless of printKeyCancellation.
8559         (create_key): remove typecheck for visibility. This fixes key
8560         signature not being printed.
8561
8562         * lily/spacing-determine-loose-columns.cc: new file.
8563
8564         * input/regression/spacing-strict-notespacing.ly: new file.
8565
8566         * lily/spacing-spanner.cc (generate_springs): rename from
8567         do_measure. 
8568         (generate_pair_spacing): new function.
8569         (init, generate_pair_spacing): set between-cols for floating
8570         nonmusical columns.
8571
8572         * lily/spaceable-grob.cc (get_spring): new function. 
8573
8574         * lily/tuplet-bracket.cc (print): on the left, the overshoot is
8575         relative to the right edge of the prefatory matter.
8576
8577         * lily/beam.cc (print): read break-overshoot to determine where to
8578         stop/start broken beams.
8579
8580         * input/regression/spanner-break-overshoot.ly: new file.
8581
8582 2005-08-04  Graham Percival  <gperlist@shaw.ca>
8583
8584         * ly/bagpipe.ly: updated.
8585
8586         * Documentat/user/instrument.itely: un-comment out bagpipe example.
8587
8588 2005-08-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8589
8590         * lily/dynamic-engraver.cc (acknowledge_slur): add slur to
8591         support: now (de)crescs avoid slurs as well.
8592
8593         * Documentation/user/instrument-notation.itely (Bagpipe example):
8594         comment out non-functioning bagpipe example.
8595         (Bagpipe definitions): idem.
8596
8597         * Documentation/topdocs/NEWS.tely (Top): add uniform-stretching example.
8598         (Top): add proportionalNotationDuration example.
8599
8600         * input/regression/spacing-proportional.ly: new file.
8601
8602         * lily/tuplet-bracket.cc (parallel_beam): broken bracket never is
8603         synched to a beam.
8604
8605         * lily/beam.cc (shift_region_to_valid): divide by zero fix. This
8606         fixes beams with a single stem (eg. beams across linebreaks.)
8607
8608         * lily/parser.yy (simple_string): allow \new STRING_IDENTIFIER.
8609
8610         * flower/rational.cc (operator +): prevent overflow. This fixes
8611         heavily nested tuplets.
8612
8613         * lily/auto-beam-engraver.cc (derived_mark): new method. Yes. We
8614         have to protect even those unlikely to be corrupted data members.  
8615
8616 2005-08-04  Graham Percival  <gperlist@shaw.ca>
8617
8618         * ly/bagpipe.ly: new file.
8619
8620         * THANKS: added Sven Axelsson.
8621
8622 2005-08-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8623
8624         * lily/spacing-engraver.cc (stop_translation_timestep): directly
8625         copy proportionalNotationDuration into currentMusicalColumn if
8626         set.
8627
8628         * lily/spacing-spanner.cc (musical_column_spacing): if
8629         uniform-stretching set, fixed space is 0.0
8630
8631         * input/regression/spacing-multi-tuplet.ly: show
8632         uniform-stretching property.
8633
8634         * lily/spacing-spanner.cc (effective_shortest_duration): new function.
8635
8636         * lily/include/spacing-spanner.hh (class Spacing_spanner): new file.
8637         (struct Spacing_options): new struct.
8638
8639         * lily/spacing-basic.cc: new file.
8640
8641         * lily/spacing-spanner.cc (note_spacing): remove outdated code:
8642         delta_t doesn't have to be smaller than shortest_playing_len
8643
8644 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8645
8646         * input/regression/markup-arrows.ly:  new file.
8647
8648         * lily/tuplet-bracket.cc: document new behavior.
8649
8650         * input/regression/tuplet-broken.ly: new file. Demonstrate tuplets
8651         with line breaks.
8652
8653         * scm/define-markup-commands.scm (arrow-head): arrow-head markup command.
8654
8655         * scm/define-grobs.scm (all-grob-descriptions): set arrows as
8656         default 
8657
8658         * lily/tuplet-bracket.cc: add edge-text property.
8659         add break-overshoot.
8660         (print): read break-overshoot.
8661         (print): read edge-text, add stencils.
8662
8663         * mf/feta-arrow.mf: new file.
8664
8665         * mf/feta-generic.mf: add feta-arrow.
8666
8667 2005-08-03  Mats Bengtsson  <mabe@s3.kth.se>
8668
8669         * Documentation/user/lilypond-book.itely (An example of a
8670         musicological document): Added flag -o to dvips for people who use
8671         the default setting in teTeX where output is sent to the printer. 
8672
8673         * Documentation/user/global.itely (Vertical spacing): Added
8674         reference to the Axis_group_engraver which documents the *Extent
8675         properties.
8676
8677 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8678
8679         * Documentation/user/basic-notation.itely (Tuplets): add note
8680         about nested tuplets. Remove BUG. 
8681
8682         * input/regression/tuplet-nest.ly: update: remove manual hack. 
8683
8684         * lily/tuplet-bracket.cc (print): use robust_scm2drul
8685         (print): manually call print() for subtuplets.
8686         (calc_position_and_height): add subtuplets to the
8687         support. Vertically shift outer tuplet 
8688
8689         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): set
8690         remove-first for Lyrics, ChordNames and FiguredBass
8691
8692         * scm/define-grob-properties.scm (all-internal-grob-properties):
8693         use ly:grob-array? iso. grob-list?
8694         (all-internal-grob-properties): add tuplets grob-array.
8695
8696         * lily/tuplet-bracket.cc (add_tuplet_bracket):
8697         new function
8698
8699 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8700
8701         * input/test/time-signature-staff.ly: new file.
8702
8703         * ly/declarations-init.ly (center): escape to Scheme. Fixes
8704         spurious #<Music FingerEvent> errors. Backportme.
8705
8706 2005-08-03  Mats Bengtsson  <mabe@s3.kth.se>
8707
8708         * Documentation/user/programming-interface.itely (Markup
8709         construction in Scheme): Corrected markup syntax in the
8710         translation table.
8711
8712 2005-08-03  Graham Percival  <gperlist@shaw.ca>
8713
8714         * Documentation/user/instrument-notation.itely: small update
8715         to bagpipe notation docs; thanks Sven!
8716
8717         * Documentation/user/basic-notation.itely: add link about trills.
8718
8719 2005-08-02  Graham Percival  <gperlist@shaw.ca>
8720
8721         * Documentation/user/music-glossary: remove accidentally committed
8722         fink patch.
8723
8724 2005-08-02  Yoshinobu Ishizaki  <isizaki@mte.biglobe.ne.jp>
8725
8726         * lily/lily-parser.cc (get_header): new function. Enable multiple
8727         \header definitions.
8728
8729         * lily/parser.yy (lilypond_header_body): use get_header.
8730
8731         * ly/init.ly:
8732         * scm/lily-library.scm (print-score-with-defaults): renamed
8733         $globalheader to $defaultheader
8734             
8735         * Documentation/user/global.itely (Creating titles): added short
8736         explanation that multiple headers are useable.
8737
8738
8739 2005-08-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8740
8741         * lily/module-scheme.cc (LY_DEFINE): new file. 
8742
8743         * Documentation/user/advanced-notation.itely (Font selection): add
8744         doco for make-pango-font-tree.
8745
8746 2005-07-31  Graham Percival  <gperlist@shaw.ca>
8747
8748         * Documentation/user/music-glossary: more languages
8749         for tenuto.
8750
8751         * Docuemntation/user/instrument-notation.itely: minor
8752         update for bagpipe example.
8753
8754 2005-07-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8755
8756         * input/regression/+.ly (TODO): add some text.
8757
8758 2005-07-28  Graham Percival  <gperlist@shaw.ca>
8759
8760         * Documentation/user/invoking.itely: \score begins with music.
8761
8762         * Documentation/user/ basic-notation.itely,
8763         instrument-notation.itely: minor changes.
8764
8765         * Documentation/user/music-glossary.itely: began tenuto entry.
8766
8767 2005-07-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8768
8769         * scm/output-socket.scm (bezier-sandwich): add bezier-sandwich
8770
8771         * mf/feta-bolletjes.mf: swap up and down for aiken heads.
8772
8773 2005-07-27  Graham Percival  <gperlist@shaw.ca>
8774
8775         * Documentation/user/examples.itely: remove bagpipe template.
8776
8777         * Documentation/user/instrument-notation.itely: add bagpipe
8778         section, maybe fix quotes in lyrics.  I hate text encoding.
8779         Clarify chord durations, more bagpipe stuff.
8780
8781 2005-07-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8782  
8783         * lily/accidental-engraver.cc: formatting fixes.
8784
8785         * lily/spacing-spanner.cc (prune_loose_columns): right-items is a
8786         grob-array.
8787
8788         * lily/arpeggio.cc (print): suicide arpeggio for single notehead.
8789
8790         * lily/note-column.cc (arpeggio): new function.
8791
8792         * lily/note-spacing.cc (get_spacing): also take arpeggio into
8793         account for spacing.
8794
8795 2005-07-25  Jan Nieuwenhuizen  <janneke@gnu.org>
8796
8797         * lily/main.cc (sane_setenv)[!ARGV0_RELOCATION]: Also define.
8798         (setup_guile_env): Use it instead of nonstandard setenv.  Fixes
8799         mingw build.
8800         
8801 2005-07-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8802
8803         * scm/lily.scm (lilypond-all): clear anonymous modules after
8804         processing files.
8805
8806 2005-07-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8807
8808         * flower/include/guile-compatibility.hh (SCM_I_CONSP): add
8809         SCM_I_CONSP
8810
8811         * VERSION: 2.7.3 released
8812
8813         * Documentation/user/invoking.itely (Invoking lilypond): add
8814         LILYPOND_GC_YIELD documentation.
8815
8816         * lily/*: cleanups: use scm_from_int iso. scm_int2num. Idem for
8817         scm_from_real / scm_make_real.
8818
8819         * lily/main.cc (setup_guile_env): new function. Set GC min_yields
8820         higher. This increases memory footprint, but provides overall
8821         speedup of 15 to 20%. 
8822
8823         * lily/include/translator.hh (class Translator): remove
8824         PRECOMPUTED_VIRTUAL everywhere.
8825
8826         * lily/include/lily-guile.hh: inline scm_c[ad]r, scm_is_pair.
8827
8828         * lily/context.cc (now_mom): non-recursive now_mom() 
8829
8830         * lily/include/profile.hh: new file.
8831
8832         * lily/profile.cc: new file.
8833
8834         * lily/grob.cc (Grob::Grob): look properties up directly.
8835
8836         * lily/open-type-font.cc (get_indexed_char): cache index -> bbox
8837         lookups.
8838
8839         * lily/include/box.hh (class Box): smob Box type.
8840
8841         * lily/smobs.cc (protect_smob): O(1) GC (un)protection.
8842
8843         * lily/include/smobs.hh (DECLARE_BASE_SMOBS): add methods
8844         protect() and unprotect(). Use throughout.
8845
8846 2005-07-24  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8847
8848         * Documentation/topdocs/NEWS.tely: new item for \displayLilyMusic
8849
8850         * scm/define-music-display-methods.scm (markup->lily-string):
8851         markup elements can also be strings (without simple-markup
8852         appended)
8853
8854 2005-07-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8855
8856         * lily/context.cc (where_defined): also assign value in
8857         where_defined().
8858
8859         * lily/bezier.cc (get_other_coordinate): use curve_coordinate
8860         (curve_coordinate): new function
8861
8862         * lily/simple-spacer.cc (add_columns): only add rods between
8863         column i and begin/end if keep-inside-line is set (this repleces
8864         allow-outside-line as default)
8865
8866 2005-07-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8867
8868         * lily/tuplet-engraver.cc (start_translation_timestep): only read
8869         tupletSpannerDuration if applicable.
8870
8871         * lily/font-size-engraver.cc (process_music): read fontSize only
8872         once per timestep.
8873
8874         * lily/engraver*cc: use throughout.
8875         
8876         * lily/include/translator.icc (ADD_ACKNOWLEDGER): new macro.
8877
8878         * lily/translator.cc (add_acknowledger): new file. Directly jump
8879         into an Engraver::acknowledge_xxx () method based on a grobs
8880         interface-list.
8881
8882         * lily/include/translator-dispatch-list.hh (class
8883         Engraver_dispatch_list): new struct, new file.
8884
8885         * scm/define-context-properties.scm
8886         (all-internal-translation-properties): remove acceptHashTable,
8887         acknowledgeHashTable
8888
8889         * lily/translator-group.cc (mark_smob): idem for acceptHashTable.
8890
8891         * lily/engraver-group-engraver.cc (Engraver_group_engraver):
8892         change acknowledgeHashTable to C++ member. 
8893
8894         * lily/rest-collision.cc (do_shift): use extract_grob_set().
8895
8896 2005-07-22  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8897
8898         * scm/display-lily.scm: new file. Define a `display-lily-music'
8899         function, that displays the music expression given as an argument,
8900         using LilyPond notation.
8901
8902         * scm/define-music-display-methods.scm: new file. Implementation
8903         of display methods for each music type.
8904
8905         * ly/music-functions-init.ly (displayLilyMusic): new function for
8906         displaying music with LilyPond notation.
8907
8908         * input/regression/display-lily-tests.ly: new regression test file
8909         for `display-lily-music'.
8910
8911         * scm/markup.scm: remove obsolete debugging code (for printing
8912         markups with LilyPond notation).
8913
8914         * scm/define-music-types.scm (music-name-to-property-table):
8915         * scm/clef.scm (supported-clefs): export, in order to be accessible
8916         from the (scm display-lily) module.
8917
8918 2005-07-22  Jan Nieuwenhuizen  <janneke@gnu.org>
8919
8920         * Documentation/topdocs/NEWS.tely (Top): Typo.
8921
8922 2005-07-22  Heikki Junes  <hjunes@cc.hut.fi>
8923
8924         * Documentation/index.html.in, Documentation/texinfo.css,
8925           stepmake/bin/text2html.py, buildscripts/mutopia-index.py,
8926           Documentation/bibliography/index.html.in,
8927           Documentation/bibliography/html-long.bst: revert css-width patch,
8928           it does not work with IE6.
8929
8930 2005-07-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8931
8932         * Documentation/texinfo.css: revert 760px hack. 
8933
8934         * VERSION: release 2.7.2
8935
8936         * Documentation/topdocs/NEWS.tely (Top): mention barNumberCheck
8937
8938         * Documentation/user/basic-notation.itely (Barnumber check): add
8939         section.
8940
8941         * scm/music-functions.scm (skip-to-last): new function. Show only
8942         last showLastLength part of the \score.
8943
8944         * lily/moment-scheme.cc (LY_DEFINE): new function ly:moment-sub
8945
8946         * python/convertrules.py (conv): add ly:x-moment rule
8947
8948         * lily/moment-scheme.cc (LY_DEFINE): rename ly:X-moment  -> ly:moment-X
8949
8950         * Documentation/topdocs/NEWS.tely (Top): add new feature.
8951
8952         * Documentation/user/instrument-notation.itely (Flexibility in
8953         alignment): options in subsections.
8954
8955         * lily/lyric-engraver.cc (process_music): don't typeset text for _
8956         syllable text. Instead, assume that the previous lyric text is a
8957         melismated text.
8958
8959         * Documentation/index.html.in: revert 800x600 change.
8960
8961 2005-07-19  Jan Nieuwenhuizen  <janneke@gnu.org>
8962
8963         * lily/main.cc (main): Remove invalid handle kludge.
8964
8965         * scm/lily.scm (running-from-gui?): WINDOWS: check -dgui.
8966         (lambda): add gui define.
8967
8968 2005-07-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8969
8970         * Documentation/topdocs/NEWS.tely (Top): add note about Musica ficta.
8971
8972         * Documentation/user/instrument-notation.itely (Musica ficta
8973         accidentals): add section Musica ficta accidentals
8974
8975         * lily/accidental-engraver.cc (make_suggested_accidental): new
8976         function.
8977         (make_standard_accidental): move into new function.
8978         (create_accidental): new function.
8979
8980         * scm/define-grobs.scm (all-grob-descriptions): new Grob
8981         AccidentalSuggestion
8982
8983         * lily/output-def-scheme.cc (LY_DEFINE): take default  argument.
8984
8985         * lily/output-def.cc (lookup_variable): return SCM_UNDEFINED if
8986         undefined.
8987
8988         * Documentation/user/global.itely (Page formatting): document
8989         horizontalshift.
8990
8991         * scm/page-layout.scm (default-page-music-height):
8992         horizontalshift: new variable, shift all systems by
8993         horizontalshift to the right, to make space for instrument names.
8994
8995         * scm/paper.scm (set-paper-dimension-variables): add horizontalshift
8996
8997         * lily/input-scheme.cc (LY_DEFINE): take format commands.
8998
8999 2005-07-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9000
9001         * lily/note-column.cc (dir): idem.
9002
9003         * lily/spacing-spanner.cc (Module): idem.
9004
9005         * lily/script-column.cc (before_line_breaking): use extract_grob_set()
9006
9007         * lily/include/paper-column.hh (class Paper_column): add
9008         non-static get_rank() member.
9009
9010         * VERSION: release 2.7.1
9011         
9012         * scm/framework-null.scm: new file, used for benchmarking.
9013
9014 2005-07-20  Heikki Junes  <hjunes@cc.hut.fi>
9015
9016         * Documentation/topdocs/INSTALL.texi, configure.in: fix
9017         version dependencies for fontforge and gs.
9018
9019         * Documentation/index.html.in, Documentation/texinfo.css,
9020         stepmake/bin/text2html.py, buildscripts/mutopia-index.py,
9021         Documentation/bibliography/index.html.in, 
9022         Documentation/bibliography/html-long.bst: optimize width of
9023         html for a 800x600 screen (width:760), increases printability
9024         when 'fit to page' is not set and readability in wide screens.
9025
9026         * stepmake/bin/add-html-footer.py: add missing </p>.
9027
9028 2005-07-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9029
9030         * scm/define-markup-commands.scm (beam): use polygon in beam
9031         command.
9032
9033         * lily/grob-pq-engraver.cc (stop_translation_timestep): save up
9034         all acknowledged grobs, and do potentially expensive merge and
9035         write in one go.
9036
9037         * buildscripts/mf-to-table.py (write_fontlist): enforce noBreak.
9038
9039         * configure.in (reloc_b): add --enable-static-gxx to statically
9040         link to libstdc++
9041
9042         * lily/GNUmakefile (static-gxx-libs): new target
9043         static-gxx-libs. Create symlink to libstdc++.a
9044
9045         * lily/new-lyric-combine-music-iterator.cc: rename to
9046         Lyric_combine_music_iterator
9047
9048         * lily/lyric-combine-music-iterator.cc
9049         (Old_lyric_combine_music_iterator): rename to
9050         Old_lyric_combine_music_iterator
9051
9052         * lily/*-engraver.cc (various): remove double use of
9053         PRECOMPUTED_VIRTUAL function: only use
9054         start_translation_timestep() and stop_translation_timestep(), not
9055         both.
9056
9057         * lily/break-substitution.cc (fast_substitute_grob_array): do
9058         fast_substitute_grob_array for all unordered grob_arrays.
9059         (substitute_grob): return Grob *. Saves packing/unpacking SCMs.
9060         (substitute_grob_array): optimize.
9061
9062         * lily/align-interface.cc (set_axis): set ordered_ for 'elements
9063
9064         * lily/include/grob-array.hh (class Grob_array): ordered_ member.
9065
9066         * lily/parser.yy: revert $globalheader patch.
9067         
9068         * lily/include/translator.icc
9069         (IMPLEMENT_FETCH_PRECOMPUTABLE_METHODS): directly jump into
9070         Translator methods, without _static helper.
9071  
9072         * lily/grob-smob.cc (derived_mark): rename from
9073         do_derived_mark(). Return void.
9074
9075         * scm/define-context-properties.scm
9076         (all-internal-translation-properties): remove tweakCount/tweakRank.
9077
9078         * scm/output-lib.scm (begin-of-line-invisible): use vectors for
9079         predefined break-visibilities.
9080
9081         * lily/item.cc (handle_prebroken_dependencies): use a vector of 3
9082         booleans for break-visibility.
9083
9084         * Documentation/topdocs/NEWS.tely (Top): add note about engravers.
9085
9086         * python/convertrules.py (conv): rule for Timing_translator. 
9087
9088         * lily/include/translator.icc: new file. 
9089
9090         * lily/paper-column-engraver.cc (process_music): new
9091         file. Separate Paper_column factory from Score_engraver.
9092
9093         * lily/vertically-spaced-context-engraver.cc: administer
9094         spaceable-staves property of System.
9095
9096         * lily/translator-group-ctors.cc: new file.
9097
9098         * lily/context-property.cc (make_grob_from_properties): construct
9099         the right Grob class programmatically, looking at the class entry
9100         for the meta property.
9101
9102         * lily/break-align-engraver.cc (stop_translation_timestep): call
9103         Break_align_interface::add_element() directly.
9104
9105         * lily/context.cc (measure_position): measure_position() is now a
9106         normal function.
9107
9108         * lily/include/translator.hh (class Translator): rename
9109         process_acknowledged_grobs() to process_acknowledged() and move to
9110         Translator.
9111
9112         * scm/define-grobs.scm (all-grob-descriptions): add a 'class meta
9113         field for each grob description.
9114
9115         * lily/include/translator-group.hh (class Translator_group):
9116         change to base class. Separate class from Translator. This gets
9117         rid of virtual inheritance for Engravers/Performers.
9118
9119         * lily/staff-performer.cc (class Staff_performer): derive
9120         Staff_performer from Performer, not Performer_group_performer 
9121
9122         * Lily/translator-group.cc (precomputed_recurse_over_translators):
9123         new function.
9124         (precompute_method_bindings): new function. Precompute lists of
9125         Translators, so we only call methods (process_music,
9126         start_translation_timestep, etc.) for Translators needing
9127         it. Also: dispose of pointer-to-member-function calls.
9128
9129         * lily/engraver-group-engraver.cc: remove engraver_each,
9130         recurse_down_engravers ()
9131
9132         * lily/note-head.cc (internal_print): only call
9133         glyph-name-procedure if style != default. 
9134
9135 2005-07-16  Graham Percival  <gperlist@shaw.ca>
9136
9137         * ly/titling-init.ly: add printallheaders option.
9138
9139         * Documentation/user/global.itely: document printallheaders.
9140
9141 2005-07-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9142
9143         * lily/system.cc (do_derived_mark): don't mark from object_alist_
9144         anymore, but do it centrally.  
9145
9146         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
9147         hammer hack.
9148
9149         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-object
9150
9151         * scm/output-lib.scm: remove hammer-print-function.
9152
9153         * lily/include/pointer-group-interface.hh (extract_grob_set): new
9154         macro. Declare a Link_array<Grob> and fill it from a grob.
9155         (extract_item_set): idem for item.
9156
9157         * lily/break-substitution.cc: add header.
9158         (fast_substitute_grob_array): rewrite for Grob_arrays.
9159         (substitute_grob_array): idem.
9160
9161         * lily/group-interface.cc (add_thing): remove file.
9162
9163         * flower/include/parray.hh (class Link_array): slice() is const.
9164
9165         * lily/include/grob-array.hh: new file.
9166
9167         * lily/grob-array.cc (spanner): new file.
9168
9169         * lily/beam-quanting.cc (fill): read details property from beam.
9170
9171         * lily/beam.cc: support details property.
9172
9173         * total speedups below: approx 10%.
9174
9175         * lily/include/beam.hh: new struct, softcode beam quanting parameters
9176
9177         * lily/include/grob.hh (class Grob): add interfaces_ member.
9178
9179         * lily/bezier.cc (init_polynomial_cache): new function: cache
9180         binom(3,j) t^j (1-t)^{3-j}
9181         (curve_point): opps, actually use the cache for t^j , (1-t)^j! 
9182
9183         * lily/*.cc: substitution throughout.
9184
9185         * lily/grob-property.cc (internal_get_object): new routine.
9186         (internal_set_object): idem. Store grob refrences in separate
9187         alist. This saves processing time, since properties aren't
9188         break-substituted, and the per grob namespace is smaller, both for
9189         grobs and non-grob properties.
9190
9191         * scm/define-grob-properties.scm (all-internal-grob-properties):
9192         remove center-element.
9193
9194         * lily/grob.cc: remove tweak-count, tweak-rank.
9195
9196 2005-07-15  Graham Percival  <gperlist@shaw.ca>
9197
9198         * Documentation/user/lilypond-book.itely: fixes example.
9199
9200 2005-07-15  Nicolas Sceaux  <nicolas.sceaux@free.fr>
9201
9202         * Documentation/user/global.itely (Creating titles):    
9203         * Documentation/user/examples.itely (All headers): change the
9204         place of \header in \score blocks (after music block) to make
9205         examples compile (cf. changes on parser.yy on 2005-07-10)
9206
9207 2005-07-13  Graham Percival  <gperlist@shaw.ca>
9208
9209         * python/convertrules.py: add exc -> ecc rule.
9210
9211         * scripts/convert-ly.py: add location of convertrules.py
9212         in a comment.
9213
9214         * Documentation/user/changing-defaults.itely: fix language.
9215
9216 2005-07-12  Jan Nieuwenhuizen  <janneke@gnu.org>
9217
9218         * lily/lily-parser-scheme.cc (LY_DEFINE): Guile 1.6 fix.
9219
9220 2005-07-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9221
9222         * scm/output-socket.scm (grob-bbox): don't use inf? 
9223
9224         * flower/include/rational.hh: add operator bool() 
9225
9226         * scm/define-music-types.scm (music-descriptions): remove
9227         internal-class-name properties.
9228
9229         * lily/include/event.hh: remove file.
9230
9231         * lily/include/music-constructor.hh: remove file.
9232
9233         * lily/parser.yy (Lily_lexer): check EVENT_IDENTIFIER using 'event
9234         in 'types property.
9235
9236         * lily/music.cc (duration_length_callback): new function.
9237
9238         * lily/event.cc: remove file.
9239
9240         * lily/music-constructor.cc: remove file.
9241
9242         * lily/music-scheme.cc (LY_DEFINE): rename to ly:make-music
9243
9244         * lily/context.cc (get_grob_key): nop if use_object_keys not set.
9245         (get_context_key): idem.
9246
9247         * scm/lily.scm (lambda): new option object-keys (default to #f)
9248
9249         * scm/output-svg.scm (utf-8-string): rename  from utf8-string.
9250
9251         * scm/output-gnome.scm: remove beam routine.
9252
9253         * scm/output-ps.scm (scm): idem.
9254
9255         * scm/output-svg.scm: remove beam.
9256
9257         * ps/music-drawing-routines.ps: remove draw_beam.
9258
9259         * lily/lookup.cc (beam): use round_filled_polygon() for beam.
9260
9261         * flower/include/guile-compatibility.hh (scm_from_locale_string):
9262         add scm_from_locale_string compatibility glue. 
9263
9264 2005-07-13  Yoshinobu Ishizaki  <isizaki@mte.biglobe.ne.jp>
9265
9266         * scripts/lilypond-book.py: Prevent occuring error when
9267         'lilypond-book --output=foo/ somefile.ly' is executed multiple
9268         times and target file shoud be overwritten.  (Error message said
9269         'input file and output file is same'.)
9270
9271 2005-07-13  Graham Percival  <gperlist@shaw.ca>
9272
9273         * input/regression/slur-extreme.ly,
9274         input/regression/slur-scoring.ly, lily/slur-configuration.cc,
9275         lily/slur.cc, mf/feta-din-code.mf, mf/feta-timesig.mf,
9276         mf/parmesan-heads.mf, scm/define-grob-properties.scm: Change
9277         "excentricity" to "eccentricity".
9278
9279         * Documentation/user/converters.itely: fix URL for Noteedit and
9280         Rosegarden.
9281
9282         * THANKS: added Yoshinobu Ishizaki.
9283
9284 2005-07-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9285
9286         * scm/define-markup-commands.scm (justify-field): add. 
9287
9288         * scm/define-grobs.scm (all-grob-descriptions): decrease font size.
9289
9290 2005-07-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9291
9292         * lily/lookup.cc (filled_box): express filled_box with
9293         round_filled_box
9294
9295         * scm/midi.scm (paper-book-write-midis): new function. Write all
9296         performances in numbered MIDI files.
9297
9298         * lily/performance-scheme.cc (LY_DEFINE): new file.
9299         (LY_DEFINE): new function ly:performance-write.
9300
9301         * lily/lily-parser-scheme.cc (LY_DEFINE): ly:parser-output-name:
9302         new function.
9303         (LY_DEFINE): change name ly:parser-define -> ly:parser-define!
9304
9305         * scm/framework-*.scm: use port arguments throughout.
9306
9307         * lily/include/lily-guile.hh: rename ly_c_X_p -> ly_is_X
9308
9309         * lily/paper-outputter.cc (Paper_outputter): take port argument.
9310
9311         * lily/paper-outputter-scheme.cc (LY_DEFINE): take port argument.
9312
9313         * scm/framework-texstr.scm (output-framework): 
9314
9315         * input/regression/repeat-fold.ly (texidoc): remove TeX strings.
9316
9317         * scm/output-lib.scm (tablature-stem-attachment-function):
9318         tablature stem attachment fix. 
9319
9320 2005-07-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9321
9322         * lily/bezier.cc: hardcode binomial coefficients of order 3.
9323
9324         * lily/include/music-wrapper.hh: remove Music_wrapper as Music subtype.
9325
9326         * scm/define-music-types.scm (music-descriptions): don't use
9327         Music_wrapper type.
9328
9329         * lily/paper-column.cc (print): print moment too.
9330
9331         * scripts/mup2ly.py (cp_to_dir): remove 1.5.2 compat glue.  
9332         remove compatibility cruft.
9333
9334         * lily/parser.yy (score_body): \score can only begin with Music. 
9335
9336         * lily/score-scheme.cc (LY_DEFINE): rename scorify to
9337         make-score. Take music argument only. Move parser interaction to
9338         Scheme.
9339
9340         * scm/lily-library.scm (scorify-music): new function.
9341
9342         * python/lilylib.py (datadir): remove 2.1 compat kludge.
9343         (datadir): remove resource import.
9344         (print_environment): remove get_bbox()
9345         (cp_to_dir): remove pre 1.5.2 compat glue.
9346
9347 2005-07-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9348
9349         * lily/include/simple-spacer.hh (Module): idem.
9350
9351         * lily/include/spring.hh (struct Spring): store inverse
9352         strength. This prevents division by zero.
9353
9354         * VERSION: release 2.7.0
9355         
9356         * lily/include/music.hh (class Music): remove Music::duration_log()
9357
9358         * lily/stem-engraver.cc (make_stem): take duration log from event.
9359
9360         * lily/chord-tremolo-engraver.cc: don't ack note-head-interface.
9361
9362 2005-07-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9363
9364         * scm/lily.scm (ly:load): load autochange.scm
9365
9366         * Documentation/user/tutorial.itely (Running LilyPond for the
9367         first time): remove reference to DVI/TeX
9368
9369         * scm/define-markup-commands.scm (text): add \text markup command.
9370
9371         * configure.in (reloc_b): bump requirement to Python 2.2.
9372
9373         * lily/include/dots.hh (class Dots): make has_interface() static.
9374
9375         * python/convertrules.py (conv): add rule for ly:grob-default-font
9376
9377         * scm/define-grobs.scm (all-grob-descriptions): reorganize in
9378         alphabetical order.
9379
9380         * input/regression/trill-spanner-pitched.ly: new file.
9381
9382         * lily/font-interface-scheme.cc (LY_DEFINE): function
9383         ly:grob-default-font (changed from get-default-font).
9384
9385         * lily/axis-group-interface-scheme.cc (LY_DEFINE): new file.
9386
9387         * lily/note-head.cc (internal_print): if style is not a symbol,
9388         set style to 'default. 
9389         (internal_print): no style suffix if glyph-name-procedure not
9390         set. Default to quarter head.
9391
9392         * scm/define-grobs.scm (Module): new grob TrillPitchHead.
9393
9394         * scm/define-music-properties.scm (all-music-properties): add trill-pitch.
9395
9396         * ly/music-functions-init.ly: \pitchedTrill
9397
9398         * lily/pitched-trill-engraver.cc (acknowledge_grob): new file.
9399
9400         * ly/Welcome_to_LilyPond.ly: update to 2.6.0
9401
9402         * lily/trill-spanner-engraver.cc (finalize): rename req -> event
9403
9404         * scm/define-markup-commands.scm (pad-markup): pad-markup command.
9405
9406         * po/fr.po: update
9407
9408         * po/de.po: update.
9409
9410 2005-07-06  Graham Percival  <gperlist@shaw.ca>
9411
9412         * Documentation/user/changing-defaults.itely: add link
9413         to grob-iterface.
9414
9415         * Documentation/user/advanced-notation.itely: add material
9416         to Setting automatic beam behaviour.  Thanks, Joe!
9417
9418         * Documentation/user/lilypond.itely: change encoding to utf-8.
9419
9420 2005-07-01  Mats Bengtsson  <mabe@s3.kth.se>
9421
9422         * Documentation/user/advanced-notation.itely (Setting automatic
9423         beam behavior): Correct the documentation of
9424         revert-auto-beam-setting (backportme)
9425
9426 2005-07-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9427
9428         * lily/ly-module.cc (ly_make_anonymous_module): define
9429         %module-public-interface of module. 
9430
9431         * lily/lily-parser.cc (print_smob): allow printing of parser smob
9432         without lexer.
9433
9434 2005-07-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9435
9436         * input/regression/fret-diagrams.ly: stretch example.
9437
9438 2005-06-30  Jan Nieuwenhuizen  <janneke@gnu.org>
9439
9440         * cygwin/GNUmakefile ($(outdir)/%.sh): Bugfix: use TAB (Bertalan
9441         Fodor).
9442
9443 2005-06-30  Graham Percival  <gperlist@shaw.ca>
9444
9445         * Documentation/topdocs/AUTHORS.texi: update personal web address.
9446
9447         * Documentation/user/examples.itely, lilypond-book.itely:
9448         change \RequirePackage to \usepackage.
9449
9450         * Documentation/user/global.itely: document copyright and tagline.
9451
9452 2005-06-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9453
9454         * Documentation/user/basic-notation.itely (Transpose): remove link
9455         to nonexistent UntransposableMusic.
9456
9457         * scm/output-svg.scm: remove old definitions.
9458
9459         * scripts/lilypond-book.py (do_file): search for kpsewhich before
9460         invoking.
9461
9462         * python/lilylib.py (search_exe_path): new function.
9463
9464 2005-06-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9465
9466         * python/lilylib.py (mkdir_p): remove setup_environment()
9467         (backportme)
9468
9469         * buildscripts/mutopia-index.py (headertext): trim text.
9470
9471         * Documentation/topdocs/NEWS.tely (Top): refresh.
9472
9473         * scm/define-markup-commands.scm (wordwrap-string): new function:
9474         split string in paras and words.
9475         (wordwrap-markups): new function.
9476         (wordwrap-stencils): new function. 
9477         (justify): use it.
9478         (wordwrap): use it.
9479         (wordwrap-string): use it
9480         (justify-string): use it.
9481
9482         * scm/lily-library.scm (regexp-split): new function.
9483
9484         * scm/define-markup-commands.scm: remove encoded-simple. 
9485         remove font-markup.
9486         (fontsize): remove old version  of fontsize.
9487         (wordwrap): new markup function. Wrap into paragraphs.
9488
9489         * VERSION: Branch lilypond_2_6
9490         (MINOR_VERSION): go to 2.7.0
9491
9492 2005-06-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9493
9494         * po/zh_TW.po: update from translation project.
9495
9496 2005-06-28  Graham Percival  <gperlist@shaw.ca>
9497
9498         * scm/midi.scm: compile fix.
9499
9500 2005-06-28  Mats Bengtsson  <mabe@s3.kth.se>
9501
9502         * scripts/lilypond-book.py : Fix embarrassing bug in my previous
9503         patch. Now, the tempfile module is loaded too, not only used.
9504
9505 2005-06-28  Stephen Charles McCarthy  <stecmccarthy@hotpop.com>
9506
9507         * scm/midi.scm: changed midi volumes in absolute-volume-alist from
9508         0.05 - 1.00 to 0.25 - 1.00
9509
9510         * scm/midi.scm: moved the default-instrument-equalizer procedure
9511         to just under the insturment-equalizer-alist it takes as an
9512         argument.
9513
9514 2005-06-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9515
9516         * Documentation/user/advanced-notation.itely (Font selection):
9517         remove CMR note.
9518
9519         * scm/framework-ps.scm (write-preamble): ly:warning iso. ly:warn 
9520
9521 2005-06-28  Jan Nieuwenhuizen  <janneke@gnu.org>
9522
9523         * THANKS: Add UTF-8 marker.
9524
9525         * Documentation/user/point-and-click.itely (http): Update: use
9526         lilypond-invoke-editor.  Fix: instruct to use user.js.
9527
9528 2005-06-27  Graham Percival  <gperlist@shaw.ca>
9529
9530         * ly/titling-init.ly: implements printpagenumber, increases
9531         space between dedication and title (to avoid collisions with
9532         "g" and "q" in dedication), and nicer logic about copyright
9533         and instrument fields being printed on the first page.
9534         Thanks Vincent!
9535
9536         * Documentation/user/global.itely: document printpagenumber.
9537
9538 2005-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
9539
9540         * Documentation/topdocs/NEWS.tely: Update to 2.6.
9541
9542 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9543
9544         * THANKS: update to 2.6
9545
9546         * VERSION: 2.6.0 released.
9547
9548 2005-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
9549
9550         * cygwin/GNUmakefile (OUT_POSTREMOVES): Reinclude install script
9551         rule, errorneously removed probably because of misleading comment.
9552
9553 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9554
9555         * python/lilylib.py (datadir): py2exe comments.
9556
9557         * Documentation/topdocs/INSTALL.texi (Top): remove EC fonts requirement.
9558
9559         * configure.in (reloc_b): make fontconfig REQUIRED.
9560
9561 2005-06-27  Heikki Junes <hjunes@cc.hut.fi>
9562
9563         * po/fi.po: add latest translations.
9564
9565 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9566
9567         * ChangeLog: recode utf-8
9568
9569         * Documentation/pictures/lilypond.xpm (Module): edited photo as
9570         logo.
9571
9572         * Documentation/user/examples.itely (Module): 2.4.0 -> 2.6.0
9573
9574         * input/*.ly (Module): 2.4 -> 2.6 grand convert-ly s/r. 
9575
9576         * python/convertrules.py (do_conversion): don't print program_name
9577         from within a module
9578
9579         * configure.in (reloc_b): bump fontforge requirement to 20050624.
9580
9581         * python/convertrules.py (conv): add 2.6.0 dummy rule.
9582
9583 2005-06-23  Graham Percival  <gperlist@shaw.ca>
9584
9585         * Documentation/user/lilypond-book.itely,
9586         Documentation/user/examples.itely: add \RequirePackage{graphics}.
9587
9588         * ly/titling.ly: checks printfirstpagenumber, adds meter, and
9589         fixes baseline-skip.  Thanks Vincent!
9590
9591         * Documentation/user/advanced-notation.itely, global.itely:
9592         moved "Selecting font sizes" to global, since it deals with
9593         notation font size, not text fonts.
9594
9595 2005-06-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9596
9597         * buildscripts/gen-emmentaler-scripts.py (notice): add GPL notice
9598         to fonts.
9599
9600 2005-06-23  Mats Bengtsson  <mabe@s3.kth.se>
9601
9602         * scripts/lilypond-book.py (LATEX_DOCUMENT): More or less ugly
9603         workaround since /dev/stdin doesn't work on Cygwin. Using a
9604         temporary file in the current directory since latex doesn't
9605         understand the path name to the default TMP in Cygwin (at least on
9606         win XP).
9607         
9608         * Documentation/user/global.itely (Creating titles): Correct
9609         misprint in example. Thanks to Rob Vlasaty.
9610
9611 2005-06-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9612
9613         * VERSION (PATCH_LEVEL): release 2.5.32
9614
9615         * lily/lily-parser-scheme.cc (LY_DEFINE): don't set 'parser
9616         variable in lily module
9617
9618         * scm/framework-ps.scm (output-classic-framework): error message
9619         regarding the classic framework.
9620
9621         * Documentation/user/henle-flat-gray.png (Module): new file.
9622
9623         * Documentation/user/baer-flat-gray.png (Module): new file.
9624
9625         * scm/output-lib.scm (fret-number-tablature-format): vcenter and
9626         whiteout for markups.
9627
9628         * buildscripts/substitute-encoding.py (note_glyph): include _ in
9629         regex too. This fixes change clef appearance in PDF. 
9630
9631         * ttftool/include/*: remove.
9632
9633         * configure.in (reloc_b): remove TTFTOOL_ENDIAN
9634
9635         * config.make.in (WINDRES): remove TTFTOOL_ENDIAN.
9636
9637         * lily/GNUmakefile (MODULE_INCLUDES): remove ttftool
9638
9639         * ttftool/*: remove ttftool subdirectory.
9640
9641         * GNUmakefile.in (SUBDIRS): remove ttftool subdirectory.
9642
9643         * lily/ttf.cc (print_header): new file. Convert to type42, using
9644         FreeType to parse the TTF. 
9645
9646         * ttftool/parse.c (readPostTable): ugh. Kludge: nglyphs in maxp
9647         and post table may differ. Pass around post_nglyphs as well.
9648
9649 2005-06-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9650
9651         * ly/music-functions-init.ly (musicMap): new music function
9652         musicMap. 
9653         
9654 2005-06-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9655
9656         * make/mutopia-rules.make: anti-alias-factor = 2
9657
9658         * scm/ps-to-png.scm (make-ps-images): cleanup multipage vs. single
9659         page switch.
9660
9661         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): set
9662         anti-alias-factor for lilypond-book runs.
9663
9664         * scm/ps-to-png.scm (scale-down-image): new function.
9665         (my-system): new function.
9666         (make-ps-images): blow up GS resolution by anti-alias-factor,
9667         scale down image by anti-alias-factor.  This improves appearance
9668         of bitmaps
9669         (make-ps-images): remove showpage. Fixes spurious empty png at
9670         end.
9671
9672         * scm/framework-ps.scm (write-preamble): downcase filename before
9673         string-matching. Should fix .TTF files (as opposed to ttf files)  
9674
9675         * Documentation/user/tutorial.itely (Running LilyPond for the
9676         first time): separate subsections for windows, macos and unix.  
9677
9678         * Documentation/user/invoking.itely (Updating files with
9679         convert-ly): add MacOS X note.
9680
9681 2005-06-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9682
9683         * Documentation/user/introduction.itely (Engraving): don't include
9684         file optical-spacing, add directly.
9685
9686         * lily/paper-outputter.cc (file): open file in binary mode. This
9687         fixes OTF embedding on windows.
9688
9689 2005-06-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9690
9691         * scm/framework-ps.scm (write-preamble): remove debugging output.
9692
9693         * mf/aybabtu.pe.in (i): don't generate aybabtu.cff
9694
9695         * mf/GNUmakefile ($(outdir)/fonts.cache-1): create font cache for
9696         outdir.
9697         (install-fc-cache): install font cache in installation directories.
9698
9699 2005-06-17  Jan Nieuwenhuizen  <janneke@gnu.org>
9700
9701         * scm/editor.scm (editor-command-template-alist): Use char iso
9702         column, except for Emacs.
9703         (get-editor-command): Substitute char too (Bertalan Fodor).
9704
9705 2005-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
9706
9707         * scm/ps-to-png.scm (make-ps-images): Use ~S instead of single
9708         quoted ~s.  This should fix PNG output on Windows; single quotes
9709         are regular characters on Windows.
9710
9711 2005-06-16  Graham Percival  <gperlist@shaw.ca>
9712
9713         * Documentation/user/basic-notation.itely: include ChoirStaff
9714         in System start delimiters.
9715
9716         * Documentation/user/putting.itely: new doc section on
9717         fixing overlapping notation.
9718
9719 2005-06-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9720
9721         * Documentation/user/global.itely (Paper size): \paper is in
9722         \book, not \score.
9723
9724         * make/mutopia-rules.make: -ddelete-intermediate-files
9725
9726         * ly/engraver-init.ly: make Staff default child of ChoirStaff.
9727
9728 2005-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
9729
9730         * ChangeLog: Recode utf-8.
9731
9732         * python/GNUmakefile (INSTALLATION_OUT_DIR): Install .so module in
9733         datadir with .py modules.
9734
9735 2005-06-15  Heikki Junes  <hjunes@cc.hut.fi>
9736
9737         * Documentation/user/basic-notation.itely (Ties): add tieDashed.
9738
9739 2005-06-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9740
9741         * make/mutopia-rules.make: switch off ps, p&c for lilypond runs.
9742         
9743         * scm/framework-ps.scm (write-preamble): remove status check.
9744
9745         * Documentation/user/invoking.itely (Updating files with
9746         convert-ly): remove -o option.
9747
9748         * VERSION (PACKAGE_NAME): release 2.5.31
9749
9750         * scm/framework-ps.scm (write-preamble): use ly:system.
9751         (write-preamble): verbosity.
9752
9753         * scripts/convert-ly.py: cleanup. Use lilylib. Use convertrules.
9754
9755         * python/convertrules.py: new file. Store conversion rules
9756         separately.
9757
9758 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9759
9760         * scm/backend-library.scm (postprocess-output): remove debugging gobs.
9761
9762 2005-06-14  Mats Bengtsson  <mabe@s3.kth.se>
9763
9764         * Documentation/topdocs/NEWS.tely (Top): Corrected name of
9765         \musicDisplay 
9766
9767         * Documentation/user/instrument-notation.itely (More stanzas): Add
9768         reference to StanzaNumber.
9769
9770 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9771
9772         * THANKS: separate section for website translators.
9773
9774 2005-06-14  Graham Percival  <gperlist@shaw.ca>
9775
9776         * Documentation/topdocs/INSTALL.texi: update vim info;
9777         thanks Simon Bailey!
9778
9779         * Documentation/user/advanced-notation.itely: included
9780         color names.
9781
9782         * Documentation/user/advanced-notation.itely,
9783         Documentation/usr/notation-appendices.itely: moved
9784         color names into an appendix.
9785
9786 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9787         
9788         * lily/program-option.cc (LY_DEFINE): new function ly_add_option.
9789
9790         * scm/lily.scm (lambda): initialize program options from here.
9791
9792         * scm/framework-*.scm: add header info.
9793
9794         * lily/main.cc (parse_argv): only set output format to pdf if no
9795         other format specified.
9796
9797         * scm/backend-library.scm (postprocess-output): process
9798         'delete-intermediate-files after running convert-to-*. This fixes
9799         PNG generation when 'delete-intermediate-files is set.
9800         
9801 2005-06-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9802
9803         * buildscripts/mutopia-index.py (list_item): thinko. Fixes png
9804         links on website. 
9805
9806 2005-06-13  Graham Percival  <gperlist@shaw.ca>
9807
9808         * Documentation/topdocs/INSTALL.texi,
9809         Documentation/user/lilypond-book.itely: typos.
9810
9811 2005-06-12  Pal Benko  <benkop@freestart.hu>
9812
9813         * elisp/lilypond-mode.el (LilyPond-command-alist: 2PS): space
9814         added between program name and switch; -b changed to -f not
9815         to generate pdf
9816
9817 2005-06-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9818
9819         * elisp/lilypond-mode.el (LilyPond-command-alist): remove 2midi
9820         (LilyPond-command-alist): use -f ps (thanks to Pal Benko)
9821
9822         * input/sakura-sakura.ly: add \midi.
9823
9824         * buildscripts/mutopia-index.py (find): use /usr/bin/find
9825         iso. python find. 
9826
9827         * ttftool/test.c (main): cosmetics.
9828
9829         * ttftool/util.c (surely_lseek): use stdio FILE's for I/O 
9830
9831         * ttftool/test.c: new file. If compiled with -DTEST_TTFTOOL,
9832         create a ttf2ps binary.
9833
9834         * scm/ps-to-png.scm (make-ps-images): fix rename-page-1 functionality.
9835
9836         * scm/backend-library.scm (postscript->png): set rename-page-1 to
9837         true.
9838
9839 2005-06-11  Graham Percival <gperlist@shaw.ca>
9840
9841         * Documentation/user/lilypond-book.itely: add warning about
9842         the font warnings in dvips.
9843
9844 2005-06-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9845
9846         * THANKS: typo
9847
9848         * mf/GNUmakefile ($(outdir)/$(redhat-package)): Fedora-4 url.
9849
9850         * GNUmakefile.in: remove links for .map, .enc
9851         don't fail if out/ doesn't exist yet.
9852
9853 2005-06-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9854
9855         * ttftool/util.c (surely_read): return nbytes
9856
9857         * stepmake/bin/text2html.py (txt2html): add utf-8 marker. 
9858
9859         * VERSION (PACKAGE_NAME): release 2.5.30
9860
9861         * flower/string-convert.cc (precision_string): >? fix.
9862
9863         * scm/ps-to-png.scm (make-ps-images): search-gs for multipage too.
9864         (make-ps-images): add verbose -q too.
9865
9866         * lily/default-actions.cc (Module): new file. default
9867         {book,score}-print functions.
9868
9869         * scm/ly-from-scheme.scm (ly:parse-string-result): use new setup:
9870         pass results via parseStringResult, lookup via ly:parser-lookup.  
9871
9872         * lily/lily-parser.cc (Lily_parser): only clone lexer in
9873         constructors.
9874         (parse_file): encapsulate do_yyparse() in scm_set_current_module()
9875         (parse_string): idem.
9876
9877         * ly/spanners-init.ly (assertBeamQuant): don't use #{ #} in init.
9878
9879         * lily/main.cc (main_with_guile): copy be_verbose_global into
9880         ly_set_option()
9881
9882 2005-06-10  Jan Nieuwenhuizen  <janneke@gnu.org>
9883
9884         * scm/backend-library.scm (postscript->pdf):
9885         * scm/ps-to-png.scm (make-ps-images): Do not use gs -q switch in
9886         verbose mode.  Search for several names of gs executable.
9887
9888 2005-06-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9889
9890         * lily/ly-module.cc (ly_make_anonymous_module): call make-module
9891         directly. This fixes a massive memory leak, provided you use CVS
9892         GUILE.
9893
9894 2005-06-10  Erik Sandberg  <ersa9195@student.uu.se>
9895
9896         * ly/property-init.ly: Added tieDashed.
9897
9898         * THANKS: Added some bughunters for 2.5.
9899
9900 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9901
9902         * lily/program-option.cc: add debug-gc option.
9903
9904         * lily/include/lily-guile-macros.hh: don't protect exported module
9905         objects.
9906
9907         * lily/include/lily-parser.hh (class Lily_parser): remove beam_check().
9908
9909         * scm/backend-library.scm (postscript->pdf): use
9910         delete-intermediate-files iso. running-from-gui? 
9911
9912         * ttftool/util.c (surely_read): robustness. Allow read() to return
9913         less bytes than requested, as per posix standards.
9914
9915         * lily/pfb.cc (LY_DEFINE): set ttf_verbosity from ttf-verbosity
9916         program option.
9917
9918         * ttftool/include/ttftool.h ("C"): rename verbosity to
9919         ttf_verbosity. Add to public interface.
9920
9921         * scm/music-functions.scm (unfold-repeats): remove debugging display.
9922
9923         * lily/program-option.cc: rename from scm-option.cc
9924
9925         * lily/scm-option.cc (LY_DEFINE): handle no-foobar option setting.
9926         (get_help_string): Print pretty help string.
9927
9928         * scripts/lilypond-book.py (PREAMBLE_LY): add no-point-and-click
9929         to snippet preamble.
9930
9931         * lily/scm-option.cc: remove command-line-settings option. Fold
9932         all command-line options plus default settings in a generic
9933         interface. 
9934
9935         * flower/getopt-long.cc (table_string): indent 2nd lines of help
9936         texts too.
9937
9938 2005-06-09  Jan Nieuwenhuizen  <janneke@gnu.org>
9939
9940         * flower/file-name.cc: Bugfix: only append DIRSEP if BASE_
9941         or EXT_ components non-empty.
9942
9943 2005-06-08  Jan Nieuwenhuizen  <janneke@gnu.org>
9944
9945         * scm/lily.scm (running-from-gui?): Export.
9946
9947         * lily/lily-parser-scheme.cc (ly:parse-file): Use it to generate
9948         output in .ly source directory.
9949
9950 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9951
9952         * ttftool/util.c (surely_lseek): more verbosity.
9953
9954         * lily/include/lily-proto.hh: add Context_def. This fixes FC4
9955         compile.
9956
9957         * lily/parser.yy (Repeated_music): remove >? 
9958
9959         * scm/backend-library.scm (postscript->pdf): Support for
9960         -dgs-font-load=1
9961
9962         * scm/framework-ps.scm (write-preamble): make font loading
9963         switchable to GS via --define-default gs-font-load=1
9964
9965 2005-06-09  Graham Percival  <gperlist@shaw.ca>
9966
9967         * Documentation/user/global.itely: added \layout docs.
9968
9969 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9970
9971         * lily/lily-parser-scheme.cc: add unistd.h
9972
9973 2005-06-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9974
9975         * scm/editor.scm: add char argument.
9976
9977         * scripts/lilypond-invoke-editor.scm (dissect-uri): add char. 
9978
9979         * ttftool/util.c (syserror): use errno for better error reporting.
9980
9981         * lily/source-file.cc (get_counts): new function. Calc column,
9982         line and char count in one go.
9983
9984         * lily/binary-source-file.cc (quote_input): rename to quote_input
9985
9986         * lily/input.cc (set): new function.
9987
9988 2005-06-08  Jan Nieuwenhuizen  <janneke@gnu.org>
9989
9990         * flower/file-path.cc (find): Bugfix.  Append rather than prepend
9991         directory part of file name to search directory.
9992
9993         * lily/lily-parser-scheme.cc (ly:parse-file): Prepend cwd to
9994         search path and chdir to DIR if --outname=DIR used.
9995
9996         * lily/main.cc (prepend_env_path): Bugfix: Check directory
9997         existence before appending original path.
9998
9999 2005-06-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10000
10001         * ttftool/parse.c (readNamingTable): verbosity for "bad TTF
10002         file" massage.
10003
10004         * Documentation/user/GNUmakefile (TEXINPUTS): set TEXINPUTS so our
10005         texinfo.tex is always used.
10006         
10007 2005-06-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10008
10009         * flower/include/axis.hh: rename from axes.hh
10010
10011         * lily/include/text-interface.hh (Module): rename from text-item.hh
10012
10013         * VERSION (PATCH_LEVEL): release 2.5.29
10014
10015         * ttftool/parse.c (readNamingTable): handle Apple/8bit encoding too.
10016
10017         * scm/framework-ps.scm (font-file-as-ps-string): new function.
10018         (handle-macfont): new function. Call fondu for Native mac fonts.
10019
10020         * scm/define-markup-commands.scm (fill-line): handle text-widths =
10021         '() case.
10022
10023 2005-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
10024
10025         * scm/ps-to-png.scm (make-ps-images): Bugfix: `Pages: 1\n' is not
10026         multi-page.  Fix .eps regular expression.
10027
10028 2005-06-07  Graham Percival  <gperlist@shaw.ca>
10029
10030         * Documentation/user/putting.itely: add info on modifying templates.
10031
10032         * Documentation/user/lilypond.itely, converters.itely, invoking.itely:
10033         misc small changes.
10034
10035 2005-06-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10036
10037         * scm/ps-to-png.scm (make-ps-images): no paper size for multi-page.
10038
10039         * scripts/lilypond-ps2png.scm
10040
10041         * VERSION (PACKAGE_NAME): release 2.5.28
10042
10043 2005-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
10044
10045         * lily/main.cc (prepend_env_path): Do not append /, that does not
10046         work.  Localedir lives in datadir, not in prefix.
10047
10048         * scm/framework-ps.scm (write-preamble): Remove load-font-via-GS
10049         hack for windows.
10050
10051         * flower/include/file-cookie.hh: Compile fix.
10052
10053 2005-06-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10054
10055         * ly/engraver-init.ly: add \defaultchild to InnerStaffGroup. 
10056
10057         * scm/ps-to-png.scm (gulp-port): rename from read. Don't redefine
10058         system primitives.
10059         (gulp-port): using read-string!/partial. We don't want to read an
10060         entire PS file  (GUILE 1.6 limits strings to 16M) 
10061
10062         * scm/define-grobs.scm (all-grob-descriptions): remove arch-*
10063         properties. Add font-interface. 
10064
10065         * scm/define-grob-properties.scm (all-user-grob-properties):
10066         remove old bracket properties.
10067
10068         * scm/x11-color.scm: reformat. 
10069
10070         * lily/ledger-line-engraver.cc (acknowledge_grob): create new
10071         LedgerLineSpanner if new StaffSymbol is found. 
10072
10073         * lily/staff-symbol-engraver.cc (acknowledge_grob): also set
10074         staff-symbol for finishing staff. 
10075
10076         * lily/GNUmakefile (OUT_DIST_FILES): don't dist Flex output
10077
10078         * scm/output-svg.scm (setcolor): implement (re)setcolor with <g>
10079         change black to currentColor everywhere. This fixes color support
10080         in SVG.
10081
10082 2005-06-06  Carl Sorensen  <carldsorensen@comcast.net>
10083
10084         * input/regression/fret-diagrams.ly: new file to test fret diagram
10085         capability
10086
10087         * scm/output-tex.scm: remove white-dot and white-text
10088
10089         * scm/output-ps.scm: remove white-dot and white-text
10090
10091         * scm/fret-diagrams.scm (sans-serif-stencil-white): removed -- 
10092         using ly:stencil-in-color instead
10093         (draw-dots) : remove call to white-dot
10094
10095 2005-06-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10096
10097         * flower/memory-stream.cc (Memory_out_stream): remove fopencookie
10098         support.
10099
10100         * ttftool/ttfps.c: use lily_cookie functions everywhere. 
10101
10102         * flower/include/file-cookie.hh: new file. lily_cookie extension 
10103
10104         * flower/file-cookie.cc: new file. lily_cookie extension.
10105         
10106 2005-06-06  Jan Nieuwenhuizen  <janneke@gnu.org>
10107
10108         * scm/editor.scm (editor-command-template-alist): Add syn
10109         editor (Jaap [de Vos]).
10110
10111 2005-06-05  Jan Nieuwenhuizen  <janneke@gnu.org>
10112
10113         * scripts/lilypond-ps2png.scm:
10114         * scm/ps-to-png.scm: New file.
10115
10116         * scm/backend-library.scm (postscript->png): Use it.
10117
10118         * scripts/lilypond-ps-to-png.py: Remove file.
10119
10120         * python/lilylib.py (get_bbox, make_ps_images): Remove.
10121
10122 2005-06-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10123
10124         * lily/auto-beam-engraver.cc (acknowledge_grob): remove dead code.
10125
10126         * scm/auto-beam.scm (default-auto-beam-check): only forbid beam
10127         start on grace moment. Fixes autobeam-grace.ly.
10128
10129         * lily/auto-beam-engraver.cc (process_acknowledged_grobs): don't
10130         process anything unless we're at the end of a pending beam. Fixes
10131         syncopated 8ths beamed across a beat.
10132
10133 2005-06-03  Jan Nieuwenhuizen  <janneke@gnu.org>
10134
10135         * scm/editor.scm (editor-command-template-alist): Start emacs if
10136         emacslient fails.
10137
10138         * lily/main.cc (setup_localisation): Listen to LILYPOND_LOCALEDIR.
10139
10140         * flower/file-path.cc (is_file, is_dir): Export.
10141
10142         * lily/main.cc (prepend_env_path, set_env_file): Use them.
10143
10144 2005-06-02  Mats Bengtsson  <mabe@s3.kth.se>
10145
10146         * lily/easy-notation.cc: Added include cctype to correct
10147         compilation error.
10148
10149 2005-06-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10150
10151         * scm/backend-library.scm (postscript->pdf): set resolution to
10152         1200, so bitmap fonts aren't that ugly. 
10153
10154         * Documentation/topdocs/NEWS.tely (Top): add entry about font family.
10155
10156         * lily/dynamic-engraver.cc (acknowledge_grob): only center on
10157         parent if we have a notehead. Fixes incorrect offsets when
10158         Paper_column is very wide in the X direction.
10159
10160         * input/regression/font-family-override.ly (Module): new file.
10161
10162         * scm/font.scm (make-pango-font-tree): new function.
10163
10164         * lily/beam.cc (before_line_breaking): remove warning about less
10165         than 2 visible stems. We still get a warning when there is only
10166         one stem.
10167
10168 2005-06-01  Werner Lemberg  <wl@gnu.org>
10169
10170         * buildscripts/substitute-encoding.py: Handle PFAemmentaler-xx.pfa
10171         correctly.
10172
10173 2005-06-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10174
10175         * lily/slur-scoring.cc (generate_avoid_offsets): new
10176         function. Generate avoid offsets once per slur.
10177
10178         * lily/slur.cc (add_extra_encompass): add dependency to
10179         extra-encompass object. This fixes bugs/c-phrasing-slur.ly
10180
10181         * lily/stencil.cc (is_empty): check dim_ field for is_empty()
10182         too. Fixes inf error with added bass notes.
10183
10184         * scripts/lilypond-book.py (do_options): --psfonts doesn't take
10185         argument anymore.
10186
10187         * make/ly-vars.make (DVIPS_FLAGS): use .psfonts as extension.
10188
10189         * input/tutorial/lbook-latex-test.tex: add line length test.
10190
10191         * scripts/lilypond-book.py (set_default_options): new
10192         function. Call this before dissecting snippets, so linewidth
10193         settings reach the snippets.
10194
10195 2005-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
10196
10197         * scm/lily.scm (PLATFORM, slashify): Remove double slashes.
10198
10199 2005-06-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10200
10201         * input/mutopia/R.Schumann/romanze-op28-2.ly (leftb): bugfix.
10202
10203 2005-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
10204
10205         * stepmake/aclocal.m4: More autopackage friendliness.
10206
10207 2005-05-31  Graham Percival  <gperlist@shaw.ca>
10208
10209         * Documentation/index.html.in: remove link to LSR.
10210
10211         * Documentation/user/global.itely: remove duplicate
10212         "dedication" \header{} section.
10213
10214 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10215
10216         * VERSION (PACKAGE_NAME): release 2.5.27.
10217
10218         * lily/lily-parser-scheme.cc (LY_DEFINE): unprotect paper
10219         too. Plugs memory leak.
10220
10221         * make/lilypond.fedora.spec.in (Group): remove
10222         lilypond-pdfpc-helper.
10223
10224         * scripts/GNUmakefile (SEXECUTABLES): remove
10225         lilypond-pdfpc-helper. Use lilypond-invoke-editor instead.
10226
10227         * scm/font.scm (make-century-schoolbook-tree): add Mono as
10228         'typewriter family.
10229
10230         * lily/score.cc (Score): unprotect copy of Output_def. Plugs
10231         memory leak.
10232
10233         * lily/parser.yy (score_body): don't clone Score, that's done in
10234         Lily_lexer::try_special_identifiers(). This fixes a memory leak.
10235
10236         * lily/score-engraver.cc (derived_mark): new function.
10237         (initialize): unprotect Paper_score. This fixes a memory leak.
10238
10239         * lily/score-performer.cc (derived_mark): new function.
10240
10241         * lily/score-translator.cc (get_output): use SCM for get_output() call.
10242
10243         * stepmake/aclocal.m4: put FlexLexer.h test in conftest.cc. Fixes
10244         spurious warning.
10245
10246         * scm/font.scm (make-century-schoolbook-tree): use Sans for sans
10247         serif.
10248
10249 2005-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
10250
10251         * configure.in (reloc_b): Add --enable-relocation.
10252
10253 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10254
10255         * lily/pfb.cc (LY_DEFINE): show file name when loading PFB. 
10256
10257         * input/regression/alignment-order.ly: add Staff example.
10258
10259 2005-05-31  John Mandereau   <john.mandereau@free.fr>
10260
10261         * po/fr.po: update.
10262
10263 2005-05-31  Graham Percival  <gperlist@shaw.ca>
10264
10265         * Documentation/index.html.in: add link to LSR.
10266
10267 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10268
10269         * scm/define-stencil-commands.scm (Module): new file. Register all
10270         allowed stencil expression heads in a central place.
10271
10272         * lily/stencil-scheme.cc (LY_DEFINE): check is_stencil_head in
10273         ly:make-stencil
10274
10275         * lily/stencil-expression.cc (all_stencil_heads): registering
10276         stencil expressions.
10277
10278         * lily/stencil-interpret.cc: new file. Stencil expression
10279         interpreting.
10280
10281         * input/xiao-haizi-guai-guai.ly: move file back.
10282
10283 2005-05-30  Graham Percival  <gperlist@shaw.ca>
10284
10285         * Documentation/user/advanced.itely, converters.itely,
10286         instrument-notation.itely, lilypond-book.itely: misc small
10287         changes.
10288
10289 2005-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
10290
10291         * lily/lexer.ll: Skip UTF-8 BOM at BOF.
10292
10293         * make/lilypond.fedora.spec.in: Fix source url.
10294
10295         * cygwin: Update from mingw patches.
10296
10297         * scm/editor.scm (editor-command-template-alist): Use jedit
10298         -reuseview (Bertalan), add uedit (Patrick Huberts).
10299
10300         * input/xiao-hai-zi-guai-guai.ly: Rename from
10301         xiao-haizi-guai-guai.ly.
10302
10303         * input/*: Reindent, do not use TAB.
10304
10305         * Documentation/pictures/ly.xpm: Bugfix: do not anti-alias against
10306         white background.
10307
10308 2005-05-29  Jan Nieuwenhuizen  <janneke@gnu.org>
10309
10310         * scm/framework-ps.scm (dump-stencil-as-EPS): Add silly fix for
10311         numerical overflow error.
10312
10313 2005-05-29 Laura Conrad <lconrad@laymusic.org>
10314         
10315         * abc2ly.py: fix to syntax error in multi-part output.
10316
10317 2005-05-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10318
10319         * lily/span-bar.cc (print): sort bar line extents. Fixes problem
10320         with disappearing span bars when alignAboveContext is active
10321
10322         * lily/property-iterator.cc (check_grob): use is-grob?
10323         object-property. Fixes crash-key-sig-font-size.ly. 
10324
10325 2005-05-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10326
10327         * lily/bar-line.cc (print): don't round barlines; this produces
10328         odd aliasing effects in Acroread.
10329
10330         * lily/timing-engraver.cc (process_music): robustness fix.
10331
10332         * lily/context-def.cc (filter_engravers): bugfix.
10333
10334 2005-05-28  Jan Nieuwenhuizen  <janneke@gnu.org>
10335
10336         * lily/lilypond.rc.in: Add ly-icon.
10337
10338         * lily/GNUmakefile: 
10339         * Documentation/pictures/GNUmakefile (OUT_DIST_FILES): Add ly-icon
10340         rules.
10341
10342 2005-05-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10343
10344         * lily/stencil-scheme.cc (LY_DEFINE): ly:stencil-in-color
10345
10346         * ps/music-drawing-routines.ps: 
10347
10348         * scm/output-ps.scm: remove draw ez_ball.
10349
10350         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
10351         EasyNotation context definition.
10352
10353         * lily/easy-notation.cc (brew_ez_stencil): new file. Use
10354         Text_interface and color for making easy note heads.
10355
10356         * lily/stencil.cc (with_color): new function.
10357
10358         * ps/music-drawing-routines.ps: remove draw_zigzag_line
10359
10360         * lily/line-spanner.cc (zigzag_stencil): rewrite to use draw-line
10361         output routine. Zigzag now works in SVG too.
10362
10363         * scm/output-tex.scm (filledbox): idem.
10364
10365         * scm/output-svg.scm (filledbox): idem.
10366
10367         * scm/output-ps.scm (lily-def): remove horizontal-line. 
10368
10369         * lily/lookup.cc (horizontal_line): use draw-line. 
10370
10371         * lily/system-start-delimiter.cc: remove old staff bracket code.
10372
10373         * mf/feta-haak.mf: further tweaks.
10374
10375         * lily/system-start-delimiter.cc (staff_bracket): use glyphs.
10376
10377         * mf/feta-generic.mf: include feta-haak.
10378
10379         * mf/feta-haak.mf: rewrite. Make separate glyphs for the tips 
10380
10381         * scm/framework-ps.scm (write-preamble): only load fonts if their
10382         filename is a string. 
10383
10384 2005-05-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10385
10386         * scm/output-svg.scm (circle): support circle.
10387         (bracket): stub for bracket.
10388
10389         * scripts/lilypond-book.py (main): make sure --psfonts warning is
10390         correct.
10391
10392 2005-05-26  Graham Percival  <gperlist@shaw.ca>
10393
10394         * Documentation/user/lilypond.tely, advanced-notation.itely,
10395         basic-notation.itely, instrument-notation.itely, global.itely,
10396         introduction.itely, tutorial.itely: rearranging, editing,
10397         clean-up.
10398
10399         * mf/GNUmakefile: change a "make -C" to "${MAKE} -C", required
10400         for compiling on FreeBSD.
10401
10402 2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10403
10404         * lily/pfb.cc (LY_DEFINE): progress indication for opening ttf and
10405         otf files.
10406
10407         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly (lower):
10408         bugfixes.
10409
10410         * VERSION: 2.5.26 released.
10411
10412         * scm/titling.scm (marked-up-headfoot): revert Pedro's patch. 
10413
10414 2005-05-25  Pedro Kroger  <kroeger@pedrokroeger.net>
10415
10416         * scm/titling.scm (marked-up-headfoot): doesn't print pagenumbers
10417         if printpagenumber is false.
10418
10419 2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10420
10421         * lily/font-config.cc (init_fontconfig): comment out FontConfig
10422         cache warning.
10423
10424         * lily/tie.cc (print): support dotted ties.
10425         
10426 2005-05-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10427
10428         * scm/define-grobs.scm (all-grob-descriptions): switch off
10429         debugging
10430         (all-grob-descriptions): Arpeggio has Y-extent.
10431
10432         * scm/define-music-properties.scm (all-music-properties): document
10433         length-callback and start-callback as "read-only".
10434
10435         * scm/music-functions.scm (unfold-repeats): rewrite. Cannot set
10436         length-callback after creation. 
10437
10438         * scripts/convert-ly.py (conv): unfoldrepeats -> unfoldRepeats,
10439         compressmusic -> compressMusic.
10440
10441         * ly/music-functions-init.ly (oldaddlyrics): idem.
10442
10443         * lily/parser.yy: NewLyricCombineMusic ->
10444         LyricCombineMusic. LyricCombineMusic -> OldLyricCombineMusic.
10445
10446 2005-05-24  Pedro Kroger  <kroeger@pedrokroeger.net>
10447
10448         * ly/Welcome_to_LilyPond.ly: typo.
10449
10450 2005-05-24  Graham Percival  <gperlist@shaw.ca>
10451
10452         * Documentation/user/lilypond.tely: move changing-defaults to be
10453         before global issues.
10454
10455         * Documentation/user/basic-notation.itely: move Transpose section
10456         here from advanced/Other.
10457
10458         * Documentation/user/changing-defaults.itely,
10459         advanced-notation.itely: move Fonts to advanced, edit.
10460
10461 2005-05-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10462
10463         * lily/parser.yy (bare_int): remove rule.  From now on, we require
10464         # before negative integers.
10465
10466 2005-05-23  Graham Percival  <gperlist@shaw.ca>
10467
10468         * ly/property.ly: Update tieDotted to have the same form as slurDotted.
10469
10470         * Documentation/user/lilypond.tely: change Unified index to
10471         LilyPond index.
10472
10473         * Documentation/user/advanced-notation.itely,
10474         instrument-notation.itely: editing.
10475
10476 2005-05-23  Jan Nieuwenhuizen  <janneke@gnu.org>
10477
10478         * scm/lily.scm (lilypond-all): Bugfix: return failed.
10479
10480         * lily/main.cc (setup_paths)[__MINGW32__]: Normalize LILYPONDPREFIX.
10481
10482 2005-05-21  Jan Nieuwenhuizen  <janneke@gnu.org>
10483
10484         * lily/general-scheme.cc (ly:stderr-redirect): Rename from
10485         ly:port-move.  Needs to be stderr-specific on mingw.
10486         Run fixcc.
10487
10488 2005-05-20  Jan Nieuwenhuizen  <janneke@gnu.org>
10489
10490         * lily/general-scheme.cc (ly:port-move): Remove.
10491
10492         * scm/backend-library.scm (postscript->pdf): Remove -dSAFER in
10493         windows.
10494
10495         * lily/main.cc (setup_paths) [ARGV0_RELOCATION]: Reinstate GS_*
10496         variables.  This eliminates the need for a gs.bat wrapper, which
10497         opens a console.
10498
10499         * scripts/lilypond-invoke-editor.scm (running-from-gui?): 
10500         * scm/lily.scm (running-from-gui?): 
10501         * lily/main.cc[MINGW]: Remove isatty inversion, this is an
10502         artifact of not compiling with -mwindows.
10503
10504         * scm/editor.scm: Define PLATFORM.
10505
10506 2005-05-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10507
10508         * scripts/lilypond-book.py (PREAMBLE_LY): add marker, where people
10509         can start to cut & paste lilypond-book fragments.  
10510
10511         * scm/define-music-types.scm (music-descriptions): remove
10512         UntransposableMusic
10513
10514 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10515
10516         * scm/output-ps.scm (glyph-string): remove / before CIDs.
10517
10518 2005-05-20  Graham Percival  <gperlist@shaw.ca>
10519
10520         * Documentation/user/instrument-notation.itely: remove *Engraver.
10521
10522         * Documentation/user/advanced-notation.itely: edit, rearrange.
10523
10524 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10525
10526         * scm/output-ps.scm (glyph-string): take cid? argument. Use
10527         findresource iso. findfont for CID CFF fonts.
10528
10529         * VERSION (PACKAGE_NAME): release 2.5.25
10530
10531         * ly/Welcome_to_LilyPond.ly: add  \version
10532
10533 2005-05-20  Graham Percival  <gperlist@shaw.ca>
10534
10535         * Documentation/user/programming-interface.itely: move
10536         \displayMusic into its own section.
10537
10538         * Documentation/user/basic-notation.itely: finish editing.
10539
10540 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10541
10542         * flower/file-path.cc (find): don't throw away file_name.dir, but
10543         append to it. Fixes \include with directories.
10544
10545         * flower/include/file-path.hh (class File_path): don't derive from
10546         Array<String>.
10547
10548         * flower/include/file-name.hh (class File_name): remove to_str0()
10549
10550         * lily/hara-kiri-engraver.cc (acknowledge_grob): split
10551         Hara_kiri_engraver in separate file.
10552
10553         * lily/slur-configuration.cc (score_encompass): oops, <? to min()
10554         translation went wrong. Fixes vertically translated slurs.
10555
10556 2005-05-19  Graham Percival  <gperlist@shaw.ca>
10557
10558         * Documentation/user/basic-notaton.itely: editing.
10559
10560 2005-05-18  Graham Percival  <gperlist@shaw.ca>
10561
10562         * Documentation/user/macros.itexi, basic-notation.itely:
10563         add @commonprop (commonly used properties) macro.
10564
10565 2005-05-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10566
10567         * ly/Welcome_to_LilyPond.ly: talk about icon, not program.
10568
10569         * scripts/lilypond-book.py (invokes_lilypond): new function
10570         (main): only run fontextract if invokes_lilypond() is true.
10571
10572         * lily/function-documentation.cc (ly_add_function_documentation):
10573         duh, use !=
10574
10575         * Documentation/topdocs/INSTALL.texi (Top): add MacOS command.
10576
10577         * stepmake/aclocal.m4: remove kpathsea warning, change to OPTIONAL.
10578
10579         * scm/lily.scm (running-from-gui?): lowercase Darwin.
10580
10581         * lily/function-documentation.cc (ly_add_function_documentation):
10582         use scm_hash_table_p() for checking.
10583
10584 2005-05-18  Jan Nieuwenhuizen  <janneke@gnu.org>
10585
10586         * Documentation/user/advanced-notation.itely (Text scripts):
10587         Change nonexisting @internalsref{Text markup} to @ref{Text
10588         markup}.  Change @internalsref{Text script} to
10589         @internalsref{TextScript}.
10590
10591         * lily/main.cc (setup_paths): Bugfix: pangorc is not pango.modules.
10592
10593 2005-05-17  Graham Percival  <gperlist@shaw.ca>
10594
10595         * Documentation/user/tutorial.itely, basic-notation.itely,
10596         changing-defaults.itely: remove duplicate cindex entries
10597         that appear on the same page.
10598
10599         * scm/define-grobs.scm: change default padding for TextSpanner.
10600
10601         * Documentation/topdocs/AUTHORS.texi: update email address.
10602
10603         * Documentation/user/global.itely: add info about \include.
10604
10605 2005-05-17  Jan Nieuwenhuizen  <janneke@gnu.org>
10606
10607         * scm/backend-library.scm (postscript->pdf): Remove (useless) .ps
10608         when running-from-gui.
10609
10610         * scm/editor.scm (get-editor): Add platform defaults.
10611
10612         * scm/backend-library.scm (postscript->pdf): Typo.
10613
10614 2005-05-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10615
10616         * scm/lily.scm (running-from-gui?): Darwin never runs from GUI.
10617
10618         * lily/font-config.cc (init_fontconfig): add warning about cache.
10619
10620 2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
10621
10622         * lily/main.cc (setup_paths)[ARGV0_RELOCATION]: Remove GS_*.
10623
10624 2005-05-16  Mats Bengtsson  <mabe@s3.kth.se>
10625
10626         * lily/horizontal-bracket.cc (print): Take care of the direction
10627         property so brackets above the stave point downwards. 
10628
10629         * scm/define-grobs.scm (all-grob-descriptions): Set staff-padding
10630         for HorizontalBracket so it doesn't end up within the stave.
10631
10632 2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
10633
10634         * lily/GNUmakefile (default): Typo.
10635
10636         * scm/lily.scm (PLATFORM): Export.
10637
10638         * scm/framework-ps.scm (write-preamble)[MINGW]: Use
10639         load-font-via-GS, ttftool or fopencookie is broken on windows.
10640         
10641         * scm/backend-library.scm (postscript->pdf)[MINGW]: Do not use
10642         -dSAFER, that is broken on windows.
10643
10644 2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10645
10646         * lily/GNUmakefile ($(outdir)/FlexLexer.h): conditional dependency
10647         for FlexLexer.h
10648
10649         * scripts/lilypond-invoke-editor.scm: remove stray -
10650
10651 2005-05-15  Jan Nieuwenhuizen  <janneke@gnu.org>
10652
10653         * lily/lily-guile.cc (ly_scm2newstr): Use scm_i_string_length.
10654         Fixes deprecation warning.
10655
10656         * flower/include/string.icc (to_string): Only inline if
10657         -DSTRING_UTILS_INLINED.
10658
10659         * lily/pango-font.cc (pango_item_string_stencil): Normalize file
10660         name.  Remove windows comment.
10661
10662         * scm/editor.scm (slashify): New function.
10663         (get-editor-command): Use it.
10664         (get-command-template): Do not alter editor command if
10665         environment value includes `%(file)s' magic.
10666
10667         * scripts/lilypond-invoke-editor.scm (unquote-uri): New function.
10668         (dissect-uri): Use it.
10669         (unquote-uri): Bugfix.
10670
10671 2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10672
10673         * scm/framework-ps.scm (write-preamble): add TTF rule.
10674
10675         * Documentation/topdocs/README.texi (Top): remove note about
10676         xdelta.
10677
10678         * Documentation/topdocs/INSTALL.texi (Top): remove Flex
10679         requirement.
10680
10681         * stepmake/aclocal.m4: STEPMAKE_FLEXLEXER_LOCATION: new
10682         function. Figure out where FlexLexer.h lives
10683
10684         * lily/GNUmakefile (OUT_DIST_FILES): dist lexer.cc and FlexLexer.h
10685         
10686 2005-05-14  Jan Nieuwenhuizen  <janneke@gnu.org>
10687
10688         * scripts/lilypond-invoke-editor.scm (dissect-uri): Handle URIs
10689         with Windows root in file name.
10690
10691         * scm/backend-library.scm (ly:system): Only redirect output (using
10692         system and shell, ugh) if /dev/null is writable.
10693
10694         * Documentation/pictures/GNUmakefile [PLATFORM_WINDOWS]: Build
10695         windows icon.
10696
10697         * scm/lily.scm (is-absolute?): New function.  Fixes absolute files
10698         on Mingw.
10699
10700         * scm/output-ps.scm (grob-cause): Use it.  Fixes PDF point and
10701         click.
10702
10703         * flower/file-path.cc (is_dir, is_file): New function.  Actually
10704         use result of stat when available.
10705
10706         * flower/file-path.cc (find): Use it.  Refactor.  Fixes Mingw,
10707         absolute file name and root.
10708
10709         * scm/lily.scm (PLATFORM): On mingw, slashify getcwd.
10710
10711         * scm/editor.scm (get-editor-command): Typo: do not apply editor.
10712
10713         * flower/file-name.cc (slashify): Bugfix, do substitute if no
10714         slashes in file name.
10715
10716 2005-05-13  Jan Nieuwenhuizen  <janneke@gnu.org>
10717
10718         * Documentation/user/preface.itely (Preface): Run
10719         texinfo-all-menus-update.
10720
10721         * scm/editor.scm (get-editor-command): Bugfix: allow full
10722         LYEDITOR setting, partial XEDITOR setting.  With typo fix.
10723
10724         * Documentation/pictures/lilypond-48.xpm: New file.
10725
10726         * flower/file-path.cc (to_string): Bugfix: use PATHSEP.
10727
10728         * ly/Welcome_to_LilyPond.ly: New file.
10729
10730         * lily/main.cc (main): Only identify if we have a terminal.
10731
10732         * scm/backend-library.scm (postscript->png)
10733         (postscript->pdf): Fix file name quoting for GS/MINGW (ie,
10734         non-/bin/sh).
10735
10736 2005-05-13  Heikki Junes  <hjunes@cc.hut.fi>
10737
10738         * Documentation/topdocs/AUTHORS.texi: polish, update.
10739
10740 2005-05-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10741
10742         * Documentation/user/preface.itely (Notes for version 2.6): new
10743         notes for 2.6
10744
10745         * lily/dynamic-engraver.cc (stop_translation_timestep): first set
10746         finished_span_, then call typeset_all(). Fixes spurious "Hairpin
10747         is not fully contained" warnings.
10748
10749         * lily/slur-scoring.cc (get_bound_info): remove warning.
10750
10751         * lily/staff-symbol-engraver.cc (process_music): start initial
10752         spanner in process_music(). This fixes overrides of StaffSymbol
10753         properties.
10754
10755         * scm/framework-pdf.scm (Module): remove.
10756
10757         * Documentation/topdocs/AUTHORS.texi (AUTHORS): clean up, update.
10758
10759         * lily/ambitus-engraver.cc: formatting cleanups.
10760
10761         * mf/feta-solfa.mf (Module): remove.
10762
10763         * ChangeLog: more details about contributions.
10764
10765 2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10766
10767         * lily/align-interface.cc (align_elements_to_extents): warn if
10768         called too early. Fixes: disappearing-staff-lines.ly
10769
10770         * VERSION (PACKAGE_NAME): release 2.5.24
10771
10772 2005-05-12  Jan Nieuwenhuizen  <janneke@gnu.org>
10773
10774         * stepmake/aclocal.m4: Typo.
10775
10776         * flower/string.cc (substitute): Take two strings or two
10777         characters.  Update callers.
10778
10779 2005-05-11  Jan Nieuwenhuizen  <janneke@gnu.org>
10780
10781         * flower/file-name.cc (File_name): Slashify.
10782
10783         * scm/lily.scm: Use gui-main iso lilypond-main on MINGW.
10784
10785         * scripts/GNUmakefile (SEXECUTABLES): Add lilypond-invoke-editor.
10786
10787         * stepmake/aclocal.m4 (STEPMAKE_WINDOWS): New function.
10788
10789         * configure.in (gui_b): Use it.
10790
10791         * lily/lilypond.rc.in: New file.
10792
10793         * lily/GNUmakefile[PLATFROM_WINDOWS]: Compile it into executable.
10794
10795 2005-05-12  Graham Percival  <gperlist@shaw.ca>
10796
10797         * Documentation/user/advanced-notation.itely: edit of Text
10798         section; clarify text scripts vs. text markup.
10799
10800 2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10801
10802         * lily/multi-measure-rest-engraver.cc
10803         (Multi_measure_rest_engraver): init bar_seen_ to true. Notice
10804         separation items on start. Fixes mm rests in start of score.
10805
10806         * lily/slur-scoring.cc (move_away_from_staffline): robustness,
10807         don't access StaffSymbol if not there.
10808         Fixes: crash-staff-symbol-engraver.ly.
10809
10810         * lily/instrument-name-engraver.cc (class
10811         Instrument_name_engraver): data member first_. Create
10812         InstrumentName on start. 
10813
10814 2005-05-12  Graham Percival  <gperlist@shaw.ca>
10815
10816         * Documentation/user/instrument-notation.itely: add guitar
10817         position.
10818
10819         * Documentation/user/introduction.itely,
10820         Documentation/user/lilypond.tely,
10821         Documentation/user/tutorial.itely: begin pruning
10822         unused (duplicated) cindex entries and misc cleanup.
10823
10824 2005-05-12  Mats Bengtsson  <mabe@s3.kth.se>
10825
10826         * input/test/volta-chord-names.ly: Bring the explanation up to
10827         date.
10828
10829 2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
10830
10831         * Documentation/topdocs/{AUTHORS.texi,INSTALL.texi,README.texi}:
10832         Specify `@documentencoding utf-8' for html, ignore warnings.
10833
10834 2005-05-11  Erik Sandberg  <ersa9195@student.uu.se>
10835
10836         * THANKS: Added bughunters.
10837
10838 2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
10839
10840         * lily/main.cc: update help string for `lilypond -H'.
10841
10842         * po/fi.po: update.
10843         
10844 2005-05-10  Graham Percival  <gperlist@shaw.ca>
10845
10846         * Documentation/user/advanced-notation.itely: minor fixes.
10847
10848 2005-05-10  Jan Nieuwenhuizen  <janneke@gnu.org>
10849
10850         * scm/editor.scm: New module.
10851
10852         * scm/lily.scm (gui-main): Use it.
10853
10854         * scm/framework-gnome.scm (spawn-editor): Use it.
10855
10856         * scripts/lilypond-invoke-editor.scm: Use it in new script.
10857
10858 2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10859
10860         * scm/framework-ps.scm (load-font-via-GS):  new function.
10861
10862         * lily/pango-font.cc (pango_item_string_stencil): add support for
10863         CID keyed font.
10864
10865         * scm/output-ps.scm (glyph-string): add support for CID keyed font.
10866
10867 2005-05-10  Graham Percival  <gperlist@shaw.ca>
10868
10869         * Documentation/user/basic-notation.itely: add @ref.
10870
10871         * Documentation/user/advanced-notation.itely: add example
10872         of 5/8 beaming.
10873
10874 2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10875
10876         * scripts/lilypond-pdfpc-helper.py (ly_pc_editor): robustness fixes.
10877
10878         * scm/backend-library.scm (postscript->pdf): Invoke gs instead of
10879         going through ps2pdf wrappers.
10880
10881 2005-05-09  Jürgen Reuter  <reuter@ipd.uka.de>
10882
10883         * Documentation/user/instrument-notation.itely: petrucci note
10884         heads: updated docu
10885
10886         * input/regression/note-head-style.ly: updated regression test;
10887         indentation fixes
10888
10889         * ly/engraver-init.ly: MensuralVoiceContext: use petrucci note
10890         heads as default
10891
10892         * mf/parmesan-heads.mf: minor editing; use musicological names
10893         (rather than optical description) as note head names
10894
10895         * scm/output-lib.scm: complete petrucci heads
10896
10897 2005-05-09  Pal Benko  <benkop@freestart.hu>
10898
10899         * mf/parmesan-heads.mf: add petrucci heads (like neo-mensural
10900         heads, but bigger)
10901
10902 2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
10903
10904         * lily/main.cc (main_with_guile): Remove no files check.
10905
10906         * lily/main.cc (ly:usage): Export to Scheme.
10907
10908         * scm/lily.scm (no-files-handler): New function.
10909
10910         * scm/lily.scm (lilypond-main): Use it.
10911
10912         * configure.in (gui_b): Add mbrtowc checking.
10913         Resurrect [utf8/]wchar.h checking.
10914
10915 2005-05-09  Mats Bengtsson  <mabe@s3.kth.se>
10916
10917         * Documentation/user/advanced-notation.itely (Metronome marks):
10918         Add link to the program reference for MetronomeMark
10919
10920         * Documentation/user/lilypond-book.itely (An example of a
10921         musicological document): Correct the example using psfonts 
10922
10923 2005-05-09  Heikki Junes  <hjunes@cc.hut.fi>
10924
10925         * po/fi.po: update after a lesson how to update entries against
10926         source.
10927         
10928         * po/TODO: document the lesson.
10929
10930 2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10931
10932         * configure.in (gui_b): remove wcrtomb checking.
10933
10934         * lily/general-scheme.cc (LY_DEFINE): hand-convert utf8 to 32
10935         bits. Patch by Matthias Neeracher. <neeracher@mac.com>
10936
10937 2005-05-09  Mats Bengtsson  <mabe@s3.kth.se>
10938
10939         * scripts/convert-ly.py: In the conversion to version 1.9.0, 
10940         keep Scheme expressions and strings unmodified when doing the
10941         conversion to postfix notation for slurs and beams. Should
10942         hopefully solve most related conversion problems. 
10943
10944         * Documentation/user/lilypond-book.itely : Clarify and correct how
10945         to call dvips with -h psfonts.
10946
10947 2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
10948
10949         * Documentation/user/instrument-notation.itely (Entering lyrics):
10950         Typo.  Fixes build.
10951
10952 2005-05-09  Graham Percival  <gperlist@shaw.ca>
10953
10954         * Documentation/user/lilypond-book.itely: document PSFONTS file.
10955
10956         * Documentation/user/lilypond.tely, lilypond-book.itely,
10957         tutorial.itely: change references to 2.5.x to 2.6.x.
10958
10959         * Documentation/user/instrument-notation.itely: clarified \addlyrics
10960         vs \lyricmode.
10961
10962         * Documentation/user/invoking.itely: remove old info about
10963         lilypond-profile.
10964
10965         * Documentation/topdocs/INSTALL.texi: remove old info about
10966         lilypond-profile, add warning about needing international fonts
10967         to build docs.
10968
10969 2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10970
10971         * lily/include/grob-info.hh (class Grob_info): make data member
10972         private. Changes throughout.
10973
10974         * input/regression/alignment-order.ly: new file. 
10975
10976         * lily/vertical-align-engraver.cc (acknowledge_grob): read
10977         alignAboveContext and alignBelowContext
10978
10979 2005-05-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10980
10981         * lily/pfb.cc (LY_DEFINE): add cast.
10982
10983         * scm/framework-ps.scm (write-preamble): embed CFFs if file name
10984         matches .otf
10985         (write-preamble): warn about unknown fonts.
10986
10987         * lily/pfb.cc (Module): new function ly:otf->cff
10988
10989         * lily/open-type-font.cc (get_otf_table): use ::get_otf_table
10990         (get_otf_table): new function.
10991
10992 2005-05-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10993
10994         * scm/backend-library.scm (postscript->png): call lilypond-ps2png
10995         iso. ps2png.
10996
10997 2005-05-06  Heikki Junes  <hjunes@cc.hut.fi>
10998
10999         * po/fi.po: apply second round of update.
11000
11001 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11002
11003         * scm/x11-color.scm (make-x11-color-handler): don't use
11004         #\sp. Apparently doesn't work on all platforms. 
11005
11006 2005-05-06  Graham Percival  <gperlist@shaw.ca>
11007
11008         * Documentation/user/advanced-notation.itely, putting.itely,
11009         tutorial.itely, global.itely, introduction.itely: really minor fixes.
11010
11011 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11012
11013         * VERSION (PACKAGE_NAME): release 2.5.23
11014
11015 2005-05-06  Jan Nieuwenhuizen  <janneke@gnu.org>
11016
11017         * Documentation/topdocs/AUTHORS.texi: Remove texinfo @accents,
11018         convert to utf-8.
11019
11020         * THANKS: Add translators for this release, convert to utf-8.
11021
11022         * mf/GNUmakefile (MFTRACE_FLAGS):
11023         * buildscripts/substitute-encoding.py (outdir): Build fix: pass
11024         outdir as option (WAS: hardcoded).
11025
11026 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11027
11028         * lily/staff-symbol-engraver.cc (Staff_symbol_engraver): init
11029         finished_span_
11030
11031         * THANKS: add Hans Forbrich.
11032
11033         * Documentation/topdocs/NEWS.tely (Top): document new feature.
11034
11035         * Documentation/user/basic-notation.itely (Staff symbol): document
11036         start/stop staff. Reference to ossia.ly
11037
11038         * input/test/ossia.ly: new example using stop and startStaff.
11039
11040         * lily/timing-engraver.cc: remove Timing_engraver::initialize(),
11041         in other words, don't create "|" barline at start of the score.
11042         (start_translation_timestep): don't set whichBar for start of score.
11043
11044         * input/regression/staff-halfway.ly: use new functionality.
11045
11046         * lily/staff-symbol-engraver.cc (try_music): take StaffSpanEvents,
11047         start and stop staff based on events.
11048
11049         * scm/define-music-types.scm (music-descriptions): add StaffSpanEvent
11050
11051         * ly/declarations-init.ly (startStaff, stopStaff): new identifiers.
11052
11053 2005-05-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11054
11055         * Documentation/user/programming-interface.itely (How markups work
11056         internally ): remove \encoding reference.
11057
11058 2005-05-04  Mats Bengtsson  <mabe@s3.kth.se>
11059
11060         * scripts/convert-ly.py: Attempt to do a smarter update of 
11061         text markups from versions < 1.9.0 with arbitrary nesting.
11062
11063 2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
11064
11065         * po/fi.po: convert to utf-8, and update.
11066
11067 2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11068
11069         * make/lilypond.suse.spec.in: update from suse 2.4 package.
11070
11071         * lily/*.cc: more <? >? to min/max changes
11072
11073         * lily/include/interpretation-context-handle.hh: rename
11074         Interpretation_context_handle to Context_handle.
11075
11076 2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
11077
11078         * input/regression/GNUmakefile (local_delete): use `find` together 
11079         with `xargs` to avoid too long argument-lists in cmd line.
11080
11081 2005-05-04  Graham Percival  <gperlist@shaw.ca>
11082
11083         * Documentation/user/introduction.itely: updates "About this manual".
11084
11085         * Documentation/user/advanced-notation.itely,
11086         invoking.itely: minor fixes.
11087
11088 2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11089
11090         * COPYING: add font exception. Update FSF address. 
11091
11092         * lily/context-def.cc (path_to_acceptable_context): bugfix, depth
11093         should be taken without child context.
11094
11095         * ly/chord-modifiers-init.ly (blackTriangleMarkup): use it.
11096
11097         * scm/define-markup-commands.scm (triangle): new command, as
11098         robust replacement for unicode Delta/Triangle.
11099
11100 2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11101
11102         * ps/music-drawing-routines.ps: add fillp argument.
11103
11104         * lily/lookup.cc (round_filled_polygon): polygon takes filled? argument
11105
11106         * lily/font-config.cc (init_fontconfig): don't add cff/
11107
11108         * VERSION (PACKAGE_NAME): release 2.5.22
11109
11110         * mf/GNUmakefile: remove cff/cff.ps/.map install rules.
11111
11112         * lily/grace-engraver.cc (consider_change_grace_settings): use
11113         is_alias(). Fixes problem with CueVoice grace notes. 
11114
11115         * lily/simultaneous-music-iterator.cc (construct_children): call
11116         Music_iterator::quit() for iterators that start out invalid. This
11117         fixes indefinitely continuing contexts.
11118
11119         * buildscripts/substitute-encoding.py: new file
11120
11121         * Documentation/user/basic-notation.itely (Basic polyphony): fix
11122         missing @end 
11123
11124         * scripts/lilypond-book.py (write_if_updated): print file name.
11125
11126         * Documentation/user/basic-notation.itely (Explicitly
11127         instantiating voices): idem.
11128
11129         * Documentation/user/advanced-notation.itely (Text spanners):
11130         remove stray { } 
11131
11132         * lily/context.cc (default_child_context_name): the default child
11133         is now first in accepts_list_.
11134
11135         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
11136         \defaultchild to all relevant contexts.  This fixes:
11137         drums-pitch.ly.
11138
11139         (Probably also fixes similar problems with ancient
11140         transcriptions getting CueVoices instead of the desired voices.)
11141  
11142         * lily/context-def.cc (get_default_child): new function.
11143         (get_accepted): place default child in front of list.
11144
11145         * lily/parser.yy (FIXME): add DEFAULTCHILD token.
11146
11147         * lily/include/context-def.hh (struct Context_def): add
11148         default_accept_
11149
11150 2005-05-03  Graham Percival  <gperlist@shaw.ca>
11151
11152         * scm/define-grobs.scm: remove "remove-first" line, since
11153         the absent property is set to #f anyway.
11154
11155         * Documentation/user/basic-notation.itely,
11156         advanced-notation.itely, instrument-notation.itely: minor
11157         fixes.
11158
11159         * ly/property-init.ly: add textSpanner{Up,Down,Neutral}.
11160
11161         * Documentation/user/advanced-notation.itely,
11162         changing-defaults.itely: consolidate Text stuff in
11163         advanced notation.
11164
11165         * Documentation/user/global.itely: better docs for \header.
11166
11167         * Documentation/user/putting.itely: new chapter; placeholder
11168         for future expansion.
11169
11170         * Documentation/user/examples.itely: moved "suggestions for
11171         writing LP files" section into putting.itely.
11172
11173         * Documentation/user/lilypond.itely: added new chapter,
11174         fixed the short table of contents.
11175
11176 2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11177
11178         * lily/beam-quanting.cc (quanting): robustness fix, don't produce
11179         infinity for unfeasible beams.
11180
11181         * make/lilypond.fedora.spec.in (Group): idem.
11182
11183         * scripts/GNUmakefile (SEXECUTABLES): rename ps2png to lilypond-ps2png
11184
11185         * mf/GNUmakefile (ALL_GEN_FILES): remove .map
11186
11187         * scm/framework-ps.scm (write-preamble): extract CFF from OTF
11188         fonts directly.
11189
11190         * buildscripts/gen-emmentaler-scripts.py (i): idem.
11191
11192         * mf/GNUmakefile: remove all CFF rules.
11193
11194         * scm/framework-ps.scm (ps-embed-cff): reinstate.
11195
11196         * lily/open-type-font-scheme.cc (LY_DEFINE):
11197         new function ly:otf-font-table-data.
11198         (LY_DEFINE): new function otf-font?
11199
11200 2005-05-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11201
11202         * mf/GNUmakefile ($(outdir)/lilypond.map): remove rule.
11203         ($(outdir)/Fontmap.lily): idem.
11204
11205         * buildscripts/gen-emmentaler-scripts.py (i): load fetaXX encoding
11206         for PFAEmmentaler-XXX.pfa. 
11207
11208         * Documentation/user/music-glossary.tely (accidental): NL
11209         translation of accidental.
11210
11211 2005-05-02  Jan Nieuwenhuizen  <janneke@gnu.org>
11212
11213         * flower/include/international.hh: Bugfix: include "string.hh".
11214
11215         * lily/include/mingw-compatibility.hh: New file.
11216
11217         * flower/include/libc-extension.hh (memrev): Rename from strrev.
11218
11219         * configure.in: Search for mingw wcrtomb library.
11220
11221 2005-05-02  Mats Bengtsson  <mabe@s3.kth.se>
11222
11223         * scripts/convert-ly.py: Bug fix
11224
11225         * Documentation/user/changing-defaults.itely (Common tweaks):
11226         Added example where the context has to be specified explicitly
11227         (MetronomeMark). 
11228
11229 2005-05-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11230
11231         * scripts/lilypond-book.py (ly_options): set timing to #f for
11232         notime option.
11233
11234         * scripts/convert-ly.py (conv): typo.
11235
11236         * flower/*.cc: remove <? and >?
11237         
11238         * lily/*.cc: remove <? and >?
11239
11240         * lily/tweak-registration.cc (insert_tweak_from_file): Make sure
11241         that 0x0 isn't passed into scm_cons(). Fixes crash with tweak
11242         editor.
11243
11244 2005-04-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11245
11246         * lily/part-combine-engraver.cc: add space to variable list.
11247
11248 2005-04-30  Graham Percival  <gperlist@shaw.ca>
11249
11250         * scm/define-grobs.scm: changed RemoveEmptyVerticalGroup's
11251         remove-first to false (matches docs)
11252
11253         * Documentation/user/advanced-notation.itely: corrected docs
11254         concerning remove-first.
11255
11256 2005-04-29  Mats Bengtsson  <mabe@s3.kth.se>
11257
11258         * lily/part-combine-engraver.cc: make sure that the relevant
11259         properties are included in the documentation.
11260
11261 2005-04-28  Graham Percival  <gperlist@shaw.ca>
11262
11263         * Documentation/user/lilypond-book.itely: Bernard's docs
11264         for \betweenLilyPondSystem.
11265
11266 2005-04-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11267
11268         * Documentation/topdocs/INSTALL.texi (Top): remove TeX outdated
11269         remarks.
11270
11271 2005-04-28  Pal Benko  <benkop@freestart.hu>
11272
11273         * lily/mensural-ligature.cc (brew_flexa): apply thickness property
11274         only on vertical lines of flexa shape, and use a constant
11275         thickness value for horizontal lines (patch slightly modified by
11276         Jürgen Reuter)
11277
11278         * lily/include/mensural-ligature.hh: make 2 comments clearer
11279
11280 2005-04-28  Jürgen Reuter  <reuter@ipd.uka.de>
11281
11282         * lily/vaticana-ligature-engraver.cc (need_extra_space): renamed
11283         to need_extra_horizontal_space; bugfix: use class scope to avoid
11284         global namespace pollution
11285
11286         * Documentation/user/instrument-notation.itely (ligatures): added
11287         comment on possible future syntax change and how to work around
11288
11289         * lily/vaticana-ligature-engraver.cc, mf/parmesan-heads.mf
11290         (epiphonus, cephalicus): fine-tune shape of plica head for narrow
11291         intervals (fixes agnus dei example)
11292
11293         * Documentation/user/instrument-notation.itely (white mensural
11294         ligatures): selected a more illustrative example
11295
11296 2005-04-28  Heikki Junes <hjunes@cc.hut.fi>
11297
11298         * Documentation/index.html.in: specify utf-8 charset in meta content.
11299
11300 2005-04-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11301
11302         * python/lilylib.py (make_ps_images): bugfixes; GS can produce
11303         empty 2nd page for single page.
11304
11305         * scm/lily.scm: remove p&c definitions.
11306
11307         * po/zh_TW.po (Module): new translation.
11308
11309         * lily/lily-guile.cc (ly_chain_assoc): remove.
11310
11311         * lily/general-scheme.cc (LY_DEFINE): export ly:chain_assoc_get
11312         (LY_DEFINE): recurse, iso. calling ly_chain_assoc.
11313
11314 2005-04-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11315
11316         * lily/beaming-info.cc: remove infinity_i
11317
11318         * scripts/abc2ly.py (out_filename): fix thinko with \version.
11319
11320 2005-04-26  Graham Percival  <gperlist@shaw.ca>
11321
11322         * Documentation/user/basic-notation.itely,
11323         instrument-notation.itely, advanced-notation.itely,
11324         changing-defaults.itely: minor fixes.  Added docs
11325         for colors to advanced-notation.itely.
11326
11327         * Documentation/user/advanced-notation.itely: fixed compile
11328         problem and added Bernard's x11-color doc patch.
11329
11330 2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
11331
11332         * scm/output-ps.scm (grob-cause): Yet another fix, hope it's
11333         alright this time round.
11334
11335 2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11336
11337         * Documentation/topdocs/INSTALL.texi (Top): idem.
11338
11339         * Documentation/topdocs/README.texi (Top): remove clean-fonts refs.
11340
11341         * VERSION (MAJOR_VERSION): release 2.5.21
11342
11343         * scm/output-ps.scm (grob-cause): bugfix.
11344
11345 2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
11346
11347         * cygwin/*: Update.
11348
11349         * cygwin/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Remove profile
11350         stuff.
11351
11352         * scm/output-ps.scm (grob-cause): Bugfix.
11353
11354         * scm/lily.scm (ly:load): Remove x11-color.
11355
11356         * stepmake/aclocal.m4 (STEPMAKE_GET_EXECUTABLE): Bugfix: do not
11357         quote executable, fixes getting version from program --with
11358         --options.
11359         (STEPMAKE_KPATHSEA): Bugfix for Cygwin cross building: use
11360         $ac_exeect.
11361
11362         * Documentation/user/GNUmakefile: Only build music-glossary with
11363         rendered lilypond snippets during web.
11364
11365 2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11366
11367         * po/de.po: update.
11368
11369         * lily/GNUmakefile (OUT_DIST_FILES): don't dist lexer.cc
11370
11371 2005-04-22  Laura Conrad <lconrad@laymusic.org>
11372  
11373         * scripts/abc2ly:
11374         second title line append with punctuation dash character;
11375         encode abc2ly python strings in utf-8
11376        
11377 2005-04-21  Laura Conrad <lconrad@laymusic.org>
11378
11379         * scripts/abc2ly fix chords (again)
11380  
11381 2005-04-22  Bernard Hurley  <bernard@fong-hurley.org.uk>
11382
11383         * scm/x11-color.scm: new file
11384         All x11 color names can be accessed with:
11385         #(x11-color 'ColorName),
11386         #(x11-color "ColorName") or:
11387         #(x11-color "color name")
11388         If the x11 color name is not recognised then it defaults
11389         to black
11390
11391         * scm/lily.scm: amended to call scm/x11-color.scm
11392
11393 2005-04-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11394
11395         * Documentation/user/invoking.itely (Reporting bugs): comment out
11396         reference to online PNG bug repository.
11397
11398 2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
11399
11400         * lily/translator-scheme.cc (ly:translator-property): Remove.
11401         Update callers.
11402
11403         * lily/context-scheme.cc (ly:context-now): Move from translator.
11404         Update callers.
11405
11406 2005-04-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11407
11408         * input/regression/grid-lines.ly (skips): refine example.
11409
11410         * scm/define-context-properties.scm
11411         (all-user-translation-properties): doc autoBeamCheck
11412
11413         * input/regression/grid-lines.ly (Module): new file.
11414
11415         * lily/grid-point-engraver.cc (Module): new file.
11416
11417         * lily/grid-line.cc (Module): new file.
11418
11419         * lily/grid-line-span-engraver.cc (Module): new file.
11420
11421         * lily/grid-line-interface.cc (Module): new file.
11422
11423 2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
11424
11425         * scm/auto-beam.scm (revert-property-setting): Bugfixes: add
11426         missing parameter, actualy cdr through list.  Actually return a
11427         list with ENTRY removed (was '()).
11428
11429         * scripts/convert-ly.py: Update.  Print warning if file cannot be
11430         opened.
11431         (do_conversion): Fix printing of continuation comma.
11432
11433         * Documentation/user/advanced-notation.itely (Beam formatting):
11434         Remove refbugs about compound time and mixed duration.
11435
11436         * scm/auto-beam.scm (default-auto-beam-settings): Write out all
11437         modulo moments explicitely.
11438
11439         * lily/moment.cc (operator %): New function.
11440
11441         * lily/moment-scheme.cc (ly:mod-moment): Wrap it.
11442
11443         * lily/translator-scheme.cc (ly:translator-now,
11444         ly:translator-property): New function.
11445
11446         * scm/auto-beam.scm (default-auto-beam-check): New function.
11447
11448         * lily/auto-beam-engraver.cc (test_moment): Use it.
11449
11450         * flower/rational.cc (operator %): Bugfix.
11451
11452 2005-04-21  Erik Sandberg  <ersa9195@student.uu.se>
11453
11454         * scripts/abc2ly: Bugfix
11455
11456 2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11457
11458         * python/fontextract.py (write_extracted_fonts): bugfix, too many
11459         %'s on EndFont comment.
11460
11461         * lily/ledger-line-spanner.cc: some more words of explanation.
11462
11463 2005-04-20  John Williams <williams@tni.com>  
11464         
11465         * scripts/lilypond-book.py: htmlquote bugfix.
11466         Allow snippets to be given distinct filenames.
11467         Allow the default alt text to be overridden.
11468
11469 2005-04-20  Erik Sandberg  <ersa9195@student.uu.se>
11470
11471         * ly/performer-init.ly: Bugfix
11472
11473         * THANKS: Added bughunters.
11474
11475 2005-04-20  Jan Nieuwenhuizen  <janneke@gnu.org>
11476
11477         * SConstruct (test_lib): Bump mftrace requirement to 1.1.9.
11478
11479         * lily/auto-beam-engraver.cc (test_moment): Test exact measure
11480         position (was: use modulo measure length).
11481
11482         * configure.in (no gui_b): Remove optional gtk+ requirement.
11483
11484 2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11485
11486         * Documentation/user/basic-notation.itely (Pitches): add
11487         LedgerLineSpanner.
11488
11489         * lily/dynamic-engraver.cc (process_music): set right bound to
11490         script if present. Else, do not set.
11491         (acknowledge_grob): only set right bound of finished spanner to
11492         note column if no other bound is set.
11493
11494         * python/lilylib.py (make_ps_images): switch back to png16m.
11495         
11496 2005-04-19  Jan Nieuwenhuizen  <janneke@gnu.org>
11497
11498         * scripts/lilypond-book.py (write_if_updated): Bugfix for not
11499         writing up to date file.  Add dvips usage suggestion.
11500
11501         * scripts/convert-ly.py: Fix error message.
11502         Print usage if no files on command line.
11503         (usage): Add example usage.
11504
11505         * input/test/compound-time.ly: New file.
11506
11507         * input/test/circle.ly: New file.
11508
11509         * Documentation/topdocs/NEWS.tely: Use them.
11510
11511         * input/test/boxed-stencil.ly: Remove \score.
11512
11513         * buildscripts/mf-to-table.py (base): Add .log dependency.
11514
11515         * mf/GNUmakefile: Add PFAemmentaler and PFAaybabtu dependencies on
11516         pfa's.  Add .log dependency
11517
11518         * scm/define-markup-commands.scm (lower): New command.
11519
11520         * elisp/lilypond-mode.el (LilyPond-pdf-command): New command,
11521         make it default.
11522
11523 2005-04-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11524
11525         * lily/dynamic-engraver.cc (acknowledge_grob): add note-column
11526         also to finished cresc as right bound. This fixes:
11527         skip-string-decresc.ly
11528
11529         * lily/slur-scoring.cc (get_bound_info): robustness: substitute
11530         relative_coordinate if extent is empty.
11531
11532         * lily/stem.cc (width_callback): determine correct extent if flag
11533         is not there. This fixes slur-no-flag.ly
11534
11535         * lily/grace-engraver.cc (consider_change_grace_settings): new
11536         function.
11537         (initialize): also consider_change_grace_settings() on
11538         initialization. Fixes large grace notes at start of score.
11539
11540         * lily/break-align-interface.cc (do_alignment): don't translate if
11541         total_extent is empty.
11542
11543         * buildscripts/lilypond-{login,profile}.sh (Module): remove file.
11544
11545 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11546
11547         * scm/output-ps.scm (grob-cause): don't add cwd if path starts
11548         with slash.
11549
11550 2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
11551
11552         * stepmake/aclocal.m4: Remove tfm_path.
11553
11554 2005-04-18  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11555
11556         * scm/music-functions.scm (markup-expression->make-markup): fix
11557         bug with cons arguments of markup commands.
11558         (music->make-music): fix music expression property list building
11559
11560 2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
11561
11562         * aclocal.m4: Massage package names.
11563
11564         * SCons updates.
11565
11566 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11567
11568         * VERSION (PACKAGE_NAME): release 2.5.20
11569
11570         * lily/stem.cc (calc_stem_info): add minimum Y extent of
11571         stem-tremolo.  Fixes: bugs/tremolo-stem-length-beamed
11572
11573         * lily/percent-repeat-engraver.cc (try_music): add measure before
11574         next_moment to future processing moment. Fixes:
11575         percent-repeat-mm-rest.ly
11576         (process_music): don't add moment for 2nd time.
11577
11578         * input/regression/repeat-percent.ly: add mmrests as extra test.
11579
11580         * lily/axis-group-engraver.cc (acknowledge_grob): read
11581         keepAliveInterfaces to decide what to kill.
11582
11583         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add
11584         percent-repeat-interface to keepAliveInterfaces. This fixes
11585         percent-repeat-harakiri.
11586
11587 2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
11588
11589         * SCons updates.
11590
11591 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11592
11593         * config.make.in (TTFTOOL_ENDIAN): rm TFM_PATH
11594
11595         * aclocal.m4: remove --enable-tfm-path configure option
11596
11597         * input/test/ancient-font.ly (lowerStaff): clef name errors.
11598
11599         * scm/backend-library.scm (postscript->png): newline after
11600         finishing command.
11601
11602         * lily/paper-score-scheme.cc (LY_DEFINE): new file.
11603         (LY_DEFINE): ly:paper-score-paper-systems: new function 
11604
11605         * lily/score-scheme.cc (LY_DEFINE): require music argument. 
11606
11607         * lily/score.cc (default_rendering): use Music_output too.
11608
11609         * input/test/chord-names-languages.ly (Module): rename file.
11610
11611         * lily/text-spanner.cc: add bound-padding.
11612
11613         * lily/paper-book.cc (systems): accept Paper_score
11614         iso. Paper_system vector. 
11615
11616         * input/regression/line-arrows.ly: new file.
11617
11618         * lily/paper-score.cc (process): run get_paper_systems() only once.
11619
11620         * lily/line-spanner.cc (line_stencil): add arrows.
11621
11622 2005-04-18  Jonatan Liljedahl  <lijon@kymatica.com>
11623
11624         * lily/line-interface.cc (make_arrow): new function. 
11625         (arrows): idem.
11626
11627 2005-04-18  Mathieu Giraud  <magiraud@free.fr>
11628
11629         * input/test/chord-names-german.ly: update for italian/french
11630         chords.
11631         
11632         * Documentation/user/instrument-notation.itely (Printing chord
11633         names): update.
11634
11635 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11636
11637         * lily/include/paper-score.hh (class Paper_score): remove unused
11638         prototypes.
11639
11640         * lily/book.cc (process): add -COUNT to midi output.
11641
11642         * lily/score.cc (book_rendering): remove outname argument
11643         (book_rendering): return list of Music_outputs. 
11644
11645         * lily/global-context-scheme.cc (LY_DEFINE): remove outname argument.
11646
11647         * lily/book.cc (process): loop over Music_outputs returned from
11648         Score::book_rendering().
11649
11650         * lily/*.cc (width_callback): remove spurious "unused" warnings
11651         for assert (axis==[XY]_AXIS); 
11652
11653         * lily/include/music-output.hh (class Music_output): smobify class.
11654
11655         * lily/include/paper-score.hh (class Paper_score): make members
11656         private.
11657
11658         * lily/performance.cc (process): return #f iso. #<undefined>. This
11659         prevents #<undefined> leaking into GUILE-userspace.
11660
11661 2005-04-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11662
11663         * config.hh.in: remove HAVE_PANGO_FC_FONT_MAP_ADD_DECODER_FIND_FUNC.
11664
11665 2005-04-17  Mathieu Giraud  <magiraud@free.fr>
11666
11667         * scm/chord-name.scm : support for italian and french
11668         chords names.
11669
11670         * scm/chord-ignatzek-names.scm (ignatzek-chord-names): add
11671         a space defined by chordPrefixSpacer when the root name is
11672         direclty followed by a prefix.
11673
11674         * ly/engraver-init.ly : chordPrefixSpacer       
11675         * scm/define-context-properties.scm : chordPrefixSpacer
11676         * ly/property-init.ly : italianChords, frenchChords 
11677
11678 2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
11679
11680         * mf/feta-din.mf: Remove.
11681
11682         * mf/GNUmakefile (fontdir): Bugfix.
11683
11684         * mf/SConstruct: Some updates.
11685
11686         * SConstruct: Require pkg-config.
11687         (test_program): Bugfix for double digit version compares, use
11688         integer (not string-) compare.
11689         Optionally require gs 8.14.
11690
11691         * stepmake/aclocal.m4 (STEPMAKE_PANGO_FT2): Define HAVE_PANGO16 too.
11692
11693         * lily/*: s/ifdef HAVE_*/if have/.
11694
11695         * SConstruct (test_lib): New function.  Update pkg-config and some
11696         other requirements.
11697
11698         * configure.in: Require pkg-config.  Enforce REQUIRE and version for
11699         freetype, pangof2t.
11700
11701 2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
11702
11703         * po/lilypond.pot, ...: Update using bison-CVS.
11704
11705         * python/lilylib.py (make_ps_images): Fixo.
11706
11707 2005-04-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11708
11709         * python/lilylib.py (make_ps_images): typo.
11710
11711         * configure.in (gui_b): make bison optional.
11712
11713         * lily/GNUmakefile (OUT_DIST_FILES): dist parser and lexer.
11714
11715 2005-04-16  Bernard Hurley  <bernard@fong-hurley.org.uk>
11716
11717         * framework-eps.scm: code added so that a macro \betweenLilyPondSystem
11718         with one parameter can be defined in a LaTeX file when processed
11719         by lilypond-book this will be evaluated between the systems of
11720         a multi-system score. The parameter is the number of systems processed.
11721
11722 2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
11723
11724         * python/lilylib.py (make_ps_images): Escape newline.
11725
11726         * Documentation/user/music-glossary.tely: Run
11727         texinfo-all-menus-update.
11728
11729 2005-04-14  Jan Nieuwenhuizen  <janneke@gnu.org>
11730
11731         * scm/lily-library.scm (old-relative-not-used-message)
11732         (version-not-seen-message): Add input-file-name-location to message.
11733
11734         * lily/parser.yy (lilypond): Add token aliases.
11735
11736         * Documentation/user/music-glossary.tely (accidental): Fixes.  Do
11737         not confuse with alteration.
11738         (alteration): Add.
11739
11740 2005-04-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11741
11742         * python/lilylib.py (make_ps_images): use -dEPSCrop
11743
11744         * VERSION (PACKAGE_NAME): release 2.5.19 
11745
11746         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
11747         only put xrefs in info documentation.
11748
11749         * make/ly-rules.make ($(outdir)/%.html.omf): transplant .dvi ->
11750         .pdf rule to tex-rules.make.
11751
11752         * scm/framework-eps.scm (dump-stencils-as-EPSes): remove comments
11753         from -systems.* output.
11754
11755         * stepmake/stepmake/tex-rules.make ($(outdir)/%.pdf): make PDF
11756         directly, remove -$(PAGESIZE) target.
11757
11758         * input/test/embedded-postscript.ly: update.
11759
11760 2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11761
11762         * make/lysdoc-targets.make (local-WWW): remove ps.gz target.
11763
11764         * Documentation/user/changing-defaults.itely (Font selection):
11765         document font-name.
11766
11767         * input/regression/font-name.ly: show Pango fonts for
11768         font-name. Update example. 
11769
11770         * lily/pango-select.cc (properties_to_pango_description): don't
11771         convert symbol font-size to number, but use to lookup.
11772
11773         * python/fontextract.py (write_extracted_fonts): add VMusage 0.
11774
11775         * scm/framework-ps.scm (write-preamble): use (NAME . CONTENTS) and
11776         (NAME . FILE-NAME) tuples for font descriptions. 
11777         (write-preamble): display BeginFont DSC comments.
11778
11779         * python/fontextract.py (write_extracted_fonts): new file. Extract
11780         font resources from a PS file.
11781
11782         * scripts/lilypond-book.py (option_definitions): --psfonts option.
11783         (Compile_error.process_include): do_file returns chunks.
11784
11785         * make/ly-vars.make (DVIPS_FLAGS): don't load .map file.
11786
11787         * make/lysdoc-targets.make: .texi is .PRECIOUS
11788
11789         * scripts/lilypond-book.py (write_if_updated): new function.
11790
11791 2005-04-13  Jan Nieuwenhuizen  <janneke@gnu.org>
11792
11793         * scm/framework-eps.scm (dump-stencils-as-EPSes): Massage messages.
11794
11795 2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11796
11797         * scm/framework-eps.scm (dump-stencils-as-EPSes): no massages.
11798
11799         * input/regression/markup-syntax.ly: remove \score.
11800
11801         * scm/define-markup-commands.scm (draw-circle): add fill argument
11802
11803         * scm/stencil.scm (make-circle-stencil): add fill argument
11804
11805         * ps/music-drawing-routines.ps: add fill argument.
11806
11807         * ly/performer-init.ly: add CueVoice to MIDI too.
11808
11809         * ps/music-drawing-routines.ps: new routine BeginEPSF /
11810         EndEPSF.
11811
11812         * input/regression/markup-eps.ly: new file.
11813
11814         * scm/framework-ps.scm (write-preamble): change order: vars should
11815         be inited before procedures.
11816
11817         * scm/output-ps.scm (glyph-string): break lines. 255 chars is max
11818         for EPS files.
11819
11820         * scm/define-markup-commands.scm (epsfile): add epsfile command.
11821
11822 2005-04-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11823
11824         * configure.in (gui_b): add check for ghostscript 8.15
11825
11826 2005-04-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11827
11828         * lily/hairpin.cc (after_line_breaking): suicide the hairpinlet at
11829         start of line. Fixes cresc-after-newline.ly
11830
11831         * lily/source-file.cc (file_line_column_string): use get_column().
11832
11833 2005-04-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11834
11835         * lily/source-file.cc (get_column): utf-8 support for column numbers.
11836
11837 2005-04-12  Jan Nieuwenhuizen  <janneke@gnu.org>
11838
11839         * lily/*: use message () iso progress_indication () for messages.
11840         Revise/uniformise user messages.
11841
11842         * flower/warn.cc (progress_indication): New function.
11843         (message): Use it.  Fixes newline problems.
11844
11845         * config.make.in (webdir): Sort out install dirs.
11846
11847         * stepmake/stepmake/generic-targets.make (final-install): Bugfix.
11848
11849         * python/lilylib.py (command_name): Bugfix.
11850         (make_ps_images):
11851
11852 2005-04-11  Pedro Kroger  <kroeger@pedrokroeger.net>
11853
11854         * lily/main.cc: --help says what types of backends are availabe
11855
11856 2005-04-11  Jan Nieuwenhuizen  <janneke@gnu.org>
11857
11858         Fix ./VERSION dependency, and without need to reconfigure.
11859
11860         * lily/main.cc (setup_paths): Update.
11861
11862         * stepmake/bin/make-version.py (defs): Add TOPLEVEL_VERSION define..
11863
11864         * config.hh.in (LILYPOND_DATADIR): Remove TOPLEVEL_VERSION.
11865
11866         * scripts/convert-ly.py (\markup): Fix too simplistic regexps.
11867         Add \line for some simplistic cases.
11868
11869         * lily/GNUmakefile (main.o): Add missing dependency on version.hh.
11870
11871 2005-04-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11872
11873         * elisp/lilypond-mode.el (LilyPond-lilypond-command): command used
11874         to compile LY files (useful for adding eg. "-I" args)
11875         (LilyPond-command-alist): use `LilyPond-lilypond-command'. Add a
11876         2Gnome command for gnome backend.
11877         (LilyPond-command-formatgnome): call the 2Gnome command. key
11878         binding: C-c C-g
11879
11880 2005-04-10  Jan Nieuwenhuizen  <janneke@gnu.org>
11881
11882         * Documentation/user/GNUmakefile (lilypond/index.html): Bugfix:
11883         depend on all PNG images.
11884
11885 2005-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
11886
11887         * GNUmakefile.in: Bugfix: also link .map files.
11888
11889 2005-04-09  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11890
11891         * scm/music-functions.scm (music->make-music): generate 
11892         a (make-music ...) sexpr from a music expression.
11893         (display-scheme-music): use guile pretty printer to display the
11894         make-music sexpr.
11895
11896 2005-04-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11897
11898         * ly/engraver-init.ly: reindent.
11899         Add CueVoice.
11900
11901         * scm/music-functions.scm (music-pretty-string): handle moments
11902         too.
11903         (music-pretty-string): only print non-empty lists.
11904         (cue-substitute): create CueVoice context, which has smaller type.
11905
11906         * lily/moment-scheme.cc (LY_DEFINE): new methods
11907         ly:moment-grace-{numerator,denominator}
11908
11909         * lily/context-handle.cc: remove quit() method. 
11910
11911         * lily/font-config.cc (init_fontconfig): be verbose about font path.
11912         (init_fontconfig): success is 0, not !0
11913
11914 2005-04-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11915
11916         * mf/feta-nummer-code.mf (code): add plus glyph.
11917
11918         * lily/tie.cc (print): idem.
11919
11920         * lily/slur.cc (print): don't use thickness property for
11921         slur shape-thickness.
11922
11923         * lily/stencil-scheme.cc (LY_DEFINE): don't reverse the order
11924         while adding stencils.
11925
11926         * scm/define-markup-commands.scm (with-color): with-color markup
11927         command.
11928         (whiteout): new markup command 
11929         (filled-box): new markup command
11930
11931 2005-04-07  Jan Nieuwenhuizen  <janneke@gnu.org>
11932
11933         * Documentation/topdocs/NEWS.tely (Top): Make tex-able.  Handy
11934         test for PDF docs.
11935
11936         * mf/GNUmakefile (lilypond.map): Add PFAEmmentaler,
11937         PFAAybabtu-Regular.  Fixes feta font in PDFs.
11938         
11939         Notes for tetex-3.0 make web:
11940            psclean.map: s/uhv8a/uhvr8a/
11941            config.ps add:
11942                 p +psfonts_t1.map
11943                 p +psclean.map
11944                 p +typeface.map
11945
11946 2005-04-06  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11947
11948         * scm/music-functions.scm (music-pretty-string): fix bug with
11949         string argument.
11950
11951 2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
11952
11953         * stepmake/bin/add-html-footer.py (i18n): Bugfix.
11954
11955 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11956
11957         * scripts/lilypond-book.py (Lilypond_snippet.__init__): 
11958         only process options if they're there.
11959         (write_file_map): add version-seen? to snippet-map.ly
11960
11961 2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
11962
11963         * scripts/lilypond-book.py (split_options): Bugfix.  Small code
11964         formatting cleanups.
11965
11966         * mf/GNUmakefile: Rewrite $addprefix, $addsuffix using % short-forms.
11967         Add PFAaybabtu.pfa dependency on aybabtu.subfonts.
11968
11969 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11970
11971         * scm/framework-ps.scm (ps-font-command): don't hash, just use
11972         name directly.
11973
11974         * lily/main.cc (setup_paths): either add mf/out to search path or 
11975         fonts/{otf,type1,etc}
11976         
11977         * lily/font-config.cc (init_fontconfig): either add mf/out to
11978         FontConfig or fonts/{otf,type1,etc}
11979
11980         * GNUmakefile.in: don't put mf/ link in share/ dir.
11981
11982         * lily/staff-spacing.cc: move same-direction-correction to
11983         note-spacing-interface
11984
11985         * scm/lily.scm (lilypond-main): use variable argument count for
11986         exception handler.
11987
11988         * lily/font-config.cc (init_fontconfig): add operator pacification
11989         message.
11990
11991         * mf/aybabtu.pe.in (i): generate PFAAybabtu.pfa
11992
11993         * buildscripts/gen-emmentaler-scripts.py (i): generate
11994         PFAEmmentaler as well.
11995
11996         * scm/framework-ps.scm (munge-lily-font-name): new function
11997         (write-preamble): hack: insert PFA equivalent of CFF into
11998         .PS. This makes LilyPond output printable on normal PS printers
11999         again.
12000
12001         * buildscripts/gen-emmentaler-scripts.py (i): generate
12002         PFAEmmentaler.pfa aswell.
12003
12004 2005-04-06  John Williams <williams@tni.com>  
12005         
12006         * scripts/lilypond-book.py: refactor the compose_ly procedure.
12007         
12008 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12009
12010         * scm/page-layout.scm (default-page-make-stencil): always combine
12011         the header stencil, even if empty. This prevents the body text to
12012         reach up to the margins.
12013
12014         * po/rw.po (Module): new file, for Kinyarwanda.
12015
12016         * input/test/spacing-optical.ly (Module): new file.
12017
12018         * lily/staff-spacing.cc: add same-direction-correction
12019
12020 2005-04-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12021
12022         * Documentation/user/introduction.itely (Engraving): Comment-out
12023         non-existent file.
12024
12025 2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12026
12027         * scm/define-grob-properties.scm (all-user-grob-properties): add
12028         same-direction-correction
12029
12030         * VERSION: release 2.5.18
12031
12032 2005-04-05  Jan Nieuwenhuizen  <janneke@gnu.org>
12033
12034         * lily/grob.cc (mark_smob): Check pscore->layout_ before
12035         dereferencing.  Fixes make web.
12036
12037         * lily/midi-stream.cc: Handle unwritable midi file.  Include
12038         errno.h.
12039
12040         * Documentation/user/: Fix links.
12041
12042 2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12043
12044         * lily/text-interface.cc (Module): rename from text-item.cc
12045
12046         * input/regression/apply-output.ly (texidoc): function naming fix.
12047
12048         * lily/time-signature-performer.cc (derived_mark): new function.
12049
12050         * lily/lily-parser-scheme.cc:  print mapped file name for progress
12051
12052         * scripts/lilypond-book.py (find_linestarts): new function.
12053         (find_toplevel_snippets): keep track of line numbers.
12054
12055         * lily/key-performer.cc (try_music): remove FIXME warning, gobble
12056         all key changes.
12057
12058         * ly/declarations-init.ly (partCombineListener): use
12059         ignoreBarChecks. Fixes: warn-partcombine-barcheck.ly
12060
12061         * lily/bar-check-iterator.cc (process): ignoreBarChecks property.
12062
12063 2005-04-04  Jan Nieuwenhuizen  <janneke@gnu.org>
12064
12065         * lily/text-item.cc: Fix link.
12066
12067         * Documentation/user/changing-defaults.itely (Changing defaults):
12068         Fix programs reference links.
12069
12070         * Documentation/user/music-glossary.tely: Convert to utf-8.
12071
12072 2005-04-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12073
12074         * make/lilypond-vars.make: remove TEXMF from variables.
12075         remove DEB_BUILD pk font variables.
12076         remove GUILE_LOAD_PATH
12077         remove TeX memory vars.
12078
12079 2005-04-04  Werner Lemberg  <wl@gnu.org>
12080
12081         * lilypond/scm-option.cc (ly_option_usage): Add final newline.
12082
12083 2005-04-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12084
12085         * ps/lilyponddefs.ps: remove reencode-font
12086
12087         * lily/simple-spacer.cc (add_columns): also compare
12088         directly. Column rank doesn't distinguish between broken and
12089         unbroken columns. This fixes large spaces before time sig changes.
12090
12091         * Documentation/user/point-and-click.itely: document ly:set-option.
12092
12093         * lily/grob.cc (get_uncached_stencil): only set grob-cause if
12094         point_and_click_global is set.
12095
12096         * lily/scm-option.cc (LY_DEFINE): add point-and-click
12097         ly:set-option argument.
12098
12099 2005-04-03  Jan Nieuwenhuizen  <janneke@gnu.org>
12100
12101         * GNUmakefile.in: Include symlinks in webball.
12102
12103         * Documentation/user/GNUmakefile (source-links): Add symlinks to
12104         source dir for split and non-split manuals.
12105
12106         * Documentation/user/*y: Fix @uref/@inputfile links for
12107         split/non-split HTML documents.
12108
12109         * Documentation/user/GNUmakefile (local-WWW): Do not generate
12110         .ps.gz.
12111         
12112 2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
12113
12114         * GNUmakefile.in: Add newline.
12115
12116 2005-04-01  Erlend Aasland  <erlenda@gmail.com>
12117
12118         * tex/lilyponddefs.tex: use color instead of xcolor
12119         * scm/output-tex.scm: minor editing
12120
12121 2005-04-02  Nicolas Sceaux  <nicolas.sceaux@free.fr>
12122
12123         * scm/music-functions.scm (display-scheme-music): pretty printer
12124         for music expressions.
12125
12126 2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
12127
12128         * buildscripts/install-info-html.sh (index_file): Fix link.
12129
12130 2005-04-01  Jan Nieuwenhuizen  <janneke@gnu.org>
12131
12132         * input/test/dynamic-extra.ly (piuf): Use utf-8 iso TeX accent.
12133
12134         * Documentation/index.html.in: Add size estimates with some big pages.
12135
12136         * Documentation/user/tutorial.itely (Running LilyPond for the
12137         first time): Add/replace some @rglos links.  TODO: add more
12138         @rglos links in tutorial, test non-intrusiveness (.css).
12139
12140         * stepmake/bin/add-html-footer.py (do_file): Remove info's
12141         annoying's indication of referencing external document.
12142
12143         * Documentation/user/GNUmakefile: Split version of glossary too.
12144         * Documentation/user/macros.itexi (@rglos): Have makeinfo produce
12145         links, not only for html.
12146
12147         * Documentation/user/introduction.itely: Fix some links for other
12148         than html, do not use `here' as link name.
12149
12150 2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
12151
12152         * scm/documentation-generate.scm (string-append): Fix @usermanref,
12153         @glossaryref.
12154
12155 2005-03-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12156
12157         * scm/page-layout.scm (default-page-make-stencil): only add header
12158         if existing and not empty. Fixes spurious programming error.
12159
12160         * lily/span-bar.cc (print): don't make rounded edges for spanbars.
12161
12162 2005-03-31  Erlend Aasland  <erlenda@gmail.com>
12163
12164         * scm/output-tex.scm: implement {re,}setcolor
12165         * tex/lilyponddefs.tex: use color package
12166
12167 2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
12168
12169         * GNUmakefile.in (local-WWW-post): Restore .htaccess and .html
12170         additions to website.
12171
12172         * Documentation/user/lilypond.tely: Remove reference to ps.gz.
12173
12174         * Documentation/user/macros.itexi: Fix @usermanref html links in
12175         split documents: use @inforef.
12176
12177 2005-03-30  Graham Percival  <gperlist@shaw.ca>
12178
12179         * Documentation/user/programming-interface.itely: minor fix.
12180
12181         * Documentation/user/advanced-notation.itely: added info to
12182         Metronome markings.
12183
12184 2005-03-30  Jan Nieuwenhuizen  <janneke@gnu.org>
12185
12186         * scm/output-lib.scm (make-stencil-boxer): Junk code duplication,
12187         use box-stencil.  Remove y-padding argument.
12188         (make-stencil-circler): New function.
12189
12190         * buildscripts/lilypond-words.py (F): 
12191         * elisp/SConscript (a): 
12192         * elisp/GNUmakefile (LILYPOND_WORDS_DEPENDS):
12193         * vim/SConscript (a): 
12194         * vim/GNUmakefile (LILYPOND_WORDS_DEPENDS): Update.
12195
12196         * lily/general-scheme.cc: Build fix.
12197
12198         * scm/markup.scm:
12199         * input/regression/markup-scheme.ly: 
12200         * input/regression/markup-syntax.ly: Drop 'new-' from name.
12201
12202         * scm/stencil.scm (make-circle-stencil): New function.
12203
12204         * scm/define-markup-commands.scm (draw-circle): Use it.  New
12205         name (was cicle).  Update callers.
12206         (circle): New markup command, similar to box.
12207
12208         * scm/stencil.scm (circle-stencil): New function.
12209
12210 2005-03-29  David Jedlinsky  <lilypond@ipnh.com>
12211
12212         * configure.in: Detect libutf8/wchar.h variant.
12213
12214         * stepmake/aclocal.m4: Modify shared size test.
12215
12216 2005-03-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12217
12218         * make/lilypond.fedora.spec.in (Group): remove texmf profile stuff.
12219
12220 2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12221
12222         * scripts/convert-ly.py (conv): add stencil-aligned-to! rule.
12223         
12224         * VERSION (PACKAGE_NAME):  release 2.5.17
12225
12226 2005-03-29  Jan Nieuwenhuizen  <janneke@gnu.org>
12227
12228         * scm/backend-library.scm (postscript->png): Fix comment and png
12229         message.
12230
12231         * GNUmakefile.in (link-tree): Fix locales.
12232
12233 2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12234
12235         * lily/stencil-scheme.cc (LY_DEFINE): change to
12236         ly:stencil-aligned-to, non mutating.
12237
12238         * scm/safe-lily.scm (lambda): remove ly:stencil-set-extent!
12239
12240         * lily/stencil-scheme.cc: remove ly:stencil-set-extent!
12241
12242         * lily/quote-iterator.cc (derived_mark): call
12243         Music_wrapper_iterator::derived_mark() too.
12244
12245         * lily/grace-engraver.cc (derived_mark): change signature, add
12246         const.
12247
12248 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12249
12250         * SConstruct (symlink): 
12251         * GNUmakefile.in (link-tree): Add scripts to prefix.
12252
12253         * lily/general-scheme.cc (ly:effective-prefix): New function.
12254
12255         * scm/backend-library.scm (postscript->png): Use it.
12256
12257 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12258
12259         * lily/paper-score.cc (process): don't delete grobs after
12260         producing stencils. 
12261
12262         * scm/part-combiner.scm (determine-split-list): switch off
12263         debugging info.
12264
12265         * scm/backend-library.scm (postscript->png): explicitly use ps2png.py
12266         if available.
12267
12268         * scm/define-context-properties.scm
12269         (all-user-translation-properties): add stringNumberOrientations.
12270
12271         * lily/new-fingering-engraver.cc (position_scripts): make generic,
12272         so fingering and string-numbers are separately controlled.
12273
12274 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12275
12276         * stepmake/aclocal.m4: Fix shared size test: add missing comma, do
12277         not use debugging.
12278
12279 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12280
12281         * GNUmakefile.in (local-WWW-post): remove UTF8 .htaccess.
12282
12283         * config.hh.in: add HAVE_FONTCONFIG.
12284
12285         * Documentation/user/instrument-notation.itely (String number
12286         indications): new node.
12287
12288         * input/regression/new-markup-syntax.ly (texidoc): add circle.
12289
12290         * lily/new-fingering-engraver.cc (add_string): new function. 
12291         (acknowledge_grob): accept string-number-event as well.
12292
12293         * scm/define-markup-commands.scm (circle): new markup command.
12294
12295         * scm/output-lib.scm (print-circled-text-callback): new function.
12296
12297         * lily/GNUmakefile: move ifeq after include stepmake.make.
12298
12299 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12300
12301         * config.make.in (HAVE_LIBKPATHSEA_SO):
12302         * stepmake/aclocal.m4: Also subst HAVE_LIBKPATHSEA_SO.
12303
12304         * lily/GNUmakefile (MODULE_LDFLAGS): Only if not HAVE_KPATHSEA_SO,
12305         add KPATHSEA_LIBS.
12306
12307         * debian/watch: 
12308         * debian/control: Update.
12309
12310 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12311
12312         * input/test/title-markup.ly (spaceTest): remove.
12313
12314         * input/test/embedded-tex.ly (Module): remove.
12315
12316         * input/test/music-box.ly: use 'name property, not ly:music-name.
12317
12318         * lily/GNUmakefile (MODULE_LDFLAGS): add KPATHSEA_LIBS.
12319
12320         * stepmake/aclocal.m4: STEPMAKE_FONTCONFIG: add.
12321
12322 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12323
12324         * Documentation/topdocs/INSTALL.texi (Top): Remove information
12325         about xdeltas.  Add information about CVS.
12326
12327         * scm/lily.scm (lilypond-main): Fix invocation of handler,
12328         gracefully handle failed files.
12329
12330         * lily/GNUmakefile (MODULE_LDFLAGS): Remove KPATHSEA_LIBS.
12331
12332         * Documentation/topdocs/INSTALL.texi (Top): Whitespace and other
12333         small fixes.
12334
12335         * scm/framework-tex.scm (convert-to-ps): Proper option spacing.
12336         No unnecessarily specific i18n messages.  Remove stray `1'.
12337
12338 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12339
12340         * buildscripts/lys-to-tely.py (strip_extension): add utf-8
12341         documentencoding
12342
12343         * scm/documentation-lib.scm (texi-file-head): set utf-8
12344         documentencoding.
12345
12346         * ly/chord-modifiers-init.ly (whiteTriangleMarkup): use the greek
12347         Delta, not the Symbol one. 
12348
12349         * mf/GNUmakefile ($(outdir)/lilypond.map): add -Regular to Aybabtu
12350         for the .map file.
12351
12352         * Documentation/topdocs/INSTALL.texi (Top): add running
12353         requirement as compilation requirement.
12354
12355 2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12356
12357         * buildscripts/mutopia-index.py (headertext): add h1 header and
12358         utf-8 charset meta field.
12359
12360         * input/GNUmakefile: prune example list.
12361
12362         * scm/framework-tex.scm (convert-to-ps): add -ofoo.ps to dvips
12363         options.
12364
12365         * lily/slur-scoring.cc (get_base_attachments): only look at stem
12366         extent for visible stems.
12367
12368         * lily/grob.cc (mark_smob): mark \layout block from Grob::mark_smob().
12369
12370 2005-03-27  Jan Nieuwenhuizen  <janneke@gnu.org>
12371
12372         * Documentation/topdocs/INSTALL.texi (Top): Updates.
12373
12374         * scripts/convert-ly.py: Python 2.2 compatibility (thanks Mats).
12375
12376 2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12377
12378         * lily/slur-scoring.cc (get_base_attachments): robustness. Don't
12379         pass inf/nan into slur scoring.
12380
12381         * ly/titling-init.ly (oddHeaderMarkup): don't show page no. on 1st
12382         page.
12383
12384         * scripts/abc2ly.py (dump_voices): use alphabet().
12385
12386 2005-03-27  Jeff Smith <whydoubt@yahoo.com>
12387         
12388         * mf/GNUmakefile (depth): use $(FONTFORGE). 
12389
12390 2005-03-27 Matthias Neeracher <neeracher@mac.com>
12391         
12392         * flower/include/virtual-methods.hh: simplify. Patch by
12393
12394 2005-03-25  John Williams <williams@tni.com>  
12395
12396         * scripts/lilypond-book.py (main): add png for HTML too, guess
12397         only if necessary. 
12398
12399 2005-03-25  Graham Percival  <gperlist@shaw.ca>
12400
12401         * Documentation/topdocs/INSTALL.texi: now recommends
12402         lexer-gcc-3.1.sh for gcc 3.1.1 or higher.
12403
12404         * Documentation/user/basic-notation.itely,
12405         Documentation/user/tutoria.itely: warn about
12406         only one (phrasing) slur at once.
12407
12408 2005-03-24  Pedro Kroger  <kroeger@pedrokroeger.net>
12409
12410         * ly/music-functions-init.ly (removeWithTag): fixed to return "music".
12411
12412 2005-03-23  Graham Percival  <gperlist@shaw.ca>
12413
12414         * Documentation/user/basic-notation.itely: fixed info about
12415         ending a (de)cresc.
12416
12417         * Documentation/user/lilypond-book.itely: fixed
12418         lilypond-book filter example and warned about not doing
12419         --filter and --process at the same time.
12420
12421 2005-03-23  Mats Bengtsson  <mabe@s3.kth.se>
12422
12423         * lily/parser.yy (bass_number),
12424         Documentation/user/instrument-notation.itely (Figured bass): 
12425         Add the possibility to use text markup in figured bass. 
12426
12427 2005-03-19  Graham Percival  <gperlist@shaw.ca>
12428
12429         * Documentation/user/global.itely: added info about naming
12430         identifiers and breakbefore.
12431
12432         * Documentation/user/invoking.itely: added info about batch
12433         processing files with convert-ly, removed references to TeX
12434         in the jail section.
12435
12436         * Documentation/user/examples.itely: possibly fixed piano
12437         dynamics.
12438
12439         * Documentation/user/advanced-notation.itely: added info
12440         about removing other types of Staff.
12441
12442         * Documentation/user/instrument-notation.itely: possibly
12443         fixed piano staff line switch.
12444
12445         * Documentation/user/changing-defaults.itely: added info
12446         about using normal font in titles.
12447
12448 2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12449
12450         * VERSION (PATCH_LEVEL): release 2.5.16
12451
12452         * make/ly-vars.make (DVIPS_FLAGS): include lilypond.map path
12453         explicitly.
12454
12455 2005-03-18  Jan Nieuwenhuizen  <janneke@gnu.org>
12456
12457         * scm/framework-tex.scm (convert-to-dvi): Barf if NAME contains
12458         whitespace.
12459
12460         * python/lilylib.py (make_ps_images):
12461         * scm/backend-library.scm (postscript->pdf, postscript->png):
12462         Quote file name.  Use format rather than string-append juggling.
12463
12464 2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12465
12466         * python/lilylib.py (make_ps_images): add x to -g argument. 
12467
12468         * lily/key-performer.cc (create_audio_elements): don't use
12469         scm_eval_string. Check for minor 3rd directly.
12470   
12471         * input/mutopia/J.S.Bach/baerenreiter-sarabande.ly
12472         (sarabandeCelloGlobal): key is D minor, not F major.
12473
12474 2005-03-17  Jan Nieuwenhuizen  <janneke@gnu.org>
12475
12476         Fix truncated --png output (Peter Danenberg).
12477         
12478         * python/lilylib.py (make_ps_images):
12479         * scripts/ps2png.py (copyright): Grok --papersize option.
12480
12481         * scm/backend-library.scm (postscript->png): Add parameter
12482         PAPERSIZE.  Update callers.
12483
12484         * scm/output-gnome.scm (music-font?): Bugfix: use "Emmentaler".
12485         Fixes symbol placement.
12486
12487         * lily/spanner.cc: 
12488         * lily/stencil.cc: Use "libc-extension.hh" (WAS:
12489         <libc-extension.hh>).
12490
12491 2005-03-16  Jan Nieuwenhuizen  <janneke@gnu.org>
12492
12493         * Nitpick run.
12494
12495         * buildscripts/fixcc.py: Update.
12496
12497         Builddir run fixes.
12498
12499         * HACKING (datadir): Add VERSION.
12500
12501         * GNUmakefile.in (linktree): Bugfix: outconfdirs are one dir
12502         higher up.
12503
12504 2005-03-15  Werner Lemberg  <wl@gnu.org>
12505
12506         * mf/feta-klef.mf (draw_gclef): Move z10' slightly so that the
12507         diagonal stem doesn't become thinner.
12508
12509 2005-03-15  Jan Nieuwenhuizen  <janneke@gnu.org>
12510
12511         * buildscripts/fixcc.py: Fixes (Werner).
12512
12513 2005-03-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12514
12515         * mf/GNUmakefile ($(outdir)/lilypond.map): capitalize
12516         Emmentaler/Aybabtu.
12517
12518         * GNUmakefile.in: fix lilypond-words path.
12519
12520         * po/tr.po: update to 2.3.21
12521
12522         * lily/new-fingering-engraver.cc (position_scripts): take priority
12523         from head position.
12524
12525         * input/regression/finger-chords-order.ly (texidoc): new file.
12526
12527 2005-03-14  Jan Nieuwenhuizen  <janneke@gnu.org>
12528
12529         * make/ly-rules.make: 
12530         * stepmake/aclocal.m4: 
12531         * Documentation/user/GNUmakefile: Remove old makeinfo compatibility.
12532
12533         * buildscripts/fixcc.py (rules): Leave space after operator.
12534
12535 2005-03-14  Werner Lemberg  <wl@gnu.org>
12536
12537         * mf/feta-klef.mf (draw_gclef): Replace `simple_serif' for
12538         top of the glyph with smooth curve.
12539
12540 2005-03-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12541
12542         * Documentation/user/global.itely (Page layout): remove
12543         printpagenumber.
12544
12545 2005-03-13  Jürgen Reuter  <reuter@ipd.uka.de>
12546
12547         * input/regression/mensural-ligatures.ly: new file (with examples
12548         compiled by Pal Benko).
12549
12550         * Documentation/user/instrument-notation.itely: Bugfix: yet some
12551         other "custodes.*-u0" -> "custodes.*.u0" renaming victims in
12552         musicglyph access.  Many small beautifications in ancient
12553         examples.
12554
12555         * input/test/divisiones.ly: fixed indentation; small
12556         beautifications
12557
12558         * ly/engraver-init.ly: added FIXME comment
12559
12560         * scripts/lilypond-book.py,
12561         Documentation/user/lilypond-book.itely: added music fragment
12562         option "packed" to lilypond-book
12563
12564         * Documentation/user/instrument-notation.itely: Bugfix: added
12565         missing LedgerLineSpanner color setting in several places.  Added
12566         music fragment option "packed" to VaticanaContext example.
12567
12568 2005-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12569
12570         * scm/define-grobs.scm (all-grob-descriptions): switch off
12571         Hyphen_spanner::set_spacing_rods 
12572
12573         * lily/lyric-hyphen.cc (print): add padding between syllable and
12574         hyphen.
12575         (print): shorten hyphen in tight situations (determine using
12576         minimum-length)
12577
12578         * scm/paper.scm (layout-set-staff-size): increase blotdiameter to
12579         0.4pt.
12580
12581 2005-03-13  Jan Nieuwenhuizen  <janneke@gnu.org>
12582
12583         * ly/titling-init.ly (bookTitleMarkup): Refinements.
12584
12585         * input/regression/page-breaks.ly (paper): Set not raggedlastbottom,
12586         header/footer markings for regression-test.
12587
12588         * scm/backend-library.scm (output-scopes, header-to-file): Move
12589         from framework-tex.scm.
12590
12591         * scm/framework-ps.scm (output-framework)
12592         (output-preview-framework):
12593         * scm/framework-eps.scm (output-classic-framework)
12594         (output-framework): Use it.  Fixes collated files.
12595
12596 2005-03-12  Jan Nieuwenhuizen  <janneke@gnu.org>
12597
12598         * input/sakura-sakura.ly: 
12599         * input/xiao-haizi-guai-guai.ly: Add from Debian package (Anthony).
12600
12601         * buildscripts/guile-gnome.sh: Update.
12602
12603         * mf/GNUmakefile (aybabtu.otf): Add dependency on .pe.
12604
12605         * mf/aybabtu.pe.in: Capitalize Aybabtu.
12606
12607 2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12608
12609         * lily/separating-group-spanner.cc (find_rods): oops. Fix the real
12610         culprit: always exit the loop if we find a rod, even if it has
12611         distance < 0. 
12612
12613         * lily/ledger-line-spanner.cc (set_spacing_rods): rewrite to O(n)
12614         algorithm.
12615
12616         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
12617         $(outdir)/%.svg $(outdir)/%.pfa): add --simplify.
12618
12619         * scm/output-svg.scm (dashed-line): new  function body.
12620         
12621         * GNUmakefile.in: create .htaccess.
12622
12623 2005-03-11  Jan Nieuwenhuizen  <janneke@gnu.org>
12624
12625         * Documentation/topdocs/NEWS.tely (Top): Fix text example.
12626
12627 2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12628
12629         * VERSION (PACKAGE_NAME): release 2.5.15
12630
12631         * scm/output-{pdf,pdftex,sketch}.scm (Module): remove bitrotted files.
12632
12633         * scm/framework-svg.scm (output-framework): put scaling in
12634         document header. Apply scaling only once.
12635         (output-framework): dump page size in px, not mm. 
12636
12637         * scm/lily-library.scm (modified-font-metric-font-scaling): rename
12638         from font-size.
12639
12640         * lily/paper-outputter-scheme.cc (LY_DEFINE):
12641         ly:outputter-output-scheme, new function.
12642
12643         * scm/output-svg.scm (pango-description-to-svg-font): new function
12644
12645 2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12646
12647         * Documentation/user/GNUmakefile (deep-symlinks): remove outimages
12648         target.
12649
12650         * input/typography-demo.ly: new file.
12651
12652 2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
12653
12654         * Documentation/user/global.itely (File structure): Add markup blocks
12655         to toplevel expressions.
12656         (Multiple movements, Creating titles): Add markup blocks.
12657
12658         * lily/stencil-scheme.cc: Use "libc-extension.hh" (WAS:
12659         <libc-extension.hh>).
12660
12661         * lily/accidental.cc (accurate_boxes): Compile fix: 1.51 was broken.
12662
12663         * flower
12664         * lily
12665         * kpath-guile: Nitpick run: buildscripts/fixcc.py.
12666
12667 2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12668
12669         * lily/accidental.cc: special bboxes for natural. 
12670
12671         * mf/feta-toevallig.mf: make stems heavier.
12672
12673         * lily/dynamic-text-spanner.cc (print): add bound padding for edge
12674         texts as well.
12675
12676         * mf/feta-klef.mf: revise. 
12677
12678         * mf/feta-schrift.mf: make thinning of accent less pronounced.
12679
12680         * mf/feta-klef.mf: add rounded curve at top. 
12681         make thinnib a little heavier.
12682
12683 2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
12684
12685         * lily/parser.yy (book_body): Oops, allow \markup in \book too.
12686
12687         * buildscripts/fixcc.py: New file.
12688
12689         * input/regression/utf8.ly: Update Debian font description.
12690
12691 2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
12692
12693         * stepmake/aclocal.m4: Fix test.
12694
12695 2005-03-09  Graham Percival  <gperlist@shaw.ca>
12696
12697         * Documentation/user/invoking.itely: added Sebastino Vigna's
12698         docs for the --jail option.
12699
12700 2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12701
12702         * lily/stem.cc (print): only produce stemlets if there are no
12703         noteheads on this stem.
12704
12705         * lily/note-spacing.cc (stem_dir_correction): robustness fix:
12706         don't crash on stemlet (visible stem without heads).
12707
12708         * scm/define-grobs.scm (all-grob-descriptions): junk LeftEdge for
12709         unbroken situations. 
12710
12711         * scm/output-lib.scm (center-invisible): new function.
12712
12713         * lily/spacing-loose-columns.cc (set_loose_columns): use spacing
12714         wishes to determine loose column space.
12715
12716         * lily/font-config.cc (init_fontconfig): add
12717         fonts/{otf,type1,cff}  to path.
12718
12719         * lily/main.cc (setup_paths): add fonts/{otf,svg,tfm,cff} to path
12720
12721         * mf/GNUmakefile (Module): install all fonts under otf/
12722
12723         * scm/framework-ps.scm (Module): read fonts from fonts/extension,
12724         replace /fonts/otf/ by /ps/ 
12725
12726         
12727 2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
12728
12729         * lily/paper-book.cc (classic_output): Reinstate header_0_ hack.
12730
12731         * lily/book.cc (process): Oops, add score_.header_.
12732
12733         * lily/paper-book.cc: Fold hearders, score and texts into scores_.
12734
12735         * lily/parser.yy: Handle toplevel and book texts as score.
12736
12737         * scm/page-layout.scm (default-page-make-stencil):
12738         Bugfix: (page-properties rename.
12739
12740         * scm/backend-library.scm (ly:system): Typo.
12741
12742 2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12743
12744         * stepmake/stepmake/executable-targets.make (installexe): don't
12745         strip installed executables
12746
12747         * lily/font-select.cc (get_font_by_design_size): revert
12748         pango_description_string as well.
12749
12750         * lily/system.cc (set_loose_columns): put loose column just left
12751         of next column.
12752
12753         * lily/include/group-interface.hh (extract_grob_array): rename
12754         from Pointer_group_interface__extract_grobs
12755
12756         * input/regression/ledger-line-minimum.ly (texidoc): new file.
12757
12758         * lily/ledger-line-spanner.cc (set_spacing_rods): new
12759         function. Keep ledgered note heads at a minimum distance.
12760         Introduce minimum-length-fraction
12761         (print): introduce length-fraction property.
12762
12763 2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12764
12765         * tex/GNUmakefile: remove latin1.enc rules.
12766
12767 2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
12768
12769         * scm/titling.scm: Typo.
12770
12771         * input/regression/score-text.ly: Really add.
12772
12773         * lily/score.cc: Bugfixes for SCM header_ and texts_ members.
12774
12775 2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12776
12777         * lily/open-type-font-scheme.cc:  new file.
12778
12779 2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
12780
12781         * scm/titling.scm (layout-extract-page-properties): Rename from
12782         page-properties.  Update callers.
12783
12784         * lily/lexer.ll (Lily_lexer):
12785         * lily/parser.yy: Junk lyric_markup state.
12786
12787         * Documentation/topdocs/NEWS.tely (Top): Mention markup text feature.
12788
12789         * scripts/lilypond-book.py (PREAMBLE_LY): toplevel-music-handler:
12790         Add texts parameter.
12791
12792 2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
12793
12794         * lily/lexer.ll (lyric_markup): New mode.
12795         (Lily_lexer::push_lyric_markup_state): New method.
12796         (MARKUPCOMMAND): Markup during lyric mode returns LYRIC_MARKUP.
12797
12798         * lily/parser.yy (book_body):
12799         (toplevel_expression): Grok \markup texts.
12800
12801         * lily/score-scheme.cc (ly:music-scorify): 
12802         * scm/lily-library.scm (collect-music-for-book): Take texts
12803         parameter.
12804
12805         * lily/score.cc (texts_): New member.
12806
12807         * lily/paper-book.cc (systems): Format score texts.
12808
12809         * score-text.ly: New file.
12810
12811         * ttftool/SConscript:
12812         * kpath-guile/SConscript: New file.
12813
12814         * lily/SConscript:
12815         * SConstruct: Update.
12816
12817 2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12818
12819         * VERSION (PACKAGE_NAME): release 2.5.14
12820
12821 2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
12822
12823         * lily/main.cc: Add dummy xgettext markers.
12824
12825 2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12826
12827         * make/lilypond.fedora.spec.in (Requires): scrap kpathsea/tex
12828         requirements
12829
12830         * stepmake/aclocal.m4: check dynamic link, by checking if kpathsea
12831         executable is < 40k
12832
12833         * lily/main.cc (setup_paths): remove tfm1 tfm2 tfm3 include path
12834         hack.
12835
12836 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12837
12838         * flower/libc-extension.cc:
12839         * flower/include/libc-extension.hh: [Open]BSD simply cast
12840         cookie/funopen declarations.
12841
12842         * stepmake/aclocal.m4: Check for libkpathsea.so.
12843
12844         * kpath-guile/kpath.c (ly_kpathsea_expand_variable): Use
12845         dl_kpse_find_file.
12846
12847 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12848
12849         * kpath-guile/kpath.c (open_library): dlopen libkpathsea.so
12850         (open_library): alternative for static library.
12851
12852 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12853
12854         * configure.in: Set TTFTOOL_ENDIAN iso global CFLAGS.
12855
12856         * ttftool/GNUmakefile (MODULE_CFLAGS): Add $(TTFTOOL_ENDIAN).
12857
12858         Drop run-time dependency on teTeX.
12859
12860         * lily/kpath.cc (initialize_kpathsea): dlopen libkpathsea.
12861
12862         * stepmake/aclocal.m4 (STEPMAKE_KPATHSEA): Do not include
12863         KPATHSEA_LIBS in LIBS.
12864         (STEPMAKE_DLOPEN): New function.
12865
12866         * lily/font-config.cc (init_fontconfig): Use dir for directory,
12867         not path.
12868
12869         * flower/file-path.cc (directories): Rename from paths, as this
12870         return an array of directories (a single path).
12871
12872 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12873
12874         * lily/GNUmakefile (MODULE_LIBS): link with kpath-guile
12875
12876         * lily/all-font-metrics.cc (kpathsea_find_file): wrapper around
12877         new ly:kpathsea-find-file
12878
12879         * kpath-guile/kpath.c: new file. Put kpath bindings in lib.
12880
12881         * kpath-guile/GNUmakefile: new file
12882
12883         * buildscripts/gen-emmentaler-scripts.py (i): generate
12884         emmentaler-X.fontname as well.
12885
12886         * buildscripts/ps-embed-cff.py: new script
12887
12888         * scm/lily-library.scm: remove ps-embed-cff.
12889
12890         * scm/framework-ps.scm (write-preamble): don't use kpathsea for
12891         font loading. 
12892
12893         * scm/font.scm (add-music-fonts): load dynamics/numbers through
12894         fontconfig as well.
12895
12896         * lily/font-config.cc (init_fontconfig): add cff/ too.
12897
12898         * ly/generate-embedded-cff.ly: capitalize.
12899
12900         * lily/pango-select.cc (select_pango_font): use ::find_pango_font,
12901         so as to register the pango font.
12902
12903         * lily/font-config.cc (init_fontconfig): add
12904         prefix/{otf,type1,mf/out} to fontconfig path.
12905
12906         * lily/main.cc: only look at one prefix directory, LILYPONDPREFIX
12907         overrides all. 
12908
12909         * configure.in (gui_b): remove ec mftrace check
12910
12911         * config.hh.in: use lilypond-Major.Minor as data directory.
12912
12913         * scm/framework-ps.scm (dump-page): use output-units for landscape.
12914
12915         * buildscripts/gen-emmentaler-scripts.py (i): lower case file
12916         name.
12917
12918 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12919
12920         * lily/main.cc (do_chroot_jail): Small cleanups.  Avoid constant
12921         error messages.
12922
12923         * flower/libc-extension.cc:
12924         * flower/include/libc-extension.hh: [Open]BSD fixes for
12925         cookie/funopen declarations.
12926
12927 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12928
12929         * buildscripts/gen-emmentaler-scripts.py (outdir): capitalize
12930         emmentaler.
12931
12932         * lily/score-engraver.cc (initialize): remove check for ecrm10 /
12933         lcrm10.
12934
12935         * scm/define-markup-commands.scm (fontsize): new markup
12936         command. Also set baseline-skip
12937
12938 2005-03-06 Sebastiano Vigna <vigna@dsi.unimi.it>.
12939         
12940         * lily/main.cc (do_chroot_jail): paranoia security for webserver
12941         use.
12942
12943 2005-03-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12944
12945         * stepmake/bin/add-html-footer.py (do_file): make wiki link optional.
12946
12947         * lily/pdf.cc: remove PDF related files
12948
12949 2005-03-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12950
12951         * ly/deutsch.ly: add quarter tones, patch by Arno Waschk.
12952         <hamamatsu@gmx.de>
12953
12954 2005-03-05  Graham Percival  <gperlist@shaw.ca>
12955
12956         * Documentation/user/advanced-notation.itely: first draft
12957         of reorg done.
12958
12959         * Documentation/user/global.itely: fixed (sub)section
12960         bits of MIDI.
12961
12962 2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
12963
12964         * cygwin/mknetrel (extras): Bufix (Bertalan).
12965
12966         * Documentation/user/basic-notation.itely (Chords): @ref fix.
12967         * Documentation/user/instrument-notation.itely (Introducing chord
12968         names): Compile fix: must have unique name.
12969
12970 2005-03-02  Graham Percival  <gperlist@shaw.ca>
12971
12972         * Documentation/user/instrument-notation.itely: reorg.
12973
12974 2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
12975
12976         * scm/output-gnome.scm:
12977         * scm/output-svg.scm: Fix font scaling.
12978
12979 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
12980
12981         * ly/titling-init.ly (tagline): Use Engraving.  Add comment about
12982         what link to use best.
12983
12984         * Documentation/user/instrument-notation.itely (Ancient accidentals): 
12985         * Documentation/user/tutorial.itely (Automatic and manual beams):
12986         Fix @ref.
12987
12988         * lily/tweak-registration.cc (replace_grob_tweak): New function.
12989         * lily/tweak-registration-scheme.cc (LY_DEFINE): Wrap it.
12990         * scm/framework-gnome.scm (tweak): Use it.
12991
12992 2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12993
12994         * Documentation/topdocs/NEWS.tely (Top): elucidate GS problem.
12995
12996         * scm/output-ps.scm (white-text): reinstate white-text
12997
12998 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
12999
13000         * scm/output-ps.scm (offset-add): Remove.
13001
13002         * scm/lily-library.scm (offset-flip-y): New function.
13003         * scm/framework-gnome.scm (tweak): Use it.
13004
13005         * scm/output-gnome.scm (grob-cause): Add parameter.
13006
13007         * scm/lily.scm (ly:all-stencil-expressions): Add url-link.
13008         * scm/output-ps.scm (url-link): Move.
13009         (white-text): Warn user about brokenness.
13010
13011         * Documentation/topdocs/NEWS.tely: Be more accurate and respectful
13012         wrt ghostscript.
13013
13014 2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13015
13016         * lily/slash-repeat-engraver.cc (try_music): always make slashes
13017         if body length smaller than measure length.
13018
13019         * scm/define-markup-commands.scm (with-url): oops. use Y extent
13020         for Y.
13021
13022         * ly/titling-init.ly (tagline): put default tagline in \paper
13023
13024 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13025
13026         * lily/kpath.cc: 
13027         * lily/pdf.cc (Pdf_file): Use more generic error messages.
13028
13029         * scm/lily-library.scm (version-not-seen-message): New function.
13030         * ly/init.ly: Use it.
13031
13032         * scm/page-layout.scm (ly:optimal-page-breaks): Display page
13033         breaks as progess.
13034
13035         * scripts/lilypond-book.py (do_process_cmd): Do not lump
13036         whitespace with l10n message.
13037
13038         * scm/framework-tex.scm (convert-to-ps):
13039         (convert-to-dvi): Do not use overly specific l10n messages.
13040
13041         * ly/titling-init.ly (bookTitleMarkup): Add baseline skips from 2.4.
13042
13043         * tex/GNUmakefile $(outdir)/latin1.enc: Build fix:
13044         merge stderr with stdout.  
13045
13046 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13047
13048         * flower/libc-extension.cc: Tested BSD compile fix (Matthias
13049         Neeracher).
13050
13051 2005-02-29  Graham Percival  <gperlist@shaw.ca>
13052
13053         * Documentation/user/instrument-notation.teily: moved
13054         \arpeggio to Basic.
13055
13056         * Documentation/user/advanced-notation.itely: Articulation to
13057         Basic, a bunch of stuff from Basic moved to Advanced.
13058
13059         * Documentation/user/basic.itely: swapped various sections,
13060         reorganized Basic.
13061
13062 2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
13063
13064         * flower/memory-stream.cc: 
13065         * flower/libc-extension.cc: Remove obsolete #undefs.
13066
13067         * flower/include/libc-extension.hh: Bugfix for BSD, place #ifdef
13068         more carefully.
13069
13070 2005-02-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13071
13072         * make/lilypond.fedora.spec.in (Requires): add GS 8.15 as
13073         dependency.
13074
13075         * VERSION (PACKAGE_NAME): release 2.5.13
13076
13077         * GNUmakefile.in (web-ext): don't ship ps.gz
13078
13079         * tex/GNUmakefile ($(outdir)/latin1.enc): redirect stderr to
13080         stdout
13081
13082 2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
13083
13084         * lily/general-scheme.cc (LY_DEFINE): Compile fix for systems
13085         without libintl.  Now it compiles too.
13086
13087 2005-02-28  Graham Percival  <gperlist@shaw.ca>
13088
13089         * Documentation/user/basic-notation.itely,
13090         instument-notation.itely, advanced-notation.itely:
13091         split up contents of notation.itely.
13092
13093         * Documentation/user/notation.itely: file removed.
13094
13095         * Documentation/user/invoking.itely, converters.itely:
13096         moved convert-ly info to invoking.itely.
13097
13098         * Documentation/user/global.itely, changing-defaults.itely,
13099         sound-output.itexi: moved global settings, file layout, and
13100         sound into global.itely.
13101
13102         * Documentation/user/sound-output.itexi: file removed.
13103
13104         * Documentation/user/lilypond.tely: removed links to
13105         notation.itely and sound.itely.
13106
13107 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13108
13109         * scm/output-ps.scm (grob-cause): only do mark_URI if non-empty.
13110
13111         * scm/framework-ps.scm (write-preamble): remove pdf-viewer code.
13112  
13113         * THANKS: add sponsor.
13114
13115         * scm/define-markup-commands.scm (with-url): new markup command.
13116
13117         * scm/page-layout.scm (TAGLINE): add www.lilypond.org with URL to
13118         tagline.
13119         
13120         * scm/output-tex.scm (url-link): stub.
13121
13122         * scm/output-ps.scm (url-link): new function.
13123
13124         * lily/lily-parser-scheme.cc (LY_DEFINE): deprecate
13125         ly:set-point-and-click
13126
13127 2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
13128
13129         * ps/music-drawing-routines.ps (mark_file_line): Switch Action
13130         based on pdf-viewer setting.
13131
13132         * scm/framework-ps.scm (write-preamble): Find and set preferred
13133         pdf-viewer.
13134
13135 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13136
13137         * Documentation/user/point-and-click.itely: update for PDF point &
13138         click.
13139
13140         * scripts/lilypond-pdfpc-helper.py: new file. Invoke different
13141         editors based on EDITOR setting.
13142
13143 2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
13144
13145         * scm/*: Oops, more grand 2005 replace bits.
13146
13147 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13148
13149         * ps/music-drawing-routines.ps: new routine: insert PDF mark
13150
13151         * scm/output-ps.scm (grob-cause): point & click support for
13152         PostScript
13153
13154 2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13155
13156         * lily/input-scheme.cc (LY_DEFINE): rename to
13157         ly:input-file-line-column
13158
13159 2005-02-26  Graham Percival  <gperlist@shaw.ca>
13160
13161         * Documentation/user/examples.itely: small fix from Steve Doonan.
13162
13163         * Documentation/user/scheme-tutorial.itely: small fix from Steve Doonan.
13164
13165         * THANKS: added Yuval Harel.
13166
13167         * Documentation/user/{various}: inserted two spaces after a period.
13168
13169         * Documentation/user/lilypond.tely: added framework for reorg.
13170
13171         * Documentation/user/basic-notation.itely, instrument-notation.itely,
13172         advanced-notation.itely, global.itely: new files, placeholder for
13173         future reorg.
13174
13175 2005-02-26 Yuval Harel  <yuvalh@hotpop.com>
13176
13177         * Documentation/user/notation.itely: revamped Polyphony section
13178         
13179 2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13180
13181         * Documentation/user/lilypond-book.itely (Music fragment options):
13182         doc fontload.
13183
13184         * Documentation/user/changing-defaults.itely (Text encoding): add
13185         fontload option to utf8 include
13186
13187         * scripts/lilypond-book.py (compose_ly): add fontload option
13188
13189         * scm/framework-eps.scm (dump-stencils-as-EPSes): add
13190         force-eps-font-include option.
13191
13192         * ly/chord-modifiers-init.ly (blackTriangleMarkup): reinstate
13193         black triangle
13194
13195         * Documentation/user/invoking.itely (Editor support): remove
13196         lilypond-latex section.
13197
13198         * scripts/lilypond-latex.py (Module): remove script.
13199
13200         * cygwin/lily-wins.py (stat): write to .lylog, so as not to
13201         overwrite .log. 
13202
13203         * lily/main.cc: remove -m, --no-layout
13204
13205         * flower/include/libc-extension.hh: add ALIAS_FILE_TO_FILECOOKIE
13206         to define. We don't want to override fprintf everywhere.
13207
13208 2005-02-26  Jan Nieuwenhuizen  <janneke@gnu.org>
13209
13210         * cygwin/lilypond.hint: 
13211         * cygwin/README.in: Update dependencies.
13212
13213         * stepmake/aclocal.m4 (STEPMAKE_PANGO, STEPMAKE_PANGO_FT2):
13214         Bugfix: do not pollute CPPFLAGS, LIBS.
13215
13216         * cygwin/mknetrel (extras): Cross compile fixes.
13217
13218         * ttftool/util.c: 
13219         * ttftool/ttfps.c: 
13220         * ttftool/ps.c: #include libc-extension.hh
13221
13222         * flower/include/libc-extension.hh:
13223         * flower/libc-extension.cc (fopencookie)[!HAVE_FOPENCOOKIE]: Add
13224         wrapper using funopen.
13225         (fopencookie, handle_cookie_io_fclose, handle_cookie_io_fprintf,
13226         handle_cookie_io_fprintf): Add wrappers catching Memory_out_stream.
13227
13228         * config.hh.in:
13229         * configure.in (AC_CHECK_FUNCS): Add fopencookie, funopen.
13230         (AC_CHECK_HEADERS): Add libio.h
13231
13232         * scripts/convert-ly.py: Uniformize, internationalize.
13233         (2.5.2): Remove fatal encoding rule.
13234         (2.5.13): Handle latin1 encoding gracefully.
13235
13236 2005-02-23  Jan Nieuwenhuizen  <janneke@gnu.org>
13237
13238         * HACKING: Fix line breaks.
13239
13240 2005-02-23  Werner Lemberg  <wl@gnu.org>
13241
13242         * mf/graycx.mf, mf/graylj.mf: Removed.  Any decent TeX distribution
13243         contains those two files.
13244
13245 2005-02-21  Werner Lemberg  <wl@gnu.org>
13246
13247         * mf/feta-nummer-code.mf ("Numeral 5"): Include intersection point
13248         to improve overlap removal process.
13249
13250         * mf/feta-slag.mf (draw_trillelement): Add parameter to control
13251         left and right ending.  This ensures better overlapping.
13252         Update all callers.
13253         ("lineprall"): Don't use draw_gridline to get better overlapping.
13254
13255 2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13256
13257         * scm/lily-library.scm (ps-embed-cff): add \n after EndResource
13258
13259         * Documentation/topdocs/NEWS.tely (Top): oops.
13260
13261 2005-02-21  Pedro Kroger  <kroeger@pedrokroeger.net>
13262
13263         * HACKING: new file.
13264
13265         * input/regression/utf8.ly (portuguese): added a portuguese example
13266         to show latin1 accents.
13267
13268 2005-02-21  Pal Benko  <benkop@freestart.hu>
13269
13270         * lily/mensural-ligature-engraver.cc:
13271         * lily/mensural-ligature.cc:
13272         * lily/include/mensural-ligature.hh: new algorithm implemented
13273
13274         * scm/define-grob-properties.scm: join-left killed (add-join may
13275         be used); join-left-amount changed to join-right-amount
13276
13277 2005-02-21  Graham Percival  <gperlist@shaw.ca>
13278
13279         * Documentation/user/notation.itely: small but urgent fix.
13280
13281 2005-02-21  Jürgen Reuter  <reuter@ipd.uka.de>
13282
13283         * lily/duration-scheme.cc: bugfix: correct parameters to
13284         SCM_ASSERT_TYPE.
13285
13286         * THANKS: added Pal.
13287
13288         * Documentation/user/notation.itely: bugfix: unTeXified
13289         $\\backslash$.  Bugfix: yet another glyph renaming victim:
13290         "timesig.*x/y" -> "timesig.*xy".
13291
13292 2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13293         
13294         * VERSION (PACKAGE_NAME): release 2.5.12
13295
13296 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13297
13298         * ly/engraver-init.ly: set tieWaitForNote to #t by default
13299
13300         * configure.in (gui_b): bump GUILE requirement to 1.6.5 
13301
13302         * Documentation/topdocs/NEWS.tely: add inputfileref macro.
13303
13304         * scm/framework-ps.scm (supplies-or-needs): uniq font name list.
13305
13306 2005-02-20  Jan Nieuwenhuizen  <janneke@gnu.org>
13307
13308         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly: recode
13309         latin1..utf-8.
13310
13311         * input/regression/stanza-number.ly:
13312         * input/regression/utf8.ly (hebrew): Use addlyrics.  Update.
13313
13314         * lily/tie-engraver.cc (acknowledge_grob): Compile fix.
13315
13316 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13317
13318         * Documentation/topdocs/NEWS.tely (Top): only mention 2.5
13319         NEWS. Refer to website for older news.  
13320
13321         * stepmake/bin/add-html-footer.py (i18n): don't strip .PNG /
13322         .HTML. This should be done for specific servers only.
13323
13324         * Documentation/topdocs/NEWS.tely (Top): move to .tely. Add some
13325         .ly image examples.
13326
13327         * scm/define-grobs.scm (all-grob-descriptions): put ledger lines
13328         in layer 0 too.
13329
13330         * scm/define-context-properties.scm
13331         (all-user-translation-properties): add tieWaitForNote
13332
13333         * scm/define-grobs.scm (all-grob-descriptions): add
13334         Tie_column::before_line_breaking
13335
13336         * lily/tie.cc (get_column_rank): new function
13337
13338         * lily/tie-column.cc (before_line_breaking): new function.
13339         (werner_directions): take into account ties that start on
13340         different columns.  
13341
13342         * lily/score-engraver.cc (set_columns): move add_column() so we
13343         have column rank available.
13344
13345         * lily/tie.cc (get_column_rank): new function.
13346
13347         * input/regression/utf8.ly (japanese): add japanese lyrics.
13348
13349         * lily/pfb.cc (LY_DEFINE): ly:ttf->pfa, new function.
13350
13351         * THANKS: add Steve D
13352
13353         * ttftool/*.c: add TTF -> Type42 conversion library. Based on
13354         Public Domain work by Juliusz Chroboczek <jch@pps.jussieu.fr>
13355
13356 2005-02-20  Tatsuya Ono  <tats_ono@infoseek.jp>
13357
13358         * mf/parmesan-heads.mf: "0harmonic" -> "s0harmonic"
13359         to show harmonic notes
13360         * scm/define-markup-commands.scm: in \markup-by-number
13361         "dots-dot" -> "dots.dot" to show dotted notes
13362
13363 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13364
13365         * flower/include/memory-stream.hh (class Memory_out_stream): new file.
13366
13367         * flower/memory-stream.cc (writer): new file.
13368
13369         * configure.in: add endian test.
13370
13371 2005-02-19  Jürgen Reuter  <reuter@ipd.uka.de>
13372
13373         * Documentation/user/examples.itely: small
13374         simplification/beautification
13375
13376         * Documentation/user/notation.ietly: bugfix: fixed many artefacts
13377         from the "x-y-z"->"x.y.z" renaming of glyphs throughout the whole
13378         notation manual.
13379
13380         * lily/mensural-ligature.cc: bugfix: another few victims of the
13381         "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
13382
13383         * ly/gregorian-init.ly: commit some experimental code for hi-level
13384         ligature input language lying around here for several months.
13385
13386         * lily/mensural-ligature-engraver.cc: bugfix: another victim of
13387         the "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
13388
13389         * lily/vaticana-ligature-engraver.cc: bugfix: another few
13390         "x-y-z"->"x.y.s-z" fixes.
13391
13392 2005-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13393
13394         * scm/framework-pdf.scm (scm): new file
13395
13396         * lily/include/pdf.hh (class Pdf_file): new file.
13397
13398         * lily/pdf.cc (write_trailer): new file.
13399
13400 2005-02-18  Erlend Aasland  <erlenda@gmail.com>
13401
13402         * input/regression/color.ly: new file
13403
13404         * lily/stencil.cc (interpret_stencil_expression):
13405         when a color expression is encountered: save current color,
13406         process the rest of the expression, and restore previous color.
13407
13408         * lily/system.cc (get_line): check all grobs for color property and
13409         prepare the stencil scheme expressions for further processing.
13410         Fix layer-loop.
13411
13412         * scm/define-grob-properties.scm: introduce the color property.
13413
13414         * scm/output-lib.scm: color helper functions.
13415
13416         * scm/output-ps.scm: introduce setcolor/resetcolor.
13417
13418 2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
13419
13420         * ly/*.ly, input/regression/*.ly: Added missing \version
13421         statements in some files.
13422
13423 2005-02-15  Graham Percival  <gperlist@shaw.ca>
13424
13425         * Documentation/user/notation.itely: minor editing.
13426
13427         * Documentation/user/converters.itely: updated convert-ly bugs.
13428
13429         * Documentation/user/lilypond-book.itely: add info about using
13430         feta characters in latex.
13431
13432 2005-02-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13433
13434         * scripts/convert-ly.py: new slur dash patch by Bertalan Fodor.
13435
13436 2005-02-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13437
13438         * scm/define-grob-properties.scm (all-user-grob-properties):
13439         removed 'dashed property.
13440
13441 2005-02-13  Nicolas Sceaux  <nicolas.sceaux@free.fr>
13442
13443         * scm/lily.scm (define-safe-public): new macro for defining
13444         variables that can be used in --safe mode. Use it in *.scm
13445         instead of manually setting safe-objects in safe-lily.scm.
13446
13447 2005-02-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13448         
13449         * lily/slur.cc: Slur-dash patch by Bertalan.
13450
13451         * ly/engraver-init.ly (EasyNotation): glyph name dash -> period.
13452
13453         * stepmake/bin/add-html-footer.py (do_file): do i18n only once. 
13454
13455 2005-02-10  Jan Nieuwenhuizen  <janneke@gnu.org>
13456
13457         * stepmake/aclocal.m4: teTeX-3.0 inimf fix.  Comment-out.
13458
13459 2005-02-09  Jan Nieuwenhuizen  <janneke@gnu.org>
13460
13461         * mf/GNUmakefile: teTeX-3.0 install fix.
13462
13463         * Cygwin patch from Bertalan.
13464
13465         * stepmake/stepmake/metafont-rules.make: Remove bashism.
13466
13467 2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
13468
13469         * GNUmakefile.in: 
13470         * SConstruct (symlink): teTeX-3.0 build fix: add map symlink.
13471
13472         * tex/GNUmakefile: teTeX-3.0 fix: install .enc in fonts/enc.  Add
13473         2.0.x compatibility.
13474
13475 2005-02-08  Werner Lemberg  <wl@gnu.org>
13476
13477         * mf/feta-din-code.mf: Format; clean up code.
13478         Replace `---' with `--' plus explicit path directions.
13479         (linethickness#, stafflinethickness#): Remove.
13480         ("dynamic f"): Replace `draw' with `draw_rounded_block'.
13481         ("dynamic s"): Improve shape.
13482         ("dynamic p"): Improve shape.
13483         Replace `draw' with better outline approximation.
13484         ("dynamic r"): Improve shape.
13485         Don't call `fill' and `draw' at the same time.
13486
13487 2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
13488
13489         * SConstruct (symlink):
13490         * GNUmakefile.in ($(builddir)/share/lilypond-force): teTeX-3.0
13491         build fix: add enc symlink.
13492
13493         * lily/general-scheme.cc: Compile fixes: include wchar.h, string.h.
13494
13495         Support for DESTDIR besides prefix=/foo
13496
13497         * vim/GNUmakefile (local-install): Use $(INSTALL) -d iso mkdir.
13498
13499         * stepmake/stepmake/*.make:
13500         * */GNUmakefile:
13501         * GNUmakefile.in: Prepend $(DESTDIR) to installation directory.
13502
13503         * config.make.in (prefix): Remove broken $(DESTDIR) hack.
13504
13505         * stepmake/aclocal.m4: Use %0.f iso %d to quiet gawk < 3.1.4 and
13506         mawk in fontforge (date) test.
13507
13508 2005-02-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13509
13510         * scm/font.scm (make-century-schoolbook-tree): add NCS as
13511         font-family=roman. Add Luxi Sans as sans
13512
13513 2005-02-07  Graham Percival  <gperlist@shaw.ca>
13514
13515         * Documentation/user/notation.itely: add warning about
13516         percent repeats and Voice contexts.
13517
13518         * Documentation/user/lilypond-book.itely: clarified the
13519         necessity of dvips -u arguments.
13520
13521 2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
13522
13523         * THANKS: Added a bunch of bug hunters.
13524
13525 2005-02-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13526
13527         * scm/framework-ps.scm (output-preview-framework): bugfix.
13528
13529         * ly/chord-modifiers-init.ly (ignatzekExceptionMusic): use unicode
13530         o/ for chord modifier..
13531
13532         * lily/general-scheme.cc (LY_DEFINE): new function ly:wide-char->utf-8.
13533
13534         * lily/drum-note-performer.cc:  remove unused (thanks Michael
13535         Welsh Duggan). 
13536
13537 2005-02-06  Jan Nieuwenhuizen  <janneke@gnu.org>
13538
13539         * Documentation/user/changing-defaults.itely (Text encoding): Clarify.
13540
13541         * ly/titling-init.ly: Do not also print intstrument in header on
13542         first page.  Do not print page number on first and only page.
13543
13544 2005-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13545
13546         * input/regression/*.ly: remove old-relative everywhere
13547
13548         * lily/music-sequence.cc (simultaneous_relative_callback): do
13549         what-if analysis on copy, not on original. Fixes old-relative
13550         compatibility.
13551
13552         * scm/backend-library.scm (postscript->png): space before
13553         --verbose.
13554         
13555 2005-02-05  Werner Lemberg  <wl@gnu.org>
13556
13557         * mf/feta-autometric.mf (fet_beginchar): Check whether `feta_group'
13558         is defined.
13559
13560         * mf/feta-alphabet.mf: Define `staffsize#'.
13561         Include `feta-params.mf'.
13562         s/staffheight/design_size/.
13563
13564         * mf/feta-alphabet??.mf: s/staffheight/design_size/.
13565
13566         * mf/feta-alphabet26.mf: Fix a serious bug (design size off by 8pt).
13567
13568         * mf/feta-nummer-code.mf: Reformatted.
13569         (draw_six): Use outline intersection to avoid a self-intersecting
13570         path.
13571         ("Numeral comma"): Fix serious outline glitches.  This slightly
13572         changes the glyph shape.
13573         ("Numeral dash"): Use `draw_rounded_block'.
13574         ("Numeral dot"): Use `drawdot'.
13575         ("Numeral 1"): Assure identical tangent directions for the
13576         intersection points of paths.  The glyph shape improvement is only
13577         visible at very high magnifications.
13578         ("Numeral 2"): Use `solve' macro to make the lower right part of
13579         the glyph outline touch the x axis exactly.  This changes the
13580         glyph shape.
13581         Minor fixes for better overlap removal support.
13582         ("Numeral 4"): Make lefter corner `rounder'.
13583         ("Numeral 5"): Assure identical tangent directions for the
13584         intersection points of paths.  This improves the glyph shape at
13585         high magnifications.
13586         ("Numeral 7"): Use `solve' macro to make the upper right part of
13587         the glyph outline touch the metrics box exactly.  This changes the
13588         glyph shape.
13589         Avoid corner in the upper left part of the glyph (causing a minor
13590         shape change).
13591
13592         * mf/feta-ital-*.mf: Removed.  Unused.
13593
13594 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13595
13596         * VERSION (PATCH_LEVEL): release 2.5.11
13597
13598         * input/regression/fill-line-test.ly: new file.
13599
13600         * buildscripts/gen-emmentaler-scripts.py (i): insert dash in
13601         emmentaler name, eg. emmentaler-23. 
13602
13603 2005-02-04  Christian Hitz  <chhitz@gmx.net>
13604
13605         * scm/scm/define-markup-commands.scm (fill-line): rework for better
13606         alignment with centered texts
13607
13608         * scm/stencil.scm (stack-stencils-padding-list): new function, takes a
13609         list of paddings
13610
13611 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13612
13613         * mf/GNUmakefile ($(outdir)/lilypond.map): add aybabtu to .map file.
13614
13615         * lily/note-column.cc (translate_rests): call flush_extent_cache()
13616         of parents when translating rests. Fixes: c-chord-rest.ly 
13617
13618         * lily/include/dimension-cache.hh (struct Dimension_cache): add
13619         dimension_callback_ member.
13620
13621         * lily/grob.cc (flush_extent_cache): new function. Force recompute
13622         of extents.
13623
13624 2005-02-04  Jan Nieuwenhuizen  <janneke@gnu.org>
13625
13626         * all but lily/*: The grand 2004/2005 replace.
13627
13628 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13629
13630         * lily/*: add space after ,  
13631
13632         * scm/music-functions.scm (has-request-chord): don't use
13633         ly:music-name anywhere. Fixes <<\\>> notation. 
13634
13635         * scm/define-markup-commands.scm (box): use font-size for
13636         padding. Fixes boxed-rehearsal-marks.ly
13637
13638         * lily/parser.yy (assignment_id): allow LYRICS_STRING as
13639         identifier definition too, so foo = \lyrics { ...   } bar = #1
13640         doesn't complain about "bar" being LYRICS_STRING.
13641
13642         * lily/paper-def.cc (find_pango_font): new routine; Store
13643         pango_fonts in hash tab too. This is necessary for retrieving
13644         Pango_fonts::physical_font_tab() later on.
13645  
13646         * lily/pango-font.cc (pango_item_string_stencil): bugfix: don't
13647         crash if psname is null.
13648
13649         * lily/lily-guile.cc (ly_hash2alist): new function
13650
13651         * Documentation/user/changing-defaults.itely (Text encoding):
13652         rewrite. 
13653
13654         * lily/pango-font.cc (physical_font_tab): new member. Store PSname
13655         -> font_filename mapping.
13656
13657         * lily/pango-font-scheme.cc (LY_DEFINE): new file. New function
13658         ly_pango_font_physical_fonts
13659
13660         * scm/framework-ps.scm (supplies-or-needs): extract names from
13661         physical Pango_fonts.
13662
13663         * utf8.ly: new file.
13664
13665 2005-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13666
13667         * Documentation/user/changing-defaults.itely (Page layout): add
13668         doco about systemSeparatorMarkup.
13669
13670         * scm/page-layout.scm (default-page-make-stencil): add-to-page
13671         function.
13672         (default-page-make-stencil): insert system separators.
13673
13674         * scm/define-markup-commands.scm (hcenter): add
13675         (beam): add.
13676
13677 2005-02-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13678
13679         * scm/output-ps.scm (ez-ball): reinstate ez notation.
13680
13681 2005-02-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13682
13683         * lily/main.cc: Spell backend consistently.  Sort options.
13684
13685 2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13686
13687         * scripts/lilypond-book.py (Module): revert @include.
13688         
13689 2005-01-31  Jan Nieuwenhuizen  <janneke@gnu.org>
13690
13691         * scripts/lilypond-book.py: Resurrect HTML links to .ly source.
13692         Bugfix: @include .tex (not .texi).  Small cleanups.
13693
13694         * stepmake/bin/add-html-footer.py (i18n): New function.
13695
13696 2005-01-31  Werner Lemberg  <wl@gnu.org>
13697
13698         * mf/feta-nummer.mf: Removed.  Unused.
13699
13700 2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13701
13702         * lily/ : 2004 -> 2005 s&r
13703
13704         * scm/file-cache.scm (cached-file-contents): add file. Read each
13705         file only once.
13706
13707         * scm/font.scm (add-pango-fonts): change order. Medium weight is
13708         now default.
13709
13710         * VERSION: release 2.5.10
13711         
13712         * mf/GNUmakefile (INSTALLATION_OUT_FILES4): install cff.ps files.
13713
13714         * make/ly-rules.make ($(outdir)/%.texi): detect new EOF marker.
13715
13716         * scm/framework-ps.scm (dump-stencil-as-EPS): robustness: ensure
13717         that both X and Y extents of bbox are non-nil.
13718
13719 2005-01-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13720
13721         * scm/chord-name.scm (alteration->text-accidental-markup): change
13722         - to . 
13723
13724         * scm/output-ps.scm (utf8-string): add utf8-string for completeness.
13725
13726         * scm/framework-ps.scm (dump-stencil-as-EPS): new function
13727
13728         * Documentation/user/invoking.itely (Invoking lilypond): add note
13729         about EPS backend.
13730
13731         * scm/framework-eps.scm: new file: create per-system/per-page EPS
13732         files for inclusion in lilypond-book document.
13733
13734         * input/tutorial/lbook-latex-test.tex: rename from lilbook.tex
13735
13736         * input/tutorial/lbook-texi-test.texi: new file.
13737
13738         * scm/safe-lily.scm (safe-objects): add
13739         {begin,end}-of-line-(in)?visible as safe.
13740  
13741 2005-01-30  Graham Percival  <gperlist@shaw.ca>
13742
13743         * Documentation/user/changing-defaults.itely: fixed example
13744         of (dynamics).
13745
13746 2005-01-29  Graham Percival  <gperlist@shaw.ca>
13747
13748         * lily/main.cc: fix info about -o=FILE.
13749
13750 2005-01-29  Werner Lemberg  <wl@gnu.org>
13751
13752         * mf/feta-toevallig.mf ("Natural"): Completely changed the
13753         construction to assure smooth transition from straight to curved
13754         lines.
13755
13756 2005-01-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13757
13758         * lily/stencil.cc (moved_to_edge): don't halt on adding empty
13759         stencils.
13760
13761         * ps/lilyponddefs.ps: add start-page, start-system doesn't
13762         translate to top of page. Fixes alignment problems of
13763         lilypond-generated EPS files.
13764
13765 2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13766
13767         * scm/part-combiner.scm (analyse-spanner-states): trigger on
13768         crescendo-end as well, since Decrescendo maybe ended with Stop
13769         Crescendo.). Fixes: partcombine-diminuendo.ly
13770
13771         * scm/script.scm (default-script-alist): swap portato symbols.
13772
13773         * lily/instrument-name-engraver.cc (acknowledge_grob): typo.
13774
13775         * lily/paper-outputter-scheme.cc (LY_DEFINE):
13776         ly:outputter-port. New function.
13777
13778         * scm/framework-ps.scm (output-classic-framework): dump a
13779         -systems.texi too
13780         (output-classic-framework): dump multiple systems on an "infinite"
13781         page EPS including fonts. 
13782
13783         * scripts/lilypond-book.py (Lilypond_snippet.ly_is_outdated): use
13784         .eps files for both texi and tex formats. Use PNG coming from
13785         lilypond.
13786         
13787 2005-01-28  Graham Percival  <gperlist@shaw.ca>
13788
13789         * Docuemntation/user/invoking.itely: fix info about -o=FILE.
13790
13791         * scripts/lilypond-latex.py: fix info about -o=FILE.
13792
13793 2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13794
13795         * ly/generate-embedded-cff.ly: write .cff.ps files.
13796
13797         * mf/GNUmakefile ($(outdir)/lilypond.map): add .cff.ps to .map file.
13798
13799         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
13800         $(outdir)/%.svg $(outdir)/%.pfa): remove --simplify
13801
13802 2005-01-28  Jan Nieuwenhuizen  <janneke@gnu.org>
13803
13804         * lily/include/guile-compatibility.hh (SCM_VECTOR_P): Compile fix.
13805
13806 2005-01-28  Werner Lemberg  <wl@gnu.org>
13807
13808         * mf/feta-macros.mf (soft_start_penstroke, soft_end_penstroke): New
13809         macros.
13810         (draw_bulb): Improved.
13811
13812         * mf/feta-pendaal.mf ("Pedal asterisk"): Remove workaround for
13813         metapost bug.
13814         (draw_pedal_P): Use soft_end_penstroke.
13815         (draw_pedal_d): Use soft_start_penstroke.
13816
13817         * mf/feta-schrift.mf ("Trill (`tr')"): Remove redundant point in
13818         path.
13819         ("Varied Coda"): Move some points to avoid fontforge warnings.  This
13820         doesn't change the glyph shape.
13821
13822         * mf/feta-accordion.mf ("accOldEE"): Draw glyph differently (without
13823         changing the shape) to avoid fontforge warnings.
13824
13825         * mf/feta-klef.mf (draw_tab_T, draw_tab_A, draw_tab_B): Use
13826         soft_end_penstroke and fix glyph shape.
13827
13828 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13829
13830         * lily/*.cc: Scheme deprecation of SCM_VECTOR_* 
13831
13832 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13833
13834         * scm/define-markup-commands.scm (line): filter out empty stencils
13835         from line command.
13836
13837         * lily/stencil-scheme.cc (LY_DEFINE): only allow finite real
13838         amount.
13839
13840 2005-01-27  Graham Percival  <gperlist@shaw.ca>
13841
13842         * Documentation/user/notation.itely: added info about what
13843         \voiceFoo does.  Also rewrote warning about marks at
13844         a line break.
13845
13846         * Documentation/user/changing-defaults.itely: added info
13847         about putting dynamics in parenthesis and brackets.
13848
13849 2005-01-27  Werner Lemberg  <wl@gnu.org>
13850
13851         * mf/feta-schrift.mf ("Trill (`tr')"): Fix typo.
13852
13853 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13854
13855         * mf/feta-schrift.mf: reverse u and d portato. Fixes:
13856         portato-direction.ly
13857
13858         * lily/beam.cc (consider_auto_knees): add beam height to
13859         threshold. Fixes: knee-multiple-beam.ly
13860
13861         * lily/instrument-name-engraver.cc (acknowledge_grob): also ignore
13862         pedal line spanners. Fixes: instrument-center-pedal.ly
13863
13864         * lily/auto-beam-engraver.cc (acknowledge_grob): stop beam
13865         if encountering barline. Fixes: auto-beam-repeat.ly
13866
13867 2005-01-26  Werner Lemberg  <wl@gnu.org>
13868
13869         * mf/feta-slag.mf (draw_trillelement): Fix shape to get clean
13870         overlapping.
13871
13872         * mf/feta-toevallig.mf (draw_meta_sharp): Fix shape to avoid curves
13873         with inflections for the 1/2 sharp glyph.
13874
13875         * mf/feta-schrift.mf ("Trill (`tr')"): Fix start position of
13876         connection between `t' and `r'.
13877         Unify bulb with the rest of `r' to avoid grazing outlines which
13878         confuses the overlap removal algorithm of fontforge.
13879
13880         * mf/feta-bolletjes.mf (draw_slash): Fix shape to avoid curves with
13881         inflections.
13882         (draw_cross): Fix shape to have uniform thickness in corners.
13883
13884         * mf/feta-pendaal.mf (draw_pedal_P): Break shape into smaller pieces
13885         to avoid an uneven number of self-intersections; this confuses
13886         fontforge.
13887         Fix a slight bug in the shape at left bottom (which is visible only
13888         at high magnifications).
13889         `Center' the stem horizontally to avoid overlapping.
13890
13891 2005-01-24  Werner Lemberg  <wl@gnu.org>
13892
13893         * mf/feta-autometric.mf (fet_beginfont): Set font_coding_scheme
13894         to `asis'.
13895         (fet_begingroup): Save group name in string `feta_group'.
13896         (fet_endgroup): Updated.
13897         (fet_beginchar): Emit `glyph_name' special for mf2pt1.
13898
13899         * mf/feta-bolletjes.mf: s/p/pat/ for paths.
13900
13901         * mf/feta-pendaal.mf ("Pedal asterisk"): Add workaround for bug
13902         in metapost.
13903
13904 2005-01-24  Graham Percival  <gperlist@shaw.ca>
13905
13906         * Documentation/user/notation.itely: really minor editing.
13907
13908 2005-01-22  Graham Percival  <gperlist@shaw.ca>
13909
13910         * Documentation/user/examples.itely: minor editing.
13911
13912         * Documentation/user/changing-defaults.itely: minor editing.
13913
13914         * Documentation/user/notation.itely: clarified info on polyphony
13915         and \addlyrics.
13916
13917 2005-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
13918
13919         * scm/output-gnome.scm: 
13920         * scm/output-svg.scm:
13921         * scm/lily-library.scm (font-name-style): Update font name
13922         kludging for fontconfig use.
13923
13924 2005-01-20  Erlend Aasland  <erlenda@gmail.com>
13925
13926         * scm/define-markup-commands.scm: Document right-align and
13927         larger markup commands. Remove "TODO" from the topmost comment
13928         "each markup function should have a doc string." More consistent
13929         use of new-lines.
13930
13931 2005-01-22  Graham Percival  <gperlist@shaw.ca>
13932
13933         * Documentation/user/changing-defaults: removed info about
13934         copyright symbol, since it's likely to change soon.
13935         Added info about betweensystemspace.
13936
13937         * Documentation/user/notation.itely: minor fixes.
13938
13939         * Documentation/user/lilypond.tely,
13940         Documentation/user/music-glossary.tely: changed copyright
13941         date to 2005 instead of 2004.
13942
13943         * input/test/volta-chord-names.ly: added old example back.
13944
13945 2005-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13946
13947         * mf/feta-beugel.mf: use design size 20 (not 15).
13948
13949         * mf/aybabtu.pe.in: scale brace fonts to design sizes.
13950         change name to aybabtu completely
13951
13952 2005-01-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13953
13954         * buildscripts/gen-emmentaler-scripts.py (outdir): add
13955         design_size to fontname
13956
13957 2005-01-19  Werner Lemberg  <wl@gnu.org>
13958
13959         * mf/feta-accordion.mf, mf/feta-klef.mf, mf/feta-pendaal.mf,
13960         mf/feta-schrift.mf: s/p/pat/ if a path variable.
13961
13962         * mf/feta-autometric.mf (set_char_box): Add code which emits
13963         specials for mf2pt1 if run with metapost.
13964         (to_bp): New macro for mf2pt1.
13965
13966 2005-01-18  Graham Percival  <gperlist@shaw.ca>
13967
13968         * Documentation/user/changing-defaults: added info on
13969         creating a copyright symbol.
13970
13971 2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13972
13973         * VERSION: release 2.5.9
13974         
13975 2005-01-18  Erlend Aasland  <erlenda@gmail.com>
13976
13977         * scm/auto-beam.scm: Simplify score-override-auto-beam-setting
13978
13979         * Documentation/user/notation.itely: Document
13980         score-override-auto-beam-setting Fix documentation for
13981         revert-auto-beam-setting.
13982
13983 2005-01-18  Werner Lemberg  <wl@gnu.org>
13984
13985         * scm/framework-ps.scm (ps-embed-cff): Fix DSC comments.
13986         (procset): New function to define a procset resource.
13987         (ps-embed-pfa): New function to define a font resource.
13988         (setup): New function to define a `Setup' environment.
13989         (preamble): Use new functions.
13990
13991         * ps/lilypond.defs (init-lilypond-parameters): New function to
13992         get rid of directly executed PS code.  Used in scm/framework-ps.scm.
13993
13994 2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13995
13996         * mf/GNUmakefile (MFTRACE_FLAGS): add --no-afm to MFTRACE_FLAGS
13997
13998 2005-01-17  Erlend Aasland  <erlenda@gmail.com>
13999
14000         * scm/define-markup-commands.scm: Change number->markletter-string
14001         to take two arguments (vector number). Add number->mark-alphabet-vector
14002         and markalphabet markup command.
14003
14004         * scm/translation-functions.scm: Add format-mark-box-alphabet,
14005         format-mark-alphabet, format-mark-box-barnumbers and
14006         format-mark-barnumbers. Fix bug in format-mark-box-numbers.
14007
14008 2005-01-17  Graham Percival  <gperlist@shaw.ca>
14009
14010         * Documentation/user/examples.itely: add SATB automatic piano
14011         reduction template.
14012
14013         * Documentation/user/notation.itely: added info about changing
14014         partcombine texts.  Also adds examples of alternate lyrics.
14015
14016         * Documentation/user/changing-defaults.itely: added warning
14017         about \RemoveEmptyStaffContext overriding previous changes.
14018
14019 2005-01-17  Werner Lemberg  <wl@gnu.org>
14020
14021         * buildscripts/mf-to-table.py: Use `FetaAlphabetEncoding' for
14022         feta-alphabet*.
14023
14024 2005-01-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14025
14026         * python/lilylib.py (make_ps_images): don't do final showpage for
14027         multi-page documents.
14028         
14029         * VERSION (MY_PATCH_LEVEL): release 2.5.8
14030
14031 2005-01-16  Graham Percival  <gperlist@shaw.ca>
14032
14033         * Documentation/user/lilypond.tely: changed order of appendices;
14034         unified index should be last.
14035
14036         * Documentation/user/notation.itely: add example of key signatures
14037         and info about Staff.printKeyCancellation.
14038
14039 2005-01-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14040
14041         * lily/include/repeated-music.hh (class Repeated_music): change
14042         into "namespace" class.
14043
14044         * lily/event.cc: remove Key_change_event.
14045
14046         * lily/include/transposed-music.hh (class Transposed_music): remove.
14047
14048         * lily/transposed-music.cc: remove
14049
14050         * lily/include/relative-music.hh: remove.
14051
14052         * lily/include/music-sequence.hh (struct Music_sequence): change
14053         into "namespace" class.
14054
14055         * lily/untransposable-music.cc (Module): remove
14056
14057         * lily/include/un-relativable-music.hh (Module): remove
14058
14059         * lily/include/untransposable-music.hh (Module): remove
14060
14061         * lily/include/music-list.hh (Module): remove file
14062
14063         * lily/un-relativable-music.cc: remove file.
14064
14065 2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
14066
14067         * lily/parser.yy: Compile fix.
14068
14069 2005-01-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14070
14071         * lily/include/music.hh (class Music): unvirtualize transpose().
14072
14073         * lily/sequential-music.cc: remove file.
14074
14075         * lily/include/lyric-combine-music.hh ("music.hh"): remove file.
14076
14077         * lily/slur-scoring.cc (get_best_curve): only switch on
14078         DEBUG_SLUR_SCORING for non NDEBUG builds.
14079
14080         * lily/include/music.hh (class Music): replace Music::start_mom()
14081         by start-callback property
14082
14083         * lily/include/grace-music.hh: remove file. 
14084
14085         * lily/stem.cc (height): robustness fix.
14086
14087         * lily/time-scaled-music.cc: remove file.
14088
14089         * lily/include/music.hh (class Music): include SCM init argument.
14090         (class Music): replace Music::get_length() virtual by
14091         length-callback property everywhere.
14092
14093         * scripts/convert-ly.py (conv): add  # to \property scalar value.
14094
14095         * mf/GNUmakefile: don't install *list.ly
14096
14097 2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
14098
14099         * mf/GNUmakefile (CFF_FILES): Bugfix: only big cheeses and braces.
14100
14101 2005-01-12  Werner Lemberg  <wl@gnu.org>
14102
14103         This patch addresses the following problems in the feta sources
14104         files which contribute to the fetaXX fonts.
14105
14106         . Many fixes for rasterization at low resolutions (consistent use of
14107           `vround' and `hround', integer shift values for paths, applying
14108           `eps' for mirrored paths, use of `define_whole_pixels' and
14109           friends, etc.) -- while this probably looks like a waste of time
14110           it has revealed deficiencies in some glyph shapes.  See comment at
14111           the end of feta-params.mf how vertical symmetry is achieved.
14112
14113         . The `---' operator has been replaced everywhere with `--'; this
14114           both improves and considerably reduces the font size after
14115           conversion with mf2pt1.
14116
14117         These change aren't explicitly mentioned below since virtually all
14118         glyphs are affected.
14119
14120         Other notable differences:
14121
14122         . Glyphs from feta-accordion.mf now have charboxes around the
14123           outline.
14124
14125         . Fixed incorrect charbox for `accDot'.
14126
14127         . The `rcomma' and `lcomma' glyphs were distorted due to a typo.
14128
14129         . Fixed position of the bow in the `upprall' glyph and its siblings.
14130
14131         . The bulb size in the `2/2 meter' and `4/4 meter' glyphs is now
14132           dependent on the staff line thickness to avoid touching the middle
14133           staff line at smaller sizes.
14134
14135         . Largely extended output for feta-testXX: Where useful, glyphs
14136         are shown both between and on staff lines.
14137
14138
14139         * mf/feta-params.mf (staff_space_rounded,
14140         stafflinethickness_rounded, linethickness_rounded,
14141         ledgerlinethickness_rounded, stemthickness_rounded): New variables.
14142         Update all code which uses them where appropriate.
14143         (feta_eps, feta_shift, feta_space_shift, feta_offset, feta_fillpen):
14144         New variables used to control rasterization at low resolutions.  Set
14145         to zero if feta code is processed with metapost.
14146
14147         * mf/feta-macros.mf (draw_staff, draw_staff_outline): Updated.
14148         (draw_rounded_block, draw_square_block): Updated to use `--' only.
14149         (flare_path): Updated.
14150         Make it work with `filldraw' (but only circular pens).
14151         (hfloor, vfloor, hceiling, vceiling): New macros.
14152
14153         * mf/feta-accordion.mf ("accDiscant", "accFreebase", "accStdbase"):
14154         Use `draw' again in mf mode to have good pixel dropout control.
14155         Fix intersection points of horizontal lines with circle.
14156         ("accDot"): Fix parameters for set_char_box.
14157         ("accOldEE"): Use `draw' again in mf mode to have good pixel dropout
14158         control.
14159
14160         * mf/feta-banier.mf: Updated.
14161
14162         * mf/feta-bolletjes.mf (remember_pic): New variable, used for
14163         testing.
14164         (undraw_inside_ellipse): Remove `center' argument.  Update all
14165         callers.
14166         (draw_brevis): New macro, called by "Brevis notehead".
14167         (draw_whole_triangle_head): New macro, called by "Whole
14168         trianglehead".
14169         (draw_small_triangle_head): Use `filldraw'.
14170
14171         * mf/feta-eindelijk.mf: Remove useless global group.
14172         Updated.
14173
14174         * mf/feta-klef.mf (draw_c_clef): Correct point positions for using
14175         `filldraw'.
14176
14177         * mf/feta-pendaal.mf: Updated.
14178
14179         * mf/feta-puntje.mf: Updated.
14180
14181         * mf/feta-schrift.mf (draw_very_long_fermata): Simplified to use
14182         less points.
14183         ("Flageolet"): Use `draw' again in mf mode to have good pixel
14184         dropout control.
14185         ("Varied Coda"): Use `draw_block'.
14186         (draw_comma): Fix typo.
14187         (draw_arpeggio_arrow): Use `draw' also in mf mode to have good
14188         pixel dropout control.
14189
14190         * mf/feta-slag.mf ("upprall", "downprall", "lineprall"): Fix start
14191         position of bow.
14192
14193         * mf/feta-timesig.mf (draw_C): Reduce bulb size for smaller design
14194         sizes.
14195
14196         * mf/feta-toevallig.mf (remember_pic): New variable, used for
14197         testing.
14198         (draw_meta_sharp): Much simplified.
14199         ("Sharp", "1/2 Sharp", "3/4 Sharp"): Don't rotate but shift.
14200
14201         * mf/feta-test-generic.mf: Include all files as in feta-generic.mf.
14202
14203 2005-01-13  Mats Bengtsson  <mabe@s3.kth.se>
14204
14205         * Documentation/user/notation.itely (Ancient rests): Fix typo
14206         (thanks Anthony)
14207
14208 2005-01-13  Jan Nieuwenhuizen  <janneke@gnu.org>
14209
14210         * scm/auto-beam.scm (score-override-auto-beam-setting): New function.
14211
14212         * lily/main.cc (setup_paths): Add cff.
14213
14214         * mf/GNUmakefile (foe): Include actual target %.cff.
14215         (INSTALLATION_OUT_SUFFIXES): Install CFF and SVG fonts too.
14216
14217 2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14218
14219         * lily/include/lily-lexer.hh (class Lily_lexer): lose hungarian _b
14220         suffix for main_input_b_.
14221
14222         * scm/music-functions.scm (toplevel-music-functions):
14223         precompute music lengths for music expressions.  
14224
14225 2005-01-11  Nicolas Sceaux  <nicolas.sceaux@free.fr>
14226
14227         * lily/include/input.hh (class Input): new `end_' slot for end of
14228         input. Renamed defined_str0_ to start_.
14229
14230         * lily/input.cc (Input): Add Input::Input (Input const &) and
14231         remove Input::Input (Source_file*, char const *). Use the new
14232         slots.
14233         (set_location): method used by bison to propagate input
14234         locations (YYLLOC_DEFAULT).
14235         (end_line_number, end_column_number, step_forward): new methods
14236         
14237         * lily/input-scheme.cc (ly:input-both-locations): new function,
14238         similar to ly:input-location, but also return the end line and
14239         column.
14240
14241         * lily/include/includable-lexer.hh: 
14242         * lily/includable-lexer.cc: 
14243         * lily/include/lily-lexer.hh (class Lily_lexer): 
14244         * lily/lily-lexer.cc (add_lexed_char): Move add_lexed_char from
14245         Includable_lexer to Lily_lexer, in order to update lexloc (the
14246         yylloc), a new slot of Lily_lexer.
14247         (here_input, LexerError): simplify by using the lexloc slot (aka
14248         yylloc)
14249
14250         * lily/lexer.ll: #define yylloc to use input locations (it may
14251         be useless here?). Fixed the #embedded_scm rule (step the location
14252         forward in order to skip the sharp sign before parsing the scheme
14253         expression)
14254
14255         * lily/include/lily-parser.hh (class Lily_parser): 
14256         * lily/lily-parser.cc: Remove push_spot(), pop_spot() and
14257         here_input()
14258         (parser_error): overload for more precise locations of errors.
14259
14260         * lily/parser.yy (YYLTYPE): set location type to Input
14261         (YYLLOC_DEFAULT): use Input::set_location()
14262         (yylex): add the YYLTYPE* location parameter.
14263         Clean push_spot()/pop_spot()/here_input(), and use @$, @1, etc.
14264         Give an Input parameter to THIS->parser-error() for more accurate
14265         messages.
14266
14267 2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14268
14269         * stepmake/aclocal.m4: do NDEBUG for optimizing builds.
14270
14271         * lily/include/beam.hh (DEBUG_QUANTING): performance: only switch
14272         on BEAMQUANTING for non-NDEBUG builds.
14273
14274         * lily/stem.cc (head_count): performance: avoid String::String()
14275         inside oft called function.
14276
14277 2005-01-09  Graham Percival  <gperlist@shaw.ca>
14278
14279         * Documentation/user/examles.itely: attempted fix for broken
14280         string quartet template.
14281
14282         * Documentation/user/notation.itely: remove unnecessary broken
14283         link.
14284
14285 2005-01-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14286
14287         * VERSION (PACKAGE_NAME): release 2.5.7
14288
14289 2005-01-09  Jan Nieuwenhuizen  <janneke@gnu.org>
14290
14291         * config.make.in (METAFONT): Append -progname=mf, fixes use with
14292         mf-nowin for teTeX-3.0.  Backportme.
14293
14294         * scm/output-svg.scm (utf8-string): New function.
14295
14296         * scm/output-gnome.scm (utf8-string): New function.
14297         (otf-name-mangling): Remove.
14298
14299         * lily/pango-font.cc (Pango_font): Use font string iso font
14300         filename for utf8-text.
14301
14302         * buildscripts/gen-emmentaler-scripts.py: Remove designsize from
14303         name.
14304
14305 2005-01-08  Graham Percival  <gperlist@shaw.ca>
14306
14307         * Documentation/user/notation.itely: add info about
14308         Staff.extraNatural = ##f in Pitches section.  Also
14309         fixed some minor issues in the Vocal music section.
14310
14311 2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14312
14313         * scm/output-ps.scm (white-text): comment out Helvetica font,
14314         which is broken for my GS install.
14315
14316         * lily/pango-font.cc (pango_item_string_stencil): use ink_rect,
14317         which provides a tighter bbox.
14318
14319         * scm/define-grobs.scm (all-grob-descriptions): remove all
14320         extra-offsets from definitions.
14321
14322 2005-01-08  Erlend Aasland  <erlenda@gmail.com>
14323
14324         * scm/output-lib.scm: Rename guitar-tunings to guitar-tuning and
14325         add tuning for 4-string bass and some common 4/5-string banjo
14326         tunings.  New function (four-string-banjo) turns a 5-string tuning
14327         into a 4-string tuning.  New function
14328         (fret-number-tablature-format-banjo) computes correct fret numbers
14329         on 5-string banjos.
14330
14331         * ly/engraver-init.ly: Default stringTunings = #guitar-tuning
14332         Add beam correction to TabVoice.
14333
14334         * scm/define-grobs.scm: Adjust notehead offset. Print fret numbers
14335         using bold font; makes tabs more readable.
14336
14337 2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14338
14339         * lily/font-select.cc (get_font_by_design_size): don't make
14340         Modified_font_metric; this causes trouble, since we don't know the
14341         font magnification from inside Pango_font::text_stencil()
14342
14343         * lily/all-font-metrics.cc (find_pango_font): take magnification argument.
14344
14345         * Documentation/user/notation.itely (The Lyrics context): comment out
14346         broken {Small ensembles} link.
14347
14348         * scm/framework-svg.scm (output-framework): change calling convention.
14349
14350         * lily/object-key-dumper-scheme.cc: new file.
14351
14352         * lily/object-key-undumper-scheme.cc: new file.
14353
14354         * lily/tweak-registration-scheme.cc: new file.
14355
14356         * lily/pango-select.cc (symbol_to_pango_variant): init local variable.
14357
14358         * Documentation/user/examples.itely (String quartet): uncomment
14359         broken example.
14360
14361         * lily/font-config.cc: new file.
14362
14363 2005-01-08  Jan Nieuwenhuizen  <janneke@gnu.org>
14364
14365         * scm/output-svg.scm: 
14366         * scm/output-gnome.scm: s/bigcheese/emmentaler.
14367
14368         * lily/score-engraver.cc (MUSIC_FONT): Use emmentaler20.
14369
14370 2005-01-07  Jan Nieuwenhuizen  <janneke@gnu.org>
14371
14372         * lily/general-scheme.cc (LY_DEFINE): Use snprintf (WAS: sprintf).
14373         Add headers.
14374
14375         * lily/GNUmakefile (general-scheme.o): Add version.hh dependency.
14376
14377 2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14378
14379         * mf/GNUmakefile (debian-mirror): rename bigcheese to emmentaler.
14380
14381         * lily/include/main.hh: lose _b hungarian suffixes for global
14382         variables.
14383
14384         * lily/include/lily-guile-macros.hh: new file.
14385
14386         * lily/pango-select-scheme.cc (LY_DEFINE): new file.
14387
14388         * lily/general-scheme.cc: new file. 
14389
14390         * lily/font-select.cc (get_font_by_design_size): retrieve
14391         PangoFont for (designsize . "pango-descr") entries.
14392
14393         * lily/lily-parser-scheme.cc: new file.
14394
14395         * lily/output-def-scheme.cc: new file.
14396
14397         * lily/paper-book-scheme.cc: new file.
14398
14399         * lily/duration-scheme.cc (LY_DEFINE): new file.
14400
14401         * lily/pitch-scheme.cc:  new file.
14402
14403         * scm/font.scm (add-cmr-fonts): use real dimens in font selection.
14404
14405 2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14406
14407         * lily/dimensions.cc (LY_DEFINE): add ly:{inch,cm,mm,bp,pt}.
14408
14409 2005-01-06  Graham Percival  <gperlist@shaw.ca>
14410
14411         * Documentation/user/notation.itely: minor editing.
14412
14413         * Documentation/user/changing-defaults: minor editing.
14414
14415         * Documentation/user/examples.itely: add template for
14416         string quartet part extraction; demonstrates tag.
14417
14418 2005-01-06  Erlend Aasland  <erlenda@gmail.com>
14419
14420         * Documentation/user/notation.itely: documents
14421         format-mark-box-letters and format-mark-box-numbers
14422
14423         * scm/define-context-properties.scm: change comment.
14424
14425 2005-01-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14426
14427         * scm/framework-ps.scm (output-classic-framework): new function:
14428         dump systems as separate .eps files (without fonts) and write a
14429         single collecting .tex file.
14430
14431 2005-01-05  Mats Bengtsson  <mabe@s3.kth.se>
14432
14433         * Documentation/user/notation.itely (Setting simple songs):
14434         Correct several errors in the equivalent formulation of
14435         \addlyrics. 
14436         (The Lyrics context): Corrected link to the SATB example.
14437
14438 2005-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14439
14440         * scm/lily.scm (completize-formats): new function
14441         (postprocess-output): new function
14442
14443         * lily/paper-book.cc (classic_output): change calling
14444         convention. Give basename as first argument. 
14445         remove Paper_book::post_processing().
14446
14447         * lily/lily-guile.cc (LY_DEFINE): ly:output-backend, new function.
14448
14449 2005-01-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14450
14451         * lily/paper-outputter.cc (LY_DEFINE): new function
14452         ly:outputter-close.
14453
14454         * lily/main.cc: change --format,-f to --backend,-b
14455
14456         * lily/include/main.hh: rename format to backend.
14457
14458         * scm/translation-functions.scm (format-mark-box-numbers): add.
14459         patch by Erlend Aasland
14460
14461 2005-01-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14462
14463         * lily/pango-font.cc (text_stencil): dump string as
14464         (utf-8-string FONTDESC UTF8) for use in -f gnome, -f svg.
14465
14466 2005-01-03  Jan Nieuwenhuizen  <janneke@gnu.org>
14467
14468         * configure.in (gui_b): Remove handy developer-only
14469         PKG_CONFIG_PATH settings that cater for Jan-and-Han-Wen ~/usr/pkg/
14470         CVS source installations (but break other non-default but correct
14471         PKG_CONFIG_PATH setups), as this is no longer developer-only.
14472
14473         * SConstruct: 
14474         * ps/GNUmakefile (INSTALLATION_FILES): teTeX-3.0
14475         compatibility (backportme).
14476
14477         * GNUmakefile.in: teTeX-3.0 compatibility (backportme).
14478
14479 2005-01-03  Werner Lemberg  <wl@gnu.org>
14480
14481         Prepare glyph shapes for mf2pt1 conversion.
14482
14483         * mf/feta-accordion.mf (accreg_pen): Removed.  No longer used.
14484         (accDiscant, accFreebase, accStdbase): Replace `draw' with
14485         `penstroke'.
14486         (accDot): Use `drawdot'.
14487         (accBayanbase): Replace `draw' with `draw_gridline'.
14488         (print_penpos): Moved to feta-macros.mf.
14489         (accOldEE): Replace `filldraw' with `penstroke'.
14490         Replace `draw' with `penstroke' and `drawdot'.
14491
14492         * mf/feta-banier.mf: Code clean-up.
14493         ("grace dash (up)", "grace dash (down)"): Replace `draw' with
14494         `fill'.
14495
14496         * mf/feta-bolletjes (draw_cross): Remove call to `labels'.
14497
14498         * mf/feta-eindelijk.mf (draw_rest_bulb, draw_eigth_rest): Add
14499         paremeter to control drawing of labels.  Update all callers.
14500
14501         * mf/feta-klef.mf (draw_c_clef): Use `&' not `..' to connect paths.
14502         (new_bulb): Return a bulb as a single path.  To do that, it now
14503         takes some more parameters.  Updated all callers.
14504         (draw_gclef): Major clean-up.  `draw' has been replaced with
14505         `penstroke', unnecessary outlines have been removed.
14506         Remove (unused) gnome-canvas code.
14507
14508         * mf/feta-macros.mf (print_penpos): New macro (from
14509         feta-accordion.mf).
14510         Other minor fixes.
14511
14512         * mf/feta-pendaal.mf ("Pedal asterisk"): Use `undrawdot'.
14513         ("Pedal dot"): Use `drawdot'.
14514         (draw_pedal_P): Add parameter to control drawing of labels.  Update
14515         all callers.
14516         Fix shape at top.
14517         (draw_pedal_e): Add parameter to control drawing of labels.  Update
14518         all callers.
14519         (draw_pedal_d): Add parameter to control drawing of labels.  Update
14520         all callers.
14521         Revert drawing direction.
14522
14523         * mf/feta-schrift.mf (draw_fermata): Use single path.
14524         (draw_short_fermata): Replace `filldraw' with `fill'.
14525         (draw_long_fermata, draw_very_long_fermata): Replace calls to
14526         `draw_rounded_block' with a single path.
14527         ("Thumb"): Draw full circle instead of mirroring segments.
14528         (draw_accent): New macro.
14529         ("> accent", "espr"): Use it.
14530         (draw_marcato): Replace `filldraw' and `draw' with `fill'.
14531         ("open (unstopped)"): Draw full circle instead of mirroring
14532         segments.
14533         (draw_vee): Removed.
14534         ("Upbow"): Use `draw_accent' instead of `draw_vee'.
14535         ("Downbow"): Replace calls to `draw_rounded_block' with a single
14536         path.
14537         ("Trill (`tr')"): Replace overlapping loop drawn with `draw' with
14538         partial pieces drawn with `fill' -- these do still overlap with the
14539         stem of the `t' but just once, not multiple times so that fontforge
14540         can handle it gracefully.
14541         Change other parts of the glyph so that fontforge's overlapping
14542         algorithm reliably works.
14543         (draw_heel): Replace `draw' with `fill'.
14544         (draw_toe): Use `draw_accent' instead of `draw_vee'.
14545         ("Flageolet"): Replace `draw' with `penstroke'.
14546         ("Segno"): Replace `filldraw' with `penstroke'.
14547         Replace `draw' with `drawdot'.
14548         ("Coda"): Replace `fill' with `penstroke', using a single path.
14549         ("Varied Coda"): Use less overlapping paths.
14550         (draw_arpeggio_arrow): Replace `filldraw' with `fill', using a
14551         single path.
14552
14553         * mf/feta-slag.mf (draw_trillelement): Put `clearxy' outside of
14554         group to better control the `labels' command.
14555         Rename argument to `offset' and use it actually.  Update all
14556         callers.
14557         Replace `filldraw' with `fill'.
14558         ("mordent", "prallmordent", "upmordent", "downmordent",
14559         "lineprall"): Replace `draw' with `draw_gridline'.
14560         ("upprall", "downprall"): Replace `draw' with `fill'.
14561
14562         * mf/feta-timesig.mf: Formatting.
14563
14564         * mf feta-toevallig.mf (draw_meta_flag): Move code to draw labels
14565         to...
14566         ("Flat"): Here.
14567         (draw_paren): Move code to draw labels to...
14568         ("Right Parenthesis"): Here.
14569
14570 2005-01-02  Graham Percival <gperlist@shaw.ca>
14571
14572         * Documentation/user/notation.itely: add example of \setTextDecresc
14573         and \setTextDim.
14574
14575 2005-01-02  Tatsuya Ono <tats_ono@infoseek.jp>
14576
14577         * scm/define-markup-commands.scm :  fix glyph-strings of
14578         accidentals and \note-by-number
14579
14580 2005-01-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14581
14582         * VERSION: 2.5.6 released.
14583         
14584         * ps/lilyponddefs.ps: put mm -> pt scaling in here.
14585
14586         * input/regression/new-markup-scheme.ly: oops. font-family=music
14587         -> font-encoding fetaMusic.  
14588
14589         * lily/main.cc: put default to PS.
14590
14591         * lily/tfm.cc: idem.
14592
14593         * lily/afm.cc: idem.
14594
14595         * lily/include/modified-font-metric.hh (struct
14596         Modified_font_metric): remove coding_scheme() method.
14597
14598         * input/mutopia/F.Schubert/morgenlied.ly: convert to utf8
14599
14600         * scripts/convert-ly.py (conv): crash on encountering \encoding.
14601
14602         * input/les-nereides.ly: convert to utf8
14603
14604         * lily/modified-font-metric.cc (text_dimension): idem.
14605
14606         * lily/parser.yy (TODO): idem.
14607
14608         * lily/include/lily-lexer.hh (class Lily_lexer): idem.
14609
14610         * lily/lexer.ll: remove encoding
14611
14612         * scm/framework-ps.scm (output-variables): separately scale the
14613         page to mm 
14614
14615         * lily/pango-font.cc (Pango_font): fix scaling.
14616
14617         * lily/font-metric.cc (design_size): design_size returns a
14618         dimension now as well.
14619
14620 2004-12-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14621
14622         * mf/GNUmakefile ($(outdir)/%.otf-table): use findstring. Fixes
14623         brace generation. 
14624
14625         * lily/text-metrics.cc (LY_DEFINE): use scm_c_make_hash_table().
14626
14627 2004-12-30  Jan Nieuwenhuizen  <janneke@gnu.org>
14628
14629         * mf/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Do not try to
14630         install unbuildable Fontmap and Fontmap.lily (Simon Aridis-Lang).
14631
14632 2004-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14633
14634         * mf/GNUmakefile ($(outdir)/%.otf-table): include parmesan20.lisp
14635         in first run as well.
14636
14637         * scm/paper.scm (layout-set-staff-size): use text-font-size in
14638         dimension less points (ie. 12 = 12 point)
14639
14640         * lily/pango-select.cc (select_pango_font): use find_scaled_font().
14641
14642         * lily/all-font-metrics.cc (find_pango_font): set description_
14643
14644         * lily/pango-font.cc (text_stencil): export size as well.
14645         (text_stencil): fix scaling and extents box.
14646
14647 2004-12-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14648
14649         * Documentation/topdocs/NEWS.texi (Top): add -f texstr
14650
14651         * Documentation/user/invoking.itely (Invoking lilypond): document
14652         texstr
14653
14654         * scripts/convert-ly.py (conv): add ancient rules.
14655
14656         * scm/clef.scm (c0-pitch-alist): replace - with .
14657
14658         * scripts/lilypond-book.py (process_snippets): add texstr support.
14659
14660         * scm/framework-texstr.scm (header): change extension to .textmetrics
14661
14662         * lily/lily-parser.cc (parse_file): do try_load_text_metrics for
14663         -f tex.
14664
14665         * lily/text-metrics.cc: new file.
14666         (try_load_text_metrics): new function
14667
14668         * lily/include/text-metrics.hh: new file.
14669
14670 2004-12-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14671
14672         * lily/include/lily-guile.hh (ly_lily_module_constant): rename
14673         ly_scheme_function to ly_lily_module_constant.
14674
14675         * lily/modified-font-metric.cc (text_dimension): try
14676         lookup_tex_text_dimension() first.
14677
14678         * lily/tfm.cc: new function ly:load-text-dimensions
14679
14680 2004-12-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14681
14682         * scm/output-texstr.scm (text): use \lilygetmetrics
14683
14684         * scm/framework-texstr.scm (header): dump in new format.
14685
14686         * tex/lilypond-tex-metrics: new file.
14687         
14688 2004-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
14689
14690         * lily/pango-font.cc (text_stencil): Quick try at glyph->charcode
14691         mapping.
14692         (index_to_charcode): New method.
14693
14694         * scm/output-ps.scm (glyph-string): 
14695         * scm/output-gnome.scm (glyph-string): Add FONT parameter.
14696
14697 2004-12-26  Jan Nieuwenhuizen  <janneke@gnu.org>
14698
14699         * scm/output-gnome.scm (FIXME-glyph-string): New function.  Cannot
14700         implement fully, need FONT to get to charcode.
14701
14702         * scm/lily.scm (ly:all-stencil-expressions): Add glyph-string.
14703
14704         * scm: Cleanups.
14705
14706         * Documentation/user/changing-defaults.itely: Fix internalsrefs
14707         {Tunable context properties},
14708         {All layout objects},
14709         {Music definitions}.
14710
14711 2004-12-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14712
14713         * VERSION: release 2.5.5
14714         
14715         * lily/main.cc: use TeX as default output format.
14716
14717         * flower/file-path.cc (find): try to open directly as well, so we
14718         find absolute path files. 
14719
14720         * lily/pango-select.cc: new file.
14721
14722         * scm/framework-ps.scm: remove all encoding code. 
14723         load pfb/pfa for PangoFont too.
14724         
14725         * lily/lily-guile.cc (ly_chain_assoc_get): new function.
14726
14727 2004-12-22  Werner Lemberg  <wl@gnu.org>
14728
14729         Prepare glyph shapes for mf2pt1 conversion.
14730
14731         * mf/feta-toevallig.mf ("Double Sharp"): Minor path fix.
14732
14733         * mf/feta-bolletjes.mf (penposx): New auxiliary macro.
14734         (define_triangle_shape): Use it to replace `draw' with `fill' and
14735         `unfill'.  Update all callers.
14736         (draw_slash): Replace `filldraw' with `fill'.  Update all callers.
14737         (draw_cross): Ditto.
14738         ("X-Circled notehead"): Replace `draw' with `fill' and `unfill'.
14739         Use penrazor for better conversion with mf2pt1.
14740         (generic_draw_solfa_note_shape, draw_solfa_note_shape,
14741         draw_solfa_quarter_note_shape, triangle): Removed.  Unused.
14742         (draw_do_head, draw_re_head, draw_mi_head, draw_fa_head,
14743         draw_la_head, draw_ti_head): Replace `filldraw' with
14744         `fill'.  Update all callers.
14745
14746 2004-12-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14747
14748         * lily/paper-book.cc (output): revert: only allow a single output
14749         format.
14750
14751         * lily/include/pango-font.hh: new file.
14752
14753         * lily/pango-font.cc: new file.
14754
14755         * lily/font-metric.cc (text_stencil): new routine
14756
14757         * lily/all-font-metrics.cc (find_pango_font): new routine.
14758
14759         * lily/include/font-metric.hh (struct Font_metric): add
14760         text_stencil()
14761
14762         * configure.in (PKG_CONFIG_PATH): require PANGO_FT2
14763
14764 2004-12-22  Werner Lemberg  <wl@gnu.org>
14765
14766         Prepare glyph shapes for mf2pt1 conversion.
14767
14768         * mf/feta-macros.mf, mf_feta-eindelijk.mf: Some formatting.
14769
14770         * mf/feta-toevallig.mf: Formatting.
14771         (draw_meta_sharp): Modify path to replace `filldraw' with `fill'.
14772         ("Natural"): Fix paths to allow better postprocessing.
14773         (draw_meta_flat): Use `z3l' as additional point in path to get
14774         better conversion with mf2pt1.
14775         Other minor cleanups.
14776         ("3/4 Flat"): Add auxiliary points and modify path to replace
14777         `draw' with `fill'.
14778         ("Double Sharp"): Mirror path segments instead of picture elements
14779         to get a single outline.
14780         Modify path to replace `filldraw' with `fill'.
14781
14782 2004-12-22  Graham Percival  <gperlist@shaw.ca>
14783
14784         * input/test/unfold-all-repeats.ly: added file back.
14785
14786         * Documentation/user/notation.itely,
14787         Documentation/user/programming-interface.itely
14788         Documentation/user/changing-defaults.itely: fixed misc broken
14789         links to input/test/ files.
14790
14791 2004-12-22  Jan Nieuwenhuizen  <janneke@gnu.org>
14792
14793         * tex/texinfo.tex: Update.  We should not be distributing this,
14794         but since we do, use latest version.
14795
14796         * Documentation/user/macros.itexi: Comment-out \fetaflat,
14797         \fetasharp.  Fixes make web.  FIXME: make usable (compatible?) TeX
14798         macros for feta glyphs.
14799
14800 2004-12-22  Graham Percival  <gperlist@shaw.ca>
14801
14802         * Documentation/user/changing-defaults.itely: fix index for set.
14803
14804         * Documentation/user/converters.itely: added convert-ly bugs list
14805         from CVS.
14806
14807 2004-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
14808
14809         * python/lilylib.py (setup_environment): Set GS_FONTPATH, GS_LIB
14810         to empty.  Fixes make web, using gs-gpl-8.01.  In fact,
14811         gs-afpl-8.50 has more trouble with make web (ie, uses *a lot* more
14812         resourses; 3x MAXSIZE, 4x MAXRSS, 1.5x user).
14813
14814         * mf/GNUmakefile (pfa_warning): Use less broken check.
14815
14816         * python/lilylib.py (setup_environment): Remove cruft from
14817         GS_FONTPATH.
14818
14819         * configure.in: Bump mftrace requirement to 1.1.1.
14820
14821 2004-12-20  Jan Nieuwenhuizen  <janneke@gnu.org>
14822
14823         * scm/output-svg.scm (beam): Use polygon.
14824
14825         * scm/lily-library.scm: Bugfix.
14826
14827         * Documentation/user/invoking.itely (Invoking lilypond): Bugfix.
14828
14829         * mf/GNUmakefile (ALL_GEN_FILES): Remove unbuildable Fontmap.lily.
14830
14831 2004-12-19  Werner Lemberg  <wl@gnu.org>
14832
14833         Prepare glyph shapes for mf2pt1 conversion.
14834
14835         * mf/feta-eindelijk: Some formatting.
14836         (multi_rest_x, multi_beam_height): Removed.  Unused.
14837         ("Quarter rest"): Use `intersectiontimes' to create a single
14838         outline.
14839         (rest_crook): Removed.  Unused.
14840         (draw_rest_bulb): Return path (without filling).  Update callers.
14841         Simplified.
14842         (draw_eighth_rest, "16th rest", "32th rest", "64th rest",
14843         "128th rest"): Simplify `pat'.
14844         Create single outline.
14845
14846 2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
14847
14848         * mf/GNUmakefile (ALL_GEN_FILES):
14849         (INSTALLATION_OUT_SUFFIXES): Remove unbuildable fonts.scale.
14850
14851         * scm/output-svg.scm (polygon, draw-line, dashed-line): New
14852         function.
14853
14854 2004-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14855
14856         * scm/output-texstr.scm (placebox): add routine
14857
14858         * VERSION (PACKAGE_NAME): release 2.5.4
14859
14860         * scm/framework-texstr.scm (output-framework): new file.  
14861
14862         * scm/output-texstr.scm: new file. Collect (TEXT . ) calls for TeX
14863         processing.
14864
14865         * Documentation/user/invoking.itely (Invoking lilypond): add SVG
14866
14867         * stepmake/stepmake/metafont-rules.make: make single SVG/PFA/PFB
14868         rule.
14869
14870         * configure.in (gui_b): bump mftrace requirement to 1.1.0
14871
14872         * mf/feta-bolletjes.mf (triangle): add s to 0triangle.
14873
14874         * mf/GNUmakefile (ALL_GEN_FILES): make SVG files too.
14875
14876 2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
14877
14878         * scm/framework-svg.scm (dump-page): Implement landscape.
14879
14880 2004-12-18  Jan Nieuwenhuizen  <janneke@gnu.org>
14881
14882         * lily/main.cc (setup_paths): Add svg to search path.
14883
14884         * scm/output-svg.scm:
14885         * scm/framework-svg.scm: Add pageSet.  Update.
14886         (dump-fonts): New function.
14887         (output-framework): Use it.
14888
14889         * mf/GNUmakefile: 
14890         * buildscripts/gen-bigcheese-scripts.py: Also generate SVG font.
14891
14892 2004-12-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14893
14894         * tex/lilyponddefs.tex: comment out new ifpdf code.
14895
14896 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
14897
14898         * GNUmakefile.in: 
14899         * SConstruct (symlink): Replace afm by otf.
14900
14901         * scm/framework-gnome.scm (gnome-main): Remove invocation of
14902         ly:pango-add-afm-decoder.
14903
14904         * lily/lily-guile.cc ("ly:pango-add-afm-decoder"): Build fix: Remove.
14905
14906 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14907
14908         * scm/output-ps.scm (new-text): don't access t glyph for getting
14909         space dimension.
14910
14911         * ly/init.ly: warn about \version
14912
14913         * lily/lexer.ll: set version-seen?
14914
14915 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
14916
14917         * scm/output-svg.scm (string->entities): Update.
14918
14919 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14920
14921         * lily/main.cc (setup_paths): replace afm by otf for path. 
14922
14923         * lily/pangofc-afm-decoder.cc: remove.
14924
14925         * lily/include/pangofc-afm-decoder.hh: remove.
14926
14927         * scm/framework-scm.scm (output-framework): new file.
14928
14929         * mf/GNUmakefile: remove SAUTER_FONTS.
14930         remove SVG/sodipodi hacks.
14931
14932         * scm/lily-library.scm (stderr): move stderr.
14933
14934         * mf/GNUmakefile: remove AFM support.
14935
14936         * buildscripts/mf-to-table.py (base): remove AFM support.
14937
14938         * lily/open-type-font.cc (design_size): use design_size
14939
14940 2004-12-17  Pedro Kroger  <kroeger@pedrokroeger.net>
14941
14942         * lily/font-metric.cc (LY_DEFINE): Fix the docstring.
14943
14944 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
14945
14946         * mf/GNUmakefile: Generate combined aybabtu info.
14947         * mf/aybabtu.pe.in (i): Load it.
14948
14949         * scm/framework-tex.scm (otf-font-load-command): Bugfix: subfonts
14950         are not symbols.
14951
14952         * lily/include/open-type-font.hh (count): New method.
14953
14954         * mf/aybabtu.pe.in: Typo.
14955
14956         * Documentation/user/out/lilypond-internals.nexi (Scheme
14957         functions): Typo.
14958
14959         * lily/include/guile-compatibility.hh (SCM_HASHTABLE_P): Add compat.
14960
14961 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14962
14963         * buildscripts/gen-bigcheese-scripts.py (i): use symbols for
14964         subfonts.
14965
14966         * scm/output-tex.scm (named-glyph): new function. This fixes TeX output.
14967
14968         * scm/framework-tex.scm (otf-font-load-command): load subfonts.
14969         (tex-font-command-raw): new function.
14970
14971         * lily/include/virtual-font-metric.hh (Module): remove file
14972
14973         * lily/virtual-font-metric.cc (Module): remove file.
14974         
14975
14976         * lily/open-type-font.cc (LY_DEFINE): ly:otf-font-glyph-info
14977         (get_indexed_char): read bbox from lily table if present.
14978
14979 2004-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14980
14981         * mf/GNUmakefile ($(outdir)/aybabtu.subfonts): rule for
14982         aybabtu.subfonts
14983
14984         * mf/feta-beugel.mf (y): don't number consecutively, instead, use
14985         global glyphname. Enables more than 64 glyphs in the OTF.
14986
14987 2004-12-16  Jan Nieuwenhuizen  <janneke@gnu.org>
14988
14989         * scm/font.scm (add-music-fonts): Load aybabtu iso all separate
14990         braces.
14991
14992         * lily/open-type-font.cc (design_size): Use 12 as default for
14993         design size.
14994
14995         * mf/aybabtu.pe.in: New file.  Merge all our braces.
14996
14997         * mf/GNUmakefile: Generate aybabtu.
14998
14999         * tex/lilyponddefs.tex: teTeX 3.0 pdfetex fix.
15000
15001 2004-12-14  Jan Nieuwenhuizen  <janneke@gnu.org>
15002
15003         * scm/lily-library.scm (char->unicode-index): Remove.
15004
15005         * scm/output-gnome.scm (text): Bugfix for plain string input.
15006         Updates.
15007
15008         * scm/output-svg.scm (svg-font): Add weight to font selection.
15009
15010 2004-12-14  Mats Bengtsson  <mabe@s3.kth.se>
15011
15012         * Documentation/topdocs/INSTALL.texi (Top): Point to
15013         buildscripts/out/clean-fonts instead of
15014         buildscripts/clean-fonts.sh. 
15015
15016 2004-12-13  Graham Percival  <gperlist@shaw.ca>
15017
15018         * input/regression/figured-bass.ly: attempt to clarify text.
15019
15020         * Documentation/user/notation.tely: add cindex for tag, attempt to
15021         add figured bass example.
15022
15023         * Documentation/user/changing-defaults: basic editing.
15024
15025 2004-12-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15026
15027         * buildscripts/gen-bigcheese-scripts.py (i): load .subfonts table. 
15028
15029         * lily/open-type-font.cc (LY_DEFINE): new function
15030         ly:font-sub-fonts
15031
15032         * lily/include/font-metric.hh (struct Font_metric): new method
15033         sub_fonts()
15034
15035         * lily/vaticana-ligature-engraver.cc (transform_heads): replace
15036         . with - in add.stem.
15037         
15038 2004-12-13  Jan Nieuwenhuizen  <janneke@gnu.org>
15039
15040         * scm/encoding.scm (coding-alist): Fix encodings for fetaNumber
15041         and fetaDynamic.
15042
15043         * lily/rest.cc (glyph_name): Change - to . .
15044
15045         * scm/output-gnome.scm (text): Hello world, again.
15046
15047         * scm/output-svg.scm (named-glyph): New function.  Hello world!
15048
15049         * lily/modified-font-metric.cc (index_to_charcode): New method.
15050
15051         * lily/include/font-metric.hh (index_to_charcode): New function.
15052
15053         * lily/font-metric.cc (ly:font-glyph-name-to-charcode): Use it in
15054         new function.
15055         (ly:font-glyph-to-index): Remove.
15056
15057 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15058
15059         * lily/open-type-font.cc (make_index_to_charcode_map): new method.
15060
15061         * mf/feta-autometric.mf (code): remove tex name from fet_beginchar.
15062
15063         * lily/open-type-font.cc (load_scheme_table): new function
15064
15065         * lily/dots.cc (print): replace - 
15066
15067         * lily/open-type-font.cc (attachment_point): new function.
15068         (load_table): read LILC table
15069
15070         * buildscripts/gen-bigcheese-scripts.py (Module): new
15071         file. Generate FF scripts.
15072
15073         * mf/feta-din10.mf: idem.
15074
15075         * mf/feta-nummer10.mf: remove mf files.
15076
15077         * mf/feta-alphabet.mf (dynamic_design_size): merge din and number font.
15078
15079 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
15080
15081         * lily/lily-guile.cc: Use scm_from_locale_stringn.
15082
15083         * lily/include/guile-compatibility.hh (scm_from_locale_stringn): Add
15084         compatibility.
15085
15086 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15087
15088         * lily/open-type-font.cc (get_indexed_char): scale metrics by
15089         design-size and units_per_EM.
15090
15091         * mf/bigcheese.pe.in: set PUA codepoints before loading din & nummer.
15092
15093 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
15094
15095         * mf/bigcheese.pe.in (i): Map to 0xe000 (PUA) for testing, which
15096         does not crash fontforge.
15097
15098         * scm/lily-library.scm (char->unicode-index): Hack to map onto
15099         PUA.
15100
15101 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15102
15103         * scm/framework-ps.scm (ps-embed-cff): new function.
15104
15105         * lily/lily-guile.cc (LY_DEFINE): make ly:gulp-file binary proof.
15106
15107 2004-12-12  Werner Lemberg  <wl@gnu.org>
15108
15109         * mf/bigcheese.pe.in: Add PUA mapping.
15110         Don't create Type 42 but bare CFF font.
15111
15112 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
15113
15114         * scm/output-gnome.scm (placebox): Hackery to get bigcheese symbols
15115         within canvas boundaries.
15116
15117         * mf/merge.pe.in: Set font names, version, license GPL.
15118
15119         * make/substitute.make: Add FONTFORGE.
15120
15121         * config.make.in (FONTFORGE): Add.
15122
15123         * configure.in (gui_b): Use PATH_PROG for fontforge.
15124
15125 2004-12-11  Graham Percival  <gperlist@shaw.ca>
15126
15127         * scm/define-markup-commands.scm: add baseline-skip to info
15128         about \column.
15129
15130 2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
15131
15132         * lily/font-metric.cc (ly:font-get-glyph-index): New function.
15133
15134         * scm/output-gnome.scm (named-glyph): Use it.
15135
15136         * scm/lily.scm (ly:all-stencil-expressions): Add named-glyph.
15137
15138         * flower/string.cc (substitute_char): Rename, rewrite, modify this.
15139         (upper_string, lower_string, reverse_string): Remove.
15140
15141         * configure.in (fontforge): Reinstate version check.
15142
15143         * ly/engraver-init.ly: Fix clef glyph names.
15144
15145         * lily/time-signature.cc (special_time_signature): Fix fraction
15146         glyph names.
15147
15148 2004-12-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15149
15150         * mf/merge.pe: new file.
15151
15152         * lily/freetype.cc: new file.
15153
15154         * lily/include/open-type-font.hh (class Open_type_font): new file.
15155
15156         * lily/include/freetype.hh: new file.
15157
15158         * lily/open-type-font.cc: new file.
15159
15160         * lily/all-font-metrics.cc (find_otf): new function.
15161
15162 2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
15163
15164         * lily/time-signature.cc (special_time_signature): Fix.
15165
15166         * configure.in (PKG_CONFIG_PATH): Remove stray `i'.  Check for
15167         GTK2 before checking for pango.  Fixes -fgnome.
15168
15169         * lily/font-metric.cc (LY_DEFINE): Also rename C name to match
15170         Scheme name.
15171
15172         * scm/define-markup-commands.scm:
15173         * scm/safe-lily.scm: Bugfix: ly:font-by-name.
15174
15175         * configure.in: Require makeinfo 4.7 (needed for @ifdocbook).
15176
15177         * stepmake/aclocal.m4 (STEPMAKE_GET_VERSION): Grok fontforge-like
15178         date versions.  Fixes configure.
15179         (STEPMAKE_CHECK_VERSION): Support optional actual program version
15180         argument.
15181
15182 2004-12-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15183
15184         * buildscripts/mf-to-table.py (write_ps_encoding): write real
15185         names in .enc
15186
15187         * lily/*.cc: use '.' iso. '-' for separating glyph name elements.
15188
15189 2004-12-09  Graham Percival  <gperlist@shaw.ca>
15190
15191         * Documentation/user/changing-defaults.itely: add info about
15192         make-dynamic-script
15193
15194         * Documentation/user/notation.itely: add link in dynamics to
15195         section about make-dynamic-script.
15196
15197 2004-12-09  Christian hitz  <chhitz@gmx.net>
15198
15199         * lily/lily-guile.cc: change MACOS_X to __APPLE__
15200
15201 2004-12-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15202
15203         * buildscripts/mf-to-table.py (parse_logfile): use . for
15204         concatting name and group.
15205         (parse_logfile): use M for Minus (negative.)
15206
15207         * lily/include/type-swallow-translator.hh
15208         (DECLARE_EVENT_SWALLOWER): ENTER_DESCRIPTION -> ADD_TRANSLATOR
15209
15210         * lily/*.cc: cosmetics around = sign.
15211
15212         * lily/paper-column.cc (Paper_column): copy rank_. This fixes
15213         lyric spacing on the penultimate column.
15214
15215 2004-12-05  Christian Hitz  <chhitz@gmx.net>
15216
15217         * configure.in:
15218         * lily/accidental-placement.cc:
15219         * lily/bar-line.cc:
15220         * lily/beam-concave.cc:
15221         * lily/beam-quanting.cc:
15222         * lily/beam.cc:
15223         * lily/bezier-bow.cc:
15224         * lily/bezier.cc:
15225         * lily/break-align-interface.cc:
15226         * lily/custos.cc:
15227         * lily/dimension-cache.cc:
15228         * lily/dot-column.cc:
15229         * lily/font-metric.cc:
15230         * lily/font-select.cc:
15231         * lily/gourlay-breaking.cc:
15232         * lily/grob-property.cc:
15233         * lily/grob.cc:
15234         * lily/lily-guile.cc:
15235         * lily/line-spanner.cc:
15236         * lily/lookup.cc:
15237         * lily/lyric-extender.cc:
15238         * lily/lyric-hyphen.cc:
15239         * lily/mensural-ligature.cc:
15240         * lily/midi-def.cc:
15241         * lily/misc.cc:
15242         * lily/note-collision.cc:
15243         * lily/note-column.cc:
15244         * lily/note-head.cc:
15245         * lily/paper-outputter.cc:
15246         * lily/percent-repeat-item.cc:
15247         * lily/rest-collision.cc:
15248         * lily/side-position-interface.cc:
15249         * lily/simple-spacer.cc:
15250         * lily/slur-configuration.cc:
15251         * lily/slur-scoring.cc:
15252         * lily/slur.cc:
15253         * lily/spaceable-grob.cc:
15254         * lily/spacing-spanner.cc:
15255         * lily/spanner.cc:
15256         * lily/staff-symbol-referencer.cc:
15257         * lily/stem.cc:
15258         * lily/stencil.cc:
15259         * lily/system-start-delimiter.cc:
15260         * lily/system.cc:
15261         * lily/text-item.cc:
15262         * lily/tie.cc:
15263         * lily/tuplet-bracket.cc:
15264         * lily/vaticana-ligature.cc: Fix for MacOS X: use <math.h> instead of
15265         <cmath> beacause isinf/isnan is undefined in <cmath>
15266
15267 2004-12-03  Mats Bengtsson  <mabe@s3.kth.se>
15268
15269         * cygwin/lily-wins.py (stat): remove old flag -p when calling lilypond.
15270
15271 2004-12-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15272
15273         * VERSION: release 2.5.3
15274         
15275 2004-11-29  Arno Waschk <arno@arnowaschk.de>
15276
15277         * mf/feta-schrift.mf: added <>-like articulation mark as "espressivo"
15278
15279 2004-12-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15280
15281         * scm/music-functions.scm (cue-substitute): voice counts start at 0.
15282
15283         * lily/note-head.cc (internal_print): always try the "s" head if
15284         u/d not found.
15285
15286         * scm/titling.scm (marked-up-headfoot): reinstate default tagline.
15287
15288 2004-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15289
15290         * mf/parmesan-heads.mf (overdone_heads): typos.
15291
15292 2004-11-30  Nicolas Sceaux  <nicolas.sceaux@free.fr>
15293
15294         * lily/parser.yy (markup): in markups, { .. } without command
15295         before are also flattened, ie \line must be explicitely used.
15296
15297         * Documentation/user/changing-defaults.itely:
15298         * Documentation/user/notation.itely: 
15299         * input/wilhelmus.ly: 
15300         * input/regression/instrument-name-markup.ly: 
15301         * input/regression/markup-score.ly: 
15302         * input/regression/new-markup-scheme.ly: 
15303         * input/regression/new-markup-syntax.ly: 
15304         * input/test/coriolan-margin.ly: use \line in markups where
15305         appropriate
15306         
15307 2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
15308
15309         * scm/new-markup.scm (map-markup-command-list): helper function
15310         used in parser.yy to map markup commands on a markup list.
15311
15312         * lily/parser.yy: get rid off < > in markups by treating { } as
15313         real lists.
15314
15315         * lily/lexer.ll: remove < > from markup lexer mode.
15316
15317         * scripts/convert-ly.py (conv): add rule for converting 
15318         \markup < > to \markup { }
15319
15320         * ly/titling-init.ly: 
15321         * input/test/coriolan-margin.ly: 
15322         * input/regression/new-markup-syntax.ly: 
15323         * input/regression/new-markup-scheme.ly: 
15324         * input/regression/multi-measure-rest-text.ly: 
15325         * input/regression/markup-stack.ly: 
15326         * input/regression/markup-score.ly: 
15327         * input/regression/instrument-name-markup.ly: 
15328         * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: 
15329         * input/mutopia/R.Schumann/romanze-op28-2.ly: 
15330         * input/mutopia/J.S.Bach/wtk1-fugue2.ly: 
15331         * input/wilhelmus.ly: 
15332         * Documentation/user/notation.itely: 
15333         * Documentation/user/music-glossary.tely: 
15334         * Documentation/user/changing-defaults.itely: change < > to { } in
15335         markups
15336
15337 2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15338
15339         * lily/accidental-placement.cc (position_accidentals): shortcut if
15340         no accidentals to place.
15341
15342 2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
15343
15344         * scm/define-grob-properties.scm (all-user-grob-properties): fixed
15345         typo s/ly:dimension ?/ly:dimension?/
15346
15347         * input/regression/lily-in-scheme.ly: 
15348         * input/regression/music-function.ly: 
15349         * ly/spanners-init.ly (assertBeamSlope): 
15350         * scm/music-functions.scm (def-grace-function): add the paper
15351         argument to music function definitions.
15352
15353 2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15354
15355         * lily/moment.cc (LY_DEFINE):
15356         ly:moment-main-{denominator,numberator}, new function.
15357
15358         * lily/score-engraver.cc (typeset_all): assign to column on basis
15359         of axis-group-parent-X setting.
15360
15361         * lily/axis-group-engraver.cc (process_acknowledged_grobs): do
15362         add_element() on basis of axis-group-parent-Y setting.
15363
15364         * lily/grob.cc: add axis-group-parent-{XY} properties.
15365
15366         * input/regression/spacing-stick-out.ly: new file.
15367
15368         * lily/simple-spacer.cc (add_columns): use binary search for
15369         setting column rods. Changes O(n^2) to O(n log(n)) for
15370         constructing spacing problem from columns.
15371         (add_columns): read allow-outside-line to make sure no texts stick
15372         out.
15373         (solve): Simple_spacer::is_active() only determines
15374         satisfies_constraints_ for non-ragged typesetting.
15375
15376         * lily/simultaneous-music.cc (to_relative_octave): only set
15377         old_relative_used if return pitch actually changed.
15378
15379         * scm/define-context-properties.scm
15380         (all-user-translation-properties): change to match implementation.
15381
15382         * python/lilylib.py: Replace re.match by re.search and adds "-c
15383         showpage" to the gs command line (Johannes Schindelin)
15384
15385         * scm/framework-ps.scm (output-preview-framework): sanitize bbox
15386         before processing. Prevents crash when inf is in the extent.
15387
15388         * scm/define-markup-commands.scm (note-by-number): add "s" to
15389         "noteheads-" glyphname.
15390  
15391         * lily/parser.yy (Generic_prefix_music): supply parser argument to
15392         music function as well.
15393         
15394 2004-11-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15395
15396         * VERSION: release 2.5.2
15397
15398         * Documentation/user/changing-defaults.itely (Creating titles):
15399         add breakbefore variable.
15400
15401         * lily/paper-book.cc (set_system_penalty): new function. Set
15402         penalty_ based on breakBefore setting
15403
15404         * lily/context-specced-music-iterator.cc (construct_children):
15405         interpret special context id $uniqueContextId 
15406
15407         * lily/context.cc (create_unique_context): new method. Move
15408         creation of unique (\new) contexts into interpreting phase. This
15409         makes
15410
15411           foo= \new Staff ..
15412           << \foo \foo >>
15413
15414         produce 2 staves.
15415         
15416
15417         * scm/define-music-properties.scm (all-music-properties): add
15418         quoted-voice-direction
15419
15420         * ly/music-functions-init.ly: killCues function.
15421
15422         * scm/music-functions.scm (cue-substitute): move creation of voice
15423         contexts further to the back. 
15424
15425 2004-11-25  Werner Lemberg  <wl@gnu.org>
15426
15427         * tex/GNUmakefile ($(outdir)/latin1.enc): Replace `/minus' with
15428         `/hyphen' in encoding vector to get correct glyph name for EC fonts.
15429
15430 2004-11-24  Erik Sandberg  <ersa9195@student.uu.se>
15431
15432         * buildscripts/guile-gnome.sh: Fixed typo.
15433
15434 2004-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15435
15436         * lily/lexer.ll: add < >  to markup lexer mode (backportme)
15437
15438         * scripts/abc2ly.py (dump_slyrics): add ord(). 
15439
15440         * lily/note-heads-engraver.cc (process_music): add shapeNoteStyles
15441         to regular engraver. 
15442
15443 2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15444
15445         * mf/feta-bolletjes.mf (triangle): rewrite solfa heads.
15446
15447 2004-11-22  Jan Nieuwenhuizen  <janneke@gnu.org>
15448
15449         * scm/define-markup-commands.scm (fill-line): Typo.
15450
15451         * buildscripts/guile-gnome.sh (GGVERSION): Build update for 2.7.96
15452         and newer.
15453
15454 2004-11-22  Erik Sandberg  <ersa9195@student.uu.se>
15455
15456         * ly/dynamic-scripts-init.ly: Fixed typo.
15457
15458 2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15459
15460         * mf/feta-bolletjes.mf (overdone_heads): cleanup triangle
15461         note-head, to have different attachment points for up and down.
15462
15463         * mf/feta-bolletjes.mf: merge solfa heads into main note heads.
15464
15465         * mf/feta-generic.mf (else): remove solfa.
15466
15467         * mf/feta-bolletjes.mf (tishape): remove unicode test.
15468
15469         * scm/define-context-properties.scm
15470         (all-user-translation-properties): add shapeNoteStyles property.
15471
15472         * lily/shape-note-heads-engraver.cc (process_music): new file.
15473
15474         * lily/event.cc (transpose): call Event::transpose() for
15475         transposing the tonic.
15476
15477 2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
15478
15479         * scm/output-gnome.scm: Save some pointers about pango/fontconfig
15480         Unicode/OpenType and AFM.
15481
15482         * lily/include/guile-compatibility.hh (scm_from_bool): Add.
15483
15484 2004-11-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15485
15486         * lily/grob.cc (Grob): idem. Plugs mem leaks. 
15487
15488         * lily/context.cc (Context): unprotect key from ctor.
15489
15490         * scm/stencil.scm (stack-lines): return empty-stencil if argument
15491         is '()
15492         (stack-stencils): idem.
15493
15494         * Documentation/user/changing-defaults.itely (Creating titles):
15495         document new title layout options.
15496
15497         * lily/parser.yy (lilypond_header_body): copy previous
15498         $globalheader if present.
15499
15500         * lily/ly-module.cc (LY_DEFINE): rename ly:import-module to
15501         ly:module-copy
15502         
15503         * scm/page-layout.scm (marked-up-headfoot): remove old functions.
15504
15505         * scm/titling.scm: remove old titling functions
15506
15507         * lily/stencil.cc (translate): remove absolute dimension.
15508
15509         * ly/titling-init.ly (oddFooterMarkup): new file. Generate titles
15510         via markup.
15511
15512         * scm/page-layout.scm (marked-up-headfoot): create header/footer
15513         field from user-supplied markup
15514
15515         * scm/define-markup-commands.scm (on-the-fly): new markup
15516         command. Enter SCM markup procedure directly in Scheme.
15517         (fromproperty): new markup command. Read markup from props argument.
15518
15519         * scm/titling.scm (marked-up-title): create title via
15520         user-specified markup. 
15521
15522         * scm/define-markup-commands.scm (column): remove empty stencils
15523         from column.
15524
15525         * lily/ly-module.cc (LY_DEFINE): use ly_module_lookup(). This does
15526         not have side-effect of creating variable stub.
15527
15528         * lily/stencil-scheme.cc (LY_DEFINE): add ly:stencil-empty?
15529
15530 2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
15531
15532         * scm/encoding.scm (coding-alist): 
15533         * scm/font.scm (add-ec-fonts):
15534         * ly/paper-defaults.ly: Use actual name for EC fontencoding:
15535         Extended-TeX-Font-Encoding---Latin.
15536
15537         * lily/side-position-interface.cc (general_side_position): Add
15538         actual offset to error message (avoid constant error messages).
15539
15540         * lily/all-font-metrics.cc (find_font): Add "lm" to try-AFM-first
15541         block.
15542
15543         * lily/font-select.cc (select_encoded_font)
15544         (get_font_by_mag_step, get_font_by_design_size): 
15545         * lily/modified-font-metric.cc (Modified_font_metric): 
15546         * lily/paper-def.cc (find_scaled_font): Add font_encoding parameter.
15547
15548         * scm/encoding.scm (coding-alist): Add fetaDynamic.
15549         (read-encoding-file): Bugfix: do not require space after bracket.
15550
15551         * scm/font.scm (add-cork-lm-fonts): Remove lmbxi8 and lmbxi14,
15552         these do not exist.
15553
15554 2004-11-20  Graham Percival  <gperlist@shaw.ca>
15555
15556         * Documentation/user/notation.itely: added info about typesetting
15557         boxed bar numbers.
15558
15559 2004-11-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15560
15561         * flower/interval.cc (T_to_string): gcc4 fixes.
15562
15563         * scm/define-markup-commands.scm (fill-line): use
15564         stack-stencils. This fixes problems with putting already centered
15565         stencils in a line.
15566
15567         * VERSION: release 2.5.1
15568
15569         * lily/bar-line.cc (get_staff_bar_size): add line thickness.
15570
15571 2004-11-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15572
15573         * input/example-[1-3].ly: simplify.
15574
15575         * lily/cluster-engraver.cc (try_music): react to busy-playing-event
15576
15577         * scm/output-ps.scm (new-text): new function. Use glyphshow to
15578         show glyphs.
15579
15580         * scm/encoding.scm (decode-byte-string): new function.
15581
15582         * scripts/convert-ly.py (conv): add warning about
15583         set-global-staff-size.
15584
15585         * Doxyfile: add. 
15586
15587         * scripts/convert-ly.py (conv): add raggedlastbottom rule
15588         (conv): warn for TextSpanner split.
15589         (conv): warn for textheight.
15590
15591 2004-11-19  Jan Nieuwenhuizen  <janneke@gnu.org>
15592
15593         * GNUmakefile.in (install-WWW): Invoke install-info, so that when
15594         building the documentation, info with images are installed.
15595         (final-install): Fix description.  Mention sourcing of login
15596         scripts (instead of running).
15597
15598 2004-11-18  Jan Nieuwenhuizen  <janneke@gnu.org>
15599
15600         * Debian lmodern support.  Note that LilyPond will issue warnings
15601         
15602             no such encoding: "FontSpecific"
15603
15604           The font selection mechanism wants to get the encoding from the
15605           font itself, but the idea of lmodern is that it is usable with
15606           different encodings, ie, Lily should get the encoding from the
15607           font tree, rather than the font itself.  This would require some
15608           more work.
15609         
15610         * configure.in: Test for and accept lmodern if EC fonts not found.
15611
15612         * scm/framework-tex.scm (font-load-command): TeX font name
15613         mangling for latin1 encoded cork-lm fonts.
15614         (convert-to-ps): Load lm.map if available.
15615
15616         * ly/paper-defaults.ly: Use cork-lm encoding if ec is not
15617         available.
15618
15619         * scm/encoding.scm (coding-alist): Add cork-lm encoding.
15620
15621         * scm/font.scm: Add header.  Autoload cork-lm and ec fonts if
15622         available.
15623
15624         * lily/kpath.cc (ly_kpathsea_find_file): Rename.  Do not use
15625         path for absolute file name, that is silly.
15626
15627         * lily/score-engraver.cc (initialize): 
15628
15629         * Documentation/user/GNUmakefile (local-install-info): Invoke
15630         install-info --remove first.
15631
15632         * #include cleanup (Andreas Scherer).
15633
15634 2004-11-18  Heikki Junes  <hjunes@cc.hut.fi>
15635
15636         * input/test/script-abbreviations.ly: fix typos.
15637
15638 2004-11-17  Werner Lemberg  <wl@gnu.org>
15639
15640         * python/lilylib.py (options_help_str): Support pretty-printing of
15641         newlines in fourth element of option description.
15642
15643         * scripts/lilypond-book.py (option_definitions): Use new lilylib
15644         feature.
15645         Sort options.
15646
15647         * Documentation/user/lilypond-book.itely: Finish update.
15648
15649 2004-11-17  Jan Nieuwenhuizen  <janneke@gnu.org>
15650
15651         * Documentation/user/macros.itexi: Add comment about \command.
15652
15653         * Documentation/user/lilypond.tely:
15654         * Documentation/user/lilypond-book.itely: Fix names of lilypond
15655         and lilypond-book nodes, so that `info lilypond' visits the manual
15656         at top level, and `info lilypond-book' visits the lilypond-book
15657         section.
15658
15659         * Documentation/user/GNUmakefile (local-install-info): Fix rules
15660         and packager messages.
15661
15662         * lily/pangofc-afm-decoder.cc: Update test.
15663
15664 2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
15665
15666         * scm/lily-library.scm (char->unicode-index): New function.
15667
15668         * scm/output-gnome.scm: 
15669         * scm/output-svg.scm: Cleanup.  Map custom fonts to PUA.
15670
15671         * Proper naming of file name throughout; s/filename/file[-_]name/.
15672
15673         * lily/modified-font-metric.cc ("ly:font-encoding"): New function.
15674
15675         * lily/pangofc-afm-decoder.cc (pango_fc_afm_get_glyph): Map onto PUA.
15676
15677 2004-11-16  Werner Lemberg  <wl@gnu.org>
15678
15679         * scripts/lilypond-book.py: The Lord has commanded me to use only
15680         tabs for indentation.  Your humble servant obeys.
15681
15682 2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
15683
15684         * scm/output-svg.scm: Font fixes.  Sodipodi now groks svg
15685         including font, if LilyPond-feta font is only feta font in path.
15686
15687         * scm/output-gnome.scm (text): Revert to file name of font if font
15688         has no name.  Fixes ec font selection.
15689         (char): Bugfix: do not utf8 twice.  Fixes clefs.
15690
15691         * scm/framework-svg.scm:
15692         * scm/output-svg.scm: New file.  TODO: figure out how to
15693         do character by index in font.
15694
15695         * scm/output-sodipodi.scm: Remove.
15696
15697         * scm/output-ps.scm (stem): Remove.
15698
15699 2004-11-15  Jan Nieuwenhuizen  <janneke@gnu.org>
15700
15701         * scm/output-gnome.scm (beam): New function.
15702         (slur): Round corners.
15703         (round-filled-box): Round corners.
15704
15705 2004-11-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15706
15707         * scm/output-gnome.scm (beam): add function.
15708         (draw-line): new routine.
15709         (dashed-line): stub; call draw-line
15710         (polygon): new routine.
15711
15712 2004-11-15  Werner Lemberg  <wl@gnu.org>
15713
15714         * Documentation/user/lilypond-book.itely: Revise section on
15715         lilypond-book options.
15716         Other minor fixes.
15717
15718         * scripts/lilypond-book.py: Change indentation to 4.
15719         Minor formatting.
15720
15721 2004-11-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15722
15723         * lily/system.cc (apply_tweaks): new function. Run tweaks on all
15724         grobs that have tweaks specced.
15725         
15726 2004-11-14  Heikki Junes  <hjunes@cc.hut.fi>
15727
15728         * Documentation/user/sound-output.itexi: add code snippets for MIDI.
15729
15730 2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
15731
15732         * lily/font-metric.cc (get_indexed_char_stencil): Bugfix: get
15733         actual char #, not 0 based index.
15734
15735         * lily/system-start-delimiter.cc (staff_brace): Start at 65.
15736
15737         * mf/feta-beugel.mf: Actually start at char #65.  Add header.
15738         Warning: do make -C mf clean.
15739
15740         * lily/context-property.cc: Compile fix.
15741
15742         * scm/output-gnome.scm: Add ec-fonts-mftraced to ~/.fonts.conf.
15743         Grok ec-fonts, braces and dynamics.
15744
15745         * scm/framework-gnome.scm (gnome-main): Register braces with pango.
15746
15747 2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15748
15749         * lily/include/tweak-registration.hh: new file.
15750
15751         * lily/tweak-registration.cc: new file.
15752
15753         * scm/framework-gnome.scm (save-tweaks): use new key mechanism for
15754         saving tweaks.
15755
15756         * scm/output-gnome.scm (text): comment dribble.
15757
15758 2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
15759
15760         * lily/pangofc-afm-decoder.cc (main): Test more feta fonts.
15761
15762         * scm/output-gnome.scm (bezier-sandwich): New function.  Reset
15763         path-def before using.  Fixes muchtomany slurs in wrong places
15764         bug.
15765
15766 2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15767
15768         * lily/grob-scheme.cc (LY_DEFINE): add new function ly:grob-key.
15769
15770         * lily/include/object-key-undumper.hh (Module): new file.
15771
15772         * lily/object-key-undumper.cc (Module): New file. Deserialize
15773         keys. SCM bindings
15774
15775         * lily/object-key-dumper.cc (Object_key_dumper): idem.
15776         Provide SCM bindings.
15777
15778         * lily/include/object-key-dumper.hh (class Object_key_dumper): 
15779         new file. Serialize object keys.
15780         
15781         * lily/object-key.cc (dump): new function.
15782         (as_scheme): new virtual function
15783         (undump): new function
15784         (undumpers): new table.
15785
15786         * lily/include/global-context.hh (Context): take \score key upon init.
15787
15788         * lily/object-key-dumper.cc (serialize_key): new file.
15789
15790         * lily/include/object-key-dumper.hh (class Object_key_dumper): new file.
15791
15792         * lily/lily-lexer.cc: remove \quote.
15793
15794         * lily/lookup.cc (triangle): rewrite, obviating symmetric_x_triangle().
15795
15796         * lily/context.cc (Context): take key argument in ctor.
15797         (create_context): new function
15798
15799         * lily/grob.cc (Grob): take key argument in ctor.  
15800
15801         * lily/lilypond-key.cc (do_compare): new file.
15802
15803         * lily/object-key.cc (Object_key): new file.
15804
15805         * lily/include/object-key.hh (class Object_key): new file.
15806
15807         * lily/include/lilypond-key.hh (class Lilypond_context_key): new file.
15808
15809 2004-11-13  Graham Percival  <gperlist@shaw.ca>
15810
15811         * Documentation/user/lilypond-book.itely: add small warning about
15812         noindent default in lilypond-book.
15813
15814         * Documentation/user/converters.itely: add examples for convert-ly.
15815
15816         * Documentation/user/examples.itely: change version string in templates
15817         to 2.4.0.
15818
15819 2004-11-12  Karl Hammar  <karl@aspodata.se>
15820
15821         * GNUmakefile.in (local-WWW-post): `find ...` overflows the
15822         cmdline, use xargs instead (backportme)
15823
15824 2004-11-10  Andreas Scherer  <andreas_mutopia@freenet.de>
15825         
15826         * Documentation/user/: Numerous fixes in the user manual.
15827
15828 2004-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15829
15830         * lily/parser.yy (re_rhythmed_music): search music expression for
15831         context-id, surround by \new Voice if not found. Fixes:
15832         addlyrics-second-staff.ly
15833
15834         * VERSION: 2.5.0 released.
15835         
15836 2004-11-12  Jan Nieuwenhuizen  <janneke@gnu.org>
15837
15838         * Documentation/index.html.in: Fix url to one big page.  (backportme)
15839
15840         * Documentation/user/GNUmakefile: Separate rules for split and
15841         unsplit html documents.  Remove perl massaging.  (backportme)
15842
15843 2004-11-11  Graham Percival  <gperlist@shaw.ca>
15844
15845         * Documentation/user/lilypond-book.itely: add short warning about
15846         \lilypond{} in LaTeX docs.
15847
15848 2004-11-11  Jan Nieuwenhuizen  <janneke@gnu.org>
15849
15850         * stepmake/aclocal.m4: Barf if kpathsea/kpathsea.h is not
15851         found.  (backportme)
15852
15853         * Documentation/topdocs/INSTALL.texi (ec-fonts-mtraced): Add
15854         version requirement.  (backportme)
15855
15856         * configure.in: Be explicit about old versions of
15857         ec-fonts-mtraced.  (backportme)
15858
15859         * lily/context-selector.cc (set_tweaks): New function.
15860         * lily/grob-selector.cc (set_tweaks): (Re)set hash table.  Fixes
15861         web with -DTWEAK.
15862
15863         * Documentation/user/introduction.itely (Automated engraving):
15864         Remove fragment option.  Fixes web.
15865
15866         * lily/context-property.cc (make_item_from_properties):
15867         * lily/context.cc (add_context)[TWEAK]: Tweak registration behind
15868         #ifdef.
15869
15870         * scm/define-context-properties.scm
15871         (all-internal-translation-properties): Add tweakRank and tweakCount.
15872
15873         * lily/grob.cc: 
15874         * scm/define-grob-properties.scm (all-internal-grob-properties):
15875         Add tweak-rank and tweak-count.
15876
15877 2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
15878
15879         * scm/output-gnome.scm (string->utf8-string, char->utf8-string):
15880         New function.
15881         (text): Use them.
15882
15883         * scm/framework-gnome.scm (item-event): Add support from TLA.  Support
15884         animated/opaque grob dragging tweaks.
15885
15886         * buildscripts/guile-gnome.sh: Update.
15887
15888 2004-11-10  Mats Bengtsson  <mabe@s3.kth.se>
15889
15890         * scm/define-grobs.scm (all-grob-descriptions): Added
15891         line-interface to the LigatureBracket object.
15892
15893 2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
15894
15895         * scm/framework-gnome.scm (item-event): Support non-animated mouse
15896         dragging tweaks.
15897
15898         * lily/lily-guile.cc (ly_to_string, ly_to_symbol): New function.
15899
15900         * lily/context-selector.cc (store_context): New function.
15901
15902         * lily/grob-selector.cc (register_grob)[TWEAK]: Apply tweak.
15903         (store_grob): New function.
15904         (identify_grob): Add Moment parameter.
15905
15906         * lily/lily-parser.cc (parse_file)[TWEAK]: Read .ly.t file if it
15907         exists.
15908
15909         * scm/framework-gnome.scm (save-tweaks): Write as alist.
15910
15911 2004-11-09  Jan Nieuwenhuizen  <janneke@gnu.org>
15912
15913         * scm/framework-gnome.scm (item-event): Print grob id.
15914         (save-tweaks): New function.
15915         (tweak): New funtion.
15916         (item-event): Use it, bound to arrow keys.
15917
15918         * lily/context-property.cc (make_item_from_properties): Register grob.
15919         * lily/context.cc (add_context): Register context.
15920
15921         * lily/include/context-selector.hh:
15922         * lily/include/grob-selector.hh:
15923         * lily/context-selector.cc:
15924         * lily/grob-selector.cc: New file.
15925
15926 2004-11-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15927
15928         * lily/slur.cc: add 'positions to interface
15929
15930         * lily/main.cc: reinstate PS as standard output format. 
15931
15932         * scm/framework-tex.scm (output-preview-framework): print systems
15933         up to first non title system.
15934
15935         * lily/grace-engraver.cc (start_translation_timestep): split
15936         scm_cadddr
15937         
15938 2004-11-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15939
15940         * lily/quote-iterator.cc (Module): remove old quote-iterator
15941
15942         * scm/define-music-types.scm (music-descriptions): move
15943         NewQuoteMusic over QuoteMusic
15944
15945         * Documentation/user/notation.itely (Formatting cue notes): use
15946         \cueDuring.
15947
15948         * lily/new-quote-iterator.cc (quote_ok): new function.
15949
15950         * input/regression/quote-cue-during.ly: new file.
15951
15952         * input/regression/quote-grace.ly: new file.
15953
15954         * scm/define-context-properties.scm (Module): change definition of
15955         graceSettings
15956
15957         * lily/context-property.cc (Module): rename from
15958         translator-property.cc
15959
15960         * lily/context.cc (context_name_symbol): new function
15961
15962         * lily/grace-engraver.cc: new file. Set properties for grobs based
15963         on the grace-ness of now_moment().
15964
15965         * scm/music-functions.scm (add-grace-property): use list
15966         iso. vector for graceSettings
15967         remove set-{start,stop}-grace-properties. 
15968
15969         * lily/new-quote-iterator.cc (construct_children): set
15970         quote_outlet_ if no quoted-context-{id,type} specified.
15971
15972         * scripts/convert-ly.py (conv): \quote -> \quoteDuring.
15973
15974         * lily/parser.yy (command_element): remove \quote.
15975
15976         * ly/music-functions-init.ly (location): add quoteDuring music
15977         function. 
15978
15979         * lily/lexer.ll: allow \encoding in lyrics as well.  Remove
15980         optional semicolon. (backportme)
15981
15982 2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
15983
15984         * python/GNUmakefile (STEPMAKE_TEMPLATES): Unset USER_LDFLAGS, no
15985         need to link to GUILE et al.
15986
15987 2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15988
15989         * scm/define-music-properties.scm (all-music-properties): add
15990         quoted-context-type, quoted-context-id.
15991
15992         * scm/lily.scm (type-check-list): new function.
15993         
15994         * scm/lily-library.scm: new file. Generic library routines.
15995
15996         * lily/parser.yy (Generic_prefix_music): move typechecking out of
15997         parser.
15998
15999         * ly/music-functions-init.ly: add quoteDuring function.
16000
16001         * lily/include/music-iterator.hh (class Music_iterator): rename
16002         set_translator -> set_context
16003
16004         * lily/parser.yy (Generic_prefix_music_scm): add
16005         MUSIC_FUNCTION_SCM_SCM_MUSIC
16006
16007         * scm/lily.scm (sanitize-command-option): new function. (backportme)
16008
16009         * scm/framework-tex.scm (header): sanitize TeX paper size.
16010         (backportme)
16011
16012 2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
16013
16014         * elisp/lilypond-indent.el (LilyPond-indent-level): 2 is now standard.
16015
16016         * tex/lilyponddefs.tex: If no inputencoding use latin1.  (backportme)
16017
16018         * scm/framework-tex.scm (font-load-command): Use T1 if no
16019         font-encoding set.  (backportme)
16020
16021         * scm/lily.scm (postscript->pdf): Remove .pdf file if it
16022         exists before converting.  (backportme)
16023
16024         * scm/framework-tex.scm (convert-to-dvi): Remove .dvi file if it
16025         exists before converting.  (backportme)
16026         (convert-to-ps): Remove .ps file if it exists before
16027         converting.  (backportme)
16028
16029         * lily/lexer.ll: Remove extra progress newline, use present tense.
16030
16031         * scm/paper.scm (paper-alist): public.
16032         * scm/framework-tex.scm (convert-to-ps):
16033         * scm/lily.scm (postscript->pdf): Do not leak papersizename into
16034         command line.
16035
16036 2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16037
16038         * scm/lily.scm (ly:system): add > /dev/null 2>&1 . (backportme)
16039
16040         * lily/recording-group-engraver.cc (derived_mark): mark
16041         now_events_. (backportme)
16042
16043 2004-11-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16044
16045         * mf/GNUmakefile: use Fedora-3 in download link. (backportme.)
16046
16047         * scm/framework-tex.scm (convert-to-dvi): use ly:system for
16048         invoking latex. (backportme.)
16049
16050         * lily/stem.cc (off_callback): center stems for all rest stems.
16051
16052 2004-11-05  Werner Lemberg  <wl@gnu.org>
16053
16054         * Documentation/user/lilypond.tely: Add more guidelines for writing
16055         lilypond texinfo documents.
16056
16057 2004-11-05  Heikki Junes  <hjunes@cc.hut.fi>
16058
16059         * Documentation/index.html.in: remove <hr>.
16060
16061         * THANKS: change 2.3 to 2.4.
16062
16063 2004-11-05  Jan Nieuwenhuizen  <jannneke@gnu.org>
16064
16065         * scm/output-gnome.scm: More fontconfig comment.
16066
16067 2004-11-05  Pedro Kroger  <kroeger@pedrokroeger.net>
16068
16069         * GNUmakefile.in ($(builddir)/share/lilypond-force): create the
16070         <package> directory in $(builddir)/share according with
16071         PACKAGE_NAME defined in the VERSION file.
16072
16073 2004-11-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16074
16075         * lily/beam.cc (rest_collision_callback): use local beam
16076         multiplicity.
16077
16078         * input/regression/stem-stemlet.ly: new file.
16079
16080         * lily/stem.cc (add_head): store rests as well.
16081
16082         * scm/define-grob-properties.scm (all-user-grob-properties): add
16083         stemlet-length
16084
16085         * lily/stem.cc: store rests as well.
16086         
16087         * input/regression/new-slur.ly: mention forcing.
16088
16089 2004-11-04  Werner Lemberg  <wl@gnu.org>
16090
16091         * Documentation/user/*: A new round of layout fixes and document
16092         structure cleanup.
16093
16094 2004-11-04  Heikki Junes <hjunes@cc.hut.fi>
16095
16096         * Documentation/user/lilypond.tely: changes 2.3.x to 2.5.x.
16097
16098 2004-11-04  Jan Nieuwenhuizen  <janneke@gnu.org>
16099
16100         * Documentation/topdocs/INSTALL.texi (Top): Remove geometry.
16101
16102 2004-11-03  Jan Nieuwenhuizen  <janneke@gnu.org>
16103
16104         * Documentation/topdocs/INSTALL.texi (Top): Fix geometry url (dax).
16105
16106         * lily/lily-parser.cc (LY_DEFINE): Remove "Now " from message.
16107
16108         * lily/main.cc (main): Invoke identify.
16109
16110         * scm/lily.scm (postscript->pdf): Remove progress newline.
16111         Write progress to stderr.
16112
16113         * lily/paper-book.cc (output): Remove progress newline.
16114
16115         * scm/framework-tex.scm (convert-to-dvi, convert-to-ps): Call
16116         gettext on user messages, and remove whitespace.
16117
16118         * lily/paper-outputter.cc (get_paper_outputter): Add progress newline.
16119
16120         * scripts/lilypond-latex.py (program_name): Bugfix: use only basename of
16121         argv[0] (Thomas Scharkowski).
16122
16123         * configure.in: Bugfix: add REQUIRED parameter to STEPMAKE_TEXMF
16124         call (carlyannehorse).  Also check for mf and mf-nowin.  Add check
16125         for ec-fonts-mtraced.
16126
16127         * GNUmakefile.in (builddir-exec): Add symlink tex/out.  Fixes
16128         --srcdir build (Bertalan).
16129
16130         * stepmake/aclocal.m4 (STEPMAKE_GUILE_DEVEL): Check for guile
16131         headers and library too (Laura Conrad).
16132
16133         * Documentation/topdocs/INSTALL.texi (Top): Mention development
16134         package for guile too (Laura Conrad).
16135
16136         * lily/main.cc (usage): Typo.
16137
16138 2004-11-02  Werner Lemberg  <wl@gnu.org>
16139
16140         * Documentation/user/notation.ly: More fixes to improve appearance.
16141
16142         * tex/texinfo.tex: Updated from texinfo CVS -- this version provides
16143         better output for multicolumn tables.
16144
16145 2004-11-01  Mats Bengtsson  <mabe@s3.kth.se>
16146
16147         * lily/main.cc (dir_info): Fixed typo in the printouts.
16148
16149 2004-11-01  Werner Lemberg  <wl@gnu.org>
16150
16151         * buildscripts/mf-to-table.py (write_fontlist): Improve formatting
16152         of output.
16153         Set `per_line' to 2; replace hard-coded value with it.
16154
16155         * Documentation/user/*: Many fixes to improve appearance of
16156         printed manual.
16157
16158 2004-11-01  Werner Lemberg  <wl@gnu.org>
16159
16160         * Documentation/user/changing-defaults.itely,
16161         Documentation/user/notation.ly,
16162         Documentation/user/programming-interface.itely: Use @/.
16163         Fix formatting of some lilypond snippets and tables.
16164
16165         * scripts/lilypond-book.py (compose_ly): Provide useful default
16166         for LINEWIDTH in `override'.
16167
16168 2004-10-31  Graham Percival  <gperlist@shaw.ca>
16169
16170         * Documentation/user/invoking.itely: change "3.0" -> "2.4"
16171
16172 2004-10-31  Werner Lemberg  <wl@gnu.org>
16173
16174         Resetting @exampleindent to `5' gives ugly results with texinfo's
16175         DVI output.  Use `@format @exampleindent 0 ... @end format' instead
16176         (if not quoting) to change @exampleindent only locally.
16177
16178         * scripts/lilypond-book.py (NOQUOTE): New variable.
16179         (output) [LATEX]: Remove AFTER and BEFORE.
16180         [TEXINFO]: Remove AFTER and BEFORE.
16181         Fix QUOTE and VERBATIM pattern.
16182         Add NOQUOTE pattern.
16183         (Lilypond_snippet) [output_info, output_latex]: Don't handle AFTER
16184         and BEFORE.
16185         [output_texinfo]: Use NOQUOTE.
16186
16187 2004-10-31  Graham Percival  <gperlist@shaw.ca>
16188
16189         * Documentation/user/changing-defaults.itely: clarify paper
16190         size commands with correct info.
16191
16192         * Documentation/user/lilypond-book.itely: add more docs for
16193         filename extensions.
16194
16195 2004-10-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16196
16197         * VERSION (PATCH_LEVEL): Branch lilypond_2_4, release 2.4.0
16198         (PATCH_LEVEL): start 2.5.0.
16199
16200 #Local variables:
16201 #coding: utf-8
16202 #End:
16203