]> git.donarmstrong.com Git - lilypond.git/blob - ChangeLog
* lily/slur.cc (outside_slur_callback): make offset_scm optional.
[lilypond.git] / ChangeLog
1 2006-10-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
2
3         * lily/slur.cc (outside_slur_callback): make offset_scm optional.
4
5         * lily/beam.cc (rest_collision_callback): make prev_offset optional.
6
7         * lily/grob-closure.cc (chain_offset_callback): don't pass 0 but
8         SCM_UNDEFINED for non-existent data.
9
10         * lily/side-position-interface.cc (general_side_position): allow
11         optional current_offset argument for chaining, so combinations of side-position
12         and outside slur callback don't add up.  Fixes issue #92.
13
14         * lily/pango-font.cc (pango_item_string_stencil): use
15         logical_rect. This prevents spaces after words from disappearing,
16         issue #72.
17         
18         * VERSION: release 2.9.20
19
20 2006-10-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
21
22         * scm/define-grob-properties.scm (all-user-grob-properties):
23         mention stencil as user settable.
24
25 2006-10-02  Joe Neeman  <joeneeman@gmail.com>
26
27         * Documentation/user/page.itely (Page formatting): 
28         document auto-first-page-number
29
30         * lily/page-breaking.cc (find_chunks_and_breaks): 
31         * lily/paper-score.cc (calc_breaking): Follow changes to the
32         Constrained_breaking interface
33
34         * lily/constrained-breaking.cc (calc_subproblem): run the main loop
35         here backwards, as an optimisation
36         (initialize): new function; move most of the code in resize () here
37         (combine_demerits): cache ragged_right_
38         (Constrained_breaking): constructor now takes the Paper_score
39
40 2006-10-02  Erik Sandberg  <mandolaerik@gmail.com>
41         
42         * lily/lexer.ll, lily/parser.yy: Add EXPECT_NO_MORE_ARGS token, to
43         avoid parser lookahead for 0-ary functions.
44
45         * lily/translator.cc: Extract event classes from
46         IMPLEMENT_TRANSLATOR_LISTENER for documentation generation.
47
48 2006-10-02  Heikki Junes  <hjunes@gmail.com>
49
50         * po/fi.po: Fix spaces, commas etc. in Finnish translation using
51         KBabel fix tool.
52
53 2006-10-01  Nicolas Sceaux  <nicolas.sceaux@free.fr>
54
55         * scm/layout-page-layout.scm (page-breaking-wrapper): new
56         function. Call the page breaking function selected in the
57         `page-breaking' \paper variable, then the post processing function
58         chosen using the `page-post-process' \paper variable.
59         (line-height): new function. Return the height of a system.
60         (line-minimum-position-on-page): new function. Return the position
61         of a system on page (using the previous line position), only
62         considering between system padding.
63         (stretchable-line?): new function. Says whether a line can be
64         stretched (ie. is not a title nor a single staff system).
65         (page-maximum-space-left): new function. Computes space left on a
66         page, when all systems are separated by their padding.
67
68         * lily/page-breaking.cc (breaking::make_pages): Move page post
69         processing function call to page breaking wrapper (common to all
70         page breakers).
71
72         * lily/paper-book.cc (book::pages): call the page breaking
73         wrapper, instead of the page breaker directly
74
75         * ly/paper-defaults.ly: Add \paper variables for page breaking
76         wrapper and page post processing function. Make
77         `write-page-layout' value depend on the 'dump-tweaks option. Add a
78         `system-maximum-stretch-procedure' variable for holding a function
79         computing the maximum stretch a system allows.
80
81         * scm/layout-page-dump.scm (write-page-breaks): computes the
82         stretch to apply to systems on a page to minimize left
83         space. Dump this stretch length.
84
85         * ly/music-functions-init.ly (spacingTweaks): implement it. Read
86         the system-stretch property of the tweak data to stretch the
87         system.
88         (includePageLayoutFile): Void function which includes the
89         generated page-layout file if it exists and if the page layout
90         dumping is not asked.
91         (scoreTweak): if the score tweak named by the argument exists,
92         return it.
93
94 2006-10-01  Joe Neeman  <joeneeman@gmail.com>
95
96         * lily/page-spacing.cc (compress_lines, uncompress_solution):
97         handle correctly the case where there are multiple \noPageBreaks
98         in a row.
99
100 2006-09-30  Laura Conrad <lconrad@laymusic.org>
101
102         * abc2ly.py adds segno (S) and Coda (O) to articulations.
103         
104         * abc2ly.py fix so that entering " -- " will translate to a -- in
105         the lilypond instead of a " - - "
106         
107 2006-09-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
108
109         * lily/align-interface.cc: fix typo
110
111         * lily/dynamic-text-spanner.cc (print): Add a special case for
112         trill spanner right sides. 
113
114         * scm/define-grobs.scm (all-grob-descriptions): set padding to 0.1
115
116         * lily/align-interface.cc (get_extents_aligned_translates): add
117         support for padding variable.
118
119         * lily/break-align-interface.cc (self_align_callback): oops: use
120         loop variable in guard.
121
122         * input/regression/repeat-percent-grace.ly: new file.
123
124         * lily/percent-repeat-engraver.cc (start_translation_timestep):
125         remember first currentCommandColumn of a grace run. Fixes issue 70.
126
127         * lily/percent-repeat-iterator.cc (class Percent_repeat_iterator):
128         move class definition to CC file.
129
130         * lily/multi-measure-rest.cc (percent): use robust_relative_extent()
131
132         * lily/slash-repeat-engraver.cc (listen_percent): don't warn for
133         measure-long  repeats.
134
135         * flower/include/international.hh: include stdarg.h
136
137 2006-09-30  Joe Neeman  <joeneeman@gmail.com>
138
139         * lily/page-turn-page-breaking.cc (calc_demerits): now that we allow
140         put_systems_on_pages to return an empty result, we need to assign
141         demerits properly in that case.
142         (put_systems_on_pages): Make the number of pages depend on the
143         evenness of page_number. Add auto-first-page-number.
144         (calc_subproblem): ensure that the page-number is even for the
145         left-hand page. Warn if the first page-turn doesn't fit onto the
146         first (right-hand) page.
147
148         * lily/page-spacing.cc (solve): bug: demerits_ would always be inf
149         (min_page_count): make this publicly accessible
150         (min_page_count): fix a bug when there are forced page breaks that
151         was introduced when I made this loop run backwards
152         (space_systems_on_n_pages, space_systems_on_n_or_one_more_pages):
153         replace space_systems_on_min_pages with these two. The logic in
154         space_systems_on_min_pages was getting too convoluted and is better
155         contained in page-turn-page-breaking.
156
157         * lily/page-turn-engraver.cc (breakable_column): remove an always-true
158         conditional
159         (breakable_column): typo
160
161         * lily/source-file.cc (get_line): fix off-by-one error
162         and clean up some of the logic
163
164 2006-09-29  Joe Neeman  <joeneeman@gmail.com>
165
166         * lily/page-breaking.cc (make_pages): honour the first-page-number
167         property
168
169 2006-09-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
170
171         * VERSION (PACKAGE_NAME): bump version.
172
173 2006-09-26  Pal Benko  <benko.pal@gmail.com>
174
175         * scm/parser-clef.scm: add petrucci-f3 and -f4 clefs
176         (the latter is the same as petrucci-f which is kept for compatibility)
177
178 2006-09-26  Erik Sandberg  <mandolaerik@gmail.com>
179         
180         * lily/part-combine-iterator.cc: solo1-event -> solo-one-event
181
182 2006-09-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
183
184         * lily/global-context.cc (run_iterator_on_me): break out of loop
185         if moment doesn't increase.
186
187         * scm/define-grob-properties.scm (all-user-grob-properties): add
188         forced property.
189
190         * lily/accidental.cc (after_line_breaking): read forced property.
191
192         * lily/accidental-engraver.cc (process_acknowledged): set 'forced
193         property.
194
195         * input/regression/accidental-forced-tie.ly:  new file.
196
197 2006-09-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
198
199         * ly/engraver-init.ly: set ignoreFiguredBassRest in Staff context.
200
201         * lily/figured-bass-engraver.cc: only listen to rest events if
202         ignoreFiguredBassRest is not set.
203
204         * scm/define-context-properties.scm
205         (all-user-translation-properties): add ignoreFiguredBassRest property
206
207 2006-09-24  Joe Neeman  <joeneeman@gmail.com>
208
209         * lily/paper-book.cc (get_system_specs):
210         (set_system_penalty): fix breakbefore.
211         We used to set a penalty on the system after the break, now we
212         set a permission on the system before the break
213
214         * lily/grob-property.cc: add scm debugging hooks into
215         property modification
216
217         * lily/context-property.cc:
218         * lily/engraver.cc:
219         rename make_foo_from_properties to internal_make_foo and
220         move it from context-property.cc to a member function of
221         Engraver.
222         
223         * lily/include/lily-guile-macros.hh:
224         overload ly_symbol2scm macro so that there is no more need
225         to use internal_foo
226
227         * lily/volta-repeat-iterator.cc:
228         * lily/tweak-engraver.cc:
229         * lily/tuplet-bracket.cc:
230         * lily/span-bar-engraver.cc:
231         * lily/script-engraver.cc:
232         * lily/prob-scheme.cc:
233         * lily/pointer-group-interface.cc:
234         * lily/parser.yy:
235         * lily/grob-scheme.cc:
236         * lily/grob-property.cc:
237         * lily/context.cc:
238         * lily/context-property.cc:
239         * lily/break-substitution.cc:
240         * lily/break-align-engraver.cc:
241         * lily/axis-group-interface.cc:
242         * lily/align-interface.cc:
243         remove calls to internal_FOO
244
245         * lily/system-start-delimiter-engraver.cc:
246         * lily/parenthesis-engraver.cc:
247         * lily/accidental-engraver.cc:
248         remove calls to make_foo_from_properties
249
250 2006-09-23  Graham Percival  <gpermus@gmail.com>
251
252         * Documentation/user/programming-iterfaces.itely: fix
253         def-music-function -> define-music... leftover.
254
255 2006-09-23  Joe Neeman  <joeneeman@gmail.com>
256
257         * lily/page-spacing.cc (min_page_count): by running the loop
258         backwards, we can calculate ragged_last properly.
259
260 2006-09-22  Mats Bengtsson  <mabe@drongo.s3.kth.se>
261
262         * ly/titling-init.ly (scoreTitleMarkup): Rename (typo!?)
263         printfirst-page-number -> print-first-page-number
264
265         * python/convertrules.py: corresponding rule.
266
267         * Documentation/user/page.itely (Page formatting): Document the
268         default values of all page layout parameters. 
269
270 2006-09-22  Erik Sandberg  <mandolaerik@gmail.com>
271
272         * lily/lexer.ll: remove limitation on music function arity. New
273         mode extratoken, which inserts extra EXPECT_* tokens after
274         MUSIC_FUNCTION token. Junk all MUSIC_FUNCTION_* tokens.
275
276         * lily/parser.yy: Change grammar for music function accordingly.
277
278         * lily/include/lily-parser.hh: New method get_state, new member
279         hidden_state. Works around a problem when parser fetches
280         MUSIC_FUNCTION token but not the following EXPECT_* token.
281
282         * lily/translator.cc, lily/context.cc:, lily/translator-group.cc:
283         remove try_music
284
285         * lily/*-engraver.cc, lily/*-performer.cc: Remove all remaining
286         references to Music; use ASSIGN_EVENT_ONCE everywhere
287
288         * lily/grob-info.cc: junk *music_cause
289
290         * lily/music.cc: copy eventified articulations to stream event
291
292         * lily/part-combine-iterator.cc: Cleanup using enums
293
294         * lily/translator-group.cc: Junk OldMusicEvent, and associated
295         methods
296
297         * lily/include/engraver.hh: Junk music.hh include
298
299         * lily/stream-event.cc: Changed constructors
300
301 2006-09-21  Graham Percival  <gpermus@gmail.com>
302
303         * Documentation/user/tweaks.itely (Fitting music onto fewer
304         pages): change settings to avoid warning messages.
305
306 2006-09-21  Mats Bengtsson  <mabe@drongo.s3.kth.se>
307
308         * Documentation/user/tweaks.itely (Fitting music onto fewer
309         pages): Add between-system-space setting. 
310
311 2006-09-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
312
313         * lily/accidental-placement.cc (calc_positioning_done): don't
314         trigger Y-extent calculation too early. Use pure_height instead.
315
316         * lily/scale.cc (LY_DEFINE): new file. 
317
318 2006-09-20  Joe Neeman  <joeneeman@gmail.com>
319
320         * lily/page-breaking.cc (find_chunks_and_breaks): ignore breaks
321         that happen at the start of a score: having a zero-length
322         chunk was messing up min_system_count calculations.
323
324         * lily/source-file.cc (get_line): lower_bound, not
325         binary_search. Fixes problem where point-and-click would
326         always point to the first line.
327
328 2006-09-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
329
330         * lily/accidental-placement.cc (calc_positioning_done): also put
331         stems into accidental support. 
332
333         * lily/tie-engraver.cc (process_music): also set tieMelismaBusy if
334         event_ detected.
335
336         * scm/script.scm (default-script-alist): avoid-slur and
337         slur-padding for portato script.
338
339         * lily/stem-tremolo.cc (translated_stencil): new function. 
340         (height): use new function. Fixes tremolos on whole notes.
341
342         * lily/slur-scoring.cc (get_best_curve): don't crash if no optimal
343         slur found.
344
345 2006-09-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
346
347         * scripts/abc2ly.py (try_parse_comment): idem.
348
349         * scripts/lilypond-book.py (find_toplevel_snippets): use 'foo' in
350         bar_string iso. string.find()
351
352         * lily/*.cc: idem.
353
354         * lily/slur.cc (get_curve): always use scm_is_pair() looping
355         scheme lists.  
356
357 2006-09-18  Graham Percival  <gpermus@gmail.com>
358
359         * Documentation/user/basic-notation.itely: add bug
360         warning about ties and octavation/clef.
361
362 2006-09-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
363
364         * VERSION (PACKAGE_NAME): release 2.9.18
365
366 2006-08-29  Milan Zamazal  <pdm@brailcom.org>
367
368         * elisp/lilypond-mode.el (LilyPond-command-alist): Don't try to
369         figure out midi file names right here.
370         
371 2006-09-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
372
373         * scm/framework-ps.scm (dump-stencil-as-EPS): naming pad-eps-boxes.
374
375         * scm/backend-library.scm: option naming:  gs-font-load*s*
376
377         * scm/framework-eps.scm (dump-stencils-as-EPSes): rename option to
378         include-eps-fonts
379
380 2006-09-17  Joe Neeman  <joeneeman@gmail.com>
381
382         * scm/define-music-types.scm (music-descriptions): remove
383         BreakEvent and fix {Page,Line}{Break,Turn}Event so
384         Music::to_event doesn't complain.
385
386         * lily/accidental-placement.cc (ape_compare):
387         * lily/semi-tie.cc (compare): 
388         * lily/note-column.cc (shift_compare): replace by XXX_less
389
390         * lily/tie-formatting-problem.cc (set_chord_outline): 
391         * lily/tie-column.cc (calc_positioning_done): 
392         * lily/system.cc (post_processing)
393         (get_paper_system): 
394         * lily/stem.cc (note_head_positions)
395         (calc_positioning_done): 
396         * lily/spanner.cc (do_break_processing)
397         (find_broken_piece): 
398         * lily/span-bar.cc (print): 
399         * lily/semi-tie-column.cc (calc_positioning_done): 
400         * lily/rest-collision.cc (calc_positioning_done): 
401         * lily/program-option.cc (get_help_string): 
402         * lily/note-collision.cc (get_clash_groups):
403         * lily/new-fingering-engraver.cc (position_scripts):
404         * lily/keyword.cc (Keyword_table):
405         * lily/hara-kiri-group-spanner.cc (request_suicide):
406         * lily/grob-pq-engraver.cc (stop_translation_timestep):
407         * lily/accidental-placement.cc (calc_positioning_done):
408         (stagger_apes):
409         * lily/beam.cc (get_beam_segments):
410         * lily/grob-array.cc (remove_duplicates):
411         use new vector_sort
412         
413         * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily:
414         ragged-last-bottom = ##f (test the new page breaker)
415
416         * flower/include/std-vector.hh (vector_sort): use STL sort stuff
417
418         * scm/define-context-properties.scm
419         (all-internal-translation-properties): remove properties that
420         were used to communicate page-turn stuff to the paper-column
421         engraver.
422
423         * lily/lily-guile.cc (robust_scm2string): new function
424
425         * lily/paper-column-engraver.cc: Clean up page turn stuff
426
427         * lily/page-turn-engraver.cc: Re-write the page turn logic here
428         instead of cluttering up paper-column-engraver.cc
429
430 2006-09-17  Nicolas Sceaux  <nicolas.sceaux@free.fr>
431
432         * scm/layout-page-dump.scm (scm): export utility function names,
433         to allow user writing cutsom dumping functions.
434
435         * scm/layout-page-layout.scm: export utility function names to
436         enable custom page breaking function writing. Tabify.
437         (line-next-space): use ?-suffix only for predicates
438         (page-maximum-space-to-fill): new function. Return the space
439         between first and bottom system of a page, to give to
440         space-systems.
441         (space-systems): use a space-to-fill argument (for instance as
442         computed by page-maximum-space-to-fill) instead of computing
443         internaly this space with the page height. That way, the caller
444         can adjust the space to use.
445         (make-page-from-systems, walk-paths): compute space to fill before
446         calling space-systems.
447
448 2006-09-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
449
450         * scm/script.scm (default-script-alist): set paddings for every
451         type here, increase for portato mark.
452
453         * scm/lily.scm (define-scheme-options): typo: add s, so it is 
454         -dinclude-eps-fonts
455
456 2006-09-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
457
458         * scm/define-grobs.scm (all-grob-descriptions): oops, typo:
459         use spanner::set-spacing-rods
460
461         * lily/note-column.cc: reformat.
462
463         * lily/rest-collision.cc (calc_positioning_done): fix whole/half
464         step positioning for note/rest combinations.
465
466         * input/regression/rest-note-collision.ly: new file.
467
468         * scm/define-grobs.scm (all-grob-descriptions): add
469         springs-and-rods
470
471         * flower/include/std-vector.hh: switch off again.
472
473         * VERSION (PATCH_LEVEL): bump to 2.9.18
474
475         * flower/include/std-string.hh: idem.
476
477         * flower/include/std-vector.hh (_GLIBCXX_DEBUG): set if NDEBUG not set.
478
479 2006-09-15  Mats Bengtsson  <mabe@drongo.s3.kth.se>
480
481         * ly/engraver-init.ly: Make FiguredBass accepted in GrandStaff and
482         PianoStaff. 
483
484 2006-09-08  Joe Neeman  <joeneeman@gmail.com>
485
486         * Documentation/user/page.itely: update page breaking documentation
487
488 2006-09-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
489
490         * lily/note-collision.cc (calc_positioning_done): only access
491         first head if available.
492
493         * lily/tuplet-engraver.cc: add tupletFullLengthNote to description.
494
495         * scm/framework-ps.scm (output-preview-framework): use new name.
496
497         * lily/program-option.cc (internal_set_option): use new names.
498
499         * Documentation/user/SConscript (lilypond_book_flags): update -d
500         variable names.
501
502         * Documentation/user/lilypond-book.itely (Inserting LilyPond
503         output into other programs): new variable names.
504
505         * scm/lily.scm (define-scheme-options): uniformize var names.
506
507         * lily/tuplet-engraver.cc (listen_tuplet_span): verify that
508         tuplets_ is non-empty before popping.
509
510 2006-09-07  Joe Neeman  <joeneeman@gmail.com>
511
512         * lily/spanner.cc (find_broken_piece): 
513         * lily/spacing-spanner.cc (get_columns): 
514         * lily/source-file.cc (get_line): 
515         * lily/simple-spacer.cc (get_column_description): 
516         * lily/keyword.cc (lookup): 
517         use the new binary search.
518
519         * flower/include/std-vector.hh: replace binary_search with
520         a more STL-like version
521
522 2006-09-04  Michael Welsh Duggan  <md5i@cs.cmu.edu>
523
524         * lily/tie-performer.cc: remove unused last_event_ property.
525         (class Tie_performer): add now_tied_heads_ property for
526         partially-tied heads.
527         (acknowledge_audio_element): when adding an Audio_note, put the
528         note in now_tied_heads_ if the audio note is partially tied.
529         (stop_translation_timestep): always include entries in
530         now_tied_heads_ in heads_to_tie_.
531
532         * lily/drum-note-performer.cc (process_music): look for tie-events
533         in the articulations; pass to Audio_note constructor.
534
535         * lily/note-performer.cc (process_music): look for tie-events in
536         the articulations; pass to Audio_note constructor.
537
538         * lily/audio-item.cc (Audio_note): Initialize tie_event_ in
539         constructor.
540
541         * lily/include/audio-item.hh (class Audio_note): add tie_event_.
542         include initializer in constructor.
543
544 2006-09-02  Joe Neeman  <joeneeman@gmail.com>
545
546         * lily/simple-spacer.cc (get_line_forces): Ignore loose columns
547         unless they are breakable. This fixes discrepancies between the forces
548         calculated here and the forces calculated in get_line_configuration.
549
550         * lily/grob.cc (pure_relative_y_coordinate): fix some
551         mis-estimation that was happening with piano staves.
552
553         * lily/constrained-breaking.cc (resize): don't choke if we get a
554         measure that won't fit on a line.
555         (combine_demerits): don't consider uniformity when ragged
556
557         * lily/page-spacing.cc (solve): why the f* were there two of these?
558         (calc_subproblem): properly handle the case where a system is taller
559         than the page.
560
561         * lily/system.cc (get_paper_system): ensure that all the permissions
562         and penalties are passed to the paper systems.
563
564         * lily/page-breaking.cc (create_system_list): support system-count.
565
566         * scm/define-grobs.scm (pure-print-callbacks): add
567         ly:script-interface::print
568
569         * lily/page-spacing.cc (min_page_count): fix calculation of min
570         pages if we are ragged and there are non-zero springs.
571
572         * scm/layout-page-layout.scm: if the pure-height estimates are under
573         the real height, allow space-systems to ignore padding if it is
574         needed in order to fit the systems on one page
575
576         * lily/optimal-page-breaking.cc (try_page_spacing): fix reading
577         ragged properties
578         (solve): fix performance problem. Make sure we always get at least
579         one solution
580
581         * lily/page-breaking.cc (make_pages): include write-page-breaks
582         and page-stencil
583
584         * lily/paper-score.cc (calc_breaking): remove Gourlay breaker
585
586         * scm/define-grobs.scm: add the new slur-callback
587         fix pure-relevant to not exclude grobs whose extent is already
588         calculated
589
590         * ly/paper-defaults.ly: make ly:optimal-breaking the new default
591         page breaker
592
593         * lily/slur.cc (pure_height): new callback to estimate the height
594         of a slur
595
596 2006-09-02  Graham Percival  <gpermus@gmail.com>
597
598         * Documentation/user/invoking.itely: small update on
599         MacOS X notes; thanks Trevor!
600
601 2006-09-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
602
603         * VERSION (MY_PATCH_LEVEL): release 2.9.17
604
605         * lily/lexer.ll: accept EOF in all states.
606
607         * lily/tempo-performer.cc (Tempo_performer): initialize last_tempo_.
608
609         * lily/source-file.cc (Source_file): always 0-terminate character
610         array, to prevent Flex from barfing.
611
612         * lily/global-context.cc (get_output): robustness: don't crash if
613         no Score context found.
614
615         * lily/include/book.hh (class Book): idem.
616
617         * lily/include/context-def.hh (struct Context_def): idem.
618
619         * lily/include/score.hh (class Score): don't derive from Input.
620
621         * lily/book.cc (Book): add a copy ctor. 
622
623         * buildscripts/output-distance.py (FileLink.calc_distance): count
624         orphans in distance too.
625
626         * python/midi.c (midi_parse_track): robustness: don't read past
627         end of string.
628
629         * ly/performer-init.ly: add Control_track_performer, move
630         Tempo_performer and Time_signature_performer to Score.        
631
632         * lily/score-performer.cc (acknowledge_audio_elements): override
633         from base class: add to audio-columns
634
635         * lily/control-track-performer.cc (add_text): new file: generate
636         the control track.
637
638         * lily/performance.cc: move output_header_track to
639         Control_track_performer ()
640
641         * lily/midi-walker.cc (Midi_walker): get channel in constructor.
642
643         * lily/include/midi-item.hh (class Midi_channel_item): insert
644         class into hierarchy, for items that can have a channel setting. Dehungarify.
645
646         * lily/include/performer.hh (class Performer): remove
647         play_element();  move functionality into announce/acknowledge.
648
649         * lily/audio-staff.cc (output): remove channel_ from Midi_track.
650
651         * lily/tie-engraver.cc (stop_translation_timestep): only wipe
652         heads_to_tie_ if there are new heads to tie.  Fixes polyphony in ties.
653
654 2006-08-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
655
656         * lily/tie-engraver.cc (stop_translation_timestep): robustness for
657         ambituses.
658
659         * lily/all-font-metrics.cc: remove TFM support.
660
661         * lily/include/tfm.hh: remove TFM support, TFM reader.
662
663         * lily/include/binary-source-file.hh: remove Binary_source_file.
664
665 2006-08-27  Graham Percival  <gpermus@gmail.com>
666
667         * Documentation/topdocs/NEWS.itely: add @c marker for
668         stuff I've processed.
669
670         * Documentation/user/ various: info from NEWS.
671
672 2006-08-27  Joe Neeman  <joeneeman@gmail.com>
673
674         * lily/paper-column-engraver.cc (finalize): Oops, this change
675         should have gone in on 2006-08-23
676
677 2006-08-26  Mats Bengtsson  <mabe@s3.kth.se>
678
679         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use double
680         quotes to quote arguments. Fixes Windows problem.
681
682         * python/lilylib.py (progress): idem
683
684 2006-08-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
685
686         * scripts/musicxml2ly.py: fix for importing
687         minor key signatures from MusicXML.  (Phillip Kirlin)
688
689 2006-08-24  Phillip Kirlin  <pkirlin@acm.org>
690
691         * python/musicxml.py: 
692         (Attributes.get_key_signature): now correctly retrieves mode from 
693         MusicXML. 
694
695 2006-08-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
696
697         * lily/parser.yy (output_def_body): take ownership of identifier
698         back to C++.
699
700         * Documentation/user/advanced-notation.itely (Metronome marks):
701         update use of \tempo in \midi.
702
703         * VERSION: release 2.9.16
704         
705 2006-08-24  Erik Sandberg  <mandolaerik@gmail.com>
706
707         * input/mutopia/*: upgrade to new midi tempo syntax (repairs make
708         web partially)
709
710 2006-08-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
711
712         * input/regression/tie-chord-partial.ly: clarify example.
713
714         * scm/define-music-properties.scm (all-music-properties): remove
715         untied.
716
717         * ly/music-functions-init.ly: remove \untied.
718
719         * lily/tie-engraver.cc (struct Head_event_tuple): store both
720         stream events and music events.
721         (stop_translation_timestep): search acknowledged heads for
722         tie-event.
723
724         * input/regression/tie-chord-partial.ly: new file.
725
726         * scm/define-markup-commands.scm (char): use ly:wide-char->utf-8
727         for \char markup command.
728
729         * scm/define-event-classes.scm (unlistened-music-event-classes): idem.
730
731         * scm/define-music-types.scm (music-descriptions): consistency:
732         Use solo-{one,two}-event iso. solo-[12]-event.
733
734         * lily/part-combine-engraver.cc (process_music):
735         Use solo-{one,two}-event iso. solo-[12]-event.
736
737         * ly/declarations-init.ly (partCombineListener): add Timing as
738         alias
739
740         * flower/std-string.cc (string_copy): use copy ()
741
742         * lily/source-file.cc (Source_file): use copy(). Remove contents_str0()
743
744 2006-08-24  Graham Percival  <gpermus@gmail.com>
745
746         * Documentation/user/changing-defaults.itely, global.itely,
747         lilypond-book.itely, page.itely: minor changes from mailist.
748
749 2006-08-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
750
751         * buildscripts/mutopia-index.py (allfiles): filter lily-XXX and
752         snippet-map
753
754         * scm/define-context-properties.scm
755         (translator-property-description): robustness: detect type errors
756         in property definitions.
757
758         * lily/parser.yy (score_body): protect SCORE_IDENTIFIER result
759         after getting it from SCM. 
760
761         * lily/smobs.cc (protect_smob): switch off fancy smob protection
762         for now. 
763
764         * lily/include/performer.hh (class Performer): strip get_tempo()
765         method.
766
767         * lily/midi-def.cc: strip file.
768
769         * lily/lexer.ll (Lily_lexer): don't protect hash key separately.
770
771         * lily/include/context-def.hh (struct Context_def): use
772         VIRTUAL_COPY_CONSTRUCTOR().
773
774         * lily/source-file.cc: smobification.
775
776         * lily/include/source-file.hh (class Source_file): smobify
777         Source_file. Trim redundant members.
778
779         * lily/parser.yy (Lily_lexer::try_special_identifiers): unprotect
780         clones after creation. This plugs a huge memory leak.
781
782         * python/convertrules.py (FatalConversionError.sub_tempo):
783         complete rule for \midi{ \tempo }
784
785         * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): idem.
786
787         * input/mutopia/F.Schubert/morgenlied.ly (pianoLH): update tempo.
788
789 2006-08-23  Joe Neeman  <joeneeman@gmail.com>
790
791         * input/regression/optimal-page-breaking-hstretch.ly: test for
792         ragged-last-bottom also
793
794         * lily/paper-column-engraver.cc (finalize): make the end of a score
795         breakable by default. This is to balance out a change in behaviour
796         of the page-turn-breaker which no longer makes the end of a score
797         breakable.
798
799         * lily/paper-book.cc (pages): set the systems_ once the pages are
800         broken
801
802         * lily/page-turn-page-breaking.cc (calc_subproblem): use the new
803         Page_breaking interface.
804
805         * lily/page-breaking.cc (class Page_breaking): make the interface
806         more consistent and provide abstractions for dealing with
807         Line_divisions.
808
809         * lily/optimal-page-breaking.cc (solve): use a more straightforward
810         algorithm. Use the new interface to Page_breaking.
811
812         * lily/page-spacing.cc: better support for ragged-bottom and
813         ragged-last-bottom
814
815 2006-08-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
816
817         * python/convertrules.py (conv): warning on \tempo{}
818
819         * ly/performer-init.ly: set tempoWholesPerMinute.
820
821         * ly/midi-init.ly: remove \midi
822
823         * lily/tempo-performer.cc: look at tempoWholesPerMinute to set
824         MIDI tempo.
825
826         * lily/metronome-engraver.cc (process_music): use tempoUnitCount
827         tempoUnitDuration for determining what to print.
828
829         * lily/lyric-extender.cc: typo.
830
831         * lily/parser.yy (output_def_body): disallow \tempo in \midi{}
832
833         * lily/duration-scheme.cc (LY_DEFINE): ly:duration-length: new
834         function.
835
836         * scm/lily.scm (define-scheme-options): alphabetize, add eps-pad-boxes.
837
838         * scm/framework-ps.scm (dump-stencil-as-EPS): only pad boxes if
839         eps-pad-boxes is set.
840
841         * scripts/lilypond-book.py (main): use -deps-pad-boxes.
842
843         * THANKS: update sponsors.
844
845         * ly/english.ly: quarter tone naming (thanks, Trevor Baca)
846
847         * Documentation/topdocs/NEWS.tely (Top): doc new feature.
848
849         * input/regression/tie-chord-untied.ly: new file.
850
851         * lily/tie-engraver.cc (acknowledge_note_head): check 'untied property.
852
853         * scm/define-music-properties.scm (all-music-properties): add
854         'untied property.
855
856         * buildscripts/mutopia-index.py (allfiles): look for .ly rather
857         than .ly.txt.
858         (headertext_nopics): sanitize no-examples text.
859
860         * scm/page.scm (make-page-stencil): don't rely on extents of
861         page-stencil. This fixes spurious space around .EPS files produced
862         with the EPS backend.
863
864 2006-08-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
865
866         * lily/stencil-scheme.cc (LY_DEFINE): make extent arguments optional.
867
868         * lily/hara-kiri-engraver.cc (process_music): remember
869         keepAliveInterfaces after processing \set
870
871         * lily/lyric-extender.cc (print): support left/right-padding for
872         extenders.
873
874         * scm/documentation-generate.scm (string-append): revert lilypond/
875         path, doc why.
876
877 2006-08-20  Graham Percival  <gpermus@gmail.com>
878
879         * Documentation/user/lilypond.tely: clarification to
880         license presentation (not to actual license).
881
882         * Documentation/user/basic-notation.itely,
883         instrument-notation.itely: minor changes.
884
885         * input/ {regression, test}/+.ly: clarification to
886         text (you can click on examples).  Thanks, Mats!
887
888         * input/manual/bar-lines.ly: adds ||: repeats.
889
890 2006-08-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
891
892         * make/ly-vars.make (OMF_FILES): strip ps.gz from OMF_FILES 
893
894         * scm/documentation-lib.scm (texi-file-head): category LilyPond.
895
896         * Documentation/user/lilypond.tely: strip lilypond/ from info
897         links, rename to category LilyPond
898
899         * lily/pango-font.cc (description_string): new function.
900
901         * VERSION: release 2.9.15
902
903         * lily/spacing-engraver.cc (stop_translation_timestep): use
904         Dscho's fix for spacing spanner. 
905
906         * scm/define-music-types.scm (music-descriptions): use
907         apply-output-event for ApplyOutputEvent
908
909         * lily/output-property-engraver.cc (listen_apply_output): rename
910         from listen_layout_instruction.
911
912         * lily/piano-pedal-engraver.cc (struct Pedal_type_info): new
913         function protect()
914
915 2006-08-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
916
917         * scm/lily.scm (lilypond-all): option read-file-list: substitute
918         commandline args with contains, split by \n.
919
920         * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
921         write snippet-names file, call with -dread-file-list. Fixes
922         command limitations on 64-bit systems.
923
924         * input/regression/stencil-color-rotation.ly: new file.
925
926         * lily/include/translator.hh (struct Acknowledge_information):
927         revert: don't use Protected_scm in global objects, as GUILE can't
928         handle gc_unprotect from automated destructors on MacOS X.
929  
930         * lily/grob.cc (get_print_stencil): use retval.expr() as base for
931         color, not the original stencil. Fixes combinations of
932         color/transparency/rotation. 
933
934         * scripts/lilypond-book.py (main): add --formats=eps for
935         texinfo/latex.
936
937         * lily/spacing-engraver.cc (stop_translation_timestep): don't
938         crash if spacing_ is nonexistent.
939
940 2006-08-14  Mats Bengtsson  <mabe@s3.kth.se>
941
942         * scripts/lilypond-book.py (output): Remove obsolete(!?)
943         \catcode`\@=12 in the LaTeX output.
944
945 2006-08-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
946
947         * scm/define-music-types.scm (music-descriptions):
948         use sustain-event iso. sustain-pedal-event.
949
950 2006-08-11  Joe Neeman  <joeneeman@gmail.com>
951
952         * scripts/convert-ly.py: honour the -n command-line switch
953
954 2006-08-10  Han-Wen Nienhuys  <hanwen@lilypond.org>
955
956         * scm/output-lib.scm (bar-line::calc-glyph-name): add dashed liine
957         break specification.
958
959 2006-08-10  Joe Neeman  <joeneeman@gmail.com>
960
961         * Documentation/user: convert-ly the user manual
962
963 2006-08-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
964
965         * stepmake/aclocal.m4: version check patch (thanks MWD)
966
967         * ly/music-functions-init.ly: robustness. Don't crash if
968         currentBarNumber is not a number.
969
970         * VERSION (PATCH_LEVEL): bump.
971
972 2006-08-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
973
974         * stepmake/aclocal.m4: better version check; handle fooX.Y
975         binaries too.
976
977         * ly/performer-init.ly: instrument name fixup.
978
979         * input/manual/chord-names-jazz.ly (banterProperties):
980         instrumentName update
981
982         * scm/define-event-classes.scm (lambda): use ly:is-listened-event-class
983
984         * lily/ly-module.cc (ly_module_symbols): use ly_hash_table_keys
985
986         * lily/translator.cc (LY_DEFINE): ly:is-listened-event-class: new
987         function. Use hash tables to check membership.
988
989         * lily/general-scheme.cc (LY_DEFINE): new function.
990
991         * lily/piano-pedal-engraver.cc (struct Pedal_type_info): idem
992
993         * lily/include/translator.hh (struct Acknowledge_information): add
994         Protected_scm
995
996         * ly/music-functions-init.ly: change name to BreathingEvent
997
998         * input/regression/*.ly: apply it.
999
1000         * python/convertrules.py (conv): better instrumentName conversion
1001         rule.
1002
1003         * scm/define-music-types.scm (music-descriptions): add
1004         line-break-event to LineBreakEvent music
1005
1006         * lily/music.cc (to_event): don't crash if music type not set.
1007
1008         * lily/spacing-loose-columns.cc (set_loose_columns): don't barf if
1009         spacing not set.
1010
1011         * lily/spacing-engraver.cc (stop_translation_timestep): set
1012         spacing for proportional notation too.
1013
1014         * scm/translation-functions.scm (format-bass-figure): inspect
1015         stream-event.
1016
1017         * scripts/lilypond-book.py (bindir): add bindir to $PATH.
1018
1019 2006-08-08  Joe Neeman  <joeneeman@gmail.com>
1020
1021         * lily/include/constrained-breaking.hh: add Line_details (Prob*)
1022
1023         * scm/page.scm (make-page): make it friendlier to call (esp. from C++)
1024
1025         * scm/layout-page-layout.scm (make-page-from-systems): new function
1026         (optimal-page-breaks): use the new page-breaking calling convention
1027
1028         * scm/define-context-properties.scm (all-user-translation-properties):
1029         add revokePageTurns
1030
1031         * lily/paper-column-engraver.cc (stop_translation_timestep): add
1032         revokePageTurns  functionality. If there is a special barline within
1033         the breakable region, break there instead of at the end of the region.
1034
1035         * lily/paper-book.cc (pages): use the new page-breaking calling
1036         convention
1037
1038 2006-08-07  Erik Sandberg  <mandolaerik@gmail.com>
1039
1040         * lily/lexer.ll, lily/source-file.cc: Add \sourcefileline command
1041
1042         * scripts/lilypond-book.py: insert \sourcefileline command in
1043         output, so lilypond error messages refer to the spot in the
1044         original .lytex / .itely sourcefile.
1045
1046 2006-08-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
1047
1048         * lily/spacing-loose-columns.cc (set_loose_columns): oops: use
1049         space to next column for distance to fixed col.
1050
1051         * VERSION (PACKAGE_NAME): release 2.9.14
1052
1053         * lily/pitched-trill-engraver.cc (make_trill): do set_parent also
1054         if no accidental.
1055
1056         * lily/accidental-engraver.cc (process_acknowledged): don't create
1057         accidental for trill span event. This fixes spurious accidentals
1058         on trills.
1059
1060 2006-08-04  Mats Bengtsson  <mabe@s3.kth.se>
1061
1062         * scm/define-grob-properties.scm (all-user-grob-properties):
1063         Clarify documentation of side-axis and direction. Thanks to Paul
1064         for the inspiration.
1065
1066         * lily/bar-line.cc: Add documentation for "||:" also in the
1067         interface documentation.
1068
1069 2006-08-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
1070
1071         * lily/spacing-loose-columns.cc (set_loose_columns): bugfix.
1072
1073         * lily/paper-column.cc (set_system): new function.
1074
1075         * lily/spacing-engraver.cc (stop_translation_timestep): store
1076         SpacingSpanner refs in Paper_column.
1077
1078         * lily/spacing-loose-columns.cc (set_loose_columns): rewrite
1079         compute loose clique spacing using GraceSpacing/SpacingSpanner.
1080
1081 2006-08-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
1082
1083         * lily/beam-engraver.cc (listen_beam): add method for
1084         Grace_beam_engraver too.
1085
1086 2006-08-03  Mats Bengtsson  <mabe@s3.kth.se>
1087
1088         * python/convertrules.py: Fix indentation bug that broke
1089         conversion of files older than 1.3.117.
1090         Fix escape error in the description for 2.9.6.
1091
1092 2006-08-02  Erik Sandberg  <mandolaerik@gmail.com>
1093
1094         * lily/*-engraver.cc: convert all try_music functions to listen_*
1095         functions.
1096
1097         * lily/piano-pedal-engraver.cc: some additional cleanups: use
1098         enums to represent pedal types, and calculate more data statically.
1099
1100         * scm/part-combiner.scm (recording-group-emulate): create a
1101         softcoded substitute for recording-group-engraver.cc.
1102
1103         * lily/music.cc: make a common transpose function for events and
1104         music
1105
1106         * ly/declarations-init.ly: change melisma/melismaEnd. Eliminates
1107         ManualMelismaEvent, and obsoletes Melisma_translator.
1108
1109 2006-08-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
1110
1111         * input/test/instrument-name-align.ly: update version.
1112
1113 2006-08-02  Mats Bengtsson  <mabe@s3.kth.se>
1114
1115         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
1116         Doc the --pdf flag to lilypond-book.
1117
1118 2006-07-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
1119
1120         * Documentation/topdocs/NEWS.tely (Top): add description.
1121
1122         * input/regression/tuplet-full-length-note.ly: add file.
1123
1124         * lily/instrument-name-engraver.cc (acknowledge_axis_group):
1125         always store axis group.
1126
1127 2006-07-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
1128
1129         * input/regression/instrument-switch.ly: new file.
1130
1131         * lily/instrument-switch-engraver.cc (process_music): new file.
1132
1133         * ly/engraver-init.ly: add Instrument_switch_engraver
1134
1135         * ly/music-functions-init.ly: \instrumentSwitch
1136
1137         * scm/define-context-properties.scm
1138         (all-user-translation-properties): add instrumentCueName
1139
1140         * scm/define-grobs.scm (all-grob-descriptions): add InstrumentSwitch
1141
1142 2006-07-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
1143
1144         * ly/music-functions-init.ly: music function \transposition.
1145
1146         * lily/parser.yy (command_element): softcode \transposition.
1147
1148         * lily/fall-engraver.cc (process_music): delta-pitch -> delta-step.
1149         (process_music): oops.
1150
1151         * lily/instrument-name-engraver.cc (start_spanner): new
1152         function. Create spanner when property changes.
1153         (stop_spanner): new function.
1154
1155         * python/convertrules.py (conv): add rule.
1156
1157         * lily/instrument-name-engraver.cc: shortVocalName iso. vocNam,
1158         shortInstrumentName iso. instr.
1159
1160         * scm/output-ps.scm (dashed-line): add phase argument to
1161         dashed-line.
1162
1163         * lily/bar-line.cc (dashed_bar_line): new function.
1164         (compound_barline): support \bar "dashed". 
1165
1166         * lily/lily-parser-scheme.cc (LY_DEFINE): only write
1167         --output=DIR to DIR/BASE if it is a dir. 
1168
1169         * flower/file-name.cc (file_part): new function
1170         (dir_part): new function
1171
1172         * lily/lily-parser-scheme.cc (LY_DEFINE): 
1173
1174         * DEDICATION: update
1175
1176 2006-07-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
1177
1178         * lily/instrument-name-engraver.cc: formatting.
1179
1180         * python/convertrules.py (conv): bugfix for \epsfile.
1181
1182 2006-07-25  Joe Neeman  <joeneeman@gmail.com>
1183
1184         * lily/grob.cc:
1185         
1186         * lily/gourlay-breaking.cc: Oops, these should have been included
1187         in my last commit
1188
1189 2006-07-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
1190
1191         * scripts/*.py (program_name): cleanup relocation snippets.
1192
1193         * scripts/convert-ly.py (datadir): remove LILYPONDPREFIX support.
1194
1195 2006-07-24  Joe Neeman  <joeneeman@gmail.com>
1196
1197         * scm/define-grobs.scm (all-grob-descriptions): make NonMusicalPaperColumn
1198         page-breakable by default
1199
1200         * scm/layout-page-layout.scm (space-systems): fix bug where the force isn't
1201         correctly calculated for a single-system page
1202
1203         * scm/lily-library.scm (interval-sane?): also check that the first number is no
1204         bigger than the second number
1205
1206         * lily/simple-spacer.cc (solve): allow compression even when ragged (but we
1207         acknowledge that we aren't satisfying constraints)
1208
1209         * lily/hara-kiri-group-spanner.cc (request_suicide): give equal treatment to
1210         non-Items
1211
1212         * lily/grob.cc (pure_height): add minimum-Y-extent
1213
1214         * lily/gourlay-breaking.cc (solve): don't ignore a compression force, even if we're
1215         ragged
1216
1217         * lily/constrained-breaking.cc: convert code to use new Matrix class
1218         (get_best_solution): new function
1219
1220         * scm/page.scm (make-page-stencil): don't crash if we annotate-layout when there
1221         is a page with no systems
1222
1223 2006-07-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
1224
1225         * VERSION (PACKAGE_NAME): release 2.9.13
1226
1227         * scm/define-grobs.scm (all-grob-descriptions): remove stray
1228         assignment.
1229
1230 2006-07-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
1231
1232         * Documentation/topdocs/NEWS.tely (Top): doc new features.
1233
1234         * scm/output-lib.scm (grace-spacing::calc-shortest-duration): new
1235         function.
1236
1237         * scm/define-grob-properties.scm (all-user-grob-properties):
1238         remove grace-space-factor.
1239
1240         * scm/define-grob-interfaces.scm (grace-spacing-interface): add
1241         grace-spacing-interface
1242         (spacing-options-interface): add.
1243
1244         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add Grace_spacing_engraver
1245
1246         * lily/spacing-options.cc (get_duration_space): move function from spacing-basic.cc
1247
1248         * lily/spacing-basic.cc (note_spacing): do init_from_grob on
1249         GraceSpacing object.
1250
1251         * lily/note-spacing.cc: fix prop list formatting
1252
1253         * lily/beaming-pattern.cc (de_grace): new function. Sensible
1254         beaming for grace notes too.
1255
1256         * input/regression/spacing-grace.ly: update.
1257
1258         * lily/grace-spacing-engraver.cc: new file.
1259
1260         * lily/spacing-spanner.cc: add strict-grace-spacing.
1261
1262 2006-07-20  Graham Percival  <gpermus@gmail.com>
1263
1264         * lily/parser.yy: compile fix.
1265
1266 2006-07-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
1267
1268         * scm/define-grobs.scm (all-grob-descriptions): typo.
1269
1270         * scm/framework-eps.scm (dump-stencils-as-EPSes): just strip
1271         .eps extension from includegraphics.
1272
1273         * scripts/lilypond-book.py (main): add support for --pdf. 
1274
1275         * lily/spacing-spanner.cc (calc_common_shortest_duration): use
1276         callback to compute common shortest duration.
1277         (set_springs): typo.
1278
1279         * scm/define-grob-properties.scm (all-user-grob-properties): add
1280         strict-grace-spacing.
1281
1282         * lily/spacing-determine-loose-columns.cc (is_loose_column):
1283         support float_grace_columns_.
1284
1285         * lily/spacing-options.cc (init_from_grob): new file.
1286
1287         * Documentation/topdocs/NEWS.tely (Top): doc tupletFullLengthNote.
1288
1289         * input/regression/spacing-loose-grace.ly: new file.
1290
1291         * Documentation/topdocs/NEWS.tely (Top): document new feature.
1292
1293         * lily/tuplet-engraver.cc (struct Tuplet_description): read
1294         tupletFullLengthNote too. Choose right bound depending on value.
1295
1296         * input/regression/tuplet-full-length-note.ly: new file.
1297
1298 2006-07-19  Erik Sandberg  <mandolaerik@gmail.com>
1299
1300         * lily/*-performer.cc: Converted try_music to listen_*
1301
1302         * lily/grob-info.cc, lily/engraver.cc: represent the cause of grob
1303         as a stream-event internally. Introduce event_cause (), deprecate
1304         music_cause ().
1305
1306         * scm/define-music-types.scm: Removed BusyPlayingEvent
1307         
1308 2006-07-19  Mats Bengtsson  <mabe@s3.kth.se>
1309
1310         * Documentation/user/advanced-notation.itely (Font selection):
1311         Document how to get a list of available fonts using 'lilypond
1312         -dshow-available-fonts blabla'.
1313
1314 2006-07-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
1315
1316         * GNUmakefile.in: filter lily-XXX.pdf files.
1317
1318         * scm/define-grob-interfaces.scm (bend-after-interface): add thickness.
1319
1320         * scm/define-grob-properties.scm (all-internal-grob-properties):
1321         remove delta-pitch. Use delta-position everywhere.
1322
1323         * scm/output-lib.scm (fall::print): use new order.
1324
1325         * scm/output-ps.scm (path): reorder arguments.
1326
1327         * scm/output-svg.scm (path): support for path primitive.
1328
1329         * input/regression/bend-after.ly: new file.
1330
1331         * Documentation/user/GNUmakefile ($(outdir)/%.pdf): foolproof
1332         recipe for eps -> pdf conversion.
1333
1334 2006-07-19  Erik Sandberg  <mandolaerik@gmail.com>
1335
1336         * lily/parser.yy, lily/lexer.ll: added some simplifications by
1337         Angelo Contardi.
1338
1339 2006-07-19  Graham Percival  <gpermus@gmail.com>
1340
1341         * input/manual/screech-boink.ly: moved to here.
1342
1343         * input/screech-boink.ly: deleted.
1344
1345         * scm/define-grob-properties.scm: clarify doc string.
1346
1347 2006-07-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
1348
1349         * Documentation/topdocs/NEWS.tely (Top): doc new feature.
1350
1351         * scm/output-ps.scm (path): define path.
1352
1353         * scm/define-stencil-commands.scm
1354         (ly:register-stencil-expression): add path.
1355
1356         * scm/define-music-properties.scm (all-music-properties): add delta-pitch.
1357
1358         * ly/engraver-init.ly: add Fall_engraver
1359
1360         * lily/parser.yy (music_function_event): allow musicfunction
1361         without music arg as music_function_event.
1362
1363         * lily/grob-scheme.cc (LY_DEFINE):
1364         ly:grob-robust-relative-extent. New function.
1365
1366         * scm/define-grobs.scm (all-grob-descriptions): add BendAfter
1367
1368         * scm/define-music-types.scm (music-descriptions): add BendAfterEvent.
1369
1370         * scm/output-lib.scm (fall::print): new function
1371
1372         * lily/fall-engraver.cc (stop_fall): new file.
1373
1374         * ly/music-functions-init.ly: alphabetise.
1375
1376         * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): pdf iso. eps as
1377         base.
1378
1379 2006-07-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
1380
1381         * VERSION (PATCH_LEVEL): bump version. Release 2.9.12
1382
1383         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
1384         doc pdftex usage.
1385
1386         * lily/translator-group.cc (connect_to_context): non const error message.
1387
1388         * Documentation/user/GNUmakefile ($(outdir)/%.pdf): update to use PDF
1389
1390         * scm/paper.scm (internal-set-paper-size): define landscape to #f
1391         if unset.
1392
1393         * scm/framework-ps.scm (convert-to-pdf): swap h and w in case of landscape. 
1394
1395         * stepmake/stepmake/texinfo-rules.make: strip DVI support.
1396
1397         * scm/framework-eps.scm (dump-stencils-as-EPSes): generate
1398         systems.pdftex too.
1399
1400         * scm/backend-library.scm (postscript->pdf): use -dEPSCrop for PDF.
1401
1402         * make/lilypond-vars.make (TEXINPUTS): add pdf output format.
1403
1404         * Documentation/topdocs/NEWS.tely (Top): add pdftex note.
1405
1406         * scm/output-ps.scm (resetrotation): use gsave/grestore for rotation.
1407
1408         * lily/main.cc (parse_argv): don't overwrite previous --formats string.
1409
1410         * scm/backend-library.scm (postscript->pdf): strip .eps too. 
1411
1412 2006-07-14  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1413
1414         * scm/layout-page-layout.scm: Define module, tidy code, use more
1415         functions iso. a single big one.
1416
1417         * scm/layout-page-dump.scm: move page dump functions used in two
1418         pass spacing to this file. Define module.
1419
1420         * scm/lily.scm (ly:load): don't load layout-page-layout.scm
1421          (separate module)
1422
1423         * ly/paper-defaults.ly: use module layout-page-layout.
1424
1425 2006-07-14  Erik Sandberg  <mandolaerik@gmail.com>
1426
1427         * lily/music.cc: Revised MusicEvent event class. It now contains
1428         event data directly instead of encapsulating it in music. The
1429         previously used class is renamed to OldMusicEvent.
1430
1431         * lily/stream-event.cc: Stream events are now probs.
1432         
1433         * lily/translator-group.cc, lily/translator.cc: Translators can
1434         now listen directly to stream events, by using macros
1435         [DECLARE,IMPLEMENT]_TRANSLATOR_LISTENER.
1436
1437         * lily/arpeggio-engraver.cc: Converted to use new event system
1438
1439         * THANKS: Corrected spelling mistake.
1440
1441 2006-07-12  Graham Percival  <gpermus@gmail.com>
1442
1443         * Documentation/user/SConscript, make/lilypond-vars.make,
1444         input/GNUmakefile: doc build looks in input/manual instead
1445         of input/test/
1446
1447         * input/manual/ GNUmakefile, SConscript: build files for
1448         input/manual/
1449
1450         * input/test/ various: some files moved to input/manual/ 
1451
1452         * Documentation/user/basic-notation.itely: small updates;
1453         thanks Kieren and Charles!
1454
1455 2006-07-12  Han-Wen Nienhuys  <hanwen@lilypond.org>
1456
1457         * VERSION (PACKAGE_NAME): release 2.9.11
1458
1459         * Documentation/topdocs/NEWS.tely (Top): update prop value 
1460
1461         * Documentation/user/basic-notation.itely (Tuplets): new property
1462         value.
1463
1464 2006-07-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
1465
1466         * python/convertrules.py (conv): tweaks. 
1467
1468         * VERSION (PATCH_LEVEL): bump version.
1469
1470         * python/convertrules.py (conv): add rule for
1471         tupletNumberFormatFunction.
1472
1473         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
1474         tupletNumberFormatFunction.
1475
1476         * scm/define-grobs.scm (all-grob-descriptions): calc TupletNumber
1477         text through 'text callback.
1478
1479         * lily/time-scaled-music-iterator.cc (construct_children): copy
1480         tweaks generated events.
1481
1482         * scm/define-context-properties.scm
1483         (all-user-translation-properties): remove tupletNumberFormatFunction
1484
1485         * lily/tuplet-engraver.cc (process_music): don't read
1486         tupletNumberFormatFunction
1487
1488         * scm/output-lib.scm (tuplet-number::calc-fraction-text): new
1489         function.
1490
1491 2006-07-11  Erik Sandberg  <mandolaerik@gmail.com>
1492
1493         * lily/global-context-scheme.cc: Separated ly:run-translator into
1494         smaller pieces.
1495
1496         * lily/score-engraver.cc, lily/score-performer.cc,
1497         scm/define-context-properties.scm: Make paper/midi output
1498         accessable as a context property.
1499
1500         * lily/score-translator.cc, lily/score-context.cc: Removed.
1501
1502 2006-07-07  Guido Amoruso  <guidonte@katamail.com>
1503
1504         * scm/ps-to-png.scm (Module): 
1505         * scm/framework-tex.scm (Module): 
1506         * scm/framework-ps.scm (Module): 
1507         * scm/backend-library.scm (Module): 
1508         * scm/framework-ps.scm: invoke gs with "-dDEVICEWIDTHPOINTS" and
1509         "dDEVICEHEIGHTPOINTS".
1510
1511 2006-07-04  Graham Percival  <gpermus@gmail.com>
1512
1513         * Documentation/user/ various: general improvements to
1514         "working with lilypond files" section.
1515
1516 2006-07-03  Erik Sandberg  <mandolaerik@gmail.com>
1517
1518         * lily/sequential-iterator.cc: Change the default get_music_list
1519         to read elements-callback music property
1520
1521         * scm/define-music-types.scm, scm/music-functions.scm: Cleaner
1522         processing of multimeasure rests. Softcoded
1523         sequential-music-iterator.
1524
1525         * lily/sequential-music-iterator.cc: Removed.
1526
1527 2006-06-28  Graham Percival  <gpermus@gmail.com>
1528
1529         * Documentation/user/basic-notation.itely: clarify \repeatTie.
1530
1531 2006-06-27  Erik Sandberg  <mandolaerik@gmail.com>
1532
1533         * lily/parser.yy: Wrap non-post-events in EventChords before
1534         assigning them to identifiers.
1535
1536 2006-06-27  Mats Bengtsson  <mabe@s3.kth.se>
1537
1538         * lily/bar-line.cc (compound_barline): Fix parenthesis error,
1539         gives correct vertical placement of \bar ":" in all staff
1540         sizes. Thanks Martial!
1541
1542 2006-06-26  Graham Percival  <gpermus@gmail.com>
1543
1544         * Documentation/user/invoking.itely : minor update from mailist.
1545
1546 2006-06-26  Erik Sandberg  <mandolaerik@gmail.com>
1547
1548         * lily/ various: Introduce stream events of types Prepare,
1549         OneTimeStep, CreateContext, AnnounceNewContext, RemoveContext,
1550         ChangeContext, SetProperty, RevertProperty, Override and Revert.
1551
1552         * lily/global-context*.cc: Time is now -inf before iteration
1553         starts.
1554
1555         * lily/include/context.hh: Removed unique_, init_
1556
1557         * Documentation/topdocs/NEWS: Make the feathered beam example
1558         avoid triggering a bug.
1559
1560 2006-06-24  Graham Percival  <gpermus@gmail.com>
1561
1562         * Documentation/user/ various: small additions from mailist.
1563
1564 2006-06-22  Mats Bengtsson  <mabe@s3.kth.se>
1565
1566         * ly/performer-init.ly: Add some missing links in the context
1567         hierarchy for MIDI output. There are probably some more missing!
1568
1569 2006-06-21  Graham Percival  <gpermus@gmail.com>
1570
1571         * Documentation/user/ various: minor spelling fixes;
1572         thanks Dave Luttinen!
1573
1574         * Documentation/user/ various: small clarifications;
1575         thanks Anthony Youngman!
1576
1577 2006-06-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
1578
1579         * po/fr.po: add \n appropriately.
1580
1581         * lily/lexer.ll: remove ? from version-seen?  
1582
1583 2006-06-19  John Mandereau  <john.mandereau@free.fr>
1584
1585         * po/fr.po; update translation, by Jean-Charles Malahieude and
1586         John Mandereau.
1587
1588 2006-06-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
1589
1590         * THANKS: add Markus Schneider.
1591
1592         * lily/tab-staff-symbol-engraver.cc: derive from Engraver, not
1593         Staff_symbol_engraver
1594
1595         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): don't
1596         replace staff_engraver
1597
1598         * lily/staff-symbol-engraver.cc (stop_spanner): announce end of
1599         spanner.
1600
1601         * lily/staff-collecting-engraver.cc
1602         (acknowledge_end_staff_symbol): new function
1603
1604         * lily/volta-engraver.cc (acknowledge_end_staff_symbol): new function. 
1605
1606         * lily/staff-collecting-engraver.cc
1607         (acknowledge_end_staff_symbol): new function.
1608
1609         * lily/main.cc: switch on relocation by default.
1610
1611 2006-06-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
1612
1613         * lily/spacing-spanner.cc (musical_column_spacing): set
1614         compound_fixed_note_space to 0.0. Document why.
1615
1616         * lily/simple-spacer.cc (is_sane): also have a kludge for numeric
1617         range of inverse_hooke_
1618         (Simple_spacer): init completely.
1619         (fits): const
1620         (get_line_configuration): don't use cols.resize(); it introduces
1621         initialized data.
1622
1623         * scm/framework-ps.scm (dump-page): add setstrokeadjust. 
1624
1625         * ps/music-drawing-routines.ps: remove selectfont L1 hack.
1626
1627         * lily/beaming-pattern.cc (best_splitpoint_index): urg, 2nd
1628         try. Divide by beatlength.
1629
1630         * input/regression/beaming-ternary-metrum.ly: update doc.
1631         add beatLength hack.
1632
1633         * scm/music-functions.scm (make-time-signature-set): add
1634         standard-beat-grouping. 
1635
1636 2006-06-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
1637
1638         * input/regression/tie-whole.ly: new file.
1639
1640         * lily/tie-formatting-problem.cc (set_column_chord_outline): don't
1641         cross center of note head in case of invisible stem. 
1642
1643 2006-06-16  Graham Percival  <gpermus@gmail.com>
1644
1645         * Documentation/user/ various: small fixes from mailist.
1646
1647 2006-06-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
1648
1649         * lily/breathing-sign.cc (offset_callback): idem.
1650
1651         * lily/align-interface.cc (align_to_fixed_distance): remove
1652         hungarian suffix.
1653
1654         * lily/beaming-pattern.cc (count_factor_twos): oops. We want
1655         x%2==0.
1656
1657 2006-06-15  Han-Wen Nienhuys  <hanwen@lilypond.org>
1658
1659         * VERSION (PACKAGE_NAME): release 2.9.9
1660
1661         * ly/lilypond-book-preamble.ly: add \version
1662
1663 2006-06-14  Han-Wen Nienhuys  <hanwen@lilypond.org>
1664
1665         * scripts/lilypond-book.py (PREAMBLE_LY): include
1666         lilypond-book-preamble.ly
1667
1668         * lily/stem.cc (get_beaming): return max of 0 and
1669         scm_ilength. Fixes slurring from/to beams.
1670
1671         * ly/lilypond-book-preamble.ly: new file.
1672
1673         * lily/slur.cc: add inspect-index feature.
1674
1675 2006-06-13  Graham Percival  <gpermus@gmail.com>
1676
1677         * Documentation/user/tutorial.itely: trivial fix.
1678
1679 2006-06-13  Erik Sandberg  <mandolaerik@gmail.com>
1680
1681         * lily/parser.yy, scm/ly-syntax-constructors.scm: Produce almost
1682         all non-event music in the parser via MAKE_SYNTAX.
1683
1684         * lily/parser-scheme.cc: Add ly:parser-error function
1685
1686         * scm/paper.scm: fix typo
1687
1688 2006-06-13  Han-Wen Nienhuys  <hanwen@lilypond.org>
1689
1690         * THANKS: add RT.
1691
1692         * lily/font-config.cc (init_fontconfig): add warning if cache_file
1693         is null.
1694
1695         * buildscripts/output-distance.py (test_compare_signatures):
1696         timing routines.
1697         (read_signature_file): use new signature format.
1698
1699         * scm/stencil.scm (write-system-signature): simpler signature
1700         format.
1701
1702         * lily/stem.cc (calc_stem_end_position): calc quantized-positions
1703         for beamed case. 
1704
1705         * lily/note-spacing.cc (stem_dir_correction): don't inspect
1706         stem_end_position, but estimate instead. 
1707
1708         * lily/tuplet-bracket.cc (calc_positions): look at
1709         stem-end-position for tuplet bracket slope. Fixes sloped tuplet
1710         brackets narrower than beams. 
1711
1712         * lily/lexer.ll: set version-seen? even if version is
1713         INVALID. 
1714
1715         * lily/rest.cc (y_offset_callback): bugfix: decide position
1716         override based on scm_is_number(). Fixes \rest on center staff
1717         line. 
1718
1719         * lily/beaming-pattern.cc (best_splitpoint_index): fix beaming
1720         patterns for 16th triplets.
1721
1722 2006-06-10  Graham Percival  <gpermus@gmail.com>
1723
1724         * Documentation/user/ page.itely, global.itely: editing
1725         and reorg.
1726
1727         * Documentation/user/ various: findex -> funindex.
1728
1729 2006-06-10  Erik Sandberg  <mandolaerik@gmail.com>
1730
1731         * lily/time-scaled-music-iterator.cc: Use tupletSpannerDuration to
1732         insert extra tuplet events.
1733
1734 2006-06-10  Graham Percival  <gpermus@gmail.com>
1735
1736         * Documentation/user/programming-interfaces.itely: add
1737         info from NEWS.
1738
1739         * python/convertrules.py: add annotatefoo -> annotate-foo
1740         rules.
1741
1742         * Documentation/user/global.itely: start editing.
1743
1744         * Documentation/user/page.itely: major editing, new spacing
1745         docs.
1746
1747 2006-06-10  Han-Wen Nienhuys  <hanwen@lilypond.org>
1748
1749         * scm/define-markup-commands.scm (wordwrap-markups): use
1750         output-def 'line-width if undefined.
1751
1752         * HACKING: trim outdated info.
1753
1754 2006-06-09  Mats Bengtsson  <mabe@s3.kth.se>
1755
1756         * scm/define-grobs.scm (all-grob-descriptions): Add
1757         line-spanner-interface to all grobs that already have
1758         text-spanner-interface or dynamic-text-spanner-interface
1759
1760         * scm/page.scm: Rename annotate{headers,systems,page}->
1761         annotate-*
1762
1763         * input/regression/page-spacing.ly,
1764         input/regression/page-layout-manual-position.ly: idem
1765
1766 2006-06-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
1767
1768         * lily/line-spanner.cc: cleanup property list.
1769
1770         * scripts/lilypond-book.py (find_toplevel_snippets): don't use
1771         generator expressions (2.3 compat). 
1772
1773 2006-06-09  Mats Bengtsson  <mabe@s3.kth.se>
1774
1775         * lily/vertical-align-engraver.cc: Make sure that the
1776         align{Above,Below}Context properties are included in the automatic
1777         documentation.
1778
1779 2006-06-08  Joe Neeman  <joeneeman@gmail.com>
1780
1781         * scm/paper-system.scm (paper-system-annotate): also annotate the
1782         estimated pure-Y-extent
1783
1784         * scm/define-grobs.scm: add pure-Y-extent and pure-Y-offset functions
1785
1786         * lily/system.cc (break_into_pieces): set the estimated height
1787         of each child system
1788
1789         * lily/stem.cc (pure_height): new pure-Y-extent callback
1790
1791         * lily/staff-symbol-referencer.cc (callback): don't destroy
1792         the staff-position property
1793
1794         * lily/hara-kiri-group-spanner.cc (request_suicide): split
1795         consider_suicide into two functions
1796
1797         * lily/constrained-breaking.cc (resize): use the new pure
1798         callbacks to estimate the height of a system
1799
1800         * lily/axis-group-interface.cc (pure_group_height): new
1801         side-effect-free VerticalAxisGroup height-callback
1802
1803         * lily/align-interface.cc (get_extents_aligned_translates):
1804         split align_elements_to_extents into two functions
1805         (get_pure_child_y_translation): new function
1806
1807         * lily/grob.cc: new functions for pure-Y-extent and pure-Y-offset
1808
1809         * lily/item.cc: new functions pure_is_visible and spanned_rank_iv
1810
1811         * lily/paper-score.cc: cache break_indices and columns
1812
1813         * lily/side-position-interface.cc: new pure-Y-extent callbacks
1814         
1815 2006-06-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
1816
1817         * lily/font-config.cc (init_fontconfig): do the init if
1818         cache_file, but don't look at cache_file.
1819
1820         * input/regression/quote-tie.ly: new file.
1821
1822         * lily/tie-engraver.cc (struct Head_event_tuple): add end_moment_
1823         to Head_event_tuple, so we deal gracefully with ties on
1824         cue-endings.
1825
1826         * lily/pango-font.cc (pango_item_string_stencil): type correctness
1827         for FcChar8*
1828
1829 2006-06-08  Graham Percival  <gpermus@gmail.com>
1830
1831         * input/test/ smart-transpose.ly, reverse-music.ly:
1832         \applyMusic to music functions update, thanks Michael!
1833
1834 2006-06-07  Graham Percival  <gpermus@gmail.com>
1835
1836         * input/test/ add-staccato.ly, add-text-script.ly,
1837         unfold-all-repeats.ly, music-box.ly: \applyMusic to
1838         music functions update, thanks to Michael Meixner.
1839
1840         * Documentation/user/music-glossary.tely: small fix
1841         from Francisco.
1842
1843         * Documentation/user/ various: minor additions from mailist.
1844
1845         * Documentation/user/lilypond.tely, basic-notation.itely:
1846         small test of @funindex.  (works here)
1847
1848         * input/test/font-table.ly: reduce size to partially
1849         de-ugly version in manual.
1850
1851         * Documentation/user/page.itely: new file (split former
1852         "global issues" into "page settings" and "non-musical
1853         output".
1854
1855         * Documentation/user/ various: fix @ref{}s to match
1856         new chapter names (above).
1857
1858 2006-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
1859
1860         * SConstruct (LILYPONDPREFIX): Bootstrap fix.
1861
1862 2006-06-06  Graham Percival  <gpermus@gmail.com>
1863
1864         * Documentation/user/advanced-notation.itely: add example
1865         for segno/coda on barline.
1866
1867         * tex/texinfo.tex: merge from upstream.
1868
1869 2006-06-06  Jan Nieuwenhuizen  <janneke@gnu.org>
1870
1871         * scripts/lilypond-book.py (process_snippets): Argument fix.
1872
1873         * SConstruct:
1874         * buildscripts/builder.py:
1875         * lily/SConscript: 
1876         * mf/SConscript: 
1877         * Documentation/user/SConscript:  More SCons fixes.
1878
1879 2006-06-03  Jan Nieuwenhuizen  <janneke@gnu.org>
1880
1881         * lily/font-config.cc (init_fontconfig): Only initialize if
1882         global cache_file is found.
1883
1884 2006-06-06  Erik Sandberg  <mandolaerik@gmail.com>
1885
1886         * ly/music-functions-init.ly: Updated \overrideProperty to use the
1887         new \applyOutput.
1888
1889 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
1890
1891         * VERSION (PACKAGE_NAME): release 2.9.8
1892
1893         * lily/ledger-line-engraver.cc (stop_translation_timestep): new
1894         function. Delay ledger modifying ledgered grobs to
1895         stop_translation_timestep(), to ensure that we're ledgering
1896         according to the new spanner.
1897         (acknowledge_staff_symbol): don't check for non-NULL
1898         staff_sym->get_bound()
1899
1900         * lily/staff-symbol-engraver.cc (start_spanner): set left bound on
1901         creation.
1902
1903         * Documentation/pictures/GNUmakefile (XPM_FILES): src-wildcard for
1904         pictures too.
1905
1906         * GNUmakefile.in (dist-toplevel-txt-files): dist aclocal.m4
1907         directly from srcdir/stepmake/aclocal.m4
1908         
1909         * Documentation/misc/GNUmakefile (TEXTS): use src-wildcard for
1910         disting MISC files.
1911
1912         * lily/simple-spacer.cc (get_column_desc): desc -> description.
1913
1914 2006-06-06  Joe Neeman  <joeneeman@gmail.com>
1915
1916         * lily/simple-spacer.cc (get_line_configuration): add
1917         keep-inside-line rods
1918         (struct Column_desc): add constructor
1919         (struct Rod_desc): add constructor
1920         (get_line_forces): check for forced page breaks here too
1921
1922         * lily/instrument-name-engraver.cc (acknowledge_axis_group): prevent
1923         support/elements cycles between InstrumentNames and AxisGroups
1924
1925 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
1926
1927         * config.make.in (METAFONT): remove MAKEINFO_VERSION
1928
1929         * stepmake/stepmake/topdocs-targets.make (make-txt-files): define
1930         make-txt-files target.
1931
1932         * stepmake/stepmake/toplevel-targets.make (do-top-doc): use
1933         make-txt-files target.
1934
1935         * configure.in (LINK_GXX_STATICALLY): $srcdir for readlink.py
1936
1937         * stepmake/stepmake/generic-vars.make (distdir): create dist in
1938         top-build-dir.
1939
1940 2006-06-06  Jürgen Reuter  <reuter@ipd.uka.de>
1941
1942         * Documentation/user/instrument-notation.itely,
1943         input/regression/breathing-sign-ancient.ly,
1944         input/test/divisiones.ly: Removed redundant property settings for
1945         vaticana contexts.
1946
1947         * ly/gregorian-init.ly: Rewrote \versus and \responsum in order to
1948         fix lyrics alignment problems.  They are implemented now as scheme
1949         functions that add the appropriate unicode char to the first lyric
1950         event rather than adding a separate lyric event.  Minor edit of
1951         comments.
1952
1953 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
1954
1955         * GNUmakefile.in (dist-toplevel-txt-files): new target. Don't
1956         pollute src dir with built .txt files, but install directly from
1957         Documentation/topdocs/out/
1958
1959         * buildscripts/output-distance.py
1960         (ComparisonData.create_html_result_page): put version/directories
1961         in table header.
1962
1963         * Documentation/topdocs/NEWS.tely (Top): document spacing section
1964         feature.
1965
1966         * configure.in (LINK_GXX_STATICALLY): use readlink.py to resolve links.
1967         Patch by Karl Hammar
1968         
1969         * buildscripts/readlink.py: add  file.
1970         Patch by Karl Hammar
1971
1972 2006-06-06  Joe Neeman  <joeneeman@gmail.com>
1973
1974         * lily/tuplet-number.cc (print): prevent stencil from being
1975         garbage collected.
1976
1977 2006-06-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
1978
1979         * scm/stencil.scm (write-system-signature): explicitly 
1980         -well, superfluously- close output port.
1981
1982         * buildscripts/output-distance.py (main): oops. Add extra argument.
1983
1984 2006-06-05  Graham Percival  <gpermus@gmail.com>
1985
1986         * Documentation/user/music-glossary.tely: clarified example
1987         from Francisco Vila, thanks!
1988
1989 2006-06-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
1990
1991         * input/regression/spacing-section.ly: new file.
1992
1993         * lily/input.cc (programming_error): new function.
1994
1995         * lily/spacing-engraver.cc (try_music): new function. Accept
1996         spacing-section-event
1997
1998         * lily/spacing-spanner.cc (set_springs): take slices of all
1999         columns for spacing.
2000
2001         * lily/include/paper-column.hh (class Paper_column): add
2002         Paper_column::compare.
2003
2004         * ly/spanners-init.ly (newSpacingSection): add newSpacingSection.
2005
2006         * scm/define-music-types.scm (music-descriptions): add
2007         SpacingSectionEvent
2008
2009         * lily/music-iterator.cc (report_event): use programming_error for
2010         sending non-event error.
2011
2012         * lily/input.cc (programming_error): new function
2013
2014         * buildscripts/output-distance.py (main): use compare-XXX for
2015         compare files.
2016         (main): --threshold option, default at 0.30
2017
2018         * output-distance.py (main): add --threshold option.
2019
2020 2006-06-04  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2021
2022         * scm/paper-system.scm (paper-system-annotate): fix problem when
2023         annotating an empty system
2024
2025 2006-06-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
2026
2027         * GNUmakefile.in: reinstate old web tar/copying.
2028
2029 2006-06-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
2030
2031         * lily/lyric-combine-music-iterator.cc (find_voice): return 0 if
2032         nothing changes. (Erik S) 
2033
2034         * lily/percent-repeat-iterator.cc (get_music_list): fix repeat
2035         count. (Erik S)
2036
2037 2006-05-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2038
2039         * scm/define-markup-commands.scm (whiteout): do not force
2040         foreground color of argument markup to black.
2041
2042         * scm/stencil.scm (annotate-y-interval): put arrow dimension at
2043         the left of the arrow, instead of below the arrow name, so that,
2044         when two little arrows are vertically stacked, their dimensions
2045         and name should not overlap. Add a color key parameter.
2046
2047         * scm/paper-system.scm (paper-system-annotate): Annotate
2048         next-space+next-padding instead of next-space. Annotate space
2049         between next-padding and next-space+padding, respectively, and
2050         following system extent and refpoint-Y-extent. Use colors.
2051
2052         * scm/page.scm (annotate-page): translate annotations slightly to
2053         the right.
2054
2055 2006-06-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
2056
2057         * lily/figured-bass-position-engraver.cc (acknowledge_end_slur):
2058         fix for x-staff slurs. Thanks Joe!
2059
2060         * buildscripts/output-distance.py
2061         (SystemLink.output_expression_change_count): keep track of changed
2062         details, and dump in details html page.
2063  
2064         * input/regression/figured-bass-staff.ly: add note about setting
2065         properties in Staff context.
2066
2067         * lily/figured-bass-position-engraver.cc (acknowledge_slur):
2068         add slurs and ties to support too.
2069
2070         * buildscripts/output-distance.py (main): set dest_dir
2071         argument. Add --max-count option.
2072
2073 2006-06-02  Jürgen Reuter  <reuter@ipd.uka.de>
2074
2075         * ly/gregorian-init.ly: Converted to utf-8.  Added memorable
2076         shortcuts for special unicode chars that are useful in chant
2077         notation.  Revised exisiting and added new comments.
2078
2079 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
2080
2081         * make/mutopia-rules.make: remove duplicate recipe.
2082
2083 2006-06-02  Werner Lemberg  <wl@gnu.org>
2084
2085         * tex/texinfo.cnf: Fix typo (\euro -> \minus).
2086         Add support for U+0132 (IJ) and U+0133 (ij).
2087
2088 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
2089
2090         * buildscripts/output-distance.py (FileLink): new class. collect
2091         info systems from one .ly file. 
2092         (FileLink.link_files_for_html): further tweaks.
2093
2094 2006-06-02  Graham Percival  <gpermus@gmail.com>
2095
2096         * tex/texinfo.tex: partial fix for @funindex.
2097
2098         * Documentation/user/macros.tely: uncomment @funindex (doesn't
2099         break anything).
2100
2101 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
2102
2103         * make/mutopia-vars.make (ly_examples): replace .ly.txt with .ly
2104
2105         * tex/texinfo.tex (sectionheading, q.v.): call \quoteexpand for
2106         @example too. Backportme.
2107
2108 2006-06-02  Graham Percival  <gpermus@gmail.com>
2109
2110         * tex/texinfo.cnf: added UTF-8 support for texinfo; patch
2111         from Werner Lemberg.
2112
2113 2006-06-02  Paco (Francisco Vila)  <fravd@ya.com>
2114
2115         * Documentation/user/music-glossary.tely: additional spanish
2116         updates and a lyrics fix in an example.
2117
2118 2006-06-02  Jürgen Reuter  <reuter@ipd.uka.de>
2119
2120         * scm/define-grob-properties.scm: Previous patch contained
2121         spurious line from another patch not yet committed.  Fixed.
2122
2123         * scm/define-grob-properties.scm: Add missing doc strings for
2124         ancient notation.
2125
2126 2006-06-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
2127
2128         * buildscripts/output-distance.py
2129         (ComparisonData.write_text_result_page): separate the scores, sort
2130         by geo_score.
2131
2132         * scm/framework-eps.scm (output-classic-framework): start at 1 for
2133         system signatures.
2134
2135         * buildscripts/output-distance.py (me_path): use argv[0] for
2136         sys.path extension
2137         (ComparisonData.img_cell): use colored borders.
2138
2139         * scm/stencil.scm (write-system-signature): escape newlines too.
2140         (write-system-signature): use (1,-1) interval for empty interval
2141
2142 2006-01-01  Graham Percival  <gpermus@gmail.com>
2143
2144         * Documentation/user/music-glossary.tely: Spanish updates
2145         from Francisco Vila.
2146
2147         * Documentation/user/lilypond-book.itely: addition from
2148         Vaclav Smilauer.
2149
2150         * Documentation/user/ various: edits, small additions
2151         from mailist, etc.
2152
2153 2006-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
2154
2155         * GNUmakefile.in (tree-lib-prefix-current):
2156         (tree-share-prefix-current): Use version number in tree, add
2157         `current' symlinks.
2158
2159 2006-06-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
2160
2161         * GNUmakefile.in: write VERSION, again.
2162
2163         * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
2164         $(outdir)/%.ly $(outdir)/%.ps): dump sigs for normal files too.
2165
2166         * stepmake/aclocal.m4: robuster version detection.
2167
2168         * buildscripts/output-distance.py
2169         (ComparisonData.create_html_result_page): copy only if file
2170         exists, fixup src paths.
2171
2172         * stepmake/bin/add-html-footer.py (built): junk gulp_file()
2173
2174 2006-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
2175
2176         * stepmake/aclocal.m4: Robustification for (gcc) version detection.
2177         Another datarootdir reto.
2178
2179         * cygwin/postinstall-lilypond.sh: Do not fail if info docs aren't
2180         available.  This should be moved to postinstall-lilypond-doc.
2181
2182 2006-05-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
2183
2184         * GNUmakefile.in: simplify local-WWW-post. 
2185         remove -type l from find.
2186
2187         * buildscripts/output-distance.py (ComparisonData.compare_trees):
2188         fixes. Don't follow symlinks.
2189         (ComparisonData.create_html_result_page): remove previous results.
2190         insert ../python in path.
2191
2192         * scripts/lilypond-book.py (PREAMBLE_LY): spacing fixes.
2193
2194 2006-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
2195
2196         * config.make.in (datadir): Add datarootdir to silence autoconf.
2197
2198         * stepmake/aclocal.m4: Update for autoconf-2.59d.
2199
2200 2006-05-31  Erlend Aasland  <erlenda@gmail.com>
2201
2202         * dynamic-engraver.cc: fix bug (dynamics collide with accidentals)
2203
2204         * scm/output-ps.scm (repeat-slash): fix a bug that made repeat
2205         slash beams too wide.
2206
2207 2006-05-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
2208
2209         * VERSION: release 2.9.7
2210         
2211 2006-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
2212
2213         * lily/relocate.cc (read_relocation_dir): Do not blindly
2214         dereference DIR.
2215
2216 2006-05-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
2217
2218         * lily/parser.yy: replace THIS by PARSER
2219
2220         * Documentation/index.html.in: add link to test-results.html page.
2221
2222         * Documentation/topdocs/NEWS.tely (Top): update NEWS entry.
2223
2224         * scm/translation-functions.scm (format-bass-figure): translate
2225         digits over 10 to the left
2226
2227         * scm/define-markup-commands.scm (translate-scaled): new markup.
2228
2229         * mf/feta-nummer-code.mf (code): overshoot the topright tip of the
2230         7 glyph. 
2231
2232         * ly/engraver-init.ly: add Figured_bass_engraver
2233
2234         * lily/engraver-group.cc (acknowledge_grobs): use start/stop drul.
2235
2236         * lily/figured-bass-engraver.cc (clear_spanners): use everywhere.
2237
2238         * lily/score-engraver.cc (announce_grob): only note START announces.
2239
2240         * lily/include/engraver-group.hh (Translator_group):
2241         acknowledge_hash_table_ is now drul.
2242
2243         * lily/engraver.cc (announce_end_grob): new method.
2244
2245         * lily/include/grob-info.hh (class Grob_info): add start_end_ member.
2246
2247         * lily/translator-dispatch-list.cc (create): take start_end argument.
2248
2249         * lily/include/translator.hh (TRANSLATOR_DECLARATIONS): change
2250         acknowledge_static_array_ to drul
2251
2252         * lily/include/translator.icc (ADD_END_ACKNOWLEDGER): new macro.
2253
2254         * scm/define-grob-interfaces.scm
2255         (bass-figure-alignment-interface): add bass-figure-alignment-interface
2256
2257         * scm/define-grobs.scm (all-grob-descriptions): add
2258         BassFigureAlignmentPositioning
2259
2260         * ly/Welcome-to-LilyPond-MacOS.ly: include in LilyPond, so version
2261         number stays up to date. Backportme.
2262
2263 2006-05-30  Mats Bengtsson  <mabe@s3.kth.se>
2264
2265         * Documentation/user/basic-notation.itely (Bar lines): Document
2266         the "||:" bar type. 
2267
2268 2006-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
2269
2270         * buildscripts/builder.py: Remove --ly option/target from mf-to-table.
2271
2272         * scripts/lilypond-book.py: Bugfix: do not blindly attempt
2273         .../current hack if LILYPONDPREFIX is fine.  Fixes `scons doc'
2274         build.
2275
2276         * Resurrect `scons lily' build.
2277
2278         * SConstruct (symlink_tree): Bugfix: link
2279         music-drawing-routines.ps to file iso directory.
2280
2281         * lily/SConscript: Remove kpath-guile from LIBS.
2282
2283         * SConstruct (libdir_package_version): Typo.
2284         (configure): Comment-out fontforge for lack of fontforge.pc .
2285         Also add libdir* to environment.
2286
2287 2006-05-30  Graham Percival  <gpermus@gmail.com>
2288
2289         * Documentation/user/ various: minor additions from mailist and
2290         editing.
2291
2292 2006-05-30  Paco <fravd@ya.com>
2293
2294         * Documentation/user/music-glossary.tely: numerous corrections and
2295         some new translations.
2296
2297 2006-05-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
2298
2299         * BackportmeStart.
2300         
2301         * buildscripts/output-distance.py
2302         (ComparisonData.create_html_result_page): new routine: summarise
2303         results in HTML page with images. 
2304         (ComparisonData.create_text_result_page): create summary text files too.
2305
2306         * GNUmakefile.in (web-ext): package .signature files too. They
2307         compress well. 
2308
2309         * scm/stencil.scm (write-system-signature): typo.
2310
2311         * GNUmakefile.in: create web-root/VERSION to help upload scripts.
2312
2313         * scm/stencil.scm (write-system-signature): better escaping.
2314         only write signature for music systems, not for markup systems.
2315
2316         * scm/framework-ps.scm (output-framework): dump-signatures support
2317         for plain output.
2318
2319         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): add -ddump-signatures.
2320
2321         * scm/framework-ps.scm (write-preamble): redefine mark_URI to nop
2322         for -dno-point-and-click
2323
2324         * lily/grob.cc (get_print_stencil): don't read
2325         point_and_click_global to determine whether to set grob-cause.
2326
2327 2006-05-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
2328
2329         * buildscripts/output-distance.py (main): new function.
2330         (ComparisonData): new class.
2331
2332         * lily/ledger-line-engraver.cc (acknowledge_staff_symbol): be more
2333         careful with generating new LedgerLineSpanners.
2334
2335         * lily/ledger-line-spanner.cc (set_spacing_rods): suicide if no staff.
2336
2337         * ly/engraver-init.ly: remove Ledger_line_engraver from Voice
2338         context. This fixes double ledger lines in output. 
2339
2340         * lily/system.cc (get_paper_system): remove 3 layer limit.
2341
2342         * buildscripts/output-distance.py (SystemLink.distance): new
2343         file. Compare signatures.
2344
2345         * python/safeeval.py (SafeEval.visitUnarySub): new file.
2346
2347         * lily/grob-array.cc (remove_duplicates): rename from
2348         uniq(). Sort before calling uniq() so it actually works.
2349
2350 2006-05-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
2351
2352         * scripts/lilypond-book.py (Lilypond_file_snippet.ly): strip
2353         \version from lilypond file snippet.
2354         (Lilypond_file_snippet.ly): oops. typo.
2355         (find_toplevel_snippets): urgh. again.
2356
2357         * lily/system.cc (get_paper_systems): uniq all_elements_ , to
2358         prevent duplicated broken items in output.
2359
2360         * scm/framework-eps.scm (output-classic-framework): only dump if
2361         dump-signatures is set.
2362
2363         * scm/lily.scm (define-scheme-options): add dump-signatures option.
2364
2365         * scm/stencil.scm (write-system-signature): new routine: write
2366         python parseable signature of a separate paper system.
2367         BackportmeEnd.
2368         
2369 2006-05-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
2370
2371         * lily/stanza-number-engraver.cc (process_music): use is_markup()
2372         iso is_string().
2373         include header.
2374
2375 2006-05-25  Erik Sandberg  <mandolaerik@gmail.com>
2376
2377         * translator-group.cc: send music events to engravers in
2378         non-bottom contexts.
2379
2380         * tuplet-engraver.cc: process tuplet brackets in correct order.
2381
2382 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
2383
2384         * stepmake/aclocal.m4: STEPMAKE_PYTHON(): clear cached value since
2385         arg 2 might point us to a new binary (patch by Karl Hammar)
2386         
2387 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
2388
2389         * VERSION (PACKAGE_NAME): release 2.9.6
2390
2391         * Documentation/topdocs/NEWS.tely (Top): trim explanation. 
2392
2393         * Documentation/user/*.itely: 2nd
2394         attempt: replace funindex -> findex globally.
2395
2396 2006-05-24  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2397
2398         * input/no-notation/display-lily-tests.ly: fix \applyOutput
2399         test. Add \break, \pageBreak, \pageTurn, etc, tests.
2400
2401         * scm/define-music-display-methods.scm: display methods for
2402         breaks. Fix \applyOutput.
2403
2404 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
2405
2406         * Documentation/user/macros.itexi: comment out funindex expansion. 
2407
2408         * Documentation/user/music-glossary.tely: junk \oldaddlyrics
2409         everywhere.
2410
2411         * GNUmakefile.in: fix wildcarding for scrips/out/ links. Thanks
2412         Karl Hammar. Backportme.
2413  
2414         * Documentation/user/advanced-notation.itely (Balloon help): idem.
2415
2416         * Documentation/user/changing-defaults.itely (Creating contexts): idem.
2417
2418         * Documentation/user/programming-interface.itely (Running a
2419         function on all layout objects): idem.
2420
2421         * Documentation/user/introduction.itely (Automated engraving):
2422         update \applyOutput syntax
2423
2424         * lily/lyric-combine-music-iterator.cc (start_new_syllable):
2425         remove debugging hook.
2426
2427         * configure.in (LINK_GXX_STATICALLY): use "" to allow $
2428         expansion. 
2429
2430         * Documentation/user/GNUmakefile (TEXI2DVI_FLAGS): add -E.
2431
2432         * stepmake/stepmake/texinfo-rules.make ($(outdir)/%.dvi): add
2433         TEXI2DVI_FLAGS to texi2dvi invocation. 
2434
2435 2006-05-24  Erik Sandberg  <mandolaerik@gmail.com>
2436
2437         * lily/chord-tremolo-*.cc: Reworked how \repeat "tremolo"
2438         works. More work is done by iterator now, and engraver has been
2439         very much simplified.
2440
2441         * lily/translator-group.cc: try_music is now invoked through a
2442         listener
2443
2444         * lily/*-iterator.cc: Massive cleanups. Junked
2445         try_music_in_children globally. Renamed try_music to report_event,
2446         and made that method descend to a bottom context automatically.
2447
2448         * lily/event-iterator.cc: New file.
2449
2450         * lily/output-property-iterator.cc,
2451         lily/old-lyric-combine-music-iterator.cc: Removed.
2452
2453         * python/convert-rules.py: Modified the syntax for \applyOutput.
2454
2455 2006-05-23  Graham Percival  <gpermus@gmail.com>
2456
2457         * stepmake/stepmake/texinfo-rules.make: added -E, allows pdf doc
2458         creation.
2459
2460         * Documentation/user/ various: stuff that might have helped
2461         to fix the pdf creation, plus some minor doc additions.
2462
2463         * Documentation/user/changing-defaults.itely: remove @b from
2464         @b{ @internasref{foo}}; this breaks texi2dvi -E.
2465
2466 2006-05-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
2467
2468         * lily/beaming-pattern.cc (beamify): deal with negative start
2469         moments for beaming patterns.
2470
2471 2006-05-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
2472
2473         * lily/beaming-info.cc (beamify): new function: read beatLength
2474         and beatGrouping from context. 
2475
2476         * input/regression/beam-beat-grouping.ly (Module): new file.
2477
2478         * input/regression/beam-unconnected-beamlets.ly (Module): new file.
2479
2480         * lily/beam.cc (get_beam_segments): generate events for
2481         max_connect_ case too.
2482         (get_beam_segments): read Stem::max-beam-connect.
2483
2484         * input/regression/beam-single-stem.ly: new file.
2485
2486         * lily/stem.cc (set_beaming): use #f as signaling value for
2487         beamcount 0.
2488
2489         * lily/beam-engraver.cc (typeset_beam): set right bound if unset.
2490
2491         * lily/beam.cc (set_beaming): read clip-edges property.
2492         (calc_direction): don't suicide for single stem.
2493
2494         * lily/beaming-info.cc (best_splitpoint_index): take bool*
2495         argument, remove 1<<15 hack. Remove clip_edges() 
2496
2497         * lily/hairpin.cc (print): only do padding for nonmusical bounds
2498
2499 2006-05-21  Graham Percival  <gpermus@gmail.com>
2500
2501         * Documentation/user/basic-notation.itely: reorg.
2502
2503         * Documentation/user/ various: minor fixes.
2504
2505 2006-05-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
2506
2507         * lily/stencil-expression.cc (register_stencil_head): opps, append
2508         to cdr of static SCM object.
2509
2510 2006-05-19  Graham Percival  <gpermus@gmail.com>
2511
2512         * Documentation/user/README.txt, lilypond.tely, macros.itexi:
2513         update framework for command index.  DOC WRITERS: use @funindex
2514         instead of @cindex @code{}.
2515
2516         * Documentation/user/ various: replace @cindex @code{} => @funindex
2517
2518 2006-05-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
2519
2520         * lily/beam.cc (set_stem_lengths): trigger 'beaming callback, in
2521         case positions is set manually. 
2522
2523 2006-05-18  Erik Sandberg  <mandolaerik@gmail.com>
2524         
2525         * scm/ly-syntax-constructors.scm: New file. Converted a few syntax
2526         rules to Scheme.
2527
2528 2006-05-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
2529
2530         * Documentation/user/changing-defaults.itely (Contexts explained):
2531         use absolute dimension for @image.
2532
2533         * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): generate PNG
2534         out image for illustration too.
2535         ($(outdir)/%.png): add more png <-> eps rules. 
2536
2537 2006-05-17  Graham Percival  <gpermus@gmail.com>
2538
2539         * Documentation/user/ various: remove trailing whitespace, cosmetic
2540         change to reduce changes produced by diff.
2541
2542 2006-05-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
2543
2544         * lily/main.cc (do_chroot_jail): correctness tweak.
2545
2546         * python/lilylib.py (system): import subprocess in system () only.
2547
2548         * scripts/*.py: use TARGET_PYTHON iso PYTHON. Backportme.
2549
2550         * make/substitute.make (ATVARIABLES): add TARGET_PYTHON as subst
2551         variable. Backportme.
2552
2553 2006-05-17  Erik Sandberg  <mandolaerik@gmail.com>
2554         
2555         * lily/parser.yy: Change all syntax rules of type Music to SCM type
2556
2557 2006-05-17  Werner Lemberg  <wl@gnu.org>
2558
2559         * lily/lexer.ll (init_signature_has_table): Add
2560         `scm-scm-music-music'.
2561
2562         * lily/parser.yy (MUSIC_FUNCTION_SCM_SCM_MUSIC_MUSIC): New token.
2563         (Generic_prefix_music_scm): Add rule for it.
2564
2565         * lily/quote-iterator.cc (Quote_iterator::process): Handle
2566         `quoted-transposition' property.
2567
2568         * ly/music-functions-init.ly (transposedCueDuring): New function.
2569
2570         * scm/define-music-properties.scm (all-music-properties): Updated.
2571
2572         * Documenation/topdocs/NEWS.itely: Document it.
2573
2574 2006-05-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
2575
2576         * python/lilylib.py (system): move import subprocess to system()
2577         definition. 
2578
2579         * python/convertrules.py (conv): fix convert-ly rules for 2.9.4
2580
2581         * VERSION (PATCH_LEVEL): release 2.9.5
2582         
2583         * Documentation/topdocs/INSTALL.texi (Top): update versions and
2584         build instructions. 
2585
2586         * ly/engraver-init.ly: switch on hairpinToBarline by default.
2587
2588 2006-05-16  Graham Percival  <gpermus@gmail.com>
2589
2590         * Documentation/user/basic-notation.itely: editing from Dave, thanks!
2591
2592         * Documentation/user/ various: minor fixes.
2593
2594 2006-05-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
2595
2596         * Documentation/topdocs/NEWS.tely (Top): add hairpinToBarline feature.
2597
2598 2006-05-16  Mats Bengtsson  <mabe@s3.kth.se>
2599
2600         * Documentation/user/advanced-notation.itely (Instrument names):
2601         Modified obsolete instruction on how to move instrument names away
2602         from the staves. Hmm, at second thought the bug probably has been
2603         solved, so the full bug description should probably be removed.
2604
2605 2006-05-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
2606
2607         * lily/dynamic-engraver.cc (typeset_all): hang ending on
2608         currentCommandColumn. 
2609
2610         * lily/hairpin.cc (print): also add padding for non-neighbor
2611         hairpin bounds.
2612
2613         * scm/define-context-properties.scm
2614         (all-user-translation-properties): add hairpinToBarline
2615
2616         * input/regression/hairpin-to-barline.ly: new file.
2617
2618         * lily/context.cc (internal_send_stream_event): thinko fix.
2619
2620         * lily/tie.cc (set_default_control_points): robustness fix.
2621
2622         * python/musicxml.py (Part.interpret): don't complain about
2623         incomplete measures.
2624
2625         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): only add
2626         new music if last_event_chord() returned None.
2627
2628         * python/musicxml.py (Part.interpret): skip back over chord notes.
2629
2630 2006-05-16  Erik Sandberg  <mandolaerik@gmail.com>
2631         
2632         * lily/percent-repeat-engraver.cc, lily/parser.yy,
2633         lily/define-music-types.cc, lily/percent-repeat-iterator.cc,
2634         lily/slash-repeat-engraver.cc,
2635         lily/include/percent-repeat-iterator.hh: Rework percent repeats:
2636         iterator sends PercentEvents
2637
2638         * lily/time-scaled-music-iterator.cc, lily/tuplet-engraver.cc:
2639         rework tuplets: send start/stop events to engraver
2640
2641         * lily/context.cc, lily/music.cc, lily/context-scheme.cc: Add
2642         dispatchers event-source and events-below to Context
2643         
2644 2006-05-15  Graham Percival  <gpermus@gmail.com>
2645
2646         * Documentation/user/README.txt: update info for doc writers.
2647
2648         * Documentation/user/programming-interface.itely: integrate
2649         Nicolas' fixes for chapter rewrite.
2650
2651         * Documentation/user/ various: minor fixes.
2652
2653 2006-05-15  Han-Wen Nienhuys  <hanwen@lilypond.org>
2654
2655         * lily/clef-engraver.cc: cleanup.
2656
2657         * Documentation/user/GNUmakefile: dist context-example.eps too.
2658
2659         * lily/key-engraver.cc (create_key): use
2660         explicitKeySignatureVisibility for cancellation too. 
2661
2662         * lily/font-config.cc (init_fontconfig): don't close file if
2663         f==NULL. 
2664
2665 2006-05-15  Erlend Aasland  <erlenda@gmail.com>
2666
2667         * Documentation/topdocs/NEWS.tely: niente and rotation news
2668
2669 2006-05-14  Erlend Aasland  <erlenda@gmail.com>
2670
2671         * lily/include/stencil.hh
2672         * lily/stencil.cc (rotate): new function. Makes it possible
2673         to rotate a stencil around a given offset.
2674
2675         * lily/grob.cc (get_print_stencil): add rotation support
2676
2677         * lily/stencil-interpret.cc (interpret_stencil_expression):
2678         add rotation support
2679
2680         * lily/stencil-scheme.cc (ly:stencil-rotate): new function
2681
2682         * scm/define-grob-properties.scm: add 'rotation property
2683
2684         * scm/define-markup-commands.scm: add rotate markup command
2685         
2686         * scm/output-ps.scm: add rotation support in PostScript backend
2687
2688         * scm/output-svg.scm: add rotation support in SVG backend
2689
2690 2006-05-13  Graham Percival  <gpermus@gmail.com>
2691
2692         * Documentation/user/music-glossary.itely: French correction.
2693
2694         * Documentation/user/programming-interface.itely: major
2695         new docs, some reorg, some info from Nicolas.
2696
2697         * Documentation/user/ various: small fixes.
2698
2699 2006-05-12  Mats Bengtsson  <mabe@s3.kth.se>
2700
2701         * Documentation/user/programming-interface.itely (Markup
2702         programmer interface): Remove duplicate text.
2703
2704 2006-05-12  Graham Percival  <gpermus@gmail.com>
2705
2706         * Documentation/user/context-example.eps: new file.
2707
2708         * Documentation/user/changing-defaults.itely: set up file to
2709         use eps image.
2710
2711         * Documentation/user/programming-interface.itely: changes
2712         from mailist.
2713
2714 2006-05-12  Han-Wen Nienhuys  <hanwen@lilypond.org>
2715
2716         * configure.in (LINK_GXX_STATICALLY): python 2.4 req.
2717
2718 2006-05-11  Graham Percival  <gpermus@gmail.com>
2719
2720         * Documentation/user/programming-interface.itely: first round of
2721         editing and merging emails from Nicolas.
2722
2723         * Documentation/user/scheme-tutorial: minor edit.
2724
2725 2006-05-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
2726
2727         * python/musicxml.py (Xml_node.__init__): _attribute_dict stores
2728         XML attributes.
2729         (Xml_node.message): use it.
2730
2731         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): 
2732         oops. Add duration argument.
2733
2734 2006-05-10  Joe Neeman  <joeneeman@gmail.com>
2735
2736         * lily/paper-column-engraver.cc (make_columns):
2737         * scm/define-grobs.scm: Revert my previous change and set the default
2738         in define-grobs.scm instead.
2739
2740 2006-05-09  Graham Percival  <gpermus@gmail.com>
2741         
2742         * Documentation/user/changing-defaults.itely: general editing,
2743         info about \set and \override.
2744
2745         * Documentation/user/tweaking.itely, advanced-notation.itely:
2746         fixes from Dave Luttinen, thanks!
2747
2748 2006-05-09  Joe Neeman  <joeneeman@gmail.com>
2749
2750         * lily/paper-column-engraver.cc (make_columns): By default, a column
2751         needs to be breakable.
2752
2753 2006-05-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
2754
2755         * scripts/musicxml2ly.py (musicxml_clef_to_lily): use new
2756         Attributes methods
2757         (musicxml_time_to_lily): idem
2758         (musicxml_key_to_lily): idem
2759         (instrument_drumtype_dict): dict for supported drumtypes.
2760         (LilyPondVoiceBuilder.__init__): new class: sanely keep track of
2761         moments and pending mm rests
2762         (musicxml_voice_to_lily_voice): rewrite to use LilyPondVoiceBuilder
2763         (musicxml_voice_to_lily_voice): strip KeyChangeEvents for drums.
2764         (musicxml_voice_to_lily_voice): add mode change.
2765         (option_parser): lxml.etree (http://codespeak.net/lxml/) for more
2766         speed and less memory usage (factor 5 to 10).
2767         (convert): write -defs.ly  and driver file separately so people
2768         can script their own part extraction.
2769
2770         * python/musicxml.py (minidom_demarshal_node): new function:
2771         separate minidom handling.
2772         (lxml_demarshal_node): new function: support lxml.etree too.
2773         (Xml_node.message): new function: verbose error message, with XML
2774         path to offending node.
2775         (Attributes.get_measure_length): sane interface to MusicXML attributes.
2776         (Part_list.generate_id_instrument_dict): new method: collect
2777         instrument names, to be able to set drum_type.
2778         (Part.interpret): handle underfull measures
2779         (Part.interpret): assign instrument names.
2780
2781         * python/musicexp.py (Output_printer.close): new method
2782         (MusicWrapper.print_ly): new class: support other modes,
2783         eg. \drummode
2784         (BarCheck.print_ly): new class. Support bar checks, with comments
2785         and fancy barchecks. 
2786         (NoteEvent.__init__): also set drum_type for drum notes.
2787         (MultiMeasureRest.lisp_expression): dump mm rests.
2788
2789         * lily/paper-column-engraver.cc (stop_translation_timestep): set
2790         line-break-permission if forbidBreak is not set.
2791
2792 2006-05-09  Joe Neeman  <joeneeman@gmail.com>
2793
2794         * scm/define-context-properties.scm:
2795         * scm/define-grob-properties.scm:
2796         * scm/define-grobs.scm:
2797         * scm/define-music-display-methods.scm:
2798         * scm/define-music-properties.scm:
2799         * scm/define-music-types.scm:
2800         * scm/music-functions.scm:
2801         * ly/declarations-init.ly:
2802         * lily/include/constrained-breaking.hh:
2803         * lily/system.cc:
2804         * lily/spaceable-grob.cc:
2805         * lily/simple-spacer.cc:
2806         * lily/paper-score.cc:
2807         * lily/paper-column.cc:
2808         * lily/paper-column-engraver.cc:
2809         * lily/item.cc:
2810         * lily/gourlay-breaking.cc:
2811         * lily/constrained-breaking.cc:
2812         * python/convertrules.py:
2813         Change "penalty", "page-penalty" and "breakable" to "line-break-penalty",
2814         "page-break-penalty" and "line-break-permission".
2815         Add "page-break-permission", "page-turn-permission" and "page-turn-penalty".
2816         Replace BreakEvent with LineBreakEvent, PageBreakEvent and PageTurnEvent.
2817
2818         * lily/bar-engraver.cc:
2819         * lily/beam-engraver.cc:
2820         * lily/forbid-break-engraver.cc:
2821         * lily/ligature-engraver.cc:
2822         * lily/paper-column-engraver.cc:
2823         * lily/percent-repeat-engraver.cc:
2824         * lily/score-engraver.cc:
2825         * lily/score-engraver.hh:
2826         * lily/paper-column-engraver.hh:
2827         Inter-engraver communication regarding line breaks is done through context
2828         properties (Score.forbidBreak) instead of function calls.
2829
2830 2006-05-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
2831
2832         * VERSION (PACKAGE_NAME): release 2.9.4
2833
2834 2006-05-08  Graham Percival  <gpermus@gmail.com>
2835
2836         * Documentation/user/working.itely: proofreading from Dave
2837         Luttinen, thanks.
2838
2839         * Doucmentation/user/README.txt: updated with manual style info.
2840
2841         * Documentation/user/ various: trim linewidth to 78 chars.
2842
2843 2006-05-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
2844
2845         * scm/define-grob-properties.scm (all-internal-grob-properties):
2846         remove chord-tremolo property.
2847
2848         * lily/beam.cc (get_beam_segments): don't use stem position as
2849         base for broken ends.
2850
2851 2006-05-06  Graham Percival  <gpermus@gmail.com>
2852
2853         * Documentation/user/putting.itely: proofreading from Dave
2854         Luttinen, thanks!
2855
2856         * Documentation/user/ various: more reorg and clarifications.
2857
2858 2006-05-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
2859
2860         * scm/lily.scm (TEX_STRING_HASHLIMIT): move from framework-texstr.scm.
2861
2862         * ly/music-functions-init.ly: new function featherDurations
2863
2864         * lily/beam.cc: read grow-direction for feathered beaming.
2865
2866         * Documentation/topdocs/NEWS.tely (Top): typo.
2867
2868 2006-05-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
2869
2870         * lily/include/beam.hh (struct Beam_stem_segment): add gapped_ for
2871         tremolo beams.
2872
2873 2006-05-05  Erik Sandberg  <mandolaerik@gmail.com>
2874         * lily/context.cc, lily/global-context.cc: Added 'unique' member,
2875         used by music streams.
2876
2877         * lily/dispatcher.cc, lily/dispatcher-scheme.cc,
2878         lily/stream-event.cc, lily/stream-event-scheme.cc,
2879         lily/listener.cc, lily/scheme-listener.cc,
2880         lily/scheme-listener-scheme.cc, lily/include/dispatcher.hh,
2881         lily/include/stream-event.hh, lily/include/listener.hh,
2882         lily/include/scheme-listener.hh, scm/define-event-classes.scm:
2883         Created data structures for music streams.
2884         
2885 2006-05-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
2886
2887         * lily/beam.cc (get_beam_segments): new function. Reorganise the
2888         construction of a beam. 
2889         (print): rewrite. 
2890
2891         * flower/include/std-vector.hh (default_compare): use only one comparison.
2892
2893         * scm/define-markup-commands.scm (note-by-number): remove debug display.
2894         (note-by-number): further attachment fixes.
2895
2896         * scm/lily-library.scm (ordered-cons): new function.
2897         (interval-index): new function
2898
2899         * lily/note-head-scheme.cc (LY_DEFINE): new file.
2900
2901         * lily/note-head.cc (get_stem_attachment): new function.
2902
2903         * scm/define-markup-commands.scm (note-by-number): read 'style
2904         property. 
2905
2906         * input/regression/markup-note.ly: show note-head style option.
2907
2908         * mf/feta-bolletjes.mf (overdone_heads): fix attachment points for
2909         triangle head.
2910
2911 2006-05-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
2912
2913         * mf/GNUmakefile (NCSB_OTFS): remove old ncsb detection further.
2914
2915         * configure.in (LINK_GXX_STATICALLY): fix for ncsb detection.
2916
2917         * lily/include/constrained-breaking.hh: GCC 4 fix.
2918
2919 2006-05-04  Joe Neeman  <joeneeman@gmail.com>
2920
2921         * lily/simple-spacer.cc: Remove class Simple_spacer_wrapper.
2922         Replace it with functions get_line_forces and get_line_configuration.
2923         (class Simple_spacer): Make data private.
2924         Rewrite compression algorithm to be faster and simpler.
2925
2926         * lily/simple-spacer-scheme.cc (ly_solve_rod_and_spring_problem):
2927         * lily/gourlay-breaking.cc (solve):
2928         * lily/constrained_breaking.cc (space_line):
2929         Change it to the new simple-spacer code.
2930
2931         * lily/paper-score.cc (get_paper_systems):
2932         (Paper_score):
2933         (process):
2934         Delay breaking the systems until they are requested.
2935         (find_break_indices):
2936         Use vsize for indices.
2937         (calc_breaking):
2938         Move the "Calculating line breaks" message here.
2939
2940         * lily/system.cc (pre_processing):
2941         Move the "Calculating line breaks" message away from here.
2942         (break_into_pieces):
2943         Allow multiple calls to this function in sequence (with touching-but-
2944         not-overlapping breakpoints).
2945
2946         * lily/constrained-breaking.cc:
2947         Replace most of the get_XXXX functions with get_line_details.
2948         Only calculate the force for each line. Calculate configurations only
2949         for the lines we will actually use.
2950         Replace cols_ with lines_.
2951
2952 2006-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
2953
2954         * mf/GNUmakefile (depth): remove FC_FIND.
2955
2956         * config.make.in (NCSB_SOURCE_FILES): subst NCSB_SOURCE_FILES
2957
2958         * configure.in (LINK_GXX_STATICALLY): call fc-match from within configure.
2959
2960         * scm/framework-ps.scm (write-preamble): new function.
2961         (write-preamble): load mac fonts via fondu, even if gs-font-load
2962         is set.
2963
2964 2006-05-03  Werner Lemberg  <wl@gnu.org>
2965
2966         * mf/GNUmakefile (FC_FIND): Fix typo.
2967
2968 2006-05-03  Erlend Aasland  <erlenda@gmail.com>
2969
2970         * stepmake/stepmake/generic-targets.make (cvs-clean): also remove out-www dirs.
2971
2972 2006-05-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
2973
2974         * stepmake/aclocal.m4: run python-config for crosscompiling
2975         flags. 
2976
2977         * scripts/lilypond-book.py (Lilypond_file_snippet.my_system): add
2978         -f png for HTML, TEXINFO formats. 
2979
2980         * input/tutorial/lbook-html-test.html: new file.
2981
2982         * lily/include/tie-formatting-problem.hh (class
2983         Tie_formatting_problem): index Chord_outline_map by Tuple2 for
2984         [column, direction]. This fixes laissez vibrer ties.
2985  
2986         * flower/include/tuple.hh (struct Tuple2): new file.
2987
2988         * mf/GNUmakefile (FC_FIND): new function. Find ncsb using
2989         $(FCMATCH), only if $(NCSB_DIR) not set. 
2990
2991         * configure.in (LINK_GXX_STATICALLY): only warn if $NCSB_DIR set.
2992
2993         * config.make.in (DOCUMENTATION): set FCMATCH.  
2994
2995         * autogen.sh (srcdir): don't set --with-ncsb-dir. 
2996
2997 2006-05-03  Graham Percival  <gpermus@gmail.com>
2998
2999         * Documentation/user/ various: final round of reorg.
3000
3001         * Documentation/user/instrument-notation.itely: some more
3002         fixes from Eduardo, thanks!
3003
3004 2006-05-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
3005
3006         * VERSION (PACKAGE_NAME): release 2.9.3
3007
3008         * flower/file-path.cc (is_dir): canonicalize file name before stat'ing.
3009
3010         * lily/relocate.cc (framework_relocation): remove old relocation stuff.
3011
3012 2006-05-01  Mats Bengtsson  <mabe@s3.kth.se>
3013
3014         * scm/define-grob-properties.scm (all-user-grob-properties):
3015         Correct typo, thanks to Eduardo.
3016
3017 2006-05-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
3018
3019         * scripts/GNUmakefile (SEXECUTABLES): remove lilypond-ps2png.scm
3020
3021         * buildscripts/lilypond-words.py (F): indent fix.
3022
3023         * input/regression/tie-arpeggio-collision.ly: new file.
3024
3025         * lily/tie-formatting-problem.cc (set_column_chord_outline): new
3026         function: store outlines per column rank.
3027
3028         * lily/include/tie-configuration.hh (class Tie_configuration): add
3029         column_ranks_ to specification and configuration, to distinguish
3030         between ties for different heads in arpegiated chords.
3031
3032         * lily/relocate.cc (framework_relocation): use INSTALLER_PREFIX.
3033
3034         * *.py: more 4 space indents.
3035
3036         * autogen.sh (conf_flags): set sensible default for with-ncsb-dir
3037
3038 2006-05-01  Joe Neeman  <joeneeman@gmail.com>
3039
3040         * scm/lily-library.scm: Fix guile 1.6 compatibility in inf? and nan?
3041
3042 2006-05-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
3043
3044         * buildscripts/pfx2ttf.fontforge (err): create OTF files.
3045
3046         * scripts/abc2ly.py (dump_score): indent of 4 for python code. 
3047
3048         * configure.in (LINK_GXX_STATICALLY): remove locate() call.
3049
3050 2006-04-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3051
3052         * python/convertrules.py (conv): indent 4 for python files.
3053
3054 2006-04-29  Mats Bengtsson  <mabe@s3.kth.se>
3055
3056         * Documentation/user/changing-defaults.itely (Creating contexts):
3057         Clarify \new semantics.
3058
3059 2006-04-28  Graham Percival  <gpermus@gmail.com>
3060
3061         * Documentation/user/ various: major new sections in the
3062         Learning manual, slight reorg elsewhere.
3063
3064 2006-04-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
3065
3066         * mf/GNUmakefile (MFTRACE_FLAGS): add $(outdir) to $(ENCODING_FILE) 
3067
3068         * scm/framework-ps.scm (output-framework): remove PageMedia
3069
3070 2006-04-27  Graham Percival  <gpermus@gmail.com>
3071
3072         * Documentation/user/ tweaks.itely, working.itely: new
3073         files, being more advanced "learning manual" chapters.
3074
3075         * Documentation/user/ tutorial, putting, lilypond: reorg.
3076
3077 2006-04-26  Graham Percival  <gpermus@gmail.com>
3078
3079         * input/regression/lyric-combine-polyphonic.ly: fixed test
3080         (no more "can't find context `one'" error).
3081
3082 2006-04-25  Joe Neeman <joeneeman@gmail.com>
3083
3084         * lily/stem-tremolo.cc (print): fix whole note tremolo placement
3085
3086         * input/regression/stem-tremolo.ly: add 2 more whole note examples
3087         
3088 2006-04-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3089
3090         * lily/relocate.cc (read_relocation_dir): new function.
3091
3092 2006-04-26  Graham Percival  <gpermus@gmail.com>
3093
3094         * Documentation/user/instrument-notation.itely: a few more fixes
3095         from Eduardo, thanks!
3096
3097         * Documentation/user/README.txt: new file; contains info on
3098         style that used to be in lilypond.tely.
3099
3100         * Documentation/user/ various: first round of doc reorg.
3101
3102         * Documentation/user/baer-flat-bw.png: remove alpha bit from
3103         graphic; this probably causes problems on some pdf
3104         viewers, notably Adobe Acrobat.
3105
3106 2006-04-24  Graham Percival  <gpermus@gmail.com>
3107
3108         * Documentation/user/instrument-notation.itely: many alterations
3109         to Vocal music, from Eduardo Viera.
3110
3111 2006-04-23  Graham Percival  <gpermus@gmail.com>
3112
3113         * Documentation/user/instrument-notation.itely: fix \new
3114         instead of \context problem.
3115
3116 2006-04-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3117
3118         * lily/relocate.cc (expand_environment_variables): new function.
3119         (read_line): id.
3120         (read_relocation_file): id.
3121
3122         * scm/stencil.scm (eps-file->stencil): fix EPS PS embedding code 
3123
3124 2006-04-21  Erlend Aasland  <erlenda@gmail.com>
3125
3126         * ly/engraver-init.ly: remove old comments from TabVoice
3127
3128 2006-04-20  Graham Percival  <gpermus@gmail.com>
3129
3130         * Documentation/user/instrument-notation.itely: added Erlend's
3131         latest doc patch, thanks!
3132
3133 2006-04-19  Erlend Aasland <erlenda@gmail.com>
3134
3135         * lily/include/slur.hh:
3136         * lily/slur.cc:
3137         * lily/phrasing-slur-engraver.cc:
3138         * lily/slur-engraver.cc: Fix 'cut & paste' code by merging
3139         acknowledge_extra_object () from Phrasing_slur_engraver:: and
3140         Slur_engraver:: and putting it in
3141         Slur::auxiliary_acknowledge_extra_object ().
3142
3143         * ps/music-drawing-routines.ps (draw_dashed_slur): fix another bug
3144
3145         * lily/note-collision.cc: fix a comment
3146
3147 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
3148
3149         * stepmake/bin/add-html-footer.py: fix footer position in
3150         generated html files: before </body> and </html> tags.
3151
3152 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
3153
3154         * scripts/GNUmakefile: revert last "fix", which rather broke make.
3155         Earlier successive `make' commands finally compiled ok.
3156
3157         * Documentation/topdocs/INSTALL.texi: require mftrace 1.1.19.
3158
3159 2006-04-18  Erlend Aasland <erlenda@gmail.com>
3160
3161         * lily/include/stem-tremolo.hh:
3162         * lily/stem-tremolo.cc: move rotated_box () to Lookup:: and update
3163         callers.
3164
3165         * lily/lookup.cc:
3166         * lily/include/lookup.hh: add rotated_box ()
3167
3168 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
3169
3170         * scripts/GNUmakefile: bugfix: run help2man only after scripts have 
3171         been generated. Fixes "can't get `--help'" bug after make clean.
3172
3173         * THANKS: alphabetize contributors.
3174
3175 2006-04-17  Graham Percival  <gpermus@gmail.com>
3176
3177         * Documentation/user/instrument-notation.itely: added Erlend's
3178         tabs and banjo doc patch.  Thanks!
3179
3180 2006-04-17  Erlend Aasland  <erlenda@gmail.com>
3181
3182         * scm/define-grobs.scm: fix stem-attachment for tablature note heads.
3183
3184         * ps/music-drawing-routines.ps (draw_dashed_line): fix dash pattern bug.
3185
3186         * scm/output-lib.scm: add some more predefined string tunings.
3187
3188         * Documentation/user/instrument-notation.itely: and doc them.
3189
3190 2006-04-16  Jürgen Reuter  <reuter@ipd.uka.de>
3191
3192         * ly/engraver.ly: Remove obsolete comments.
3193
3194         * ly/gregorian-init.ly: Define default layout block.
3195
3196         * input/puer-fragment.ly: Updated and extended.
3197
3198 2006-04-15  Jan Nieuwenhuizen  <janneke@gnu.org>
3199
3200         * lily/lily-parser-scheme.cc: Use them to fix --output=DIR/BASE
3201         pdf conversion behaviour.
3202
3203         * flower/file-name.cc (dir_name)
3204         (get_working_directory): Move from relocate.cc.
3205
3206         * lily/relocate.cc (setup_paths): Remove rogue stat calls.
3207         
3208         * lily/relocate.cc: Encapsulate sys/stat.h in
3209         HAVE_STAT_H.
3210
3211 2006-04-14  Graham Percival  <gpermus@gmail.com>
3212
3213         * Documentation/user/ various: small updates from Cameron
3214         and Juergen, thanks!
3215
3216         * Documentation/user/ various: small updates of my own.
3217
3218         * THANKS: 2.7 -> 2.8.
3219
3220 2006-04-11  Graham Percival  <gpermus@gmail.com>
3221
3222         * scm/define-context-properties.scm: typo.
3223
3224         * Documentation/user/ : many more small updates.
3225
3226 2006-04-13  Jürgen Reuter  <reuter@ipd.uka.de>
3227
3228         * scm/define-music-types.scm: disposed "docme".
3229
3230 2006-04-11  Erlend Aasland  <erlenda@gmail.com>
3231
3232         * lily/hairpin.cc: make niente circles a bit smaller.
3233
3234 2006-04-10  Erlend Aasland  <erlenda@gmail.com>
3235
3236         * mf/GNUmakefile: remove redundant mftrace check. Also remove
3237         get-pfa and get-*-fonts targets.
3238
3239 2006-04-10  Graham Percival  <gpermus@gmail.com>
3240
3241         * THANKS, Documentation/user/ basic-notation, advanced-notation,
3242         music-glossary, programming-interface: more minor fixes
3243         from mailist.
3244
3245         * scm/define-grob-properties.scm: clarified direction, thanks Mats!
3246
3247         * scm/define-context-properties.scm: another old \property update.
3248         This time tested for compiling!
3249
3250 2006-04-10  Erlend Aasland  <erlenda@gmail.com>
3251
3252         * mf/GNUmakefile: fix for mftrace version >= 1.2.0
3253
3254 2006-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
3255
3256         * scm/define-context-properties.scm (all-user-translation-properties): 
3257         * Documentation/user/global.itely (Page formatting): Compile fix.
3258
3259 2006-04-09  Mats Bengtsson  <mabe@s3.kth.se>
3260
3261         * Documentation/user/advanced-notation.itely (Polymetric
3262         notation): Update the example to use the "+" symbol and add link
3263         to input/test/compound-time.ly.
3264
3265 2006-04-08  Graham Percival  <gpermus@gmail.com>
3266
3267         * scm/define-grob-properties.scm: clarify docs for #'direction.
3268
3269         * scm/define-context-properties.scm: update old \property override.
3270
3271         * Documentation/user/ advanced-notation, global, lilypond-book:
3272         more minor doc updates.
3273
3274 2006-04-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
3275
3276         * lily/parser.yy (Generic_prefix_music_scm): append lists, not objects.
3277
3278         * scm/backend-library.scm (search-gs): oops.
3279
3280 2006-04-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
3281
3282         * scripts/lilypond-book.py (output): use base, not filename for href.
3283
3284         * scm/backend-library.scm: only look for gs.
3285
3286         * scripts/lilypond-book.py (output): fix printfilename.
3287
3288         * lily/parser.yy (music_function_musicless_prefix): fold together
3289         definitions of signature (SCM*) (Music|post_event|chord_body_element)
3290
3291         * lily/slur.cc (print): only set font-size if not set yet.
3292
3293         * lily/slur-configuration.cc (add_score): improved layout of debug
3294         scoring output.
3295
3296 2006-04-05  David Feuer  <David.Feuer@gmail.com>
3297
3298         * music-drawing-routines.ps (draw_round_box): removed testing artifact.
3299         (draw_circle): Hopefully fixed regression.
3300         Improved documentation for several procedures.
3301         
3302 2006-03-04  Werner Lemberg  <wl@gnu.org>
3303
3304         * ly/engraver-init.ly (\Score): Add beam-event to quotedEventTypes.
3305
3306 2006-04-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
3307
3308         * scripts/musicxml2ly.py (bindir): add dynamic
3309         relocation. 
3310
3311 2006-04-04  Graham Percival  <gpermus@gmail.com>
3312
3313         * Documentation/user/ basic-notation, advanced-notation, putting,
3314         instrument-notation, invoking, lilypond, THANKS: another ream of small
3315         fixes from the Doc Helpers.
3316
3317 2006-04-03  David Feuer  <David.Feuer@gmail.com>
3318
3319         * music-drawing-routines.ps: remove superfluous gsave/grestore pairs.
3320
3321         * lilyponddefs.ps (set-ps-scale-to-lily-scale): Fixed code duplication.
3322
3323         * Cleaned up interfaces between PostScript and Scheme, and moved
3324         computations from PostScript to Scheme:
3325
3326         * music-drawing-routines.ps
3327         (*SF, stroke_and_fill): new procedures.  Replaced stroke and fill
3328         with stroke_and_fill throughout.
3329         (euclidean_length, print_letter, draw_box): Deleted unused
3330         procedures.  If someone needs draw_box, implement it using
3331         draw_round_box; don't duplicate code.
3332         (print_glyphs, draw_round_box, draw_polygon, draw_repeat_slash):
3333         Refactored/cleaned up interfaces.
3334         (mark_URI): Moved.
3335
3336         * output-ps.scm: reordered arguments to PostScript functions to
3337         match new interfaces
3338         (glyph-string): Rewrote glyph-string.
3339         (grob-cause): Replaced string-append with format.
3340         (repeat-slash): Rewrote to do computation here.
3341         (round-filled-box): Rewrote to do computation here.
3342
3343 2006-04-04  Erlend Aasland  <erlenda@gmail.com>
3344
3345         * stepmake/stepmake/generic-targets.make: add cvs-clean target
3346
3347         * stepmake/stepmake/toplevel- targets.make: print help info about
3348         cvs-clean
3349
3350 2006-04-03  Erlend Aasland  <erlenda@gmail.com>
3351
3352         * input/regression/hairpin-circled.ly: new file
3353
3354 2006-04-03  Erlend Aasland  <erlenda@gmail.com>
3355
3356         * lily/hairpin.cc (print): add support for circled tip
3357
3358         * scm/define-grob-properties.scm: add circled-tip parameter
3359
3360         * scm/define-grobs.scm: init circled-tip to false
3361         
3362 2006-04-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
3363
3364         * scm/music-functions.scm (quote-substitute): set
3365         iterators-ctor. 
3366
3367 2006-03-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
3368
3369         * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): set
3370         BSTINPUTS. 
3371
3372         * Documentation/topdocs/AUTHORS.texi (Top): add David Feuer.
3373
3374         * scm/output-ps.scm (glyph-string): revert cid selectfont.
3375
3376 2006-03-31  David Feuer  <david.feuer@gmail.com>
3377         
3378         * scm/framework-ps.scm:
3379         
3380         * scm/output-ps.scm: glyph-string now produces smaller, more
3381         readable, and probably faster PostScript.  Several findfont
3382         scalefont setfont instances changed to selectfont
3383         Hacked-up string-appends changed to formats.
3384
3385         * ps/music-drawing-routines.ps: add print_letter, print_glyphs.
3386         
3387 2006-03-30  Graham Percival  <gpermus@gmail.com>
3388
3389         * scm/lily-library.scm: make "no version" warning message more polite.
3390
3391         * lily/music.cc: add double quotes to failed octave check.
3392
3393         * Documentation/user/ advanced-notation, changing-defaults,
3394         instrument-notation, invoking, music-glossary: whole bunch of minor
3395         fixes from mailist.
3396
3397 2006-03-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
3398
3399         * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): use
3400         $(buildscriptdir) iso. depth.
3401
3402         * VERSION (PACKAGE_NAME): release 2.9.1
3403
3404 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
3405
3406         * lily/pango-font.cc (pango_item_string_stencil): more robustness.
3407
3408         * VERSION (PATCH_LEVEL): bump version number.
3409
3410         * flower/include/guile-compatibility.hh (scm_from_uint32): add
3411         scm_from_uint32 ()
3412
3413         * lily/pango-font.cc (pango_item_string_stencil): use
3414         scm_from_uint32 ()
3415
3416         * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
3417         $(outdir)/emmentaler-%.svg): remove canary.
3418
3419         * lily/pango-font.cc (pango_item_string_stencil): only use uXXX
3420         glyphnames if we have a ttf font.
3421
3422 2006-03-30  Mats Bengtsson  <mabe@s3.kth.se>
3423
3424         * Documentation/user/advanced-notation.itely (Font selection):
3425         Corrected reference to the font-family-override.ly example.
3426
3427 2006-03-30  Joe Neeman  <joeneeman@gmail.com>
3428         
3429         * lily/chord-tremolo-engraver.cc (acknowledge_stem): set the
3430         stem-tremolo object in the stem (or else the stem might not be
3431         long enough).
3432
3433 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
3434
3435         * lily/ttf.cc (print_trailer): only print existing glyphs.
3436
3437 2006-03-30  Joe Neeman  <joeneeman@gmail.com>
3438
3439         * lily/stem-tremolo.cc (print): for whole notes (and breves, etc.)
3440         position the tremolo based on the position of the notehead.
3441
3442         * input/regression/stem-tremolo.ly: add example of unbeamed eighth
3443         notes and update the texidoc line with the new positioning rules.
3444         
3445 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
3446
3447         * lily/ttf.cc (print_trailer): don't always use uXXX glyphname.
3448
3449         * scripts/lilypond-book.py (Module): set default for linewidth if
3450         preamble not found.
3451
3452 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
3453
3454         * VERSION (PACKAGE_NAME): release 2.9.0.
3455
3456         * input/regression/stem-tremolo-position.ly: new file.
3457
3458         * lily/stem-tremolo.cc: remove Stem_tremolo::dim_callback
3459
3460 2006-03-28  Joe Neeman  <joeneeman@gmail.com>
3461
3462         * lily/stem-tremolo.cc (print): position
3463         the tremolo depending only on the end of the stem
3464         and not on the notehead
3465         (raw_stencil): center, on the middle staff line, the
3466         flag that is closest to the end of the stem (previously
3467         the bottom flag)
3468         (calc_width): add this callback to shorten a tremolo when
3469         it is beamed or it is stemup with a flag
3470         (style): add this callback to make a tremolo rectangular when
3471         it is beamed or it is stemup with a flag
3472         (rotated_box): this is like Lookup::beam but makes a rotated
3473         rectangle instead of a parallelogram
3474
3475         * lily/stem.cc (calc_stem_info): make sure the stem
3476         is long enough to fit the tremolo
3477         (calc-length): reduce the length of tremolo stems since the
3478         tremolo code is now capable of better positioning
3479
3480         * scm/define-grobs.scm: make calc_width the default beam-width
3481         callback for stem-tremolo and add the style callback
3482                 
3483 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
3484
3485         * lily/tuplet-bracket.cc (calc_control_points): handle suicide
3486         case. 
3487
3488 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
3489
3490         * lily/ttf.cc (make_index_to_charcode_map): restore old
3491         cmap. 
3492
3493 2006-03-28  Werner Lemberg  <wl@gnu.org>
3494
3495         * lily/pango-font.cc (get_unicode_name): Fix `uXXXXX' glyph names.
3496
3497 2006-03-28  Graham Percival  <gpermus@gmail.com>
3498
3499         * THANKS: update for 2.9, add section for Documentation helpers.
3500
3501         * Documentation/topdocs/NEWS.tely: compile fix.
3502
3503         * Documentation/user/ basic-notation, global, advanced-notation,
3504         examples.itely: minor fixes from mailist.
3505
3506 2006-03-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
3507
3508         * mf/feta-bolletjes.mf: match width of solfa notes with normal
3509         note heads. 
3510
3511         * lily/ttf.cc (print_trailer): use it.
3512
3513         * lily/pango-font.cc (get_unicode_name): new function.
3514
3515         * lily/ttf.cc (make_index_to_charcode_map): move function from
3516         open-type-font.cc
3517         (print_trailer): substitute uniXXXX name if applicable. 
3518
3519         * lily/pango-font.cc (get_index_to_charcode_map): new function.
3520         (pango_item_string_stencil): use it to generate uniXXXX names.
3521
3522         * mf/feta-bolletjes.mf (overdone_heads): add small style (ugly)
3523         note heads, for uniform widths in shape note output.
3524         (overdone_heads): hmm. remove them again.
3525
3526         * scripts/lilypond-book.py (output): add links to filenames.
3527
3528         * Documentation/topdocs/INSTALL.texi (Top): update versions.
3529
3530         * lily/note-collision.cc (get_clash_groups): only consider when
3531         Note_column::dir <> CENTER. 
3532
3533         * scripts/lilypond-book.py (get_option_parser): init output_name
3534         to ''. 
3535
3536 2006-03-24  Graham Percival  <gpermus@gmail.com>
3537
3538         * Documentation/topdocs/NEWS.tely: add @end itemize
3539
3540         * Documentation/user/ global, advanced-notation: minor
3541         stuff from mailist.
3542
3543 2006-03-23  Graham Percival  <gpermus@gmail.com>
3544
3545         * Documentation/user/ lilypond.tely, music-glossary,
3546         preface: housekeeping; 2005->2006, remove "notes for 2.6"
3547
3548 2006-03-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
3549
3550         * mf/GNUmakefile: don't install .enc files.
3551
3552         * Documentation/topdocs/NEWS.tely: clear for 2.9 cycle.
3553
3554         * VERSION (PATCH_LEVEL): bump to 2.9.0
3555
3556 2006-03-22  Graham Percival  <gpermus@gmail.com>
3557
3558         * Documentation/user/advanced-notation.itely: minor fixes
3559         from mailist.
3560
3561 2006-03-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
3562
3563         * Documentation/topdocs/AUTHORS.texi (Top): add Joe Neeman.
3564
3565         * branch lilypond_2_8
3566
3567 2006-03-22  Han-Wen Nienhuys  <lilydev@localhost.localdomain>
3568
3569         * scripts/lilypond-book.py (samefile): new function, for windoze
3570         compatibility.
3571
3572 2006-03-21  Graham Percival  <gpermus@gmail.com>
3573
3574         * ly/engraver-init.ly: add info about StaffGroup.
3575
3576 2006-03-21  Han-Wen Nienhuys  <lilydev@localhost.localdomain>
3577
3578         * input/regression/stem-direction-context.ly: idem.
3579
3580         * Documentation/topdocs/NEWS.tely (Top): fix interpolation example.
3581
3582         * THANKS: add Mats.
3583
3584         * input/regression/page-layout-twopass.ly: comment out \markup so
3585         tweak-file is left.
3586
3587         * lily/instrument-name-engraver.cc (finalize): add to instrument
3588         name global System. This also fixes chopped instrument names, but
3589         doesn't crash when there are slurs/beams.
3590
3591         * lily/slur-configuration.cc (add_score): disallow negative slur
3592         scores.
3593         
3594 2006-03-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3595
3596         * scm/framework-ps.scm (dump-stencil-as-EPS): remove debugging code.
3597
3598         * lily/instrument-name-engraver.cc (process_music): kludge: add
3599         InstrumentName spanner to axis group of left bound. Fixes chopped
3600         off instrument names in EPS images.
3601
3602         * input/regression/lyric-hyphen-retain.ly: elaborate explanation.
3603
3604         * scripts/abc2ly.py (option_parser): update to 2.7.40
3605
3606 2006-03-20  Graham Percival  <gpermus@gmail.com>
3607
3608         * THANKS: move small doc contributors to SUGGESTIONS.
3609
3610         * Documentation/user/ basic-notation, advanced-notation,
3611         global: small changes from mailist.
3612
3613 2006-03-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3614
3615         * Documentation/user/advanced-notation.itely (Text marks): update
3616         for new rehearsalMarkAlignSymbol convention.
3617
3618         * VERSION (PATCH_LEVEL): bump version.
3619
3620         * input/test/instrument-name-align.ly: new file.
3621
3622         * scm/define-markup-commands.scm (hcenter-in): add hcenter-in.
3623
3624         * input/test/instrument-name-align.ly: new file. Document how to
3625         align instrument names.
3626
3627         * lily/mark-engraver.cc: remove properties.
3628
3629         * scm/define-context-properties.scm
3630         (all-user-translation-properties): remove align symbol properties
3631         for barnumber/reh. mark.
3632
3633         * lily/break-align-interface.cc (self_align_callback): new
3634         interface, new function. Look at complete alignment. This handles
3635         tunable break alignments in case break-align-symbols are missing.
3636
3637         * lily/bar-number-engraver.cc (acknowledge_break_alignment): new function
3638
3639         * lily/mark-engraver.cc (acknowledge_break_alignment): new function.
3640
3641         * python/convertrules.py (conv): mark/bar number alignment rule.
3642
3643         * lily/break-align-interface.cc (calc_positioning_done): also
3644         store offset from last visible break-alignment to its
3645         neighbor. This makes alignment on non-visible objects more reliable.
3646
3647         * po/lilypond.pot (Module): ran po-replace.
3648
3649         * input/regression/tie-single-manual.ly (Module): new file.
3650
3651         * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
3652         look at has_manual_position_.
3653         (from_ties): set has_manual_position_ if tie has staff-position set.
3654
3655         * lily/tuplet-bracket.cc (calc_positions): idem.
3656
3657         * lily/tuplet-number.cc (print): don't print tupletnumber if it
3658         doesn't span time.
3659
3660 2006-03-19  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3661
3662         * scm/define-markup-commands.scm (smallCaps): new markup command
3663         for turning a text to small caps using smaller font size and upper
3664         casing.
3665
3666 2006-03-17  Graham Percival  <gpermus@gmail.com>
3667
3668         * Documentation/user/ examples, instrument-notation,
3669         advnaced-notation: minor fixes from mailist.
3670
3671 2006-03-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3672
3673         * Documentation/user/tutorial.itely (First steps): change example
3674         to verbatim.  
3675
3676 2006-03-17  Graham Percival  <gpermus@gmail.com>
3677
3678         * Documentation/user/ examples, advanced: minor changes from mailist.
3679
3680         * THANKS: add Geoff Horton, for documentation stuff.
3681
3682 2006-03-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3683
3684         * python/lilylib.py (system): revert have_select kludge.
3685
3686         * Documentation/user/tutorial.itely (Commenting input files):
3687         update version numbers in doc. 
3688
3689         * scm/define-grob-interfaces.scm (multi-measure-interface): add
3690         bound-padding to multi-measure-interface
3691
3692 2006-03-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3693
3694         * input/test/engraver-example.ily: update version number.
3695
3696         * VERSION (PACKAGE_NAME): release 2.7.39
3697
3698         * lily/note-spacing.cc (get_spacing): heighten threshold where
3699         accidentals/arpeggios influence previous spacing fully.
3700
3701         * lily/rest.cc (y_offset_callback): only use direction if
3702         staff-position wasn't set before.
3703
3704         * lily/bar-number-engraver.cc: add support for
3705         barNumberAlignSymbol. 
3706         add ADD_ACKNOWLEDGER() call for break_aligned. Fixes bar-number-breathe
3707
3708         * lily/pointer-group-interface.cc (set_ordered): new function. 
3709         (add_unordered_grob): new function.
3710
3711         * lily/grob-array.cc (Grob_array): grob-arrays are always assumed
3712         to ordered, unless the opposite has been proved.  This fixes
3713         random reordering of large object groups across linebreaks,
3714         eg. beams.
3715
3716         * lily/main.cc (do_chroot_jail): printf format fix.
3717
3718         * lily/tie-formatting-problem.cc (generate_configuration):
3719         multiply y-shift for dot with direction.
3720  
3721         * scm/define-markup-commands.scm (note-by-number): put (magstep
3722         size) in y-attach too.
3723
3724         * Documentation/topdocs/NEWS.tely (Top): show override.
3725
3726         * scm/define-grobs.scm (all-grob-descriptions): reinstate neutral
3727         direction for stems.
3728         
3729 2006-03-15  Graham Percival  <gpermus@gmail.com>
3730
3731         * Documentation/user/ changing-defaults, global: minor
3732         fixes from mailist.
3733
3734 2006-03-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3735
3736         * lily/lexer.ll (Lily_lexer): bump required version to 2.7.38
3737
3738         * lily/spacing-spanner.cc (musical_column_spacing): crude fix for
3739         breakable items after uniformly stretched notes.
3740
3741         * lily/tie-formatting-problem.cc (set_chord_outline): initialize
3742         outline with outer edge of note heads. This prevents infinity
3743         problems with tied whole notes.
3744
3745         * scripts/lilypond-book.py (do_file): use os.popen
3746
3747         * python/convertrules.py (conv): add rule for Stem #'beamed-*
3748
3749 2006-03-14 Erik Sandberg  <mandolaerik@gmail.com>
3750
3751         * Documentation/user/invoking.itely: Add ragged-right to bug report
3752         guidelines.
3753
3754 2006-03-14  Graham Percival  <gpermus@gmail.com>
3755
3756         * Documentation/user/global.itely: small fix from mailist.
3757
3758 2006-03-14  Mats Bengtsson  <mabe@s3.kth.se>
3759
3760         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use the
3761         file descriptor returned by tempfile.mkstemp() when writing
3762         to tmpfile and closing it. Solves problem with unlink(tmpfile)
3763         on mingw.
3764
3765 2006-03-14  Jan Nieuwenhuizen  <janneke@gnu.org>
3766
3767         * po/fi.po: newline bugfix.
3768
3769 2006-03-12  Jan Nieuwenhuizen  <janneke@gnu.org>
3770
3771         * scm/paper.scm (paper-alist): Rounding fixes.
3772
3773 2006-03-13  Graham Percival  <gpermus@gmail.com>
3774
3775         * Documentation/user/ changing-defaults, instrument-notation,
3776         tutorial: small fixes from mailist, mostly from Mats.  Thanks!
3777
3778 2006-03-13 Heikki Junes  <hjunes@cc.hut.fi>
3779
3780         * po/fi.po: update.
3781
3782 2006-03-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3783
3784         * stepmake/bin/add-html-footer.py (mail_address_url): don't add
3785         mailto: to http:// 
3786
3787         * python/lilylib.py (print_environment): move ps_page_count to
3788         lilypond-book.py
3789
3790 2006-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3791
3792         * Documentation/user/music-glossary.tely (G clef): fix clef alignments.
3793
3794         * scm/framework-ps.scm (embed-document): new function. Use to
3795         embed PFA files.
3796
3797         * ly/engraver-init.ly: init rehearsalMarkAlignSymbol to staff-bar.
3798
3799 2006-03-12  Mats Bengtsson  <mabe@s3.kth.se>
3800
3801         * Documentation/user/instrument-notation.itely (Setting simple
3802         songs): Added \book{...} around the full example, so the separate
3803         markups are included in the printed example. 
3804
3805 2006-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3806
3807         * scripts/lilypond-book.py (get_latex_textwidth): explicitly close
3808         tmphandle.
3809
3810         * python/lilylib.py (system): rewrite system() using
3811         subprocess. Remove >& redirection trickery.
3812
3813 2006-03-11  Graham Percival  <gpermus@gmail.com>
3814
3815         * Documentation/user/ changing-defaults, global, scheme-tutorial,
3816         notation-appendices.itely: minor fixes from mailist.
3817
3818 2006-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3819
3820         * Documentation/user/GNUmakefile ($(outdir)/lilypond.html):
3821         unsplit man also needs images.
3822
3823         * tex/texinfo.tex (sectionheading, q.v.): relax after \char'15.
3824
3825         * VERSION (PACKAGE_NAME): 2.7.38 released.
3826
3827 2006-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3828
3829         * scripts/lilypond-book.py (get_latex_textwidth): look for latex
3830         log in output dir.
3831
3832 2006-03-08  Johannes Schindelin  <Johannes.Schindelin@gmx.de>
3833
3834         * lily/audio-column.cc, lily/score-performer.cc: MIDI output now
3835         respects the Score.skipTypesetting property.
3836         
3837 2006-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3838
3839         * scm/framework-ps.scm (ps-embed-cff): no Setup section in
3840         Prolog. No %%EOF after CFF file.
3841
3842 2006-03-08  Joe Neeman  <joeneeman@gmail.com>
3843         
3844         * lily/constrained-breaking.cc (get_max_systems): used to return a
3845         much too big value
3846         (combine_demerits): use pointers to reduce copying data
3847         (calc_subproblem): idem
3848         (get_page_penalty): add page turn penalties
3849         
3850 2006-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3851
3852         * Documentation/user/invoking.itely (Invoking lilypond): better
3853         explanation of -e usage.
3854
3855         * lily/main.cc (main_with_guile): don't append to
3856         init_scheme_code_string
3857
3858         * tex/texinfo.tex (sectionheading, q.v.): don't center @image.
3859
3860         * Documentation/user/invoking.itely: add note about MacOS X scripts.
3861
3862         * scripts/convert-ly.py (do_options): don't print help for
3863         --show-rules rule.
3864
3865         * tex/texinfo.tex: patch texinfo.tex to leave single quotes in
3866         @code and @example. Update from texinfo.tex from CVS.
3867
3868 2006-03-08  Graham Percival  <gpermus@gmail.com>
3869
3870         * Documentation/user/scheme-tutorial.itely: clarifies distances
3871         measured in staff-spaces.
3872
3873 2006-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3874
3875         * lily/slur.cc (outside_slur_callback): only calculate offsets if
3876         consider[k] is true.
3877
3878         * scm/output-ps.scm (grob-cause): put numbers to ~$ (Thanks Johannes!)
3879
3880         * lily/spacing-basic.cc (standard_breakable_column_spacing): also
3881         consider columns that have originals.  Unifies spacing for mm
3882         rests around line breaks.
3883
3884         * lily/multi-measure-rest.cc (set_spacing_rods): read bound-padding.
3885         (set_text_rods): idem.
3886         (calculate_spacing_rods): new function: share code between
3887         set_text_rods and set_spacing_rods.
3888         (set_text_rods): take extents of bounds into account.  
3889
3890 2006-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3891
3892         * Documentation/user/basic-notation.itely (Writing music in
3893         parallel): don't use relative.
3894
3895 2006-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3896
3897         * ly/music-functions-init.ly (Module): add shiftDurations
3898
3899         * ly/drumpitch-init.ly (drumPitchNames): add tamtam.
3900
3901         * scm/paper.scm (paper-alist): no decimals for Ax paper sizes. 
3902
3903         * ly/engraver-init.ly: init vocalName to nil.
3904
3905 2006-03-05 Erik Sandberg  <mandolaerik@gmail.com>
3906
3907         * scm/music-functions.scm (music->make-music): bugfix,
3908         KeyChangeEvents are now handled correctly.
3909
3910         * scripts/lilypond-book.py: Add --debug option.
3911
3912 2006-03-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3913
3914         * python/lilylib.py: add tempfile.
3915
3916 2006-03-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3917
3918         * VERSION (PACKAGE_NAME): release 2.7.37
3919
3920         * python/lilylib.py (ps_page_count): remove make_ps_images().
3921         (ps_page_count): remove mkdir_p
3922         (system): remove cleanup_temp.
3923         (exit): remove lilypond_version_(check)
3924         (error_log): remove pseudo_filter_p
3925         remove read_pipe
3926         remove cp_to_dir
3927         remove identify
3928
3929         * scripts/lilypond-book.py (Lilypond_snippet.compose_ly): don't
3930         use __main__
3931
3932         * lily/accidental-engraver.cc (make_standard_accidental): only add
3933         support for side-axis is X_AXIS. Fixes text-spacing-accidental.ly
3934
3935         * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
3936         $(outdir)/emmentaler-%.svg): rewrite without functions; too many
3937         Make incompatibilities.
3938
3939         * scm/output-ps.scm (grob-cause): replace backslashes by /
3940         (glyph-string): use ~$ for less decimals for glyph-string and grob-cause.
3941
3942 2006-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
3943
3944         * cygwin/GNUmakefile: Install fixes.
3945
3946         * scripts/GNUmakefile (SEXECUTABLES): Install fix: remove mup2ly.
3947
3948         * lily/note-head.cc (head::get_balltype): Compile fix.
3949
3950         * flower/file-name.cc (dos_to_posix): Flower string fix.
3951
3952 2006-03-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3953
3954         * python/lilylib.py: pychecker cleanups.
3955
3956         * scripts/lilypond-book.py
3957         (Lilypond_snippet.output_print_filename): pychecker cleanups
3958
3959         * scripts/midi2ly.py (Key.dump): pychecker cleanups.
3960
3961         * python/lilylib.py (underscore): remove identify() , warranty()
3962
3963         * ps/music-drawing-routines.ps: change Border routine for GSView
3964         compatibility.
3965
3966         * lily/stem.cc (height): use quantize-positions.  This triggers
3967         set_stem_lengths, so scripts on beamed stems are handled correctly.
3968
3969         * lily/side-position-interface.cc (aligned_side): check if edges
3970         of script are inside staff. Fixes accent of edge of the staff.
3971
3972         * input/regression/staccato-pos.ly: more examples.
3973
3974         * stepmake/aclocal.m4 (depth): fix bashism.
3975
3976         * lily/lyric-combine-music-iterator.cc: move from
3977         new-lyric-combine-iterator.cc
3978         (process): add pending_grace_lyric_ member to delay lyrics on
3979         grace notes.
3980
3981         * lily/system-start-text.cc (print): suicide if we don't have any
3982         elements. Fixes hara kiri'd instrument names.
3983
3984         * scripts/mup2ly.py (Module): remove.
3985
3986 2006-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3987
3988         * Documentation/user/global.itely (A single music expression):
3989         close @lilypond properly
3990
3991         * lily/volta-bracket.cc (modify_edge_height): change from
3992         after_line_breaking_callback. Suicide last bracket if appropriate.
3993  
3994         * python/lilylib.py: strip getopt support
3995
3996         * scripts/etf2ly.py (do_options): use optparse
3997
3998         * scripts/midi2ly.py: optparse, strip lilylib copy. 
3999
4000         * scripts/abc2ly.py (voices): use optparse.
4001
4002         * stepmake/stepmake/generic-vars.make: new function absdir.
4003
4004         * scripts/convert-ly.py (bindir): use optparse, argv[0] relocation.
4005
4006         * scripts/lilypond-book.py (find_file): use global_options for
4007         include path
4008
4009         * scm/ps-to-png.scm (ps-page-count): prevent null characters
4010         entering C code.
4011
4012 2006-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4013
4014         * python/lilylib.py (get_global_option): ughness for extracting
4015         global options from lilylib.
4016         (NonDentedHeadingFormatter.format_heading): move from musicxml2ly
4017
4018         * scripts/lilypond-book.py (get_option_parser): use optparse for
4019         option handling.  Put options in global_options variable.
4020
4021 2006-02-28  Heikki Junes  <hjunes@cc.hut.fi>
4022
4023         * Documentation/index.html.in: clarify.
4024
4025 2006-02-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4026
4027         * scm/layout-page-layout.scm (write-page-breaks): add a
4028         music-system-heights property to the page layout output.
4029
4030         * scm/page.scm (make-page-stencil): take footer into account when
4031         computing the 'space-left page property
4032         (annotate-space-left): take footer into account when annonating
4033         space left.
4034
4035 2006-02-28  Graham Percival  <gpermus@gmail.com>
4036
4037         * Documentation/user/ advanced-notation, global: more (final)
4038         docs for music expressions, removed special fermatas.
4039
4040 2006-02-27  Graham Percival  <gpermus@gmail.com>
4041
4042         * Documentation/user/ basic-notation, global: minor changes
4043         from mailist.
4044
4045 2006-02-26  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4046
4047         * scm/framework-ps.scm:         
4048         * scm/lily-library.scm (nan?, inf?): Move guile 1.6 compatibility
4049         layer for inf? and nan? from framework-ps to lily-library.
4050
4051 2006-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4052
4053         * mf/GNUmakefile ($(outdir)/emmentaler-$(1).otf
4054         $(outdir)/emmentaler-$(1).svg): remove backslashes from define endef.
4055
4056         * buildscripts/substitute-encoding.py (Module): remove file.
4057
4058         * mf/GNUmakefile: more PFA strippage.
4059
4060         * mf/aybabtu.pe.in (i): remove PFAaybabtu generation
4061
4062         * buildscripts/gen-emmentaler-scripts.py (i): remove PFAemmentaler
4063         generation
4064
4065         * scm/framework-ps.scm: remove font name munging.
4066
4067         * Documentation/topdocs/INSTALL.texi (Top): bump GS requirement.
4068
4069 2006-02-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4070
4071         * scm/markup.scm (define-markup-command): change
4072         def-markup-command to define-markup-command
4073
4074         * scm/music-functions.scm (define-music-function): change
4075         def-music-function to define-music-function.
4076
4077         * python/convertrules.py (conv): rules for def-music-function
4078         and def-markup-commands
4079
4080         * Documentation/user/programming-interface.itely,
4081         input/no-notation/display-lily-tests.ly,
4082         input/regression/lily-in-scheme.ly,
4083         input/regression/markup-user.ly,
4084         input/regression/music-function.ly, input/regression/tie-chord.ly,
4085         scm/fret-diagrams.scm, ly/music-functions-init.ly,
4086         ly/gregorian-init.ly: use new macro names (define-music-function,
4087         define-markup-command).
4088
4089 2006-02-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4090
4091         * scripts/lilypond-book.py (main): write Makefile dependencies file. 
4092         (output): add comments to lp-book latex output.
4093
4094         * GNUmakefile.in (footifymail): use gmane address for webpage bug
4095         address.
4096
4097 2006-02-23  Graham Percival  <gpermus@gmail.com>
4098
4099         * Documentation/user/ tutorial, global: minor changes.
4100
4101 2006-02-23  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4102
4103         * mf/GNUmakefile: add '\' in multi-line "define ... endef"
4104         blocks (for make 3.80)
4105
4106         * scm/parser-ly-from-scheme.scm (ly:parse-string-result): add
4107         \notemode so that user should not have to explicitely type it.
4108
4109         * scm/define-music-display-methods.scm: various
4110         fixes (ApplyOutputEvent, ApplyContext; \new, \context and derived
4111         constructs)
4112
4113         * input/no-notation/display-lily-tests.ly: new tests for
4114         \applyOutput and \applyContext
4115
4116 2006-02-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4117
4118         * lily/constrained-breaking.cc: patch by Joe Neeman: "I have
4119         changed it slightly so that the number of systems returned by
4120         solve () will be the same as the last value passed to resize
4121         (). I've also added more documentation, removed casts, fixed style
4122         problems and put in some recovery if constraints aren't satisfied."
4123
4124 2006-02-23  Jan Nieuwenhuizen  <janneke@gnu.org>
4125
4126         * elisp/lilypond-mode.el (count-matches-as-number): New funtion
4127         for emacs < 22 compatibility.
4128         (count-rexp): Use it.
4129         (LilyPond-string-current-midi, LilyPond-string-all-midi): Remove
4130         substring juggling (Milan Zamazal).
4131
4132 2006-02-23  Graham Percival  <gpermus@gmail.com>
4133
4134         * Documentation/user/ basic-notation, advanced-notation,
4135         global.itely, invoking.itely, tutorial,itely:
4136         minor fixes from mailist.
4137
4138         * scm/define-markup-commands.scm: improve docs of \filled-box.
4139
4140 2006-02-23  Heikki Junes  <hjunes@cc.hut.fi>
4141
4142         * Documentation/index.html.in: changes concern the previous release.
4143
4144         * input/regression/+.ly: cultivate typographical terminology.
4145
4146 2006-02-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4147
4148         * scm/define-grob-interfaces.scm (parentheses-interface): add
4149         padding to parentheses-interface.
4150
4151         * Documentation/user/GNUmakefile: remove $(CROSS) support from
4152         Documentation/user/GNUmakefile. Use --disable-documentation for that.
4153
4154         * VERSION (PATCH_LEVEL): release 2.7.36
4155
4156         * lily/slur.cc: add avoid-slur (ugh.)
4157         
4158         * lily/slur-configuration.cc (fit_factor): oops, skip point if
4159         intersection gets smaller. This fixes slurs over extreme points.
4160
4161         * lily/melody-engraver.cc (stop_translation_timestep): ignore
4162         stems with neutral-direction set.
4163
4164         * lily/piano-pedal-engraver.cc (create_text_grobs): idem.
4165
4166         * lily/open-type-font.cc (load_table): format error.
4167
4168         * lily/change-iterator.cc (process): format fix.
4169
4170         * flower/include/international.hh (_f): idem.
4171
4172         * flower/include/std-string.hh: add format printf attribute.
4173
4174         * scm/define-grobs.scm (all-grob-descriptions): height of all
4175         PedalLineSpanner is Y-extent property. Fixes pedal-ped.ly
4176
4177         * lily/ambitus-engraver.cc (finalize): use grob_array. This fixes
4178         ambitus lines.
4179
4180         * input/regression/beam-cross-staff-slope.ly: remove decrescendo.
4181
4182 2006-02-22 Erik Sandberg  <mandolaerik@gmail.com>
4183
4184         * input/regression/: upgraded syntax for some files.
4185
4186         * THANKS: Add bughunters.
4187
4188 2006-02-22  Graham Percival  <gpermus@gmail.com>
4189
4190         * Documentation/user/ invoking.itely, advanced-notation.itely,
4191         global.itely: long-awaited "let's make chapter 10 not suck"
4192         update.  Rearrange chapter 10; now called "global issues",
4193         addresses file structure, etc.  Some info from other files
4194         moved into global.itely.
4195
4196 2006-02-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4197
4198         * lily/accidental-engraver.cc (acknowledge_rhythmic_head): also
4199         catch trill-span-event notes.
4200
4201         * Documentation/user/examples.itely (Ancient notation templates): typo.
4202         (Jazz combo): typo.
4203
4204         * scripts/lilypond-book.py (main): scrap invokes_lilypond(). 
4205
4206         * Documentation/user/basic-notation.itely (Ties): document \repeatTie.
4207
4208         * Documentation/topdocs/NEWS.tely (Top): document \repeatTie.
4209
4210         * scm/define-music-types.scm (music-descriptions): add RepeatTieEvent
4211
4212         * lily/repeat-tie-engraver.cc (acknowledge_note_head): new file. cut & paste
4213         froum Laissez_vibrer_engraver.
4214
4215         * ly/declarations-init.ly (repeatTie): add \repeatTie
4216
4217         * scm/define-grobs.scm (all-grob-descriptions): add RepeatTie, RepeatTieColumn
4218
4219         * scm/define-grob-properties.scm (all-user-grob-properties): add
4220         head-direction property.
4221
4222         * lily/tie-formatting-problem.cc (from_semi_ties): rename from
4223         from_lv_ties. Take head direction argument.
4224
4225         * lily/semi-tie-column.cc: rename from
4226         laissez-vibrer-tie-column.cc. Rename class too.
4227
4228         * lily/semi-tie.cc: rename from laissez-vibrer-tie.cc. Rename
4229         class too.
4230
4231         * lily/paper-score.cc (find_break_indices): move from Break_algorithm.
4232
4233         * lily/break-algorithm.cc (find_break_indices): remove linewidth <
4234         0 case.
4235         (find_breaks): idem.
4236
4237 2006-02-21  Graham Percival  <gpermus@gmail.com>
4238
4239         * Documentation/user/advanced-notation.itely: fixed make-moment]
4240         example.
4241
4242         * Documentation/user/basic-notation.itely: more clarification to
4243         transpose.
4244
4245 2006-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4246
4247         * lily/include/constrained-breaking.hh (class
4248         Constrained_breaking): new file.
4249
4250         * lily/constrained-breaking.cc (resize): new file.
4251
4252         * lily/gourlay-breaking.cc (do_solve): ragged-last iso raggedlast
4253
4254         * Documentation/user/advanced-notation.itely (Clusters): insert
4255         end ignore too.
4256
4257         * lily/tie-column.cc (calc_positioning_done): support for
4258         tie-score debugging
4259
4260         * lily/tie-formatting-problem.cc
4261         (generate_extremal_tie_variations): factor out.
4262         (score_ties_configuration): annotate all tie 
4263         (print_ties_configuration): new routine.
4264         (generate_configuration): nudge extremal ties outside of the head
4265         Y extents.
4266         (score_ties_configuration): oops. convert to staff-space before
4267         determining position symmetry.
4268
4269 2006-02-20  Graham Percival  <gpermus@gmail.com>
4270
4271         * Documentation/user/*-notation.itely: misc minor editing,
4272         shifting doc sections around.
4273
4274         * Documentation/user/*-notation-itely, global.itely,
4275         changing-defaults.itely: added new stuff from NEWS.
4276
4277 2006-02-20  Heikki Junes  <hjunes@cc.hut.fi>
4278
4279         * po/fi.po: update.
4280
4281 2006-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4282
4283         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): don't run
4284         lilypond --verbose for lp-book.
4285
4286         * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
4287         $(outdir)/%.ly $(outdir)/%.ps): use $(srcdir) iso $(shell pwd).
4288
4289         * make/lysdoc-rules.make ($(outdir)/collated-files.tely): use
4290         $(buildscript-dir) iso. absolute depth.
4291
4292         * buildscripts/genicon.py (dir): thinko.
4293
4294         * Documentation/pictures/GNUmakefile ($(outdir)/%.ico): typo.
4295
4296 2006-02-19 Erik Sandberg  <mandolaerik@gmail.com>
4297
4298         * scm/output-lib.scm: swap darkcyan/darkyellow
4299
4300         * THANKS: Add bughunters.
4301
4302 2006-02-19  Graham Percival  <gpermus@gmail.com>
4303
4304         * Documentation/user/programming-interfaces.itely: fixed example.
4305
4306         * Documentation/user/instrument-notation.itely: fix @{ @}.
4307
4308         * scm/script.scm: add avoid-slur for \open.
4309
4310 2006-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4311
4312         * lily/tie-formatting-problem.cc (score_configuration): use
4313         sliding score for min-length. 
4314
4315         * Documentation/pictures/GNUmakefile (local-dist): loose the rule
4316         spaghetti for icons.
4317
4318         * buildscripts/genicon.py (program_name): new file.
4319
4320         * lily/tie-formatting-problem.cc (set_chord_outline): put dots
4321         in outline too.  
4322         (generate_configuration): for small ties, also look for collisions
4323         at Y + DIR*h + DELTA_Y.
4324         (get_variations): consider variation for dot positions too.
4325
4326         * lily/side-position-interface.cc (aligned_side): take abs for
4327         quantized rounded position. Fixes tenuto below staff.
4328
4329         * scm/stencil.scm (annotate-y-interval): robustify: print nan/inf
4330         markers when necessary.
4331
4332         * lily/program-option.cc (internal_set_option): add
4333         strict_infinity_checking option.
4334
4335         * scm/output-lib.scm (cyan): swap yellow and cyan.
4336
4337 2006-02-19  Graham Percival  <gpermus@gmail.com>
4338
4339         * darwin.patch: trivial linenumber update.
4340
4341         * Documentation/user/ {various}: `\context foo = named' changed
4342         to `\new foo = "name"' in docs.
4343
4344 2006-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4345
4346         * scm/stencil.scm (annotate-y-interval): use it.
4347
4348         * scm/lily-library.scm (interval-sane?): new function.
4349
4350         * buildscripts/mf-to-table.py (Char_metric.__init__): remove
4351         tfm_checksum stuff.
4352
4353         * lily/tie-formatting-problem.cc (from_lv_ties): add heads for
4354         common refpoint.
4355
4356         * flower/include/std-vector.hh (iterof): add iterof macro.
4357
4358         * lily/enclosing-bracket.cc (width): new function.
4359
4360         * lily/align-interface.cc (align_elements_to_extents): reinstate
4361         warning.
4362
4363 2006-02-18  Heikki Junes  <hjunes@cc.hut.fi>
4364
4365         * Documentation/index.html.in: fix spelling: thankyous.
4366
4367 2006-02-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4368
4369         * lily/lyric-hyphen.cc: typo.
4370
4371 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4372
4373         * stepmake/stepmake/c++-rules.make ($(outdir)/%.cc
4374         $(outdir)/%.hh): generate h and c in one rule; otherwise -jX
4375         builds don't work. 
4376
4377         * VERSION: release 2.7.35
4378
4379         * lily/beam.cc (get_default_dir): oops. Take abs () for
4380         extremes[DOWN].
4381         (get_default_dir): use extreme position criterion only in absence
4382         of forced stem directions.
4383
4384         * VERSION (PATCH_LEVEL): bump VERSION.
4385
4386         * mf/GNUmakefile: explicit rules for emmentaler/aybabtu
4387         dependencies. Necessary for -jX builds.  
4388
4389 2006-02-17  Jan Nieuwenhuizen  <janneke@gnu.org>
4390
4391         * lily/relocate.cc (setup_paths): Yet another const fix.
4392
4393 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4394
4395         * configure.in (HOST_ARCH): determine HOST_ARCH in configure.
4396
4397         * lily/relocate.cc (setup_paths): oops.
4398
4399 2006-02-17  Heikki Junes  <hjunes@cc.hut.fi>
4400
4401         * Documentation/index.html.in: order links: html before PDF.
4402
4403 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4404
4405         * lily/tie-column-format.cc (Module): remove.
4406
4407         * lily/relocate.cc (setup_paths): GCC 4.2 fixes: const correctness.
4408
4409         * lily/text-spanner.cc (print): idem.
4410
4411         * lily/dynamic-text-spanner.cc (print): only print line if longer
4412         than dash-period.
4413
4414         * lily/auto-change-iterator.cc (change_to): formatting.
4415
4416         * lily/beam.cc (get_default_dir): take extreme note head as input
4417         for stem direction.
4418
4419         * lily/tie.cc (get_default_dir): only look directions for visible
4420         stems. 
4421
4422         * lily/side-position-interface.cc (aligned_side): oops. Don't
4423         mutiply with direction. This fixes quantized (staccato, tenuto)
4424         scripts below notes.
4425
4426         * lily/lyric-hyphen.cc (set_spacing_rods): oops. Multiply with
4427         direction. Fixes c-lyrics-center-align.ly
4428
4429 2006-02-16  Jan Nieuwenhuizen  <janneke@gnu.org>
4430
4431         * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Add copy
4432         constructor.
4433
4434         * lily/std-string.cc:
4435         * lily/include/std-vector.hh (split_string): Move and rename from
4436         lily/include/misc.hh, lily/misc.cc.  Update callers.
4437
4438 2006-02-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4439
4440         * lily/include/pango-font.hh: HAVE_PANGO_FT2 iso. HAVE_PANGO_16
4441
4442 2006-02-16  Jan Nieuwenhuizen  <janneke@gnu.org>
4443
4444         * flower/test-file.cc: New file.
4445
4446         * stepmake/stepmake/test-vars.make (TEST_MODULE_LIBES): Fixes for
4447         libraries.
4448
4449         * flower/GNUmakefile (TEST_MODULE_LIBS): Link to flower lib.
4450
4451 2006-02-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4452
4453         * flower/include/file-storage.hh: remove file.
4454
4455         * lily/include/midi-item.hh (class Midi_track): idem.
4456
4457         * lily/include/source.hh (class Sources): idem.
4458
4459         * lily/include/performance.hh (class Performance): use vector
4460         iso. Cons<>
4461
4462         * flower/include/cons.hh (class Cons): remove file.
4463
4464         * flower/include/flower-proto.hh: remove template cruft.
4465
4466         * lily/include/font-metric.hh: use size_t not vsize for indices.
4467
4468         * flower/include/flower-proto.hh (Module): remove std-vector.hh
4469         from proto.
4470
4471         * lily/include/all-font-metrics.hh: use HAVE_PANGO_FT2
4472
4473         * lily/include/paper-book.hh (class Paper_book):
4474         make get_system_specs() public.
4475
4476         * scm/layout-page-layout.scm (optimal-page-breaks): only consider
4477         the force=10000 case if we don't have a current-best. 
4478
4479         * lily/tuplet-bracket.cc (get_bounds): don't do (size() - 1) for
4480         vsize 
4481
4482         * flower/include/flower-proto.hh: remove outdated templates.
4483
4484         * scm/page.scm: use annotate-spacing
4485
4486 2006-02-15  Graham Percival  <gpermus@gmail.com>
4487
4488         * scm/translation-functions.scm: circle patch from Erlend, thanks!
4489
4490         * THANKS: moved Erlend Aasland to contributors.
4491
4492 2006-02-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4493
4494         * config.hh.in: remove HAVE_PANGO_16
4495
4496         * lily/tuplet-bracket.cc (calc_positions): multiply with
4497         staff-space for beam case. This fixes tuplets+beams on scaled
4498         staves.
4499
4500         * config.hh.in: remove all Kpathsea related defines.
4501
4502         * lily/dot-column.cc (side_position): reach stem via dots->
4503         head->stem. Inspect all stems for dot collisions. 
4504
4505         * lily/dot-column-engraver.cc (class Dot_column_engraver): excise
4506         stem handling.
4507
4508         * lily/bar-number-engraver.cc (process_music): document function
4509         of whichBar.
4510
4511         * lily/score.cc (default_rendering): add pscore, not systems
4512         themselves.
4513
4514         * lily/paper-book.cc (get_system_specs): separate generation of
4515         titles and systems.
4516
4517         * flower/include/std-vector.hh: don't include config.hh
4518
4519 2006-02-15  Jan Nieuwenhuizen  <janneke@gnu.org>
4520
4521         * flower/include/std-vector.hh: Better wrapper compatibility with
4522         std::vector.
4523
4524         * flower/include/flower-proto.hh: Remove cheap forward declaration
4525         attempts.
4526
4527         * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): Bugfix.
4528
4529 2006-02-14  Graham Percival  <gpermus@gmail.com>
4530
4531         * Documentation/user/invoking.itely: add warning about command line.
4532
4533 2006-02-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4534
4535         * lily/include/lily-proto.hh: add Prob, rm Page.
4536
4537         * flower/include/std-vector.hh (VPOS): use 64 bit-proof version.
4538
4539         * VERSION: release 2.7.34
4540
4541         * lily/relocate.cc (framework_relocation): show canary if
4542         GHOSTSCRIPT_VERSION undefined.
4543
4544         * GNUmakefile.in: remove $(VERSION) symlink.
4545
4546         * lily/relocate.cc (setup_paths): add + 
4547
4548 2006-02-13  Heikki Junes  <hjunes@cc.hut.fi>
4549
4550         * Documentation/index.html.in: specify sizes for all big HTML pages.
4551
4552 2006-02-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4553
4554         * config.hh.in: remove @FRAMEWORKDIR@
4555
4556         * lily/system-start-text.cc (get_stencil): new file: separate out
4557         system-start-delimiter text support.
4558
4559         * input/**ly: replace \context with \new where appropriate.
4560         
4561         * THANKS: add Don.
4562
4563         * lily/slur-scoring.cc (get_base_attachments): use
4564         robust_relative_extent. This fixes problems with empty paper-columns. 
4565
4566 2006-02-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4567
4568         * Documentation/topdocs/NEWS.tely (Top): document \new syntax.
4569
4570         * scm/define-music-properties.scm (all-music-properties):
4571         create-new property.
4572
4573         * lily/context-specced-music-iterator.cc (construct_children):
4574         inspect 'create-new property iso. magical $uniqueContextId context
4575         id.
4576
4577         * lily/parser.yy (optional_id): allow \new "Bar" = "foo" too.
4578
4579         * lily/context-key-manager.cc (Module): new file. Encapsulate
4580         object key generation.
4581
4582         * lily/include/context-key-manager.hh (Module): new file.
4583
4584 2006-02-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4585
4586         * scm/define-grobs.scm (all-grob-descriptions): center instrument
4587         names vertically
4588
4589         * configure.in (LINK_GXX_STATICALLY): strip -DSTRING_UTILS_INLINED
4590         options.
4591         (reloc_b): excise --enable-framework-dir
4592
4593         * lily/relocate.cc (framework_relocation): use getenv
4594         LILYPOND_GS_VERSION or -DGHOSTSCRIPT_VERSION to set GS version.
4595
4596 2006-02-11  Jan Nieuwenhuizen  <janneke@gnu.org>
4597
4598         * flower/include/std-string.hh: 
4599         * flower/include/std-vector.hh: Finish std:: conversion; move
4600         flower extensions from std:: namespace.  Update users.
4601
4602         * lily/include/lily-proto.hh: Replace Link_array__*_ macros by
4603         their expansion to vector<*>.  Update users.
4604
4605 2006-02-10  Graham Percival  <gpermus@gmail.com>
4606
4607         * Documentation/user/invoking.itely: add example to File structure.
4608
4609         * Documentation/user/ instrument-notation.itely, cheatsheet.itely,
4610         examples.itely, putting.itely: {\new|\context} Lyrics \lyricsto.
4611
4612 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4613
4614         * ly/paper-defaults.ly: typo.
4615
4616         * lily/parenthesis-engraver.cc (acknowledge_grob): don't do
4617         set_parent() for parentheses. This will make it show up in bbox
4618         calculations.
4619
4620         * scm/output-lib.scm (parentheses-item::print): rewrite, using
4621         ly:grob-common* functions.
4622
4623         * lily/grob-scheme.cc (LY_DEFINE):
4624         ly:grob-common-refpoint-of-array: new function 
4625         ly:grob-common-refpoint: new function 
4626         ly:grob-relative-coordinate: new function 
4627
4628         * lily/instrument-name-engraver.cc (process_music): use
4629         Text_interface::is_markup(). This fixes \markup on instrument names.  
4630
4631         * scm/define-grobs.scm (all-grob-descriptions): set line-thickness
4632         for ties and slurs.
4633
4634         * lily/slur.cc (print): idem.
4635
4636         * lily/tie.cc: add line-thickness for ties. 
4637
4638 2006-02-10  Jan Nieuwenhuizen  <janneke@gnu.org>
4639
4640         * scm/output-svg.scm: Document diversion from GNU coding standards
4641         as a workaround for a bug in Microsoft Internet Explorer.
4642
4643 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4644
4645         * lily/instrument-name-engraver.cc (process_music): use
4646         is_markup() iso. is_string()
4647
4648         * Documentation/user/changing-defaults.itely (Module): add menu entry.
4649
4650         * lily/percent-repeat-engraver.cc (process_music): only look at
4651         main_part_ for % repeats.
4652
4653         * lily/stem-tremolo.cc (get_beam_translation): new function.
4654         (calc_slope): new function.
4655         (height): don't use real slope.
4656
4657 2006-02-10  Jürgen Reuter  <reuter@ipd.uka.de>
4658
4659         * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: add
4660         new connect-to-neighbor, control-points and staff-padding
4661         properties to make ligature brackets showing up again.
4662
4663 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4664
4665         * VERSION: release 2.7.33
4666
4667         * lily/relocate.cc (prefix_relocation): oops. One TOPLEVEL_VERSION
4668         too many.
4669
4670         * Documentation/user/changing-defaults.itely (Difficult tweaks):
4671         remove applyOutput example.
4672         (Objects connected to the input): document \tweak, \parenthesize
4673
4674         * lily/relocate.cc (prefix_relocation): allow "current"
4675         iso. TOPLEVEL_VERSION for share/lilypond/ suffix. This makes
4676         changing VERSION in a lily tree less painful.
4677
4678         * input/regression/parenthesize.ly: new file. 
4679
4680         * scm/output-lib.scm (parenthesize-element): new function.
4681
4682         * scm/define-grobs.scm (all-grob-descriptions): add ParenthesesItem.
4683
4684         * lily/parenthesis-engraver.cc (acknowledge_grob): new file.
4685
4686         * lily/accidental-engraver.cc (make_standard_accidental): reroute
4687         cause: accidentals are caused by note heads, not note events. 
4688
4689 2006-02-08  Graham Percival  <gpermus@gmail.com>
4690
4691         * darwin.patch: small patch from Erlend, thanks!
4692
4693         * Documentation/user/basic-notation.itely: add stem-neutral example.
4694
4695         * Documentation/user/putting.itely: clarifications.
4696
4697 2006-02-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4698
4699         * Documentation/topdocs/NEWS.tely (Top): remove internal cleanup
4700         note, add more guidelines to what should go into NEWS.
4701
4702         * input/sakura-sakura.ly: document how to override font.
4703
4704         * input/regression/font-family-override.ly:  doc -dshow-available-fonts
4705
4706 2006-02-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4707
4708         * lily/midi-item.cc (to_string): truncate time sig at 255 beats.
4709
4710 2006-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
4711
4712         * scripts/convert-ly.py (lilypond_version_re_str): Move from
4713         convertrules.  Add explicit grouping, needed for python2.2.
4714
4715 2006-02-07  Jan Nieuwenhuizen  <janneke@gnu.org>
4716
4717         * Documentation/topdocs/NEWS.tely (Top): Mention code cleanup.
4718
4719 2006-02-07  Graham Percival  <gpermus@gmail.com>
4720
4721         * Documentation/user/global.itely: fix line-width in (text) docs.
4722
4723         * Documentation/user/lilypond-book.itely: same.
4724
4725 2006-02-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4726
4727         * VERSION (PACKAGE_NAME): release 2.7.32
4728
4729         * Documentation/topdocs/NEWS.tely (Top): document new variable
4730         naming.
4731
4732         * flower/include/array.icc (Message): remove file.
4733
4734         * flower/include/std-vector.hh: make sure vsize and VPOS are
4735         defined for binary_search_bounds().
4736
4737         * flower/std-string.cc (std): add to_string(long unsigned).
4738
4739         * configure.in (gui_b): excise std_string option.
4740         (gui_b): excise std_vector option.
4741
4742         * flower/string.cc (Module): excise flower array & string
4743
4744         * flower/include/std-string.hh: excise flower string.
4745
4746         * {ly,lily,scm}/*: use dashes in \paper and \layout variables
4747
4748         * python/convertrules.py (lilypond_version_re_str): require
4749         only numbers and dots in \version string.
4750
4751 2006-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4752
4753         * lily/system-start-delimiter.cc (print): allow style = text too.
4754
4755         * lily/system-start-delimiter-engraver.cc
4756         (acknowledge_system_start_text): new function, also add add to
4757         support of system-start-text (instrument names). This fixes
4758         instrument names on piano staves.
4759
4760         * lily/instrument-name-engraver.cc: rewrite. Use
4761         system-start-delimiter approach. This save memory and cpu.
4762
4763         * scm/define-grobs.scm (all-grob-descriptions): remove
4764         instrument-name from break-alignment.
4765
4766         * mf/GNUmakefile ($(NCSB_TTFS)): depend on pfx2ttf script too.
4767
4768 2006-02-05  Jan Nieuwenhuizen  <janneke@gnu.org>
4769
4770         * stepmake/stepmake/generic-vars.make (LOOP): Add PLUS to keep -j
4771         jobserver going.
4772
4773         * configure.in (std_vector): On by default.
4774
4775         * lily/include/font-metric.hh:
4776         * lily/include/tfm-reader.hh: 
4777         * lily/include/spanner.hh: Use unsigned for indices and sizes.
4778         Update users.
4779
4780         * Documentation/user/changing-defaults.itely: Fix link v2.5, out-www.
4781
4782 2006-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4783
4784         * VERSION (PACKAGE_NAME): 2.7.31
4785
4786         * scm/framework-ps.scm (dump-stencil-as-EPS): don't hardcode left
4787         EPS edge at 0, but take minimum with left-overshoot. This fixes
4788         cut off system start delims. 
4789
4790         * lily/instrument-name-engraver.cc (stop_translation_timestep):
4791         hack: add to axis group if not added yet. This fixes hara kiri'd
4792         piano staves.
4793
4794         * lily/hara-kiri-group-spanner.cc
4795         (force_hara_kiri_in_y_parent_callback): fix signatures.
4796
4797         * lily/hairpin.cc (print): check next hairpin to see whether or
4798         not to be continuing.
4799
4800 2006-02-04  Jan Nieuwenhuizen  <janneke@gnu.org>
4801
4802         * Remove trailing whitespace from makefiles.
4803         
4804         * flower/include/std-vector.hh: Add binary_search_bounds workaround
4805         for earlier gcc.
4806
4807         * .cvsignore: Add out*, out-www, config-*.  Remove lots of cruft.
4808
4809         * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Workaround.
4810
4811         * config.hh.in (HAVE_STL_DATA_METHOD): Add.
4812
4813         * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): New function.
4814
4815         * configure.in: Use it.
4816
4817 2006-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4818
4819         * scm/music-functions.scm (pitch-of-note): new function.
4820
4821         * ly/music-functions-init.ly: add \octave and \addquote
4822
4823         * lily/parser.yy (music_function_chord_body): softcode \octave.
4824         (lilypond_header): softcode \addquote
4825
4826 2006-02-03  Jan Nieuwenhuizen  <janneke@gnu.org>
4827
4828         * flower/include/std-vector.hh[STD_VECTOR]: Do not include
4829         array.hh, parray.hh at all.  Getting ready to flip the
4830         configure default.
4831
4832         * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
4833
4834         * lily/source-file.cc (file::get_line): Help binary_search_bounds
4835         a bit.
4836
4837         * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
4838
4839 2006-02-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4840
4841         * flower/include/array.hh: typo. 
4842
4843 2006-02-02  Graham Percival  <gpermus@gmail.com>
4844
4845         * Documentation/user/advanced-notation.itely: doc "\#" in text.
4846
4847 2006-02-03  Jan Nieuwenhuizen  <janneke@gnu.org>
4848
4849         * flower/include/pqueue.hh: Derive from std::vector.
4850
4851         * flower/include/parray.hh: Conform to std::vector interface.
4852         Update users.
4853
4854 2006-02-02  Graham Percival  <gpermus@gmail.com>
4855
4856         * Documentation/topdocs/NEWS.itely: grammar fix from Laura.
4857
4858 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4859
4860         * flower/file-path.cc (is_file): remove if 0 section.
4861
4862         * buildscripts/pfx2ttf.fontforge (err): robustness fix for
4863         selecting afii61352.
4864
4865 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
4866
4867         * flower/include/std-vector.hh (boundary): Oops, reverse.
4868
4869         * flower/string-convert.cc (convert::unsigned_string): Bugfix:
4870         remove superfluous `d'.
4871
4872         * flower/include/std-vector.hh (boundary, top): Detach from class.
4873         Remove empty vector shell.
4874
4875         * flower/include/array.hh (reverse, swap): Detach from class.
4876         Update users.
4877         
4878         * flower/include/std-vector.hh
4879         * flower/include/array.hh (concat): Globally change to insert ().
4880
4881         
4882         * flower/include/std-vector.hh
4883         * flower/include/parray.hh
4884         * flower/include/array.hh (elem, elem_ref): Globally replace by
4885         at ().
4886
4887 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4888
4889         * Documentation/topdocs/NEWS.tely (Top): use ly: prefix for members.
4890
4891         * python/convertrules.py (FatalConversionError.sub_cxx_id):
4892         anticipate on identifier substitutions.
4893
4894 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
4895
4896         * flower/include/std-vector.hh (insert): Remove, replace by
4897         std::vector interface.  Update callers.
4898
4899         * flower/include/array.icc (insert): Change signature to
4900         match std::vector interface.
4901         
4902         * flower/include/array.icc (vector_sort): Bugfix.
4903
4904 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4905
4906         * lily/parser.yy (output_def_head_with_mode_switch): new
4907         production. Result: dashes and underscores may be used in the
4908         \paper block.
4909
4910         * lily/lexer.ll: add DASHED_WORD.  Accept in INITIAL mode.
4911
4912         * python/convertrules.py (conv): oops. One slash too much.
4913
4914 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
4915
4916         * flower/include/std-vector.hh (sort): Remove, replace by
4917         ::vector_sort.  Update callers.
4918
4919         * flower/include/std-vector.hh (slice): Remove.  Update callers.
4920         (sort): Bugfix.
4921
4922         * flower/test-std.cc (vector_sort): New test.
4923
4924 2006-02-01  Graham Percival  <gpermus@gmail.com>
4925
4926         * Documentation/user/putting.itely: fixes from Erik.
4927
4928 2006-02-01  Jan Nieuwenhuizen  <janneke@gnu.org>
4929
4930         * flower/test-std.cc: Add simple unit test for vector migration.
4931
4932         * stepmake/stepmake/test*: Unit test support.
4933
4934         * flower/include/std-vector.hh (del): Remove.  Use erase (),
4935         update callers.
4936
4937         * flower/include/array.hh (begin, end): Add.
4938         (del, get): Remove.
4939
4940 2006-02-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4941
4942         * lily/include/lily-guile-macros.hh (MAKE_SCHEME_CALLBACK): use
4943         std::string not String. 
4944
4945         * lily/context-def.cc (path_to_acceptable_context): use INT_MAX
4946         iso UINT_MAX.
4947
4948         * lily/prob.cc (Prob): copy type_ too.
4949
4950         * lily/lily-guile.cc (mangle_cxx_identifier): new
4951         function. Class_bla::foo_bar_[px] ->
4952         ly:class-bla::foo-bar[?!]. Changes throughout
4953
4954 2006-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4955
4956         * flower/include/guile-compatibility.hh (scm_from_unsigned): add scm_from_unsigned().
4957
4958         * lily/beam.cc (calc_direction): take dir from visible stem in
4959         degenerate case.
4960
4961 2006-01-31  Jan Nieuwenhuizen  <janneke@gnu.org>
4962
4963         * lily/melody-spanner.cc (spanner::calc_neutral_stem_direction):
4964         Fix -1, >=0 boundary checks for unsigned vsize.
4965
4966         * lily/separating-group-spanner.cc (spanner::find_rods): Fix >=0
4967         loop for unsigned vsize.
4968
4969         * configure.in (--enable-std-vector): New option.
4970         (--enable-std-string): On by default.
4971
4972         * flower/include/std-vector.hh: New file.  Enable switch to
4973         std::vector, update client code.
4974
4975 2006-01-30  Graham Percival  <gpermus@gmail.com>
4976
4977         * scm/document-translation.scm: clarify "this context is also
4978         known as".  Thanks, Werner!
4979
4980         * Documentation/user/putting.itely: small fixes from Don Blaheta.
4981
4982         * Documentation/user/invoking.itely: small fix from Don.
4983
4984 2006-01-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4985
4986         * scm/lily.scm (define-scheme-options): rename option
4987         preview-include-book-title to book-title-preview
4988         (define-scheme-options): move force-eps-font-include (from paper
4989         block) to eps-font-include -d option.
4990
4991         * VERSION (PATCH_LEVEL): release 2.7.30
4992
4993         * input/bach-schenker.ly (staffPiano): new file.
4994
4995         * buildscripts/pfx2ttf.fontforge: remove No. glyph from TTF file.
4996
4997         * Documentation/topdocs/NEWS.tely (Top): simplify NEWS entry, add
4998         credits to Nicolas.
4999
5000         * scm/define-markup-commands.scm (epsfile): add scaling to \epsfile.
5001
5002         * ps/lilyponddefs.ps: remove start-system, stop-system,
5003         start-page fluff. This saves putting { } code on the stack, fixing
5004         stack overflows when including EPS files.
5005
5006 2006-01-29  Graham Percival  <gpermus@gmail.com>
5007
5008         * Documentation/user/putting.itely: minor fixes (comments on -devel).
5009
5010 2006-01-29  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5011
5012         * Documentation/topdocs/NEWS.tely (Top): add \parallelMusic news.
5013
5014 2006-01-28  Graham Percival  <gpermus@gmail.com>
5015
5016         * Documentation/user/putting.itely: minor fixes (mostly tab->space).
5017
5018 2006-01-28  Jan Nieuwenhuizen  <janneke@gnu.org>
5019
5020         * input/mutopia/claop.py: Update.
5021
5022 2006-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5023
5024         * input/regression/completion-heads.ly (texidoc): fix.
5025
5026         * lily/staff-symbol-referencer.cc (on_staff_line): idem.
5027
5028         * lily/tie-formatting-problem.cc
5029         (set_ties_config_standard_directions): use abs iso fabs for ints.
5030
5031         * Documentation/topdocs/INSTALL.texi (Top): document ncsb requirement.
5032
5033         * mf/feta-bolletjes.mf (overdone_heads): solfa_noteheight, a
5034         little less than noteheight, to prevent overlaps in chords.
5035
5036         * lily/note-collision.cc (check_meshing_chords): wipe upper FA
5037         head, and fudge stem-attachment.
5038
5039         * scm/lily-library.scm (not): define hash-for-each for guile 1.6
5040
5041         * lily/slur-scoring.cc (get_best_curve): handle opt_idx < 0 case.
5042
5043 2006-01-27  Jan Nieuwenhuizen  <janneke@gnu.org>
5044
5045         * lily/main.cc (main): Debugging aid: catch exceptions.
5046
5047         * flower/std-string.cc (to_string): Robustification.  Fixes midi
5048         output with std::string.
5049
5050 2006-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5051
5052         * Documentation/topdocs/INSTALL.texi (Top): remove libkpathsea notes.
5053
5054 2006-01-26  Jan Nieuwenhuizen  <janneke@gnu.org>
5055
5056         * Fix -DSTRING_UTILS_INLINED.
5057
5058 2006-01-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5059
5060         * VERSION (PATCH_LEVEL): release 2.7.29
5061
5062         * lily/relocate.cc (setup_paths): mingw uses std string too.
5063
5064         * lily/*.cc: various fixes for substr(ARG).
5065
5066         * lily/sustain-pedal.cc (print): 
5067
5068         * flower/file-name.cc (slashify): use std strings.
5069
5070         * flower/string-convert.cc: remove publib.h
5071
5072         * scm/define-markup-commands.scm (verbatim-file): new markup
5073         command \verbatim-file
5074
5075         * Documentation/topdocs/NEWS.tely: fixup URLs
5076
5077         * input/regression/alignment-vertical-manual-setting.ly (Module):
5078         new file.
5079
5080         * lily/align-interface.cc (align_elements_to_extents): overwrite
5081         translations with numbers in alignment-offsets from left bound
5082
5083         * scm/page.scm (make-page-stencil): read X-offset from paper-system.
5084         (page-translate-systems): new function: take into account Y-offset.
5085
5086         * Documentation/topdocs/NEWS.tely (Top): document new features.
5087
5088         * input/regression/page-layout-manual-position.ly (Module): new
5089         file.
5090
5091 2006-01-26  Jan Nieuwenhuizen  <janneke@gnu.org>
5092
5093         * flower/file-path.cc (path::parse_path): Oops.
5094
5095         * Finish std::string interface.  For now, use std:: marker
5096         throughout for easy s/r.
5097
5098 2006-01-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5099
5100         * Documentation/user/putting.itely (Score is a single musical
5101         expression): typo.
5102         (Score is a single musical expression): more typos.
5103
5104         * scm/page.scm (annotate-space-left): thinko.
5105         (annotate-page): more thinkos.
5106
5107 2006-01-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5108
5109         * scm/layout-page-layout.scm (write-page-breaks): record tweaks
5110         for different \score blocks separately.
5111         (post-process-pages): put write-page-layout into paper block.
5112
5113         * lily/output-def.cc (get_parser): new file.
5114
5115         * lily/output-def-scheme.cc (LY_DEFINE): ly:output-def-parser, new
5116         file.
5117
5118         * lily/include/output-def.hh (class Output_def): add parser_ member.
5119
5120         * input/regression/page-layout-twopass.ly (Module): new file.
5121
5122         * scm/lily.scm: remove cpp hack.
5123
5124         * lily/lyric-engraver.cc (get_voice_to_lyrics): use NPOS everywhere.
5125
5126 2006-01-25  Jan Nieuwenhuizen  <janneke@gnu.org>
5127
5128         * GNUmakefile.in (c-clean): New target.
5129
5130         * flower/include/std-string.hh: String/std::string compatibility:
5131         Use NPOS for `not found' (iso -1), use ssize for length () and pos
5132         type.
5133
5134         * flower/rational.cc: 
5135         * flower/include/rational.hh: 
5136
5137         * flower/offset.cc: 
5138         * flower/include/offset.hh: 
5139
5140         * flower/interval.cc: 
5141         * flower/include/interval.hh: 
5142
5143         * flower/string-convert.cc: 
5144         * flower/include/string-convert.hh: Use std::string [interface].
5145         Update callers.
5146
5147 2006-01-25  Heikki Junes  <hjunes@cc.hut.fi>
5148
5149         * Documentation/index.html.in: clean up.
5150
5151 2006-01-25  Graham Percival  <gpermus@gmail.com>
5152
5153         * Documentation/user/putting.itely: another new untested doc section.
5154
5155 2006-01-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5156
5157         * scm/layout-page-layout.scm (write-page-breaks): write
5158         \spacingTweaks #ALIST. Handle grace timing.
5159
5160         * scm/: more imports.
5161
5162         * scm/page.scm (make-page): add footer/header.
5163         (annotate-space-left): revise: only take page argument.
5164         (layout->page-init): new function.
5165
5166         * scm/layout-page-layout.scm (write-page-breaks): preliminary
5167         version of the system/spacing/linebreak hack writing to the output
5168
5169         * lily/prob-scheme.cc (LY_DEFINE): take optional 'key val args in
5170         ly:make-prob.
5171
5172         * lily/grob-scheme.cc (LY_DEFINE): ly:spanner-get-bound ->
5173         ly:spanner-bound
5174
5175 2006-01-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5176
5177         * scm/stencil.scm (annotate-y-interval): move from layout-page-layout.scm
5178
5179         * scm/paper-system.scm (paper-system-annotate): new file. Handle paper-system.
5180
5181         * scm/layout-page-layout.scm (optimal-page-breaks): move all page
5182         handling to page.scm
5183
5184         * lily/prob-scheme.cc (LY_DEFINE): new file.
5185         (LY_DEFINE): functions ly:make-prob , ly:prob-type? , ly:prob-(set-)property(!)
5186
5187         * lily/music-scheme.cc (LY_DEFINE): rewrite get/set property using
5188         prob functions.
5189
5190         * lily/music.cc (derived_mark): derive Music from Prob.
5191
5192         * lily/paper-system.cc (LY_DEFINE): derive from Prob.
5193
5194         * lily/prob.cc (Module): Implement Prob (Property Object), object
5195         with shared and r/w property alists.  
5196
5197         * lily/include/prob.hh (Module): new file. Declare Prob.
5198
5199         * flower/string.cc: remove is_empty().
5200
5201         * flower/include/string.hh (class String): remove String:: qualifier.
5202
5203         * buildscripts/analyse-cxx-log.py: new file. Read compile log to
5204         substitute appropriate functions.
5205
5206         * flower/include/string.hh (class String): remove to_str0 and
5207         is_empty(). S&R everywhere.
5208
5209 2006-01-23  Graham Percival  <gpermus@gmail.com>
5210
5211         * Documentation/user/basic-notation.itely: add hairpin
5212         after-linebreak tweak to commonprop.
5213
5214         * Documentation/user/putting.itely: added two new sections.
5215
5216 2006-01-23  Jan Nieuwenhuizen  <janneke@gnu.org>
5217
5218         * flower/international.cc: 
5219         * flower/include/international.hh: 
5220
5221         * flower/getopt-long.cc: 
5222         * flower/include/getopt-long.hh: Use std::string [interface].
5223         Update callers.
5224
5225         * flower/include/std-string.hh: Oops, bugfix for --disable-std-string.
5226
5227         * stepmake/stepmake/executable-rules.make: Add dependency on
5228         module libraries.
5229
5230 2006-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
5231
5232         * flower/file-path.cc: 
5233         * flower/include/file-path.hh: Use std::string [interface].
5234         Update callers.
5235
5236         * flower/direction.cc: 
5237         * flower/axis.cc: Unused.  Remove.
5238
5239         * configure.in (--enable-std-string): New option.
5240
5241         * flower/std-string.cc: 
5242         * flower/include/std-string.hh: New file.
5243
5244         * flower/file-name.cc[STD_STRING]:
5245         * flower/include/file-name.hh[STD_STRING]: Use it.  Update callers.
5246
5247 2006-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5248
5249         * scm/output-svg.scm (placebox): no GNU coding standards in SVG output. 
5250
5251         * scm/define-markup-commands.scm (with-dimensions):
5252         with-dimensions markup command.
5253
5254         * input/test/font-table.ly: use it.
5255
5256         * lily/open-type-font.cc (glyph_list): new function.
5257
5258         * lily/open-type-font-scheme.cc (LY_DEFINE): ly:otf-glyph-list function.
5259
5260         * lily/ttf.cc: remove ly:font-glyph-list scheme function
5261
5262 2006-01-22  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5263
5264         * ly/music-functions-init.ly (parallelMusic): new music function
5265         for parallel music entry.
5266
5267         * scm/define-music-properties.scm (all-music-properties): new
5268         'void music property
5269
5270         * scm/music-functions.scm (ly:music-message): make public, to be
5271         used in music function definitions
5272
5273         * scm/lily-library.scm (collect-music-for-book): discard music
5274         when the 'void property is set.
5275
5276 2006-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5277
5278         * lily/ttf.cc (LY_DEFINE): store name before destroying face.
5279
5280         * mf/GNUmakefile: idem.
5281
5282         * buildscripts/mf-to-table.py (help): excise fetaXXlist.ly support.
5283
5284         * stepmake/bin/install.py (dest): Only chmod/chown just created directories
5285
5286         * Documentation/user/notation-appendices.itely (The Feta font):
5287         use it.
5288
5289         * input/test/font-table.ly: new file. Generate font table within lily.
5290
5291         * Documentation/user/notation-appendices.itely (The Feta font):
5292         use new font-table.ly file. 
5293
5294         * stepmake/stepmake/install-out-targets.make
5295         (local-install-outfiles): only create directory if
5296         $(INSTALLATION_OUT_DIR) is defined. This fixes install on Gentoo.
5297
5298 2006-01-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5299
5300         * lily/ttf.cc (LY_DEFINE): new function ly:font-glyph-list.
5301
5302         * VERSION (PACKAGE_NAME): release 2.7.28
5303
5304         * scm/framework-ps.scm (write-preamble): use it to pick exactly
5305         the right font from a Mac dfont.
5306         (write-preamble): don't forget directory, only look at files.
5307
5308         This fixes problems with TTF files in dfonts that don't match
5309         their PostScript names.
5310          
5311         * lily/ttf.cc (LY_DEFINE): ly:ttf-ps-name: new routine to extract
5312         PS name from TTF font.
5313
5314         * input/regression/tie-manual.ly: document new feature.
5315
5316         * Documentation/topdocs/NEWS.tely (Top): add tie NEWS.
5317
5318         * VERSION (MY_PATCH_LEVEL): bump to .28
5319
5320         * Documentation/user/basic-notation.itely (Ties): add tie examples
5321         refs.
5322
5323         * lily/tie-formatting-problem.cc (score_ties_configuration):
5324         symmetry penalties for outer ties.
5325
5326 2006-01-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5327
5328         * lily/tie-formatting-problem.cc (generate_configuration) 
5329         (set_manual_tie_configuration): skip non-pair manual
5330         tie-configuration, so you can set individual ties as
5331
5332           #'tie-configuration = #'((7 . 1) #t (-3 . 1))
5333
5334         * input/regression/tie-chord.ly: use generateTiePattern to
5335         simplify file.
5336
5337         * lily/tie-formatting-problem.cc (peak_around): new function.
5338         (score_configuration): use sliding criterion for staff line collisions. 
5339         (score_configuration): idem for dot collisions.
5340         (generate_configuration): use separate stem_gap for gap to stem.
5341
5342         * lily/include/tie-formatting-problem.hh (struct Tie_details):
5343         separate penalty factors for x and y distance.
5344         (struct Tie_details): separate penalties for tip and center line collisions.
5345
5346 2006-01-19 Han-Wen Nienhuys  <hanwen@xs4all.nl>
5347
5348         * lily/tie-formatting-problem.cc (generate_configuration): make
5349         large ties avoid stafflines in the horizontal section.
5350         (score_configuration): use softcoded penalties
5351         (score_aptitude): idem.
5352
5353         * lily/tie-helper.cc (from_grob): softcode tie details
5354
5355         * lily/staff-symbol-referencer.cc (on_staff_line): new function
5356
5357         * lily/staff-symbol-referencer.cc (on_line): rename from
5358         on_staffline 
5359
5360 2006-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5361
5362         * ly/music-functions-init.ly: remove duplicate tag.
5363
5364         * lily/include/*.hh: GCC 4.1 fixes.
5365
5366 006-01-16  Erlend Aasland  <erlenda@gmail.com>
5367
5368         * Documentation/user/global.itely: fix typos; @bugs -> @refbugs
5369
5370         * scm/define-music-types.scm: fix bug in desc. string
5371         for OverrideProperty
5372
5373 2006-01-15 Erik Sandberg  <mandolaerik@gmail.com>
5374
5375         * scripts/lilypond-book.py: bugfix
5376
5377         * scm/define-music-types.scm: fix typos.
5378
5379 2006-01-14  Graham Percival  <gpermus@gmail.com>
5380
5381         * Documentation/user/ basic-notation.itely, global.itely,
5382         advanced-notation.itely, instrument-notation.itely: small
5383         additions (bugs and commonly tweaked properties).
5384
5385 2006-01-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5386
5387         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): generic
5388         detection of mingw build.
5389         (MINGW_BUILD): opps.
5390
5391 2006-01-12  Jan Nieuwenhuizen  <janneke@gnu.org>
5392
5393         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Add
5394         i686-mingw32.
5395
5396 2006-01-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5397
5398         * scm/music-functions.scm (skip->rest): add skip->rest
5399
5400 2006-01-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5401
5402         * lily/font-config.cc (init_fontconfig): call FcConfigBuildFonts()
5403         explicitly.
5404
5405         * lily/font-config-scheme.cc (LY_DEFINE): also display font and
5406         config dirs. Aids debugging. 
5407         (display_config): also display config files.
5408
5409 2006-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5410
5411         * VERSION: release 2.7.27
5412
5413         * lily/bar-line.cc (calc_bar_size): inspect staff->extent (Y_AXIS)
5414         for determining bar size.
5415
5416         * lily/staff-symbol.cc (print): place lines at distance line-positions
5417
5418         * scm/define-grob-properties.scm (all-user-grob-properties): add
5419         line-positions.
5420
5421         * lily/staff-symbol.cc (height): new function.
5422
5423         * input/regression/staff-line-positions.ly:  new file.
5424
5425 2006-01-06  Graham Percival  <gpermus@gmail.com>
5426
5427         * input/test/add-staccato.ly: remove reference to old file.
5428
5429 2006-01-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5430
5431         * scripts/lilypond-book.py (invokes_lilypond): allow . in path to
5432         lilypond binary too.
5433
5434 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5435
5436         * make/mutopia-rules.make (Module): use LILYPOND_BINARY
5437
5438 2006-01-06  Jan Nieuwenhuizen  <janneke@gnu.org>
5439
5440         * scripts/midi2ly.py: Bugfix: Declare datadir.
5441
5442         * make/ly-rules.make:
5443         * make/mutopia-rules.make: Use LILYPOND_BINARY (WAS: LILYPOND, but
5444         that seems to be gone). Fixes make web.
5445
5446         * The grand 2005-2006 replace.
5447
5448         * VERSION (MY_PATCH_LEVEL): Stay on .26 for now.
5449
5450 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5451
5452         * make/lilypond-vars.make: set LILYPOND_BINARY variable
5453         (LILYPOND_BOOK_LILYPOND_FLAGS): new variable
5454         LILYPOND_BOOK_LILYPOND_FLAGS to hold system dependent settings,
5455         like -dgs-font-load.
5456
5457         * Documentation/user/GNUmakefile ($(outdir)/interfaces.itexi):
5458         remove absolute path to lilypond binary.
5459         
5460 2006-01-05 Pedro Kroeger    <kroeger@pedrokroeger.net>
5461
5462         * configure.in (NCSB_DIR): fix --with-ncsb-dir option.
5463
5464 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5465
5466         * make/lilypond-vars.make: support LILYPOND_EXTERNAL_BINARY variable.
5467
5468         * mf/GNUmakefile: remove broken dvips map symlink.
5469
5470 2006-01-04  Jan Nieuwenhuizen  <janneke@gnu.org>
5471
5472         * lily/main.cc: 
5473         * configure.in: Cosmetic fixes.
5474
5475 2006-01-04  Mats Bengtsson  <mabe@s3.kth.se>
5476
5477         * Documentation/user/music-glossary.tely (Pitch names): Added
5478         Spanish pitch names and durations, thanks to Ernesto Gancedo
5479
5480 2006-01-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5481
5482         * scm/lily.scm (define-scheme-options): use quasi-quote for option
5483         init. Fixes verbose printing of .scm files.
5484
5485         * stepmake/aclocal.m4: add spaces before - options.
5486         
5487 2006-01-03  Jan Nieuwenhuizen  <janneke@gnu.org>
5488
5489         * lily/relocate.cc (setup_paths): Bugfix: do not store result
5490         of path search in local block variable.
5491
5492 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5493
5494         * configure.in (NCSB_DIR): --enable-ncsb-dir
5495         (LINK_GXX_STATICALLY): denko.
5496
5497         * mf/GNUmakefile ($(NCSB_TTFS)): NCSB_DIR iso. NCSB_PATH. 
5498
5499         * configure.in (LINK_GXX_STATICALLY): --enable-ncsb-path option. 
5500         use locate to find c059033l.pfb. 
5501         
5502 2006-01-02  Jan Nieuwenhuizen  <janneke@gnu.org>
5503
5504         * lily/tie-formatting-problem.cc
5505         (problem::generate_base_chord_configuration): Use my_round (was
5506         round).
5507
5508         * lily/source-file.cc (file::get_counts)[!HAVE_MBRTOWC]: Bugfix,
5509         do not invoke mbrtowc.
5510
5511         * lily/relocate.cc (setup_paths): Add more debugging verbosity.
5512
5513 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5514
5515         * scm/lily.scm (lilypond-all): oops. remove debugging hack.
5516
5517 2005-01-02  Heikki Junes  <hjunes@cc.hut.fi>
5518
5519         * Documentation/user/invoking.itely (svg): revise.
5520
5521 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5522
5523         * lily/lexer.ll: use sourcefilename iso. renameinput.
5524
5525 2006-01-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5526
5527         * mf/GNUmakefile ($(NCSB_TTFS)): revise rule. Create
5528         <PostScriptName>.ttf instead of c059XXXttf.
5529
5530         * lily/program-option.cc (LY_DEFINE): special support for
5531         --verbose, so it works before option init too.
5532  
5533         * mf/GNUmakefile (local-install): oops.
5534
5535         * lily/lyric-hyphen.cc (print): oops.
5536
5537         * buildscripts/pfx2ttf.fontforge: new file.
5538         
5539         * mf/GNUmakefile (NCSB_PATH): add vars for NCSB.
5540         ($(outdir)/%.ttf): new rule. 
5541
5542         * scm/define-grobs.scm (all-grob-descriptions): add font-interface
5543         to LyricHyphen.
5544
5545         * lily/lyric-hyphen.cc (print): multiply hyphen height by
5546         font-size
5547
5548 2005-12-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5549
5550         * VERSION: release 2.7.26
5551         
5552         * mf/GNUmakefile (install-fc-cache): remove old font.cache-1 files.
5553
5554 2005-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5555
5556         * lily/font-config.cc (init_fontconfig): verbosity.
5557
5558         * THANKS: add Muziekacademie Lede. 
5559
5560         * scripts/musicxml2ly.py (print_voice_definitions): new function 
5561         (print_score_setup): new function
5562         (convert): read part definition to output staves properly.
5563
5564         * python/musicxml.py (Measure.get_notes): new class. Wrap lists of
5565         Music_xml notes.
5566
5567         * python/musicexp.py (Output_printer.__init__): use _ in data
5568         members.
5569         (Output_printer.unformatted_output): new function: no formatting,
5570         but count braces.
5571         (Duration.get_length): remove isinstance() checks for
5572         Output_printer everywhere.
5573
5574         * input/regression/lyrics-bar.ly (texidoc): add
5575         Separating_line_group_engraver.
5576
5577 2005-12-29  Jan Nieuwenhuizen  <janneke@gnu.org>
5578
5579         * lily/relocate.cc (framework_relocation): New function,
5580         factored from set_relocation ().
5581         (prefix_relocation): Rename from set_relocation ().
5582         (setup_paths): Use it.
5583
5584 2005-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5585
5586         * scm/*.scm: use LEFT/RIGHT/UP/DOWN etc. iso. magical
5587         numbers. Patch by Erlend Aasland.
5588
5589 2005-12-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5590
5591         * lily/font-config.cc (init_fontconfig): print warning if cache
5592         file is not existant.
5593
5594         * lily/main.cc: don't use #ifdef but #if
5595
5596 2005-12-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5597
5598         * lily/grob-property.cc (internal_set_property): don't abort on
5599         calculation-in-progress.
5600
5601         * lily/beam.cc (get_default_dir): robustness: don't divide by zero.
5602
5603         * lily/tuplet-bracket.cc (calc_control_points): oops: typo. Read
5604         connect-to-neighbor property not connect-to-other
5605
5606         * lily/program-option.cc (LY_DEFINE): remove Protected_scm global variable.
5607         (LY_DEFINE): oops. don't forget protection.
5608
5609         * flower/parse-afm.cc (Module): strip AFM handling completely.
5610
5611         * lily/stencil-expression.cc: idem.
5612
5613         * lily/grob-interface-scheme.cc (LY_DEFINE): idem.
5614
5615         * lily/function-documentation.cc (ly_add_function_documentation):
5616         use static member iso. Protected_scm
5617
5618         * lily/main.cc: use ifdef ARGV0_RELOCATION iso. MINGW
5619
5620         * config.make.in (prefix): remove HAVE_KPATHSEA_SO
5621
5622 2005-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
5623
5624         * lily/relocate.cc (set_env_dir): New function.
5625         (set_relocation): Use it to fix setting PANGO_PREFIX.
5626
5627 2005-12-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5628
5629         * input/regression/stem-direction-context.ly: remove rest.
5630
5631         * lily/melody-engraver.cc (process_music): restart for bar lines.
5632         (acknowledge_slur): restart for slurs.
5633
5634 2005-12-27  Heikki Junes  <hjunes@cc.hut.fi>
5635
5636         * Documentation/user/invoking.itely: describe how to view SVG 
5637         output using Inkscape which replace embedded fonts with OTF fonts.
5638
5639 2005-12-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5640
5641         * lily/relocate.cc (set_relocation): set PANGO_PREFIX
5642
5643 2005-12-23  Jan Nieuwenhuizen  <janneke@gnu.org>
5644
5645         * lily/melody-engraver.cc (class Melody_engraver): Remove lying
5646         comment.
5647
5648 2005-12-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5649
5650         * VERSION (PACKAGE_NAME): release 2.7.25
5651
5652         * Documentation/topdocs/NEWS.tely (Top): document new feature.
5653
5654         * input/regression/stem-direction-context.ly: new file.
5655
5656         * lily/relocate.cc (set_relocation): add PANGO_PREFIX
5657
5658         * lily/melody-engraver.cc (acknowledge_stem): restart MelodyItem
5659         on rest.
5660
5661         * ly/engraver-init.ly: add Melody_engraver
5662
5663         * lily/beam.cc (calc_direction): use default-direction
5664         iso. get_default_direction()
5665
5666         * scm/define-grob-properties.scm (all-user-grob-properties): add
5667         default-direction property.
5668
5669         * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem.
5670
5671         * lily/stem.cc (calc_default_direction): remove
5672         Stem::get_default_direction, use default-direction with callback
5673         instead.
5674
5675         * lily/melody-spanner.cc (calc_neutral_stem_direction): 
5676
5677         * lily/melody-engraver.cc: new file. Acknowledge stems for
5678         interpolated stem directions. 
5679
5680         * lily/melody-spanner.cc: new file. Interpolate stem directions.
5681
5682         * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem
5683
5684         * lily/slur-configuration.cc (fit_factor): more robust check for
5685         point in curve X-extent.
5686
5687         * lily/slur.cc (outside_slur_callback): return offset_scm, not 0.
5688         (outside_slur_callback): check for 'outside avoidance.
5689
5690         * lily/slur-configuration.cc (score_extra_encompass): don't use
5691         bound->column() == avoid->column() for checking extents, as this
5692         doesn't work for accidentals. 
5693
5694         * lily/slur-engraver.cc (acknowledge_extra_object): remove
5695         DynamicText hardcoding.
5696
5697         * lily/slur-scoring.cc (enumerate_attachments): robustness: don't
5698         crash if bound stem is NULL
5699
5700         * lily/piano-pedal-performer.cc: patch by MWD for enabling piano
5701         pedals.
5702
5703 2005-12-22  Graham Percival  <gpermus@gmail.com>
5704
5705         * scm/define-markup-commands.scm: typo.  @code{\raise}
5706         => @code{\\raise}.
5707
5708         * darwin.patch: now used again, includes a
5709         required patch from fink.
5710
5711 2005-12-21  Heikki Junes  <hjunes@cc.hut.fi>
5712
5713         * po/TODO: mention gtranslator along with kbabel.
5714         * po/fi.po: update translations.
5715
5716 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
5717
5718         * lily/relocate.cc (setup_paths): Bugfix.
5719
5720 2005-12-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5721
5722         * lily/slur-configuration.cc (score_extra_encompass): don't use
5723         "avoid" choice for avoid-slur.
5724
5725         * stepmake/bin/install.py (dest): don't create existing dir.
5726
5727 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
5728
5729         * stepmake/bin/install.py: Remove file before copying.
5730
5731         * config.make.in: 
5732         * stepmake/aclocal.m4: Do not substitute INSTALL.
5733
5734 2005-12-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5735
5736         * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
5737         depend on link-tree.
5738
5739         * lily/relocate.cc (setup_paths): only check path for non-absolute
5740         dir without directory part.
5741
5742         * flower/file-name.cc (is_absolute):  new method.
5743         (is_absolute): check root_ too.
5744
5745 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
5746
5747         * lily/relocate.cc (setup_paths) [__MINGW32__]: Comment-out broken
5748         relocation code.  Oops, don't comment out too much.
5749
5750         * stepmake/stepmake/generic-vars.make (INSTALL): Assign INSTALL_PY
5751         iso itself.
5752
5753         * lily/relocate.cc [HAVE_GETTEXT]: Include libintl.h.  Fixes mingw
5754         compile.
5755
5756 2005-12-20  Jan Nieuwenhuizen  <janneke@gnu.org>
5757
5758         * .cvsignore: Add install-sh.
5759
5760         * autogen.sh (srcdir): Typo.
5761
5762 2005-12-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5763
5764         * autogen.sh (srcdir): urg. Touch install-sh.
5765
5766         * stepmake/bin/install-sh (Module): remove.
5767
5768         * stepmake/stepmake/generic-vars.make (INSTALL): add $(INSTALL).
5769
5770         * lily/include/relocate.hh: new file.
5771
5772         * lily/relocate.cc: new file. Contain relocation logic.
5773
5774         * lily/main.cc (setup_paths): fix: LILYPOND_RELOCATE_PREFIX.
5775         (main): read LILYPOND_VERBOSE as the first thing.
5776
5777         * stepmake/aclocal.m4: remove INSTALL variable.
5778
5779         * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
5780         separate target for making font symlinks.
5781         (documentation-dir): use $(if $(findstring )) for switching off
5782         Documentation.
5783
5784         * stepmake/stepmake/help2man-vars.make (OUT_DIST_FILES): only do
5785         something if DOCUMENTATION is no.
5786
5787 2005-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5788
5789         * VERSION: release 2.7.24
5790
5791         * lily/script-column-engraver.cc (stop_translation_timestep):
5792         delay adding to script-column.
5793
5794         * lily/tuplet-bracket.cc (print): suicide if no control-points. 
5795
5796         * python/convertrules.py (conv): rule for number-visibility
5797
5798         * lily/slur-configuration.cc (score_extra_encompass): different
5799         distance measure for avoid and inside avoidance.
5800         (score_extra_encompass): use 1/(distance+eps) as penalty.
5801
5802         * lily/slur-scoring.cc (generate_avoid_offsets): use 'inside
5803         encompass objects for generating slur curves.
5804
5805         * lily/slur.cc: use details iso. slur-details property.
5806
5807         * input/regression/slur-tuplet.ly: new file.
5808
5809         * lily/slur-engraver.cc (acknowledge_tuplet_number): new function.  
5810
5811         * flower/include/offset.hh (class Offset): new operator /=
5812
5813         * lily/tuplet-number.cc (print): new file, new interface.
5814
5815         * scm/define-grob-properties.scm (all-user-grob-properties):
5816         remove number-visibility property.
5817
5818         * lily/tuplet-bracket.cc (calc_control_points): new function
5819         (calc_connect_to_neighbors): new function.
5820         (print): remove text handling for tuplet numberdef.
5821
5822         * lily/tuplet-engraver.cc (struct Tuplet_description): create
5823         TupletNumbers too. 
5824
5825         * lily/lily-guile.cc (robust_scm2booldrul): new function
5826
5827         * scm/define-grobs.scm (all-grob-descriptions): new grob TupletNumber
5828
5829         * lily/tuplet-bracket.cc (calc_position_and_height): use
5830         staff-padding to control whether tuplet brackets are over staves.
5831
5832         * lily/grob.cc (suicide): clear dim_caches_.
5833
5834         * lily/dimension-cache.cc (clear): new function.
5835
5836         * lily/grob.cc (extent): swap order of min-extent and extent
5837         calculations. This fixes hara kiri staves. 
5838
5839 2005-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
5840
5841         * lily/main.cc: Nitpick: relocation is not based on path, but on
5842         directory (location).
5843
5844 2005-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5845
5846         * lily/main.cc (setup_paths): read LILYPOND_RELOCATE_PREFIX
5847
5848         * stepmake/stepmake/install-targets.make (local-uninstall): idem.
5849
5850         * stepmake/stepmake/install-out-targets.make (local-install-outfiles): idem.
5851
5852         * stepmake/stepmake/help2man-targets.make (install-help2man): idem.
5853
5854         * stepmake/stepmake/generic-vars.make (Module): idem.
5855
5856         * stepmake/stepmake/executable-targets.make (default): use it.
5857
5858         * stepmake/bin/install.py (create_dir): new file. Replace install-sh.
5859
5860         * make/GNUmakefile: don't install make rules.
5861
5862         * lily/main.cc (setup_paths): don't inspect $PATH for argv0 with
5863         slashes.
5864         (prepend_env_path): more verbosity.
5865
5866 2005-12-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5867
5868         * GNUmakefile.in: add dir argument for find command.
5869
5870         * lily/parser.yy (bass_figure): set_spot() for bass figures. This
5871         fixes weird line numbers for point & click.
5872
5873         * lily/source-file.cc (get_counts): init line/column/char counts.
5874
5875 2005-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5876
5877         * lily/main.cc: remove ARGV0_RELOCATION, instead use --relocate.
5878
5879 2005-12-16  Graham Percival  <gpermus@gmail.com>
5880
5881         * Documentation/user/basic-notation.itely, advanced-notation.itely:
5882         minor fixes from Fredric.  Thanks!
5883
5884 2005-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5885
5886         * ly/music-functions-init.ly: add \bar and \clef music function 
5887
5888         * lily/lily-lexer.cc: idem.
5889
5890         * lily/parser.yy (FIXME): remove BAR and CLEF.
5891
5892 2005-12-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5893
5894         * Documentation/topdocs/NEWS.tely (Top): doc string argument change.
5895
5896         * lily/parser.yy (Generic_prefix_music_scm): allow strings as
5897         function arguments too
5898
5899         * lily/main.cc (set_relocation): new function.
5900
5901         * scripts/musicxml2ly.py (convert): add \version
5902
5903         * lily/tie.cc: remove get_default_attachments()
5904
5905         * VERSION (PACKAGE_NAME): release 2.7.23
5906         
5907         * lily/chord-tremolo-engraver.cc (acknowledge_stem): use
5908         ultimate_music_cause(). This fixes core dumps in unfold-all-repeats.ly
5909
5910         * Documentation/topdocs/NEWS.tely (Top): document new feature.
5911
5912         * lily/tie-formatting-problem.cc (score_ties): new function
5913         (get_variations): new function. Try flipping dirs for collisions.
5914         (generate_optimal_chord_configuration): new function. 1-opt search
5915         for better configuration.
5916
5917         * lily/tie-configuration.cc: new file.
5918
5919         * lily/tie.cc: junk Tie::get_configuration()
5920
5921         * lily/tie-formatting-problem.cc (score_ties_aptitude): new function.
5922         (score_ties_configuration): new function.
5923         (generate_ties_configuration): new function.
5924         (generate_base_chord_configuration): new function.
5925         (set_ties_config_standard_directions): Move body from tie-column-format.cc 
5926         (set_manual_tie_configuration): Move body from tie-column-format.cc 
5927
5928         * input/regression/tie-dot.ly: new file.
5929
5930         * lily/tie-formatting-problem.cc (score_configuration): score
5931         tie/dot collisions.
5932
5933         * lily/tie-helper.cc (get_transformed_bezier): new function
5934
5935         * Documentation/topdocs/NEWS.tely (Top): strip out-www.
5936
5937         * stepmake/stepmake/python-module-vars.make (SHARED_FLAGS): use
5938         -undefined suppress iso. -framework Python 
5939
5940         * scm/define-grobs.scm (all-grob-descriptions): set
5941         springs-and-rods (thanks Joe Neeman!)
5942
5943 2005-12-12  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5944
5945         * input/no-notation/display-lily-tests.ly (test): 
5946         * scm/display-lily.scm (tag->lily-string): the syntax for tags has
5947         changed from \tag #'(a b) to \tag #'a \tag #'b
5948
5949 2005-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5950
5951         * Documentation/topdocs/NEWS.tely: strip out-www.
5952
5953         * lily/include/grob-interface.hh: include lily-guile.hh not libguile.h
5954
5955         * config.make.in (AR): add AR and RANLIB
5956
5957         * flower/libc-extension.cc: include cassert
5958
5959         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): more robust
5960         darwin check.
5961
5962 2005-12-11  Graham Percival  <gpermus@gmail.com>
5963
5964         * stepmake/stepmake/generic-vars.make: define DARWIN_BUILD.
5965
5966         * stepmake/stepmake/python-modules-vars.make: define
5967         SHARED_FLAGS for OSX.  Thanks Johannes Schindelin!
5968
5969         * THANKS: added Johannes Schindelin.
5970
5971 2005-12-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5972
5973         * python/midi.c (pymidi_parse): use memcmp() iso. strcmp().
5974
5975         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
5976         Span_arpeggio_engraver, add Tweak_engraver to Score context. 
5977
5978         * lily/parser.yy: reorganize file layout.
5979
5980         * ly/music-functions-init.ly: add tweak music function.
5981
5982         * lily/grob-info.cc (ultimate_music_cause): new function:
5983         recursively lookup causes. 
5984
5985         * lily/parser.yy (chord_body_element): allow music functions for
5986         post-events, allow music functions for chord elements. 
5987  
5988         * lily/font-config-scheme.cc (display_fontset): add cast.
5989
5990         * python/convertrules.py (FatalConversionError.sub_syms): \tag
5991         #'(a b) -> \tag #'a \tag #'b rule.
5992
5993         * python/musicexp.py (Output_printer.dump_version): new function
5994
5995 2005-12-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5996
5997         * lily/parser.yy (FIXME): remove \tag
5998         (FIXME): remove tag_music() function.
5999
6000         * lily/lily-lexer.cc: remove \tag
6001
6002         * ly/music-functions-init.ly: define music-function "tag"
6003
6004         * lily/parser.yy (chord_body_element): allow tags in chord bodies.
6005
6006 2005-12-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6007
6008         * VERSION (PATCH_LEVEL): release 2.7.22
6009
6010         * input/regression/lyric-hyphen-retain.ly: renew.
6011
6012         * scm/define-grobs.scm (all-grob-descriptions): add LyricSpace
6013         grob
6014
6015         * lily/lyric-hyphen.cc (set_spacing_rods): use minimum-distance
6016         iso. minimum-length property for rods.
6017
6018         * lily/hyphen-engraver.cc (acknowledge_lyric_syllable): create
6019         LyricSpace item to keep lyrics spaced apart.
6020
6021         * ly/engraver-init.ly: remove Separating_line_group_engraver
6022
6023         * Documentation/user/music-glossary.tely: do setfilename before
6024         music-glossary.
6025
6026 2005-12-07  Heikki Junes  <hjunes@cc.hut.fi>
6027
6028         * Documentation/user/lilypond-book.itely: use `,´ after xref:
6029         See xref documentation, for example.
6030
6031 2005-12-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6032
6033         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): use
6034         pending_skip iso. ly_voice[-1]
6035         (main): add if __main__ for debugging.
6036
6037         * python/musicxml.py (Accidental.__init__): new class.
6038
6039         * scripts/musicxml2ly.py (progress): new function
6040         (musicxml_key_to_lily): don't barf on modeless keys.
6041         (create_skip_music): new function.
6042         (musicxml_spanner_to_lily_event): new function. Handle beams too.
6043         (musicxml_note_to_lily_main_event): new function.
6044
6045         * python/musicexp.py (Music.__init__): add comment field.
6046         (NestedMusic.append): new routine.
6047         (SequentialMusic.print_ly): print comment.
6048         (ArpeggioEvent.ly_expression): new class
6049         (BeamEvent.ly_expression): new class
6050         (NoteEvent.__init__): support for cautionary/forced accs.
6051
6052         * lily/lookup.cc (slur): normal order for array loop.
6053
6054         * scm/framework-ps.scm (dump-stencil-as-EPS): set left X of bbox
6055         to 0.0.
6056
6057         * ly/engraver-init.ly: set bar-size, so bar-lines aren't
6058         collapsed.
6059
6060 2005-12-06 Erik Sandberg  <mandolaerik@gmail.com>
6061
6062         * scm/music-functions.scm: Make phrasing slurs follow voice direction
6063
6064         * scripts/lilypond-book.py: Introduce option
6065             --preserve-line-breaks, for usage with srcltx
6066
6067 2005-12-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6068
6069         * scm/output-lib.scm (print-circled-text-callback): draw circle
6070         around text using make-circle-markup.
6071
6072         * Documentation/user/*: strip out-www from file names.
6073
6074 2005-12-05  Heikki Junes  <hjunes@cc.hut.fi>
6075
6076         * Documentation/user/lilypond.tely (direntry): remove empty lines;
6077         fixes invalid info entry issue with makeinfo 4.8 in debian sid.
6078
6079 2005-12-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6080
6081         * Documentation/user/GNUmakefile: idem.
6082
6083         * Documentation/user/macros.itexi: strip out-www
6084
6085         * python/rational.py: python 2.3 compat.
6086
6087         * VERSION (PATCH_LEVEL): release 2.7.21
6088
6089         * scripts/musicxml2ly.py (NonDentedHeadingFormatter.format_headi):
6090         option formatting, lilypond style.
6091
6092         * python/musicexp.py: grab from Ikebana: a library for composing
6093         ly music expressions. 
6094         (Output_printer): class for advanced .ly printing.
6095         (eg. tupletting) 
6096
6097         * python/musicxml.py: new file. Read MusicXML MiniDOM tree, and
6098         convert to pythonesque structure.
6099
6100         * python/rational.py: PD rational number class.
6101
6102         * Documentation/user/converters.itely (Invoking musicxml2ly):  new node.
6103
6104 2005-12-04  Erik Sandberg  <mandolaerik@gmail.com>
6105
6106         * lily/part-combine-iterator.cc: Minor bugfix
6107         
6108         * THANKS: Update bughunters
6109
6110 2005-12-02  Werner Lemberg  <wl@gnu.org>
6111
6112         * mf/README: Document process for proper mf2pt1 conversion.
6113
6114         * mf/feta-beugel.mf (draw_brace): Fix path to assure clean
6115         overlapping.
6116
6117         * mf/feta-harmonica.mf: Removed.  Unused.
6118
6119 2005-12-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6120
6121         * scripts/lilypond-book.py (do_file): fix thinkos.
6122
6123 2005-12-01  Jan Nieuwenhuizen  <janneke@gnu.org>
6124
6125         * lily/GNUmakefile ($(outdir)/FlexLexer.h):
6126         ($(outdir)/parser.cc): 
6127         ($(outdir)/lexer.cc): Bugfix: depend on config.h.
6128
6129 2005-11-30  Pedro Kröger  <kroeger@pedrokroeger.net>
6130
6131         * ly/titling-init.ly (tagline): it should be a space between
6132         "Music engraving by LilyPond" and the version number.
6133
6134 2005-12-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6135
6136         * VERSION (PACKAGE_NAME): release 2.7.20
6137
6138 2005-11-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6139
6140         * scm/define-markup-commands.scm (pad-to-box): new markup command.
6141
6142         * scm/define-grobs.scm (all-grob-descriptions): set thickness to
6143         1.0.
6144         (all-grob-descriptions): don't shift RehearsalMark arbitrarily.
6145
6146 2005-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6147
6148         * configure.in (LINK_GXX_STATICALLY): remove kpathsea checks.
6149
6150         * kpath-guile/: remove directory
6151
6152         * scm/kpathsea.scm (ly:kpathsea-expand-variable): new
6153         file. Encapsulate kpathsea using commandline tools.
6154
6155         * lily/all-font-metrics.cc (kpathsea_find_file): use (scm
6156         kpathsea) module.
6157
6158 2005-11-29  Mats Bengtsson  <mabe@s3.kth.se>
6159
6160         * Documentation/user/advanced-notation.itely (Setting automatic
6161         beam behavior): Correct a few typos. Thanks to David Bobroff.
6162
6163         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use
6164         \usepackage instead of \RequirePackage. Thanks to Bernard Hurley.
6165
6166 2005-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6167
6168         * scripts/*.py: gmane address for bugs.
6169
6170 2005-11-28 Pal Benko <benkop@freestart.hu>
6171         
6172         * make/ly-rules.make: add -f switch to mv
6173
6174         * scm/output-libs.scm: add new bar symbol "." for punctus divisionis
6175
6176         * lily/bar-line.cc: interpret it
6177
6178 2005-11-28  Jan Nieuwenhuizen  <janneke@gnu.org>
6179
6180         * configure.in (--disable-documentation): New switch.
6181
6182         * GNUmakefile.in: Use it.
6183
6184         * stepmake/aclocal.m4: Use AC_ARG_ENABLE for kpatsea.
6185
6186 2005-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6187
6188         * scripts/lilypond-book.py (do_file): search chunks for
6189         \\begin{document}
6190
6191         * GNUmakefile.in: add copy step in between so we can lose the
6192         out-www directories.
6193
6194 2005-11-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6195
6196         * lily/pango-font.cc (pango_item_string_stencil): put
6197         geometry.width into glyph-string too.
6198
6199 2005-11-26  Nicolas Sceaux  <nicolas.sceaux@free.fr>
6200
6201         * scm/define-music-display-methods.scm (RevertProperty):
6202         (OverrideProperty): Use grob-property-path property, a list of
6203         symbols, instead of grob-property, which used to be a single
6204         symbol.
6205         (BassFigureEvent): a figure can be a plain number, not necessarily a
6206         markup.
6207
6208 2005-11-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6209
6210         * VERSION: release 2.7.19
6211         
6212         * lily/figured-bass-engraver.cc (process_music): check
6213         figuredBassCenterContinuations first.
6214
6215         * scm/translation-functions.scm (format-bass-figure): make double
6216         sharp larger. 
6217
6218         * lily/mark-engraver.cc: read rehearsalMarkAlignSymbol to
6219         determine X-parent.
6220
6221         * lily/system-start-delimiter-engraver.cc: move from
6222         Nested_system_start_delimiter_engraver, rename
6223         Nested_system_start_delimiter_engraver ->
6224         System_start_delimiter_engraver.
6225
6226         * lily/nested-system-start-delimiter-engraver.cc (from_list): read
6227         bracket type from hierarchy.
6228
6229 2005-11-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6230
6231         * lily/rest.cc (y_offset_callback): read staff-position.
6232
6233         * scm/define-grob-properties.scm (all-user-grob-properties): don't
6234         mark after-line-breaking-callback as internal.
6235
6236         * lily/self-aligment-interface.cc: remove self-[XY]-offset.
6237
6238 2005-11-25  Werner Lemberg  <wl@gnu.org>
6239
6240         * mf/feta-banier.mf ("d3"): Make `flare' equal to `staff_space'.
6241
6242 2005-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6243
6244         * stepmake/bin/add-html-footer.py (do_file): add google
6245
6246         * lily/staff-symbol-engraver.cc (process_music): bugfix: stop
6247         staff if first_start_ is true.
6248
6249 2005-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6250
6251         * scripts/midi2ly.py (split_track): add __repr__ members.
6252         (track_first_item): only return Item if not None. This fixes a
6253         problem when dumping a track that starts with an empty channel.
6254
6255         * python/midi.c: doc module.
6256
6257 2005-11-22  Mats Bengtsson  <mabe@s3.kth.se>
6258
6259         * Documentation/user/global.itely (Creating MIDI files): Fix
6260         compilation problem.
6261
6262 2005-11-22  Graham Percival  <gpermus@gmail.com>
6263
6264         * Documentation/user/basic-notation.itely: clarify dynamic
6265         padding text.
6266
6267         * Documentation/user/advanced-notation.itely: add unicode
6268         escape control example, whatever that is.  :)
6269
6270         * Documentation/user/global.itely: added "removing dynamics
6271         from MIDI" code.
6272
6273 2005-11-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6274
6275         * VERSION (PATCH_LEVEL): release 2.7.18
6276
6277         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): replace
6278         System_start_delimiter_engraver by
6279         Nested_system_start_delimiter_engraver.
6280
6281         * lily/nested-system-start-delimiter-engraver.cc (struct
6282         Bracket_nesting_node): new class.
6283         (struct Bracket_nesting_group): new class
6284         (struct Bracket_nesting_staff): new class.
6285         (process_music): create hierarchy of grobs. This allows separate
6286         tuning of different SSDs. 
6287
6288         * scm/define-grobs.scm (all-grob-descriptions): new Grob SystemStartSquare
6289         (all-grob-descriptions): remove old NestedSystemStartDelimiter.
6290
6291 2005-11-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6292
6293         * lily/side-position-interface.cc (aligned_side): multiply
6294         staff_radius by 2.
6295
6296         * lily/script-engraver.cc (make_script_from_event): allow setting
6297         values to '()
6298
6299 2005-11-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6300
6301         * lily/system-start-delimiter.cc (line_bracket): don't shorten height.
6302
6303         * scm/define-grobs.scm (all-grob-descriptions): new grob
6304         NestedSystemStartDelimiter.
6305
6306         * input/regression/system-start-heavy-bar.ly: new file.
6307
6308         * lily/nested-system-start-delimiter-engraver.cc: new file.
6309
6310         * lily/nested-system-start-delimiter.cc: new file.
6311
6312         * input/regression/system-start-nesting.ly: new file.
6313
6314         * scm/define-grobs.scm (all-grob-descriptions): use X side
6315         positioning for positioning braces for nested contexts.
6316
6317         * lily/system-start-delimiter.cc (print): don't divide extent by
6318         staff_space.
6319         (print): use style iso. glyph.
6320         (staff_bracket): translate glyph inside routine already.
6321
6322 2005-11-18  Michael Welsh Duggan <md5i@cs.cmu.edu>
6323
6324         * lily/vaticana-ligature-engraver.cc: fixed 2 typos in glyph
6325         names.
6326
6327 2005-11-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6328
6329         * scm/define-context-properties.scm
6330         (all-user-translation-properties): rename figuredBassFormatter
6331         from newFiguredBassFormatter.
6332
6333         * scm/define-grobs.scm (all-grob-descriptions): move from NewBassFigure
6334
6335         * lily/figured-bass-engraver.cc: move from new-figured-bass-engraver.cc
6336
6337         * lily/stem.cc (calc_stem_info): trigger beaming calculation.
6338
6339         * lily/beam.cc (calc_beaming): new function.
6340         (calc_shorten): new function.
6341
6342         * THANKS: add Edward Neeman.
6343
6344         * input/regression/accidental-clef-change.ly: new file.
6345
6346         * lily/note-collision.cc (check_meshing_chords): don't merge fa heads.
6347
6348         * scm/define-grobs.scm (all-grob-descriptions): add Y-offset property.
6349
6350         * lily/clef-engraver.cc (inspect_clef_properties): reset
6351         localKeySignature for clef changes.
6352
6353 2005-11-17  Mats Bengtsson  <mabe@s3.kth.se>
6354
6355         * python/midi.c: PyMIDINIT_FUNC isn't defined in Python < 2.3 
6356         add dummy definition that works in Linux and add information in
6357         INSTALL.texi on the specific Python requirements for Cygwin/Mingw.
6358
6359         * Documentation/user/changing-defaults.itely (Modifying context
6360         plug-ins): Add index for \with.
6361
6362         * Documentation/user/music-glossary.tely (dal segno): Updated
6363         example to version >=2.6.
6364
6365 2005-11-16  Mats Bengtsson  <mabe@s3.kth.se>
6366
6367         * Documentation/user/instrument-notation.itely (Printing chord
6368         names): Reorder \chordmode and \repeat in one example.
6369
6370 2005-11-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6371
6372         * VERSION: release 2.7.17
6373         
6374         * Documentation/topdocs/NEWS.tely (Top): add note about
6375         refactoring.
6376
6377         * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
6378         new function. Search region of 3 positions for best tie.
6379         (score_configuration): new function.
6380         (score_aptitude): new function.
6381         (generate_configuration): new function.
6382         (get_configuration): new function.
6383         (Tie_formatting_problem): new function
6384
6385         * input/regression/page-top-space.ly: a6 for page-top-space demo. 
6386
6387         * stepmake/aclocal.m4: use $(if ) for config-FOOF.make
6388
6389         * THANKS: add Eduardo Vieira & Ralph Little
6390
6391         * mf/feta-bolletjes.mf (solfa_quarter_width): make solfa heads
6392         narrower.
6393
6394         * lily/include/tie-formatting-problem.hh (class
6395         Tie_formatting_problem): add Tie_details to
6396         Tie_formatting_problem. Update calling conventions.
6397
6398         * stepmake/aclocal.m4: oops. Include $CONFIGFILE.make, not
6399         config.make.
6400
6401         * Documentation/user/lilypond.tely: remove musedata2ly entry.
6402
6403 2005-11-16  Jürgen Reuter  <reuter@ipd.uka.de>
6404
6405         * lily/ligature-engraver.cc, lily/include/ligature-engraver.hh,
6406         scm/define-context-properties.scm: Maintenance bugfix: make
6407         ligature brackets work again by removing obsolete ligature
6408         primitive callback push/pop.
6409
6410         * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: do
6411         not call Tuplet_bracket::calc_direction.  Removed obsolete gap
6412         value.
6413
6414 2005-11-15  Jan Nieuwenhuizen  <janneke@gnu.org>
6415
6416         * stepmake/aclocal.m4 (depth): Explain why absolute directory is
6417         used and do not call it a path.
6418         (FLEXLEXER_FILE): Rename from FLEXLEXER_PATH and add file name.
6419
6420 2005-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6421
6422         * lily/include/tie-formatting-problem.hh (class
6423         Tie_formatting_problem): new file.
6424
6425         * lily/tie-formatting-problem.cc (common_x_refpoint): new file.
6426
6427         * Documentation/misc/ChangeLog-2.3:  new file.
6428
6429         * lily/audio-staff.cc (output): degarianize.
6430
6431 2005-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
6432
6433         * stepmake/stepmake/python-module-rules.make ($(outdir)/%.pyc):
6434         Unset PYTHONOPTIMIZE.  Fixes install if set.
6435
6436 2005-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6437
6438         * python/convertrules.py (conv): add warning about drums. 
6439
6440         * make/stepmake.make: include toplevel-version.make after config.make.
6441
6442         * stepmake/aclocal.m4 (depth): make sure $srcdir is absolute.
6443         also allow python2.4
6444
6445         * config.make.in (configure-srcdir): remove GXX GCC vars.
6446
6447         * stepmake/aclocal.m4: don't do non-srcdir build with
6448         symlinks. Use inclusion, so the src directory name can be changed.
6449
6450 2005-11-13  Jan Nieuwenhuizen  <janneke@gnu.org>
6451
6452         * make/mutopia-vars.make:
6453         * make/ly-vars.make: Use src-wildcard iso wildcard for source
6454         files.
6455
6456 2005-11-13  Werner Lemberg  <wl@gnu.org>
6457
6458         * mf/feta-arrow.mf: For all glyphs, don't mirror `currentpicture'
6459         but the affected path.  This ensures that the (overlapping) outlines
6460         have the same direction, which is a necessary prerequisite for
6461         FontForge's algorithm to remove overlaps.
6462         Formatting.
6463
6464         * mf/feta-haak.mf: Formatting.
6465         (draw_bracket): Slightly modify outline to avoid an unnecessary
6466         corner.
6467         Don't use ad-hoc values for `leave_angle' and `tip_angle' but derive
6468         them from the affected paths.
6469
6470 2005-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6471
6472         * mf/README: remove xpm / accordion notes.
6473
6474         * lily/tie-column-format.cc (set_chord_outline): add dots into
6475         skyline extents. This fixes tie formatting if the left head has dots.
6476
6477         * lily/tie.cc (get_configuration): only shift tie by a whole staff
6478         space inside the staff.
6479         (get_configuration): shift another position if necessary in case
6480         of left head tie  
6481
6482 2005-11-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6483
6484         * stepmake/stepmake/texinfo-vars.make (GENERATE_OMF): use
6485         buildscript-dir iso. $(depth)/buildscripts.
6486
6487         * tex/GNUmakefile (local-uninstall): remove
6488         music-drawing-routines.ps juggling.
6489
6490         * stepmake/stepmake/install-targets.make (local-install-files):
6491         prepend src-dir to install targets.
6492
6493         * lily/system-start-delimiter-engraver.cc
6494         (acknowledge_system_start_delimiter): use
6495         add_offset_callback(). This fixes translation of nested
6496         staffgroups.
6497
6498         * lily/grob-closure.cc (add_offset_callback): only encaps in
6499         simple_closure if it's a procedure.
6500         
6501         * lily/span-bar.cc (calc_glyph_name): read glyph-name, not glyph
6502         from bar-line.
6503
6504         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
6505         remove-empty where pertinent.
6506
6507 2005-11-12  Graham Percival  <gpermus@gmail.com>
6508
6509         * Documentation/user/instrument-notation.itely: added
6510         Cameron Horsburgh's multiple stanzas docs.  Thanks!
6511
6512 2005-11-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6513
6514         * lily/GNUmakefile
6515         ($(top-build-dir)/Documentation/pictures/$(outbase)/lilypond.ico):
6516         make picture in builddir, not srcdir.
6517
6518 2005-11-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6519
6520         * VERSION: release 2.7.16
6521         
6522         * scripts/lilypond-book.py (main): use commands.mkarg () to quote
6523         shell arguments. 
6524
6525 2005-11-10  Mats Bengtsson  <mabe@s3.kth.se>
6526
6527         * Documentation/user/examples.itely (Piano templates): Minor
6528         modification to the Piano centered lyrics example.
6529
6530 2005-11-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6531
6532         * scripts/lilypond-invoke-editor.scm (run-browser): look at
6533         $BROWSER.
6534
6535         * Documentation/user/point-and-click.itely: simplify p&c
6536         instruction: don't configure firefox. Put lilypond-invoke-editor
6537         in front of the browser.
6538
6539         * scripts/lilypond-invoke-editor.scm (run-editor): new function.
6540         (run-browser): new function.
6541
6542         * lily/parser.yy (Lily_lexer): recognize Book
6543
6544         * lily/book.cc (clone): new function
6545
6546         * lily/parser.yy (book_body): allow BOOK_IDENTIFIER.
6547
6548 2005-11-10  Jürgen Reuter  <reuter@ipd.uka.de>
6549
6550         * lily/vaticana-ligature.cc, lily/vaticana-ligature-engraver.cc:
6551         Maintenance bugfix: reduce number of font related warnings by
6552         updating naming conventions for glyph-name.
6553
6554 2005-11-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6555
6556         * scm/define-grobs.scm (all-grob-descriptions): add
6557         rhythmic-grob-interface to TabNoteHead.
6558
6559         * scm/layout-beam.scm (check-quant-callbacks): remove
6560         set_stem_lengths()
6561
6562 2005-11-08  Jürgen Reuter  <reuter@ipd.uka.de>
6563
6564         * ly/gregorian-init.ly (divisiones): Maintenance bugfix: vertical
6565         alignment of centered divisiones.
6566
6567         * scm/scripts.scm (articulations): Maintenance bugfix:
6568         follow-into-staff -> quantize-position.
6569
6570         * lily/vaticana-ligature-engraver.cc (transform_heads): Bugfix:
6571         plica head in porrectus deminutus.
6572
6573 2005-11-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6574
6575         * make/lilypond.fedora.spec.in (Group): add %clean section.
6576
6577         * lily/tuplet-bracket.cc (print): change check: remove bracket if
6578         less then 1/5th of total length.  
6579         (print): use gap too.  Fixes tupletUp-single-bracket.ly
6580
6581         * scm/music-functions.scm (glue-mm-rest-texts): also put other
6582         events into EventChord. This fixes textspanners on mm rests. Fixes
6583         spanner-rest.ly
6584
6585         * lily/side-position-interface.cc (get_axis): read side-axis
6586         (set_axis): set side-axis.
6587
6588         * scm/define-grobs.scm (all-grob-descriptions): add side-axis
6589         properties everywhere.
6590
6591         * lily/spacing-spanner.cc (breakable_column_spacing): add
6592         average-spacing-wishes. Take maximum if not set.
6593         (musical_column_spacing): idem. Fixes: spacing-keysig-note.ly
6594
6595         * scm/define-grobs.scm (all-grob-descriptions): add
6596         average-spacing-wishes.
6597
6598         * lily/grob-closure.cc (add_offset_callback): bugfix: properly add
6599         offset callbacks. This fixes alignment for Fingering objects.
6600
6601         * scm/define-grobs.scm (all-grob-descriptions): tiny bit less
6602         space for key - timesig combination. 
6603
6604         * input/regression/script-stem-tremolo.ly (Module): new file.
6605
6606         * scm/define-grobs.scm (all-grob-descriptions): decrease distance
6607         to key sig.
6608
6609         * lily/dynamic-engraver.cc (acknowledge_stem_tremolo): new function.
6610         Fixes: c-tremolo-script.ly.
6611         
6612         * lily/text-engraver.cc (acknowledge_stem_tremolo): new function.
6613
6614         * lily/script-engraver.cc (acknowledge_stem_tremolo): new function.
6615         
6616         * scm/define-grobs.scm (all-grob-descriptions): remove
6617         self-X-offset. Fixes alignment of octavate-8.
6618
6619         * scripts/lilypond-book.py (datadir): look in
6620         LILYPONDPREFIX/share/lilypond/current/
6621
6622         * GNUmakefile.in: symlink current to <VERSION>. 
6623
6624 2005-11-07  Pedro Kroger  <kroeger@pedrokroeger.net>
6625
6626         * lily/main.cc: eps listed as a backend.
6627
6628 2005-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6629
6630         * scm/lily-library.scm (print-music-as-book): quote $defaultpaper.
6631
6632 2005-11-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6633
6634         * lily/include/score.hh (class Score): remove texts_ member.
6635
6636         * lily/beam.cc (set_stem_lengths): force direction callback.
6637         (print): read quantized-positions, so we can force
6638         Beam::set_stem_lengths to occur.
6639         (rest_collision_callback): use common X parent. 
6640
6641 2005-11-03  Jan Nieuwenhuizen  <janneke@gnu.org>
6642
6643         * flower/file-path.cc (find): Bugfix: Return name of file found.
6644
6645         * lily/main.cc (setup_paths): Bugfix for argv0 logic.
6646         (setup_paths)[__CYGWIN__ || __MINGW32__]: Normalize argv0.
6647         (setup_paths)[__MINGW32__]: Also look for argv0 + .exe.
6648
6649 2005-11-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6650
6651         * flower/offset.cc: idem.
6652
6653         * mf/*.mf: update email address.
6654
6655         * lily/font-config-scheme.cc:  new file.
6656
6657         * GNUmakefile.in (SUBDIRS): remove debian/ directory.
6658
6659         * lily/*:  cs.uu.nl -> xs4all.nl
6660
6661         * VERSION (PATCH_LEVEL): release 2.7.15
6662
6663         * make/lilypond.mandrake.spec.in (Module): remove Mandrake & Suse
6664         spec files.
6665
6666         * make/lilypond.fedora.spec.in: add %{libdir}/lilypond/
6667
6668 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6669
6670         * GNUmakefile.in: bugfix: encapsulate mkdir && cd in parens.   
6671
6672         * lily/staff-performer.cc (process_music): add audio
6673         elements. This makes MIDI instrument changes work once again.
6674
6675         * lily/main.cc (LY_DEFINE): add gmane address.
6676
6677         * lily/beam.cc: remove calc_positions()
6678
6679         * lily/include/grob.hh (class Grob): move pscore, dim_cache_,
6680         original_ in private scope.
6681         (class Grob): drop pscore_ pointer, change to output_def pointer.
6682         (class Grob): cleanup class definition.
6683
6684         * ly/spanners-init.ly (assertBeamQuant): use make-simple-closure.
6685
6686 2005-11-02  Jan Nieuwenhuizen  <janneke@gnu.org>
6687
6688         * lily/main.cc (setup_paths)[__MINGW32__]: Do not assume argv0 is
6689         absolute.  Better diagnostics.
6690
6691         * GNUmakefile.in: Add bin/ to tree and populate with some links.
6692         This makes lilypond run from the build directory using argv0
6693         relocation (without any --prefix or LILYPONDPREFIX setting).
6694
6695 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6696
6697         * Documentation/topdocs/NEWS.tely (Top): document new backend design.
6698
6699         * scm/define-grobs.scm: purge self-[XY]-offset variables, replace
6700         with simple-closure.
6701
6702         * lily/self-aligment-interface.cc (set_align_self): new function
6703         (set_center_parent): new function.
6704
6705         * lily/side-position-interface.cc (set_axis): new function.
6706
6707         * lily/new-fingering-engraver.cc (position_scripts): use drul for
6708         generic code. 
6709
6710         * scm/define-grob-properties.scm (all-user-grob-properties):
6711         remove [XY]-offset-callbacks add [YX]-offset
6712         
6713 2005-11-02  Mats Bengtsson  <mabe@s3.kth.se>
6714
6715         * scm/define-grobs.scm (all-grob-descriptions): Added space-alist
6716         entry for time signatures after breathing signs. Bug report by
6717         Scott Russell.
6718
6719 2005-11-01  Jan Nieuwenhuizen  <janneke@gnu.org>
6720
6721         * lily/main.cc (setup_paths)[!__MINGW32__]: Bugfix: if argv0 is
6722         not absolute, make it absolute using PATH.
6723
6724 2005-10-28  Jan Nieuwenhuizen  <janneke@gnu.org>
6725
6726         * python/midi.c (initmidi): Fix type for mingw.
6727
6728 2005-10-27  Jan Nieuwenhuizen  <janneke@gnu.org>
6729
6730         * stepmake/stepmake/compile-vars.make (SHARED_FLAGS): Support mingw.
6731
6732         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Detect mingw
6733         cross compiling.
6734
6735         * stepmake/aclocal.m4: Support python cross compiling.
6736
6737         * stepmake/stepmake/python-module-vars.make (SHARED_MODULE_SUFFIX):
6738         Add mingw section.
6739
6740 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6741
6742         * scm/output-lib.scm (chain-grob-member-functions): replace
6743         chained-callback.cc
6744
6745         * lily/chained-callback.cc (Module): remove file.
6746
6747         * lily/rest-collision.cc (force_shift_callback_rest): change to
6748         chained callback.
6749
6750         * lily/rest.cc (y_offset_callback): merge function of 3 callbacks. 
6751
6752         * lily/grob.cc (y_parent_positioning): remove axis argument from
6753         parent_positioning callbacks.
6754         (Grob): junk init code
6755         (get_offset): use generic property callbacks for
6756         X-offset, Y-offset. Remove Grob::{add,has}_offset_callback.
6757         (axis_parent_positioning): new function
6758         (axis_offset_symbol): new function
6759         (chain_offset_callback): new function
6760         (add_offset_callback): new function
6761
6762         * lily/beam.cc (rest_collision_callback): change signature; this
6763         is now a chained callback.
6764
6765         * lily/include/dimension-cache.hh (class Dimension_cache): remove
6766         callback administration.
6767
6768         * lily/simple-closure.cc: new file. Smob type that allows "grob
6769         member functions",
6770
6771             (ly:make-simple-closure FUNC A B)
6772
6773         is evaluated as (FUNC grob A B). This allows chaining of callbacks
6774         in various ways.
6775
6776         * lily/slur-engraver.cc (acknowledge_extra_object): use chained
6777         callbacks.
6778
6779         * lily/slur.cc (outside_slur_callback): take 2 arguments.
6780
6781         * lily/rest.cc (polyphonic_offset_callback): remove.
6782
6783         * lily/script-engraver.cc (try_music): remove bool* argument.
6784
6785         * scm/script.scm (default-script-alist): set quantize-position
6786         appropriately.
6787
6788         * lily/script-engraver.cc: remove follow_into_staff_ special coding. 
6789
6790         * lily/side-position-interface.cc (aligned_side): move staff
6791         position quantization from
6792         Side_position_interface::quantised_position().
6793         (quantised_position): remove
6794         
6795 2005-10-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6796
6797         * input/regression/beam-quant-standard.ly: reindent, set
6798         debug-beam-quanting to #t.
6799
6800         * lily/beam-concave.cc (calc_concaveness): set concaveness to
6801         10000 if this is a "hard" concave beam.
6802
6803         * lily/beam.cc (calc_least_squares_positions): change from
6804         calc_least_squares_dy
6805         (set_stem_lengths): this is now a chained callback.
6806
6807         * lily/context-property.cc (execute_general_pushpop_property):
6808         bugfix override with procedure should have effect.
6809
6810         * scm/define-grob-properties.scm (all-internal-grob-properties):
6811         remove position-callbacks.
6812
6813         * scm/define-grobs.scm (all-grob-descriptions): use
6814         ly:make-callback-chain for positions property.
6815
6816         * scm/layout-beam.scm (check-quant-callbacks): return list of
6817         chained callbacks.
6818
6819         * scm/lily.scm (type-p-name-alist): add callback-chain
6820
6821         * lily/lily-guile.cc (type_check_assignment): type check failure
6822         is warning not message.
6823
6824         * lily/grob-property.cc (try_callback): walk callback chain if
6825         appropriate.
6826
6827         * lily/chained-callback.cc: new file. new smob type.
6828
6829         * lily/lily-guile.cc (procedure_arity): new function.
6830
6831 2005-10-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6832
6833         * Documentation/topdocs/INSTALL.texi (Top): add perl flex bison.
6834
6835 2005-10-25  John Mandereau  <john.mandereau@free.fr>
6836  
6837         * Documentation/user/instrument-notation.itely (Figured bass):
6838         describe new features
6839
6840 2005-10-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6841
6842         * lily/beam.cc (calc_least_squares_dy): use property callback.
6843
6844         * lily/beam-concave.cc (calc_concaveness): use property callback.
6845
6846         * ly/paper-defaults.ly: move fixed dimensions from paper.scm 
6847
6848 2005-10-25  Jan Nieuwenhuizen  <janneke@gnu.org>
6849
6850         * HACKING: Update.
6851
6852 2005-10-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6853
6854         * scm/layout-page-layout.scm (page-headfoot): annotate
6855         pagetopspace too.
6856
6857         * scm/stencil.scm (dimension-arrows): shorten arrowed lines a bit. 
6858
6859         * scm/layout-page-layout.scm (annotate-y-interval): y-annotation
6860         doesn't take y-space.
6861
6862         * scm/paper.scm (paper-alist): fix A7 dimensions. 
6863
6864 2005-10-24  Jan Nieuwenhuizen  <janneke@gnu.org>
6865
6866         * stepmake/stepmake/generic-vars.make (DIST_FILES): Fix
6867         src-wildcard, remove $(wildcard).
6868
6869         * po/GNUmakefile (PO_FILES): 
6870         * ps/GNUmakefile (PS_FILES): 
6871         * tex/GNUmakefile (TEX_FILES): 
6872         * cygwin/GNUmakefile (POSTINSTALLS):
6873         * vim/GNUmakefile (EXTRA_DIST_FILES): Bugfix: [etags sr?] missed
6874         some wildcard calls.
6875
6876 2005-10-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6877
6878         * THANKS: add Thomas Bushnell.
6879
6880 2005-10-23  Jan Nieuwenhuizen  <janneke@gnu.org>
6881
6882         * scm/lily.scm: Remove horrendous running-from-gui? kludge.
6883         (lilypond-main): Redirect to gui-main if 'gui is set.
6884
6885         * scripts/midi2ly.py (datadir): Add libdir iso datadir to path,
6886         for alternative installations kludging s/share/lib/g
6887         LILYPONDPREFIX. 
6888
6889         * SConstruct (libdir_package_version): Define.
6890
6891         * python/SConscript: 
6892         * python/GNUmakefile (INSTALLATION_OUT_DIR): Install binary .so
6893         module in libdir.  
6894
6895 2005-10-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6896
6897         * lily/main.cc: clarify --safe.
6898
6899 2005-10-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6900
6901         * VERSION: release 2.7.14
6902         
6903         * Documentation/user/*.itely: remove minimumVerticalExtent.
6904
6905         * scm/define-grobs.scm (all-grob-descriptions): remove
6906         RemoveEmptyVerticalGroup
6907
6908         * lily/hara-kiri-engraver.cc (get_spanner): create VerticalAxisGroup.
6909
6910         * lily/include/lily-guile.hh (GUILE_ELLIPSIS): define to get clean
6911         compile on MOSX
6912
6913         * python/convertrules.py (conv): add rules.
6914
6915         * lily/grob.cc: remove is_empty()
6916
6917         * lily/grob-property.cc: remove add_to_list_property().
6918
6919         * scripts/convert-ly.py (datadir): add prefix switching hack to
6920         .py too.
6921
6922         * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily (cresc): remove
6923         space-function tweak.
6924
6925         * lily/grob.cc: remove X-extent-callback / Y-extent-callback.
6926
6927         * scm/define-grob-properties.scm (all-user-grob-properties):
6928         remove callback property.
6929
6930         * lily/include/grob.hh (class Grob): remove property_callbacks_
6931         member. Properties of procedure type are assumed to be callbacks.
6932
6933         * lily/ligature-engraver.cc (override_stencil_callback):
6934         rewrite. Use noteHeadLigaturePrimitive as source.
6935
6936         * scm/define-grob-properties.scm (all-internal-grob-properties):
6937         remove ligature-primitive-callback
6938
6939         * lily/include/dimension-cache.hh (class Dimension_cache): make
6940         class, with Grob as friend.
6941
6942         * lily/grob.cc: remove set_extent_callback(), set_extent() and
6943         has_extent_callback()
6944
6945         * scm/translation-functions.scm (format-new-bass-figure): read
6946         figuredBassPlusDirection
6947
6948         * scm/define-context-properties.scm
6949         (all-user-translation-properties): add figuredBassPlusDirection.
6950
6951         * lily/staff-spacing.cc (next_notes_correction): oops. Init wishes.
6952
6953         * lily/align-interface.cc (set_ordered): new function.
6954
6955         * lily/grob.cc (flush_extent_cache): rewrite.
6956
6957         * lily/dimension-cache.cc (Dimension_cache): cache extent as
6958         Interval pointer directly.
6959
6960         * lily/main.cc (setup_paths): insert extra / .
6961         (setup_paths): junk cff entry.
6962
6963         * lily/font-config.cc (init_fontconfig): only add type1 / otf
6964         directories.
6965
6966         * lily/axis-group-engraver.cc (finalize): remove
6967         extraVerticalExtent, minimumVerticalExtent verticalExtent.
6968
6969         * lily/grob.cc (Grob): don't set extent from ctor.
6970         (extent): use property callbacks. 
6971
6972         * lily/axis-group-interface.cc: remove set_axes() function.
6973
6974         * lily/grob-property.cc (del_property): new function.
6975
6976 2005-10-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6977
6978         * lily/font-config.cc (init_fontconfig): resurrect mf/out/ check.
6979         
6980 2005-10-20  Jan Nieuwenhuizen  <janneke@gnu.org>
6981
6982         * stepmake/stepmake/script-vars.make (PYTHON_SCRIPTS_IN): Oops.  Add.
6983
6984 2005-10-19  Jan Nieuwenhuizen  <janneke@gnu.org>
6985
6986         * mf/SConscript: Updates.
6987
6988         * lily/GNUmakefile (OUT_DIST_FILES): Bugfix.
6989
6990         * stepmake/stepmake/*:
6991         * */GNUmakefile:
6992         * config.make.in:
6993         * GNUmakefile.in:
6994         * stepmake/aclocal.m4: Friendlier --srcdir build, allowing `make'
6995         from any directory in build-dir.  Cleanups.
6996
6997         * make/srcdir.make.in: Remove.
6998
6999         * lily/main.cc (setup_paths): Fix and document build-dir hack.
7000
7001         * SConstruct (CheckYYCurrentBuffer): Use TryCompile (there is no
7002         main).
7003
7004         * lily/SConscript: Remove ttftools.
7005
7006         * SConstruct: Resurrect.
7007
7008 2005-10-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7009
7010         * lily/tuplet-bracket.cc (print): use dy iso. positions[RIGHT] for
7011         Y coordinate. 
7012
7013         * lily/paper-book.cc (add_score_title): put Paper_score title into
7014         systems_ list.
7015
7016         * scm/translation-functions.scm (format-new-bass-figure): also
7017         allow plus in combination with _
7018
7019 2005-10-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7020
7021         * VERSION: 2.7.13 released.
7022
7023         * lily/note-collision.cc (check_meshing_chords): don't wipe
7024         stencil, merely set transparent.
7025
7026         * Documentation/topdocs/NEWS.tely (Top): mention John Mandereau. 
7027         (Top): document #'callbacks.
7028         (Top): document nested \override.
7029
7030         * input/regression/figured-bass.ly: update for slash and pluses.
7031
7032         * input/regression/figured-bass-continuation-forbid.ly (Module):
7033         new file.
7034
7035         * scm/translation-functions.scm (format-new-bass-figure): use
7036         slashed-digit if diminished is set.
7037         (format-new-bass-figure): add + if 'augmented is set.
7038
7039         * scm/define-markup-commands.scm (slashed-digit): new command slashed-digit.
7040
7041         * input/test/piano-staff-distance.ly: remove file.
7042
7043         * Documentation/user/advanced-notation.itely (Formatting cue
7044         notes): use length-fraction for making stems/beams smaller.
7045
7046         * lily/parser.yy (bass_figure): accept \+ \! and / as figured bass
7047         modifications.
7048
7049         * lily/new-figured-bass-engraver.cc: new property
7050         centerFiguredBassContinuations
7051
7052         * Documentation/user/changing-defaults.itely (Difficult tweaks):
7053         use callbacks.
7054
7055         * lily/context-property.cc (execute_general_pushpop_property):
7056         robustness checks.
7057
7058         * input/regression/override-nest.ly: new file.
7059
7060         * python/convertrules.py (FatalConversionError.subber): conversion
7061         rule for #'callbacks
7062
7063         * input/regression/override-nest.ly: new function.
7064
7065         * lily/parser.yy (music_property_def): allow \override #'a #'b =
7066         #c too. 
7067
7068         * lily/context-property.cc (lookup_nested_property): new function.
7069         (evict_from_alist): new function.
7070         (general_pushpop_property): new function.
7071         (execute_general_pushpop_property): rewrite. Support nested
7072         properties too.
7073
7074 2005-10-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7075
7076         * lily/beam.cc: use length-fraction too.
7077
7078         * scm/define-grob-properties.scm (all-user-grob-properties):
7079         remove property flag-width-function
7080         (all-user-grob-properties): remove space-function.
7081
7082         * scm/layout-beam.scm: remove flag-width-function.
7083
7084         * lily/beam.cc: remove flag-width-function
7085
7086         * scm/layout-beam.scm: remove beam dir functions.
7087
7088         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): use length-fraction.
7089
7090         * lily/stem.cc (calc_length): multiply with length_fraction. Makes
7091         for easier grace tweaks.
7092
7093         * lily/beam.cc: remove dir-function.
7094
7095         * lily/system.cc (pre_processing): use callback to trigger spacing procedures.
7096
7097         * lily/grob.cc: remove spacing-procedure.
7098
7099         * lily/note-head.cc (calc_stem_attachment): new function.
7100         (internal_print): use callback to get glyph-name.
7101
7102         * lily/grob-property.cc (get_interfaces): new function.
7103
7104         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-interfaces
7105
7106         * lily/stem.cc (calc_stem_end_position): new function.
7107         (calc_length): new function.
7108         document details for stem.
7109         remove Stem::get_direction()
7110
7111         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-set-callback! 
7112
7113         * lily/grob-property.cc (set_callback): new function.
7114
7115         * lily/script-engraver.cc (make_script_from_event): don't trigger callback.
7116
7117         * lily/item-scheme.cc: new file.
7118
7119         * lily/bar-line.cc (before_line_breaking): remove function.
7120         remove bar-size-procedure, break-glyph-function
7121
7122         * lily/clef-engraver.cc (set_glyph): use glyph iso. glyph-name
7123
7124         * lily/clef.cc (before_line_breaking): change to calc_glyph_name.
7125
7126         * lily/system-start-delimiter.cc (print): suicide from
7127         here. Remove after_line_breaking_callback.
7128
7129         * lily/script-interface.cc (calc_direction): use callback for direction.
7130
7131         * lily/side-position-interface.cc (aligned_side): don't use
7132         Side_position_interface::get_direction directly. Use callback. 
7133
7134         * lily/grob.cc (get_stencil): simplify: use callback mechanism to
7135         calculate stencil.
7136         (get_print_stencil): rename from get_stencil: create stencil with
7137         transparency, color and cause. 
7138
7139         * scm/define-grobs.scm: change print-function to stencil callback everywhere.
7140
7141         * python/convertrules.py (conv): insert temporary warning rule.
7142
7143         * lily/multi-measure-rest.cc (set_text_rods): use stencil directly.
7144
7145         * lily/grob-property.cc (try_callback): remove marker if applicable.
7146
7147         * lily/grob.cc: elucidate doc about after/before-line-breaking
7148
7149         * lily/slur-scoring.cc (enumerate_attachments): robustness fix.
7150
7151         * lily/stem.cc (height): idem.
7152
7153         * lily/stem-tremolo.cc: idem.
7154
7155         * lily/slur.cc (height): don't use get_uncached_stencil()
7156
7157         * lily/rest.cc (y_offset_callback): use offset callback
7158         iso. after-line-breaking callback.
7159
7160         * lily/grob.cc: change after/before-line-breaking-callback to
7161         after/before-line-breaking dummy properties.
7162
7163         * lily/include/grob.hh: remove Grob_status.
7164
7165         * scm/define-context-properties.scm
7166         (all-user-translation-properties): remove verticalAlignmentChildCallback
7167
7168         * lily/tuplet-bracket.cc: use positions property iso. left,right-position.
7169         (calc_direction): use callback
7170         (calc_positions): use callback.
7171
7172         * lily/tie.cc (calc_direction): use callback. Only call parent
7173         positioning for more than one tie.
7174
7175         * lily/tie-column.cc (calc_positioning_done): use callback
7176
7177         * lily/slur-scoring.cc (calc_control_points): use callback
7178
7179         * lily/slur.cc (calc_direction): use callback.
7180
7181         * lily/note-collision.cc (force_shift_callback): remove.
7182
7183         * lily/dot-column.cc (force_shift_callback): remove. Use
7184         other_axis_parent_positioning.
7185
7186         * lily/grob.cc (other_axis_parent_positioning): new function.
7187         (same_axis_parent_positioning): new function
7188
7189         * lily/align-interface.cc (alignment_callback): remove function.
7190
7191         * lily/note-collision.cc (calc_positioning_done): use callback.
7192
7193         * lily/laissez-vibrer-tie.cc (calc_control_points): use callback.
7194         (calc_direction): idem.
7195         remove print function.
7196
7197         * lily/laissez-vibrer-tie-column.cc (calc_positioning_done): use callback.
7198
7199         * lily/dot-column.cc (calc_positioning_done): use callback.
7200
7201         * lily/break-align-interface.cc (calc_positioning_done): use callback.
7202
7203         * lily/beam.cc (calc_direction): use pseudo-property for beam
7204         direction callback.
7205         (calc_positions): use callback 
7206
7207         * lily/align-interface.cc (calc_positioning_done): use
7208         callback. Fold fixed  distance and normal alignment in one function.
7209
7210         * lily/stem.cc (calc_stem_end_position): use callback.
7211         (calc_positioning_done): idem.
7212         (calc_direction): idem.
7213         (calc_stem_end_position): idem
7214         (calc_stem_info): idem.
7215
7216         * lily/grob-property.cc (get_property_data): new function: 
7217         (try_callback): new function.
7218
7219         * scm/define-grob-properties.scm (all-user-grob-properties): doc
7220         callbacks property.
7221
7222         * lily/break-align-interface.cc: remove Break_align_interface::alignment_callback.
7223
7224 2005-10-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7225
7226         * lily/tie.cc (get_position): robustness fix. Don't crash if a
7227         tie
7228         has no heads.
7229         
7230         * lily/include/*.hh (Module): compile fixes.
7231
7232 2005-10-14  Heikki Junes <hjunes@cc.hut.fi>
7233
7234         * elisp/lilypond-font-lock.el, elisp/lilypond-indent.el: Avoid nil 
7235         as an argument for char-syntax: use (char-syntax (or nil 0)) 
7236         instead of (char-syntax nil), thanks to Milan Zamazal.
7237
7238 2005-10-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7239
7240         * make/lilypond.fedora.spec.in (Group): add lilypond-internals to
7241         dist.
7242
7243         * lily/tuplet-bracket.cc: check columns of bounds, not bounds
7244         themselves.
7245
7246 2005-10-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7247
7248         * flower/include/virtual-methods.hh (VIRTUAL_COPY_CONSTRUCTOR):
7249         add class_name() method.
7250
7251         * lily/music-scheme.cc: remove ly:music-name.
7252
7253 2005-10-11  Jan Nieuwenhuizen  <janneke@gnu.org>
7254
7255         * cygwin/postinstall-lilypond.sh: Remove cruft.
7256
7257         * cygwin/postremove-lilypond.sh: Remove.
7258
7259         * cygwin/GNUmakefile (default): Remove postremove rules.
7260
7261 2005-10-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7262
7263         * ly/titling-init.ly (evenHeaderMarkup): use space in header on
7264         even header too.
7265         
7266         * scm/define-markup-commands.scm (wordwrap-string): bugfix for
7267         MacOS 9 users.
7268
7269         * lily/hara-kiri-group-spanner.cc (consider_suicide): only
7270         consider break index for broken spanner.
7271
7272         * scm/define-markup-commands.scm (wordwrap-string): remove \r
7273         characters from string before splitting.
7274
7275 2005-10-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7276
7277         * scm/framework-ps.scm (output-preview-framework): use
7278         is-book-title to determine whether to chop off the booktitle.
7279
7280         * lily/paper-book.cc (systems): init from book-title-properties
7281         (add_score_title): init score-title-properties.
7282
7283         * ly/paper-defaults.ly: add {score,book}-title-properties.
7284
7285         * scm/document-backend.scm (lookup-interface): error message if
7286         using unknown interface.
7287
7288         * lily/volta-bracket.cc (after_line_breaking): new function. Set
7289         edge-height.
7290
7291         * lily/horizontal-bracket.cc (make_enclosing_bracket): rename from
7292         make_bracket.
7293         (make_bracket): new function.
7294
7295         * scm/lily.scm (define-scheme-options): add paper-size option.
7296
7297         * ly/declarations-init.ly (laissezVibrer): get paper size from
7298         -dpaper-size
7299
7300         * scm/translation-functions.scm: use \fontsize for changing the
7301         fontsize.
7302
7303         * scm/define-grobs.scm (all-grob-descriptions): set
7304         between-length-limit to 1.0
7305
7306         * lily/tie-helper.cc: add between_length_limit_ detail property.
7307
7308         * mf/feta-bolletjes.mf: typos.
7309
7310         * lily/note-head.cc (internal_print): don't shadow idx
7311         parameter. This fixes wrong attachment for do shape heads.
7312
7313 2005-10-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7314
7315         * scm/parser-ly-from-scheme.scm: rename from ly-from-scheme.scm
7316
7317         * scm/parser-clef.scm (supported-clefs): rename from clef.scm
7318
7319         * scm/layout-slur.scm: rename from slur.scm
7320
7321         * scm/layout-page-layout.scm: rename from page-layout.scm
7322
7323         * scm/layout-beam.scm: rename from beam.scm
7324
7325         * scm/define-grob-interfaces.scm (bass-figure-interface): add
7326         bass-figure-interface
7327
7328         * lily/new-figured-bass-engraver.cc (process_music): add
7329         implicitBassFigures property.
7330         
7331         * scm/define-markup-commands.scm (pad-x): new markup.
7332
7333         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set
7334         minimumVerticalExtent on FiguredBass context.
7335
7336         * lily/figured-bass-continuation.cc (center_on_figures): kludge in
7337         case the continuation crosses a line break.
7338
7339 2005-10-09  Jan Nieuwenhuizen  <janneke@gnu.org>
7340
7341         * flower/file-name.cc (dos_to_posix)[__CYGWIN__]: Return
7342         unconverted value if cygwin_conv_to_posix_path () fails.  Fixes
7343         absolute file name bug.  
7344
7345 2005-10-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7346
7347         * VERSION (PACKAGE_NAME): release 2.7.12
7348
7349         * input/regression/figured-bass-continuation-center.ly: new file.
7350
7351         * input/regression/beam-outside-beamlets.ly: new file.
7352
7353         * lily/beam.cc (set_beaming): don't clip edges.
7354         (connect_beams): don't clip edges.
7355
7356         * lily/beaming-info.cc (clip_edges): new function.
7357
7358         * lily/enclosing-bracket.cc (struct Enclosing_bracket): new file.
7359
7360         * Documentation/user/instrument-notation.itely (Figured bass):
7361         demonstrate extenders, update seealso links.
7362
7363         * scm/titling.scm (marked-up-headfoot): change tagline
7364         handling. tagline = ##f will blank the tagline as well.
7365
7366 2005-10-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7367
7368         * Documentation/topdocs/NEWS.tely: add entry for Figured bass.
7369
7370         * lily/new-figured-bass-engraver.cc (struct
7371         New_figured_bass_engraver): add new_music_found_ member.
7372
7373         * lily/lilypond-version.cc (Lilypond_version): deal with
7374         incorrectly formatted version strings. 
7375
7376         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): switch on
7377         New_figured_bass_engraver by default.
7378
7379         * lily/ttf.cc (print_trailer): only define glyph names when
7380         FT_Face has FT_FACE_FLAG_GLYPH_NAMES
7381
7382 2005-10-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7383
7384         * lily/horizontal-bracket.cc (make_bracket): new function.
7385
7386         * scm/define-grobs.scm (all-grob-descriptions): new grobs
7387         NewBassFigure, BassFigureBracket, BassFigureContinuation,
7388         BassFigureLine, BassFigureAlignment
7389
7390         * lily/new-figured-bass-engraver.cc (process_music): new file.
7391
7392         * lily/figured-bass-continuation.cc: new file.
7393
7394         * lily/include/horizontal-bracket.hh (struct Horizontal_bracket):
7395         new file.
7396
7397 2005-10-04  Mats Bengtsson  <mabe@s3.kth.se>
7398
7399         * scripts/lilypond-book.py: Bug fix, put the quote around the
7400         actual score for LaTeX documents.
7401
7402         * scm/define-grobs.scm (all-grob-descriptions): Change
7403         collapse-height of the SystemStartBracket grob to 5.0, 
7404         so the bracket disappears for single stave score lines (similarly
7405         to SystemStartBraces). 
7406
7407         * Documentation/user/advanced-notation.itely (Polymetric
7408         notation): Clarify the use of compressMusic.
7409
7410         * Documentation/user/basic-notation.itely (Grace notes): Clarify
7411         that the grace spacer note in other staves need the same duration
7412         and document the stroke-style property.
7413
7414 2005-10-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7415
7416         * Documentation/user/global.itely (Vertical spacing): document
7417         alignment-extra-space and fixed-alignment-extra-space.
7418
7419         * Documentation/topdocs/NEWS.tely (Top): add entry.
7420
7421         * input/regression/alignment-vertical-spacing.ly: new file.
7422
7423         * python/convertrules.py (conv): add rule.
7424
7425         * ly/music-functions-init.ly: rename outputProperty to overrideProperty
7426
7427         * lily/align-interface.cc (stretch_after_break): new
7428         function. Read fixed-alignment-extra-space property.
7429         (align_elements_to_extents): read alignment-extra-space property.
7430
7431         * lily/lily-guile.cc (robust_scm2dir): new function.
7432
7433         * scm/page-layout.scm (page-headfoot): annotate headsep and footsep.
7434         (annotate-space-left): new function. Annotate space left on page. 
7435         (annotate-y-interval): new function.
7436         (paper-system-annotate-last): new function. Annotate bottom-space.
7437
7438         * mf/feta-beugel.mf (y): 
7439
7440 2005-10-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7441
7442         * VERSION (PACKAGE_NAME):  release 2.7.11
7443
7444         * scm/lily-library.scm (interval-translate): new function
7445         (interval-center): new function. 
7446
7447         * scm/page-layout.scm (paper-system-annotate): new function. Add
7448         arrows for dimensions.
7449  
7450         * scm/stencil.scm (dimension-arrows): new function.
7451
7452         * Documentation/user/global.itely (Vertical spacing): mention annotatespacing
7453
7454         * input/regression/page-spacing.ly: add annotatespacing
7455
7456         * lily/paper-system-scheme.cc (LY_DEFINE): remove ly:paper-system-{extent,stencil}
7457         (LY_DEFINE): new function ly:paper-system-set-property!
7458
7459         * Documentation/user/global.itely (Paper size): explain how to add
7460         sizes.
7461
7462         * scm/paper.scm (paper-alist): rename tabloid paper to 11x17 to
7463         correspond to GS's definition.
7464
7465         * lily/tuplet-bracket.cc (after_line_breaking): suicide empty
7466         tuplet bracket.
7467         (print): only connect to next bracket if the next one is alive.
7468         (print): set padding to 0.0 if the bound is a breakable
7469         column. This makes tupletFullLength brackets reach up to the staff
7470         line if it doesn't connect to the next line.
7471
7472 2005-09-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7473
7474         * lily/bar-number-engraver.cc: correct docs.
7475
7476         * scm/output-lib.scm (first-bar-number-invisible): rename from
7477         default-bar-number-visibility
7478
7479 2005-09-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7480
7481         * scm/define-music-properties.scm (all-music-properties): remove
7482         predicate property.
7483
7484 2005-09-28  Heikki Junes  <hjunes@cc.hut.fi>
7485
7486         * po/fi.po: refresh.
7487
7488 2005-09-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7489
7490         * input/regression/hara-kiri-pianostaff.ly (disappear): remove
7491         superfluous s1.
7492         (disappear): bugfix.
7493
7494         * lily/stem-tremolo.cc (raw_stencil): read slope property.
7495
7496         * lily/include/paper-system.hh (class Paper_system): remove
7497         staff_extents_ member.
7498
7499         * lily/paper-system-scheme.cc (LY_DEFINE): remove.
7500
7501         * lily/include/paper-system.hh (class Paper_system): remove
7502         number_ variable. Remove is_title_. Remove break_before_penalty_
7503
7504         * lily/paper-book.cc (systems): use 'number property iso. number_
7505         member.
7506
7507         * lily/paper-system-scheme.cc: remove ly:paper-system-break-before-penalty
7508         remove ly:paper-system-number.
7509
7510         * scm/lily-library.scm (paper-system-title?): new function.
7511
7512         * lily/book.cc (process): bugfix: flip ?: cases. 
7513
7514         * Documentation/user/changing-defaults.itely (Difficult tweaks):
7515         add outputProperty.
7516
7517         * ly/music-functions-init.ly: add outputProperty music function.
7518
7519         * scm/paper.scm (set-paper-dimension-variables): add pagetopspace
7520
7521         * scm/page-layout.scm (ly:optimal-page-breaks): read next-space
7522         and next-padding.
7523         (optimal-page-breaks): rename from ly:optimal-page-breaks.
7524
7525         * lily/paper-system-scheme.cc (LY_DEFINE): new function.
7526
7527         * lily/paper-system.cc (internal_get_property): new function.
7528
7529         * Documentation/user/global.itely (Vertical spacing): refer to
7530         page-spacing.ly
7531
7532         * scm/page-layout.scm (ly:optimal-page-breaks): add support for
7533         pagetopspace
7534
7535         * input/regression/page-spacing.ly: new file.
7536
7537         * input/regression/page-top-space.ly: new file.
7538
7539         * lily/spacing-spanner.cc: cmath -> math.h
7540
7541         * lily/paper-system.cc (read_left_bound): new function. Read
7542         line-break-system-details from left bound to determine extents.
7543  
7544         * Documentation/user/programming-interface.itely (Using LilyPond
7545         syntax inside Scheme): change applyxxx -> applyXxx.
7546
7547         * ly/music-functions-init.ly: add outputProperty music function.
7548
7549         * lily/parser.yy (Generic_prefix_music_scm): add scm-scm-scm signature.
7550
7551         * lily/grob-scheme.cc (LY_DEFINE): add ! to ly:grob-suicide! name.
7552
7553         * python/convertrules.py (conv): rule
7554
7555         * ly/music-functions-init.ly: applyxxx -> applyXxx
7556
7557         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): alias
7558         TabVoice to Voice.
7559
7560 2005-09-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7561
7562         * flower/include/real.hh: include <math.h> iso. <cmath>
7563
7564         * flower/include/offset.hh: include real.hh
7565
7566 2005-09-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7567
7568         * Documentation/user/changing-defaults.itely (Difficult tweaks):
7569         fix example, now that 'interfaces is no longer directly available.
7570
7571         * lily/book.cc (process): don't crash if paper == NULL.
7572
7573         * po/fr.po: update.
7574
7575 2005-09-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7576
7577         * scm/define-music-types.scm (music-descriptions): set length and
7578         start-callback for QuoteMusic
7579
7580 2005-09-15  Mats Bengtsson  <mabe@s3.kth.se>
7581
7582         * lily/tie.cc (get_configuration): Replace fabs -> abs for integer
7583         arguments. Fixes compilation error with gcc 3.3.
7584
7585 2005-09-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7586
7587         * VERSION: release 2.7.10
7588
7589         * stepmake/stepmake/python-module-rules.make
7590         ($(outdir)/%$(SHARED_MODULE_SUFFIX)): SHARED_FLAGS at the end.  
7591
7592         * lily/*.cc: remove <cmath> everywhere. <cmath> is included from
7593         real.hh
7594
7595 2005-09-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7596
7597         * stepmake/stepmake/c++-vars.make (#EXTRA_CXXFLAGS): don't add
7598         -Werror. Otherwise GCC barfs over various optimizations.
7599
7600         * scm/define-grob-properties.scm (all-internal-grob-properties):
7601         add note-head property
7602
7603         * Documentation/user/instrument-notation.itely (Laissez vibrer
7604         ties): new node.
7605
7606         * input/regression/laissez-vibrer-ties.ly: new file.
7607
7608         * lily/laissez-vibrer-engraver.cc: new file.    
7609
7610         * lily/include/tie-column-format.hh: new file.
7611
7612         * lily/tie-column-format.cc: new file. 
7613
7614         * lily/tie-column.cc (set_manual_tie_configuration): new function.
7615
7616         * lily/laissez-vibrer-tie.cc: new file.
7617
7618         * lily/include/laissez-vibrer-tie.hh: new file.
7619
7620         * ly/engraver-init.ly: add Laissez_vibrer_engraver
7621
7622         * ly/declarations-init.ly (laissezVibrer): add \laissezVibrer
7623
7624         * scm/define-grobs.scm (all-grob-descriptions): add
7625         LaissezVibrerTie, LaissezVibrerTieColumn
7626
7627         * lily/tie-column.cc (set_tie_config_directions): new function
7628         (final_shape_adjustment): new function.
7629         (shift_small_ties): new function.
7630
7631         * scm/define-music-types.scm (music-descriptions): add LaissezVibrerEvent
7632
7633         * lily/include/tie.hh (struct Tie_details): add x_gap_
7634         (struct Tie_configuration): add head_position_
7635
7636         * lily/tie-column.cc (set_chord_outline): new function.
7637
7638         * mf/cmr.enc.in:  remove file.
7639
7640 2005-09-11  Graham Percival  <gpermus@gmail.com>
7641
7642         * Documentation/user/examples.itely: typo fix.  Thanks, Matevž
7643
7644 2005-09-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7645
7646         * mf/feta-banier.mf: make vertical stem 1/2 stemthickness wide to
7647         reduce aliasing effects.
7648
7649         * lily/tie-column.cc (set_chord_outlines): bugfix: insert complete
7650         box in skyline.
7651
7652 2005-09-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7653
7654         * lily/tie.cc (get_configuration): don't crash if left_dot is NULL.
7655
7656         * flower/include/real.hh: std::fabs too.
7657
7658 2005-09-08  Jan Nieuwenhuizen  <janneke@gnu.org>
7659
7660         * Documentation/user/lilypond.tely: Spell Baßtuba in UTF-8 (Werner). 
7661
7662         * lily, flower: Include C++ iso C headers.  Import namespace std
7663         throughout.
7664
7665         * lily/side-position-interface.cc: 
7666         * lily/scm-hash.cc: 
7667         * lily/note-head.cc: 
7668         * lily/include/includable-lexer.hh: 
7669         * flower/include/string-data.icc: Remove using std::*.
7670
7671         * lily, flower: Include C++ iso C headers.  Import namespace std
7672         throughout.
7673
7674         * lily/side-position-interface.cc: 
7675         * lily/scm-hash.cc: 
7676         * lily/note-head.cc: 
7677         * lily/include/includable-lexer.hh: 
7678         * flower/include/string-data.icc: Remove using std::*.
7679
7680         * Documentation/user/instrument-notation.itely (Entering lyrics):
7681         Multiple latin-1->utf-8 conversion fix.
7682
7683         * Documentation/user/*tely: Update Emacs cookie to utf-8.
7684
7685 2005-09-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7686
7687         * lily/tie.cc (get_configuration): also avoid dots for non-space
7688         situations.
7689
7690 2005-09-07  Jan Nieuwenhuizen  <janneke@gnu.org>
7691
7692         * Documentation/user/instrument-notation.itely: Bugfix.
7693
7694 2005-09-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7695
7696         * tex/GNUmakefile: don't install texinfo.tex
7697
7698         * tex/ : cleanup: remove unused files.
7699
7700         * lily/general-scheme.cc: remove my_{isinf,isnan}.
7701
7702         * flower/include/real.hh: using std::{isnan,isinf}
7703         
7704         * VERSION (PATCH_LEVEL): release 2.7.9
7705
7706 2005-09-05  Graham Percival  <gpermus@gmail.com>
7707
7708         * Documentation/user/ instrument-notation.itely,
7709         advanced-notation.itely: minor tweaks.
7710
7711         * input/test/script-chart.ly: add item padding.
7712
7713 2005-09-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7714
7715         * flower/offset.cc: use math.h iso. <cmath>
7716
7717         * scm/ps-to-png.scm (make-ps-images): use png16m again, for sake
7718         of IE users.
7719
7720         * scm/framework-eps.scm (dump-stencils-as-EPSes): cleanup.
7721         (widen-left-stencil-edges): new function. Fix alignment problems
7722         with LaTeX includegraphics.
7723
7724         * lily/text-interface.cc (interpret_markup): use abort().
7725
7726 2005-09-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7727
7728         * input/regression/tie-chord.ly (testLong): add a chord in 4ths
7729
7730         * lily/tie.cc (get_configuration): update bezier shape as we
7731         change Y positions.
7732         (get_configuration): don't move large ties if we're outside of the
7733         staff.
7734
7735 2005-09-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7736
7737         * scm/define-markup-commands.scm (strut): swap X and Y dims.
7738         
7739 2005-09-03  Jan Nieuwenhuizen  <janneke@gnu.org>
7740
7741         * .cvsignore: Add auto-generated configure files and then some.
7742
7743 2005-09-02  Jan Nieuwenhuizen  <janneke@gnu.org>
7744
7745         * scm/define-grobs.scm (DynamicLineSpanner): Add
7746         X-extent-callback.  Fixes hairpin-slur collision.
7747
7748 2005-08-31  Graham Percival  <gpermus@gmail.com>
7749
7750         * Documentation/user/advanced-notation.itely,
7751         basic-notation.itely: minor changes.
7752
7753 2005-08-31  Mats Bengtsson  <mabe@s3.kth.se>
7754
7755         * scm/framework-eps.scm (dump-stencils-as-EPSes): Insert a
7756         \linebreak between each .eps file if \betweenLilyPondSystem is
7757         undefined. 
7758
7759         * Documentation/user/lilypond-book.itely (Integrating LaTeX and
7760         music): Document the \linebreak
7761
7762         * Documentation/user/lilypond-book.itely,
7763         input/tutorial/lbook-latex-test.tex,
7764         Documentation/user/examples.itely: Remove \usepackage{graphics}
7765
7766 2005-08-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7767
7768         * mf/aybabtu.pe.in (i): don't merge alphabet into aybabtu.
7769
7770         * lily/ly-module.cc (make_stand_in_procs_weak): 1.6.4 and earlier
7771         compat bugfix.
7772
7773         * scripts/lilypond-book.py (PREAMBLE_LY): define
7774         inside-lilypond-book
7775         (modify_preamble): new function. Insert \RequirePackage{graphics}
7776         when no {graphics found in preamble.  
7777
7778 2005-08030  Graham Percival  <gpermus@gmail.com>
7779
7780         * Documentation/user/basic-notation.itely, global.itely,
7781         tutorial.itely: misc small changes.
7782
7783 2005-08-30  Jan Nieuwenhuizen  <janneke@gnu.org>
7784
7785         * stepmake/aclocal.m4: Include MY_PATCH_LEVEL in config.make's
7786         VERSION.
7787
7788 2005-08-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7789
7790         * lily/tie-column.cc (new_directions): put Tie down on center
7791         staff line. 
7792
7793         * lily/script-interface.cc (before_line_breaking): use
7794         Grob::programming_error
7795
7796         * scm/ps-to-png.scm (make-ps-images): use pngalpha device.
7797
7798         * scripts/lilypond-book.py (get_latex_textwidth): oops. Take [0]
7799         of splitext.
7800
7801 2005-08-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7802
7803         * VERSION (PACKAGE_NAME): VERSION release 2.7.8
7804
7805 2005-08-29  Werner Lemberg  <wl@gnu.org>
7806
7807         * mf/GNUmakefile: Add `-f' flag to `rm' command while removing
7808         the `*.scale.pfa' files to avoid warnings.
7809
7810 2005-08-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7811
7812         * lily/tempo-performer.cc (process_music): idem.
7813
7814         * lily/midi-def.cc (get_tempo): Rational to int conversion bug.
7815
7816 2005-08-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7817
7818         * Documentation/user/advanced-notation.itely (Text markup): not a
7819         fragment.
7820
7821         * lily/midi-item.cc (to_string): use to_int() iso. int cast.
7822
7823         * lily/staff-performer.cc (initialize): add tempo/name to
7824         audio_staff_
7825
7826
7827 2005-08-26  Graham Percival  <gpermus@gmail.com>
7828
7829         * Documentation/user/advanced.itely: add text-only example.
7830
7831         * Documentation/user/invoking.itely: add index entries for
7832         convert-ly.
7833
7834         * Documentation/user/ tutorial.itely, basic-notation.itely:
7835         small fixes suggested by Steve D.  Thanks!
7836
7837 2005-08-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7838
7839         * input/regression/markup-bidi-pango.ly: new file.
7840
7841         * lily/pango-font.cc (pango_item_string_stencil): make Mingw code
7842         standard. Remove #ifdef. Remove memleak.
7843         (text_stencil): use text_dir to decide how to composite items.
7844         (text_stencil): determine uniform text direction for the entire
7845         string.
7846
7847         * scripts/lilypond-book.py (output_name): remove
7848         latex_filter_cmd. Non-portable to non-Unix systems. 
7849         (get_latex_textwidth): use File.write and os.unlink() instead.
7850
7851         * THANKS: add Vicente & Trevor.
7852
7853         * lily/grob.cc (discretionary_processing): look up origin for
7854         programming_error too. 
7855
7856         * input/regression/tie-broken.ly: new file.
7857
7858         * lily/tie-column.cc (set_chord_outlines): set outline for line
7859         break case too.
7860         
7861 2005-08-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7862
7863         * lily/pango-font.cc (text_stencil): don't translate glyphs in
7864         unscaled transform, just translate stencils.
7865
7866         * ly/performer-init.ly: init timing to #t.  Fixes bar checks in
7867         MIDI.
7868
7869         * scm/define-markup-commands.scm (wordwrap-string): use
7870         text-direction
7871         (wordwrap-stencils): idem.
7872         (line): idem.
7873         (fill-line): idem.
7874         (wordwrap-stencils): translate last line to right for
7875         text-direction = LEFT.
7876
7877         * scm/define-grob-properties.scm (all-user-grob-properties): add
7878         text-direction.
7879
7880 2005-08-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
7881
7882         * lily/lily-parser.cc (Lily_parser): also copy output_basename_
7883         when copying a Lily_parser object.
7884
7885 2005-08-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7886
7887         * scm/define-markup-commands.scm (null): add null markup.
7888
7889 2005-08-25  Mats Bengtsson  <mabe@s3.kth.se>
7890
7891         * lily/item.cc: Add documentation of center-invisible
7892
7893 2005-08-24  Graham Percival  <gpermus@gmail.com>
7894
7895         * Documentation/user/advanced-notation.itely: add info about
7896         raising text.
7897
7898         * Documentation/user/programming-interface.itely: fix example
7899         involving raised text.
7900
7901 2005-08-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7902
7903         * lily/beam.cc (print): fix X start/end points of isolated
7904         beamlets.
7905
7906         * scm/output-ps.scm (grob-cause): escape spaces in URLs.
7907
7908         * lily/multi-measure-rest.cc (set_text_rods): new function.
7909
7910         * lily/vertical-align-engraver.cc (process_music): call
7911         Align_interface::set_axis(). This forces #'elements to be ordered,
7912         preventing random vertical reordering of staves.
7913
7914         * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
7915         add avoid-slur property. 
7916
7917         * Documentation/user/basic-notation.itely (Measure repeats): add
7918         countPercentRepeats example.
7919
7920         * Documentation/user/advanced-notation.itely (Other text markup
7921         issues): remove remark about normal-font.  We have \normal-text
7922
7923         * input/regression/tie-chord.ly: add note about remaining bugs.
7924
7925         * lily/tie.cc (print): try Tie_column::set_directions () if
7926         control-points not yet defined.
7927
7928 2005-08-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7929
7930         * lily/system-start-delimiter.cc (staff_brace): don't remove brace
7931         extent. This fixes braces falling out of the EPS bbox.
7932
7933         * mf/feta-beugel.mf (braces_per_font): make brace glyph align
7934         exactly to bbox.
7935
7936 2005-08-23  Graham Percival  <gpermus@gmail.com>
7937
7938         * {various} : change #up->#UP and #down->#DOWN.
7939
7940         * ly/titling-init.ly: Spacing fix when using printallheaders=##t.
7941
7942         * Documentation/user/advanced-notation.itely: clarify
7943         what objects handles text on a multimeasure rest.
7944
7945 2005-08-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7946
7947         * VERSION (PATCH_LEVEL): release 2.7.7
7948
7949 2005-08-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7950
7951         * make/lilypond-vars.make: set -dgs-font-load for "make web" 
7952
7953         * Documentation/topdocs/INSTALL.texi (Top): add GS bugfix requirement.
7954
7955         * input/regression/*.ly: formatting clean-up. Default layout
7956         before music expression.
7957
7958         * input/mutopia/R.Schumann/GNUmakefile (examples): switch off
7959         romanze28-2 example.
7960
7961         * scm/ps-to-png.scm: remove dir-re function.
7962         (make-ps-images): generate page names, instead of globbing them.
7963         This brings down LilyPond memory usage for make web by a factor
7964         10. 
7965
7966         * scripts/lilypond-book.py (Lilypond_snippet.png_is_outdated):
7967         don't use glob. With 3000 files, globbing
7968         Documentation/user/out-www/ can take too much time. 
7969         
7970         * lily/lily-guile.cc (gulp_file_to_string): take size argument.
7971
7972         * lily/general-scheme.cc (LY_DEFINE): take optional size argument.
7973
7974         * input/regression/tie-manual.ly: new file
7975
7976         * input/regression/tie-chord.ly: update.
7977
7978         * flower/include/interval.hh (struct Interval_t): 
7979
7980         * lily/tie.cc (distance): new function 
7981         (height): new function.
7982         (init): new function
7983         (Tie_details): new struct.
7984
7985         * lily/skyline.cc (skyline_height): new function.
7986
7987         * lily/tie-column.cc (set_chord_outlines): new function.
7988         (new_directions): read tie-configuration
7989
7990         * lily/skyline.cc: fix ASCII art.
7991         
7992 2005-08-22  Mats Bengtsson  <mabe@s3.kth.se>
7993
7994         * python/convertrules.py (string_or_scheme): Fix spelling error
7995
7996 2005-08-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7997         
7998         * lily/tie-column.cc (set_directions): set directions only once.
7999         (add_configuration): new function.
8000
8001         * lily/tie.cc (set_control_points): new function
8002
8003         * lily/tie-column.cc (new_directions): new function.
8004
8005         * ly/music-functions-init.ly: set 'pitch property
8006         iso. trill-pitch. This makes \relative work with \pitchedTrill
8007
8008         * lily/tie.cc (get_configuration): new function. Don't generate
8009         control points, rather, generate configuration.
8010         remove head-pair property.
8011
8012         * lily/include/tie.hh (struct Tie_configuration): new struct.
8013
8014 2005-08-22  Heikki Junes  <hjunes@cc.hut.fi>
8015
8016         * Documentation/topdocs/NEWS.tely: clarify.
8017
8018 2005-08-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8019
8020         * lily/tie.cc: remove minimum-length
8021
8022         * scm/define-grob-properties.scm (all-user-grob-properties):
8023         remove staffline-clearance, y-offset 
8024
8025         * input/regression/tie-dots.ly (Module): remove.
8026
8027         * lily/tie.cc (get_control_points): rewrite. Put short ties in
8028         staff-spaces, make long ties cross staff lines. Avoid flags and dots.
8029
8030         * input/regression/tie-single.ly: new file.
8031
8032 2005-08-21  Graham Percival  <gpermus@gmail.com>
8033
8034         * ly/bagpipe.ly: fix compile problem.
8035
8036 2005-08-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8037
8038         * lily/midi-item.cc (name): new method.
8039
8040         * lily/staff-performer.cc (acknowledge_audio_element): use
8041         signature of baseclass.
8042
8043         * lily/engraver-group.cc (do_announces): move recursion call out
8044         of while loop. 
8045
8046         * lily/drum-note-performer.cc (class Drum_note_performer): use
8047         process_music everywhere.
8048
8049         * ly/performer-init.ly: add default children everywhere.
8050
8051         * lily/paper-book.cc (output): call paper-book-write-midis
8052         directly: always write MIDI, even if no \layout {} block. 
8053
8054 2005-08-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8055
8056         * VERSION (PACKAGE_NAME): release 2.7.6
8057
8058         * lily/percent-repeat-engraver.cc (try_music): don't print warning
8059         about not being able to handle repeat.
8060
8061 2005-08-19  Jan Nieuwenhuizen  <janneke@gnu.org>
8062
8063         * Documentation/user/examples.itely (Piano templates):
8064         * lily/include/performer-group.hh: Remove last traces of
8065         Performer_group_performer.  Fixes make web.
8066
8067 2005-08-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8068
8069         * Documentation/user/examples.itely (Piano templates): change
8070         Engraver_group_engraver -> Engraver_group
8071
8072         * lily/ly-module.cc (make_stand_in_procs_weak): only kludge if
8073         scm_stand_in_procs is not weak_any.
8074
8075         * lily/volta-bracket.cc (print): don't use strcmp().
8076
8077         * lily/volta-engraver.cc (process_music): use
8078         Text_interface::is_markup() for setting the 'text property of the
8079         volta bracket.
8080
8081         * input/mutopia/claop.py (accents): update syntax to 2.6
8082
8083         * scm/define-context-properties.scm
8084         (all-user-translation-properties): add countPercentRepeats.
8085
8086         * Documentation/user/basic-notation.itely (Measure repeats): add
8087         isolated percent example.
8088
8089 2005-08-18  Graham Percival  <gpermus@gmail.com>
8090
8091         * input/ {various}: change direction #1, #-1 to
8092         #up/#down or \fooUp, \fooDown.
8093
8094         * Documentation/user/music-glossary.tely: #-1 to #down.
8095
8096         * ly/bagpipe.ly, engraver-init.ly, property-init.ly: #1
8097         to #up, #-1 to #down.
8098
8099 2005-08-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8100
8101         * lily/include/engraver-group.hh: rename.
8102
8103         * lily/include/performer-group.hh: rename.
8104
8105 2005-08-18  Mats Bengtsson  <mabe@s3.kth.se>
8106
8107         * input/test/script-abbreviations.ly: Removed some old LaTeX
8108         left overs.
8109
8110 2005-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
8111
8112         * python/convertrules.py (conv): inside-slur -> avoid-slur.
8113         Remove functions.  Remove if 1: constructs, reindent.
8114
8115         * scripts/convert-ly.py (add_version): Add functions from
8116         convertrules.py
8117
8118         * scm/script.scm (default-script-alist):
8119         s/priority/script-priority.  Fixes script stacking.  Backportme.
8120         (Fermata): Very low priority.
8121
8122 2005-08-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8123
8124         * input/regression/*.ly: remove superfluous \score blocks. Reindent.
8125
8126         * input/regression/slur-script.ly: remove padding tweaks. Add
8127         comment strings.
8128
8129         * lily/note-spacing.cc (get_spacing): remove kludge for EOL wide
8130         time sigs and related stuff.
8131
8132         * scm/define-grob-properties.scm (all-user-grob-properties): add
8133         @code{} tags to property description.
8134
8135         * lily/include/line-group-group-engraver.hh (Module): remove file.
8136
8137         * python/convertrules.py (conv): add rule for
8138         Engraver_group_engraver -> Engraver_group.
8139
8140         * lily/include/performer-group-performer.hh: analogous.
8141
8142         * lily/include/engraver-group-engraver.hh: rename to Engraver_group.
8143
8144         * lily/context-def.cc (instantiate): check for
8145         Engraver_group_engraver and Performer_group_performer not
8146         Engraver/Performer. Fixes crashes when doing \with { \consists .. }
8147  
8148 2005-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
8149
8150         * input/les-nereides.ly: Remove three fingering tweaks, update
8151         remaining one.
8152
8153         * input/regression/slur-script-inside.ly: Update, fix doc.
8154
8155         * scm/script.scm: Update to avoid-slur.
8156
8157         * scm/define-grob-properties.scm (avoid-slur): New property.
8158
8159         * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
8160         * lily/slur-engraver.cc (acknowledge_extra_object): Invoke
8161         outside_slur_callback if avoid-slur != #'inside.
8162
8163         * scm/define-grobs.scm (Fingering, Textscript): No
8164         inside-slur/outside-slur preference.
8165         (DynamicLineSpanner): Always outside slur.
8166
8167         * input/regression/slur-script.ly: More tests.
8168
8169 2005-08-17  Graham Percival  <gpermus@gmail.com>
8170
8171         * Documentation/user/lilypond-book: fix notime entry.
8172
8173         * Documentation/user/advanced-notation.itely: add info on
8174         getting an I rehearsal mark.
8175
8176         * Documentation/user/putting.itely: reinstate "I", re-enforce
8177         the fact that \override numbers are the result of
8178         experimentation and personal taste.
8179
8180         * Documentation/user/invoking.itely: update convert-ly bugs.
8181
8182 2005-08-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8183
8184         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set timing
8185         to #t.
8186
8187         * lily/timing-translator.cc (initialize): don't initialize timing.
8188
8189         * input/regression/stem-spacing.ly (Module): remove file.
8190
8191         * input/regression/spacing-stick-out.ly: specify Score context for
8192         \override
8193
8194         * input/regression/clefs.ly: remove spurious {}s 
8195
8196 2005-08-17  Heikki Junes  <hjunes@cc.hut.fi>
8197
8198         * Documentation/topdocs/NEWS.tely,
8199         input/regression/repeat-percent-count.ly: clarify a bit.
8200
8201 2005-08-16  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8202
8203         * input/no-notation/display-lily-tests.ly: delete
8204         display-lily-init call.
8205
8206         * ly/music-functions-init.ly (displayLilyMusic): move
8207         display-lily-init call at top level, so that the user should not
8208         have to call it.
8209
8210         * scm/define-music-display-methods.scm (note-name->lily-string):
8211         retrieve note names directly from pitchnames using new function `rassoc'.
8212         (display-lily-init): note names list construction removed.
8213
8214 2005-08-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8215
8216         * THANKS: spello.
8217
8218         * lily/lily-parser.cc (get_header): copy module, instead of
8219         returning it.
8220
8221         * Documentation/topdocs/NEWS.tely (Top): add entry for percent
8222         counters.
8223
8224         * Documentation/user/basic-notation.itely (Measure repeats): add
8225         links to Counter grobs.
8226
8227         * scm/define-grobs.scm (all-grob-descriptions): add
8228         DoublePercentRepeatCounter
8229         (all-grob-descriptions): add PercentRepeatCounter
8230
8231         * lily/percent-repeat-engraver.cc (class Percent_repeat_engraver):
8232         also create counter grobs.
8233
8234         * lily/separation-item.cc (extremal_break_aligned_grob): don't
8235         return grob without space-alist.
8236
8237         * input/proportional.ly: tune staff-padding.
8238
8239         * input/regression/repeat-percent-count.ly: new file. 
8240
8241 2005-08-16  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8242
8243         * input/no-notation/display-lily-tests.ly: moved from
8244         input/regression/ to input/no-notation. Be sure to call
8245         `display-lily-init' before trying to use the display function.
8246
8247 2005-08-16  Mats Bengtsson  <mabe@s3.kth.se>
8248
8249         * scripts/lilypond-book.py (option_definitions): Don't localize
8250         the empty string. Fixes bug when --psfonts was used with
8251         non-English locale.
8252
8253 2005-08-15  Graham Percival  <gpermus@gmail.com>
8254
8255         * lily/tuplet-bracket.cc: simple build fix.
8256
8257         * Documentation/user/putting.itely: use "we" instead of "I".
8258
8259         * Documentation/user/basic-notation.itely: cautionary accidentals
8260         work with naturals, too.
8261
8262 2005-08-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8263
8264         * lily/tuplet-bracket.cc (calc_position_and_height): add
8265         staff-padding support.
8266
8267         * input/proportional.ly: set staff-padding.
8268         
8269         * VERSION (PATCH_LEVEL): release 2.7.5
8270
8271         * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): text formatting
8272         fixes. Remove tweaks.
8273
8274         * input/regression/tuplet-slope.ly: add a test case.
8275
8276         * lily/tuplet-bracket.cc (calc_position_and_height): revert
8277         erroneous fix. Add spanner bounds to offset array with relative X
8278         positions.
8279
8280         * ly/engraver-init.ly: add Rest_engraver only once.
8281
8282         * scm/define-music-display-methods.scm (KeyChangeEvent): only do
8283         (*parser*) lookup if (*parser*) != #f.
8284
8285 2005-08-15  Jan Nieuwenhuizen  <janneke@gnu.org>
8286
8287         * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
8288         Cut-and paste update.
8289
8290         * input/regression/slur-script.ly: Add example of reverting
8291         inside-slur for fingering.
8292
8293         * scm/define-grobs.scm (DynamicLineSpanner, Fingering,
8294         TextScript): Explicitly set inside-slur #f, forcing these out of slur.
8295
8296         * lily/slur-engraver.cc (acknowledge_extra_object): Only invoke
8297         outside_slur_callback if inside-slur == #f (as opposed to unset).
8298
8299 2005-08-14  Jan Nieuwenhuizen  <janneke@gnu.org>
8300
8301         * tex/GNUmakefile (INSTALLATION_FILES): Remove enc symlink setup,
8302         encoding files are already removed.
8303
8304 2005-08-15  Mats Bengtsson  <mabe@s3.kth.se>
8305
8306         * Documentation/user/advanced-notation.itely (Instrument names):
8307         Document a workaround for instrument names that collide with
8308         system start braces/brackets.
8309
8310 2005-08-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8311
8312         * lily/rest-collision.cc (do_shift): spello.
8313
8314         * input/proportional.ly: use #'used property. Set break-overshoot
8315         property.
8316
8317         * mf/feta-arrow.mf: center on arrow tip center, iso. tip edge.
8318
8319         * lily/paper-column.cc: add #'used property
8320
8321         * lily/mark-engraver.cc (stop_translation_timestep): set grob
8322         array for staves found.
8323
8324         * lily/metronome-engraver.cc (stop_translation_timestep): set grob
8325         array for stavesFound.
8326
8327         * lily/staff-spacing.cc (next_note_correction): add fixed and
8328         space to calling convention. This fixes spacing of accidentals
8329         after barlines.
8330
8331         * input/regression/spacing-accidental-stretch.ly: add barline -
8332         accidental case.
8333
8334         * scm/framework-ps.scm (page-header): add version number to
8335         creator
8336         (eps-header): idem.
8337
8338         * mf/feta-bolletjes.mf: swap d0 and u0 fa heads.
8339         
8340 2005-08-13  Graham Percival  <gpermus@gmail.com>
8341
8342         * Documentation/user/global.itely: add "fit as much as
8343         possible onto this page" example (Vertical spacing).
8344
8345 2005-08-13  Jan Nieuwenhuizen  <janneke@gnu.org>
8346
8347         * *: Nitpick run.
8348
8349         * buildscripts/fixcc.py: Fixes.
8350
8351 2005-08-12  Graham Percival  <gpermus@gmail.com>
8352
8353         * Documentation/user/advanced-notation.itely: add markup
8354         example to Text spanners.
8355
8356 2005-08-12  Mats Bengtsson  <mabe@s3.kth.se>
8357
8358         * Documentation/user/basic-notation.itely (Ties): Add example of
8359         tying a tremolo to a chord. Thanks to Steve Doonan. 
8360
8361         * lily/tie-engraver.cc: Add tieWaitForNote to the list of read
8362         properties and move tieMelismaBusy to the list of written
8363         properties. 
8364
8365 2005-08-12  Heikki Junes  <hjunes@cc.hut.fi>
8366
8367         * po/TODO: suggest to use a dedicated tool like kbabel.
8368
8369         * po/fi.po: update using kbabel.
8370
8371 2005-08-12  Jan Nieuwenhuizen  <janneke@gnu.org>
8372
8373         * *: Remove obsolete files.  Nitpick run.
8374
8375         * lily/lily-guile.cc (parse_symbol_list): Bugfix.
8376
8377 2005-08-11  Jan Nieuwenhuizen  <janneke@gnu.org>
8378
8379         * mf/GNUmakefile (get-*-fonts): Rename from get-*-pfa.  Copy SVG
8380         too.
8381
8382         * Documentation/topdocs/NEWS.tely (Top): Add slur script feature.
8383
8384         * lily/lily-guile.cc (parse_symbol_list): Rewrite.  Grok multiple
8385         whitespace as symbol separator.
8386
8387         * lily/side-position-interface.cc: Add slur-padding.
8388
8389         * input/regression/slur-script.ly: Fixed.  Backportme?  This is
8390         quite a large fix, and it never worked in a stable release; so not
8391         really a regression.
8392
8393         * lily/phrasing-slur-engraver.cc (class Phrasing_slur_engraver):
8394         Update cut and paste code from Slur_engraver.
8395
8396         * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
8397         Add.
8398
8399         * scm/define-grobs.scm (DynamicLineSpanner): Add
8400         dynamic-line-spanner-interface.
8401         (DynamicLineSpanner, TextScript, Fingering): Add slur-padding.
8402
8403 2005-08-09  Jan Nieuwenhuizen  <janneke@gnu.org>
8404
8405         * lily/slur-engraver.cc (acknowledge_extra_object): Bugfix: use
8406         to_boolean () so that non-set 'inside-slur means false.
8407
8408         * lily/slur.cc (outside_slur_callback): Bugfixes: make sure that
8409         slur has control-points.  Skip script without direction.  Always
8410         do_shift if script inside slur, even if slur not contained in
8411         script y-extent.  Increment k in loop.
8412
8413 2005-08-11  Mats Bengtsson  <mabe@s3.kth.se>
8414
8415         * scm/define-markup-commands.scm: Improved regexp to search for
8416         EPS bounding boxes and corrected call to ly:warning.
8417
8418 2005-08-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8419
8420         * Documentation/user/programming-interface.itely (Displaying music
8421         expressions): doc for \displayLilyMusic. Also some precisions in
8422         "Markup construction in Scheme"
8423
8424 2005-08-10  Mats Bengtsson  <mabe@s3.kth.se>
8425
8426         * scm/define-markup-commands.scm (normal-text): Added 2 new
8427         markup commands, \normal-text and \medium (the latter thanks to
8428         Bruce Fairchild). 
8429
8430 2005-08-08  Graham Percival  <gpermus@gmail.com>
8431
8432         * Documentation/user/programming-interface.itely: fix @{ @}.
8433
8434         * scm/define-markup-commands.scm: add linewidth info to
8435         \justify and \wordwrap, add "upright is the opposite of italic".
8436
8437         * Documentation/user/advanced-notation.itely: shaped->shape,
8438         add (cons (markup "foo")) type of example to text markup,
8439         reword multi-measure rests section.
8440
8441         * lily/note-heads-engraver.cc: changed Shaped->Shape in a
8442         comment.  No actual code was touched.
8443
8444         * Documentation/user/invoking.itely: add more info about
8445         \include.  Thanks, Bruce!
8446
8447         * THANKS: add Bruce Fairchild, alphabetise.
8448
8449         * Documentation/user/global.itely: document \score{\header{}}
8450         behavior.
8451
8452         * Documentation/user/basic-notation.itely: reword multi-measure
8453         rest discussion in Rests.
8454
8455 2005-08-08  Mats Bengtsson  <mabe@s3.kth.se>
8456
8457         * Documentation/user/programming-interface.itely (Markup
8458         construction in Scheme): Corrected example and tried to clarify
8459         the implicit \line in the table.
8460
8461 2005-08-07  Graham Percival  <gpermus@gmail.com>
8462
8463         * Documentation/user/instrument-notation.itely: moved
8464         some bagpipe info back into the bagpipe section.  Somehow
8465         it ended up in the "other vocal issues" section?!  :o_O
8466
8467 2005-08-07  Jan Nieuwenhuizen  <janneke@gnu.org>
8468
8469         * scm/framework-ps.scm (dir-join): Rename from path-join (joins
8470         directories, not paths).
8471
8472 2005-08-06  Jan Nieuwenhuizen  <janneke@gnu.org>
8473
8474         * scm/framework-ps.scm (munge-lily-font-name): Bugfix: Munge only
8475         plain emmentaler/aybabtu.  Backportme.
8476
8477         * lily/tuplet-bracket.cc (calc_position_and_height): Bugfix:
8478         missing dir correction.
8479
8480 2005-08-05  Graham Percival  <gperlist@shaw.ca>
8481
8482         * scm/define-markup-commands: fix reversed justify/wordwrap
8483         doc strings.
8484
8485 2005-08-05  Jürgen Reuter  <reuter@ipd.uka.de>
8486
8487         * lily/ligature-engaver.cc, lily/coherent-ligature-engaver.cc,
8488         lily/gregorian-ligature-engaver.cc,
8489         lily/include/ligature-engraver.hh,
8490         lily/include/coherent-ligature-engraver.hh,
8491         lily/include/gregorian-ligature-engraver.hh: make these classes
8492         truely abstract.  This should fix some internal oddities such as
8493         duplicate as well as dead translator/property declarations, and
8494         also some dead code.
8495
8496         * lily/ligature-bracket-engraver.cc, lily/ligature-engraver.cc:
8497         bugfix: avoid message "junking empty ligature" on ligature
8498         brackets by collecting dummy grobs.
8499
8500 2005-08-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8501
8502         * lily/tuplet-bracket.cc (print): default right overshoot to 0.0
8503
8504         * input/proportional.ly (staffKind): bugfix.
8505         (staffKind): updates by Trevor Baca.
8506
8507         * scm/define-grobs.scm (all-grob-descriptions): remove arrows as
8508         default layout. 
8509
8510         * lily/tuplet-bracket.cc (print): check whether edge-text is a
8511         pair.
8512
8513         * lily/beam.cc (rest_collision_callback): call position_beam() if
8514         necessary.
8515
8516         * VERSION: release 2.7.4
8517
8518         * input/regression/spacing-uniform-stretching.ly: new file.
8519
8520         * lily/spacing-loose-columns.cc (set_loose_columns): use robust_relative_extent().
8521
8522         * Documentation/topdocs/NEWS.tely (Top): add Nicolas as
8523         contributor.
8524
8525         * lily/include/ly-module.hh: define MODULE_GC_KLUDGE globally.
8526
8527         * input/proportional.ly: new file.
8528
8529         * lily/tuplet-bracket.cc (after_line_breaking): don't suicide if
8530         columns is empty
8531
8532         * lily/tuplet-engraver.cc (finalize): new function. Reset right
8533         bounds to currentCommandColumn for the last step.
8534         (start_translation_timestep): if tupletFullLength is set, set
8535         bound to Paper Column
8536
8537         * input/regression/tuplet-full-length.ly (indent): new file.
8538
8539         * lily/spacing-loose-columns.cc (set_loose_columns): space a whole
8540         clique of loose columns, eg. a set of grace notes in strict
8541         notespacing.
8542
8543         * input/regression/spacing-strict-spacing-grace.ly: new file.
8544
8545         * lily/key-signature-interface.cc: change property name to
8546         alteration-alist
8547
8548         * lily/key-engraver.cc (read_event): read keyAlterationOrder, not
8549         keyAccidentalOrder
8550
8551         * python/convertrules.py (conv): keyAccidentalOrder ->
8552         keyAlterationOrder
8553
8554         * lily/key-engraver.cc (create_key): always print a cancellation
8555         for going to C-major/A-minor, regardless of printKeyCancellation.
8556         (create_key): remove typecheck for visibility. This fixes key
8557         signature not being printed.
8558
8559         * lily/spacing-determine-loose-columns.cc: new file.
8560
8561         * input/regression/spacing-strict-notespacing.ly: new file.
8562
8563         * lily/spacing-spanner.cc (generate_springs): rename from
8564         do_measure. 
8565         (generate_pair_spacing): new function.
8566         (init, generate_pair_spacing): set between-cols for floating
8567         nonmusical columns.
8568
8569         * lily/spaceable-grob.cc (get_spring): new function. 
8570
8571         * lily/tuplet-bracket.cc (print): on the left, the overshoot is
8572         relative to the right edge of the prefatory matter.
8573
8574         * lily/beam.cc (print): read break-overshoot to determine where to
8575         stop/start broken beams.
8576
8577         * input/regression/spanner-break-overshoot.ly: new file.
8578
8579 2005-08-04  Graham Percival  <gperlist@shaw.ca>
8580
8581         * ly/bagpipe.ly: updated.
8582
8583         * Documentat/user/instrument.itely: un-comment out bagpipe example.
8584
8585 2005-08-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8586
8587         * lily/dynamic-engraver.cc (acknowledge_slur): add slur to
8588         support: now (de)crescs avoid slurs as well.
8589
8590         * Documentation/user/instrument-notation.itely (Bagpipe example):
8591         comment out non-functioning bagpipe example.
8592         (Bagpipe definitions): idem.
8593
8594         * Documentation/topdocs/NEWS.tely (Top): add uniform-stretching example.
8595         (Top): add proportionalNotationDuration example.
8596
8597         * input/regression/spacing-proportional.ly: new file.
8598
8599         * lily/tuplet-bracket.cc (parallel_beam): broken bracket never is
8600         synched to a beam.
8601
8602         * lily/beam.cc (shift_region_to_valid): divide by zero fix. This
8603         fixes beams with a single stem (eg. beams across linebreaks.)
8604
8605         * lily/parser.yy (simple_string): allow \new STRING_IDENTIFIER.
8606
8607         * flower/rational.cc (operator +): prevent overflow. This fixes
8608         heavily nested tuplets.
8609
8610         * lily/auto-beam-engraver.cc (derived_mark): new method. Yes. We
8611         have to protect even those unlikely to be corrupted data members.  
8612
8613 2005-08-04  Graham Percival  <gperlist@shaw.ca>
8614
8615         * ly/bagpipe.ly: new file.
8616
8617         * THANKS: added Sven Axelsson.
8618
8619 2005-08-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8620
8621         * lily/spacing-engraver.cc (stop_translation_timestep): directly
8622         copy proportionalNotationDuration into currentMusicalColumn if
8623         set.
8624
8625         * lily/spacing-spanner.cc (musical_column_spacing): if
8626         uniform-stretching set, fixed space is 0.0
8627
8628         * input/regression/spacing-multi-tuplet.ly: show
8629         uniform-stretching property.
8630
8631         * lily/spacing-spanner.cc (effective_shortest_duration): new function.
8632
8633         * lily/include/spacing-spanner.hh (class Spacing_spanner): new file.
8634         (struct Spacing_options): new struct.
8635
8636         * lily/spacing-basic.cc: new file.
8637
8638         * lily/spacing-spanner.cc (note_spacing): remove outdated code:
8639         delta_t doesn't have to be smaller than shortest_playing_len
8640
8641 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8642
8643         * input/regression/markup-arrows.ly:  new file.
8644
8645         * lily/tuplet-bracket.cc: document new behavior.
8646
8647         * input/regression/tuplet-broken.ly: new file. Demonstrate tuplets
8648         with line breaks.
8649
8650         * scm/define-markup-commands.scm (arrow-head): arrow-head markup command.
8651
8652         * scm/define-grobs.scm (all-grob-descriptions): set arrows as
8653         default 
8654
8655         * lily/tuplet-bracket.cc: add edge-text property.
8656         add break-overshoot.
8657         (print): read break-overshoot.
8658         (print): read edge-text, add stencils.
8659
8660         * mf/feta-arrow.mf: new file.
8661
8662         * mf/feta-generic.mf: add feta-arrow.
8663
8664 2005-08-03  Mats Bengtsson  <mabe@s3.kth.se>
8665
8666         * Documentation/user/lilypond-book.itely (An example of a
8667         musicological document): Added flag -o to dvips for people who use
8668         the default setting in teTeX where output is sent to the printer. 
8669
8670         * Documentation/user/global.itely (Vertical spacing): Added
8671         reference to the Axis_group_engraver which documents the *Extent
8672         properties.
8673
8674 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8675
8676         * Documentation/user/basic-notation.itely (Tuplets): add note
8677         about nested tuplets. Remove BUG. 
8678
8679         * input/regression/tuplet-nest.ly: update: remove manual hack. 
8680
8681         * lily/tuplet-bracket.cc (print): use robust_scm2drul
8682         (print): manually call print() for subtuplets.
8683         (calc_position_and_height): add subtuplets to the
8684         support. Vertically shift outer tuplet 
8685
8686         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): set
8687         remove-first for Lyrics, ChordNames and FiguredBass
8688
8689         * scm/define-grob-properties.scm (all-internal-grob-properties):
8690         use ly:grob-array? iso. grob-list?
8691         (all-internal-grob-properties): add tuplets grob-array.
8692
8693         * lily/tuplet-bracket.cc (add_tuplet_bracket):
8694         new function
8695
8696 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8697
8698         * input/test/time-signature-staff.ly: new file.
8699
8700         * ly/declarations-init.ly (center): escape to Scheme. Fixes
8701         spurious #<Music FingerEvent> errors. Backportme.
8702
8703 2005-08-03  Mats Bengtsson  <mabe@s3.kth.se>
8704
8705         * Documentation/user/programming-interface.itely (Markup
8706         construction in Scheme): Corrected markup syntax in the
8707         translation table.
8708
8709 2005-08-03  Graham Percival  <gperlist@shaw.ca>
8710
8711         * Documentation/user/instrument-notation.itely: small update
8712         to bagpipe notation docs; thanks Sven!
8713
8714         * Documentation/user/basic-notation.itely: add link about trills.
8715
8716 2005-08-02  Graham Percival  <gperlist@shaw.ca>
8717
8718         * Documentation/user/music-glossary: remove accidentally committed
8719         fink patch.
8720
8721 2005-08-02  Yoshinobu Ishizaki  <isizaki@mte.biglobe.ne.jp>
8722
8723         * lily/lily-parser.cc (get_header): new function. Enable multiple
8724         \header definitions.
8725
8726         * lily/parser.yy (lilypond_header_body): use get_header.
8727
8728         * ly/init.ly:
8729         * scm/lily-library.scm (print-score-with-defaults): renamed
8730         $globalheader to $defaultheader
8731             
8732         * Documentation/user/global.itely (Creating titles): added short
8733         explanation that multiple headers are useable.
8734
8735
8736 2005-08-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8737
8738         * lily/module-scheme.cc (LY_DEFINE): new file. 
8739
8740         * Documentation/user/advanced-notation.itely (Font selection): add
8741         doco for make-pango-font-tree.
8742
8743 2005-07-31  Graham Percival  <gperlist@shaw.ca>
8744
8745         * Documentation/user/music-glossary: more languages
8746         for tenuto.
8747
8748         * Docuemntation/user/instrument-notation.itely: minor
8749         update for bagpipe example.
8750
8751 2005-07-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8752
8753         * input/regression/+.ly (TODO): add some text.
8754
8755 2005-07-28  Graham Percival  <gperlist@shaw.ca>
8756
8757         * Documentation/user/invoking.itely: \score begins with music.
8758
8759         * Documentation/user/ basic-notation.itely,
8760         instrument-notation.itely: minor changes.
8761
8762         * Documentation/user/music-glossary.itely: began tenuto entry.
8763
8764 2005-07-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8765
8766         * scm/output-socket.scm (bezier-sandwich): add bezier-sandwich
8767
8768         * mf/feta-bolletjes.mf: swap up and down for aiken heads.
8769
8770 2005-07-27  Graham Percival  <gperlist@shaw.ca>
8771
8772         * Documentation/user/examples.itely: remove bagpipe template.
8773
8774         * Documentation/user/instrument-notation.itely: add bagpipe
8775         section, maybe fix quotes in lyrics.  I hate text encoding.
8776         Clarify chord durations, more bagpipe stuff.
8777
8778 2005-07-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8779  
8780         * lily/accidental-engraver.cc: formatting fixes.
8781
8782         * lily/spacing-spanner.cc (prune_loose_columns): right-items is a
8783         grob-array.
8784
8785         * lily/arpeggio.cc (print): suicide arpeggio for single notehead.
8786
8787         * lily/note-column.cc (arpeggio): new function.
8788
8789         * lily/note-spacing.cc (get_spacing): also take arpeggio into
8790         account for spacing.
8791
8792 2005-07-25  Jan Nieuwenhuizen  <janneke@gnu.org>
8793
8794         * lily/main.cc (sane_setenv)[!ARGV0_RELOCATION]: Also define.
8795         (setup_guile_env): Use it instead of nonstandard setenv.  Fixes
8796         mingw build.
8797         
8798 2005-07-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8799
8800         * scm/lily.scm (lilypond-all): clear anonymous modules after
8801         processing files.
8802
8803 2005-07-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8804
8805         * flower/include/guile-compatibility.hh (SCM_I_CONSP): add
8806         SCM_I_CONSP
8807
8808         * VERSION: 2.7.3 released
8809
8810         * Documentation/user/invoking.itely (Invoking lilypond): add
8811         LILYPOND_GC_YIELD documentation.
8812
8813         * lily/*: cleanups: use scm_from_int iso. scm_int2num. Idem for
8814         scm_from_real / scm_make_real.
8815
8816         * lily/main.cc (setup_guile_env): new function. Set GC min_yields
8817         higher. This increases memory footprint, but provides overall
8818         speedup of 15 to 20%. 
8819
8820         * lily/include/translator.hh (class Translator): remove
8821         PRECOMPUTED_VIRTUAL everywhere.
8822
8823         * lily/include/lily-guile.hh: inline scm_c[ad]r, scm_is_pair.
8824
8825         * lily/context.cc (now_mom): non-recursive now_mom() 
8826
8827         * lily/include/profile.hh: new file.
8828
8829         * lily/profile.cc: new file.
8830
8831         * lily/grob.cc (Grob::Grob): look properties up directly.
8832
8833         * lily/open-type-font.cc (get_indexed_char): cache index -> bbox
8834         lookups.
8835
8836         * lily/include/box.hh (class Box): smob Box type.
8837
8838         * lily/smobs.cc (protect_smob): O(1) GC (un)protection.
8839
8840         * lily/include/smobs.hh (DECLARE_BASE_SMOBS): add methods
8841         protect() and unprotect(). Use throughout.
8842
8843 2005-07-24  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8844
8845         * Documentation/topdocs/NEWS.tely: new item for \displayLilyMusic
8846
8847         * scm/define-music-display-methods.scm (markup->lily-string):
8848         markup elements can also be strings (without simple-markup
8849         appended)
8850
8851 2005-07-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8852
8853         * lily/context.cc (where_defined): also assign value in
8854         where_defined().
8855
8856         * lily/bezier.cc (get_other_coordinate): use curve_coordinate
8857         (curve_coordinate): new function
8858
8859         * lily/simple-spacer.cc (add_columns): only add rods between
8860         column i and begin/end if keep-inside-line is set (this repleces
8861         allow-outside-line as default)
8862
8863 2005-07-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8864
8865         * lily/tuplet-engraver.cc (start_translation_timestep): only read
8866         tupletSpannerDuration if applicable.
8867
8868         * lily/font-size-engraver.cc (process_music): read fontSize only
8869         once per timestep.
8870
8871         * lily/engraver*cc: use throughout.
8872         
8873         * lily/include/translator.icc (ADD_ACKNOWLEDGER): new macro.
8874
8875         * lily/translator.cc (add_acknowledger): new file. Directly jump
8876         into an Engraver::acknowledge_xxx () method based on a grobs
8877         interface-list.
8878
8879         * lily/include/translator-dispatch-list.hh (class
8880         Engraver_dispatch_list): new struct, new file.
8881
8882         * scm/define-context-properties.scm
8883         (all-internal-translation-properties): remove acceptHashTable,
8884         acknowledgeHashTable
8885
8886         * lily/translator-group.cc (mark_smob): idem for acceptHashTable.
8887
8888         * lily/engraver-group-engraver.cc (Engraver_group_engraver):
8889         change acknowledgeHashTable to C++ member. 
8890
8891         * lily/rest-collision.cc (do_shift): use extract_grob_set().
8892
8893 2005-07-22  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8894
8895         * scm/display-lily.scm: new file. Define a `display-lily-music'
8896         function, that displays the music expression given as an argument,
8897         using LilyPond notation.
8898
8899         * scm/define-music-display-methods.scm: new file. Implementation
8900         of display methods for each music type.
8901
8902         * ly/music-functions-init.ly (displayLilyMusic): new function for
8903         displaying music with LilyPond notation.
8904
8905         * input/regression/display-lily-tests.ly: new regression test file
8906         for `display-lily-music'.
8907
8908         * scm/markup.scm: remove obsolete debugging code (for printing
8909         markups with LilyPond notation).
8910
8911         * scm/define-music-types.scm (music-name-to-property-table):
8912         * scm/clef.scm (supported-clefs): export, in order to be accessible
8913         from the (scm display-lily) module.
8914
8915 2005-07-22  Jan Nieuwenhuizen  <janneke@gnu.org>
8916
8917         * Documentation/topdocs/NEWS.tely (Top): Typo.
8918
8919 2005-07-22  Heikki Junes  <hjunes@cc.hut.fi>
8920
8921         * Documentation/index.html.in, Documentation/texinfo.css,
8922           stepmake/bin/text2html.py, buildscripts/mutopia-index.py,
8923           Documentation/bibliography/index.html.in,
8924           Documentation/bibliography/html-long.bst: revert css-width patch,
8925           it does not work with IE6.
8926
8927 2005-07-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8928
8929         * Documentation/texinfo.css: revert 760px hack. 
8930
8931         * VERSION: release 2.7.2
8932
8933         * Documentation/topdocs/NEWS.tely (Top): mention barNumberCheck
8934
8935         * Documentation/user/basic-notation.itely (Barnumber check): add
8936         section.
8937
8938         * scm/music-functions.scm (skip-to-last): new function. Show only
8939         last showLastLength part of the \score.
8940
8941         * lily/moment-scheme.cc (LY_DEFINE): new function ly:moment-sub
8942
8943         * python/convertrules.py (conv): add ly:x-moment rule
8944
8945         * lily/moment-scheme.cc (LY_DEFINE): rename ly:X-moment  -> ly:moment-X
8946
8947         * Documentation/topdocs/NEWS.tely (Top): add new feature.
8948
8949         * Documentation/user/instrument-notation.itely (Flexibility in
8950         alignment): options in subsections.
8951
8952         * lily/lyric-engraver.cc (process_music): don't typeset text for _
8953         syllable text. Instead, assume that the previous lyric text is a
8954         melismated text.
8955
8956         * Documentation/index.html.in: revert 800x600 change.
8957
8958 2005-07-19  Jan Nieuwenhuizen  <janneke@gnu.org>
8959
8960         * lily/main.cc (main): Remove invalid handle kludge.
8961
8962         * scm/lily.scm (running-from-gui?): WINDOWS: check -dgui.
8963         (lambda): add gui define.
8964
8965 2005-07-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8966
8967         * Documentation/topdocs/NEWS.tely (Top): add note about Musica ficta.
8968
8969         * Documentation/user/instrument-notation.itely (Musica ficta
8970         accidentals): add section Musica ficta accidentals
8971
8972         * lily/accidental-engraver.cc (make_suggested_accidental): new
8973         function.
8974         (make_standard_accidental): move into new function.
8975         (create_accidental): new function.
8976
8977         * scm/define-grobs.scm (all-grob-descriptions): new Grob
8978         AccidentalSuggestion
8979
8980         * lily/output-def-scheme.cc (LY_DEFINE): take default  argument.
8981
8982         * lily/output-def.cc (lookup_variable): return SCM_UNDEFINED if
8983         undefined.
8984
8985         * Documentation/user/global.itely (Page formatting): document
8986         horizontalshift.
8987
8988         * scm/page-layout.scm (default-page-music-height):
8989         horizontalshift: new variable, shift all systems by
8990         horizontalshift to the right, to make space for instrument names.
8991
8992         * scm/paper.scm (set-paper-dimension-variables): add horizontalshift
8993
8994         * lily/input-scheme.cc (LY_DEFINE): take format commands.
8995
8996 2005-07-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8997
8998         * lily/note-column.cc (dir): idem.
8999
9000         * lily/spacing-spanner.cc (Module): idem.
9001
9002         * lily/script-column.cc (before_line_breaking): use extract_grob_set()
9003
9004         * lily/include/paper-column.hh (class Paper_column): add
9005         non-static get_rank() member.
9006
9007         * VERSION: release 2.7.1
9008         
9009         * scm/framework-null.scm: new file, used for benchmarking.
9010
9011 2005-07-20  Heikki Junes  <hjunes@cc.hut.fi>
9012
9013         * Documentation/topdocs/INSTALL.texi, configure.in: fix
9014         version dependencies for fontforge and gs.
9015
9016         * Documentation/index.html.in, Documentation/texinfo.css,
9017         stepmake/bin/text2html.py, buildscripts/mutopia-index.py,
9018         Documentation/bibliography/index.html.in, 
9019         Documentation/bibliography/html-long.bst: optimize width of
9020         html for a 800x600 screen (width:760), increases printability
9021         when 'fit to page' is not set and readability in wide screens.
9022
9023         * stepmake/bin/add-html-footer.py: add missing </p>.
9024
9025 2005-07-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9026
9027         * scm/define-markup-commands.scm (beam): use polygon in beam
9028         command.
9029
9030         * lily/grob-pq-engraver.cc (stop_translation_timestep): save up
9031         all acknowledged grobs, and do potentially expensive merge and
9032         write in one go.
9033
9034         * buildscripts/mf-to-table.py (write_fontlist): enforce noBreak.
9035
9036         * configure.in (reloc_b): add --enable-static-gxx to statically
9037         link to libstdc++
9038
9039         * lily/GNUmakefile (static-gxx-libs): new target
9040         static-gxx-libs. Create symlink to libstdc++.a
9041
9042         * lily/new-lyric-combine-music-iterator.cc: rename to
9043         Lyric_combine_music_iterator
9044
9045         * lily/lyric-combine-music-iterator.cc
9046         (Old_lyric_combine_music_iterator): rename to
9047         Old_lyric_combine_music_iterator
9048
9049         * lily/*-engraver.cc (various): remove double use of
9050         PRECOMPUTED_VIRTUAL function: only use
9051         start_translation_timestep() and stop_translation_timestep(), not
9052         both.
9053
9054         * lily/break-substitution.cc (fast_substitute_grob_array): do
9055         fast_substitute_grob_array for all unordered grob_arrays.
9056         (substitute_grob): return Grob *. Saves packing/unpacking SCMs.
9057         (substitute_grob_array): optimize.
9058
9059         * lily/align-interface.cc (set_axis): set ordered_ for 'elements
9060
9061         * lily/include/grob-array.hh (class Grob_array): ordered_ member.
9062
9063         * lily/parser.yy: revert $globalheader patch.
9064         
9065         * lily/include/translator.icc
9066         (IMPLEMENT_FETCH_PRECOMPUTABLE_METHODS): directly jump into
9067         Translator methods, without _static helper.
9068  
9069         * lily/grob-smob.cc (derived_mark): rename from
9070         do_derived_mark(). Return void.
9071
9072         * scm/define-context-properties.scm
9073         (all-internal-translation-properties): remove tweakCount/tweakRank.
9074
9075         * scm/output-lib.scm (begin-of-line-invisible): use vectors for
9076         predefined break-visibilities.
9077
9078         * lily/item.cc (handle_prebroken_dependencies): use a vector of 3
9079         booleans for break-visibility.
9080
9081         * Documentation/topdocs/NEWS.tely (Top): add note about engravers.
9082
9083         * python/convertrules.py (conv): rule for Timing_translator. 
9084
9085         * lily/include/translator.icc: new file. 
9086
9087         * lily/paper-column-engraver.cc (process_music): new
9088         file. Separate Paper_column factory from Score_engraver.
9089
9090         * lily/vertically-spaced-context-engraver.cc: administer
9091         spaceable-staves property of System.
9092
9093         * lily/translator-group-ctors.cc: new file.
9094
9095         * lily/context-property.cc (make_grob_from_properties): construct
9096         the right Grob class programmatically, looking at the class entry
9097         for the meta property.
9098
9099         * lily/break-align-engraver.cc (stop_translation_timestep): call
9100         Break_align_interface::add_element() directly.
9101
9102         * lily/context.cc (measure_position): measure_position() is now a
9103         normal function.
9104
9105         * lily/include/translator.hh (class Translator): rename
9106         process_acknowledged_grobs() to process_acknowledged() and move to
9107         Translator.
9108
9109         * scm/define-grobs.scm (all-grob-descriptions): add a 'class meta
9110         field for each grob description.
9111
9112         * lily/include/translator-group.hh (class Translator_group):
9113         change to base class. Separate class from Translator. This gets
9114         rid of virtual inheritance for Engravers/Performers.
9115
9116         * lily/staff-performer.cc (class Staff_performer): derive
9117         Staff_performer from Performer, not Performer_group_performer 
9118
9119         * Lily/translator-group.cc (precomputed_recurse_over_translators):
9120         new function.
9121         (precompute_method_bindings): new function. Precompute lists of
9122         Translators, so we only call methods (process_music,
9123         start_translation_timestep, etc.) for Translators needing
9124         it. Also: dispose of pointer-to-member-function calls.
9125
9126         * lily/engraver-group-engraver.cc: remove engraver_each,
9127         recurse_down_engravers ()
9128
9129         * lily/note-head.cc (internal_print): only call
9130         glyph-name-procedure if style != default. 
9131
9132 2005-07-16  Graham Percival  <gperlist@shaw.ca>
9133
9134         * ly/titling-init.ly: add printallheaders option.
9135
9136         * Documentation/user/global.itely: document printallheaders.
9137
9138 2005-07-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9139
9140         * lily/system.cc (do_derived_mark): don't mark from object_alist_
9141         anymore, but do it centrally.  
9142
9143         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
9144         hammer hack.
9145
9146         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-object
9147
9148         * scm/output-lib.scm: remove hammer-print-function.
9149
9150         * lily/include/pointer-group-interface.hh (extract_grob_set): new
9151         macro. Declare a Link_array<Grob> and fill it from a grob.
9152         (extract_item_set): idem for item.
9153
9154         * lily/break-substitution.cc: add header.
9155         (fast_substitute_grob_array): rewrite for Grob_arrays.
9156         (substitute_grob_array): idem.
9157
9158         * lily/group-interface.cc (add_thing): remove file.
9159
9160         * flower/include/parray.hh (class Link_array): slice() is const.
9161
9162         * lily/include/grob-array.hh: new file.
9163
9164         * lily/grob-array.cc (spanner): new file.
9165
9166         * lily/beam-quanting.cc (fill): read details property from beam.
9167
9168         * lily/beam.cc: support details property.
9169
9170         * total speedups below: approx 10%.
9171
9172         * lily/include/beam.hh: new struct, softcode beam quanting parameters
9173
9174         * lily/include/grob.hh (class Grob): add interfaces_ member.
9175
9176         * lily/bezier.cc (init_polynomial_cache): new function: cache
9177         binom(3,j) t^j (1-t)^{3-j}
9178         (curve_point): opps, actually use the cache for t^j , (1-t)^j! 
9179
9180         * lily/*.cc: substitution throughout.
9181
9182         * lily/grob-property.cc (internal_get_object): new routine.
9183         (internal_set_object): idem. Store grob refrences in separate
9184         alist. This saves processing time, since properties aren't
9185         break-substituted, and the per grob namespace is smaller, both for
9186         grobs and non-grob properties.
9187
9188         * scm/define-grob-properties.scm (all-internal-grob-properties):
9189         remove center-element.
9190
9191         * lily/grob.cc: remove tweak-count, tweak-rank.
9192
9193 2005-07-15  Graham Percival  <gperlist@shaw.ca>
9194
9195         * Documentation/user/lilypond-book.itely: fixes example.
9196
9197 2005-07-15  Nicolas Sceaux  <nicolas.sceaux@free.fr>
9198
9199         * Documentation/user/global.itely (Creating titles):    
9200         * Documentation/user/examples.itely (All headers): change the
9201         place of \header in \score blocks (after music block) to make
9202         examples compile (cf. changes on parser.yy on 2005-07-10)
9203
9204 2005-07-13  Graham Percival  <gperlist@shaw.ca>
9205
9206         * python/convertrules.py: add exc -> ecc rule.
9207
9208         * scripts/convert-ly.py: add location of convertrules.py
9209         in a comment.
9210
9211         * Documentation/user/changing-defaults.itely: fix language.
9212
9213 2005-07-12  Jan Nieuwenhuizen  <janneke@gnu.org>
9214
9215         * lily/lily-parser-scheme.cc (LY_DEFINE): Guile 1.6 fix.
9216
9217 2005-07-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9218
9219         * scm/output-socket.scm (grob-bbox): don't use inf? 
9220
9221         * flower/include/rational.hh: add operator bool() 
9222
9223         * scm/define-music-types.scm (music-descriptions): remove
9224         internal-class-name properties.
9225
9226         * lily/include/event.hh: remove file.
9227
9228         * lily/include/music-constructor.hh: remove file.
9229
9230         * lily/parser.yy (Lily_lexer): check EVENT_IDENTIFIER using 'event
9231         in 'types property.
9232
9233         * lily/music.cc (duration_length_callback): new function.
9234
9235         * lily/event.cc: remove file.
9236
9237         * lily/music-constructor.cc: remove file.
9238
9239         * lily/music-scheme.cc (LY_DEFINE): rename to ly:make-music
9240
9241         * lily/context.cc (get_grob_key): nop if use_object_keys not set.
9242         (get_context_key): idem.
9243
9244         * scm/lily.scm (lambda): new option object-keys (default to #f)
9245
9246         * scm/output-svg.scm (utf-8-string): rename  from utf8-string.
9247
9248         * scm/output-gnome.scm: remove beam routine.
9249
9250         * scm/output-ps.scm (scm): idem.
9251
9252         * scm/output-svg.scm: remove beam.
9253
9254         * ps/music-drawing-routines.ps: remove draw_beam.
9255
9256         * lily/lookup.cc (beam): use round_filled_polygon() for beam.
9257
9258         * flower/include/guile-compatibility.hh (scm_from_locale_string):
9259         add scm_from_locale_string compatibility glue. 
9260
9261 2005-07-13  Yoshinobu Ishizaki  <isizaki@mte.biglobe.ne.jp>
9262
9263         * scripts/lilypond-book.py: Prevent occuring error when
9264         'lilypond-book --output=foo/ somefile.ly' is executed multiple
9265         times and target file shoud be overwritten.  (Error message said
9266         'input file and output file is same'.)
9267
9268 2005-07-13  Graham Percival  <gperlist@shaw.ca>
9269
9270         * input/regression/slur-extreme.ly,
9271         input/regression/slur-scoring.ly, lily/slur-configuration.cc,
9272         lily/slur.cc, mf/feta-din-code.mf, mf/feta-timesig.mf,
9273         mf/parmesan-heads.mf, scm/define-grob-properties.scm: Change
9274         "excentricity" to "eccentricity".
9275
9276         * Documentation/user/converters.itely: fix URL for Noteedit and
9277         Rosegarden.
9278
9279         * THANKS: added Yoshinobu Ishizaki.
9280
9281 2005-07-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9282
9283         * scm/define-markup-commands.scm (justify-field): add. 
9284
9285         * scm/define-grobs.scm (all-grob-descriptions): decrease font size.
9286
9287 2005-07-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9288
9289         * lily/lookup.cc (filled_box): express filled_box with
9290         round_filled_box
9291
9292         * scm/midi.scm (paper-book-write-midis): new function. Write all
9293         performances in numbered MIDI files.
9294
9295         * lily/performance-scheme.cc (LY_DEFINE): new file.
9296         (LY_DEFINE): new function ly:performance-write.
9297
9298         * lily/lily-parser-scheme.cc (LY_DEFINE): ly:parser-output-name:
9299         new function.
9300         (LY_DEFINE): change name ly:parser-define -> ly:parser-define!
9301
9302         * scm/framework-*.scm: use port arguments throughout.
9303
9304         * lily/include/lily-guile.hh: rename ly_c_X_p -> ly_is_X
9305
9306         * lily/paper-outputter.cc (Paper_outputter): take port argument.
9307
9308         * lily/paper-outputter-scheme.cc (LY_DEFINE): take port argument.
9309
9310         * scm/framework-texstr.scm (output-framework): 
9311
9312         * input/regression/repeat-fold.ly (texidoc): remove TeX strings.
9313
9314         * scm/output-lib.scm (tablature-stem-attachment-function):
9315         tablature stem attachment fix. 
9316
9317 2005-07-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9318
9319         * lily/bezier.cc: hardcode binomial coefficients of order 3.
9320
9321         * lily/include/music-wrapper.hh: remove Music_wrapper as Music subtype.
9322
9323         * scm/define-music-types.scm (music-descriptions): don't use
9324         Music_wrapper type.
9325
9326         * lily/paper-column.cc (print): print moment too.
9327
9328         * scripts/mup2ly.py (cp_to_dir): remove 1.5.2 compat glue.  
9329         remove compatibility cruft.
9330
9331         * lily/parser.yy (score_body): \score can only begin with Music. 
9332
9333         * lily/score-scheme.cc (LY_DEFINE): rename scorify to
9334         make-score. Take music argument only. Move parser interaction to
9335         Scheme.
9336
9337         * scm/lily-library.scm (scorify-music): new function.
9338
9339         * python/lilylib.py (datadir): remove 2.1 compat kludge.
9340         (datadir): remove resource import.
9341         (print_environment): remove get_bbox()
9342         (cp_to_dir): remove pre 1.5.2 compat glue.
9343
9344 2005-07-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9345
9346         * lily/include/simple-spacer.hh (Module): idem.
9347
9348         * lily/include/spring.hh (struct Spring): store inverse
9349         strength. This prevents division by zero.
9350
9351         * VERSION: release 2.7.0
9352         
9353         * lily/include/music.hh (class Music): remove Music::duration_log()
9354
9355         * lily/stem-engraver.cc (make_stem): take duration log from event.
9356
9357         * lily/chord-tremolo-engraver.cc: don't ack note-head-interface.
9358
9359 2005-07-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9360
9361         * scm/lily.scm (ly:load): load autochange.scm
9362
9363         * Documentation/user/tutorial.itely (Running LilyPond for the
9364         first time): remove reference to DVI/TeX
9365
9366         * scm/define-markup-commands.scm (text): add \text markup command.
9367
9368         * configure.in (reloc_b): bump requirement to Python 2.2.
9369
9370         * lily/include/dots.hh (class Dots): make has_interface() static.
9371
9372         * python/convertrules.py (conv): add rule for ly:grob-default-font
9373
9374         * scm/define-grobs.scm (all-grob-descriptions): reorganize in
9375         alphabetical order.
9376
9377         * input/regression/trill-spanner-pitched.ly: new file.
9378
9379         * lily/font-interface-scheme.cc (LY_DEFINE): function
9380         ly:grob-default-font (changed from get-default-font).
9381
9382         * lily/axis-group-interface-scheme.cc (LY_DEFINE): new file.
9383
9384         * lily/note-head.cc (internal_print): if style is not a symbol,
9385         set style to 'default. 
9386         (internal_print): no style suffix if glyph-name-procedure not
9387         set. Default to quarter head.
9388
9389         * scm/define-grobs.scm (Module): new grob TrillPitchHead.
9390
9391         * scm/define-music-properties.scm (all-music-properties): add trill-pitch.
9392
9393         * ly/music-functions-init.ly: \pitchedTrill
9394
9395         * lily/pitched-trill-engraver.cc (acknowledge_grob): new file.
9396
9397         * ly/Welcome_to_LilyPond.ly: update to 2.6.0
9398
9399         * lily/trill-spanner-engraver.cc (finalize): rename req -> event
9400
9401         * scm/define-markup-commands.scm (pad-markup): pad-markup command.
9402
9403         * po/fr.po: update
9404
9405         * po/de.po: update.
9406
9407 2005-07-06  Graham Percival  <gperlist@shaw.ca>
9408
9409         * Documentation/user/changing-defaults.itely: add link
9410         to grob-iterface.
9411
9412         * Documentation/user/advanced-notation.itely: add material
9413         to Setting automatic beam behaviour.  Thanks, Joe!
9414
9415         * Documentation/user/lilypond.itely: change encoding to utf-8.
9416
9417 2005-07-01  Mats Bengtsson  <mabe@s3.kth.se>
9418
9419         * Documentation/user/advanced-notation.itely (Setting automatic
9420         beam behavior): Correct the documentation of
9421         revert-auto-beam-setting (backportme)
9422
9423 2005-07-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9424
9425         * lily/ly-module.cc (ly_make_anonymous_module): define
9426         %module-public-interface of module. 
9427
9428         * lily/lily-parser.cc (print_smob): allow printing of parser smob
9429         without lexer.
9430
9431 2005-07-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9432
9433         * input/regression/fret-diagrams.ly: stretch example.
9434
9435 2005-06-30  Jan Nieuwenhuizen  <janneke@gnu.org>
9436
9437         * cygwin/GNUmakefile ($(outdir)/%.sh): Bugfix: use TAB (Bertalan
9438         Fodor).
9439
9440 2005-06-30  Graham Percival  <gperlist@shaw.ca>
9441
9442         * Documentation/topdocs/AUTHORS.texi: update personal web address.
9443
9444         * Documentation/user/examples.itely, lilypond-book.itely:
9445         change \RequirePackage to \usepackage.
9446
9447         * Documentation/user/global.itely: document copyright and tagline.
9448
9449 2005-06-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9450
9451         * Documentation/user/basic-notation.itely (Transpose): remove link
9452         to nonexistent UntransposableMusic.
9453
9454         * scm/output-svg.scm: remove old definitions.
9455
9456         * scripts/lilypond-book.py (do_file): search for kpsewhich before
9457         invoking.
9458
9459         * python/lilylib.py (search_exe_path): new function.
9460
9461 2005-06-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9462
9463         * python/lilylib.py (mkdir_p): remove setup_environment()
9464         (backportme)
9465
9466         * buildscripts/mutopia-index.py (headertext): trim text.
9467
9468         * Documentation/topdocs/NEWS.tely (Top): refresh.
9469
9470         * scm/define-markup-commands.scm (wordwrap-string): new function:
9471         split string in paras and words.
9472         (wordwrap-markups): new function.
9473         (wordwrap-stencils): new function. 
9474         (justify): use it.
9475         (wordwrap): use it.
9476         (wordwrap-string): use it
9477         (justify-string): use it.
9478
9479         * scm/lily-library.scm (regexp-split): new function.
9480
9481         * scm/define-markup-commands.scm: remove encoded-simple. 
9482         remove font-markup.
9483         (fontsize): remove old version  of fontsize.
9484         (wordwrap): new markup function. Wrap into paragraphs.
9485
9486         * VERSION: Branch lilypond_2_6
9487         (MINOR_VERSION): go to 2.7.0
9488
9489 2005-06-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9490
9491         * po/zh_TW.po: update from translation project.
9492
9493 2005-06-28  Graham Percival  <gperlist@shaw.ca>
9494
9495         * scm/midi.scm: compile fix.
9496
9497 2005-06-28  Mats Bengtsson  <mabe@s3.kth.se>
9498
9499         * scripts/lilypond-book.py : Fix embarrassing bug in my previous
9500         patch. Now, the tempfile module is loaded too, not only used.
9501
9502 2005-06-28  Stephen Charles McCarthy  <stecmccarthy@hotpop.com>
9503
9504         * scm/midi.scm: changed midi volumes in absolute-volume-alist from
9505         0.05 - 1.00 to 0.25 - 1.00
9506
9507         * scm/midi.scm: moved the default-instrument-equalizer procedure
9508         to just under the insturment-equalizer-alist it takes as an
9509         argument.
9510
9511 2005-06-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9512
9513         * Documentation/user/advanced-notation.itely (Font selection):
9514         remove CMR note.
9515
9516         * scm/framework-ps.scm (write-preamble): ly:warning iso. ly:warn 
9517
9518 2005-06-28  Jan Nieuwenhuizen  <janneke@gnu.org>
9519
9520         * THANKS: Add UTF-8 marker.
9521
9522         * Documentation/user/point-and-click.itely (http): Update: use
9523         lilypond-invoke-editor.  Fix: instruct to use user.js.
9524
9525 2005-06-27  Graham Percival  <gperlist@shaw.ca>
9526
9527         * ly/titling-init.ly: implements printpagenumber, increases
9528         space between dedication and title (to avoid collisions with
9529         "g" and "q" in dedication), and nicer logic about copyright
9530         and instrument fields being printed on the first page.
9531         Thanks Vincent!
9532
9533         * Documentation/user/global.itely: document printpagenumber.
9534
9535 2005-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
9536
9537         * Documentation/topdocs/NEWS.tely: Update to 2.6.
9538
9539 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9540
9541         * THANKS: update to 2.6
9542
9543         * VERSION: 2.6.0 released.
9544
9545 2005-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
9546
9547         * cygwin/GNUmakefile (OUT_POSTREMOVES): Reinclude install script
9548         rule, errorneously removed probably because of misleading comment.
9549
9550 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9551
9552         * python/lilylib.py (datadir): py2exe comments.
9553
9554         * Documentation/topdocs/INSTALL.texi (Top): remove EC fonts requirement.
9555
9556         * configure.in (reloc_b): make fontconfig REQUIRED.
9557
9558 2005-06-27  Heikki Junes <hjunes@cc.hut.fi>
9559
9560         * po/fi.po: add latest translations.
9561
9562 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9563
9564         * ChangeLog: recode utf-8
9565
9566         * Documentation/pictures/lilypond.xpm (Module): edited photo as
9567         logo.
9568
9569         * Documentation/user/examples.itely (Module): 2.4.0 -> 2.6.0
9570
9571         * input/*.ly (Module): 2.4 -> 2.6 grand convert-ly s/r. 
9572
9573         * python/convertrules.py (do_conversion): don't print program_name
9574         from within a module
9575
9576         * configure.in (reloc_b): bump fontforge requirement to 20050624.
9577
9578         * python/convertrules.py (conv): add 2.6.0 dummy rule.
9579
9580 2005-06-23  Graham Percival  <gperlist@shaw.ca>
9581
9582         * Documentation/user/lilypond-book.itely,
9583         Documentation/user/examples.itely: add \RequirePackage{graphics}.
9584
9585         * ly/titling.ly: checks printfirstpagenumber, adds meter, and
9586         fixes baseline-skip.  Thanks Vincent!
9587
9588         * Documentation/user/advanced-notation.itely, global.itely:
9589         moved "Selecting font sizes" to global, since it deals with
9590         notation font size, not text fonts.
9591
9592 2005-06-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9593
9594         * buildscripts/gen-emmentaler-scripts.py (notice): add GPL notice
9595         to fonts.
9596
9597 2005-06-23  Mats Bengtsson  <mabe@s3.kth.se>
9598
9599         * scripts/lilypond-book.py (LATEX_DOCUMENT): More or less ugly
9600         workaround since /dev/stdin doesn't work on Cygwin. Using a
9601         temporary file in the current directory since latex doesn't
9602         understand the path name to the default TMP in Cygwin (at least on
9603         win XP).
9604         
9605         * Documentation/user/global.itely (Creating titles): Correct
9606         misprint in example. Thanks to Rob Vlasaty.
9607
9608 2005-06-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9609
9610         * VERSION (PATCH_LEVEL): release 2.5.32
9611
9612         * lily/lily-parser-scheme.cc (LY_DEFINE): don't set 'parser
9613         variable in lily module
9614
9615         * scm/framework-ps.scm (output-classic-framework): error message
9616         regarding the classic framework.
9617
9618         * Documentation/user/henle-flat-gray.png (Module): new file.
9619
9620         * Documentation/user/baer-flat-gray.png (Module): new file.
9621
9622         * scm/output-lib.scm (fret-number-tablature-format): vcenter and
9623         whiteout for markups.
9624
9625         * buildscripts/substitute-encoding.py (note_glyph): include _ in
9626         regex too. This fixes change clef appearance in PDF. 
9627
9628         * ttftool/include/*: remove.
9629
9630         * configure.in (reloc_b): remove TTFTOOL_ENDIAN
9631
9632         * config.make.in (WINDRES): remove TTFTOOL_ENDIAN.
9633
9634         * lily/GNUmakefile (MODULE_INCLUDES): remove ttftool
9635
9636         * ttftool/*: remove ttftool subdirectory.
9637
9638         * GNUmakefile.in (SUBDIRS): remove ttftool subdirectory.
9639
9640         * lily/ttf.cc (print_header): new file. Convert to type42, using
9641         FreeType to parse the TTF. 
9642
9643         * ttftool/parse.c (readPostTable): ugh. Kludge: nglyphs in maxp
9644         and post table may differ. Pass around post_nglyphs as well.
9645
9646 2005-06-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9647
9648         * ly/music-functions-init.ly (musicMap): new music function
9649         musicMap. 
9650         
9651 2005-06-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9652
9653         * make/mutopia-rules.make: anti-alias-factor = 2
9654
9655         * scm/ps-to-png.scm (make-ps-images): cleanup multipage vs. single
9656         page switch.
9657
9658         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): set
9659         anti-alias-factor for lilypond-book runs.
9660
9661         * scm/ps-to-png.scm (scale-down-image): new function.
9662         (my-system): new function.
9663         (make-ps-images): blow up GS resolution by anti-alias-factor,
9664         scale down image by anti-alias-factor.  This improves appearance
9665         of bitmaps
9666         (make-ps-images): remove showpage. Fixes spurious empty png at
9667         end.
9668
9669         * scm/framework-ps.scm (write-preamble): downcase filename before
9670         string-matching. Should fix .TTF files (as opposed to ttf files)  
9671
9672         * Documentation/user/tutorial.itely (Running LilyPond for the
9673         first time): separate subsections for windows, macos and unix.  
9674
9675         * Documentation/user/invoking.itely (Updating files with
9676         convert-ly): add MacOS X note.
9677
9678 2005-06-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9679
9680         * Documentation/user/introduction.itely (Engraving): don't include
9681         file optical-spacing, add directly.
9682
9683         * lily/paper-outputter.cc (file): open file in binary mode. This
9684         fixes OTF embedding on windows.
9685
9686 2005-06-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9687
9688         * scm/framework-ps.scm (write-preamble): remove debugging output.
9689
9690         * mf/aybabtu.pe.in (i): don't generate aybabtu.cff
9691
9692         * mf/GNUmakefile ($(outdir)/fonts.cache-1): create font cache for
9693         outdir.
9694         (install-fc-cache): install font cache in installation directories.
9695
9696 2005-06-17  Jan Nieuwenhuizen  <janneke@gnu.org>
9697
9698         * scm/editor.scm (editor-command-template-alist): Use char iso
9699         column, except for Emacs.
9700         (get-editor-command): Substitute char too (Bertalan Fodor).
9701
9702 2005-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
9703
9704         * scm/ps-to-png.scm (make-ps-images): Use ~S instead of single
9705         quoted ~s.  This should fix PNG output on Windows; single quotes
9706         are regular characters on Windows.
9707
9708 2005-06-16  Graham Percival  <gperlist@shaw.ca>
9709
9710         * Documentation/user/basic-notation.itely: include ChoirStaff
9711         in System start delimiters.
9712
9713         * Documentation/user/putting.itely: new doc section on
9714         fixing overlapping notation.
9715
9716 2005-06-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9717
9718         * Documentation/user/global.itely (Paper size): \paper is in
9719         \book, not \score.
9720
9721         * make/mutopia-rules.make: -ddelete-intermediate-files
9722
9723         * ly/engraver-init.ly: make Staff default child of ChoirStaff.
9724
9725 2005-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
9726
9727         * ChangeLog: Recode utf-8.
9728
9729         * python/GNUmakefile (INSTALLATION_OUT_DIR): Install .so module in
9730         datadir with .py modules.
9731
9732 2005-06-15  Heikki Junes  <hjunes@cc.hut.fi>
9733
9734         * Documentation/user/basic-notation.itely (Ties): add tieDashed.
9735
9736 2005-06-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9737
9738         * make/mutopia-rules.make: switch off ps, p&c for lilypond runs.
9739         
9740         * scm/framework-ps.scm (write-preamble): remove status check.
9741
9742         * Documentation/user/invoking.itely (Updating files with
9743         convert-ly): remove -o option.
9744
9745         * VERSION (PACKAGE_NAME): release 2.5.31
9746
9747         * scm/framework-ps.scm (write-preamble): use ly:system.
9748         (write-preamble): verbosity.
9749
9750         * scripts/convert-ly.py: cleanup. Use lilylib. Use convertrules.
9751
9752         * python/convertrules.py: new file. Store conversion rules
9753         separately.
9754
9755 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9756
9757         * scm/backend-library.scm (postprocess-output): remove debugging gobs.
9758
9759 2005-06-14  Mats Bengtsson  <mabe@s3.kth.se>
9760
9761         * Documentation/topdocs/NEWS.tely (Top): Corrected name of
9762         \musicDisplay 
9763
9764         * Documentation/user/instrument-notation.itely (More stanzas): Add
9765         reference to StanzaNumber.
9766
9767 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9768
9769         * THANKS: separate section for website translators.
9770
9771 2005-06-14  Graham Percival  <gperlist@shaw.ca>
9772
9773         * Documentation/topdocs/INSTALL.texi: update vim info;
9774         thanks Simon Bailey!
9775
9776         * Documentation/user/advanced-notation.itely: included
9777         color names.
9778
9779         * Documentation/user/advanced-notation.itely,
9780         Documentation/usr/notation-appendices.itely: moved
9781         color names into an appendix.
9782
9783 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9784         
9785         * lily/program-option.cc (LY_DEFINE): new function ly_add_option.
9786
9787         * scm/lily.scm (lambda): initialize program options from here.
9788
9789         * scm/framework-*.scm: add header info.
9790
9791         * lily/main.cc (parse_argv): only set output format to pdf if no
9792         other format specified.
9793
9794         * scm/backend-library.scm (postprocess-output): process
9795         'delete-intermediate-files after running convert-to-*. This fixes
9796         PNG generation when 'delete-intermediate-files is set.
9797         
9798 2005-06-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9799
9800         * buildscripts/mutopia-index.py (list_item): thinko. Fixes png
9801         links on website. 
9802
9803 2005-06-13  Graham Percival  <gperlist@shaw.ca>
9804
9805         * Documentation/topdocs/INSTALL.texi,
9806         Documentation/user/lilypond-book.itely: typos.
9807
9808 2005-06-12  Pal Benko  <benkop@freestart.hu>
9809
9810         * elisp/lilypond-mode.el (LilyPond-command-alist: 2PS): space
9811         added between program name and switch; -b changed to -f not
9812         to generate pdf
9813
9814 2005-06-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9815
9816         * elisp/lilypond-mode.el (LilyPond-command-alist): remove 2midi
9817         (LilyPond-command-alist): use -f ps (thanks to Pal Benko)
9818
9819         * input/sakura-sakura.ly: add \midi.
9820
9821         * buildscripts/mutopia-index.py (find): use /usr/bin/find
9822         iso. python find. 
9823
9824         * ttftool/test.c (main): cosmetics.
9825
9826         * ttftool/util.c (surely_lseek): use stdio FILE's for I/O 
9827
9828         * ttftool/test.c: new file. If compiled with -DTEST_TTFTOOL,
9829         create a ttf2ps binary.
9830
9831         * scm/ps-to-png.scm (make-ps-images): fix rename-page-1 functionality.
9832
9833         * scm/backend-library.scm (postscript->png): set rename-page-1 to
9834         true.
9835
9836 2005-06-11  Graham Percival <gperlist@shaw.ca>
9837
9838         * Documentation/user/lilypond-book.itely: add warning about
9839         the font warnings in dvips.
9840
9841 2005-06-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9842
9843         * THANKS: typo
9844
9845         * mf/GNUmakefile ($(outdir)/$(redhat-package)): Fedora-4 url.
9846
9847         * GNUmakefile.in: remove links for .map, .enc
9848         don't fail if out/ doesn't exist yet.
9849
9850 2005-06-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9851
9852         * ttftool/util.c (surely_read): return nbytes
9853
9854         * stepmake/bin/text2html.py (txt2html): add utf-8 marker. 
9855
9856         * VERSION (PACKAGE_NAME): release 2.5.30
9857
9858         * flower/string-convert.cc (precision_string): >? fix.
9859
9860         * scm/ps-to-png.scm (make-ps-images): search-gs for multipage too.
9861         (make-ps-images): add verbose -q too.
9862
9863         * lily/default-actions.cc (Module): new file. default
9864         {book,score}-print functions.
9865
9866         * scm/ly-from-scheme.scm (ly:parse-string-result): use new setup:
9867         pass results via parseStringResult, lookup via ly:parser-lookup.  
9868
9869         * lily/lily-parser.cc (Lily_parser): only clone lexer in
9870         constructors.
9871         (parse_file): encapsulate do_yyparse() in scm_set_current_module()
9872         (parse_string): idem.
9873
9874         * ly/spanners-init.ly (assertBeamQuant): don't use #{ #} in init.
9875
9876         * lily/main.cc (main_with_guile): copy be_verbose_global into
9877         ly_set_option()
9878
9879 2005-06-10  Jan Nieuwenhuizen  <janneke@gnu.org>
9880
9881         * scm/backend-library.scm (postscript->pdf):
9882         * scm/ps-to-png.scm (make-ps-images): Do not use gs -q switch in
9883         verbose mode.  Search for several names of gs executable.
9884
9885 2005-06-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9886
9887         * lily/ly-module.cc (ly_make_anonymous_module): call make-module
9888         directly. This fixes a massive memory leak, provided you use CVS
9889         GUILE.
9890
9891 2005-06-10  Erik Sandberg  <ersa9195@student.uu.se>
9892
9893         * ly/property-init.ly: Added tieDashed.
9894
9895         * THANKS: Added some bughunters for 2.5.
9896
9897 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9898
9899         * lily/program-option.cc: add debug-gc option.
9900
9901         * lily/include/lily-guile-macros.hh: don't protect exported module
9902         objects.
9903
9904         * lily/include/lily-parser.hh (class Lily_parser): remove beam_check().
9905
9906         * scm/backend-library.scm (postscript->pdf): use
9907         delete-intermediate-files iso. running-from-gui? 
9908
9909         * ttftool/util.c (surely_read): robustness. Allow read() to return
9910         less bytes than requested, as per posix standards.
9911
9912         * lily/pfb.cc (LY_DEFINE): set ttf_verbosity from ttf-verbosity
9913         program option.
9914
9915         * ttftool/include/ttftool.h ("C"): rename verbosity to
9916         ttf_verbosity. Add to public interface.
9917
9918         * scm/music-functions.scm (unfold-repeats): remove debugging display.
9919
9920         * lily/program-option.cc: rename from scm-option.cc
9921
9922         * lily/scm-option.cc (LY_DEFINE): handle no-foobar option setting.
9923         (get_help_string): Print pretty help string.
9924
9925         * scripts/lilypond-book.py (PREAMBLE_LY): add no-point-and-click
9926         to snippet preamble.
9927
9928         * lily/scm-option.cc: remove command-line-settings option. Fold
9929         all command-line options plus default settings in a generic
9930         interface. 
9931
9932         * flower/getopt-long.cc (table_string): indent 2nd lines of help
9933         texts too.
9934
9935 2005-06-09  Jan Nieuwenhuizen  <janneke@gnu.org>
9936
9937         * flower/file-name.cc: Bugfix: only append DIRSEP if BASE_
9938         or EXT_ components non-empty.
9939
9940 2005-06-08  Jan Nieuwenhuizen  <janneke@gnu.org>
9941
9942         * scm/lily.scm (running-from-gui?): Export.
9943
9944         * lily/lily-parser-scheme.cc (ly:parse-file): Use it to generate
9945         output in .ly source directory.
9946
9947 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9948
9949         * ttftool/util.c (surely_lseek): more verbosity.
9950
9951         * lily/include/lily-proto.hh: add Context_def. This fixes FC4
9952         compile.
9953
9954         * lily/parser.yy (Repeated_music): remove >? 
9955
9956         * scm/backend-library.scm (postscript->pdf): Support for
9957         -dgs-font-load=1
9958
9959         * scm/framework-ps.scm (write-preamble): make font loading
9960         switchable to GS via --define-default gs-font-load=1
9961
9962 2005-06-09  Graham Percival  <gperlist@shaw.ca>
9963
9964         * Documentation/user/global.itely: added \layout docs.
9965
9966 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9967
9968         * lily/lily-parser-scheme.cc: add unistd.h
9969
9970 2005-06-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9971
9972         * scm/editor.scm: add char argument.
9973
9974         * scripts/lilypond-invoke-editor.scm (dissect-uri): add char. 
9975
9976         * ttftool/util.c (syserror): use errno for better error reporting.
9977
9978         * lily/source-file.cc (get_counts): new function. Calc column,
9979         line and char count in one go.
9980
9981         * lily/binary-source-file.cc (quote_input): rename to quote_input
9982
9983         * lily/input.cc (set): new function.
9984
9985 2005-06-08  Jan Nieuwenhuizen  <janneke@gnu.org>
9986
9987         * flower/file-path.cc (find): Bugfix.  Append rather than prepend
9988         directory part of file name to search directory.
9989
9990         * lily/lily-parser-scheme.cc (ly:parse-file): Prepend cwd to
9991         search path and chdir to DIR if --outname=DIR used.
9992
9993         * lily/main.cc (prepend_env_path): Bugfix: Check directory
9994         existence before appending original path.
9995
9996 2005-06-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9997
9998         * ttftool/parse.c (readNamingTable): verbosity for "bad TTF
9999         file" massage.
10000
10001         * Documentation/user/GNUmakefile (TEXINPUTS): set TEXINPUTS so our
10002         texinfo.tex is always used.
10003         
10004 2005-06-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10005
10006         * flower/include/axis.hh: rename from axes.hh
10007
10008         * lily/include/text-interface.hh (Module): rename from text-item.hh
10009
10010         * VERSION (PATCH_LEVEL): release 2.5.29
10011
10012         * ttftool/parse.c (readNamingTable): handle Apple/8bit encoding too.
10013
10014         * scm/framework-ps.scm (font-file-as-ps-string): new function.
10015         (handle-macfont): new function. Call fondu for Native mac fonts.
10016
10017         * scm/define-markup-commands.scm (fill-line): handle text-widths =
10018         '() case.
10019
10020 2005-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
10021
10022         * scm/ps-to-png.scm (make-ps-images): Bugfix: `Pages: 1\n' is not
10023         multi-page.  Fix .eps regular expression.
10024
10025 2005-06-07  Graham Percival  <gperlist@shaw.ca>
10026
10027         * Documentation/user/putting.itely: add info on modifying templates.
10028
10029         * Documentation/user/lilypond.itely, converters.itely, invoking.itely:
10030         misc small changes.
10031
10032 2005-06-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10033
10034         * scm/ps-to-png.scm (make-ps-images): no paper size for multi-page.
10035
10036         * scripts/lilypond-ps2png.scm
10037
10038         * VERSION (PACKAGE_NAME): release 2.5.28
10039
10040 2005-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
10041
10042         * lily/main.cc (prepend_env_path): Do not append /, that does not
10043         work.  Localedir lives in datadir, not in prefix.
10044
10045         * scm/framework-ps.scm (write-preamble): Remove load-font-via-GS
10046         hack for windows.
10047
10048         * flower/include/file-cookie.hh: Compile fix.
10049
10050 2005-06-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10051
10052         * ly/engraver-init.ly: add \defaultchild to InnerStaffGroup. 
10053
10054         * scm/ps-to-png.scm (gulp-port): rename from read. Don't redefine
10055         system primitives.
10056         (gulp-port): using read-string!/partial. We don't want to read an
10057         entire PS file  (GUILE 1.6 limits strings to 16M) 
10058
10059         * scm/define-grobs.scm (all-grob-descriptions): remove arch-*
10060         properties. Add font-interface. 
10061
10062         * scm/define-grob-properties.scm (all-user-grob-properties):
10063         remove old bracket properties.
10064
10065         * scm/x11-color.scm: reformat. 
10066
10067         * lily/ledger-line-engraver.cc (acknowledge_grob): create new
10068         LedgerLineSpanner if new StaffSymbol is found. 
10069
10070         * lily/staff-symbol-engraver.cc (acknowledge_grob): also set
10071         staff-symbol for finishing staff. 
10072
10073         * lily/GNUmakefile (OUT_DIST_FILES): don't dist Flex output
10074
10075         * scm/output-svg.scm (setcolor): implement (re)setcolor with <g>
10076         change black to currentColor everywhere. This fixes color support
10077         in SVG.
10078
10079 2005-06-06  Carl Sorensen  <carldsorensen@comcast.net>
10080
10081         * input/regression/fret-diagrams.ly: new file to test fret diagram
10082         capability
10083
10084         * scm/output-tex.scm: remove white-dot and white-text
10085
10086         * scm/output-ps.scm: remove white-dot and white-text
10087
10088         * scm/fret-diagrams.scm (sans-serif-stencil-white): removed -- 
10089         using ly:stencil-in-color instead
10090         (draw-dots) : remove call to white-dot
10091
10092 2005-06-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10093
10094         * flower/memory-stream.cc (Memory_out_stream): remove fopencookie
10095         support.
10096
10097         * ttftool/ttfps.c: use lily_cookie functions everywhere. 
10098
10099         * flower/include/file-cookie.hh: new file. lily_cookie extension 
10100
10101         * flower/file-cookie.cc: new file. lily_cookie extension.
10102         
10103 2005-06-06  Jan Nieuwenhuizen  <janneke@gnu.org>
10104
10105         * scm/editor.scm (editor-command-template-alist): Add syn
10106         editor (Jaap [de Vos]).
10107
10108 2005-06-05  Jan Nieuwenhuizen  <janneke@gnu.org>
10109
10110         * scripts/lilypond-ps2png.scm:
10111         * scm/ps-to-png.scm: New file.
10112
10113         * scm/backend-library.scm (postscript->png): Use it.
10114
10115         * scripts/lilypond-ps-to-png.py: Remove file.
10116
10117         * python/lilylib.py (get_bbox, make_ps_images): Remove.
10118
10119 2005-06-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10120
10121         * lily/auto-beam-engraver.cc (acknowledge_grob): remove dead code.
10122
10123         * scm/auto-beam.scm (default-auto-beam-check): only forbid beam
10124         start on grace moment. Fixes autobeam-grace.ly.
10125
10126         * lily/auto-beam-engraver.cc (process_acknowledged_grobs): don't
10127         process anything unless we're at the end of a pending beam. Fixes
10128         syncopated 8ths beamed across a beat.
10129
10130 2005-06-03  Jan Nieuwenhuizen  <janneke@gnu.org>
10131
10132         * scm/editor.scm (editor-command-template-alist): Start emacs if
10133         emacslient fails.
10134
10135         * lily/main.cc (setup_localisation): Listen to LILYPOND_LOCALEDIR.
10136
10137         * flower/file-path.cc (is_file, is_dir): Export.
10138
10139         * lily/main.cc (prepend_env_path, set_env_file): Use them.
10140
10141 2005-06-02  Mats Bengtsson  <mabe@s3.kth.se>
10142
10143         * lily/easy-notation.cc: Added include cctype to correct
10144         compilation error.
10145
10146 2005-06-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10147
10148         * scm/backend-library.scm (postscript->pdf): set resolution to
10149         1200, so bitmap fonts aren't that ugly. 
10150
10151         * Documentation/topdocs/NEWS.tely (Top): add entry about font family.
10152
10153         * lily/dynamic-engraver.cc (acknowledge_grob): only center on
10154         parent if we have a notehead. Fixes incorrect offsets when
10155         Paper_column is very wide in the X direction.
10156
10157         * input/regression/font-family-override.ly (Module): new file.
10158
10159         * scm/font.scm (make-pango-font-tree): new function.
10160
10161         * lily/beam.cc (before_line_breaking): remove warning about less
10162         than 2 visible stems. We still get a warning when there is only
10163         one stem.
10164
10165 2005-06-01  Werner Lemberg  <wl@gnu.org>
10166
10167         * buildscripts/substitute-encoding.py: Handle PFAemmentaler-xx.pfa
10168         correctly.
10169
10170 2005-06-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10171
10172         * lily/slur-scoring.cc (generate_avoid_offsets): new
10173         function. Generate avoid offsets once per slur.
10174
10175         * lily/slur.cc (add_extra_encompass): add dependency to
10176         extra-encompass object. This fixes bugs/c-phrasing-slur.ly
10177
10178         * lily/stencil.cc (is_empty): check dim_ field for is_empty()
10179         too. Fixes inf error with added bass notes.
10180
10181         * scripts/lilypond-book.py (do_options): --psfonts doesn't take
10182         argument anymore.
10183
10184         * make/ly-vars.make (DVIPS_FLAGS): use .psfonts as extension.
10185
10186         * input/tutorial/lbook-latex-test.tex: add line length test.
10187
10188         * scripts/lilypond-book.py (set_default_options): new
10189         function. Call this before dissecting snippets, so linewidth
10190         settings reach the snippets.
10191
10192 2005-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
10193
10194         * scm/lily.scm (PLATFORM, slashify): Remove double slashes.
10195
10196 2005-06-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10197
10198         * input/mutopia/R.Schumann/romanze-op28-2.ly (leftb): bugfix.
10199
10200 2005-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
10201
10202         * stepmake/aclocal.m4: More autopackage friendliness.
10203
10204 2005-05-31  Graham Percival  <gperlist@shaw.ca>
10205
10206         * Documentation/index.html.in: remove link to LSR.
10207
10208         * Documentation/user/global.itely: remove duplicate
10209         "dedication" \header{} section.
10210
10211 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10212
10213         * VERSION (PACKAGE_NAME): release 2.5.27.
10214
10215         * lily/lily-parser-scheme.cc (LY_DEFINE): unprotect paper
10216         too. Plugs memory leak.
10217
10218         * make/lilypond.fedora.spec.in (Group): remove
10219         lilypond-pdfpc-helper.
10220
10221         * scripts/GNUmakefile (SEXECUTABLES): remove
10222         lilypond-pdfpc-helper. Use lilypond-invoke-editor instead.
10223
10224         * scm/font.scm (make-century-schoolbook-tree): add Mono as
10225         'typewriter family.
10226
10227         * lily/score.cc (Score): unprotect copy of Output_def. Plugs
10228         memory leak.
10229
10230         * lily/parser.yy (score_body): don't clone Score, that's done in
10231         Lily_lexer::try_special_identifiers(). This fixes a memory leak.
10232
10233         * lily/score-engraver.cc (derived_mark): new function.
10234         (initialize): unprotect Paper_score. This fixes a memory leak.
10235
10236         * lily/score-performer.cc (derived_mark): new function.
10237
10238         * lily/score-translator.cc (get_output): use SCM for get_output() call.
10239
10240         * stepmake/aclocal.m4: put FlexLexer.h test in conftest.cc. Fixes
10241         spurious warning.
10242
10243         * scm/font.scm (make-century-schoolbook-tree): use Sans for sans
10244         serif.
10245
10246 2005-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
10247
10248         * configure.in (reloc_b): Add --enable-relocation.
10249
10250 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10251
10252         * lily/pfb.cc (LY_DEFINE): show file name when loading PFB. 
10253
10254         * input/regression/alignment-order.ly: add Staff example.
10255
10256 2005-05-31  John Mandereau   <john.mandereau@free.fr>
10257
10258         * po/fr.po: update.
10259
10260 2005-05-31  Graham Percival  <gperlist@shaw.ca>
10261
10262         * Documentation/index.html.in: add link to LSR.
10263
10264 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10265
10266         * scm/define-stencil-commands.scm (Module): new file. Register all
10267         allowed stencil expression heads in a central place.
10268
10269         * lily/stencil-scheme.cc (LY_DEFINE): check is_stencil_head in
10270         ly:make-stencil
10271
10272         * lily/stencil-expression.cc (all_stencil_heads): registering
10273         stencil expressions.
10274
10275         * lily/stencil-interpret.cc: new file. Stencil expression
10276         interpreting.
10277
10278         * input/xiao-haizi-guai-guai.ly: move file back.
10279
10280 2005-05-30  Graham Percival  <gperlist@shaw.ca>
10281
10282         * Documentation/user/advanced.itely, converters.itely,
10283         instrument-notation.itely, lilypond-book.itely: misc small
10284         changes.
10285
10286 2005-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
10287
10288         * lily/lexer.ll: Skip UTF-8 BOM at BOF.
10289
10290         * make/lilypond.fedora.spec.in: Fix source url.
10291
10292         * cygwin: Update from mingw patches.
10293
10294         * scm/editor.scm (editor-command-template-alist): Use jedit
10295         -reuseview (Bertalan), add uedit (Patrick Huberts).
10296
10297         * input/xiao-hai-zi-guai-guai.ly: Rename from
10298         xiao-haizi-guai-guai.ly.
10299
10300         * input/*: Reindent, do not use TAB.
10301
10302         * Documentation/pictures/ly.xpm: Bugfix: do not anti-alias against
10303         white background.
10304
10305 2005-05-29  Jan Nieuwenhuizen  <janneke@gnu.org>
10306
10307         * scm/framework-ps.scm (dump-stencil-as-EPS): Add silly fix for
10308         numerical overflow error.
10309
10310 2005-05-29 Laura Conrad <lconrad@laymusic.org>
10311         
10312         * abc2ly.py: fix to syntax error in multi-part output.
10313
10314 2005-05-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10315
10316         * lily/span-bar.cc (print): sort bar line extents. Fixes problem
10317         with disappearing span bars when alignAboveContext is active
10318
10319         * lily/property-iterator.cc (check_grob): use is-grob?
10320         object-property. Fixes crash-key-sig-font-size.ly. 
10321
10322 2005-05-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10323
10324         * lily/bar-line.cc (print): don't round barlines; this produces
10325         odd aliasing effects in Acroread.
10326
10327         * lily/timing-engraver.cc (process_music): robustness fix.
10328
10329         * lily/context-def.cc (filter_engravers): bugfix.
10330
10331 2005-05-28  Jan Nieuwenhuizen  <janneke@gnu.org>
10332
10333         * lily/lilypond.rc.in: Add ly-icon.
10334
10335         * lily/GNUmakefile: 
10336         * Documentation/pictures/GNUmakefile (OUT_DIST_FILES): Add ly-icon
10337         rules.
10338
10339 2005-05-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10340
10341         * lily/stencil-scheme.cc (LY_DEFINE): ly:stencil-in-color
10342
10343         * ps/music-drawing-routines.ps: 
10344
10345         * scm/output-ps.scm: remove draw ez_ball.
10346
10347         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
10348         EasyNotation context definition.
10349
10350         * lily/easy-notation.cc (brew_ez_stencil): new file. Use
10351         Text_interface and color for making easy note heads.
10352
10353         * lily/stencil.cc (with_color): new function.
10354
10355         * ps/music-drawing-routines.ps: remove draw_zigzag_line
10356
10357         * lily/line-spanner.cc (zigzag_stencil): rewrite to use draw-line
10358         output routine. Zigzag now works in SVG too.
10359
10360         * scm/output-tex.scm (filledbox): idem.
10361
10362         * scm/output-svg.scm (filledbox): idem.
10363
10364         * scm/output-ps.scm (lily-def): remove horizontal-line. 
10365
10366         * lily/lookup.cc (horizontal_line): use draw-line. 
10367
10368         * lily/system-start-delimiter.cc: remove old staff bracket code.
10369
10370         * mf/feta-haak.mf: further tweaks.
10371
10372         * lily/system-start-delimiter.cc (staff_bracket): use glyphs.
10373
10374         * mf/feta-generic.mf: include feta-haak.
10375
10376         * mf/feta-haak.mf: rewrite. Make separate glyphs for the tips 
10377
10378         * scm/framework-ps.scm (write-preamble): only load fonts if their
10379         filename is a string. 
10380
10381 2005-05-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10382
10383         * scm/output-svg.scm (circle): support circle.
10384         (bracket): stub for bracket.
10385
10386         * scripts/lilypond-book.py (main): make sure --psfonts warning is
10387         correct.
10388
10389 2005-05-26  Graham Percival  <gperlist@shaw.ca>
10390
10391         * Documentation/user/lilypond.tely, advanced-notation.itely,
10392         basic-notation.itely, instrument-notation.itely, global.itely,
10393         introduction.itely, tutorial.itely: rearranging, editing,
10394         clean-up.
10395
10396         * mf/GNUmakefile: change a "make -C" to "${MAKE} -C", required
10397         for compiling on FreeBSD.
10398
10399 2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10400
10401         * lily/pfb.cc (LY_DEFINE): progress indication for opening ttf and
10402         otf files.
10403
10404         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly (lower):
10405         bugfixes.
10406
10407         * VERSION: 2.5.26 released.
10408
10409         * scm/titling.scm (marked-up-headfoot): revert Pedro's patch. 
10410
10411 2005-05-25  Pedro Kroger  <kroeger@pedrokroeger.net>
10412
10413         * scm/titling.scm (marked-up-headfoot): doesn't print pagenumbers
10414         if printpagenumber is false.
10415
10416 2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10417
10418         * lily/font-config.cc (init_fontconfig): comment out FontConfig
10419         cache warning.
10420
10421         * lily/tie.cc (print): support dotted ties.
10422         
10423 2005-05-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10424
10425         * scm/define-grobs.scm (all-grob-descriptions): switch off
10426         debugging
10427         (all-grob-descriptions): Arpeggio has Y-extent.
10428
10429         * scm/define-music-properties.scm (all-music-properties): document
10430         length-callback and start-callback as "read-only".
10431
10432         * scm/music-functions.scm (unfold-repeats): rewrite. Cannot set
10433         length-callback after creation. 
10434
10435         * scripts/convert-ly.py (conv): unfoldrepeats -> unfoldRepeats,
10436         compressmusic -> compressMusic.
10437
10438         * ly/music-functions-init.ly (oldaddlyrics): idem.
10439
10440         * lily/parser.yy: NewLyricCombineMusic ->
10441         LyricCombineMusic. LyricCombineMusic -> OldLyricCombineMusic.
10442
10443 2005-05-24  Pedro Kroger  <kroeger@pedrokroeger.net>
10444
10445         * ly/Welcome_to_LilyPond.ly: typo.
10446
10447 2005-05-24  Graham Percival  <gperlist@shaw.ca>
10448
10449         * Documentation/user/lilypond.tely: move changing-defaults to be
10450         before global issues.
10451
10452         * Documentation/user/basic-notation.itely: move Transpose section
10453         here from advanced/Other.
10454
10455         * Documentation/user/changing-defaults.itely,
10456         advanced-notation.itely: move Fonts to advanced, edit.
10457
10458 2005-05-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10459
10460         * lily/parser.yy (bare_int): remove rule.  From now on, we require
10461         # before negative integers.
10462
10463 2005-05-23  Graham Percival  <gperlist@shaw.ca>
10464
10465         * ly/property.ly: Update tieDotted to have the same form as slurDotted.
10466
10467         * Documentation/user/lilypond.tely: change Unified index to
10468         LilyPond index.
10469
10470         * Documentation/user/advanced-notation.itely,
10471         instrument-notation.itely: editing.
10472
10473 2005-05-23  Jan Nieuwenhuizen  <janneke@gnu.org>
10474
10475         * scm/lily.scm (lilypond-all): Bugfix: return failed.
10476
10477         * lily/main.cc (setup_paths)[__MINGW32__]: Normalize LILYPONDPREFIX.
10478
10479 2005-05-21  Jan Nieuwenhuizen  <janneke@gnu.org>
10480
10481         * lily/general-scheme.cc (ly:stderr-redirect): Rename from
10482         ly:port-move.  Needs to be stderr-specific on mingw.
10483         Run fixcc.
10484
10485 2005-05-20  Jan Nieuwenhuizen  <janneke@gnu.org>
10486
10487         * lily/general-scheme.cc (ly:port-move): Remove.
10488
10489         * scm/backend-library.scm (postscript->pdf): Remove -dSAFER in
10490         windows.
10491
10492         * lily/main.cc (setup_paths) [ARGV0_RELOCATION]: Reinstate GS_*
10493         variables.  This eliminates the need for a gs.bat wrapper, which
10494         opens a console.
10495
10496         * scripts/lilypond-invoke-editor.scm (running-from-gui?): 
10497         * scm/lily.scm (running-from-gui?): 
10498         * lily/main.cc[MINGW]: Remove isatty inversion, this is an
10499         artifact of not compiling with -mwindows.
10500
10501         * scm/editor.scm: Define PLATFORM.
10502
10503 2005-05-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10504
10505         * scripts/lilypond-book.py (PREAMBLE_LY): add marker, where people
10506         can start to cut & paste lilypond-book fragments.  
10507
10508         * scm/define-music-types.scm (music-descriptions): remove
10509         UntransposableMusic
10510
10511 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10512
10513         * scm/output-ps.scm (glyph-string): remove / before CIDs.
10514
10515 2005-05-20  Graham Percival  <gperlist@shaw.ca>
10516
10517         * Documentation/user/instrument-notation.itely: remove *Engraver.
10518
10519         * Documentation/user/advanced-notation.itely: edit, rearrange.
10520
10521 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10522
10523         * scm/output-ps.scm (glyph-string): take cid? argument. Use
10524         findresource iso. findfont for CID CFF fonts.
10525
10526         * VERSION (PACKAGE_NAME): release 2.5.25
10527
10528         * ly/Welcome_to_LilyPond.ly: add  \version
10529
10530 2005-05-20  Graham Percival  <gperlist@shaw.ca>
10531
10532         * Documentation/user/programming-interface.itely: move
10533         \displayMusic into its own section.
10534
10535         * Documentation/user/basic-notation.itely: finish editing.
10536
10537 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10538
10539         * flower/file-path.cc (find): don't throw away file_name.dir, but
10540         append to it. Fixes \include with directories.
10541
10542         * flower/include/file-path.hh (class File_path): don't derive from
10543         Array<String>.
10544
10545         * flower/include/file-name.hh (class File_name): remove to_str0()
10546
10547         * lily/hara-kiri-engraver.cc (acknowledge_grob): split
10548         Hara_kiri_engraver in separate file.
10549
10550         * lily/slur-configuration.cc (score_encompass): oops, <? to min()
10551         translation went wrong. Fixes vertically translated slurs.
10552
10553 2005-05-19  Graham Percival  <gperlist@shaw.ca>
10554
10555         * Documentation/user/basic-notaton.itely: editing.
10556
10557 2005-05-18  Graham Percival  <gperlist@shaw.ca>
10558
10559         * Documentation/user/macros.itexi, basic-notation.itely:
10560         add @commonprop (commonly used properties) macro.
10561
10562 2005-05-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10563
10564         * ly/Welcome_to_LilyPond.ly: talk about icon, not program.
10565
10566         * scripts/lilypond-book.py (invokes_lilypond): new function
10567         (main): only run fontextract if invokes_lilypond() is true.
10568
10569         * lily/function-documentation.cc (ly_add_function_documentation):
10570         duh, use !=
10571
10572         * Documentation/topdocs/INSTALL.texi (Top): add MacOS command.
10573
10574         * stepmake/aclocal.m4: remove kpathsea warning, change to OPTIONAL.
10575
10576         * scm/lily.scm (running-from-gui?): lowercase Darwin.
10577
10578         * lily/function-documentation.cc (ly_add_function_documentation):
10579         use scm_hash_table_p() for checking.
10580
10581 2005-05-18  Jan Nieuwenhuizen  <janneke@gnu.org>
10582
10583         * Documentation/user/advanced-notation.itely (Text scripts):
10584         Change nonexisting @internalsref{Text markup} to @ref{Text
10585         markup}.  Change @internalsref{Text script} to
10586         @internalsref{TextScript}.
10587
10588         * lily/main.cc (setup_paths): Bugfix: pangorc is not pango.modules.
10589
10590 2005-05-17  Graham Percival  <gperlist@shaw.ca>
10591
10592         * Documentation/user/tutorial.itely, basic-notation.itely,
10593         changing-defaults.itely: remove duplicate cindex entries
10594         that appear on the same page.
10595
10596         * scm/define-grobs.scm: change default padding for TextSpanner.
10597
10598         * Documentation/topdocs/AUTHORS.texi: update email address.
10599
10600         * Documentation/user/global.itely: add info about \include.
10601
10602 2005-05-17  Jan Nieuwenhuizen  <janneke@gnu.org>
10603
10604         * scm/backend-library.scm (postscript->pdf): Remove (useless) .ps
10605         when running-from-gui.
10606
10607         * scm/editor.scm (get-editor): Add platform defaults.
10608
10609         * scm/backend-library.scm (postscript->pdf): Typo.
10610
10611 2005-05-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10612
10613         * scm/lily.scm (running-from-gui?): Darwin never runs from GUI.
10614
10615         * lily/font-config.cc (init_fontconfig): add warning about cache.
10616
10617 2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
10618
10619         * lily/main.cc (setup_paths)[ARGV0_RELOCATION]: Remove GS_*.
10620
10621 2005-05-16  Mats Bengtsson  <mabe@s3.kth.se>
10622
10623         * lily/horizontal-bracket.cc (print): Take care of the direction
10624         property so brackets above the stave point downwards. 
10625
10626         * scm/define-grobs.scm (all-grob-descriptions): Set staff-padding
10627         for HorizontalBracket so it doesn't end up within the stave.
10628
10629 2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
10630
10631         * lily/GNUmakefile (default): Typo.
10632
10633         * scm/lily.scm (PLATFORM): Export.
10634
10635         * scm/framework-ps.scm (write-preamble)[MINGW]: Use
10636         load-font-via-GS, ttftool or fopencookie is broken on windows.
10637         
10638         * scm/backend-library.scm (postscript->pdf)[MINGW]: Do not use
10639         -dSAFER, that is broken on windows.
10640
10641 2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10642
10643         * lily/GNUmakefile ($(outdir)/FlexLexer.h): conditional dependency
10644         for FlexLexer.h
10645
10646         * scripts/lilypond-invoke-editor.scm: remove stray -
10647
10648 2005-05-15  Jan Nieuwenhuizen  <janneke@gnu.org>
10649
10650         * lily/lily-guile.cc (ly_scm2newstr): Use scm_i_string_length.
10651         Fixes deprecation warning.
10652
10653         * flower/include/string.icc (to_string): Only inline if
10654         -DSTRING_UTILS_INLINED.
10655
10656         * lily/pango-font.cc (pango_item_string_stencil): Normalize file
10657         name.  Remove windows comment.
10658
10659         * scm/editor.scm (slashify): New function.
10660         (get-editor-command): Use it.
10661         (get-command-template): Do not alter editor command if
10662         environment value includes `%(file)s' magic.
10663
10664         * scripts/lilypond-invoke-editor.scm (unquote-uri): New function.
10665         (dissect-uri): Use it.
10666         (unquote-uri): Bugfix.
10667
10668 2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10669
10670         * scm/framework-ps.scm (write-preamble): add TTF rule.
10671
10672         * Documentation/topdocs/README.texi (Top): remove note about
10673         xdelta.
10674
10675         * Documentation/topdocs/INSTALL.texi (Top): remove Flex
10676         requirement.
10677
10678         * stepmake/aclocal.m4: STEPMAKE_FLEXLEXER_LOCATION: new
10679         function. Figure out where FlexLexer.h lives
10680
10681         * lily/GNUmakefile (OUT_DIST_FILES): dist lexer.cc and FlexLexer.h
10682         
10683 2005-05-14  Jan Nieuwenhuizen  <janneke@gnu.org>
10684
10685         * scripts/lilypond-invoke-editor.scm (dissect-uri): Handle URIs
10686         with Windows root in file name.
10687
10688         * scm/backend-library.scm (ly:system): Only redirect output (using
10689         system and shell, ugh) if /dev/null is writable.
10690
10691         * Documentation/pictures/GNUmakefile [PLATFORM_WINDOWS]: Build
10692         windows icon.
10693
10694         * scm/lily.scm (is-absolute?): New function.  Fixes absolute files
10695         on Mingw.
10696
10697         * scm/output-ps.scm (grob-cause): Use it.  Fixes PDF point and
10698         click.
10699
10700         * flower/file-path.cc (is_dir, is_file): New function.  Actually
10701         use result of stat when available.
10702
10703         * flower/file-path.cc (find): Use it.  Refactor.  Fixes Mingw,
10704         absolute file name and root.
10705
10706         * scm/lily.scm (PLATFORM): On mingw, slashify getcwd.
10707
10708         * scm/editor.scm (get-editor-command): Typo: do not apply editor.
10709
10710         * flower/file-name.cc (slashify): Bugfix, do substitute if no
10711         slashes in file name.
10712
10713 2005-05-13  Jan Nieuwenhuizen  <janneke@gnu.org>
10714
10715         * Documentation/user/preface.itely (Preface): Run
10716         texinfo-all-menus-update.
10717
10718         * scm/editor.scm (get-editor-command): Bugfix: allow full
10719         LYEDITOR setting, partial XEDITOR setting.  With typo fix.
10720
10721         * Documentation/pictures/lilypond-48.xpm: New file.
10722
10723         * flower/file-path.cc (to_string): Bugfix: use PATHSEP.
10724
10725         * ly/Welcome_to_LilyPond.ly: New file.
10726
10727         * lily/main.cc (main): Only identify if we have a terminal.
10728
10729         * scm/backend-library.scm (postscript->png)
10730         (postscript->pdf): Fix file name quoting for GS/MINGW (ie,
10731         non-/bin/sh).
10732
10733 2005-05-13  Heikki Junes  <hjunes@cc.hut.fi>
10734
10735         * Documentation/topdocs/AUTHORS.texi: polish, update.
10736
10737 2005-05-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10738
10739         * Documentation/user/preface.itely (Notes for version 2.6): new
10740         notes for 2.6
10741
10742         * lily/dynamic-engraver.cc (stop_translation_timestep): first set
10743         finished_span_, then call typeset_all(). Fixes spurious "Hairpin
10744         is not fully contained" warnings.
10745
10746         * lily/slur-scoring.cc (get_bound_info): remove warning.
10747
10748         * lily/staff-symbol-engraver.cc (process_music): start initial
10749         spanner in process_music(). This fixes overrides of StaffSymbol
10750         properties.
10751
10752         * scm/framework-pdf.scm (Module): remove.
10753
10754         * Documentation/topdocs/AUTHORS.texi (AUTHORS): clean up, update.
10755
10756         * lily/ambitus-engraver.cc: formatting cleanups.
10757
10758         * mf/feta-solfa.mf (Module): remove.
10759
10760         * ChangeLog: more details about contributions.
10761
10762 2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10763
10764         * lily/align-interface.cc (align_elements_to_extents): warn if
10765         called too early. Fixes: disappearing-staff-lines.ly
10766
10767         * VERSION (PACKAGE_NAME): release 2.5.24
10768
10769 2005-05-12  Jan Nieuwenhuizen  <janneke@gnu.org>
10770
10771         * stepmake/aclocal.m4: Typo.
10772
10773         * flower/string.cc (substitute): Take two strings or two
10774         characters.  Update callers.
10775
10776 2005-05-11  Jan Nieuwenhuizen  <janneke@gnu.org>
10777
10778         * flower/file-name.cc (File_name): Slashify.
10779
10780         * scm/lily.scm: Use gui-main iso lilypond-main on MINGW.
10781
10782         * scripts/GNUmakefile (SEXECUTABLES): Add lilypond-invoke-editor.
10783
10784         * stepmake/aclocal.m4 (STEPMAKE_WINDOWS): New function.
10785
10786         * configure.in (gui_b): Use it.
10787
10788         * lily/lilypond.rc.in: New file.
10789
10790         * lily/GNUmakefile[PLATFROM_WINDOWS]: Compile it into executable.
10791
10792 2005-05-12  Graham Percival  <gperlist@shaw.ca>
10793
10794         * Documentation/user/advanced-notation.itely: edit of Text
10795         section; clarify text scripts vs. text markup.
10796
10797 2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10798
10799         * lily/multi-measure-rest-engraver.cc
10800         (Multi_measure_rest_engraver): init bar_seen_ to true. Notice
10801         separation items on start. Fixes mm rests in start of score.
10802
10803         * lily/slur-scoring.cc (move_away_from_staffline): robustness,
10804         don't access StaffSymbol if not there.
10805         Fixes: crash-staff-symbol-engraver.ly.
10806
10807         * lily/instrument-name-engraver.cc (class
10808         Instrument_name_engraver): data member first_. Create
10809         InstrumentName on start. 
10810
10811 2005-05-12  Graham Percival  <gperlist@shaw.ca>
10812
10813         * Documentation/user/instrument-notation.itely: add guitar
10814         position.
10815
10816         * Documentation/user/introduction.itely,
10817         Documentation/user/lilypond.tely,
10818         Documentation/user/tutorial.itely: begin pruning
10819         unused (duplicated) cindex entries and misc cleanup.
10820
10821 2005-05-12  Mats Bengtsson  <mabe@s3.kth.se>
10822
10823         * input/test/volta-chord-names.ly: Bring the explanation up to
10824         date.
10825
10826 2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
10827
10828         * Documentation/topdocs/{AUTHORS.texi,INSTALL.texi,README.texi}:
10829         Specify `@documentencoding utf-8' for html, ignore warnings.
10830
10831 2005-05-11  Erik Sandberg  <ersa9195@student.uu.se>
10832
10833         * THANKS: Added bughunters.
10834
10835 2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
10836
10837         * lily/main.cc: update help string for `lilypond -H'.
10838
10839         * po/fi.po: update.
10840         
10841 2005-05-10  Graham Percival  <gperlist@shaw.ca>
10842
10843         * Documentation/user/advanced-notation.itely: minor fixes.
10844
10845 2005-05-10  Jan Nieuwenhuizen  <janneke@gnu.org>
10846
10847         * scm/editor.scm: New module.
10848
10849         * scm/lily.scm (gui-main): Use it.
10850
10851         * scm/framework-gnome.scm (spawn-editor): Use it.
10852
10853         * scripts/lilypond-invoke-editor.scm: Use it in new script.
10854
10855 2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10856
10857         * scm/framework-ps.scm (load-font-via-GS):  new function.
10858
10859         * lily/pango-font.cc (pango_item_string_stencil): add support for
10860         CID keyed font.
10861
10862         * scm/output-ps.scm (glyph-string): add support for CID keyed font.
10863
10864 2005-05-10  Graham Percival  <gperlist@shaw.ca>
10865
10866         * Documentation/user/basic-notation.itely: add @ref.
10867
10868         * Documentation/user/advanced-notation.itely: add example
10869         of 5/8 beaming.
10870
10871 2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10872
10873         * scripts/lilypond-pdfpc-helper.py (ly_pc_editor): robustness fixes.
10874
10875         * scm/backend-library.scm (postscript->pdf): Invoke gs instead of
10876         going through ps2pdf wrappers.
10877
10878 2005-05-09  Jürgen Reuter  <reuter@ipd.uka.de>
10879
10880         * Documentation/user/instrument-notation.itely: petrucci note
10881         heads: updated docu
10882
10883         * input/regression/note-head-style.ly: updated regression test;
10884         indentation fixes
10885
10886         * ly/engraver-init.ly: MensuralVoiceContext: use petrucci note
10887         heads as default
10888
10889         * mf/parmesan-heads.mf: minor editing; use musicological names
10890         (rather than optical description) as note head names
10891
10892         * scm/output-lib.scm: complete petrucci heads
10893
10894 2005-05-09  Pal Benko  <benkop@freestart.hu>
10895
10896         * mf/parmesan-heads.mf: add petrucci heads (like neo-mensural
10897         heads, but bigger)
10898
10899 2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
10900
10901         * lily/main.cc (main_with_guile): Remove no files check.
10902
10903         * lily/main.cc (ly:usage): Export to Scheme.
10904
10905         * scm/lily.scm (no-files-handler): New function.
10906
10907         * scm/lily.scm (lilypond-main): Use it.
10908
10909         * configure.in (gui_b): Add mbrtowc checking.
10910         Resurrect [utf8/]wchar.h checking.
10911
10912 2005-05-09  Mats Bengtsson  <mabe@s3.kth.se>
10913
10914         * Documentation/user/advanced-notation.itely (Metronome marks):
10915         Add link to the program reference for MetronomeMark
10916
10917         * Documentation/user/lilypond-book.itely (An example of a
10918         musicological document): Correct the example using psfonts 
10919
10920 2005-05-09  Heikki Junes  <hjunes@cc.hut.fi>
10921
10922         * po/fi.po: update after a lesson how to update entries against
10923         source.
10924         
10925         * po/TODO: document the lesson.
10926
10927 2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10928
10929         * configure.in (gui_b): remove wcrtomb checking.
10930
10931         * lily/general-scheme.cc (LY_DEFINE): hand-convert utf8 to 32
10932         bits. Patch by Matthias Neeracher. <neeracher@mac.com>
10933
10934 2005-05-09  Mats Bengtsson  <mabe@s3.kth.se>
10935
10936         * scripts/convert-ly.py: In the conversion to version 1.9.0, 
10937         keep Scheme expressions and strings unmodified when doing the
10938         conversion to postfix notation for slurs and beams. Should
10939         hopefully solve most related conversion problems. 
10940
10941         * Documentation/user/lilypond-book.itely : Clarify and correct how
10942         to call dvips with -h psfonts.
10943
10944 2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
10945
10946         * Documentation/user/instrument-notation.itely (Entering lyrics):
10947         Typo.  Fixes build.
10948
10949 2005-05-09  Graham Percival  <gperlist@shaw.ca>
10950
10951         * Documentation/user/lilypond-book.itely: document PSFONTS file.
10952
10953         * Documentation/user/lilypond.tely, lilypond-book.itely,
10954         tutorial.itely: change references to 2.5.x to 2.6.x.
10955
10956         * Documentation/user/instrument-notation.itely: clarified \addlyrics
10957         vs \lyricmode.
10958
10959         * Documentation/user/invoking.itely: remove old info about
10960         lilypond-profile.
10961
10962         * Documentation/topdocs/INSTALL.texi: remove old info about
10963         lilypond-profile, add warning about needing international fonts
10964         to build docs.
10965
10966 2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10967
10968         * lily/include/grob-info.hh (class Grob_info): make data member
10969         private. Changes throughout.
10970
10971         * input/regression/alignment-order.ly: new file. 
10972
10973         * lily/vertical-align-engraver.cc (acknowledge_grob): read
10974         alignAboveContext and alignBelowContext
10975
10976 2005-05-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10977
10978         * lily/pfb.cc (LY_DEFINE): add cast.
10979
10980         * scm/framework-ps.scm (write-preamble): embed CFFs if file name
10981         matches .otf
10982         (write-preamble): warn about unknown fonts.
10983
10984         * lily/pfb.cc (Module): new function ly:otf->cff
10985
10986         * lily/open-type-font.cc (get_otf_table): use ::get_otf_table
10987         (get_otf_table): new function.
10988
10989 2005-05-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10990
10991         * scm/backend-library.scm (postscript->png): call lilypond-ps2png
10992         iso. ps2png.
10993
10994 2005-05-06  Heikki Junes  <hjunes@cc.hut.fi>
10995
10996         * po/fi.po: apply second round of update.
10997
10998 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10999
11000         * scm/x11-color.scm (make-x11-color-handler): don't use
11001         #\sp. Apparently doesn't work on all platforms. 
11002
11003 2005-05-06  Graham Percival  <gperlist@shaw.ca>
11004
11005         * Documentation/user/advanced-notation.itely, putting.itely,
11006         tutorial.itely, global.itely, introduction.itely: really minor fixes.
11007
11008 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11009
11010         * VERSION (PACKAGE_NAME): release 2.5.23
11011
11012 2005-05-06  Jan Nieuwenhuizen  <janneke@gnu.org>
11013
11014         * Documentation/topdocs/AUTHORS.texi: Remove texinfo @accents,
11015         convert to utf-8.
11016
11017         * THANKS: Add translators for this release, convert to utf-8.
11018
11019         * mf/GNUmakefile (MFTRACE_FLAGS):
11020         * buildscripts/substitute-encoding.py (outdir): Build fix: pass
11021         outdir as option (WAS: hardcoded).
11022
11023 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11024
11025         * lily/staff-symbol-engraver.cc (Staff_symbol_engraver): init
11026         finished_span_
11027
11028         * THANKS: add Hans Forbrich.
11029
11030         * Documentation/topdocs/NEWS.tely (Top): document new feature.
11031
11032         * Documentation/user/basic-notation.itely (Staff symbol): document
11033         start/stop staff. Reference to ossia.ly
11034
11035         * input/test/ossia.ly: new example using stop and startStaff.
11036
11037         * lily/timing-engraver.cc: remove Timing_engraver::initialize(),
11038         in other words, don't create "|" barline at start of the score.
11039         (start_translation_timestep): don't set whichBar for start of score.
11040
11041         * input/regression/staff-halfway.ly: use new functionality.
11042
11043         * lily/staff-symbol-engraver.cc (try_music): take StaffSpanEvents,
11044         start and stop staff based on events.
11045
11046         * scm/define-music-types.scm (music-descriptions): add StaffSpanEvent
11047
11048         * ly/declarations-init.ly (startStaff, stopStaff): new identifiers.
11049
11050 2005-05-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11051
11052         * Documentation/user/programming-interface.itely (How markups work
11053         internally ): remove \encoding reference.
11054
11055 2005-05-04  Mats Bengtsson  <mabe@s3.kth.se>
11056
11057         * scripts/convert-ly.py: Attempt to do a smarter update of 
11058         text markups from versions < 1.9.0 with arbitrary nesting.
11059
11060 2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
11061
11062         * po/fi.po: convert to utf-8, and update.
11063
11064 2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11065
11066         * make/lilypond.suse.spec.in: update from suse 2.4 package.
11067
11068         * lily/*.cc: more <? >? to min/max changes
11069
11070         * lily/include/interpretation-context-handle.hh: rename
11071         Interpretation_context_handle to Context_handle.
11072
11073 2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
11074
11075         * input/regression/GNUmakefile (local_delete): use `find` together 
11076         with `xargs` to avoid too long argument-lists in cmd line.
11077
11078 2005-05-04  Graham Percival  <gperlist@shaw.ca>
11079
11080         * Documentation/user/introduction.itely: updates "About this manual".
11081
11082         * Documentation/user/advanced-notation.itely,
11083         invoking.itely: minor fixes.
11084
11085 2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11086
11087         * COPYING: add font exception. Update FSF address. 
11088
11089         * lily/context-def.cc (path_to_acceptable_context): bugfix, depth
11090         should be taken without child context.
11091
11092         * ly/chord-modifiers-init.ly (blackTriangleMarkup): use it.
11093
11094         * scm/define-markup-commands.scm (triangle): new command, as
11095         robust replacement for unicode Delta/Triangle.
11096
11097 2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11098
11099         * ps/music-drawing-routines.ps: add fillp argument.
11100
11101         * lily/lookup.cc (round_filled_polygon): polygon takes filled? argument
11102
11103         * lily/font-config.cc (init_fontconfig): don't add cff/
11104
11105         * VERSION (PACKAGE_NAME): release 2.5.22
11106
11107         * mf/GNUmakefile: remove cff/cff.ps/.map install rules.
11108
11109         * lily/grace-engraver.cc (consider_change_grace_settings): use
11110         is_alias(). Fixes problem with CueVoice grace notes. 
11111
11112         * lily/simultaneous-music-iterator.cc (construct_children): call
11113         Music_iterator::quit() for iterators that start out invalid. This
11114         fixes indefinitely continuing contexts.
11115
11116         * buildscripts/substitute-encoding.py: new file
11117
11118         * Documentation/user/basic-notation.itely (Basic polyphony): fix
11119         missing @end 
11120
11121         * scripts/lilypond-book.py (write_if_updated): print file name.
11122
11123         * Documentation/user/basic-notation.itely (Explicitly
11124         instantiating voices): idem.
11125
11126         * Documentation/user/advanced-notation.itely (Text spanners):
11127         remove stray { } 
11128
11129         * lily/context.cc (default_child_context_name): the default child
11130         is now first in accepts_list_.
11131
11132         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
11133         \defaultchild to all relevant contexts.  This fixes:
11134         drums-pitch.ly.
11135
11136         (Probably also fixes similar problems with ancient
11137         transcriptions getting CueVoices instead of the desired voices.)
11138  
11139         * lily/context-def.cc (get_default_child): new function.
11140         (get_accepted): place default child in front of list.
11141
11142         * lily/parser.yy (FIXME): add DEFAULTCHILD token.
11143
11144         * lily/include/context-def.hh (struct Context_def): add
11145         default_accept_
11146
11147 2005-05-03  Graham Percival  <gperlist@shaw.ca>
11148
11149         * scm/define-grobs.scm: remove "remove-first" line, since
11150         the absent property is set to #f anyway.
11151
11152         * Documentation/user/basic-notation.itely,
11153         advanced-notation.itely, instrument-notation.itely: minor
11154         fixes.
11155
11156         * ly/property-init.ly: add textSpanner{Up,Down,Neutral}.
11157
11158         * Documentation/user/advanced-notation.itely,
11159         changing-defaults.itely: consolidate Text stuff in
11160         advanced notation.
11161
11162         * Documentation/user/global.itely: better docs for \header.
11163
11164         * Documentation/user/putting.itely: new chapter; placeholder
11165         for future expansion.
11166
11167         * Documentation/user/examples.itely: moved "suggestions for
11168         writing LP files" section into putting.itely.
11169
11170         * Documentation/user/lilypond.itely: added new chapter,
11171         fixed the short table of contents.
11172
11173 2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11174
11175         * lily/beam-quanting.cc (quanting): robustness fix, don't produce
11176         infinity for unfeasible beams.
11177
11178         * make/lilypond.fedora.spec.in (Group): idem.
11179
11180         * scripts/GNUmakefile (SEXECUTABLES): rename ps2png to lilypond-ps2png
11181
11182         * mf/GNUmakefile (ALL_GEN_FILES): remove .map
11183
11184         * scm/framework-ps.scm (write-preamble): extract CFF from OTF
11185         fonts directly.
11186
11187         * buildscripts/gen-emmentaler-scripts.py (i): idem.
11188
11189         * mf/GNUmakefile: remove all CFF rules.
11190
11191         * scm/framework-ps.scm (ps-embed-cff): reinstate.
11192
11193         * lily/open-type-font-scheme.cc (LY_DEFINE):
11194         new function ly:otf-font-table-data.
11195         (LY_DEFINE): new function otf-font?
11196
11197 2005-05-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11198
11199         * mf/GNUmakefile ($(outdir)/lilypond.map): remove rule.
11200         ($(outdir)/Fontmap.lily): idem.
11201
11202         * buildscripts/gen-emmentaler-scripts.py (i): load fetaXX encoding
11203         for PFAEmmentaler-XXX.pfa. 
11204
11205         * Documentation/user/music-glossary.tely (accidental): NL
11206         translation of accidental.
11207
11208 2005-05-02  Jan Nieuwenhuizen  <janneke@gnu.org>
11209
11210         * flower/include/international.hh: Bugfix: include "string.hh".
11211
11212         * lily/include/mingw-compatibility.hh: New file.
11213
11214         * flower/include/libc-extension.hh (memrev): Rename from strrev.
11215
11216         * configure.in: Search for mingw wcrtomb library.
11217
11218 2005-05-02  Mats Bengtsson  <mabe@s3.kth.se>
11219
11220         * scripts/convert-ly.py: Bug fix
11221
11222         * Documentation/user/changing-defaults.itely (Common tweaks):
11223         Added example where the context has to be specified explicitly
11224         (MetronomeMark). 
11225
11226 2005-05-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11227
11228         * scripts/lilypond-book.py (ly_options): set timing to #f for
11229         notime option.
11230
11231         * scripts/convert-ly.py (conv): typo.
11232
11233         * flower/*.cc: remove <? and >?
11234         
11235         * lily/*.cc: remove <? and >?
11236
11237         * lily/tweak-registration.cc (insert_tweak_from_file): Make sure
11238         that 0x0 isn't passed into scm_cons(). Fixes crash with tweak
11239         editor.
11240
11241 2005-04-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11242
11243         * lily/part-combine-engraver.cc: add space to variable list.
11244
11245 2005-04-30  Graham Percival  <gperlist@shaw.ca>
11246
11247         * scm/define-grobs.scm: changed RemoveEmptyVerticalGroup's
11248         remove-first to false (matches docs)
11249
11250         * Documentation/user/advanced-notation.itely: corrected docs
11251         concerning remove-first.
11252
11253 2005-04-29  Mats Bengtsson  <mabe@s3.kth.se>
11254
11255         * lily/part-combine-engraver.cc: make sure that the relevant
11256         properties are included in the documentation.
11257
11258 2005-04-28  Graham Percival  <gperlist@shaw.ca>
11259
11260         * Documentation/user/lilypond-book.itely: Bernard's docs
11261         for \betweenLilyPondSystem.
11262
11263 2005-04-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11264
11265         * Documentation/topdocs/INSTALL.texi (Top): remove TeX outdated
11266         remarks.
11267
11268 2005-04-28  Pal Benko  <benkop@freestart.hu>
11269
11270         * lily/mensural-ligature.cc (brew_flexa): apply thickness property
11271         only on vertical lines of flexa shape, and use a constant
11272         thickness value for horizontal lines (patch slightly modified by
11273         Jürgen Reuter)
11274
11275         * lily/include/mensural-ligature.hh: make 2 comments clearer
11276
11277 2005-04-28  Jürgen Reuter  <reuter@ipd.uka.de>
11278
11279         * lily/vaticana-ligature-engraver.cc (need_extra_space): renamed
11280         to need_extra_horizontal_space; bugfix: use class scope to avoid
11281         global namespace pollution
11282
11283         * Documentation/user/instrument-notation.itely (ligatures): added
11284         comment on possible future syntax change and how to work around
11285
11286         * lily/vaticana-ligature-engraver.cc, mf/parmesan-heads.mf
11287         (epiphonus, cephalicus): fine-tune shape of plica head for narrow
11288         intervals (fixes agnus dei example)
11289
11290         * Documentation/user/instrument-notation.itely (white mensural
11291         ligatures): selected a more illustrative example
11292
11293 2005-04-28  Heikki Junes <hjunes@cc.hut.fi>
11294
11295         * Documentation/index.html.in: specify utf-8 charset in meta content.
11296
11297 2005-04-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11298
11299         * python/lilylib.py (make_ps_images): bugfixes; GS can produce
11300         empty 2nd page for single page.
11301
11302         * scm/lily.scm: remove p&c definitions.
11303
11304         * po/zh_TW.po (Module): new translation.
11305
11306         * lily/lily-guile.cc (ly_chain_assoc): remove.
11307
11308         * lily/general-scheme.cc (LY_DEFINE): export ly:chain_assoc_get
11309         (LY_DEFINE): recurse, iso. calling ly_chain_assoc.
11310
11311 2005-04-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11312
11313         * lily/beaming-info.cc: remove infinity_i
11314
11315         * scripts/abc2ly.py (out_filename): fix thinko with \version.
11316
11317 2005-04-26  Graham Percival  <gperlist@shaw.ca>
11318
11319         * Documentation/user/basic-notation.itely,
11320         instrument-notation.itely, advanced-notation.itely,
11321         changing-defaults.itely: minor fixes.  Added docs
11322         for colors to advanced-notation.itely.
11323
11324         * Documentation/user/advanced-notation.itely: fixed compile
11325         problem and added Bernard's x11-color doc patch.
11326
11327 2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
11328
11329         * scm/output-ps.scm (grob-cause): Yet another fix, hope it's
11330         alright this time round.
11331
11332 2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11333
11334         * Documentation/topdocs/INSTALL.texi (Top): idem.
11335
11336         * Documentation/topdocs/README.texi (Top): remove clean-fonts refs.
11337
11338         * VERSION (MAJOR_VERSION): release 2.5.21
11339
11340         * scm/output-ps.scm (grob-cause): bugfix.
11341
11342 2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
11343
11344         * cygwin/*: Update.
11345
11346         * cygwin/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Remove profile
11347         stuff.
11348
11349         * scm/output-ps.scm (grob-cause): Bugfix.
11350
11351         * scm/lily.scm (ly:load): Remove x11-color.
11352
11353         * stepmake/aclocal.m4 (STEPMAKE_GET_EXECUTABLE): Bugfix: do not
11354         quote executable, fixes getting version from program --with
11355         --options.
11356         (STEPMAKE_KPATHSEA): Bugfix for Cygwin cross building: use
11357         $ac_exeect.
11358
11359         * Documentation/user/GNUmakefile: Only build music-glossary with
11360         rendered lilypond snippets during web.
11361
11362 2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11363
11364         * po/de.po: update.
11365
11366         * lily/GNUmakefile (OUT_DIST_FILES): don't dist lexer.cc
11367
11368 2005-04-22  Laura Conrad <lconrad@laymusic.org>
11369  
11370         * scripts/abc2ly:
11371         second title line append with punctuation dash character;
11372         encode abc2ly python strings in utf-8
11373        
11374 2005-04-21  Laura Conrad <lconrad@laymusic.org>
11375
11376         * scripts/abc2ly fix chords (again)
11377  
11378 2005-04-22  Bernard Hurley  <bernard@fong-hurley.org.uk>
11379
11380         * scm/x11-color.scm: new file
11381         All x11 color names can be accessed with:
11382         #(x11-color 'ColorName),
11383         #(x11-color "ColorName") or:
11384         #(x11-color "color name")
11385         If the x11 color name is not recognised then it defaults
11386         to black
11387
11388         * scm/lily.scm: amended to call scm/x11-color.scm
11389
11390 2005-04-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11391
11392         * Documentation/user/invoking.itely (Reporting bugs): comment out
11393         reference to online PNG bug repository.
11394
11395 2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
11396
11397         * lily/translator-scheme.cc (ly:translator-property): Remove.
11398         Update callers.
11399
11400         * lily/context-scheme.cc (ly:context-now): Move from translator.
11401         Update callers.
11402
11403 2005-04-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11404
11405         * input/regression/grid-lines.ly (skips): refine example.
11406
11407         * scm/define-context-properties.scm
11408         (all-user-translation-properties): doc autoBeamCheck
11409
11410         * input/regression/grid-lines.ly (Module): new file.
11411
11412         * lily/grid-point-engraver.cc (Module): new file.
11413
11414         * lily/grid-line.cc (Module): new file.
11415
11416         * lily/grid-line-span-engraver.cc (Module): new file.
11417
11418         * lily/grid-line-interface.cc (Module): new file.
11419
11420 2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
11421
11422         * scm/auto-beam.scm (revert-property-setting): Bugfixes: add
11423         missing parameter, actualy cdr through list.  Actually return a
11424         list with ENTRY removed (was '()).
11425
11426         * scripts/convert-ly.py: Update.  Print warning if file cannot be
11427         opened.
11428         (do_conversion): Fix printing of continuation comma.
11429
11430         * Documentation/user/advanced-notation.itely (Beam formatting):
11431         Remove refbugs about compound time and mixed duration.
11432
11433         * scm/auto-beam.scm (default-auto-beam-settings): Write out all
11434         modulo moments explicitely.
11435
11436         * lily/moment.cc (operator %): New function.
11437
11438         * lily/moment-scheme.cc (ly:mod-moment): Wrap it.
11439
11440         * lily/translator-scheme.cc (ly:translator-now,
11441         ly:translator-property): New function.
11442
11443         * scm/auto-beam.scm (default-auto-beam-check): New function.
11444
11445         * lily/auto-beam-engraver.cc (test_moment): Use it.
11446
11447         * flower/rational.cc (operator %): Bugfix.
11448
11449 2005-04-21  Erik Sandberg  <ersa9195@student.uu.se>
11450
11451         * scripts/abc2ly: Bugfix
11452
11453 2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11454
11455         * python/fontextract.py (write_extracted_fonts): bugfix, too many
11456         %'s on EndFont comment.
11457
11458         * lily/ledger-line-spanner.cc: some more words of explanation.
11459
11460 2005-04-20  John Williams <williams@tni.com>  
11461         
11462         * scripts/lilypond-book.py: htmlquote bugfix.
11463         Allow snippets to be given distinct filenames.
11464         Allow the default alt text to be overridden.
11465
11466 2005-04-20  Erik Sandberg  <ersa9195@student.uu.se>
11467
11468         * ly/performer-init.ly: Bugfix
11469
11470         * THANKS: Added bughunters.
11471
11472 2005-04-20  Jan Nieuwenhuizen  <janneke@gnu.org>
11473
11474         * SConstruct (test_lib): Bump mftrace requirement to 1.1.9.
11475
11476         * lily/auto-beam-engraver.cc (test_moment): Test exact measure
11477         position (was: use modulo measure length).
11478
11479         * configure.in (no gui_b): Remove optional gtk+ requirement.
11480
11481 2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11482
11483         * Documentation/user/basic-notation.itely (Pitches): add
11484         LedgerLineSpanner.
11485
11486         * lily/dynamic-engraver.cc (process_music): set right bound to
11487         script if present. Else, do not set.
11488         (acknowledge_grob): only set right bound of finished spanner to
11489         note column if no other bound is set.
11490
11491         * python/lilylib.py (make_ps_images): switch back to png16m.
11492         
11493 2005-04-19  Jan Nieuwenhuizen  <janneke@gnu.org>
11494
11495         * scripts/lilypond-book.py (write_if_updated): Bugfix for not
11496         writing up to date file.  Add dvips usage suggestion.
11497
11498         * scripts/convert-ly.py: Fix error message.
11499         Print usage if no files on command line.
11500         (usage): Add example usage.
11501
11502         * input/test/compound-time.ly: New file.
11503
11504         * input/test/circle.ly: New file.
11505
11506         * Documentation/topdocs/NEWS.tely: Use them.
11507
11508         * input/test/boxed-stencil.ly: Remove \score.
11509
11510         * buildscripts/mf-to-table.py (base): Add .log dependency.
11511
11512         * mf/GNUmakefile: Add PFAemmentaler and PFAaybabtu dependencies on
11513         pfa's.  Add .log dependency
11514
11515         * scm/define-markup-commands.scm (lower): New command.
11516
11517         * elisp/lilypond-mode.el (LilyPond-pdf-command): New command,
11518         make it default.
11519
11520 2005-04-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11521
11522         * lily/dynamic-engraver.cc (acknowledge_grob): add note-column
11523         also to finished cresc as right bound. This fixes:
11524         skip-string-decresc.ly
11525
11526         * lily/slur-scoring.cc (get_bound_info): robustness: substitute
11527         relative_coordinate if extent is empty.
11528
11529         * lily/stem.cc (width_callback): determine correct extent if flag
11530         is not there. This fixes slur-no-flag.ly
11531
11532         * lily/grace-engraver.cc (consider_change_grace_settings): new
11533         function.
11534         (initialize): also consider_change_grace_settings() on
11535         initialization. Fixes large grace notes at start of score.
11536
11537         * lily/break-align-interface.cc (do_alignment): don't translate if
11538         total_extent is empty.
11539
11540         * buildscripts/lilypond-{login,profile}.sh (Module): remove file.
11541
11542 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11543
11544         * scm/output-ps.scm (grob-cause): don't add cwd if path starts
11545         with slash.
11546
11547 2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
11548
11549         * stepmake/aclocal.m4: Remove tfm_path.
11550
11551 2005-04-18  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11552
11553         * scm/music-functions.scm (markup-expression->make-markup): fix
11554         bug with cons arguments of markup commands.
11555         (music->make-music): fix music expression property list building
11556
11557 2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
11558
11559         * aclocal.m4: Massage package names.
11560
11561         * SCons updates.
11562
11563 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11564
11565         * VERSION (PACKAGE_NAME): release 2.5.20
11566
11567         * lily/stem.cc (calc_stem_info): add minimum Y extent of
11568         stem-tremolo.  Fixes: bugs/tremolo-stem-length-beamed
11569
11570         * lily/percent-repeat-engraver.cc (try_music): add measure before
11571         next_moment to future processing moment. Fixes:
11572         percent-repeat-mm-rest.ly
11573         (process_music): don't add moment for 2nd time.
11574
11575         * input/regression/repeat-percent.ly: add mmrests as extra test.
11576
11577         * lily/axis-group-engraver.cc (acknowledge_grob): read
11578         keepAliveInterfaces to decide what to kill.
11579
11580         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add
11581         percent-repeat-interface to keepAliveInterfaces. This fixes
11582         percent-repeat-harakiri.
11583
11584 2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
11585
11586         * SCons updates.
11587
11588 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11589
11590         * config.make.in (TTFTOOL_ENDIAN): rm TFM_PATH
11591
11592         * aclocal.m4: remove --enable-tfm-path configure option
11593
11594         * input/test/ancient-font.ly (lowerStaff): clef name errors.
11595
11596         * scm/backend-library.scm (postscript->png): newline after
11597         finishing command.
11598
11599         * lily/paper-score-scheme.cc (LY_DEFINE): new file.
11600         (LY_DEFINE): ly:paper-score-paper-systems: new function 
11601
11602         * lily/score-scheme.cc (LY_DEFINE): require music argument. 
11603
11604         * lily/score.cc (default_rendering): use Music_output too.
11605
11606         * input/test/chord-names-languages.ly (Module): rename file.
11607
11608         * lily/text-spanner.cc: add bound-padding.
11609
11610         * lily/paper-book.cc (systems): accept Paper_score
11611         iso. Paper_system vector. 
11612
11613         * input/regression/line-arrows.ly: new file.
11614
11615         * lily/paper-score.cc (process): run get_paper_systems() only once.
11616
11617         * lily/line-spanner.cc (line_stencil): add arrows.
11618
11619 2005-04-18  Jonatan Liljedahl  <lijon@kymatica.com>
11620
11621         * lily/line-interface.cc (make_arrow): new function. 
11622         (arrows): idem.
11623
11624 2005-04-18  Mathieu Giraud  <magiraud@free.fr>
11625
11626         * input/test/chord-names-german.ly: update for italian/french
11627         chords.
11628         
11629         * Documentation/user/instrument-notation.itely (Printing chord
11630         names): update.
11631
11632 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11633
11634         * lily/include/paper-score.hh (class Paper_score): remove unused
11635         prototypes.
11636
11637         * lily/book.cc (process): add -COUNT to midi output.
11638
11639         * lily/score.cc (book_rendering): remove outname argument
11640         (book_rendering): return list of Music_outputs. 
11641
11642         * lily/global-context-scheme.cc (LY_DEFINE): remove outname argument.
11643
11644         * lily/book.cc (process): loop over Music_outputs returned from
11645         Score::book_rendering().
11646
11647         * lily/*.cc (width_callback): remove spurious "unused" warnings
11648         for assert (axis==[XY]_AXIS); 
11649
11650         * lily/include/music-output.hh (class Music_output): smobify class.
11651
11652         * lily/include/paper-score.hh (class Paper_score): make members
11653         private.
11654
11655         * lily/performance.cc (process): return #f iso. #<undefined>. This
11656         prevents #<undefined> leaking into GUILE-userspace.
11657
11658 2005-04-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11659
11660         * config.hh.in: remove HAVE_PANGO_FC_FONT_MAP_ADD_DECODER_FIND_FUNC.
11661
11662 2005-04-17  Mathieu Giraud  <magiraud@free.fr>
11663
11664         * scm/chord-name.scm : support for italian and french
11665         chords names.
11666
11667         * scm/chord-ignatzek-names.scm (ignatzek-chord-names): add
11668         a space defined by chordPrefixSpacer when the root name is
11669         direclty followed by a prefix.
11670
11671         * ly/engraver-init.ly : chordPrefixSpacer       
11672         * scm/define-context-properties.scm : chordPrefixSpacer
11673         * ly/property-init.ly : italianChords, frenchChords 
11674
11675 2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
11676
11677         * mf/feta-din.mf: Remove.
11678
11679         * mf/GNUmakefile (fontdir): Bugfix.
11680
11681         * mf/SConstruct: Some updates.
11682
11683         * SConstruct: Require pkg-config.
11684         (test_program): Bugfix for double digit version compares, use
11685         integer (not string-) compare.
11686         Optionally require gs 8.14.
11687
11688         * stepmake/aclocal.m4 (STEPMAKE_PANGO_FT2): Define HAVE_PANGO16 too.
11689
11690         * lily/*: s/ifdef HAVE_*/if have/.
11691
11692         * SConstruct (test_lib): New function.  Update pkg-config and some
11693         other requirements.
11694
11695         * configure.in: Require pkg-config.  Enforce REQUIRE and version for
11696         freetype, pangof2t.
11697
11698 2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
11699
11700         * po/lilypond.pot, ...: Update using bison-CVS.
11701
11702         * python/lilylib.py (make_ps_images): Fixo.
11703
11704 2005-04-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11705
11706         * python/lilylib.py (make_ps_images): typo.
11707
11708         * configure.in (gui_b): make bison optional.
11709
11710         * lily/GNUmakefile (OUT_DIST_FILES): dist parser and lexer.
11711
11712 2005-04-16  Bernard Hurley  <bernard@fong-hurley.org.uk>
11713
11714         * framework-eps.scm: code added so that a macro \betweenLilyPondSystem
11715         with one parameter can be defined in a LaTeX file when processed
11716         by lilypond-book this will be evaluated between the systems of
11717         a multi-system score. The parameter is the number of systems processed.
11718
11719 2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
11720
11721         * python/lilylib.py (make_ps_images): Escape newline.
11722
11723         * Documentation/user/music-glossary.tely: Run
11724         texinfo-all-menus-update.
11725
11726 2005-04-14  Jan Nieuwenhuizen  <janneke@gnu.org>
11727
11728         * scm/lily-library.scm (old-relative-not-used-message)
11729         (version-not-seen-message): Add input-file-name-location to message.
11730
11731         * lily/parser.yy (lilypond): Add token aliases.
11732
11733         * Documentation/user/music-glossary.tely (accidental): Fixes.  Do
11734         not confuse with alteration.
11735         (alteration): Add.
11736
11737 2005-04-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11738
11739         * python/lilylib.py (make_ps_images): use -dEPSCrop
11740
11741         * VERSION (PACKAGE_NAME): release 2.5.19 
11742
11743         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
11744         only put xrefs in info documentation.
11745
11746         * make/ly-rules.make ($(outdir)/%.html.omf): transplant .dvi ->
11747         .pdf rule to tex-rules.make.
11748
11749         * scm/framework-eps.scm (dump-stencils-as-EPSes): remove comments
11750         from -systems.* output.
11751
11752         * stepmake/stepmake/tex-rules.make ($(outdir)/%.pdf): make PDF
11753         directly, remove -$(PAGESIZE) target.
11754
11755         * input/test/embedded-postscript.ly: update.
11756
11757 2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11758
11759         * make/lysdoc-targets.make (local-WWW): remove ps.gz target.
11760
11761         * Documentation/user/changing-defaults.itely (Font selection):
11762         document font-name.
11763
11764         * input/regression/font-name.ly: show Pango fonts for
11765         font-name. Update example. 
11766
11767         * lily/pango-select.cc (properties_to_pango_description): don't
11768         convert symbol font-size to number, but use to lookup.
11769
11770         * python/fontextract.py (write_extracted_fonts): add VMusage 0.
11771
11772         * scm/framework-ps.scm (write-preamble): use (NAME . CONTENTS) and
11773         (NAME . FILE-NAME) tuples for font descriptions. 
11774         (write-preamble): display BeginFont DSC comments.
11775
11776         * python/fontextract.py (write_extracted_fonts): new file. Extract
11777         font resources from a PS file.
11778
11779         * scripts/lilypond-book.py (option_definitions): --psfonts option.
11780         (Compile_error.process_include): do_file returns chunks.
11781
11782         * make/ly-vars.make (DVIPS_FLAGS): don't load .map file.
11783
11784         * make/lysdoc-targets.make: .texi is .PRECIOUS
11785
11786         * scripts/lilypond-book.py (write_if_updated): new function.
11787
11788 2005-04-13  Jan Nieuwenhuizen  <janneke@gnu.org>
11789
11790         * scm/framework-eps.scm (dump-stencils-as-EPSes): Massage messages.
11791
11792 2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11793
11794         * scm/framework-eps.scm (dump-stencils-as-EPSes): no massages.
11795
11796         * input/regression/markup-syntax.ly: remove \score.
11797
11798         * scm/define-markup-commands.scm (draw-circle): add fill argument
11799
11800         * scm/stencil.scm (make-circle-stencil): add fill argument
11801
11802         * ps/music-drawing-routines.ps: add fill argument.
11803
11804         * ly/performer-init.ly: add CueVoice to MIDI too.
11805
11806         * ps/music-drawing-routines.ps: new routine BeginEPSF /
11807         EndEPSF.
11808
11809         * input/regression/markup-eps.ly: new file.
11810
11811         * scm/framework-ps.scm (write-preamble): change order: vars should
11812         be inited before procedures.
11813
11814         * scm/output-ps.scm (glyph-string): break lines. 255 chars is max
11815         for EPS files.
11816
11817         * scm/define-markup-commands.scm (epsfile): add epsfile command.
11818
11819 2005-04-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11820
11821         * configure.in (gui_b): add check for ghostscript 8.15
11822
11823 2005-04-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11824
11825         * lily/hairpin.cc (after_line_breaking): suicide the hairpinlet at
11826         start of line. Fixes cresc-after-newline.ly
11827
11828         * lily/source-file.cc (file_line_column_string): use get_column().
11829
11830 2005-04-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11831
11832         * lily/source-file.cc (get_column): utf-8 support for column numbers.
11833
11834 2005-04-12  Jan Nieuwenhuizen  <janneke@gnu.org>
11835
11836         * lily/*: use message () iso progress_indication () for messages.
11837         Revise/uniformise user messages.
11838
11839         * flower/warn.cc (progress_indication): New function.
11840         (message): Use it.  Fixes newline problems.
11841
11842         * config.make.in (webdir): Sort out install dirs.
11843
11844         * stepmake/stepmake/generic-targets.make (final-install): Bugfix.
11845
11846         * python/lilylib.py (command_name): Bugfix.
11847         (make_ps_images):
11848
11849 2005-04-11  Pedro Kroger  <kroeger@pedrokroeger.net>
11850
11851         * lily/main.cc: --help says what types of backends are availabe
11852
11853 2005-04-11  Jan Nieuwenhuizen  <janneke@gnu.org>
11854
11855         Fix ./VERSION dependency, and without need to reconfigure.
11856
11857         * lily/main.cc (setup_paths): Update.
11858
11859         * stepmake/bin/make-version.py (defs): Add TOPLEVEL_VERSION define..
11860
11861         * config.hh.in (LILYPOND_DATADIR): Remove TOPLEVEL_VERSION.
11862
11863         * scripts/convert-ly.py (\markup): Fix too simplistic regexps.
11864         Add \line for some simplistic cases.
11865
11866         * lily/GNUmakefile (main.o): Add missing dependency on version.hh.
11867
11868 2005-04-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11869
11870         * elisp/lilypond-mode.el (LilyPond-lilypond-command): command used
11871         to compile LY files (useful for adding eg. "-I" args)
11872         (LilyPond-command-alist): use `LilyPond-lilypond-command'. Add a
11873         2Gnome command for gnome backend.
11874         (LilyPond-command-formatgnome): call the 2Gnome command. key
11875         binding: C-c C-g
11876
11877 2005-04-10  Jan Nieuwenhuizen  <janneke@gnu.org>
11878
11879         * Documentation/user/GNUmakefile (lilypond/index.html): Bugfix:
11880         depend on all PNG images.
11881
11882 2005-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
11883
11884         * GNUmakefile.in: Bugfix: also link .map files.
11885
11886 2005-04-09  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11887
11888         * scm/music-functions.scm (music->make-music): generate 
11889         a (make-music ...) sexpr from a music expression.
11890         (display-scheme-music): use guile pretty printer to display the
11891         make-music sexpr.
11892
11893 2005-04-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11894
11895         * ly/engraver-init.ly: reindent.
11896         Add CueVoice.
11897
11898         * scm/music-functions.scm (music-pretty-string): handle moments
11899         too.
11900         (music-pretty-string): only print non-empty lists.
11901         (cue-substitute): create CueVoice context, which has smaller type.
11902
11903         * lily/moment-scheme.cc (LY_DEFINE): new methods
11904         ly:moment-grace-{numerator,denominator}
11905
11906         * lily/context-handle.cc: remove quit() method. 
11907
11908         * lily/font-config.cc (init_fontconfig): be verbose about font path.
11909         (init_fontconfig): success is 0, not !0
11910
11911 2005-04-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11912
11913         * mf/feta-nummer-code.mf (code): add plus glyph.
11914
11915         * lily/tie.cc (print): idem.
11916
11917         * lily/slur.cc (print): don't use thickness property for
11918         slur shape-thickness.
11919
11920         * lily/stencil-scheme.cc (LY_DEFINE): don't reverse the order
11921         while adding stencils.
11922
11923         * scm/define-markup-commands.scm (with-color): with-color markup
11924         command.
11925         (whiteout): new markup command 
11926         (filled-box): new markup command
11927
11928 2005-04-07  Jan Nieuwenhuizen  <janneke@gnu.org>
11929
11930         * Documentation/topdocs/NEWS.tely (Top): Make tex-able.  Handy
11931         test for PDF docs.
11932
11933         * mf/GNUmakefile (lilypond.map): Add PFAEmmentaler,
11934         PFAAybabtu-Regular.  Fixes feta font in PDFs.
11935         
11936         Notes for tetex-3.0 make web:
11937            psclean.map: s/uhv8a/uhvr8a/
11938            config.ps add:
11939                 p +psfonts_t1.map
11940                 p +psclean.map
11941                 p +typeface.map
11942
11943 2005-04-06  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11944
11945         * scm/music-functions.scm (music-pretty-string): fix bug with
11946         string argument.
11947
11948 2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
11949
11950         * stepmake/bin/add-html-footer.py (i18n): Bugfix.
11951
11952 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11953
11954         * scripts/lilypond-book.py (Lilypond_snippet.__init__): 
11955         only process options if they're there.
11956         (write_file_map): add version-seen? to snippet-map.ly
11957
11958 2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
11959
11960         * scripts/lilypond-book.py (split_options): Bugfix.  Small code
11961         formatting cleanups.
11962
11963         * mf/GNUmakefile: Rewrite $addprefix, $addsuffix using % short-forms.
11964         Add PFAaybabtu.pfa dependency on aybabtu.subfonts.
11965
11966 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11967
11968         * scm/framework-ps.scm (ps-font-command): don't hash, just use
11969         name directly.
11970
11971         * lily/main.cc (setup_paths): either add mf/out to search path or 
11972         fonts/{otf,type1,etc}
11973         
11974         * lily/font-config.cc (init_fontconfig): either add mf/out to
11975         FontConfig or fonts/{otf,type1,etc}
11976
11977         * GNUmakefile.in: don't put mf/ link in share/ dir.
11978
11979         * lily/staff-spacing.cc: move same-direction-correction to
11980         note-spacing-interface
11981
11982         * scm/lily.scm (lilypond-main): use variable argument count for
11983         exception handler.
11984
11985         * lily/font-config.cc (init_fontconfig): add operator pacification
11986         message.
11987
11988         * mf/aybabtu.pe.in (i): generate PFAAybabtu.pfa
11989
11990         * buildscripts/gen-emmentaler-scripts.py (i): generate
11991         PFAEmmentaler as well.
11992
11993         * scm/framework-ps.scm (munge-lily-font-name): new function
11994         (write-preamble): hack: insert PFA equivalent of CFF into
11995         .PS. This makes LilyPond output printable on normal PS printers
11996         again.
11997
11998         * buildscripts/gen-emmentaler-scripts.py (i): generate
11999         PFAEmmentaler.pfa aswell.
12000
12001 2005-04-06  John Williams <williams@tni.com>  
12002         
12003         * scripts/lilypond-book.py: refactor the compose_ly procedure.
12004         
12005 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12006
12007         * scm/page-layout.scm (default-page-make-stencil): always combine
12008         the header stencil, even if empty. This prevents the body text to
12009         reach up to the margins.
12010
12011         * po/rw.po (Module): new file, for Kinyarwanda.
12012
12013         * input/test/spacing-optical.ly (Module): new file.
12014
12015         * lily/staff-spacing.cc: add same-direction-correction
12016
12017 2005-04-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12018
12019         * Documentation/user/introduction.itely (Engraving): Comment-out
12020         non-existent file.
12021
12022 2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12023
12024         * scm/define-grob-properties.scm (all-user-grob-properties): add
12025         same-direction-correction
12026
12027         * VERSION: release 2.5.18
12028
12029 2005-04-05  Jan Nieuwenhuizen  <janneke@gnu.org>
12030
12031         * lily/grob.cc (mark_smob): Check pscore->layout_ before
12032         dereferencing.  Fixes make web.
12033
12034         * lily/midi-stream.cc: Handle unwritable midi file.  Include
12035         errno.h.
12036
12037         * Documentation/user/: Fix links.
12038
12039 2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12040
12041         * lily/text-interface.cc (Module): rename from text-item.cc
12042
12043         * input/regression/apply-output.ly (texidoc): function naming fix.
12044
12045         * lily/time-signature-performer.cc (derived_mark): new function.
12046
12047         * lily/lily-parser-scheme.cc:  print mapped file name for progress
12048
12049         * scripts/lilypond-book.py (find_linestarts): new function.
12050         (find_toplevel_snippets): keep track of line numbers.
12051
12052         * lily/key-performer.cc (try_music): remove FIXME warning, gobble
12053         all key changes.
12054
12055         * ly/declarations-init.ly (partCombineListener): use
12056         ignoreBarChecks. Fixes: warn-partcombine-barcheck.ly
12057
12058         * lily/bar-check-iterator.cc (process): ignoreBarChecks property.
12059
12060 2005-04-04  Jan Nieuwenhuizen  <janneke@gnu.org>
12061
12062         * lily/text-item.cc: Fix link.
12063
12064         * Documentation/user/changing-defaults.itely (Changing defaults):
12065         Fix programs reference links.
12066
12067         * Documentation/user/music-glossary.tely: Convert to utf-8.
12068
12069 2005-04-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12070
12071         * make/lilypond-vars.make: remove TEXMF from variables.
12072         remove DEB_BUILD pk font variables.
12073         remove GUILE_LOAD_PATH
12074         remove TeX memory vars.
12075
12076 2005-04-04  Werner Lemberg  <wl@gnu.org>
12077
12078         * lilypond/scm-option.cc (ly_option_usage): Add final newline.
12079
12080 2005-04-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12081
12082         * ps/lilyponddefs.ps: remove reencode-font
12083
12084         * lily/simple-spacer.cc (add_columns): also compare
12085         directly. Column rank doesn't distinguish between broken and
12086         unbroken columns. This fixes large spaces before time sig changes.
12087
12088         * Documentation/user/point-and-click.itely: document ly:set-option.
12089
12090         * lily/grob.cc (get_uncached_stencil): only set grob-cause if
12091         point_and_click_global is set.
12092
12093         * lily/scm-option.cc (LY_DEFINE): add point-and-click
12094         ly:set-option argument.
12095
12096 2005-04-03  Jan Nieuwenhuizen  <janneke@gnu.org>
12097
12098         * GNUmakefile.in: Include symlinks in webball.
12099
12100         * Documentation/user/GNUmakefile (source-links): Add symlinks to
12101         source dir for split and non-split manuals.
12102
12103         * Documentation/user/*y: Fix @uref/@inputfile links for
12104         split/non-split HTML documents.
12105
12106         * Documentation/user/GNUmakefile (local-WWW): Do not generate
12107         .ps.gz.
12108         
12109 2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
12110
12111         * GNUmakefile.in: Add newline.
12112
12113 2005-04-01  Erlend Aasland  <erlenda@gmail.com>
12114
12115         * tex/lilyponddefs.tex: use color instead of xcolor
12116         * scm/output-tex.scm: minor editing
12117
12118 2005-04-02  Nicolas Sceaux  <nicolas.sceaux@free.fr>
12119
12120         * scm/music-functions.scm (display-scheme-music): pretty printer
12121         for music expressions.
12122
12123 2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
12124
12125         * buildscripts/install-info-html.sh (index_file): Fix link.
12126
12127 2005-04-01  Jan Nieuwenhuizen  <janneke@gnu.org>
12128
12129         * input/test/dynamic-extra.ly (piuf): Use utf-8 iso TeX accent.
12130
12131         * Documentation/index.html.in: Add size estimates with some big pages.
12132
12133         * Documentation/user/tutorial.itely (Running LilyPond for the
12134         first time): Add/replace some @rglos links.  TODO: add more
12135         @rglos links in tutorial, test non-intrusiveness (.css).
12136
12137         * stepmake/bin/add-html-footer.py (do_file): Remove info's
12138         annoying's indication of referencing external document.
12139
12140         * Documentation/user/GNUmakefile: Split version of glossary too.
12141         * Documentation/user/macros.itexi (@rglos): Have makeinfo produce
12142         links, not only for html.
12143
12144         * Documentation/user/introduction.itely: Fix some links for other
12145         than html, do not use `here' as link name.
12146
12147 2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
12148
12149         * scm/documentation-generate.scm (string-append): Fix @usermanref,
12150         @glossaryref.
12151
12152 2005-03-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12153
12154         * scm/page-layout.scm (default-page-make-stencil): only add header
12155         if existing and not empty. Fixes spurious programming error.
12156
12157         * lily/span-bar.cc (print): don't make rounded edges for spanbars.
12158
12159 2005-03-31  Erlend Aasland  <erlenda@gmail.com>
12160
12161         * scm/output-tex.scm: implement {re,}setcolor
12162         * tex/lilyponddefs.tex: use color package
12163
12164 2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
12165
12166         * GNUmakefile.in (local-WWW-post): Restore .htaccess and .html
12167         additions to website.
12168
12169         * Documentation/user/lilypond.tely: Remove reference to ps.gz.
12170
12171         * Documentation/user/macros.itexi: Fix @usermanref html links in
12172         split documents: use @inforef.
12173
12174 2005-03-30  Graham Percival  <gperlist@shaw.ca>
12175
12176         * Documentation/user/programming-interface.itely: minor fix.
12177
12178         * Documentation/user/advanced-notation.itely: added info to
12179         Metronome markings.
12180
12181 2005-03-30  Jan Nieuwenhuizen  <janneke@gnu.org>
12182
12183         * scm/output-lib.scm (make-stencil-boxer): Junk code duplication,
12184         use box-stencil.  Remove y-padding argument.
12185         (make-stencil-circler): New function.
12186
12187         * buildscripts/lilypond-words.py (F): 
12188         * elisp/SConscript (a): 
12189         * elisp/GNUmakefile (LILYPOND_WORDS_DEPENDS):
12190         * vim/SConscript (a): 
12191         * vim/GNUmakefile (LILYPOND_WORDS_DEPENDS): Update.
12192
12193         * lily/general-scheme.cc: Build fix.
12194
12195         * scm/markup.scm:
12196         * input/regression/markup-scheme.ly: 
12197         * input/regression/markup-syntax.ly: Drop 'new-' from name.
12198
12199         * scm/stencil.scm (make-circle-stencil): New function.
12200
12201         * scm/define-markup-commands.scm (draw-circle): Use it.  New
12202         name (was cicle).  Update callers.
12203         (circle): New markup command, similar to box.
12204
12205         * scm/stencil.scm (circle-stencil): New function.
12206
12207 2005-03-29  David Jedlinsky  <lilypond@ipnh.com>
12208
12209         * configure.in: Detect libutf8/wchar.h variant.
12210
12211         * stepmake/aclocal.m4: Modify shared size test.
12212
12213 2005-03-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12214
12215         * make/lilypond.fedora.spec.in (Group): remove texmf profile stuff.
12216
12217 2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12218
12219         * scripts/convert-ly.py (conv): add stencil-aligned-to! rule.
12220         
12221         * VERSION (PACKAGE_NAME):  release 2.5.17
12222
12223 2005-03-29  Jan Nieuwenhuizen  <janneke@gnu.org>
12224
12225         * scm/backend-library.scm (postscript->png): Fix comment and png
12226         message.
12227
12228         * GNUmakefile.in (link-tree): Fix locales.
12229
12230 2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12231
12232         * lily/stencil-scheme.cc (LY_DEFINE): change to
12233         ly:stencil-aligned-to, non mutating.
12234
12235         * scm/safe-lily.scm (lambda): remove ly:stencil-set-extent!
12236
12237         * lily/stencil-scheme.cc: remove ly:stencil-set-extent!
12238
12239         * lily/quote-iterator.cc (derived_mark): call
12240         Music_wrapper_iterator::derived_mark() too.
12241
12242         * lily/grace-engraver.cc (derived_mark): change signature, add
12243         const.
12244
12245 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12246
12247         * SConstruct (symlink): 
12248         * GNUmakefile.in (link-tree): Add scripts to prefix.
12249
12250         * lily/general-scheme.cc (ly:effective-prefix): New function.
12251
12252         * scm/backend-library.scm (postscript->png): Use it.
12253
12254 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12255
12256         * lily/paper-score.cc (process): don't delete grobs after
12257         producing stencils. 
12258
12259         * scm/part-combiner.scm (determine-split-list): switch off
12260         debugging info.
12261
12262         * scm/backend-library.scm (postscript->png): explicitly use ps2png.py
12263         if available.
12264
12265         * scm/define-context-properties.scm
12266         (all-user-translation-properties): add stringNumberOrientations.
12267
12268         * lily/new-fingering-engraver.cc (position_scripts): make generic,
12269         so fingering and string-numbers are separately controlled.
12270
12271 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12272
12273         * stepmake/aclocal.m4: Fix shared size test: add missing comma, do
12274         not use debugging.
12275
12276 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12277
12278         * GNUmakefile.in (local-WWW-post): remove UTF8 .htaccess.
12279
12280         * config.hh.in: add HAVE_FONTCONFIG.
12281
12282         * Documentation/user/instrument-notation.itely (String number
12283         indications): new node.
12284
12285         * input/regression/new-markup-syntax.ly (texidoc): add circle.
12286
12287         * lily/new-fingering-engraver.cc (add_string): new function. 
12288         (acknowledge_grob): accept string-number-event as well.
12289
12290         * scm/define-markup-commands.scm (circle): new markup command.
12291
12292         * scm/output-lib.scm (print-circled-text-callback): new function.
12293
12294         * lily/GNUmakefile: move ifeq after include stepmake.make.
12295
12296 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12297
12298         * config.make.in (HAVE_LIBKPATHSEA_SO):
12299         * stepmake/aclocal.m4: Also subst HAVE_LIBKPATHSEA_SO.
12300
12301         * lily/GNUmakefile (MODULE_LDFLAGS): Only if not HAVE_KPATHSEA_SO,
12302         add KPATHSEA_LIBS.
12303
12304         * debian/watch: 
12305         * debian/control: Update.
12306
12307 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12308
12309         * input/test/title-markup.ly (spaceTest): remove.
12310
12311         * input/test/embedded-tex.ly (Module): remove.
12312
12313         * input/test/music-box.ly: use 'name property, not ly:music-name.
12314
12315         * lily/GNUmakefile (MODULE_LDFLAGS): add KPATHSEA_LIBS.
12316
12317         * stepmake/aclocal.m4: STEPMAKE_FONTCONFIG: add.
12318
12319 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12320
12321         * Documentation/topdocs/INSTALL.texi (Top): Remove information
12322         about xdeltas.  Add information about CVS.
12323
12324         * scm/lily.scm (lilypond-main): Fix invocation of handler,
12325         gracefully handle failed files.
12326
12327         * lily/GNUmakefile (MODULE_LDFLAGS): Remove KPATHSEA_LIBS.
12328
12329         * Documentation/topdocs/INSTALL.texi (Top): Whitespace and other
12330         small fixes.
12331
12332         * scm/framework-tex.scm (convert-to-ps): Proper option spacing.
12333         No unnecessarily specific i18n messages.  Remove stray `1'.
12334
12335 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12336
12337         * buildscripts/lys-to-tely.py (strip_extension): add utf-8
12338         documentencoding
12339
12340         * scm/documentation-lib.scm (texi-file-head): set utf-8
12341         documentencoding.
12342
12343         * ly/chord-modifiers-init.ly (whiteTriangleMarkup): use the greek
12344         Delta, not the Symbol one. 
12345
12346         * mf/GNUmakefile ($(outdir)/lilypond.map): add -Regular to Aybabtu
12347         for the .map file.
12348
12349         * Documentation/topdocs/INSTALL.texi (Top): add running
12350         requirement as compilation requirement.
12351
12352 2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12353
12354         * buildscripts/mutopia-index.py (headertext): add h1 header and
12355         utf-8 charset meta field.
12356
12357         * input/GNUmakefile: prune example list.
12358
12359         * scm/framework-tex.scm (convert-to-ps): add -ofoo.ps to dvips
12360         options.
12361
12362         * lily/slur-scoring.cc (get_base_attachments): only look at stem
12363         extent for visible stems.
12364
12365         * lily/grob.cc (mark_smob): mark \layout block from Grob::mark_smob().
12366
12367 2005-03-27  Jan Nieuwenhuizen  <janneke@gnu.org>
12368
12369         * Documentation/topdocs/INSTALL.texi (Top): Updates.
12370
12371         * scripts/convert-ly.py: Python 2.2 compatibility (thanks Mats).
12372
12373 2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12374
12375         * lily/slur-scoring.cc (get_base_attachments): robustness. Don't
12376         pass inf/nan into slur scoring.
12377
12378         * ly/titling-init.ly (oddHeaderMarkup): don't show page no. on 1st
12379         page.
12380
12381         * scripts/abc2ly.py (dump_voices): use alphabet().
12382
12383 2005-03-27  Jeff Smith <whydoubt@yahoo.com>
12384         
12385         * mf/GNUmakefile (depth): use $(FONTFORGE). 
12386
12387 2005-03-27 Matthias Neeracher <neeracher@mac.com>
12388         
12389         * flower/include/virtual-methods.hh: simplify. Patch by
12390
12391 2005-03-25  John Williams <williams@tni.com>  
12392
12393         * scripts/lilypond-book.py (main): add png for HTML too, guess
12394         only if necessary. 
12395
12396 2005-03-25  Graham Percival  <gperlist@shaw.ca>
12397
12398         * Documentation/topdocs/INSTALL.texi: now recommends
12399         lexer-gcc-3.1.sh for gcc 3.1.1 or higher.
12400
12401         * Documentation/user/basic-notation.itely,
12402         Documentation/user/tutoria.itely: warn about
12403         only one (phrasing) slur at once.
12404
12405 2005-03-24  Pedro Kroger  <kroeger@pedrokroeger.net>
12406
12407         * ly/music-functions-init.ly (removeWithTag): fixed to return "music".
12408
12409 2005-03-23  Graham Percival  <gperlist@shaw.ca>
12410
12411         * Documentation/user/basic-notation.itely: fixed info about
12412         ending a (de)cresc.
12413
12414         * Documentation/user/lilypond-book.itely: fixed
12415         lilypond-book filter example and warned about not doing
12416         --filter and --process at the same time.
12417
12418 2005-03-23  Mats Bengtsson  <mabe@s3.kth.se>
12419
12420         * lily/parser.yy (bass_number),
12421         Documentation/user/instrument-notation.itely (Figured bass): 
12422         Add the possibility to use text markup in figured bass. 
12423
12424 2005-03-19  Graham Percival  <gperlist@shaw.ca>
12425
12426         * Documentation/user/global.itely: added info about naming
12427         identifiers and breakbefore.
12428
12429         * Documentation/user/invoking.itely: added info about batch
12430         processing files with convert-ly, removed references to TeX
12431         in the jail section.
12432
12433         * Documentation/user/examples.itely: possibly fixed piano
12434         dynamics.
12435
12436         * Documentation/user/advanced-notation.itely: added info
12437         about removing other types of Staff.
12438
12439         * Documentation/user/instrument-notation.itely: possibly
12440         fixed piano staff line switch.
12441
12442         * Documentation/user/changing-defaults.itely: added info
12443         about using normal font in titles.
12444
12445 2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12446
12447         * VERSION (PATCH_LEVEL): release 2.5.16
12448
12449         * make/ly-vars.make (DVIPS_FLAGS): include lilypond.map path
12450         explicitly.
12451
12452 2005-03-18  Jan Nieuwenhuizen  <janneke@gnu.org>
12453
12454         * scm/framework-tex.scm (convert-to-dvi): Barf if NAME contains
12455         whitespace.
12456
12457         * python/lilylib.py (make_ps_images):
12458         * scm/backend-library.scm (postscript->pdf, postscript->png):
12459         Quote file name.  Use format rather than string-append juggling.
12460
12461 2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12462
12463         * python/lilylib.py (make_ps_images): add x to -g argument. 
12464
12465         * lily/key-performer.cc (create_audio_elements): don't use
12466         scm_eval_string. Check for minor 3rd directly.
12467   
12468         * input/mutopia/J.S.Bach/baerenreiter-sarabande.ly
12469         (sarabandeCelloGlobal): key is D minor, not F major.
12470
12471 2005-03-17  Jan Nieuwenhuizen  <janneke@gnu.org>
12472
12473         Fix truncated --png output (Peter Danenberg).
12474         
12475         * python/lilylib.py (make_ps_images):
12476         * scripts/ps2png.py (copyright): Grok --papersize option.
12477
12478         * scm/backend-library.scm (postscript->png): Add parameter
12479         PAPERSIZE.  Update callers.
12480
12481         * scm/output-gnome.scm (music-font?): Bugfix: use "Emmentaler".
12482         Fixes symbol placement.
12483
12484         * lily/spanner.cc: 
12485         * lily/stencil.cc: Use "libc-extension.hh" (WAS:
12486         <libc-extension.hh>).
12487
12488 2005-03-16  Jan Nieuwenhuizen  <janneke@gnu.org>
12489
12490         * Nitpick run.
12491
12492         * buildscripts/fixcc.py: Update.
12493
12494         Builddir run fixes.
12495
12496         * HACKING (datadir): Add VERSION.
12497
12498         * GNUmakefile.in (linktree): Bugfix: outconfdirs are one dir
12499         higher up.
12500
12501 2005-03-15  Werner Lemberg  <wl@gnu.org>
12502
12503         * mf/feta-klef.mf (draw_gclef): Move z10' slightly so that the
12504         diagonal stem doesn't become thinner.
12505
12506 2005-03-15  Jan Nieuwenhuizen  <janneke@gnu.org>
12507
12508         * buildscripts/fixcc.py: Fixes (Werner).
12509
12510 2005-03-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12511
12512         * mf/GNUmakefile ($(outdir)/lilypond.map): capitalize
12513         Emmentaler/Aybabtu.
12514
12515         * GNUmakefile.in: fix lilypond-words path.
12516
12517         * po/tr.po: update to 2.3.21
12518
12519         * lily/new-fingering-engraver.cc (position_scripts): take priority
12520         from head position.
12521
12522         * input/regression/finger-chords-order.ly (texidoc): new file.
12523
12524 2005-03-14  Jan Nieuwenhuizen  <janneke@gnu.org>
12525
12526         * make/ly-rules.make: 
12527         * stepmake/aclocal.m4: 
12528         * Documentation/user/GNUmakefile: Remove old makeinfo compatibility.
12529
12530         * buildscripts/fixcc.py (rules): Leave space after operator.
12531
12532 2005-03-14  Werner Lemberg  <wl@gnu.org>
12533
12534         * mf/feta-klef.mf (draw_gclef): Replace `simple_serif' for
12535         top of the glyph with smooth curve.
12536
12537 2005-03-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12538
12539         * Documentation/user/global.itely (Page layout): remove
12540         printpagenumber.
12541
12542 2005-03-13  Jürgen Reuter  <reuter@ipd.uka.de>
12543
12544         * input/regression/mensural-ligatures.ly: new file (with examples
12545         compiled by Pal Benko).
12546
12547         * Documentation/user/instrument-notation.itely: Bugfix: yet some
12548         other "custodes.*-u0" -> "custodes.*.u0" renaming victims in
12549         musicglyph access.  Many small beautifications in ancient
12550         examples.
12551
12552         * input/test/divisiones.ly: fixed indentation; small
12553         beautifications
12554
12555         * ly/engraver-init.ly: added FIXME comment
12556
12557         * scripts/lilypond-book.py,
12558         Documentation/user/lilypond-book.itely: added music fragment
12559         option "packed" to lilypond-book
12560
12561         * Documentation/user/instrument-notation.itely: Bugfix: added
12562         missing LedgerLineSpanner color setting in several places.  Added
12563         music fragment option "packed" to VaticanaContext example.
12564
12565 2005-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12566
12567         * scm/define-grobs.scm (all-grob-descriptions): switch off
12568         Hyphen_spanner::set_spacing_rods 
12569
12570         * lily/lyric-hyphen.cc (print): add padding between syllable and
12571         hyphen.
12572         (print): shorten hyphen in tight situations (determine using
12573         minimum-length)
12574
12575         * scm/paper.scm (layout-set-staff-size): increase blotdiameter to
12576         0.4pt.
12577
12578 2005-03-13  Jan Nieuwenhuizen  <janneke@gnu.org>
12579
12580         * ly/titling-init.ly (bookTitleMarkup): Refinements.
12581
12582         * input/regression/page-breaks.ly (paper): Set not raggedlastbottom,
12583         header/footer markings for regression-test.
12584
12585         * scm/backend-library.scm (output-scopes, header-to-file): Move
12586         from framework-tex.scm.
12587
12588         * scm/framework-ps.scm (output-framework)
12589         (output-preview-framework):
12590         * scm/framework-eps.scm (output-classic-framework)
12591         (output-framework): Use it.  Fixes collated files.
12592
12593 2005-03-12  Jan Nieuwenhuizen  <janneke@gnu.org>
12594
12595         * input/sakura-sakura.ly: 
12596         * input/xiao-haizi-guai-guai.ly: Add from Debian package (Anthony).
12597
12598         * buildscripts/guile-gnome.sh: Update.
12599
12600         * mf/GNUmakefile (aybabtu.otf): Add dependency on .pe.
12601
12602         * mf/aybabtu.pe.in: Capitalize Aybabtu.
12603
12604 2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12605
12606         * lily/separating-group-spanner.cc (find_rods): oops. Fix the real
12607         culprit: always exit the loop if we find a rod, even if it has
12608         distance < 0. 
12609
12610         * lily/ledger-line-spanner.cc (set_spacing_rods): rewrite to O(n)
12611         algorithm.
12612
12613         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
12614         $(outdir)/%.svg $(outdir)/%.pfa): add --simplify.
12615
12616         * scm/output-svg.scm (dashed-line): new  function body.
12617         
12618         * GNUmakefile.in: create .htaccess.
12619
12620 2005-03-11  Jan Nieuwenhuizen  <janneke@gnu.org>
12621
12622         * Documentation/topdocs/NEWS.tely (Top): Fix text example.
12623
12624 2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12625
12626         * VERSION (PACKAGE_NAME): release 2.5.15
12627
12628         * scm/output-{pdf,pdftex,sketch}.scm (Module): remove bitrotted files.
12629
12630         * scm/framework-svg.scm (output-framework): put scaling in
12631         document header. Apply scaling only once.
12632         (output-framework): dump page size in px, not mm. 
12633
12634         * scm/lily-library.scm (modified-font-metric-font-scaling): rename
12635         from font-size.
12636
12637         * lily/paper-outputter-scheme.cc (LY_DEFINE):
12638         ly:outputter-output-scheme, new function.
12639
12640         * scm/output-svg.scm (pango-description-to-svg-font): new function
12641
12642 2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12643
12644         * Documentation/user/GNUmakefile (deep-symlinks): remove outimages
12645         target.
12646
12647         * input/typography-demo.ly: new file.
12648
12649 2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
12650
12651         * Documentation/user/global.itely (File structure): Add markup blocks
12652         to toplevel expressions.
12653         (Multiple movements, Creating titles): Add markup blocks.
12654
12655         * lily/stencil-scheme.cc: Use "libc-extension.hh" (WAS:
12656         <libc-extension.hh>).
12657
12658         * lily/accidental.cc (accurate_boxes): Compile fix: 1.51 was broken.
12659
12660         * flower
12661         * lily
12662         * kpath-guile: Nitpick run: buildscripts/fixcc.py.
12663
12664 2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12665
12666         * lily/accidental.cc: special bboxes for natural. 
12667
12668         * mf/feta-toevallig.mf: make stems heavier.
12669
12670         * lily/dynamic-text-spanner.cc (print): add bound padding for edge
12671         texts as well.
12672
12673         * mf/feta-klef.mf: revise. 
12674
12675         * mf/feta-schrift.mf: make thinning of accent less pronounced.
12676
12677         * mf/feta-klef.mf: add rounded curve at top. 
12678         make thinnib a little heavier.
12679
12680 2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
12681
12682         * lily/parser.yy (book_body): Oops, allow \markup in \book too.
12683
12684         * buildscripts/fixcc.py: New file.
12685
12686         * input/regression/utf8.ly: Update Debian font description.
12687
12688 2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
12689
12690         * stepmake/aclocal.m4: Fix test.
12691
12692 2005-03-09  Graham Percival  <gperlist@shaw.ca>
12693
12694         * Documentation/user/invoking.itely: added Sebastino Vigna's
12695         docs for the --jail option.
12696
12697 2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12698
12699         * lily/stem.cc (print): only produce stemlets if there are no
12700         noteheads on this stem.
12701
12702         * lily/note-spacing.cc (stem_dir_correction): robustness fix:
12703         don't crash on stemlet (visible stem without heads).
12704
12705         * scm/define-grobs.scm (all-grob-descriptions): junk LeftEdge for
12706         unbroken situations. 
12707
12708         * scm/output-lib.scm (center-invisible): new function.
12709
12710         * lily/spacing-loose-columns.cc (set_loose_columns): use spacing
12711         wishes to determine loose column space.
12712
12713         * lily/font-config.cc (init_fontconfig): add
12714         fonts/{otf,type1,cff}  to path.
12715
12716         * lily/main.cc (setup_paths): add fonts/{otf,svg,tfm,cff} to path
12717
12718         * mf/GNUmakefile (Module): install all fonts under otf/
12719
12720         * scm/framework-ps.scm (Module): read fonts from fonts/extension,
12721         replace /fonts/otf/ by /ps/ 
12722
12723         
12724 2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
12725
12726         * lily/paper-book.cc (classic_output): Reinstate header_0_ hack.
12727
12728         * lily/book.cc (process): Oops, add score_.header_.
12729
12730         * lily/paper-book.cc: Fold hearders, score and texts into scores_.
12731
12732         * lily/parser.yy: Handle toplevel and book texts as score.
12733
12734         * scm/page-layout.scm (default-page-make-stencil):
12735         Bugfix: (page-properties rename.
12736
12737         * scm/backend-library.scm (ly:system): Typo.
12738
12739 2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12740
12741         * stepmake/stepmake/executable-targets.make (installexe): don't
12742         strip installed executables
12743
12744         * lily/font-select.cc (get_font_by_design_size): revert
12745         pango_description_string as well.
12746
12747         * lily/system.cc (set_loose_columns): put loose column just left
12748         of next column.
12749
12750         * lily/include/group-interface.hh (extract_grob_array): rename
12751         from Pointer_group_interface__extract_grobs
12752
12753         * input/regression/ledger-line-minimum.ly (texidoc): new file.
12754
12755         * lily/ledger-line-spanner.cc (set_spacing_rods): new
12756         function. Keep ledgered note heads at a minimum distance.
12757         Introduce minimum-length-fraction
12758         (print): introduce length-fraction property.
12759
12760 2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12761
12762         * tex/GNUmakefile: remove latin1.enc rules.
12763
12764 2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
12765
12766         * scm/titling.scm: Typo.
12767
12768         * input/regression/score-text.ly: Really add.
12769
12770         * lily/score.cc: Bugfixes for SCM header_ and texts_ members.
12771
12772 2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12773
12774         * lily/open-type-font-scheme.cc:  new file.
12775
12776 2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
12777
12778         * scm/titling.scm (layout-extract-page-properties): Rename from
12779         page-properties.  Update callers.
12780
12781         * lily/lexer.ll (Lily_lexer):
12782         * lily/parser.yy: Junk lyric_markup state.
12783
12784         * Documentation/topdocs/NEWS.tely (Top): Mention markup text feature.
12785
12786         * scripts/lilypond-book.py (PREAMBLE_LY): toplevel-music-handler:
12787         Add texts parameter.
12788
12789 2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
12790
12791         * lily/lexer.ll (lyric_markup): New mode.
12792         (Lily_lexer::push_lyric_markup_state): New method.
12793         (MARKUPCOMMAND): Markup during lyric mode returns LYRIC_MARKUP.
12794
12795         * lily/parser.yy (book_body):
12796         (toplevel_expression): Grok \markup texts.
12797
12798         * lily/score-scheme.cc (ly:music-scorify): 
12799         * scm/lily-library.scm (collect-music-for-book): Take texts
12800         parameter.
12801
12802         * lily/score.cc (texts_): New member.
12803
12804         * lily/paper-book.cc (systems): Format score texts.
12805
12806         * score-text.ly: New file.
12807
12808         * ttftool/SConscript:
12809         * kpath-guile/SConscript: New file.
12810
12811         * lily/SConscript:
12812         * SConstruct: Update.
12813
12814 2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12815
12816         * VERSION (PACKAGE_NAME): release 2.5.14
12817
12818 2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
12819
12820         * lily/main.cc: Add dummy xgettext markers.
12821
12822 2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12823
12824         * make/lilypond.fedora.spec.in (Requires): scrap kpathsea/tex
12825         requirements
12826
12827         * stepmake/aclocal.m4: check dynamic link, by checking if kpathsea
12828         executable is < 40k
12829
12830         * lily/main.cc (setup_paths): remove tfm1 tfm2 tfm3 include path
12831         hack.
12832
12833 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12834
12835         * flower/libc-extension.cc:
12836         * flower/include/libc-extension.hh: [Open]BSD simply cast
12837         cookie/funopen declarations.
12838
12839         * stepmake/aclocal.m4: Check for libkpathsea.so.
12840
12841         * kpath-guile/kpath.c (ly_kpathsea_expand_variable): Use
12842         dl_kpse_find_file.
12843
12844 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12845
12846         * kpath-guile/kpath.c (open_library): dlopen libkpathsea.so
12847         (open_library): alternative for static library.
12848
12849 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12850
12851         * configure.in: Set TTFTOOL_ENDIAN iso global CFLAGS.
12852
12853         * ttftool/GNUmakefile (MODULE_CFLAGS): Add $(TTFTOOL_ENDIAN).
12854
12855         Drop run-time dependency on teTeX.
12856
12857         * lily/kpath.cc (initialize_kpathsea): dlopen libkpathsea.
12858
12859         * stepmake/aclocal.m4 (STEPMAKE_KPATHSEA): Do not include
12860         KPATHSEA_LIBS in LIBS.
12861         (STEPMAKE_DLOPEN): New function.
12862
12863         * lily/font-config.cc (init_fontconfig): Use dir for directory,
12864         not path.
12865
12866         * flower/file-path.cc (directories): Rename from paths, as this
12867         return an array of directories (a single path).
12868
12869 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12870
12871         * lily/GNUmakefile (MODULE_LIBS): link with kpath-guile
12872
12873         * lily/all-font-metrics.cc (kpathsea_find_file): wrapper around
12874         new ly:kpathsea-find-file
12875
12876         * kpath-guile/kpath.c: new file. Put kpath bindings in lib.
12877
12878         * kpath-guile/GNUmakefile: new file
12879
12880         * buildscripts/gen-emmentaler-scripts.py (i): generate
12881         emmentaler-X.fontname as well.
12882
12883         * buildscripts/ps-embed-cff.py: new script
12884
12885         * scm/lily-library.scm: remove ps-embed-cff.
12886
12887         * scm/framework-ps.scm (write-preamble): don't use kpathsea for
12888         font loading. 
12889
12890         * scm/font.scm (add-music-fonts): load dynamics/numbers through
12891         fontconfig as well.
12892
12893         * lily/font-config.cc (init_fontconfig): add cff/ too.
12894
12895         * ly/generate-embedded-cff.ly: capitalize.
12896
12897         * lily/pango-select.cc (select_pango_font): use ::find_pango_font,
12898         so as to register the pango font.
12899
12900         * lily/font-config.cc (init_fontconfig): add
12901         prefix/{otf,type1,mf/out} to fontconfig path.
12902
12903         * lily/main.cc: only look at one prefix directory, LILYPONDPREFIX
12904         overrides all. 
12905
12906         * configure.in (gui_b): remove ec mftrace check
12907
12908         * config.hh.in: use lilypond-Major.Minor as data directory.
12909
12910         * scm/framework-ps.scm (dump-page): use output-units for landscape.
12911
12912         * buildscripts/gen-emmentaler-scripts.py (i): lower case file
12913         name.
12914
12915 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12916
12917         * lily/main.cc (do_chroot_jail): Small cleanups.  Avoid constant
12918         error messages.
12919
12920         * flower/libc-extension.cc:
12921         * flower/include/libc-extension.hh: [Open]BSD fixes for
12922         cookie/funopen declarations.
12923
12924 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12925
12926         * buildscripts/gen-emmentaler-scripts.py (outdir): capitalize
12927         emmentaler.
12928
12929         * lily/score-engraver.cc (initialize): remove check for ecrm10 /
12930         lcrm10.
12931
12932         * scm/define-markup-commands.scm (fontsize): new markup
12933         command. Also set baseline-skip
12934
12935 2005-03-06 Sebastiano Vigna <vigna@dsi.unimi.it>.
12936         
12937         * lily/main.cc (do_chroot_jail): paranoia security for webserver
12938         use.
12939
12940 2005-03-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12941
12942         * stepmake/bin/add-html-footer.py (do_file): make wiki link optional.
12943
12944         * lily/pdf.cc: remove PDF related files
12945
12946 2005-03-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12947
12948         * ly/deutsch.ly: add quarter tones, patch by Arno Waschk.
12949         <hamamatsu@gmx.de>
12950
12951 2005-03-05  Graham Percival  <gperlist@shaw.ca>
12952
12953         * Documentation/user/advanced-notation.itely: first draft
12954         of reorg done.
12955
12956         * Documentation/user/global.itely: fixed (sub)section
12957         bits of MIDI.
12958
12959 2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
12960
12961         * cygwin/mknetrel (extras): Bufix (Bertalan).
12962
12963         * Documentation/user/basic-notation.itely (Chords): @ref fix.
12964         * Documentation/user/instrument-notation.itely (Introducing chord
12965         names): Compile fix: must have unique name.
12966
12967 2005-03-02  Graham Percival  <gperlist@shaw.ca>
12968
12969         * Documentation/user/instrument-notation.itely: reorg.
12970
12971 2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
12972
12973         * scm/output-gnome.scm:
12974         * scm/output-svg.scm: Fix font scaling.
12975
12976 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
12977
12978         * ly/titling-init.ly (tagline): Use Engraving.  Add comment about
12979         what link to use best.
12980
12981         * Documentation/user/instrument-notation.itely (Ancient accidentals): 
12982         * Documentation/user/tutorial.itely (Automatic and manual beams):
12983         Fix @ref.
12984
12985         * lily/tweak-registration.cc (replace_grob_tweak): New function.
12986         * lily/tweak-registration-scheme.cc (LY_DEFINE): Wrap it.
12987         * scm/framework-gnome.scm (tweak): Use it.
12988
12989 2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12990
12991         * Documentation/topdocs/NEWS.tely (Top): elucidate GS problem.
12992
12993         * scm/output-ps.scm (white-text): reinstate white-text
12994
12995 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
12996
12997         * scm/output-ps.scm (offset-add): Remove.
12998
12999         * scm/lily-library.scm (offset-flip-y): New function.
13000         * scm/framework-gnome.scm (tweak): Use it.
13001
13002         * scm/output-gnome.scm (grob-cause): Add parameter.
13003
13004         * scm/lily.scm (ly:all-stencil-expressions): Add url-link.
13005         * scm/output-ps.scm (url-link): Move.
13006         (white-text): Warn user about brokenness.
13007
13008         * Documentation/topdocs/NEWS.tely: Be more accurate and respectful
13009         wrt ghostscript.
13010
13011 2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13012
13013         * lily/slash-repeat-engraver.cc (try_music): always make slashes
13014         if body length smaller than measure length.
13015
13016         * scm/define-markup-commands.scm (with-url): oops. use Y extent
13017         for Y.
13018
13019         * ly/titling-init.ly (tagline): put default tagline in \paper
13020
13021 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13022
13023         * lily/kpath.cc: 
13024         * lily/pdf.cc (Pdf_file): Use more generic error messages.
13025
13026         * scm/lily-library.scm (version-not-seen-message): New function.
13027         * ly/init.ly: Use it.
13028
13029         * scm/page-layout.scm (ly:optimal-page-breaks): Display page
13030         breaks as progess.
13031
13032         * scripts/lilypond-book.py (do_process_cmd): Do not lump
13033         whitespace with l10n message.
13034
13035         * scm/framework-tex.scm (convert-to-ps):
13036         (convert-to-dvi): Do not use overly specific l10n messages.
13037
13038         * ly/titling-init.ly (bookTitleMarkup): Add baseline skips from 2.4.
13039
13040         * tex/GNUmakefile $(outdir)/latin1.enc: Build fix:
13041         merge stderr with stdout.  
13042
13043 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13044
13045         * flower/libc-extension.cc: Tested BSD compile fix (Matthias
13046         Neeracher).
13047
13048 2005-02-29  Graham Percival  <gperlist@shaw.ca>
13049
13050         * Documentation/user/instrument-notation.teily: moved
13051         \arpeggio to Basic.
13052
13053         * Documentation/user/advanced-notation.itely: Articulation to
13054         Basic, a bunch of stuff from Basic moved to Advanced.
13055
13056         * Documentation/user/basic.itely: swapped various sections,
13057         reorganized Basic.
13058
13059 2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
13060
13061         * flower/memory-stream.cc: 
13062         * flower/libc-extension.cc: Remove obsolete #undefs.
13063
13064         * flower/include/libc-extension.hh: Bugfix for BSD, place #ifdef
13065         more carefully.
13066
13067 2005-02-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13068
13069         * make/lilypond.fedora.spec.in (Requires): add GS 8.15 as
13070         dependency.
13071
13072         * VERSION (PACKAGE_NAME): release 2.5.13
13073
13074         * GNUmakefile.in (web-ext): don't ship ps.gz
13075
13076         * tex/GNUmakefile ($(outdir)/latin1.enc): redirect stderr to
13077         stdout
13078
13079 2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
13080
13081         * lily/general-scheme.cc (LY_DEFINE): Compile fix for systems
13082         without libintl.  Now it compiles too.
13083
13084 2005-02-28  Graham Percival  <gperlist@shaw.ca>
13085
13086         * Documentation/user/basic-notation.itely,
13087         instument-notation.itely, advanced-notation.itely:
13088         split up contents of notation.itely.
13089
13090         * Documentation/user/notation.itely: file removed.
13091
13092         * Documentation/user/invoking.itely, converters.itely:
13093         moved convert-ly info to invoking.itely.
13094
13095         * Documentation/user/global.itely, changing-defaults.itely,
13096         sound-output.itexi: moved global settings, file layout, and
13097         sound into global.itely.
13098
13099         * Documentation/user/sound-output.itexi: file removed.
13100
13101         * Documentation/user/lilypond.tely: removed links to
13102         notation.itely and sound.itely.
13103
13104 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13105
13106         * scm/output-ps.scm (grob-cause): only do mark_URI if non-empty.
13107
13108         * scm/framework-ps.scm (write-preamble): remove pdf-viewer code.
13109  
13110         * THANKS: add sponsor.
13111
13112         * scm/define-markup-commands.scm (with-url): new markup command.
13113
13114         * scm/page-layout.scm (TAGLINE): add www.lilypond.org with URL to
13115         tagline.
13116         
13117         * scm/output-tex.scm (url-link): stub.
13118
13119         * scm/output-ps.scm (url-link): new function.
13120
13121         * lily/lily-parser-scheme.cc (LY_DEFINE): deprecate
13122         ly:set-point-and-click
13123
13124 2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
13125
13126         * ps/music-drawing-routines.ps (mark_file_line): Switch Action
13127         based on pdf-viewer setting.
13128
13129         * scm/framework-ps.scm (write-preamble): Find and set preferred
13130         pdf-viewer.
13131
13132 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13133
13134         * Documentation/user/point-and-click.itely: update for PDF point &
13135         click.
13136
13137         * scripts/lilypond-pdfpc-helper.py: new file. Invoke different
13138         editors based on EDITOR setting.
13139
13140 2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
13141
13142         * scm/*: Oops, more grand 2005 replace bits.
13143
13144 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13145
13146         * ps/music-drawing-routines.ps: new routine: insert PDF mark
13147
13148         * scm/output-ps.scm (grob-cause): point & click support for
13149         PostScript
13150
13151 2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13152
13153         * lily/input-scheme.cc (LY_DEFINE): rename to
13154         ly:input-file-line-column
13155
13156 2005-02-26  Graham Percival  <gperlist@shaw.ca>
13157
13158         * Documentation/user/examples.itely: small fix from Steve Doonan.
13159
13160         * Documentation/user/scheme-tutorial.itely: small fix from Steve Doonan.
13161
13162         * THANKS: added Yuval Harel.
13163
13164         * Documentation/user/{various}: inserted two spaces after a period.
13165
13166         * Documentation/user/lilypond.tely: added framework for reorg.
13167
13168         * Documentation/user/basic-notation.itely, instrument-notation.itely,
13169         advanced-notation.itely, global.itely: new files, placeholder for
13170         future reorg.
13171
13172 2005-02-26 Yuval Harel  <yuvalh@hotpop.com>
13173
13174         * Documentation/user/notation.itely: revamped Polyphony section
13175         
13176 2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13177
13178         * Documentation/user/lilypond-book.itely (Music fragment options):
13179         doc fontload.
13180
13181         * Documentation/user/changing-defaults.itely (Text encoding): add
13182         fontload option to utf8 include
13183
13184         * scripts/lilypond-book.py (compose_ly): add fontload option
13185
13186         * scm/framework-eps.scm (dump-stencils-as-EPSes): add
13187         force-eps-font-include option.
13188
13189         * ly/chord-modifiers-init.ly (blackTriangleMarkup): reinstate
13190         black triangle
13191
13192         * Documentation/user/invoking.itely (Editor support): remove
13193         lilypond-latex section.
13194
13195         * scripts/lilypond-latex.py (Module): remove script.
13196
13197         * cygwin/lily-wins.py (stat): write to .lylog, so as not to
13198         overwrite .log. 
13199
13200         * lily/main.cc: remove -m, --no-layout
13201
13202         * flower/include/libc-extension.hh: add ALIAS_FILE_TO_FILECOOKIE
13203         to define. We don't want to override fprintf everywhere.
13204
13205 2005-02-26  Jan Nieuwenhuizen  <janneke@gnu.org>
13206
13207         * cygwin/lilypond.hint: 
13208         * cygwin/README.in: Update dependencies.
13209
13210         * stepmake/aclocal.m4 (STEPMAKE_PANGO, STEPMAKE_PANGO_FT2):
13211         Bugfix: do not pollute CPPFLAGS, LIBS.
13212
13213         * cygwin/mknetrel (extras): Cross compile fixes.
13214
13215         * ttftool/util.c: 
13216         * ttftool/ttfps.c: 
13217         * ttftool/ps.c: #include libc-extension.hh
13218
13219         * flower/include/libc-extension.hh:
13220         * flower/libc-extension.cc (fopencookie)[!HAVE_FOPENCOOKIE]: Add
13221         wrapper using funopen.
13222         (fopencookie, handle_cookie_io_fclose, handle_cookie_io_fprintf,
13223         handle_cookie_io_fprintf): Add wrappers catching Memory_out_stream.
13224
13225         * config.hh.in:
13226         * configure.in (AC_CHECK_FUNCS): Add fopencookie, funopen.
13227         (AC_CHECK_HEADERS): Add libio.h
13228
13229         * scripts/convert-ly.py: Uniformize, internationalize.
13230         (2.5.2): Remove fatal encoding rule.
13231         (2.5.13): Handle latin1 encoding gracefully.
13232
13233 2005-02-23  Jan Nieuwenhuizen  <janneke@gnu.org>
13234
13235         * HACKING: Fix line breaks.
13236
13237 2005-02-23  Werner Lemberg  <wl@gnu.org>
13238
13239         * mf/graycx.mf, mf/graylj.mf: Removed.  Any decent TeX distribution
13240         contains those two files.
13241
13242 2005-02-21  Werner Lemberg  <wl@gnu.org>
13243
13244         * mf/feta-nummer-code.mf ("Numeral 5"): Include intersection point
13245         to improve overlap removal process.
13246
13247         * mf/feta-slag.mf (draw_trillelement): Add parameter to control
13248         left and right ending.  This ensures better overlapping.
13249         Update all callers.
13250         ("lineprall"): Don't use draw_gridline to get better overlapping.
13251
13252 2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13253
13254         * scm/lily-library.scm (ps-embed-cff): add \n after EndResource
13255
13256         * Documentation/topdocs/NEWS.tely (Top): oops.
13257
13258 2005-02-21  Pedro Kroger  <kroeger@pedrokroeger.net>
13259
13260         * HACKING: new file.
13261
13262         * input/regression/utf8.ly (portuguese): added a portuguese example
13263         to show latin1 accents.
13264
13265 2005-02-21  Pal Benko  <benkop@freestart.hu>
13266
13267         * lily/mensural-ligature-engraver.cc:
13268         * lily/mensural-ligature.cc:
13269         * lily/include/mensural-ligature.hh: new algorithm implemented
13270
13271         * scm/define-grob-properties.scm: join-left killed (add-join may
13272         be used); join-left-amount changed to join-right-amount
13273
13274 2005-02-21  Graham Percival  <gperlist@shaw.ca>
13275
13276         * Documentation/user/notation.itely: small but urgent fix.
13277
13278 2005-02-21  Jürgen Reuter  <reuter@ipd.uka.de>
13279
13280         * lily/duration-scheme.cc: bugfix: correct parameters to
13281         SCM_ASSERT_TYPE.
13282
13283         * THANKS: added Pal.
13284
13285         * Documentation/user/notation.itely: bugfix: unTeXified
13286         $\\backslash$.  Bugfix: yet another glyph renaming victim:
13287         "timesig.*x/y" -> "timesig.*xy".
13288
13289 2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13290         
13291         * VERSION (PACKAGE_NAME): release 2.5.12
13292
13293 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13294
13295         * ly/engraver-init.ly: set tieWaitForNote to #t by default
13296
13297         * configure.in (gui_b): bump GUILE requirement to 1.6.5 
13298
13299         * Documentation/topdocs/NEWS.tely: add inputfileref macro.
13300
13301         * scm/framework-ps.scm (supplies-or-needs): uniq font name list.
13302
13303 2005-02-20  Jan Nieuwenhuizen  <janneke@gnu.org>
13304
13305         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly: recode
13306         latin1..utf-8.
13307
13308         * input/regression/stanza-number.ly:
13309         * input/regression/utf8.ly (hebrew): Use addlyrics.  Update.
13310
13311         * lily/tie-engraver.cc (acknowledge_grob): Compile fix.
13312
13313 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13314
13315         * Documentation/topdocs/NEWS.tely (Top): only mention 2.5
13316         NEWS. Refer to website for older news.  
13317
13318         * stepmake/bin/add-html-footer.py (i18n): don't strip .PNG /
13319         .HTML. This should be done for specific servers only.
13320
13321         * Documentation/topdocs/NEWS.tely (Top): move to .tely. Add some
13322         .ly image examples.
13323
13324         * scm/define-grobs.scm (all-grob-descriptions): put ledger lines
13325         in layer 0 too.
13326
13327         * scm/define-context-properties.scm
13328         (all-user-translation-properties): add tieWaitForNote
13329
13330         * scm/define-grobs.scm (all-grob-descriptions): add
13331         Tie_column::before_line_breaking
13332
13333         * lily/tie.cc (get_column_rank): new function
13334
13335         * lily/tie-column.cc (before_line_breaking): new function.
13336         (werner_directions): take into account ties that start on
13337         different columns.  
13338
13339         * lily/score-engraver.cc (set_columns): move add_column() so we
13340         have column rank available.
13341
13342         * lily/tie.cc (get_column_rank): new function.
13343
13344         * input/regression/utf8.ly (japanese): add japanese lyrics.
13345
13346         * lily/pfb.cc (LY_DEFINE): ly:ttf->pfa, new function.
13347
13348         * THANKS: add Steve D
13349
13350         * ttftool/*.c: add TTF -> Type42 conversion library. Based on
13351         Public Domain work by Juliusz Chroboczek <jch@pps.jussieu.fr>
13352
13353 2005-02-20  Tatsuya Ono  <tats_ono@infoseek.jp>
13354
13355         * mf/parmesan-heads.mf: "0harmonic" -> "s0harmonic"
13356         to show harmonic notes
13357         * scm/define-markup-commands.scm: in \markup-by-number
13358         "dots-dot" -> "dots.dot" to show dotted notes
13359
13360 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13361
13362         * flower/include/memory-stream.hh (class Memory_out_stream): new file.
13363
13364         * flower/memory-stream.cc (writer): new file.
13365
13366         * configure.in: add endian test.
13367
13368 2005-02-19  Jürgen Reuter  <reuter@ipd.uka.de>
13369
13370         * Documentation/user/examples.itely: small
13371         simplification/beautification
13372
13373         * Documentation/user/notation.ietly: bugfix: fixed many artefacts
13374         from the "x-y-z"->"x.y.z" renaming of glyphs throughout the whole
13375         notation manual.
13376
13377         * lily/mensural-ligature.cc: bugfix: another few victims of the
13378         "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
13379
13380         * ly/gregorian-init.ly: commit some experimental code for hi-level
13381         ligature input language lying around here for several months.
13382
13383         * lily/mensural-ligature-engraver.cc: bugfix: another victim of
13384         the "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
13385
13386         * lily/vaticana-ligature-engraver.cc: bugfix: another few
13387         "x-y-z"->"x.y.s-z" fixes.
13388
13389 2005-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13390
13391         * scm/framework-pdf.scm (scm): new file
13392
13393         * lily/include/pdf.hh (class Pdf_file): new file.
13394
13395         * lily/pdf.cc (write_trailer): new file.
13396
13397 2005-02-18  Erlend Aasland  <erlenda@gmail.com>
13398
13399         * input/regression/color.ly: new file
13400
13401         * lily/stencil.cc (interpret_stencil_expression):
13402         when a color expression is encountered: save current color,
13403         process the rest of the expression, and restore previous color.
13404
13405         * lily/system.cc (get_line): check all grobs for color property and
13406         prepare the stencil scheme expressions for further processing.
13407         Fix layer-loop.
13408
13409         * scm/define-grob-properties.scm: introduce the color property.
13410
13411         * scm/output-lib.scm: color helper functions.
13412
13413         * scm/output-ps.scm: introduce setcolor/resetcolor.
13414
13415 2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
13416
13417         * ly/*.ly, input/regression/*.ly: Added missing \version
13418         statements in some files.
13419
13420 2005-02-15  Graham Percival  <gperlist@shaw.ca>
13421
13422         * Documentation/user/notation.itely: minor editing.
13423
13424         * Documentation/user/converters.itely: updated convert-ly bugs.
13425
13426         * Documentation/user/lilypond-book.itely: add info about using
13427         feta characters in latex.
13428
13429 2005-02-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13430
13431         * scripts/convert-ly.py: new slur dash patch by Bertalan Fodor.
13432
13433 2005-02-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13434
13435         * scm/define-grob-properties.scm (all-user-grob-properties):
13436         removed 'dashed property.
13437
13438 2005-02-13  Nicolas Sceaux  <nicolas.sceaux@free.fr>
13439
13440         * scm/lily.scm (define-safe-public): new macro for defining
13441         variables that can be used in --safe mode. Use it in *.scm
13442         instead of manually setting safe-objects in safe-lily.scm.
13443
13444 2005-02-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13445         
13446         * lily/slur.cc: Slur-dash patch by Bertalan.
13447
13448         * ly/engraver-init.ly (EasyNotation): glyph name dash -> period.
13449
13450         * stepmake/bin/add-html-footer.py (do_file): do i18n only once. 
13451
13452 2005-02-10  Jan Nieuwenhuizen  <janneke@gnu.org>
13453
13454         * stepmake/aclocal.m4: teTeX-3.0 inimf fix.  Comment-out.
13455
13456 2005-02-09  Jan Nieuwenhuizen  <janneke@gnu.org>
13457
13458         * mf/GNUmakefile: teTeX-3.0 install fix.
13459
13460         * Cygwin patch from Bertalan.
13461
13462         * stepmake/stepmake/metafont-rules.make: Remove bashism.
13463
13464 2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
13465
13466         * GNUmakefile.in: 
13467         * SConstruct (symlink): teTeX-3.0 build fix: add map symlink.
13468
13469         * tex/GNUmakefile: teTeX-3.0 fix: install .enc in fonts/enc.  Add
13470         2.0.x compatibility.
13471
13472 2005-02-08  Werner Lemberg  <wl@gnu.org>
13473
13474         * mf/feta-din-code.mf: Format; clean up code.
13475         Replace `---' with `--' plus explicit path directions.
13476         (linethickness#, stafflinethickness#): Remove.
13477         ("dynamic f"): Replace `draw' with `draw_rounded_block'.
13478         ("dynamic s"): Improve shape.
13479         ("dynamic p"): Improve shape.
13480         Replace `draw' with better outline approximation.
13481         ("dynamic r"): Improve shape.
13482         Don't call `fill' and `draw' at the same time.
13483
13484 2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
13485
13486         * SConstruct (symlink):
13487         * GNUmakefile.in ($(builddir)/share/lilypond-force): teTeX-3.0
13488         build fix: add enc symlink.
13489
13490         * lily/general-scheme.cc: Compile fixes: include wchar.h, string.h.
13491
13492         Support for DESTDIR besides prefix=/foo
13493
13494         * vim/GNUmakefile (local-install): Use $(INSTALL) -d iso mkdir.
13495
13496         * stepmake/stepmake/*.make:
13497         * */GNUmakefile:
13498         * GNUmakefile.in: Prepend $(DESTDIR) to installation directory.
13499
13500         * config.make.in (prefix): Remove broken $(DESTDIR) hack.
13501
13502         * stepmake/aclocal.m4: Use %0.f iso %d to quiet gawk < 3.1.4 and
13503         mawk in fontforge (date) test.
13504
13505 2005-02-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13506
13507         * scm/font.scm (make-century-schoolbook-tree): add NCS as
13508         font-family=roman. Add Luxi Sans as sans
13509
13510 2005-02-07  Graham Percival  <gperlist@shaw.ca>
13511
13512         * Documentation/user/notation.itely: add warning about
13513         percent repeats and Voice contexts.
13514
13515         * Documentation/user/lilypond-book.itely: clarified the
13516         necessity of dvips -u arguments.
13517
13518 2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
13519
13520         * THANKS: Added a bunch of bug hunters.
13521
13522 2005-02-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13523
13524         * scm/framework-ps.scm (output-preview-framework): bugfix.
13525
13526         * ly/chord-modifiers-init.ly (ignatzekExceptionMusic): use unicode
13527         o/ for chord modifier..
13528
13529         * lily/general-scheme.cc (LY_DEFINE): new function ly:wide-char->utf-8.
13530
13531         * lily/drum-note-performer.cc:  remove unused (thanks Michael
13532         Welsh Duggan). 
13533
13534 2005-02-06  Jan Nieuwenhuizen  <janneke@gnu.org>
13535
13536         * Documentation/user/changing-defaults.itely (Text encoding): Clarify.
13537
13538         * ly/titling-init.ly: Do not also print intstrument in header on
13539         first page.  Do not print page number on first and only page.
13540
13541 2005-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13542
13543         * input/regression/*.ly: remove old-relative everywhere
13544
13545         * lily/music-sequence.cc (simultaneous_relative_callback): do
13546         what-if analysis on copy, not on original. Fixes old-relative
13547         compatibility.
13548
13549         * scm/backend-library.scm (postscript->png): space before
13550         --verbose.
13551         
13552 2005-02-05  Werner Lemberg  <wl@gnu.org>
13553
13554         * mf/feta-autometric.mf (fet_beginchar): Check whether `feta_group'
13555         is defined.
13556
13557         * mf/feta-alphabet.mf: Define `staffsize#'.
13558         Include `feta-params.mf'.
13559         s/staffheight/design_size/.
13560
13561         * mf/feta-alphabet??.mf: s/staffheight/design_size/.
13562
13563         * mf/feta-alphabet26.mf: Fix a serious bug (design size off by 8pt).
13564
13565         * mf/feta-nummer-code.mf: Reformatted.
13566         (draw_six): Use outline intersection to avoid a self-intersecting
13567         path.
13568         ("Numeral comma"): Fix serious outline glitches.  This slightly
13569         changes the glyph shape.
13570         ("Numeral dash"): Use `draw_rounded_block'.
13571         ("Numeral dot"): Use `drawdot'.
13572         ("Numeral 1"): Assure identical tangent directions for the
13573         intersection points of paths.  The glyph shape improvement is only
13574         visible at very high magnifications.
13575         ("Numeral 2"): Use `solve' macro to make the lower right part of
13576         the glyph outline touch the x axis exactly.  This changes the
13577         glyph shape.
13578         Minor fixes for better overlap removal support.
13579         ("Numeral 4"): Make lefter corner `rounder'.
13580         ("Numeral 5"): Assure identical tangent directions for the
13581         intersection points of paths.  This improves the glyph shape at
13582         high magnifications.
13583         ("Numeral 7"): Use `solve' macro to make the upper right part of
13584         the glyph outline touch the metrics box exactly.  This changes the
13585         glyph shape.
13586         Avoid corner in the upper left part of the glyph (causing a minor
13587         shape change).
13588
13589         * mf/feta-ital-*.mf: Removed.  Unused.
13590
13591 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13592
13593         * VERSION (PATCH_LEVEL): release 2.5.11
13594
13595         * input/regression/fill-line-test.ly: new file.
13596
13597         * buildscripts/gen-emmentaler-scripts.py (i): insert dash in
13598         emmentaler name, eg. emmentaler-23. 
13599
13600 2005-02-04  Christian Hitz  <chhitz@gmx.net>
13601
13602         * scm/scm/define-markup-commands.scm (fill-line): rework for better
13603         alignment with centered texts
13604
13605         * scm/stencil.scm (stack-stencils-padding-list): new function, takes a
13606         list of paddings
13607
13608 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13609
13610         * mf/GNUmakefile ($(outdir)/lilypond.map): add aybabtu to .map file.
13611
13612         * lily/note-column.cc (translate_rests): call flush_extent_cache()
13613         of parents when translating rests. Fixes: c-chord-rest.ly 
13614
13615         * lily/include/dimension-cache.hh (struct Dimension_cache): add
13616         dimension_callback_ member.
13617
13618         * lily/grob.cc (flush_extent_cache): new function. Force recompute
13619         of extents.
13620
13621 2005-02-04  Jan Nieuwenhuizen  <janneke@gnu.org>
13622
13623         * all but lily/*: The grand 2004/2005 replace.
13624
13625 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13626
13627         * lily/*: add space after ,  
13628
13629         * scm/music-functions.scm (has-request-chord): don't use
13630         ly:music-name anywhere. Fixes <<\\>> notation. 
13631
13632         * scm/define-markup-commands.scm (box): use font-size for
13633         padding. Fixes boxed-rehearsal-marks.ly
13634
13635         * lily/parser.yy (assignment_id): allow LYRICS_STRING as
13636         identifier definition too, so foo = \lyrics { ...   } bar = #1
13637         doesn't complain about "bar" being LYRICS_STRING.
13638
13639         * lily/paper-def.cc (find_pango_font): new routine; Store
13640         pango_fonts in hash tab too. This is necessary for retrieving
13641         Pango_fonts::physical_font_tab() later on.
13642  
13643         * lily/pango-font.cc (pango_item_string_stencil): bugfix: don't
13644         crash if psname is null.
13645
13646         * lily/lily-guile.cc (ly_hash2alist): new function
13647
13648         * Documentation/user/changing-defaults.itely (Text encoding):
13649         rewrite. 
13650
13651         * lily/pango-font.cc (physical_font_tab): new member. Store PSname
13652         -> font_filename mapping.
13653
13654         * lily/pango-font-scheme.cc (LY_DEFINE): new file. New function
13655         ly_pango_font_physical_fonts
13656
13657         * scm/framework-ps.scm (supplies-or-needs): extract names from
13658         physical Pango_fonts.
13659
13660         * utf8.ly: new file.
13661
13662 2005-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13663
13664         * Documentation/user/changing-defaults.itely (Page layout): add
13665         doco about systemSeparatorMarkup.
13666
13667         * scm/page-layout.scm (default-page-make-stencil): add-to-page
13668         function.
13669         (default-page-make-stencil): insert system separators.
13670
13671         * scm/define-markup-commands.scm (hcenter): add
13672         (beam): add.
13673
13674 2005-02-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13675
13676         * scm/output-ps.scm (ez-ball): reinstate ez notation.
13677
13678 2005-02-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13679
13680         * lily/main.cc: Spell backend consistently.  Sort options.
13681
13682 2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13683
13684         * scripts/lilypond-book.py (Module): revert @include.
13685         
13686 2005-01-31  Jan Nieuwenhuizen  <janneke@gnu.org>
13687
13688         * scripts/lilypond-book.py: Resurrect HTML links to .ly source.
13689         Bugfix: @include .tex (not .texi).  Small cleanups.
13690
13691         * stepmake/bin/add-html-footer.py (i18n): New function.
13692
13693 2005-01-31  Werner Lemberg  <wl@gnu.org>
13694
13695         * mf/feta-nummer.mf: Removed.  Unused.
13696
13697 2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13698
13699         * lily/ : 2004 -> 2005 s&r
13700
13701         * scm/file-cache.scm (cached-file-contents): add file. Read each
13702         file only once.
13703
13704         * scm/font.scm (add-pango-fonts): change order. Medium weight is
13705         now default.
13706
13707         * VERSION: release 2.5.10
13708         
13709         * mf/GNUmakefile (INSTALLATION_OUT_FILES4): install cff.ps files.
13710
13711         * make/ly-rules.make ($(outdir)/%.texi): detect new EOF marker.
13712
13713         * scm/framework-ps.scm (dump-stencil-as-EPS): robustness: ensure
13714         that both X and Y extents of bbox are non-nil.
13715
13716 2005-01-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13717
13718         * scm/chord-name.scm (alteration->text-accidental-markup): change
13719         - to . 
13720
13721         * scm/output-ps.scm (utf8-string): add utf8-string for completeness.
13722
13723         * scm/framework-ps.scm (dump-stencil-as-EPS): new function
13724
13725         * Documentation/user/invoking.itely (Invoking lilypond): add note
13726         about EPS backend.
13727
13728         * scm/framework-eps.scm: new file: create per-system/per-page EPS
13729         files for inclusion in lilypond-book document.
13730
13731         * input/tutorial/lbook-latex-test.tex: rename from lilbook.tex
13732
13733         * input/tutorial/lbook-texi-test.texi: new file.
13734
13735         * scm/safe-lily.scm (safe-objects): add
13736         {begin,end}-of-line-(in)?visible as safe.
13737  
13738 2005-01-30  Graham Percival  <gperlist@shaw.ca>
13739
13740         * Documentation/user/changing-defaults.itely: fixed example
13741         of (dynamics).
13742
13743 2005-01-29  Graham Percival  <gperlist@shaw.ca>
13744
13745         * lily/main.cc: fix info about -o=FILE.
13746
13747 2005-01-29  Werner Lemberg  <wl@gnu.org>
13748
13749         * mf/feta-toevallig.mf ("Natural"): Completely changed the
13750         construction to assure smooth transition from straight to curved
13751         lines.
13752
13753 2005-01-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13754
13755         * lily/stencil.cc (moved_to_edge): don't halt on adding empty
13756         stencils.
13757
13758         * ps/lilyponddefs.ps: add start-page, start-system doesn't
13759         translate to top of page. Fixes alignment problems of
13760         lilypond-generated EPS files.
13761
13762 2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13763
13764         * scm/part-combiner.scm (analyse-spanner-states): trigger on
13765         crescendo-end as well, since Decrescendo maybe ended with Stop
13766         Crescendo.). Fixes: partcombine-diminuendo.ly
13767
13768         * scm/script.scm (default-script-alist): swap portato symbols.
13769
13770         * lily/instrument-name-engraver.cc (acknowledge_grob): typo.
13771
13772         * lily/paper-outputter-scheme.cc (LY_DEFINE):
13773         ly:outputter-port. New function.
13774
13775         * scm/framework-ps.scm (output-classic-framework): dump a
13776         -systems.texi too
13777         (output-classic-framework): dump multiple systems on an "infinite"
13778         page EPS including fonts. 
13779
13780         * scripts/lilypond-book.py (Lilypond_snippet.ly_is_outdated): use
13781         .eps files for both texi and tex formats. Use PNG coming from
13782         lilypond.
13783         
13784 2005-01-28  Graham Percival  <gperlist@shaw.ca>
13785
13786         * Docuemntation/user/invoking.itely: fix info about -o=FILE.
13787
13788         * scripts/lilypond-latex.py: fix info about -o=FILE.
13789
13790 2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13791
13792         * ly/generate-embedded-cff.ly: write .cff.ps files.
13793
13794         * mf/GNUmakefile ($(outdir)/lilypond.map): add .cff.ps to .map file.
13795
13796         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
13797         $(outdir)/%.svg $(outdir)/%.pfa): remove --simplify
13798
13799 2005-01-28  Jan Nieuwenhuizen  <janneke@gnu.org>
13800
13801         * lily/include/guile-compatibility.hh (SCM_VECTOR_P): Compile fix.
13802
13803 2005-01-28  Werner Lemberg  <wl@gnu.org>
13804
13805         * mf/feta-macros.mf (soft_start_penstroke, soft_end_penstroke): New
13806         macros.
13807         (draw_bulb): Improved.
13808
13809         * mf/feta-pendaal.mf ("Pedal asterisk"): Remove workaround for
13810         metapost bug.
13811         (draw_pedal_P): Use soft_end_penstroke.
13812         (draw_pedal_d): Use soft_start_penstroke.
13813
13814         * mf/feta-schrift.mf ("Trill (`tr')"): Remove redundant point in
13815         path.
13816         ("Varied Coda"): Move some points to avoid fontforge warnings.  This
13817         doesn't change the glyph shape.
13818
13819         * mf/feta-accordion.mf ("accOldEE"): Draw glyph differently (without
13820         changing the shape) to avoid fontforge warnings.
13821
13822         * mf/feta-klef.mf (draw_tab_T, draw_tab_A, draw_tab_B): Use
13823         soft_end_penstroke and fix glyph shape.
13824
13825 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13826
13827         * lily/*.cc: Scheme deprecation of SCM_VECTOR_* 
13828
13829 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13830
13831         * scm/define-markup-commands.scm (line): filter out empty stencils
13832         from line command.
13833
13834         * lily/stencil-scheme.cc (LY_DEFINE): only allow finite real
13835         amount.
13836
13837 2005-01-27  Graham Percival  <gperlist@shaw.ca>
13838
13839         * Documentation/user/notation.itely: added info about what
13840         \voiceFoo does.  Also rewrote warning about marks at
13841         a line break.
13842
13843         * Documentation/user/changing-defaults.itely: added info
13844         about putting dynamics in parenthesis and brackets.
13845
13846 2005-01-27  Werner Lemberg  <wl@gnu.org>
13847
13848         * mf/feta-schrift.mf ("Trill (`tr')"): Fix typo.
13849
13850 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13851
13852         * mf/feta-schrift.mf: reverse u and d portato. Fixes:
13853         portato-direction.ly
13854
13855         * lily/beam.cc (consider_auto_knees): add beam height to
13856         threshold. Fixes: knee-multiple-beam.ly
13857
13858         * lily/instrument-name-engraver.cc (acknowledge_grob): also ignore
13859         pedal line spanners. Fixes: instrument-center-pedal.ly
13860
13861         * lily/auto-beam-engraver.cc (acknowledge_grob): stop beam
13862         if encountering barline. Fixes: auto-beam-repeat.ly
13863
13864 2005-01-26  Werner Lemberg  <wl@gnu.org>
13865
13866         * mf/feta-slag.mf (draw_trillelement): Fix shape to get clean
13867         overlapping.
13868
13869         * mf/feta-toevallig.mf (draw_meta_sharp): Fix shape to avoid curves
13870         with inflections for the 1/2 sharp glyph.
13871
13872         * mf/feta-schrift.mf ("Trill (`tr')"): Fix start position of
13873         connection between `t' and `r'.
13874         Unify bulb with the rest of `r' to avoid grazing outlines which
13875         confuses the overlap removal algorithm of fontforge.
13876
13877         * mf/feta-bolletjes.mf (draw_slash): Fix shape to avoid curves with
13878         inflections.
13879         (draw_cross): Fix shape to have uniform thickness in corners.
13880
13881         * mf/feta-pendaal.mf (draw_pedal_P): Break shape into smaller pieces
13882         to avoid an uneven number of self-intersections; this confuses
13883         fontforge.
13884         Fix a slight bug in the shape at left bottom (which is visible only
13885         at high magnifications).
13886         `Center' the stem horizontally to avoid overlapping.
13887
13888 2005-01-24  Werner Lemberg  <wl@gnu.org>
13889
13890         * mf/feta-autometric.mf (fet_beginfont): Set font_coding_scheme
13891         to `asis'.
13892         (fet_begingroup): Save group name in string `feta_group'.
13893         (fet_endgroup): Updated.
13894         (fet_beginchar): Emit `glyph_name' special for mf2pt1.
13895
13896         * mf/feta-bolletjes.mf: s/p/pat/ for paths.
13897
13898         * mf/feta-pendaal.mf ("Pedal asterisk"): Add workaround for bug
13899         in metapost.
13900
13901 2005-01-24  Graham Percival  <gperlist@shaw.ca>
13902
13903         * Documentation/user/notation.itely: really minor editing.
13904
13905 2005-01-22  Graham Percival  <gperlist@shaw.ca>
13906
13907         * Documentation/user/examples.itely: minor editing.
13908
13909         * Documentation/user/changing-defaults.itely: minor editing.
13910
13911         * Documentation/user/notation.itely: clarified info on polyphony
13912         and \addlyrics.
13913
13914 2005-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
13915
13916         * scm/output-gnome.scm: 
13917         * scm/output-svg.scm:
13918         * scm/lily-library.scm (font-name-style): Update font name
13919         kludging for fontconfig use.
13920
13921 2005-01-20  Erlend Aasland  <erlenda@gmail.com>
13922
13923         * scm/define-markup-commands.scm: Document right-align and
13924         larger markup commands. Remove "TODO" from the topmost comment
13925         "each markup function should have a doc string." More consistent
13926         use of new-lines.
13927
13928 2005-01-22  Graham Percival  <gperlist@shaw.ca>
13929
13930         * Documentation/user/changing-defaults: removed info about
13931         copyright symbol, since it's likely to change soon.
13932         Added info about betweensystemspace.
13933
13934         * Documentation/user/notation.itely: minor fixes.
13935
13936         * Documentation/user/lilypond.tely,
13937         Documentation/user/music-glossary.tely: changed copyright
13938         date to 2005 instead of 2004.
13939
13940         * input/test/volta-chord-names.ly: added old example back.
13941
13942 2005-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13943
13944         * mf/feta-beugel.mf: use design size 20 (not 15).
13945
13946         * mf/aybabtu.pe.in: scale brace fonts to design sizes.
13947         change name to aybabtu completely
13948
13949 2005-01-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13950
13951         * buildscripts/gen-emmentaler-scripts.py (outdir): add
13952         design_size to fontname
13953
13954 2005-01-19  Werner Lemberg  <wl@gnu.org>
13955
13956         * mf/feta-accordion.mf, mf/feta-klef.mf, mf/feta-pendaal.mf,
13957         mf/feta-schrift.mf: s/p/pat/ if a path variable.
13958
13959         * mf/feta-autometric.mf (set_char_box): Add code which emits
13960         specials for mf2pt1 if run with metapost.
13961         (to_bp): New macro for mf2pt1.
13962
13963 2005-01-18  Graham Percival  <gperlist@shaw.ca>
13964
13965         * Documentation/user/changing-defaults: added info on
13966         creating a copyright symbol.
13967
13968 2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13969
13970         * VERSION: release 2.5.9
13971         
13972 2005-01-18  Erlend Aasland  <erlenda@gmail.com>
13973
13974         * scm/auto-beam.scm: Simplify score-override-auto-beam-setting
13975
13976         * Documentation/user/notation.itely: Document
13977         score-override-auto-beam-setting Fix documentation for
13978         revert-auto-beam-setting.
13979
13980 2005-01-18  Werner Lemberg  <wl@gnu.org>
13981
13982         * scm/framework-ps.scm (ps-embed-cff): Fix DSC comments.
13983         (procset): New function to define a procset resource.
13984         (ps-embed-pfa): New function to define a font resource.
13985         (setup): New function to define a `Setup' environment.
13986         (preamble): Use new functions.
13987
13988         * ps/lilypond.defs (init-lilypond-parameters): New function to
13989         get rid of directly executed PS code.  Used in scm/framework-ps.scm.
13990
13991 2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13992
13993         * mf/GNUmakefile (MFTRACE_FLAGS): add --no-afm to MFTRACE_FLAGS
13994
13995 2005-01-17  Erlend Aasland  <erlenda@gmail.com>
13996
13997         * scm/define-markup-commands.scm: Change number->markletter-string
13998         to take two arguments (vector number). Add number->mark-alphabet-vector
13999         and markalphabet markup command.
14000
14001         * scm/translation-functions.scm: Add format-mark-box-alphabet,
14002         format-mark-alphabet, format-mark-box-barnumbers and
14003         format-mark-barnumbers. Fix bug in format-mark-box-numbers.
14004
14005 2005-01-17  Graham Percival  <gperlist@shaw.ca>
14006
14007         * Documentation/user/examples.itely: add SATB automatic piano
14008         reduction template.
14009
14010         * Documentation/user/notation.itely: added info about changing
14011         partcombine texts.  Also adds examples of alternate lyrics.
14012
14013         * Documentation/user/changing-defaults.itely: added warning
14014         about \RemoveEmptyStaffContext overriding previous changes.
14015
14016 2005-01-17  Werner Lemberg  <wl@gnu.org>
14017
14018         * buildscripts/mf-to-table.py: Use `FetaAlphabetEncoding' for
14019         feta-alphabet*.
14020
14021 2005-01-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14022
14023         * python/lilylib.py (make_ps_images): don't do final showpage for
14024         multi-page documents.
14025         
14026         * VERSION (MY_PATCH_LEVEL): release 2.5.8
14027
14028 2005-01-16  Graham Percival  <gperlist@shaw.ca>
14029
14030         * Documentation/user/lilypond.tely: changed order of appendices;
14031         unified index should be last.
14032
14033         * Documentation/user/notation.itely: add example of key signatures
14034         and info about Staff.printKeyCancellation.
14035
14036 2005-01-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14037
14038         * lily/include/repeated-music.hh (class Repeated_music): change
14039         into "namespace" class.
14040
14041         * lily/event.cc: remove Key_change_event.
14042
14043         * lily/include/transposed-music.hh (class Transposed_music): remove.
14044
14045         * lily/transposed-music.cc: remove
14046
14047         * lily/include/relative-music.hh: remove.
14048
14049         * lily/include/music-sequence.hh (struct Music_sequence): change
14050         into "namespace" class.
14051
14052         * lily/untransposable-music.cc (Module): remove
14053
14054         * lily/include/un-relativable-music.hh (Module): remove
14055
14056         * lily/include/untransposable-music.hh (Module): remove
14057
14058         * lily/include/music-list.hh (Module): remove file
14059
14060         * lily/un-relativable-music.cc: remove file.
14061
14062 2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
14063
14064         * lily/parser.yy: Compile fix.
14065
14066 2005-01-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14067
14068         * lily/include/music.hh (class Music): unvirtualize transpose().
14069
14070         * lily/sequential-music.cc: remove file.
14071
14072         * lily/include/lyric-combine-music.hh ("music.hh"): remove file.
14073
14074         * lily/slur-scoring.cc (get_best_curve): only switch on
14075         DEBUG_SLUR_SCORING for non NDEBUG builds.
14076
14077         * lily/include/music.hh (class Music): replace Music::start_mom()
14078         by start-callback property
14079
14080         * lily/include/grace-music.hh: remove file. 
14081
14082         * lily/stem.cc (height): robustness fix.
14083
14084         * lily/time-scaled-music.cc: remove file.
14085
14086         * lily/include/music.hh (class Music): include SCM init argument.
14087         (class Music): replace Music::get_length() virtual by
14088         length-callback property everywhere.
14089
14090         * scripts/convert-ly.py (conv): add  # to \property scalar value.
14091
14092         * mf/GNUmakefile: don't install *list.ly
14093
14094 2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
14095
14096         * mf/GNUmakefile (CFF_FILES): Bugfix: only big cheeses and braces.
14097
14098 2005-01-12  Werner Lemberg  <wl@gnu.org>
14099
14100         This patch addresses the following problems in the feta sources
14101         files which contribute to the fetaXX fonts.
14102
14103         . Many fixes for rasterization at low resolutions (consistent use of
14104           `vround' and `hround', integer shift values for paths, applying
14105           `eps' for mirrored paths, use of `define_whole_pixels' and
14106           friends, etc.) -- while this probably looks like a waste of time
14107           it has revealed deficiencies in some glyph shapes.  See comment at
14108           the end of feta-params.mf how vertical symmetry is achieved.
14109
14110         . The `---' operator has been replaced everywhere with `--'; this
14111           both improves and considerably reduces the font size after
14112           conversion with mf2pt1.
14113
14114         These change aren't explicitly mentioned below since virtually all
14115         glyphs are affected.
14116
14117         Other notable differences:
14118
14119         . Glyphs from feta-accordion.mf now have charboxes around the
14120           outline.
14121
14122         . Fixed incorrect charbox for `accDot'.
14123
14124         . The `rcomma' and `lcomma' glyphs were distorted due to a typo.
14125
14126         . Fixed position of the bow in the `upprall' glyph and its siblings.
14127
14128         . The bulb size in the `2/2 meter' and `4/4 meter' glyphs is now
14129           dependent on the staff line thickness to avoid touching the middle
14130           staff line at smaller sizes.
14131
14132         . Largely extended output for feta-testXX: Where useful, glyphs
14133         are shown both between and on staff lines.
14134
14135
14136         * mf/feta-params.mf (staff_space_rounded,
14137         stafflinethickness_rounded, linethickness_rounded,
14138         ledgerlinethickness_rounded, stemthickness_rounded): New variables.
14139         Update all code which uses them where appropriate.
14140         (feta_eps, feta_shift, feta_space_shift, feta_offset, feta_fillpen):
14141         New variables used to control rasterization at low resolutions.  Set
14142         to zero if feta code is processed with metapost.
14143
14144         * mf/feta-macros.mf (draw_staff, draw_staff_outline): Updated.
14145         (draw_rounded_block, draw_square_block): Updated to use `--' only.
14146         (flare_path): Updated.
14147         Make it work with `filldraw' (but only circular pens).
14148         (hfloor, vfloor, hceiling, vceiling): New macros.
14149
14150         * mf/feta-accordion.mf ("accDiscant", "accFreebase", "accStdbase"):
14151         Use `draw' again in mf mode to have good pixel dropout control.
14152         Fix intersection points of horizontal lines with circle.
14153         ("accDot"): Fix parameters for set_char_box.
14154         ("accOldEE"): Use `draw' again in mf mode to have good pixel dropout
14155         control.
14156
14157         * mf/feta-banier.mf: Updated.
14158
14159         * mf/feta-bolletjes.mf (remember_pic): New variable, used for
14160         testing.
14161         (undraw_inside_ellipse): Remove `center' argument.  Update all
14162         callers.
14163         (draw_brevis): New macro, called by "Brevis notehead".
14164         (draw_whole_triangle_head): New macro, called by "Whole
14165         trianglehead".
14166         (draw_small_triangle_head): Use `filldraw'.
14167
14168         * mf/feta-eindelijk.mf: Remove useless global group.
14169         Updated.
14170
14171         * mf/feta-klef.mf (draw_c_clef): Correct point positions for using
14172         `filldraw'.
14173
14174         * mf/feta-pendaal.mf: Updated.
14175
14176         * mf/feta-puntje.mf: Updated.
14177
14178         * mf/feta-schrift.mf (draw_very_long_fermata): Simplified to use
14179         less points.
14180         ("Flageolet"): Use `draw' again in mf mode to have good pixel
14181         dropout control.
14182         ("Varied Coda"): Use `draw_block'.
14183         (draw_comma): Fix typo.
14184         (draw_arpeggio_arrow): Use `draw' also in mf mode to have good
14185         pixel dropout control.
14186
14187         * mf/feta-slag.mf ("upprall", "downprall", "lineprall"): Fix start
14188         position of bow.
14189
14190         * mf/feta-timesig.mf (draw_C): Reduce bulb size for smaller design
14191         sizes.
14192
14193         * mf/feta-toevallig.mf (remember_pic): New variable, used for
14194         testing.
14195         (draw_meta_sharp): Much simplified.
14196         ("Sharp", "1/2 Sharp", "3/4 Sharp"): Don't rotate but shift.
14197
14198         * mf/feta-test-generic.mf: Include all files as in feta-generic.mf.
14199
14200 2005-01-13  Mats Bengtsson  <mabe@s3.kth.se>
14201
14202         * Documentation/user/notation.itely (Ancient rests): Fix typo
14203         (thanks Anthony)
14204
14205 2005-01-13  Jan Nieuwenhuizen  <janneke@gnu.org>
14206
14207         * scm/auto-beam.scm (score-override-auto-beam-setting): New function.
14208
14209         * lily/main.cc (setup_paths): Add cff.
14210
14211         * mf/GNUmakefile (foe): Include actual target %.cff.
14212         (INSTALLATION_OUT_SUFFIXES): Install CFF and SVG fonts too.
14213
14214 2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14215
14216         * lily/include/lily-lexer.hh (class Lily_lexer): lose hungarian _b
14217         suffix for main_input_b_.
14218
14219         * scm/music-functions.scm (toplevel-music-functions):
14220         precompute music lengths for music expressions.  
14221
14222 2005-01-11  Nicolas Sceaux  <nicolas.sceaux@free.fr>
14223
14224         * lily/include/input.hh (class Input): new `end_' slot for end of
14225         input. Renamed defined_str0_ to start_.
14226
14227         * lily/input.cc (Input): Add Input::Input (Input const &) and
14228         remove Input::Input (Source_file*, char const *). Use the new
14229         slots.
14230         (set_location): method used by bison to propagate input
14231         locations (YYLLOC_DEFAULT).
14232         (end_line_number, end_column_number, step_forward): new methods
14233         
14234         * lily/input-scheme.cc (ly:input-both-locations): new function,
14235         similar to ly:input-location, but also return the end line and
14236         column.
14237
14238         * lily/include/includable-lexer.hh: 
14239         * lily/includable-lexer.cc: 
14240         * lily/include/lily-lexer.hh (class Lily_lexer): 
14241         * lily/lily-lexer.cc (add_lexed_char): Move add_lexed_char from
14242         Includable_lexer to Lily_lexer, in order to update lexloc (the
14243         yylloc), a new slot of Lily_lexer.
14244         (here_input, LexerError): simplify by using the lexloc slot (aka
14245         yylloc)
14246
14247         * lily/lexer.ll: #define yylloc to use input locations (it may
14248         be useless here?). Fixed the #embedded_scm rule (step the location
14249         forward in order to skip the sharp sign before parsing the scheme
14250         expression)
14251
14252         * lily/include/lily-parser.hh (class Lily_parser): 
14253         * lily/lily-parser.cc: Remove push_spot(), pop_spot() and
14254         here_input()
14255         (parser_error): overload for more precise locations of errors.
14256
14257         * lily/parser.yy (YYLTYPE): set location type to Input
14258         (YYLLOC_DEFAULT): use Input::set_location()
14259         (yylex): add the YYLTYPE* location parameter.
14260         Clean push_spot()/pop_spot()/here_input(), and use @$, @1, etc.
14261         Give an Input parameter to THIS->parser-error() for more accurate
14262         messages.
14263
14264 2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14265
14266         * stepmake/aclocal.m4: do NDEBUG for optimizing builds.
14267
14268         * lily/include/beam.hh (DEBUG_QUANTING): performance: only switch
14269         on BEAMQUANTING for non-NDEBUG builds.
14270
14271         * lily/stem.cc (head_count): performance: avoid String::String()
14272         inside oft called function.
14273
14274 2005-01-09  Graham Percival  <gperlist@shaw.ca>
14275
14276         * Documentation/user/examles.itely: attempted fix for broken
14277         string quartet template.
14278
14279         * Documentation/user/notation.itely: remove unnecessary broken
14280         link.
14281
14282 2005-01-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14283
14284         * VERSION (PACKAGE_NAME): release 2.5.7
14285
14286 2005-01-09  Jan Nieuwenhuizen  <janneke@gnu.org>
14287
14288         * config.make.in (METAFONT): Append -progname=mf, fixes use with
14289         mf-nowin for teTeX-3.0.  Backportme.
14290
14291         * scm/output-svg.scm (utf8-string): New function.
14292
14293         * scm/output-gnome.scm (utf8-string): New function.
14294         (otf-name-mangling): Remove.
14295
14296         * lily/pango-font.cc (Pango_font): Use font string iso font
14297         filename for utf8-text.
14298
14299         * buildscripts/gen-emmentaler-scripts.py: Remove designsize from
14300         name.
14301
14302 2005-01-08  Graham Percival  <gperlist@shaw.ca>
14303
14304         * Documentation/user/notation.itely: add info about
14305         Staff.extraNatural = ##f in Pitches section.  Also
14306         fixed some minor issues in the Vocal music section.
14307
14308 2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14309
14310         * scm/output-ps.scm (white-text): comment out Helvetica font,
14311         which is broken for my GS install.
14312
14313         * lily/pango-font.cc (pango_item_string_stencil): use ink_rect,
14314         which provides a tighter bbox.
14315
14316         * scm/define-grobs.scm (all-grob-descriptions): remove all
14317         extra-offsets from definitions.
14318
14319 2005-01-08  Erlend Aasland  <erlenda@gmail.com>
14320
14321         * scm/output-lib.scm: Rename guitar-tunings to guitar-tuning and
14322         add tuning for 4-string bass and some common 4/5-string banjo
14323         tunings.  New function (four-string-banjo) turns a 5-string tuning
14324         into a 4-string tuning.  New function
14325         (fret-number-tablature-format-banjo) computes correct fret numbers
14326         on 5-string banjos.
14327
14328         * ly/engraver-init.ly: Default stringTunings = #guitar-tuning
14329         Add beam correction to TabVoice.
14330
14331         * scm/define-grobs.scm: Adjust notehead offset. Print fret numbers
14332         using bold font; makes tabs more readable.
14333
14334 2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14335
14336         * lily/font-select.cc (get_font_by_design_size): don't make
14337         Modified_font_metric; this causes trouble, since we don't know the
14338         font magnification from inside Pango_font::text_stencil()
14339
14340         * lily/all-font-metrics.cc (find_pango_font): take magnification argument.
14341
14342         * Documentation/user/notation.itely (The Lyrics context): comment out
14343         broken {Small ensembles} link.
14344
14345         * scm/framework-svg.scm (output-framework): change calling convention.
14346
14347         * lily/object-key-dumper-scheme.cc: new file.
14348
14349         * lily/object-key-undumper-scheme.cc: new file.
14350
14351         * lily/tweak-registration-scheme.cc: new file.
14352
14353         * lily/pango-select.cc (symbol_to_pango_variant): init local variable.
14354
14355         * Documentation/user/examples.itely (String quartet): uncomment
14356         broken example.
14357
14358         * lily/font-config.cc: new file.
14359
14360 2005-01-08  Jan Nieuwenhuizen  <janneke@gnu.org>
14361
14362         * scm/output-svg.scm: 
14363         * scm/output-gnome.scm: s/bigcheese/emmentaler.
14364
14365         * lily/score-engraver.cc (MUSIC_FONT): Use emmentaler20.
14366
14367 2005-01-07  Jan Nieuwenhuizen  <janneke@gnu.org>
14368
14369         * lily/general-scheme.cc (LY_DEFINE): Use snprintf (WAS: sprintf).
14370         Add headers.
14371
14372         * lily/GNUmakefile (general-scheme.o): Add version.hh dependency.
14373
14374 2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14375
14376         * mf/GNUmakefile (debian-mirror): rename bigcheese to emmentaler.
14377
14378         * lily/include/main.hh: lose _b hungarian suffixes for global
14379         variables.
14380
14381         * lily/include/lily-guile-macros.hh: new file.
14382
14383         * lily/pango-select-scheme.cc (LY_DEFINE): new file.
14384
14385         * lily/general-scheme.cc: new file. 
14386
14387         * lily/font-select.cc (get_font_by_design_size): retrieve
14388         PangoFont for (designsize . "pango-descr") entries.
14389
14390         * lily/lily-parser-scheme.cc: new file.
14391
14392         * lily/output-def-scheme.cc: new file.
14393
14394         * lily/paper-book-scheme.cc: new file.
14395
14396         * lily/duration-scheme.cc (LY_DEFINE): new file.
14397
14398         * lily/pitch-scheme.cc:  new file.
14399
14400         * scm/font.scm (add-cmr-fonts): use real dimens in font selection.
14401
14402 2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14403
14404         * lily/dimensions.cc (LY_DEFINE): add ly:{inch,cm,mm,bp,pt}.
14405
14406 2005-01-06  Graham Percival  <gperlist@shaw.ca>
14407
14408         * Documentation/user/notation.itely: minor editing.
14409
14410         * Documentation/user/changing-defaults: minor editing.
14411
14412         * Documentation/user/examples.itely: add template for
14413         string quartet part extraction; demonstrates tag.
14414
14415 2005-01-06  Erlend Aasland  <erlenda@gmail.com>
14416
14417         * Documentation/user/notation.itely: documents
14418         format-mark-box-letters and format-mark-box-numbers
14419
14420         * scm/define-context-properties.scm: change comment.
14421
14422 2005-01-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14423
14424         * scm/framework-ps.scm (output-classic-framework): new function:
14425         dump systems as separate .eps files (without fonts) and write a
14426         single collecting .tex file.
14427
14428 2005-01-05  Mats Bengtsson  <mabe@s3.kth.se>
14429
14430         * Documentation/user/notation.itely (Setting simple songs):
14431         Correct several errors in the equivalent formulation of
14432         \addlyrics. 
14433         (The Lyrics context): Corrected link to the SATB example.
14434
14435 2005-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14436
14437         * scm/lily.scm (completize-formats): new function
14438         (postprocess-output): new function
14439
14440         * lily/paper-book.cc (classic_output): change calling
14441         convention. Give basename as first argument. 
14442         remove Paper_book::post_processing().
14443
14444         * lily/lily-guile.cc (LY_DEFINE): ly:output-backend, new function.
14445
14446 2005-01-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14447
14448         * lily/paper-outputter.cc (LY_DEFINE): new function
14449         ly:outputter-close.
14450
14451         * lily/main.cc: change --format,-f to --backend,-b
14452
14453         * lily/include/main.hh: rename format to backend.
14454
14455         * scm/translation-functions.scm (format-mark-box-numbers): add.
14456         patch by Erlend Aasland
14457
14458 2005-01-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14459
14460         * lily/pango-font.cc (text_stencil): dump string as
14461         (utf-8-string FONTDESC UTF8) for use in -f gnome, -f svg.
14462
14463 2005-01-03  Jan Nieuwenhuizen  <janneke@gnu.org>
14464
14465         * configure.in (gui_b): Remove handy developer-only
14466         PKG_CONFIG_PATH settings that cater for Jan-and-Han-Wen ~/usr/pkg/
14467         CVS source installations (but break other non-default but correct
14468         PKG_CONFIG_PATH setups), as this is no longer developer-only.
14469
14470         * SConstruct: 
14471         * ps/GNUmakefile (INSTALLATION_FILES): teTeX-3.0
14472         compatibility (backportme).
14473
14474         * GNUmakefile.in: teTeX-3.0 compatibility (backportme).
14475
14476 2005-01-03  Werner Lemberg  <wl@gnu.org>
14477
14478         Prepare glyph shapes for mf2pt1 conversion.
14479
14480         * mf/feta-accordion.mf (accreg_pen): Removed.  No longer used.
14481         (accDiscant, accFreebase, accStdbase): Replace `draw' with
14482         `penstroke'.
14483         (accDot): Use `drawdot'.
14484         (accBayanbase): Replace `draw' with `draw_gridline'.
14485         (print_penpos): Moved to feta-macros.mf.
14486         (accOldEE): Replace `filldraw' with `penstroke'.
14487         Replace `draw' with `penstroke' and `drawdot'.
14488
14489         * mf/feta-banier.mf: Code clean-up.
14490         ("grace dash (up)", "grace dash (down)"): Replace `draw' with
14491         `fill'.
14492
14493         * mf/feta-bolletjes (draw_cross): Remove call to `labels'.
14494
14495         * mf/feta-eindelijk.mf (draw_rest_bulb, draw_eigth_rest): Add
14496         paremeter to control drawing of labels.  Update all callers.
14497
14498         * mf/feta-klef.mf (draw_c_clef): Use `&' not `..' to connect paths.
14499         (new_bulb): Return a bulb as a single path.  To do that, it now
14500         takes some more parameters.  Updated all callers.
14501         (draw_gclef): Major clean-up.  `draw' has been replaced with
14502         `penstroke', unnecessary outlines have been removed.
14503         Remove (unused) gnome-canvas code.
14504
14505         * mf/feta-macros.mf (print_penpos): New macro (from
14506         feta-accordion.mf).
14507         Other minor fixes.
14508
14509         * mf/feta-pendaal.mf ("Pedal asterisk"): Use `undrawdot'.
14510         ("Pedal dot"): Use `drawdot'.
14511         (draw_pedal_P): Add parameter to control drawing of labels.  Update
14512         all callers.
14513         Fix shape at top.
14514         (draw_pedal_e): Add parameter to control drawing of labels.  Update
14515         all callers.
14516         (draw_pedal_d): Add parameter to control drawing of labels.  Update
14517         all callers.
14518         Revert drawing direction.
14519
14520         * mf/feta-schrift.mf (draw_fermata): Use single path.
14521         (draw_short_fermata): Replace `filldraw' with `fill'.
14522         (draw_long_fermata, draw_very_long_fermata): Replace calls to
14523         `draw_rounded_block' with a single path.
14524         ("Thumb"): Draw full circle instead of mirroring segments.
14525         (draw_accent): New macro.
14526         ("> accent", "espr"): Use it.
14527         (draw_marcato): Replace `filldraw' and `draw' with `fill'.
14528         ("open (unstopped)"): Draw full circle instead of mirroring
14529         segments.
14530         (draw_vee): Removed.
14531         ("Upbow"): Use `draw_accent' instead of `draw_vee'.
14532         ("Downbow"): Replace calls to `draw_rounded_block' with a single
14533         path.
14534         ("Trill (`tr')"): Replace overlapping loop drawn with `draw' with
14535         partial pieces drawn with `fill' -- these do still overlap with the
14536         stem of the `t' but just once, not multiple times so that fontforge
14537         can handle it gracefully.
14538         Change other parts of the glyph so that fontforge's overlapping
14539         algorithm reliably works.
14540         (draw_heel): Replace `draw' with `fill'.
14541         (draw_toe): Use `draw_accent' instead of `draw_vee'.
14542         ("Flageolet"): Replace `draw' with `penstroke'.
14543         ("Segno"): Replace `filldraw' with `penstroke'.
14544         Replace `draw' with `drawdot'.
14545         ("Coda"): Replace `fill' with `penstroke', using a single path.
14546         ("Varied Coda"): Use less overlapping paths.
14547         (draw_arpeggio_arrow): Replace `filldraw' with `fill', using a
14548         single path.
14549
14550         * mf/feta-slag.mf (draw_trillelement): Put `clearxy' outside of
14551         group to better control the `labels' command.
14552         Rename argument to `offset' and use it actually.  Update all
14553         callers.
14554         Replace `filldraw' with `fill'.
14555         ("mordent", "prallmordent", "upmordent", "downmordent",
14556         "lineprall"): Replace `draw' with `draw_gridline'.
14557         ("upprall", "downprall"): Replace `draw' with `fill'.
14558
14559         * mf/feta-timesig.mf: Formatting.
14560
14561         * mf feta-toevallig.mf (draw_meta_flag): Move code to draw labels
14562         to...
14563         ("Flat"): Here.
14564         (draw_paren): Move code to draw labels to...
14565         ("Right Parenthesis"): Here.
14566
14567 2005-01-02  Graham Percival <gperlist@shaw.ca>
14568
14569         * Documentation/user/notation.itely: add example of \setTextDecresc
14570         and \setTextDim.
14571
14572 2005-01-02  Tatsuya Ono <tats_ono@infoseek.jp>
14573
14574         * scm/define-markup-commands.scm :  fix glyph-strings of
14575         accidentals and \note-by-number
14576
14577 2005-01-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14578
14579         * VERSION: 2.5.6 released.
14580         
14581         * ps/lilyponddefs.ps: put mm -> pt scaling in here.
14582
14583         * input/regression/new-markup-scheme.ly: oops. font-family=music
14584         -> font-encoding fetaMusic.  
14585
14586         * lily/main.cc: put default to PS.
14587
14588         * lily/tfm.cc: idem.
14589
14590         * lily/afm.cc: idem.
14591
14592         * lily/include/modified-font-metric.hh (struct
14593         Modified_font_metric): remove coding_scheme() method.
14594
14595         * input/mutopia/F.Schubert/morgenlied.ly: convert to utf8
14596
14597         * scripts/convert-ly.py (conv): crash on encountering \encoding.
14598
14599         * input/les-nereides.ly: convert to utf8
14600
14601         * lily/modified-font-metric.cc (text_dimension): idem.
14602
14603         * lily/parser.yy (TODO): idem.
14604
14605         * lily/include/lily-lexer.hh (class Lily_lexer): idem.
14606
14607         * lily/lexer.ll: remove encoding
14608
14609         * scm/framework-ps.scm (output-variables): separately scale the
14610         page to mm 
14611
14612         * lily/pango-font.cc (Pango_font): fix scaling.
14613
14614         * lily/font-metric.cc (design_size): design_size returns a
14615         dimension now as well.
14616
14617 2004-12-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14618
14619         * mf/GNUmakefile ($(outdir)/%.otf-table): use findstring. Fixes
14620         brace generation. 
14621
14622         * lily/text-metrics.cc (LY_DEFINE): use scm_c_make_hash_table().
14623
14624 2004-12-30  Jan Nieuwenhuizen  <janneke@gnu.org>
14625
14626         * mf/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Do not try to
14627         install unbuildable Fontmap and Fontmap.lily (Simon Aridis-Lang).
14628
14629 2004-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14630
14631         * mf/GNUmakefile ($(outdir)/%.otf-table): include parmesan20.lisp
14632         in first run as well.
14633
14634         * scm/paper.scm (layout-set-staff-size): use text-font-size in
14635         dimension less points (ie. 12 = 12 point)
14636
14637         * lily/pango-select.cc (select_pango_font): use find_scaled_font().
14638
14639         * lily/all-font-metrics.cc (find_pango_font): set description_
14640
14641         * lily/pango-font.cc (text_stencil): export size as well.
14642         (text_stencil): fix scaling and extents box.
14643
14644 2004-12-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14645
14646         * Documentation/topdocs/NEWS.texi (Top): add -f texstr
14647
14648         * Documentation/user/invoking.itely (Invoking lilypond): document
14649         texstr
14650
14651         * scripts/convert-ly.py (conv): add ancient rules.
14652
14653         * scm/clef.scm (c0-pitch-alist): replace - with .
14654
14655         * scripts/lilypond-book.py (process_snippets): add texstr support.
14656
14657         * scm/framework-texstr.scm (header): change extension to .textmetrics
14658
14659         * lily/lily-parser.cc (parse_file): do try_load_text_metrics for
14660         -f tex.
14661
14662         * lily/text-metrics.cc: new file.
14663         (try_load_text_metrics): new function
14664
14665         * lily/include/text-metrics.hh: new file.
14666
14667 2004-12-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14668
14669         * lily/include/lily-guile.hh (ly_lily_module_constant): rename
14670         ly_scheme_function to ly_lily_module_constant.
14671
14672         * lily/modified-font-metric.cc (text_dimension): try
14673         lookup_tex_text_dimension() first.
14674
14675         * lily/tfm.cc: new function ly:load-text-dimensions
14676
14677 2004-12-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14678
14679         * scm/output-texstr.scm (text): use \lilygetmetrics
14680
14681         * scm/framework-texstr.scm (header): dump in new format.
14682
14683         * tex/lilypond-tex-metrics: new file.
14684         
14685 2004-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
14686
14687         * lily/pango-font.cc (text_stencil): Quick try at glyph->charcode
14688         mapping.
14689         (index_to_charcode): New method.
14690
14691         * scm/output-ps.scm (glyph-string): 
14692         * scm/output-gnome.scm (glyph-string): Add FONT parameter.
14693
14694 2004-12-26  Jan Nieuwenhuizen  <janneke@gnu.org>
14695
14696         * scm/output-gnome.scm (FIXME-glyph-string): New function.  Cannot
14697         implement fully, need FONT to get to charcode.
14698
14699         * scm/lily.scm (ly:all-stencil-expressions): Add glyph-string.
14700
14701         * scm: Cleanups.
14702
14703         * Documentation/user/changing-defaults.itely: Fix internalsrefs
14704         {Tunable context properties},
14705         {All layout objects},
14706         {Music definitions}.
14707
14708 2004-12-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14709
14710         * VERSION: release 2.5.5
14711         
14712         * lily/main.cc: use TeX as default output format.
14713
14714         * flower/file-path.cc (find): try to open directly as well, so we
14715         find absolute path files. 
14716
14717         * lily/pango-select.cc: new file.
14718
14719         * scm/framework-ps.scm: remove all encoding code. 
14720         load pfb/pfa for PangoFont too.
14721         
14722         * lily/lily-guile.cc (ly_chain_assoc_get): new function.
14723
14724 2004-12-22  Werner Lemberg  <wl@gnu.org>
14725
14726         Prepare glyph shapes for mf2pt1 conversion.
14727
14728         * mf/feta-toevallig.mf ("Double Sharp"): Minor path fix.
14729
14730         * mf/feta-bolletjes.mf (penposx): New auxiliary macro.
14731         (define_triangle_shape): Use it to replace `draw' with `fill' and
14732         `unfill'.  Update all callers.
14733         (draw_slash): Replace `filldraw' with `fill'.  Update all callers.
14734         (draw_cross): Ditto.
14735         ("X-Circled notehead"): Replace `draw' with `fill' and `unfill'.
14736         Use penrazor for better conversion with mf2pt1.
14737         (generic_draw_solfa_note_shape, draw_solfa_note_shape,
14738         draw_solfa_quarter_note_shape, triangle): Removed.  Unused.
14739         (draw_do_head, draw_re_head, draw_mi_head, draw_fa_head,
14740         draw_la_head, draw_ti_head): Replace `filldraw' with
14741         `fill'.  Update all callers.
14742
14743 2004-12-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14744
14745         * lily/paper-book.cc (output): revert: only allow a single output
14746         format.
14747
14748         * lily/include/pango-font.hh: new file.
14749
14750         * lily/pango-font.cc: new file.
14751
14752         * lily/font-metric.cc (text_stencil): new routine
14753
14754         * lily/all-font-metrics.cc (find_pango_font): new routine.
14755
14756         * lily/include/font-metric.hh (struct Font_metric): add
14757         text_stencil()
14758
14759         * configure.in (PKG_CONFIG_PATH): require PANGO_FT2
14760
14761 2004-12-22  Werner Lemberg  <wl@gnu.org>
14762
14763         Prepare glyph shapes for mf2pt1 conversion.
14764
14765         * mf/feta-macros.mf, mf_feta-eindelijk.mf: Some formatting.
14766
14767         * mf/feta-toevallig.mf: Formatting.
14768         (draw_meta_sharp): Modify path to replace `filldraw' with `fill'.
14769         ("Natural"): Fix paths to allow better postprocessing.
14770         (draw_meta_flat): Use `z3l' as additional point in path to get
14771         better conversion with mf2pt1.
14772         Other minor cleanups.
14773         ("3/4 Flat"): Add auxiliary points and modify path to replace
14774         `draw' with `fill'.
14775         ("Double Sharp"): Mirror path segments instead of picture elements
14776         to get a single outline.
14777         Modify path to replace `filldraw' with `fill'.
14778
14779 2004-12-22  Graham Percival  <gperlist@shaw.ca>
14780
14781         * input/test/unfold-all-repeats.ly: added file back.
14782
14783         * Documentation/user/notation.itely,
14784         Documentation/user/programming-interface.itely
14785         Documentation/user/changing-defaults.itely: fixed misc broken
14786         links to input/test/ files.
14787
14788 2004-12-22  Jan Nieuwenhuizen  <janneke@gnu.org>
14789
14790         * tex/texinfo.tex: Update.  We should not be distributing this,
14791         but since we do, use latest version.
14792
14793         * Documentation/user/macros.itexi: Comment-out \fetaflat,
14794         \fetasharp.  Fixes make web.  FIXME: make usable (compatible?) TeX
14795         macros for feta glyphs.
14796
14797 2004-12-22  Graham Percival  <gperlist@shaw.ca>
14798
14799         * Documentation/user/changing-defaults.itely: fix index for set.
14800
14801         * Documentation/user/converters.itely: added convert-ly bugs list
14802         from CVS.
14803
14804 2004-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
14805
14806         * python/lilylib.py (setup_environment): Set GS_FONTPATH, GS_LIB
14807         to empty.  Fixes make web, using gs-gpl-8.01.  In fact,
14808         gs-afpl-8.50 has more trouble with make web (ie, uses *a lot* more
14809         resourses; 3x MAXSIZE, 4x MAXRSS, 1.5x user).
14810
14811         * mf/GNUmakefile (pfa_warning): Use less broken check.
14812
14813         * python/lilylib.py (setup_environment): Remove cruft from
14814         GS_FONTPATH.
14815
14816         * configure.in: Bump mftrace requirement to 1.1.1.
14817
14818 2004-12-20  Jan Nieuwenhuizen  <janneke@gnu.org>
14819
14820         * scm/output-svg.scm (beam): Use polygon.
14821
14822         * scm/lily-library.scm: Bugfix.
14823
14824         * Documentation/user/invoking.itely (Invoking lilypond): Bugfix.
14825
14826         * mf/GNUmakefile (ALL_GEN_FILES): Remove unbuildable Fontmap.lily.
14827
14828 2004-12-19  Werner Lemberg  <wl@gnu.org>
14829
14830         Prepare glyph shapes for mf2pt1 conversion.
14831
14832         * mf/feta-eindelijk: Some formatting.
14833         (multi_rest_x, multi_beam_height): Removed.  Unused.
14834         ("Quarter rest"): Use `intersectiontimes' to create a single
14835         outline.
14836         (rest_crook): Removed.  Unused.
14837         (draw_rest_bulb): Return path (without filling).  Update callers.
14838         Simplified.
14839         (draw_eighth_rest, "16th rest", "32th rest", "64th rest",
14840         "128th rest"): Simplify `pat'.
14841         Create single outline.
14842
14843 2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
14844
14845         * mf/GNUmakefile (ALL_GEN_FILES):
14846         (INSTALLATION_OUT_SUFFIXES): Remove unbuildable fonts.scale.
14847
14848         * scm/output-svg.scm (polygon, draw-line, dashed-line): New
14849         function.
14850
14851 2004-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14852
14853         * scm/output-texstr.scm (placebox): add routine
14854
14855         * VERSION (PACKAGE_NAME): release 2.5.4
14856
14857         * scm/framework-texstr.scm (output-framework): new file.  
14858
14859         * scm/output-texstr.scm: new file. Collect (TEXT . ) calls for TeX
14860         processing.
14861
14862         * Documentation/user/invoking.itely (Invoking lilypond): add SVG
14863
14864         * stepmake/stepmake/metafont-rules.make: make single SVG/PFA/PFB
14865         rule.
14866
14867         * configure.in (gui_b): bump mftrace requirement to 1.1.0
14868
14869         * mf/feta-bolletjes.mf (triangle): add s to 0triangle.
14870
14871         * mf/GNUmakefile (ALL_GEN_FILES): make SVG files too.
14872
14873 2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
14874
14875         * scm/framework-svg.scm (dump-page): Implement landscape.
14876
14877 2004-12-18  Jan Nieuwenhuizen  <janneke@gnu.org>
14878
14879         * lily/main.cc (setup_paths): Add svg to search path.
14880
14881         * scm/output-svg.scm:
14882         * scm/framework-svg.scm: Add pageSet.  Update.
14883         (dump-fonts): New function.
14884         (output-framework): Use it.
14885
14886         * mf/GNUmakefile: 
14887         * buildscripts/gen-bigcheese-scripts.py: Also generate SVG font.
14888
14889 2004-12-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14890
14891         * tex/lilyponddefs.tex: comment out new ifpdf code.
14892
14893 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
14894
14895         * GNUmakefile.in: 
14896         * SConstruct (symlink): Replace afm by otf.
14897
14898         * scm/framework-gnome.scm (gnome-main): Remove invocation of
14899         ly:pango-add-afm-decoder.
14900
14901         * lily/lily-guile.cc ("ly:pango-add-afm-decoder"): Build fix: Remove.
14902
14903 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14904
14905         * scm/output-ps.scm (new-text): don't access t glyph for getting
14906         space dimension.
14907
14908         * ly/init.ly: warn about \version
14909
14910         * lily/lexer.ll: set version-seen?
14911
14912 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
14913
14914         * scm/output-svg.scm (string->entities): Update.
14915
14916 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14917
14918         * lily/main.cc (setup_paths): replace afm by otf for path. 
14919
14920         * lily/pangofc-afm-decoder.cc: remove.
14921
14922         * lily/include/pangofc-afm-decoder.hh: remove.
14923
14924         * scm/framework-scm.scm (output-framework): new file.
14925
14926         * mf/GNUmakefile: remove SAUTER_FONTS.
14927         remove SVG/sodipodi hacks.
14928
14929         * scm/lily-library.scm (stderr): move stderr.
14930
14931         * mf/GNUmakefile: remove AFM support.
14932
14933         * buildscripts/mf-to-table.py (base): remove AFM support.
14934
14935         * lily/open-type-font.cc (design_size): use design_size
14936
14937 2004-12-17  Pedro Kroger  <kroeger@pedrokroeger.net>
14938
14939         * lily/font-metric.cc (LY_DEFINE): Fix the docstring.
14940
14941 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
14942
14943         * mf/GNUmakefile: Generate combined aybabtu info.
14944         * mf/aybabtu.pe.in (i): Load it.
14945
14946         * scm/framework-tex.scm (otf-font-load-command): Bugfix: subfonts
14947         are not symbols.
14948
14949         * lily/include/open-type-font.hh (count): New method.
14950
14951         * mf/aybabtu.pe.in: Typo.
14952
14953         * Documentation/user/out/lilypond-internals.nexi (Scheme
14954         functions): Typo.
14955
14956         * lily/include/guile-compatibility.hh (SCM_HASHTABLE_P): Add compat.
14957
14958 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14959
14960         * buildscripts/gen-bigcheese-scripts.py (i): use symbols for
14961         subfonts.
14962
14963         * scm/output-tex.scm (named-glyph): new function. This fixes TeX output.
14964
14965         * scm/framework-tex.scm (otf-font-load-command): load subfonts.
14966         (tex-font-command-raw): new function.
14967
14968         * lily/include/virtual-font-metric.hh (Module): remove file
14969
14970         * lily/virtual-font-metric.cc (Module): remove file.
14971         
14972
14973         * lily/open-type-font.cc (LY_DEFINE): ly:otf-font-glyph-info
14974         (get_indexed_char): read bbox from lily table if present.
14975
14976 2004-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14977
14978         * mf/GNUmakefile ($(outdir)/aybabtu.subfonts): rule for
14979         aybabtu.subfonts
14980
14981         * mf/feta-beugel.mf (y): don't number consecutively, instead, use
14982         global glyphname. Enables more than 64 glyphs in the OTF.
14983
14984 2004-12-16  Jan Nieuwenhuizen  <janneke@gnu.org>
14985
14986         * scm/font.scm (add-music-fonts): Load aybabtu iso all separate
14987         braces.
14988
14989         * lily/open-type-font.cc (design_size): Use 12 as default for
14990         design size.
14991
14992         * mf/aybabtu.pe.in: New file.  Merge all our braces.
14993
14994         * mf/GNUmakefile: Generate aybabtu.
14995
14996         * tex/lilyponddefs.tex: teTeX 3.0 pdfetex fix.
14997
14998 2004-12-14  Jan Nieuwenhuizen  <janneke@gnu.org>
14999
15000         * scm/lily-library.scm (char->unicode-index): Remove.
15001
15002         * scm/output-gnome.scm (text): Bugfix for plain string input.
15003         Updates.
15004
15005         * scm/output-svg.scm (svg-font): Add weight to font selection.
15006
15007 2004-12-14  Mats Bengtsson  <mabe@s3.kth.se>
15008
15009         * Documentation/topdocs/INSTALL.texi (Top): Point to
15010         buildscripts/out/clean-fonts instead of
15011         buildscripts/clean-fonts.sh. 
15012
15013 2004-12-13  Graham Percival  <gperlist@shaw.ca>
15014
15015         * input/regression/figured-bass.ly: attempt to clarify text.
15016
15017         * Documentation/user/notation.tely: add cindex for tag, attempt to
15018         add figured bass example.
15019
15020         * Documentation/user/changing-defaults: basic editing.
15021
15022 2004-12-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15023
15024         * buildscripts/gen-bigcheese-scripts.py (i): load .subfonts table. 
15025
15026         * lily/open-type-font.cc (LY_DEFINE): new function
15027         ly:font-sub-fonts
15028
15029         * lily/include/font-metric.hh (struct Font_metric): new method
15030         sub_fonts()
15031
15032         * lily/vaticana-ligature-engraver.cc (transform_heads): replace
15033         . with - in add.stem.
15034         
15035 2004-12-13  Jan Nieuwenhuizen  <janneke@gnu.org>
15036
15037         * scm/encoding.scm (coding-alist): Fix encodings for fetaNumber
15038         and fetaDynamic.
15039
15040         * lily/rest.cc (glyph_name): Change - to . .
15041
15042         * scm/output-gnome.scm (text): Hello world, again.
15043
15044         * scm/output-svg.scm (named-glyph): New function.  Hello world!
15045
15046         * lily/modified-font-metric.cc (index_to_charcode): New method.
15047
15048         * lily/include/font-metric.hh (index_to_charcode): New function.
15049
15050         * lily/font-metric.cc (ly:font-glyph-name-to-charcode): Use it in
15051         new function.
15052         (ly:font-glyph-to-index): Remove.
15053
15054 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15055
15056         * lily/open-type-font.cc (make_index_to_charcode_map): new method.
15057
15058         * mf/feta-autometric.mf (code): remove tex name from fet_beginchar.
15059
15060         * lily/open-type-font.cc (load_scheme_table): new function
15061
15062         * lily/dots.cc (print): replace - 
15063
15064         * lily/open-type-font.cc (attachment_point): new function.
15065         (load_table): read LILC table
15066
15067         * buildscripts/gen-bigcheese-scripts.py (Module): new
15068         file. Generate FF scripts.
15069
15070         * mf/feta-din10.mf: idem.
15071
15072         * mf/feta-nummer10.mf: remove mf files.
15073
15074         * mf/feta-alphabet.mf (dynamic_design_size): merge din and number font.
15075
15076 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
15077
15078         * lily/lily-guile.cc: Use scm_from_locale_stringn.
15079
15080         * lily/include/guile-compatibility.hh (scm_from_locale_stringn): Add
15081         compatibility.
15082
15083 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15084
15085         * lily/open-type-font.cc (get_indexed_char): scale metrics by
15086         design-size and units_per_EM.
15087
15088         * mf/bigcheese.pe.in: set PUA codepoints before loading din & nummer.
15089
15090 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
15091
15092         * mf/bigcheese.pe.in (i): Map to 0xe000 (PUA) for testing, which
15093         does not crash fontforge.
15094
15095         * scm/lily-library.scm (char->unicode-index): Hack to map onto
15096         PUA.
15097
15098 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15099
15100         * scm/framework-ps.scm (ps-embed-cff): new function.
15101
15102         * lily/lily-guile.cc (LY_DEFINE): make ly:gulp-file binary proof.
15103
15104 2004-12-12  Werner Lemberg  <wl@gnu.org>
15105
15106         * mf/bigcheese.pe.in: Add PUA mapping.
15107         Don't create Type 42 but bare CFF font.
15108
15109 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
15110
15111         * scm/output-gnome.scm (placebox): Hackery to get bigcheese symbols
15112         within canvas boundaries.
15113
15114         * mf/merge.pe.in: Set font names, version, license GPL.
15115
15116         * make/substitute.make: Add FONTFORGE.
15117
15118         * config.make.in (FONTFORGE): Add.
15119
15120         * configure.in (gui_b): Use PATH_PROG for fontforge.
15121
15122 2004-12-11  Graham Percival  <gperlist@shaw.ca>
15123
15124         * scm/define-markup-commands.scm: add baseline-skip to info
15125         about \column.
15126
15127 2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
15128
15129         * lily/font-metric.cc (ly:font-get-glyph-index): New function.
15130
15131         * scm/output-gnome.scm (named-glyph): Use it.
15132
15133         * scm/lily.scm (ly:all-stencil-expressions): Add named-glyph.
15134
15135         * flower/string.cc (substitute_char): Rename, rewrite, modify this.
15136         (upper_string, lower_string, reverse_string): Remove.
15137
15138         * configure.in (fontforge): Reinstate version check.
15139
15140         * ly/engraver-init.ly: Fix clef glyph names.
15141
15142         * lily/time-signature.cc (special_time_signature): Fix fraction
15143         glyph names.
15144
15145 2004-12-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15146
15147         * mf/merge.pe: new file.
15148
15149         * lily/freetype.cc: new file.
15150
15151         * lily/include/open-type-font.hh (class Open_type_font): new file.
15152
15153         * lily/include/freetype.hh: new file.
15154
15155         * lily/open-type-font.cc: new file.
15156
15157         * lily/all-font-metrics.cc (find_otf): new function.
15158
15159 2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
15160
15161         * lily/time-signature.cc (special_time_signature): Fix.
15162
15163         * configure.in (PKG_CONFIG_PATH): Remove stray `i'.  Check for
15164         GTK2 before checking for pango.  Fixes -fgnome.
15165
15166         * lily/font-metric.cc (LY_DEFINE): Also rename C name to match
15167         Scheme name.
15168
15169         * scm/define-markup-commands.scm:
15170         * scm/safe-lily.scm: Bugfix: ly:font-by-name.
15171
15172         * configure.in: Require makeinfo 4.7 (needed for @ifdocbook).
15173
15174         * stepmake/aclocal.m4 (STEPMAKE_GET_VERSION): Grok fontforge-like
15175         date versions.  Fixes configure.
15176         (STEPMAKE_CHECK_VERSION): Support optional actual program version
15177         argument.
15178
15179 2004-12-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15180
15181         * buildscripts/mf-to-table.py (write_ps_encoding): write real
15182         names in .enc
15183
15184         * lily/*.cc: use '.' iso. '-' for separating glyph name elements.
15185
15186 2004-12-09  Graham Percival  <gperlist@shaw.ca>
15187
15188         * Documentation/user/changing-defaults.itely: add info about
15189         make-dynamic-script
15190
15191         * Documentation/user/notation.itely: add link in dynamics to
15192         section about make-dynamic-script.
15193
15194 2004-12-09  Christian hitz  <chhitz@gmx.net>
15195
15196         * lily/lily-guile.cc: change MACOS_X to __APPLE__
15197
15198 2004-12-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15199
15200         * buildscripts/mf-to-table.py (parse_logfile): use . for
15201         concatting name and group.
15202         (parse_logfile): use M for Minus (negative.)
15203
15204         * lily/include/type-swallow-translator.hh
15205         (DECLARE_EVENT_SWALLOWER): ENTER_DESCRIPTION -> ADD_TRANSLATOR
15206
15207         * lily/*.cc: cosmetics around = sign.
15208
15209         * lily/paper-column.cc (Paper_column): copy rank_. This fixes
15210         lyric spacing on the penultimate column.
15211
15212 2004-12-05  Christian Hitz  <chhitz@gmx.net>
15213
15214         * configure.in:
15215         * lily/accidental-placement.cc:
15216         * lily/bar-line.cc:
15217         * lily/beam-concave.cc:
15218         * lily/beam-quanting.cc:
15219         * lily/beam.cc:
15220         * lily/bezier-bow.cc:
15221         * lily/bezier.cc:
15222         * lily/break-align-interface.cc:
15223         * lily/custos.cc:
15224         * lily/dimension-cache.cc:
15225         * lily/dot-column.cc:
15226         * lily/font-metric.cc:
15227         * lily/font-select.cc:
15228         * lily/gourlay-breaking.cc:
15229         * lily/grob-property.cc:
15230         * lily/grob.cc:
15231         * lily/lily-guile.cc:
15232         * lily/line-spanner.cc:
15233         * lily/lookup.cc:
15234         * lily/lyric-extender.cc:
15235         * lily/lyric-hyphen.cc:
15236         * lily/mensural-ligature.cc:
15237         * lily/midi-def.cc:
15238         * lily/misc.cc:
15239         * lily/note-collision.cc:
15240         * lily/note-column.cc:
15241         * lily/note-head.cc:
15242         * lily/paper-outputter.cc:
15243         * lily/percent-repeat-item.cc:
15244         * lily/rest-collision.cc:
15245         * lily/side-position-interface.cc:
15246         * lily/simple-spacer.cc:
15247         * lily/slur-configuration.cc:
15248         * lily/slur-scoring.cc:
15249         * lily/slur.cc:
15250         * lily/spaceable-grob.cc:
15251         * lily/spacing-spanner.cc:
15252         * lily/spanner.cc:
15253         * lily/staff-symbol-referencer.cc:
15254         * lily/stem.cc:
15255         * lily/stencil.cc:
15256         * lily/system-start-delimiter.cc:
15257         * lily/system.cc:
15258         * lily/text-item.cc:
15259         * lily/tie.cc:
15260         * lily/tuplet-bracket.cc:
15261         * lily/vaticana-ligature.cc: Fix for MacOS X: use <math.h> instead of
15262         <cmath> beacause isinf/isnan is undefined in <cmath>
15263
15264 2004-12-03  Mats Bengtsson  <mabe@s3.kth.se>
15265
15266         * cygwin/lily-wins.py (stat): remove old flag -p when calling lilypond.
15267
15268 2004-12-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15269
15270         * VERSION: release 2.5.3
15271         
15272 2004-11-29  Arno Waschk <arno@arnowaschk.de>
15273
15274         * mf/feta-schrift.mf: added <>-like articulation mark as "espressivo"
15275
15276 2004-12-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15277
15278         * scm/music-functions.scm (cue-substitute): voice counts start at 0.
15279
15280         * lily/note-head.cc (internal_print): always try the "s" head if
15281         u/d not found.
15282
15283         * scm/titling.scm (marked-up-headfoot): reinstate default tagline.
15284
15285 2004-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15286
15287         * mf/parmesan-heads.mf (overdone_heads): typos.
15288
15289 2004-11-30  Nicolas Sceaux  <nicolas.sceaux@free.fr>
15290
15291         * lily/parser.yy (markup): in markups, { .. } without command
15292         before are also flattened, ie \line must be explicitely used.
15293
15294         * Documentation/user/changing-defaults.itely:
15295         * Documentation/user/notation.itely: 
15296         * input/wilhelmus.ly: 
15297         * input/regression/instrument-name-markup.ly: 
15298         * input/regression/markup-score.ly: 
15299         * input/regression/new-markup-scheme.ly: 
15300         * input/regression/new-markup-syntax.ly: 
15301         * input/test/coriolan-margin.ly: use \line in markups where
15302         appropriate
15303         
15304 2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
15305
15306         * scm/new-markup.scm (map-markup-command-list): helper function
15307         used in parser.yy to map markup commands on a markup list.
15308
15309         * lily/parser.yy: get rid off < > in markups by treating { } as
15310         real lists.
15311
15312         * lily/lexer.ll: remove < > from markup lexer mode.
15313
15314         * scripts/convert-ly.py (conv): add rule for converting 
15315         \markup < > to \markup { }
15316
15317         * ly/titling-init.ly: 
15318         * input/test/coriolan-margin.ly: 
15319         * input/regression/new-markup-syntax.ly: 
15320         * input/regression/new-markup-scheme.ly: 
15321         * input/regression/multi-measure-rest-text.ly: 
15322         * input/regression/markup-stack.ly: 
15323         * input/regression/markup-score.ly: 
15324         * input/regression/instrument-name-markup.ly: 
15325         * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: 
15326         * input/mutopia/R.Schumann/romanze-op28-2.ly: 
15327         * input/mutopia/J.S.Bach/wtk1-fugue2.ly: 
15328         * input/wilhelmus.ly: 
15329         * Documentation/user/notation.itely: 
15330         * Documentation/user/music-glossary.tely: 
15331         * Documentation/user/changing-defaults.itely: change < > to { } in
15332         markups
15333
15334 2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15335
15336         * lily/accidental-placement.cc (position_accidentals): shortcut if
15337         no accidentals to place.
15338
15339 2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
15340
15341         * scm/define-grob-properties.scm (all-user-grob-properties): fixed
15342         typo s/ly:dimension ?/ly:dimension?/
15343
15344         * input/regression/lily-in-scheme.ly: 
15345         * input/regression/music-function.ly: 
15346         * ly/spanners-init.ly (assertBeamSlope): 
15347         * scm/music-functions.scm (def-grace-function): add the paper
15348         argument to music function definitions.
15349
15350 2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15351
15352         * lily/moment.cc (LY_DEFINE):
15353         ly:moment-main-{denominator,numberator}, new function.
15354
15355         * lily/score-engraver.cc (typeset_all): assign to column on basis
15356         of axis-group-parent-X setting.
15357
15358         * lily/axis-group-engraver.cc (process_acknowledged_grobs): do
15359         add_element() on basis of axis-group-parent-Y setting.
15360
15361         * lily/grob.cc: add axis-group-parent-{XY} properties.
15362
15363         * input/regression/spacing-stick-out.ly: new file.
15364
15365         * lily/simple-spacer.cc (add_columns): use binary search for
15366         setting column rods. Changes O(n^2) to O(n log(n)) for
15367         constructing spacing problem from columns.
15368         (add_columns): read allow-outside-line to make sure no texts stick
15369         out.
15370         (solve): Simple_spacer::is_active() only determines
15371         satisfies_constraints_ for non-ragged typesetting.
15372
15373         * lily/simultaneous-music.cc (to_relative_octave): only set
15374         old_relative_used if return pitch actually changed.
15375
15376         * scm/define-context-properties.scm
15377         (all-user-translation-properties): change to match implementation.
15378
15379         * python/lilylib.py: Replace re.match by re.search and adds "-c
15380         showpage" to the gs command line (Johannes Schindelin)
15381
15382         * scm/framework-ps.scm (output-preview-framework): sanitize bbox
15383         before processing. Prevents crash when inf is in the extent.
15384
15385         * scm/define-markup-commands.scm (note-by-number): add "s" to
15386         "noteheads-" glyphname.
15387  
15388         * lily/parser.yy (Generic_prefix_music): supply parser argument to
15389         music function as well.
15390         
15391 2004-11-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15392
15393         * VERSION: release 2.5.2
15394
15395         * Documentation/user/changing-defaults.itely (Creating titles):
15396         add breakbefore variable.
15397
15398         * lily/paper-book.cc (set_system_penalty): new function. Set
15399         penalty_ based on breakBefore setting
15400
15401         * lily/context-specced-music-iterator.cc (construct_children):
15402         interpret special context id $uniqueContextId 
15403
15404         * lily/context.cc (create_unique_context): new method. Move
15405         creation of unique (\new) contexts into interpreting phase. This
15406         makes
15407
15408           foo= \new Staff ..
15409           << \foo \foo >>
15410
15411         produce 2 staves.
15412         
15413
15414         * scm/define-music-properties.scm (all-music-properties): add
15415         quoted-voice-direction
15416
15417         * ly/music-functions-init.ly: killCues function.
15418
15419         * scm/music-functions.scm (cue-substitute): move creation of voice
15420         contexts further to the back. 
15421
15422 2004-11-25  Werner Lemberg  <wl@gnu.org>
15423
15424         * tex/GNUmakefile ($(outdir)/latin1.enc): Replace `/minus' with
15425         `/hyphen' in encoding vector to get correct glyph name for EC fonts.
15426
15427 2004-11-24  Erik Sandberg  <ersa9195@student.uu.se>
15428
15429         * buildscripts/guile-gnome.sh: Fixed typo.
15430
15431 2004-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15432
15433         * lily/lexer.ll: add < >  to markup lexer mode (backportme)
15434
15435         * scripts/abc2ly.py (dump_slyrics): add ord(). 
15436
15437         * lily/note-heads-engraver.cc (process_music): add shapeNoteStyles
15438         to regular engraver. 
15439
15440 2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15441
15442         * mf/feta-bolletjes.mf (triangle): rewrite solfa heads.
15443
15444 2004-11-22  Jan Nieuwenhuizen  <janneke@gnu.org>
15445
15446         * scm/define-markup-commands.scm (fill-line): Typo.
15447
15448         * buildscripts/guile-gnome.sh (GGVERSION): Build update for 2.7.96
15449         and newer.
15450
15451 2004-11-22  Erik Sandberg  <ersa9195@student.uu.se>
15452
15453         * ly/dynamic-scripts-init.ly: Fixed typo.
15454
15455 2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15456
15457         * mf/feta-bolletjes.mf (overdone_heads): cleanup triangle
15458         note-head, to have different attachment points for up and down.
15459
15460         * mf/feta-bolletjes.mf: merge solfa heads into main note heads.
15461
15462         * mf/feta-generic.mf (else): remove solfa.
15463
15464         * mf/feta-bolletjes.mf (tishape): remove unicode test.
15465
15466         * scm/define-context-properties.scm
15467         (all-user-translation-properties): add shapeNoteStyles property.
15468
15469         * lily/shape-note-heads-engraver.cc (process_music): new file.
15470
15471         * lily/event.cc (transpose): call Event::transpose() for
15472         transposing the tonic.
15473
15474 2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
15475
15476         * scm/output-gnome.scm: Save some pointers about pango/fontconfig
15477         Unicode/OpenType and AFM.
15478
15479         * lily/include/guile-compatibility.hh (scm_from_bool): Add.
15480
15481 2004-11-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15482
15483         * lily/grob.cc (Grob): idem. Plugs mem leaks. 
15484
15485         * lily/context.cc (Context): unprotect key from ctor.
15486
15487         * scm/stencil.scm (stack-lines): return empty-stencil if argument
15488         is '()
15489         (stack-stencils): idem.
15490
15491         * Documentation/user/changing-defaults.itely (Creating titles):
15492         document new title layout options.
15493
15494         * lily/parser.yy (lilypond_header_body): copy previous
15495         $globalheader if present.
15496
15497         * lily/ly-module.cc (LY_DEFINE): rename ly:import-module to
15498         ly:module-copy
15499         
15500         * scm/page-layout.scm (marked-up-headfoot): remove old functions.
15501
15502         * scm/titling.scm: remove old titling functions
15503
15504         * lily/stencil.cc (translate): remove absolute dimension.
15505
15506         * ly/titling-init.ly (oddFooterMarkup): new file. Generate titles
15507         via markup.
15508
15509         * scm/page-layout.scm (marked-up-headfoot): create header/footer
15510         field from user-supplied markup
15511
15512         * scm/define-markup-commands.scm (on-the-fly): new markup
15513         command. Enter SCM markup procedure directly in Scheme.
15514         (fromproperty): new markup command. Read markup from props argument.
15515
15516         * scm/titling.scm (marked-up-title): create title via
15517         user-specified markup. 
15518
15519         * scm/define-markup-commands.scm (column): remove empty stencils
15520         from column.
15521
15522         * lily/ly-module.cc (LY_DEFINE): use ly_module_lookup(). This does
15523         not have side-effect of creating variable stub.
15524
15525         * lily/stencil-scheme.cc (LY_DEFINE): add ly:stencil-empty?
15526
15527 2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
15528
15529         * scm/encoding.scm (coding-alist): 
15530         * scm/font.scm (add-ec-fonts):
15531         * ly/paper-defaults.ly: Use actual name for EC fontencoding:
15532         Extended-TeX-Font-Encoding---Latin.
15533
15534         * lily/side-position-interface.cc (general_side_position): Add
15535         actual offset to error message (avoid constant error messages).
15536
15537         * lily/all-font-metrics.cc (find_font): Add "lm" to try-AFM-first
15538         block.
15539
15540         * lily/font-select.cc (select_encoded_font)
15541         (get_font_by_mag_step, get_font_by_design_size): 
15542         * lily/modified-font-metric.cc (Modified_font_metric): 
15543         * lily/paper-def.cc (find_scaled_font): Add font_encoding parameter.
15544
15545         * scm/encoding.scm (coding-alist): Add fetaDynamic.
15546         (read-encoding-file): Bugfix: do not require space after bracket.
15547
15548         * scm/font.scm (add-cork-lm-fonts): Remove lmbxi8 and lmbxi14,
15549         these do not exist.
15550
15551 2004-11-20  Graham Percival  <gperlist@shaw.ca>
15552
15553         * Documentation/user/notation.itely: added info about typesetting
15554         boxed bar numbers.
15555
15556 2004-11-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15557
15558         * flower/interval.cc (T_to_string): gcc4 fixes.
15559
15560         * scm/define-markup-commands.scm (fill-line): use
15561         stack-stencils. This fixes problems with putting already centered
15562         stencils in a line.
15563
15564         * VERSION: release 2.5.1
15565
15566         * lily/bar-line.cc (get_staff_bar_size): add line thickness.
15567
15568 2004-11-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15569
15570         * input/example-[1-3].ly: simplify.
15571
15572         * lily/cluster-engraver.cc (try_music): react to busy-playing-event
15573
15574         * scm/output-ps.scm (new-text): new function. Use glyphshow to
15575         show glyphs.
15576
15577         * scm/encoding.scm (decode-byte-string): new function.
15578
15579         * scripts/convert-ly.py (conv): add warning about
15580         set-global-staff-size.
15581
15582         * Doxyfile: add. 
15583
15584         * scripts/convert-ly.py (conv): add raggedlastbottom rule
15585         (conv): warn for TextSpanner split.
15586         (conv): warn for textheight.
15587
15588 2004-11-19  Jan Nieuwenhuizen  <janneke@gnu.org>
15589
15590         * GNUmakefile.in (install-WWW): Invoke install-info, so that when
15591         building the documentation, info with images are installed.
15592         (final-install): Fix description.  Mention sourcing of login
15593         scripts (instead of running).
15594
15595 2004-11-18  Jan Nieuwenhuizen  <janneke@gnu.org>
15596
15597         * Debian lmodern support.  Note that LilyPond will issue warnings
15598         
15599             no such encoding: "FontSpecific"
15600
15601           The font selection mechanism wants to get the encoding from the
15602           font itself, but the idea of lmodern is that it is usable with
15603           different encodings, ie, Lily should get the encoding from the
15604           font tree, rather than the font itself.  This would require some
15605           more work.
15606         
15607         * configure.in: Test for and accept lmodern if EC fonts not found.
15608
15609         * scm/framework-tex.scm (font-load-command): TeX font name
15610         mangling for latin1 encoded cork-lm fonts.
15611         (convert-to-ps): Load lm.map if available.
15612
15613         * ly/paper-defaults.ly: Use cork-lm encoding if ec is not
15614         available.
15615
15616         * scm/encoding.scm (coding-alist): Add cork-lm encoding.
15617
15618         * scm/font.scm: Add header.  Autoload cork-lm and ec fonts if
15619         available.
15620
15621         * lily/kpath.cc (ly_kpathsea_find_file): Rename.  Do not use
15622         path for absolute file name, that is silly.
15623
15624         * lily/score-engraver.cc (initialize): 
15625
15626         * Documentation/user/GNUmakefile (local-install-info): Invoke
15627         install-info --remove first.
15628
15629         * #include cleanup (Andreas Scherer).
15630
15631 2004-11-18  Heikki Junes  <hjunes@cc.hut.fi>
15632
15633         * input/test/script-abbreviations.ly: fix typos.
15634
15635 2004-11-17  Werner Lemberg  <wl@gnu.org>
15636
15637         * python/lilylib.py (options_help_str): Support pretty-printing of
15638         newlines in fourth element of option description.
15639
15640         * scripts/lilypond-book.py (option_definitions): Use new lilylib
15641         feature.
15642         Sort options.
15643
15644         * Documentation/user/lilypond-book.itely: Finish update.
15645
15646 2004-11-17  Jan Nieuwenhuizen  <janneke@gnu.org>
15647
15648         * Documentation/user/macros.itexi: Add comment about \command.
15649
15650         * Documentation/user/lilypond.tely:
15651         * Documentation/user/lilypond-book.itely: Fix names of lilypond
15652         and lilypond-book nodes, so that `info lilypond' visits the manual
15653         at top level, and `info lilypond-book' visits the lilypond-book
15654         section.
15655
15656         * Documentation/user/GNUmakefile (local-install-info): Fix rules
15657         and packager messages.
15658
15659         * lily/pangofc-afm-decoder.cc: Update test.
15660
15661 2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
15662
15663         * scm/lily-library.scm (char->unicode-index): New function.
15664
15665         * scm/output-gnome.scm: 
15666         * scm/output-svg.scm: Cleanup.  Map custom fonts to PUA.
15667
15668         * Proper naming of file name throughout; s/filename/file[-_]name/.
15669
15670         * lily/modified-font-metric.cc ("ly:font-encoding"): New function.
15671
15672         * lily/pangofc-afm-decoder.cc (pango_fc_afm_get_glyph): Map onto PUA.
15673
15674 2004-11-16  Werner Lemberg  <wl@gnu.org>
15675
15676         * scripts/lilypond-book.py: The Lord has commanded me to use only
15677         tabs for indentation.  Your humble servant obeys.
15678
15679 2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
15680
15681         * scm/output-svg.scm: Font fixes.  Sodipodi now groks svg
15682         including font, if LilyPond-feta font is only feta font in path.
15683
15684         * scm/output-gnome.scm (text): Revert to file name of font if font
15685         has no name.  Fixes ec font selection.
15686         (char): Bugfix: do not utf8 twice.  Fixes clefs.
15687
15688         * scm/framework-svg.scm:
15689         * scm/output-svg.scm: New file.  TODO: figure out how to
15690         do character by index in font.
15691
15692         * scm/output-sodipodi.scm: Remove.
15693
15694         * scm/output-ps.scm (stem): Remove.
15695
15696 2004-11-15  Jan Nieuwenhuizen  <janneke@gnu.org>
15697
15698         * scm/output-gnome.scm (beam): New function.
15699         (slur): Round corners.
15700         (round-filled-box): Round corners.
15701
15702 2004-11-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15703
15704         * scm/output-gnome.scm (beam): add function.
15705         (draw-line): new routine.
15706         (dashed-line): stub; call draw-line
15707         (polygon): new routine.
15708
15709 2004-11-15  Werner Lemberg  <wl@gnu.org>
15710
15711         * Documentation/user/lilypond-book.itely: Revise section on
15712         lilypond-book options.
15713         Other minor fixes.
15714
15715         * scripts/lilypond-book.py: Change indentation to 4.
15716         Minor formatting.
15717
15718 2004-11-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15719
15720         * lily/system.cc (apply_tweaks): new function. Run tweaks on all
15721         grobs that have tweaks specced.
15722         
15723 2004-11-14  Heikki Junes  <hjunes@cc.hut.fi>
15724
15725         * Documentation/user/sound-output.itexi: add code snippets for MIDI.
15726
15727 2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
15728
15729         * lily/font-metric.cc (get_indexed_char_stencil): Bugfix: get
15730         actual char #, not 0 based index.
15731
15732         * lily/system-start-delimiter.cc (staff_brace): Start at 65.
15733
15734         * mf/feta-beugel.mf: Actually start at char #65.  Add header.
15735         Warning: do make -C mf clean.
15736
15737         * lily/context-property.cc: Compile fix.
15738
15739         * scm/output-gnome.scm: Add ec-fonts-mftraced to ~/.fonts.conf.
15740         Grok ec-fonts, braces and dynamics.
15741
15742         * scm/framework-gnome.scm (gnome-main): Register braces with pango.
15743
15744 2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15745
15746         * lily/include/tweak-registration.hh: new file.
15747
15748         * lily/tweak-registration.cc: new file.
15749
15750         * scm/framework-gnome.scm (save-tweaks): use new key mechanism for
15751         saving tweaks.
15752
15753         * scm/output-gnome.scm (text): comment dribble.
15754
15755 2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
15756
15757         * lily/pangofc-afm-decoder.cc (main): Test more feta fonts.
15758
15759         * scm/output-gnome.scm (bezier-sandwich): New function.  Reset
15760         path-def before using.  Fixes muchtomany slurs in wrong places
15761         bug.
15762
15763 2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15764
15765         * lily/grob-scheme.cc (LY_DEFINE): add new function ly:grob-key.
15766
15767         * lily/include/object-key-undumper.hh (Module): new file.
15768
15769         * lily/object-key-undumper.cc (Module): New file. Deserialize
15770         keys. SCM bindings
15771
15772         * lily/object-key-dumper.cc (Object_key_dumper): idem.
15773         Provide SCM bindings.
15774
15775         * lily/include/object-key-dumper.hh (class Object_key_dumper): 
15776         new file. Serialize object keys.
15777         
15778         * lily/object-key.cc (dump): new function.
15779         (as_scheme): new virtual function
15780         (undump): new function
15781         (undumpers): new table.
15782
15783         * lily/include/global-context.hh (Context): take \score key upon init.
15784
15785         * lily/object-key-dumper.cc (serialize_key): new file.
15786
15787         * lily/include/object-key-dumper.hh (class Object_key_dumper): new file.
15788
15789         * lily/lily-lexer.cc: remove \quote.
15790
15791         * lily/lookup.cc (triangle): rewrite, obviating symmetric_x_triangle().
15792
15793         * lily/context.cc (Context): take key argument in ctor.
15794         (create_context): new function
15795
15796         * lily/grob.cc (Grob): take key argument in ctor.  
15797
15798         * lily/lilypond-key.cc (do_compare): new file.
15799
15800         * lily/object-key.cc (Object_key): new file.
15801
15802         * lily/include/object-key.hh (class Object_key): new file.
15803
15804         * lily/include/lilypond-key.hh (class Lilypond_context_key): new file.
15805
15806 2004-11-13  Graham Percival  <gperlist@shaw.ca>
15807
15808         * Documentation/user/lilypond-book.itely: add small warning about
15809         noindent default in lilypond-book.
15810
15811         * Documentation/user/converters.itely: add examples for convert-ly.
15812
15813         * Documentation/user/examples.itely: change version string in templates
15814         to 2.4.0.
15815
15816 2004-11-12  Karl Hammar  <karl@aspodata.se>
15817
15818         * GNUmakefile.in (local-WWW-post): `find ...` overflows the
15819         cmdline, use xargs instead (backportme)
15820
15821 2004-11-10  Andreas Scherer  <andreas_mutopia@freenet.de>
15822         
15823         * Documentation/user/: Numerous fixes in the user manual.
15824
15825 2004-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15826
15827         * lily/parser.yy (re_rhythmed_music): search music expression for
15828         context-id, surround by \new Voice if not found. Fixes:
15829         addlyrics-second-staff.ly
15830
15831         * VERSION: 2.5.0 released.
15832         
15833 2004-11-12  Jan Nieuwenhuizen  <janneke@gnu.org>
15834
15835         * Documentation/index.html.in: Fix url to one big page.  (backportme)
15836
15837         * Documentation/user/GNUmakefile: Separate rules for split and
15838         unsplit html documents.  Remove perl massaging.  (backportme)
15839
15840 2004-11-11  Graham Percival  <gperlist@shaw.ca>
15841
15842         * Documentation/user/lilypond-book.itely: add short warning about
15843         \lilypond{} in LaTeX docs.
15844
15845 2004-11-11  Jan Nieuwenhuizen  <janneke@gnu.org>
15846
15847         * stepmake/aclocal.m4: Barf if kpathsea/kpathsea.h is not
15848         found.  (backportme)
15849
15850         * Documentation/topdocs/INSTALL.texi (ec-fonts-mtraced): Add
15851         version requirement.  (backportme)
15852
15853         * configure.in: Be explicit about old versions of
15854         ec-fonts-mtraced.  (backportme)
15855
15856         * lily/context-selector.cc (set_tweaks): New function.
15857         * lily/grob-selector.cc (set_tweaks): (Re)set hash table.  Fixes
15858         web with -DTWEAK.
15859
15860         * Documentation/user/introduction.itely (Automated engraving):
15861         Remove fragment option.  Fixes web.
15862
15863         * lily/context-property.cc (make_item_from_properties):
15864         * lily/context.cc (add_context)[TWEAK]: Tweak registration behind
15865         #ifdef.
15866
15867         * scm/define-context-properties.scm
15868         (all-internal-translation-properties): Add tweakRank and tweakCount.
15869
15870         * lily/grob.cc: 
15871         * scm/define-grob-properties.scm (all-internal-grob-properties):
15872         Add tweak-rank and tweak-count.
15873
15874 2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
15875
15876         * scm/output-gnome.scm (string->utf8-string, char->utf8-string):
15877         New function.
15878         (text): Use them.
15879
15880         * scm/framework-gnome.scm (item-event): Add support from TLA.  Support
15881         animated/opaque grob dragging tweaks.
15882
15883         * buildscripts/guile-gnome.sh: Update.
15884
15885 2004-11-10  Mats Bengtsson  <mabe@s3.kth.se>
15886
15887         * scm/define-grobs.scm (all-grob-descriptions): Added
15888         line-interface to the LigatureBracket object.
15889
15890 2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
15891
15892         * scm/framework-gnome.scm (item-event): Support non-animated mouse
15893         dragging tweaks.
15894
15895         * lily/lily-guile.cc (ly_to_string, ly_to_symbol): New function.
15896
15897         * lily/context-selector.cc (store_context): New function.
15898
15899         * lily/grob-selector.cc (register_grob)[TWEAK]: Apply tweak.
15900         (store_grob): New function.
15901         (identify_grob): Add Moment parameter.
15902
15903         * lily/lily-parser.cc (parse_file)[TWEAK]: Read .ly.t file if it
15904         exists.
15905
15906         * scm/framework-gnome.scm (save-tweaks): Write as alist.
15907
15908 2004-11-09  Jan Nieuwenhuizen  <janneke@gnu.org>
15909
15910         * scm/framework-gnome.scm (item-event): Print grob id.
15911         (save-tweaks): New function.
15912         (tweak): New funtion.
15913         (item-event): Use it, bound to arrow keys.
15914
15915         * lily/context-property.cc (make_item_from_properties): Register grob.
15916         * lily/context.cc (add_context): Register context.
15917
15918         * lily/include/context-selector.hh:
15919         * lily/include/grob-selector.hh:
15920         * lily/context-selector.cc:
15921         * lily/grob-selector.cc: New file.
15922
15923 2004-11-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15924
15925         * lily/slur.cc: add 'positions to interface
15926
15927         * lily/main.cc: reinstate PS as standard output format. 
15928
15929         * scm/framework-tex.scm (output-preview-framework): print systems
15930         up to first non title system.
15931
15932         * lily/grace-engraver.cc (start_translation_timestep): split
15933         scm_cadddr
15934         
15935 2004-11-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15936
15937         * lily/quote-iterator.cc (Module): remove old quote-iterator
15938
15939         * scm/define-music-types.scm (music-descriptions): move
15940         NewQuoteMusic over QuoteMusic
15941
15942         * Documentation/user/notation.itely (Formatting cue notes): use
15943         \cueDuring.
15944
15945         * lily/new-quote-iterator.cc (quote_ok): new function.
15946
15947         * input/regression/quote-cue-during.ly: new file.
15948
15949         * input/regression/quote-grace.ly: new file.
15950
15951         * scm/define-context-properties.scm (Module): change definition of
15952         graceSettings
15953
15954         * lily/context-property.cc (Module): rename from
15955         translator-property.cc
15956
15957         * lily/context.cc (context_name_symbol): new function
15958
15959         * lily/grace-engraver.cc: new file. Set properties for grobs based
15960         on the grace-ness of now_moment().
15961
15962         * scm/music-functions.scm (add-grace-property): use list
15963         iso. vector for graceSettings
15964         remove set-{start,stop}-grace-properties. 
15965
15966         * lily/new-quote-iterator.cc (construct_children): set
15967         quote_outlet_ if no quoted-context-{id,type} specified.
15968
15969         * scripts/convert-ly.py (conv): \quote -> \quoteDuring.
15970
15971         * lily/parser.yy (command_element): remove \quote.
15972
15973         * ly/music-functions-init.ly (location): add quoteDuring music
15974         function. 
15975
15976         * lily/lexer.ll: allow \encoding in lyrics as well.  Remove
15977         optional semicolon. (backportme)
15978
15979 2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
15980
15981         * python/GNUmakefile (STEPMAKE_TEMPLATES): Unset USER_LDFLAGS, no
15982         need to link to GUILE et al.
15983
15984 2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15985
15986         * scm/define-music-properties.scm (all-music-properties): add
15987         quoted-context-type, quoted-context-id.
15988
15989         * scm/lily.scm (type-check-list): new function.
15990         
15991         * scm/lily-library.scm: new file. Generic library routines.
15992
15993         * lily/parser.yy (Generic_prefix_music): move typechecking out of
15994         parser.
15995
15996         * ly/music-functions-init.ly: add quoteDuring function.
15997
15998         * lily/include/music-iterator.hh (class Music_iterator): rename
15999         set_translator -> set_context
16000
16001         * lily/parser.yy (Generic_prefix_music_scm): add
16002         MUSIC_FUNCTION_SCM_SCM_MUSIC
16003
16004         * scm/lily.scm (sanitize-command-option): new function. (backportme)
16005
16006         * scm/framework-tex.scm (header): sanitize TeX paper size.
16007         (backportme)
16008
16009 2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
16010
16011         * elisp/lilypond-indent.el (LilyPond-indent-level): 2 is now standard.
16012
16013         * tex/lilyponddefs.tex: If no inputencoding use latin1.  (backportme)
16014
16015         * scm/framework-tex.scm (font-load-command): Use T1 if no
16016         font-encoding set.  (backportme)
16017
16018         * scm/lily.scm (postscript->pdf): Remove .pdf file if it
16019         exists before converting.  (backportme)
16020
16021         * scm/framework-tex.scm (convert-to-dvi): Remove .dvi file if it
16022         exists before converting.  (backportme)
16023         (convert-to-ps): Remove .ps file if it exists before
16024         converting.  (backportme)
16025
16026         * lily/lexer.ll: Remove extra progress newline, use present tense.
16027
16028         * scm/paper.scm (paper-alist): public.
16029         * scm/framework-tex.scm (convert-to-ps):
16030         * scm/lily.scm (postscript->pdf): Do not leak papersizename into
16031         command line.
16032
16033 2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16034
16035         * scm/lily.scm (ly:system): add > /dev/null 2>&1 . (backportme)
16036
16037         * lily/recording-group-engraver.cc (derived_mark): mark
16038         now_events_. (backportme)
16039
16040 2004-11-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16041
16042         * mf/GNUmakefile: use Fedora-3 in download link. (backportme.)
16043
16044         * scm/framework-tex.scm (convert-to-dvi): use ly:system for
16045         invoking latex. (backportme.)
16046
16047         * lily/stem.cc (off_callback): center stems for all rest stems.
16048
16049 2004-11-05  Werner Lemberg  <wl@gnu.org>
16050
16051         * Documentation/user/lilypond.tely: Add more guidelines for writing
16052         lilypond texinfo documents.
16053
16054 2004-11-05  Heikki Junes  <hjunes@cc.hut.fi>
16055
16056         * Documentation/index.html.in: remove <hr>.
16057
16058         * THANKS: change 2.3 to 2.4.
16059
16060 2004-11-05  Jan Nieuwenhuizen  <jannneke@gnu.org>
16061
16062         * scm/output-gnome.scm: More fontconfig comment.
16063
16064 2004-11-05  Pedro Kroger  <kroeger@pedrokroeger.net>
16065
16066         * GNUmakefile.in ($(builddir)/share/lilypond-force): create the
16067         <package> directory in $(builddir)/share according with
16068         PACKAGE_NAME defined in the VERSION file.
16069
16070 2004-11-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16071
16072         * lily/beam.cc (rest_collision_callback): use local beam
16073         multiplicity.
16074
16075         * input/regression/stem-stemlet.ly: new file.
16076
16077         * lily/stem.cc (add_head): store rests as well.
16078
16079         * scm/define-grob-properties.scm (all-user-grob-properties): add
16080         stemlet-length
16081
16082         * lily/stem.cc: store rests as well.
16083         
16084         * input/regression/new-slur.ly: mention forcing.
16085
16086 2004-11-04  Werner Lemberg  <wl@gnu.org>
16087
16088         * Documentation/user/*: A new round of layout fixes and document
16089         structure cleanup.
16090
16091 2004-11-04  Heikki Junes <hjunes@cc.hut.fi>
16092
16093         * Documentation/user/lilypond.tely: changes 2.3.x to 2.5.x.
16094
16095 2004-11-04  Jan Nieuwenhuizen  <janneke@gnu.org>
16096
16097         * Documentation/topdocs/INSTALL.texi (Top): Remove geometry.
16098
16099 2004-11-03  Jan Nieuwenhuizen  <janneke@gnu.org>
16100
16101         * Documentation/topdocs/INSTALL.texi (Top): Fix geometry url (dax).
16102
16103         * lily/lily-parser.cc (LY_DEFINE): Remove "Now " from message.
16104
16105         * lily/main.cc (main): Invoke identify.
16106
16107         * scm/lily.scm (postscript->pdf): Remove progress newline.
16108         Write progress to stderr.
16109
16110         * lily/paper-book.cc (output): Remove progress newline.
16111
16112         * scm/framework-tex.scm (convert-to-dvi, convert-to-ps): Call
16113         gettext on user messages, and remove whitespace.
16114
16115         * lily/paper-outputter.cc (get_paper_outputter): Add progress newline.
16116
16117         * scripts/lilypond-latex.py (program_name): Bugfix: use only basename of
16118         argv[0] (Thomas Scharkowski).
16119
16120         * configure.in: Bugfix: add REQUIRED parameter to STEPMAKE_TEXMF
16121         call (carlyannehorse).  Also check for mf and mf-nowin.  Add check
16122         for ec-fonts-mtraced.
16123
16124         * GNUmakefile.in (builddir-exec): Add symlink tex/out.  Fixes
16125         --srcdir build (Bertalan).
16126
16127         * stepmake/aclocal.m4 (STEPMAKE_GUILE_DEVEL): Check for guile
16128         headers and library too (Laura Conrad).
16129
16130         * Documentation/topdocs/INSTALL.texi (Top): Mention development
16131         package for guile too (Laura Conrad).
16132
16133         * lily/main.cc (usage): Typo.
16134
16135 2004-11-02  Werner Lemberg  <wl@gnu.org>
16136
16137         * Documentation/user/notation.ly: More fixes to improve appearance.
16138
16139         * tex/texinfo.tex: Updated from texinfo CVS -- this version provides
16140         better output for multicolumn tables.
16141
16142 2004-11-01  Mats Bengtsson  <mabe@s3.kth.se>
16143
16144         * lily/main.cc (dir_info): Fixed typo in the printouts.
16145
16146 2004-11-01  Werner Lemberg  <wl@gnu.org>
16147
16148         * buildscripts/mf-to-table.py (write_fontlist): Improve formatting
16149         of output.
16150         Set `per_line' to 2; replace hard-coded value with it.
16151
16152         * Documentation/user/*: Many fixes to improve appearance of
16153         printed manual.
16154
16155 2004-11-01  Werner Lemberg  <wl@gnu.org>
16156
16157         * Documentation/user/changing-defaults.itely,
16158         Documentation/user/notation.ly,
16159         Documentation/user/programming-interface.itely: Use @/.
16160         Fix formatting of some lilypond snippets and tables.
16161
16162         * scripts/lilypond-book.py (compose_ly): Provide useful default
16163         for LINEWIDTH in `override'.
16164
16165 2004-10-31  Graham Percival  <gperlist@shaw.ca>
16166
16167         * Documentation/user/invoking.itely: change "3.0" -> "2.4"
16168
16169 2004-10-31  Werner Lemberg  <wl@gnu.org>
16170
16171         Resetting @exampleindent to `5' gives ugly results with texinfo's
16172         DVI output.  Use `@format @exampleindent 0 ... @end format' instead
16173         (if not quoting) to change @exampleindent only locally.
16174
16175         * scripts/lilypond-book.py (NOQUOTE): New variable.
16176         (output) [LATEX]: Remove AFTER and BEFORE.
16177         [TEXINFO]: Remove AFTER and BEFORE.
16178         Fix QUOTE and VERBATIM pattern.
16179         Add NOQUOTE pattern.
16180         (Lilypond_snippet) [output_info, output_latex]: Don't handle AFTER
16181         and BEFORE.
16182         [output_texinfo]: Use NOQUOTE.
16183
16184 2004-10-31  Graham Percival  <gperlist@shaw.ca>
16185
16186         * Documentation/user/changing-defaults.itely: clarify paper
16187         size commands with correct info.
16188
16189         * Documentation/user/lilypond-book.itely: add more docs for
16190         filename extensions.
16191
16192 2004-10-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16193
16194         * VERSION (PATCH_LEVEL): Branch lilypond_2_4, release 2.4.0
16195         (PATCH_LEVEL): start 2.5.0.
16196
16197 #Local variables:
16198 #coding: utf-8
16199 #End:
16200