]> git.donarmstrong.com Git - lilypond.git/blob - ChangeLog
* mf/feta-bolletjes.mf (solfa_quarter_width): use
[lilypond.git] / ChangeLog
1 2006-10-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
2
3         * mf/feta-bolletjes.mf (solfa_quarter_width): use
4         solfa_base_notewidth as unit for non-DO-notes too.
5
6         * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: update email.
7
8         * VERSION: release 2.9.21
9
10         * Documentation/topdocs/NEWS.tely (Top): simpler, more clearer override.
11
12 2006-10-04  Mats Bengtsson  <mabe@drongo.s3.kth.se>
13
14         * python/lilylib.py (progress): Minor fix.
15
16 2006-10-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
17
18         * lily/note-name-engraver.cc: doc engraver.
19
20         * scm/output-lib.scm (hairpin::calc-grow-direction): new function.
21
22         * lily/dynamic-engraver.cc (process_music): don't set grow-direction.
23
24         * scm/define-grobs.scm (all-grob-descriptions): calc duration-log
25         by callback.
26
27         * lily/stem-engraver.cc (make_stem): don't set duration-log
28
29         * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
30         write snippet-names binary.
31
32         * python/lilylib.py (system): use os.system for mingw32
33
34         * scripts/lilypond-book.py (bindir): use os.pathsep for prepending
35         to $PATH.
36
37         * scm/backend-library.scm: update email address.
38
39         * Documentation/topdocs/NEWS.tely (Top): add duration-log override
40         example.
41
42         * scm/define-grobs.scm (all-grob-descriptions): use callback to
43         calc dot count.
44
45         * lily/dots-engraver.cc (class Dots_engraver): new engraver:
46         handle dot creation separately.
47
48         * lily/tab-note-heads-engraver.cc (process_music): idem.
49
50         * lily/drum-note-engraver.cc (process_music): idem.
51
52         * lily/note-heads-engraver.cc (process_music): idem.
53
54         * lily/rest-engraver.cc: don't set duration-log.
55
56         * scm/output-lib.scm (string-number::calc-text): new function.
57         (note-head::calc-duration-log): new function.
58
59         * lily/fingering-engraver.cc (make_script): remove 'text setting.
60
61         * scm/output-lib.scm (fingering::calc-text): new function.
62
63 2006-10-04  Mats Bengtsson  <mabe@drongo.s3.kth.se>
64
65         * scripts/lilypond-book.py: Fix typo gs-load-font -> gs-load-fonts
66          and include-eps-font -> include-eps-fonts
67
68 2006-10-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
69
70         * lily/multi-measure-rest-engraver.cc: use internalBarNumber
71
72         * lily/timing-translator.cc: list properties.
73         (start_translation_timestep): update internalBarNumber too.
74
75         * scm/define-context-properties.scm
76         (all-user-translation-properties): add internalBarNumber.
77
78         * input/regression/spacing-no-note.ly: new file.
79
80         * buildscripts/output-distance.py (link_file): verbosity for OSError.
81
82         * lily/book.cc: #include cleanup.
83
84         * lily/include/lily-guile-macros.hh: add assert to
85         scm_or_str2symbol(SCM).
86
87         * VERSION (PATCH_LEVEL): bump version.
88
89         * lily/spacing-spanner.cc (musical_column_spacing): handle
90         musical->nonmusical spacing case, where there is no spacing
91         wish. Fixes issue #61.
92
93         * lily/pango-font.cc (text_stencil): allow 'tight' bounds.
94         (pango_item_string_stencil): use logical rect horizontally (to
95         preserve spaces), ink_rect vertically (for time signatures).
96
97         * lily/font-metric.cc (word_stencil): new interface function
98
99         * input/regression/utf-8-mixed-text.ly: new file.
100
101         * lily/percent-repeat-engraver.cc (listen_percent): remove
102         spurious warning.
103
104         * lily/phrasing-slur-engraver.cc (acknowledge_script): only ack
105         non-dynamic scripts. Fixes #30.
106
107         * lily/slur.cc (outside_slur_callback): make offset_scm optional.
108
109         * lily/beam.cc (rest_collision_callback): make prev_offset optional.
110
111         * lily/grob-closure.cc (chain_offset_callback): don't pass 0 but
112         SCM_UNDEFINED for non-existent data.
113
114         * lily/side-position-interface.cc (general_side_position): allow
115         optional current_offset argument for chaining, so combinations of side-position
116         and outside slur callback don't add up.  Fixes issue #92.
117
118         * lily/pango-font.cc (pango_item_string_stencil): use
119         logical_rect. This prevents spaces after words from disappearing,
120         issue #72.
121         
122         * VERSION: release 2.9.20
123
124 2006-10-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
125
126         * scm/define-grob-properties.scm (all-user-grob-properties):
127         mention stencil as user settable.
128
129 2006-10-02  Joe Neeman  <joeneeman@gmail.com>
130
131         * Documentation/user/page.itely (Page formatting): 
132         document auto-first-page-number
133
134         * lily/page-breaking.cc (find_chunks_and_breaks): 
135         * lily/paper-score.cc (calc_breaking): Follow changes to the
136         Constrained_breaking interface
137
138         * lily/constrained-breaking.cc (calc_subproblem): run the main loop
139         here backwards, as an optimisation
140         (initialize): new function; move most of the code in resize () here
141         (combine_demerits): cache ragged_right_
142         (Constrained_breaking): constructor now takes the Paper_score
143
144 2006-10-02  Erik Sandberg  <mandolaerik@gmail.com>
145         
146         * lily/lexer.ll, lily/parser.yy: Add EXPECT_NO_MORE_ARGS token, to
147         avoid parser lookahead for 0-ary functions.
148
149         * lily/translator.cc: Extract event classes from
150         IMPLEMENT_TRANSLATOR_LISTENER for documentation generation.
151
152 2006-10-02  Heikki Junes  <hjunes@gmail.com>
153
154         * po/fi.po: Fix spaces, commas etc. in Finnish translation using
155         KBabel fix tool.
156
157 2006-10-01  Nicolas Sceaux  <nicolas.sceaux@free.fr>
158
159         * scm/layout-page-layout.scm (page-breaking-wrapper): new
160         function. Call the page breaking function selected in the
161         `page-breaking' \paper variable, then the post processing function
162         chosen using the `page-post-process' \paper variable.
163         (line-height): new function. Return the height of a system.
164         (line-minimum-position-on-page): new function. Return the position
165         of a system on page (using the previous line position), only
166         considering between system padding.
167         (stretchable-line?): new function. Says whether a line can be
168         stretched (ie. is not a title nor a single staff system).
169         (page-maximum-space-left): new function. Computes space left on a
170         page, when all systems are separated by their padding.
171
172         * lily/page-breaking.cc (breaking::make_pages): Move page post
173         processing function call to page breaking wrapper (common to all
174         page breakers).
175
176         * lily/paper-book.cc (book::pages): call the page breaking
177         wrapper, instead of the page breaker directly
178
179         * ly/paper-defaults.ly: Add \paper variables for page breaking
180         wrapper and page post processing function. Make
181         `write-page-layout' value depend on the 'dump-tweaks option. Add a
182         `system-maximum-stretch-procedure' variable for holding a function
183         computing the maximum stretch a system allows.
184
185         * scm/layout-page-dump.scm (write-page-breaks): computes the
186         stretch to apply to systems on a page to minimize left
187         space. Dump this stretch length.
188
189         * ly/music-functions-init.ly (spacingTweaks): implement it. Read
190         the system-stretch property of the tweak data to stretch the
191         system.
192         (includePageLayoutFile): Void function which includes the
193         generated page-layout file if it exists and if the page layout
194         dumping is not asked.
195         (scoreTweak): if the score tweak named by the argument exists,
196         return it.
197
198 2006-10-01  Joe Neeman  <joeneeman@gmail.com>
199
200         * lily/page-spacing.cc (compress_lines, uncompress_solution):
201         handle correctly the case where there are multiple \noPageBreaks
202         in a row.
203
204 2006-09-30  Laura Conrad <lconrad@laymusic.org>
205
206         * abc2ly.py adds segno (S) and Coda (O) to articulations.
207         
208         * abc2ly.py fix so that entering " -- " will translate to a -- in
209         the lilypond instead of a " - - "
210         
211 2006-09-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
212
213         * lily/align-interface.cc: fix typo
214
215         * lily/dynamic-text-spanner.cc (print): Add a special case for
216         trill spanner right sides. 
217
218         * scm/define-grobs.scm (all-grob-descriptions): set padding to 0.1
219
220         * lily/align-interface.cc (get_extents_aligned_translates): add
221         support for padding variable.
222
223         * lily/break-align-interface.cc (self_align_callback): oops: use
224         loop variable in guard.
225
226         * input/regression/repeat-percent-grace.ly: new file.
227
228         * lily/percent-repeat-engraver.cc (start_translation_timestep):
229         remember first currentCommandColumn of a grace run. Fixes issue 70.
230
231         * lily/percent-repeat-iterator.cc (class Percent_repeat_iterator):
232         move class definition to CC file.
233
234         * lily/multi-measure-rest.cc (percent): use robust_relative_extent()
235
236         * lily/slash-repeat-engraver.cc (listen_percent): don't warn for
237         measure-long  repeats.
238
239         * flower/include/international.hh: include stdarg.h
240
241 2006-09-30  Joe Neeman  <joeneeman@gmail.com>
242
243         * lily/page-turn-page-breaking.cc (calc_demerits): now that we allow
244         put_systems_on_pages to return an empty result, we need to assign
245         demerits properly in that case.
246         (put_systems_on_pages): Make the number of pages depend on the
247         evenness of page_number. Add auto-first-page-number.
248         (calc_subproblem): ensure that the page-number is even for the
249         left-hand page. Warn if the first page-turn doesn't fit onto the
250         first (right-hand) page.
251
252         * lily/page-spacing.cc (solve): bug: demerits_ would always be inf
253         (min_page_count): make this publicly accessible
254         (min_page_count): fix a bug when there are forced page breaks that
255         was introduced when I made this loop run backwards
256         (space_systems_on_n_pages, space_systems_on_n_or_one_more_pages):
257         replace space_systems_on_min_pages with these two. The logic in
258         space_systems_on_min_pages was getting too convoluted and is better
259         contained in page-turn-page-breaking.
260
261         * lily/page-turn-engraver.cc (breakable_column): remove an always-true
262         conditional
263         (breakable_column): typo
264
265         * lily/source-file.cc (get_line): fix off-by-one error
266         and clean up some of the logic
267
268 2006-09-29  Joe Neeman  <joeneeman@gmail.com>
269
270         * lily/page-breaking.cc (make_pages): honour the first-page-number
271         property
272
273 2006-09-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
274
275         * VERSION (PACKAGE_NAME): bump version.
276
277 2006-09-26  Pal Benko  <benko.pal@gmail.com>
278
279         * scm/parser-clef.scm: add petrucci-f3 and -f4 clefs
280         (the latter is the same as petrucci-f which is kept for compatibility)
281
282 2006-09-26  Erik Sandberg  <mandolaerik@gmail.com>
283         
284         * lily/part-combine-iterator.cc: solo1-event -> solo-one-event
285
286 2006-09-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
287
288         * lily/global-context.cc (run_iterator_on_me): break out of loop
289         if moment doesn't increase.
290
291         * scm/define-grob-properties.scm (all-user-grob-properties): add
292         forced property.
293
294         * lily/accidental.cc (after_line_breaking): read forced property.
295
296         * lily/accidental-engraver.cc (process_acknowledged): set 'forced
297         property.
298
299         * input/regression/accidental-forced-tie.ly:  new file.
300
301 2006-09-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
302
303         * ly/engraver-init.ly: set ignoreFiguredBassRest in Staff context.
304
305         * lily/figured-bass-engraver.cc: only listen to rest events if
306         ignoreFiguredBassRest is not set.
307
308         * scm/define-context-properties.scm
309         (all-user-translation-properties): add ignoreFiguredBassRest property
310
311 2006-09-24  Joe Neeman  <joeneeman@gmail.com>
312
313         * lily/paper-book.cc (get_system_specs):
314         (set_system_penalty): fix breakbefore.
315         We used to set a penalty on the system after the break, now we
316         set a permission on the system before the break
317
318         * lily/grob-property.cc: add scm debugging hooks into
319         property modification
320
321         * lily/context-property.cc:
322         * lily/engraver.cc:
323         rename make_foo_from_properties to internal_make_foo and
324         move it from context-property.cc to a member function of
325         Engraver.
326         
327         * lily/include/lily-guile-macros.hh:
328         overload ly_symbol2scm macro so that there is no more need
329         to use internal_foo
330
331         * lily/volta-repeat-iterator.cc:
332         * lily/tweak-engraver.cc:
333         * lily/tuplet-bracket.cc:
334         * lily/span-bar-engraver.cc:
335         * lily/script-engraver.cc:
336         * lily/prob-scheme.cc:
337         * lily/pointer-group-interface.cc:
338         * lily/parser.yy:
339         * lily/grob-scheme.cc:
340         * lily/grob-property.cc:
341         * lily/context.cc:
342         * lily/context-property.cc:
343         * lily/break-substitution.cc:
344         * lily/break-align-engraver.cc:
345         * lily/axis-group-interface.cc:
346         * lily/align-interface.cc:
347         remove calls to internal_FOO
348
349         * lily/system-start-delimiter-engraver.cc:
350         * lily/parenthesis-engraver.cc:
351         * lily/accidental-engraver.cc:
352         remove calls to make_foo_from_properties
353
354 2006-09-23  Graham Percival  <gpermus@gmail.com>
355
356         * Documentation/user/programming-iterfaces.itely: fix
357         def-music-function -> define-music... leftover.
358
359 2006-09-23  Joe Neeman  <joeneeman@gmail.com>
360
361         * lily/page-spacing.cc (min_page_count): by running the loop
362         backwards, we can calculate ragged_last properly.
363
364 2006-09-22  Mats Bengtsson  <mabe@drongo.s3.kth.se>
365
366         * ly/titling-init.ly (scoreTitleMarkup): Rename (typo!?)
367         printfirst-page-number -> print-first-page-number
368
369         * python/convertrules.py: corresponding rule.
370
371         * Documentation/user/page.itely (Page formatting): Document the
372         default values of all page layout parameters. 
373
374 2006-09-22  Erik Sandberg  <mandolaerik@gmail.com>
375
376         * lily/lexer.ll: remove limitation on music function arity. New
377         mode extratoken, which inserts extra EXPECT_* tokens after
378         MUSIC_FUNCTION token. Junk all MUSIC_FUNCTION_* tokens.
379
380         * lily/parser.yy: Change grammar for music function accordingly.
381
382         * lily/include/lily-parser.hh: New method get_state, new member
383         hidden_state. Works around a problem when parser fetches
384         MUSIC_FUNCTION token but not the following EXPECT_* token.
385
386         * lily/translator.cc, lily/context.cc:, lily/translator-group.cc:
387         remove try_music
388
389         * lily/*-engraver.cc, lily/*-performer.cc: Remove all remaining
390         references to Music; use ASSIGN_EVENT_ONCE everywhere
391
392         * lily/grob-info.cc: junk *music_cause
393
394         * lily/music.cc: copy eventified articulations to stream event
395
396         * lily/part-combine-iterator.cc: Cleanup using enums
397
398         * lily/translator-group.cc: Junk OldMusicEvent, and associated
399         methods
400
401         * lily/include/engraver.hh: Junk music.hh include
402
403         * lily/stream-event.cc: Changed constructors
404
405 2006-09-21  Graham Percival  <gpermus@gmail.com>
406
407         * Documentation/user/tweaks.itely (Fitting music onto fewer
408         pages): change settings to avoid warning messages.
409
410 2006-09-21  Mats Bengtsson  <mabe@drongo.s3.kth.se>
411
412         * Documentation/user/tweaks.itely (Fitting music onto fewer
413         pages): Add between-system-space setting. 
414
415 2006-09-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
416
417         * lily/accidental-placement.cc (calc_positioning_done): don't
418         trigger Y-extent calculation too early. Use pure_height instead.
419
420         * lily/scale.cc (LY_DEFINE): new file. 
421
422 2006-09-20  Joe Neeman  <joeneeman@gmail.com>
423
424         * lily/page-breaking.cc (find_chunks_and_breaks): ignore breaks
425         that happen at the start of a score: having a zero-length
426         chunk was messing up min_system_count calculations.
427
428         * lily/source-file.cc (get_line): lower_bound, not
429         binary_search. Fixes problem where point-and-click would
430         always point to the first line.
431
432 2006-09-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
433
434         * lily/accidental-placement.cc (calc_positioning_done): also put
435         stems into accidental support. 
436
437         * lily/tie-engraver.cc (process_music): also set tieMelismaBusy if
438         event_ detected.
439
440         * scm/script.scm (default-script-alist): avoid-slur and
441         slur-padding for portato script.
442
443         * lily/stem-tremolo.cc (translated_stencil): new function. 
444         (height): use new function. Fixes tremolos on whole notes.
445
446         * lily/slur-scoring.cc (get_best_curve): don't crash if no optimal
447         slur found.
448
449 2006-09-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
450
451         * scripts/abc2ly.py (try_parse_comment): idem.
452
453         * scripts/lilypond-book.py (find_toplevel_snippets): use 'foo' in
454         bar_string iso. string.find()
455
456         * lily/*.cc: idem.
457
458         * lily/slur.cc (get_curve): always use scm_is_pair() looping
459         scheme lists.  
460
461 2006-09-18  Graham Percival  <gpermus@gmail.com>
462
463         * Documentation/user/basic-notation.itely: add bug
464         warning about ties and octavation/clef.
465
466 2006-09-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
467
468         * VERSION (PACKAGE_NAME): release 2.9.18
469
470 2006-08-29  Milan Zamazal  <pdm@brailcom.org>
471
472         * elisp/lilypond-mode.el (LilyPond-command-alist): Don't try to
473         figure out midi file names right here.
474         
475 2006-09-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
476
477         * scm/framework-ps.scm (dump-stencil-as-EPS): naming pad-eps-boxes.
478
479         * scm/backend-library.scm: option naming:  gs-font-load*s*
480
481         * scm/framework-eps.scm (dump-stencils-as-EPSes): rename option to
482         include-eps-fonts
483
484 2006-09-17  Joe Neeman  <joeneeman@gmail.com>
485
486         * scm/define-music-types.scm (music-descriptions): remove
487         BreakEvent and fix {Page,Line}{Break,Turn}Event so
488         Music::to_event doesn't complain.
489
490         * lily/accidental-placement.cc (ape_compare):
491         * lily/semi-tie.cc (compare): 
492         * lily/note-column.cc (shift_compare): replace by XXX_less
493
494         * lily/tie-formatting-problem.cc (set_chord_outline): 
495         * lily/tie-column.cc (calc_positioning_done): 
496         * lily/system.cc (post_processing)
497         (get_paper_system): 
498         * lily/stem.cc (note_head_positions)
499         (calc_positioning_done): 
500         * lily/spanner.cc (do_break_processing)
501         (find_broken_piece): 
502         * lily/span-bar.cc (print): 
503         * lily/semi-tie-column.cc (calc_positioning_done): 
504         * lily/rest-collision.cc (calc_positioning_done): 
505         * lily/program-option.cc (get_help_string): 
506         * lily/note-collision.cc (get_clash_groups):
507         * lily/new-fingering-engraver.cc (position_scripts):
508         * lily/keyword.cc (Keyword_table):
509         * lily/hara-kiri-group-spanner.cc (request_suicide):
510         * lily/grob-pq-engraver.cc (stop_translation_timestep):
511         * lily/accidental-placement.cc (calc_positioning_done):
512         (stagger_apes):
513         * lily/beam.cc (get_beam_segments):
514         * lily/grob-array.cc (remove_duplicates):
515         use new vector_sort
516         
517         * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily:
518         ragged-last-bottom = ##f (test the new page breaker)
519
520         * flower/include/std-vector.hh (vector_sort): use STL sort stuff
521
522         * scm/define-context-properties.scm
523         (all-internal-translation-properties): remove properties that
524         were used to communicate page-turn stuff to the paper-column
525         engraver.
526
527         * lily/lily-guile.cc (robust_scm2string): new function
528
529         * lily/paper-column-engraver.cc: Clean up page turn stuff
530
531         * lily/page-turn-engraver.cc: Re-write the page turn logic here
532         instead of cluttering up paper-column-engraver.cc
533
534 2006-09-17  Nicolas Sceaux  <nicolas.sceaux@free.fr>
535
536         * scm/layout-page-dump.scm (scm): export utility function names,
537         to allow user writing cutsom dumping functions.
538
539         * scm/layout-page-layout.scm: export utility function names to
540         enable custom page breaking function writing. Tabify.
541         (line-next-space): use ?-suffix only for predicates
542         (page-maximum-space-to-fill): new function. Return the space
543         between first and bottom system of a page, to give to
544         space-systems.
545         (space-systems): use a space-to-fill argument (for instance as
546         computed by page-maximum-space-to-fill) instead of computing
547         internaly this space with the page height. That way, the caller
548         can adjust the space to use.
549         (make-page-from-systems, walk-paths): compute space to fill before
550         calling space-systems.
551
552 2006-09-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
553
554         * scm/script.scm (default-script-alist): set paddings for every
555         type here, increase for portato mark.
556
557         * scm/lily.scm (define-scheme-options): typo: add s, so it is 
558         -dinclude-eps-fonts
559
560 2006-09-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
561
562         * scm/define-grobs.scm (all-grob-descriptions): oops, typo:
563         use spanner::set-spacing-rods
564
565         * lily/note-column.cc: reformat.
566
567         * lily/rest-collision.cc (calc_positioning_done): fix whole/half
568         step positioning for note/rest combinations.
569
570         * input/regression/rest-note-collision.ly: new file.
571
572         * scm/define-grobs.scm (all-grob-descriptions): add
573         springs-and-rods
574
575         * flower/include/std-vector.hh: switch off again.
576
577         * VERSION (PATCH_LEVEL): bump to 2.9.18
578
579         * flower/include/std-string.hh: idem.
580
581         * flower/include/std-vector.hh (_GLIBCXX_DEBUG): set if NDEBUG not set.
582
583 2006-09-15  Mats Bengtsson  <mabe@drongo.s3.kth.se>
584
585         * ly/engraver-init.ly: Make FiguredBass accepted in GrandStaff and
586         PianoStaff. 
587
588 2006-09-08  Joe Neeman  <joeneeman@gmail.com>
589
590         * Documentation/user/page.itely: update page breaking documentation
591
592 2006-09-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
593
594         * lily/note-collision.cc (calc_positioning_done): only access
595         first head if available.
596
597         * lily/tuplet-engraver.cc: add tupletFullLengthNote to description.
598
599         * scm/framework-ps.scm (output-preview-framework): use new name.
600
601         * lily/program-option.cc (internal_set_option): use new names.
602
603         * Documentation/user/SConscript (lilypond_book_flags): update -d
604         variable names.
605
606         * Documentation/user/lilypond-book.itely (Inserting LilyPond
607         output into other programs): new variable names.
608
609         * scm/lily.scm (define-scheme-options): uniformize var names.
610
611         * lily/tuplet-engraver.cc (listen_tuplet_span): verify that
612         tuplets_ is non-empty before popping.
613
614 2006-09-07  Joe Neeman  <joeneeman@gmail.com>
615
616         * lily/spanner.cc (find_broken_piece): 
617         * lily/spacing-spanner.cc (get_columns): 
618         * lily/source-file.cc (get_line): 
619         * lily/simple-spacer.cc (get_column_description): 
620         * lily/keyword.cc (lookup): 
621         use the new binary search.
622
623         * flower/include/std-vector.hh: replace binary_search with
624         a more STL-like version
625
626 2006-09-04  Michael Welsh Duggan  <md5i@cs.cmu.edu>
627
628         * lily/tie-performer.cc: remove unused last_event_ property.
629         (class Tie_performer): add now_tied_heads_ property for
630         partially-tied heads.
631         (acknowledge_audio_element): when adding an Audio_note, put the
632         note in now_tied_heads_ if the audio note is partially tied.
633         (stop_translation_timestep): always include entries in
634         now_tied_heads_ in heads_to_tie_.
635
636         * lily/drum-note-performer.cc (process_music): look for tie-events
637         in the articulations; pass to Audio_note constructor.
638
639         * lily/note-performer.cc (process_music): look for tie-events in
640         the articulations; pass to Audio_note constructor.
641
642         * lily/audio-item.cc (Audio_note): Initialize tie_event_ in
643         constructor.
644
645         * lily/include/audio-item.hh (class Audio_note): add tie_event_.
646         include initializer in constructor.
647
648 2006-09-02  Joe Neeman  <joeneeman@gmail.com>
649
650         * lily/simple-spacer.cc (get_line_forces): Ignore loose columns
651         unless they are breakable. This fixes discrepancies between the forces
652         calculated here and the forces calculated in get_line_configuration.
653
654         * lily/grob.cc (pure_relative_y_coordinate): fix some
655         mis-estimation that was happening with piano staves.
656
657         * lily/constrained-breaking.cc (resize): don't choke if we get a
658         measure that won't fit on a line.
659         (combine_demerits): don't consider uniformity when ragged
660
661         * lily/page-spacing.cc (solve): why the f* were there two of these?
662         (calc_subproblem): properly handle the case where a system is taller
663         than the page.
664
665         * lily/system.cc (get_paper_system): ensure that all the permissions
666         and penalties are passed to the paper systems.
667
668         * lily/page-breaking.cc (create_system_list): support system-count.
669
670         * scm/define-grobs.scm (pure-print-callbacks): add
671         ly:script-interface::print
672
673         * lily/page-spacing.cc (min_page_count): fix calculation of min
674         pages if we are ragged and there are non-zero springs.
675
676         * scm/layout-page-layout.scm: if the pure-height estimates are under
677         the real height, allow space-systems to ignore padding if it is
678         needed in order to fit the systems on one page
679
680         * lily/optimal-page-breaking.cc (try_page_spacing): fix reading
681         ragged properties
682         (solve): fix performance problem. Make sure we always get at least
683         one solution
684
685         * lily/page-breaking.cc (make_pages): include write-page-breaks
686         and page-stencil
687
688         * lily/paper-score.cc (calc_breaking): remove Gourlay breaker
689
690         * scm/define-grobs.scm: add the new slur-callback
691         fix pure-relevant to not exclude grobs whose extent is already
692         calculated
693
694         * ly/paper-defaults.ly: make ly:optimal-breaking the new default
695         page breaker
696
697         * lily/slur.cc (pure_height): new callback to estimate the height
698         of a slur
699
700 2006-09-02  Graham Percival  <gpermus@gmail.com>
701
702         * Documentation/user/invoking.itely: small update on
703         MacOS X notes; thanks Trevor!
704
705 2006-09-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
706
707         * VERSION (MY_PATCH_LEVEL): release 2.9.17
708
709         * lily/lexer.ll: accept EOF in all states.
710
711         * lily/tempo-performer.cc (Tempo_performer): initialize last_tempo_.
712
713         * lily/source-file.cc (Source_file): always 0-terminate character
714         array, to prevent Flex from barfing.
715
716         * lily/global-context.cc (get_output): robustness: don't crash if
717         no Score context found.
718
719         * lily/include/book.hh (class Book): idem.
720
721         * lily/include/context-def.hh (struct Context_def): idem.
722
723         * lily/include/score.hh (class Score): don't derive from Input.
724
725         * lily/book.cc (Book): add a copy ctor. 
726
727         * buildscripts/output-distance.py (FileLink.calc_distance): count
728         orphans in distance too.
729
730         * python/midi.c (midi_parse_track): robustness: don't read past
731         end of string.
732
733         * ly/performer-init.ly: add Control_track_performer, move
734         Tempo_performer and Time_signature_performer to Score.        
735
736         * lily/score-performer.cc (acknowledge_audio_elements): override
737         from base class: add to audio-columns
738
739         * lily/control-track-performer.cc (add_text): new file: generate
740         the control track.
741
742         * lily/performance.cc: move output_header_track to
743         Control_track_performer ()
744
745         * lily/midi-walker.cc (Midi_walker): get channel in constructor.
746
747         * lily/include/midi-item.hh (class Midi_channel_item): insert
748         class into hierarchy, for items that can have a channel setting. Dehungarify.
749
750         * lily/include/performer.hh (class Performer): remove
751         play_element();  move functionality into announce/acknowledge.
752
753         * lily/audio-staff.cc (output): remove channel_ from Midi_track.
754
755         * lily/tie-engraver.cc (stop_translation_timestep): only wipe
756         heads_to_tie_ if there are new heads to tie.  Fixes polyphony in ties.
757
758 2006-08-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
759
760         * lily/tie-engraver.cc (stop_translation_timestep): robustness for
761         ambituses.
762
763         * lily/all-font-metrics.cc: remove TFM support.
764
765         * lily/include/tfm.hh: remove TFM support, TFM reader.
766
767         * lily/include/binary-source-file.hh: remove Binary_source_file.
768
769 2006-08-27  Graham Percival  <gpermus@gmail.com>
770
771         * Documentation/topdocs/NEWS.itely: add @c marker for
772         stuff I've processed.
773
774         * Documentation/user/ various: info from NEWS.
775
776 2006-08-27  Joe Neeman  <joeneeman@gmail.com>
777
778         * lily/paper-column-engraver.cc (finalize): Oops, this change
779         should have gone in on 2006-08-23
780
781 2006-08-26  Mats Bengtsson  <mabe@s3.kth.se>
782
783         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use double
784         quotes to quote arguments. Fixes Windows problem.
785
786         * python/lilylib.py (progress): idem
787
788 2006-08-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
789
790         * scripts/musicxml2ly.py: fix for importing
791         minor key signatures from MusicXML.  (Phillip Kirlin)
792
793 2006-08-24  Phillip Kirlin  <pkirlin@acm.org>
794
795         * python/musicxml.py: 
796         (Attributes.get_key_signature): now correctly retrieves mode from 
797         MusicXML. 
798
799 2006-08-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
800
801         * lily/parser.yy (output_def_body): take ownership of identifier
802         back to C++.
803
804         * Documentation/user/advanced-notation.itely (Metronome marks):
805         update use of \tempo in \midi.
806
807         * VERSION: release 2.9.16
808         
809 2006-08-24  Erik Sandberg  <mandolaerik@gmail.com>
810
811         * input/mutopia/*: upgrade to new midi tempo syntax (repairs make
812         web partially)
813
814 2006-08-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
815
816         * input/regression/tie-chord-partial.ly: clarify example.
817
818         * scm/define-music-properties.scm (all-music-properties): remove
819         untied.
820
821         * ly/music-functions-init.ly: remove \untied.
822
823         * lily/tie-engraver.cc (struct Head_event_tuple): store both
824         stream events and music events.
825         (stop_translation_timestep): search acknowledged heads for
826         tie-event.
827
828         * input/regression/tie-chord-partial.ly: new file.
829
830         * scm/define-markup-commands.scm (char): use ly:wide-char->utf-8
831         for \char markup command.
832
833         * scm/define-event-classes.scm (unlistened-music-event-classes): idem.
834
835         * scm/define-music-types.scm (music-descriptions): consistency:
836         Use solo-{one,two}-event iso. solo-[12]-event.
837
838         * lily/part-combine-engraver.cc (process_music):
839         Use solo-{one,two}-event iso. solo-[12]-event.
840
841         * ly/declarations-init.ly (partCombineListener): add Timing as
842         alias
843
844         * flower/std-string.cc (string_copy): use copy ()
845
846         * lily/source-file.cc (Source_file): use copy(). Remove contents_str0()
847
848 2006-08-24  Graham Percival  <gpermus@gmail.com>
849
850         * Documentation/user/changing-defaults.itely, global.itely,
851         lilypond-book.itely, page.itely: minor changes from mailist.
852
853 2006-08-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
854
855         * buildscripts/mutopia-index.py (allfiles): filter lily-XXX and
856         snippet-map
857
858         * scm/define-context-properties.scm
859         (translator-property-description): robustness: detect type errors
860         in property definitions.
861
862         * lily/parser.yy (score_body): protect SCORE_IDENTIFIER result
863         after getting it from SCM. 
864
865         * lily/smobs.cc (protect_smob): switch off fancy smob protection
866         for now. 
867
868         * lily/include/performer.hh (class Performer): strip get_tempo()
869         method.
870
871         * lily/midi-def.cc: strip file.
872
873         * lily/lexer.ll (Lily_lexer): don't protect hash key separately.
874
875         * lily/include/context-def.hh (struct Context_def): use
876         VIRTUAL_COPY_CONSTRUCTOR().
877
878         * lily/source-file.cc: smobification.
879
880         * lily/include/source-file.hh (class Source_file): smobify
881         Source_file. Trim redundant members.
882
883         * lily/parser.yy (Lily_lexer::try_special_identifiers): unprotect
884         clones after creation. This plugs a huge memory leak.
885
886         * python/convertrules.py (FatalConversionError.sub_tempo):
887         complete rule for \midi{ \tempo }
888
889         * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): idem.
890
891         * input/mutopia/F.Schubert/morgenlied.ly (pianoLH): update tempo.
892
893 2006-08-23  Joe Neeman  <joeneeman@gmail.com>
894
895         * input/regression/optimal-page-breaking-hstretch.ly: test for
896         ragged-last-bottom also
897
898         * lily/paper-column-engraver.cc (finalize): make the end of a score
899         breakable by default. This is to balance out a change in behaviour
900         of the page-turn-breaker which no longer makes the end of a score
901         breakable.
902
903         * lily/paper-book.cc (pages): set the systems_ once the pages are
904         broken
905
906         * lily/page-turn-page-breaking.cc (calc_subproblem): use the new
907         Page_breaking interface.
908
909         * lily/page-breaking.cc (class Page_breaking): make the interface
910         more consistent and provide abstractions for dealing with
911         Line_divisions.
912
913         * lily/optimal-page-breaking.cc (solve): use a more straightforward
914         algorithm. Use the new interface to Page_breaking.
915
916         * lily/page-spacing.cc: better support for ragged-bottom and
917         ragged-last-bottom
918
919 2006-08-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
920
921         * python/convertrules.py (conv): warning on \tempo{}
922
923         * ly/performer-init.ly: set tempoWholesPerMinute.
924
925         * ly/midi-init.ly: remove \midi
926
927         * lily/tempo-performer.cc: look at tempoWholesPerMinute to set
928         MIDI tempo.
929
930         * lily/metronome-engraver.cc (process_music): use tempoUnitCount
931         tempoUnitDuration for determining what to print.
932
933         * lily/lyric-extender.cc: typo.
934
935         * lily/parser.yy (output_def_body): disallow \tempo in \midi{}
936
937         * lily/duration-scheme.cc (LY_DEFINE): ly:duration-length: new
938         function.
939
940         * scm/lily.scm (define-scheme-options): alphabetize, add eps-pad-boxes.
941
942         * scm/framework-ps.scm (dump-stencil-as-EPS): only pad boxes if
943         eps-pad-boxes is set.
944
945         * scripts/lilypond-book.py (main): use -deps-pad-boxes.
946
947         * THANKS: update sponsors.
948
949         * ly/english.ly: quarter tone naming (thanks, Trevor Baca)
950
951         * Documentation/topdocs/NEWS.tely (Top): doc new feature.
952
953         * input/regression/tie-chord-untied.ly: new file.
954
955         * lily/tie-engraver.cc (acknowledge_note_head): check 'untied property.
956
957         * scm/define-music-properties.scm (all-music-properties): add
958         'untied property.
959
960         * buildscripts/mutopia-index.py (allfiles): look for .ly rather
961         than .ly.txt.
962         (headertext_nopics): sanitize no-examples text.
963
964         * scm/page.scm (make-page-stencil): don't rely on extents of
965         page-stencil. This fixes spurious space around .EPS files produced
966         with the EPS backend.
967
968 2006-08-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
969
970         * lily/stencil-scheme.cc (LY_DEFINE): make extent arguments optional.
971
972         * lily/hara-kiri-engraver.cc (process_music): remember
973         keepAliveInterfaces after processing \set
974
975         * lily/lyric-extender.cc (print): support left/right-padding for
976         extenders.
977
978         * scm/documentation-generate.scm (string-append): revert lilypond/
979         path, doc why.
980
981 2006-08-20  Graham Percival  <gpermus@gmail.com>
982
983         * Documentation/user/lilypond.tely: clarification to
984         license presentation (not to actual license).
985
986         * Documentation/user/basic-notation.itely,
987         instrument-notation.itely: minor changes.
988
989         * input/ {regression, test}/+.ly: clarification to
990         text (you can click on examples).  Thanks, Mats!
991
992         * input/manual/bar-lines.ly: adds ||: repeats.
993
994 2006-08-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
995
996         * make/ly-vars.make (OMF_FILES): strip ps.gz from OMF_FILES 
997
998         * scm/documentation-lib.scm (texi-file-head): category LilyPond.
999
1000         * Documentation/user/lilypond.tely: strip lilypond/ from info
1001         links, rename to category LilyPond
1002
1003         * lily/pango-font.cc (description_string): new function.
1004
1005         * VERSION: release 2.9.15
1006
1007         * lily/spacing-engraver.cc (stop_translation_timestep): use
1008         Dscho's fix for spacing spanner. 
1009
1010         * scm/define-music-types.scm (music-descriptions): use
1011         apply-output-event for ApplyOutputEvent
1012
1013         * lily/output-property-engraver.cc (listen_apply_output): rename
1014         from listen_layout_instruction.
1015
1016         * lily/piano-pedal-engraver.cc (struct Pedal_type_info): new
1017         function protect()
1018
1019 2006-08-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
1020
1021         * scm/lily.scm (lilypond-all): option read-file-list: substitute
1022         commandline args with contains, split by \n.
1023
1024         * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
1025         write snippet-names file, call with -dread-file-list. Fixes
1026         command limitations on 64-bit systems.
1027
1028         * input/regression/stencil-color-rotation.ly: new file.
1029
1030         * lily/include/translator.hh (struct Acknowledge_information):
1031         revert: don't use Protected_scm in global objects, as GUILE can't
1032         handle gc_unprotect from automated destructors on MacOS X.
1033  
1034         * lily/grob.cc (get_print_stencil): use retval.expr() as base for
1035         color, not the original stencil. Fixes combinations of
1036         color/transparency/rotation. 
1037
1038         * scripts/lilypond-book.py (main): add --formats=eps for
1039         texinfo/latex.
1040
1041         * lily/spacing-engraver.cc (stop_translation_timestep): don't
1042         crash if spacing_ is nonexistent.
1043
1044 2006-08-14  Mats Bengtsson  <mabe@s3.kth.se>
1045
1046         * scripts/lilypond-book.py (output): Remove obsolete(!?)
1047         \catcode`\@=12 in the LaTeX output.
1048
1049 2006-08-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
1050
1051         * scm/define-music-types.scm (music-descriptions):
1052         use sustain-event iso. sustain-pedal-event.
1053
1054 2006-08-11  Joe Neeman  <joeneeman@gmail.com>
1055
1056         * scripts/convert-ly.py: honour the -n command-line switch
1057
1058 2006-08-10  Han-Wen Nienhuys  <hanwen@lilypond.org>
1059
1060         * scm/output-lib.scm (bar-line::calc-glyph-name): add dashed liine
1061         break specification.
1062
1063 2006-08-10  Joe Neeman  <joeneeman@gmail.com>
1064
1065         * Documentation/user: convert-ly the user manual
1066
1067 2006-08-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
1068
1069         * stepmake/aclocal.m4: version check patch (thanks MWD)
1070
1071         * ly/music-functions-init.ly: robustness. Don't crash if
1072         currentBarNumber is not a number.
1073
1074         * VERSION (PATCH_LEVEL): bump.
1075
1076 2006-08-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
1077
1078         * stepmake/aclocal.m4: better version check; handle fooX.Y
1079         binaries too.
1080
1081         * ly/performer-init.ly: instrument name fixup.
1082
1083         * input/manual/chord-names-jazz.ly (banterProperties):
1084         instrumentName update
1085
1086         * scm/define-event-classes.scm (lambda): use ly:is-listened-event-class
1087
1088         * lily/ly-module.cc (ly_module_symbols): use ly_hash_table_keys
1089
1090         * lily/translator.cc (LY_DEFINE): ly:is-listened-event-class: new
1091         function. Use hash tables to check membership.
1092
1093         * lily/general-scheme.cc (LY_DEFINE): new function.
1094
1095         * lily/piano-pedal-engraver.cc (struct Pedal_type_info): idem
1096
1097         * lily/include/translator.hh (struct Acknowledge_information): add
1098         Protected_scm
1099
1100         * ly/music-functions-init.ly: change name to BreathingEvent
1101
1102         * input/regression/*.ly: apply it.
1103
1104         * python/convertrules.py (conv): better instrumentName conversion
1105         rule.
1106
1107         * scm/define-music-types.scm (music-descriptions): add
1108         line-break-event to LineBreakEvent music
1109
1110         * lily/music.cc (to_event): don't crash if music type not set.
1111
1112         * lily/spacing-loose-columns.cc (set_loose_columns): don't barf if
1113         spacing not set.
1114
1115         * lily/spacing-engraver.cc (stop_translation_timestep): set
1116         spacing for proportional notation too.
1117
1118         * scm/translation-functions.scm (format-bass-figure): inspect
1119         stream-event.
1120
1121         * scripts/lilypond-book.py (bindir): add bindir to $PATH.
1122
1123 2006-08-08  Joe Neeman  <joeneeman@gmail.com>
1124
1125         * lily/include/constrained-breaking.hh: add Line_details (Prob*)
1126
1127         * scm/page.scm (make-page): make it friendlier to call (esp. from C++)
1128
1129         * scm/layout-page-layout.scm (make-page-from-systems): new function
1130         (optimal-page-breaks): use the new page-breaking calling convention
1131
1132         * scm/define-context-properties.scm (all-user-translation-properties):
1133         add revokePageTurns
1134
1135         * lily/paper-column-engraver.cc (stop_translation_timestep): add
1136         revokePageTurns  functionality. If there is a special barline within
1137         the breakable region, break there instead of at the end of the region.
1138
1139         * lily/paper-book.cc (pages): use the new page-breaking calling
1140         convention
1141
1142 2006-08-07  Erik Sandberg  <mandolaerik@gmail.com>
1143
1144         * lily/lexer.ll, lily/source-file.cc: Add \sourcefileline command
1145
1146         * scripts/lilypond-book.py: insert \sourcefileline command in
1147         output, so lilypond error messages refer to the spot in the
1148         original .lytex / .itely sourcefile.
1149
1150 2006-08-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
1151
1152         * lily/spacing-loose-columns.cc (set_loose_columns): oops: use
1153         space to next column for distance to fixed col.
1154
1155         * VERSION (PACKAGE_NAME): release 2.9.14
1156
1157         * lily/pitched-trill-engraver.cc (make_trill): do set_parent also
1158         if no accidental.
1159
1160         * lily/accidental-engraver.cc (process_acknowledged): don't create
1161         accidental for trill span event. This fixes spurious accidentals
1162         on trills.
1163
1164 2006-08-04  Mats Bengtsson  <mabe@s3.kth.se>
1165
1166         * scm/define-grob-properties.scm (all-user-grob-properties):
1167         Clarify documentation of side-axis and direction. Thanks to Paul
1168         for the inspiration.
1169
1170         * lily/bar-line.cc: Add documentation for "||:" also in the
1171         interface documentation.
1172
1173 2006-08-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
1174
1175         * lily/spacing-loose-columns.cc (set_loose_columns): bugfix.
1176
1177         * lily/paper-column.cc (set_system): new function.
1178
1179         * lily/spacing-engraver.cc (stop_translation_timestep): store
1180         SpacingSpanner refs in Paper_column.
1181
1182         * lily/spacing-loose-columns.cc (set_loose_columns): rewrite
1183         compute loose clique spacing using GraceSpacing/SpacingSpanner.
1184
1185 2006-08-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
1186
1187         * lily/beam-engraver.cc (listen_beam): add method for
1188         Grace_beam_engraver too.
1189
1190 2006-08-03  Mats Bengtsson  <mabe@s3.kth.se>
1191
1192         * python/convertrules.py: Fix indentation bug that broke
1193         conversion of files older than 1.3.117.
1194         Fix escape error in the description for 2.9.6.
1195
1196 2006-08-02  Erik Sandberg  <mandolaerik@gmail.com>
1197
1198         * lily/*-engraver.cc: convert all try_music functions to listen_*
1199         functions.
1200
1201         * lily/piano-pedal-engraver.cc: some additional cleanups: use
1202         enums to represent pedal types, and calculate more data statically.
1203
1204         * scm/part-combiner.scm (recording-group-emulate): create a
1205         softcoded substitute for recording-group-engraver.cc.
1206
1207         * lily/music.cc: make a common transpose function for events and
1208         music
1209
1210         * ly/declarations-init.ly: change melisma/melismaEnd. Eliminates
1211         ManualMelismaEvent, and obsoletes Melisma_translator.
1212
1213 2006-08-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
1214
1215         * input/test/instrument-name-align.ly: update version.
1216
1217 2006-08-02  Mats Bengtsson  <mabe@s3.kth.se>
1218
1219         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
1220         Doc the --pdf flag to lilypond-book.
1221
1222 2006-07-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
1223
1224         * Documentation/topdocs/NEWS.tely (Top): add description.
1225
1226         * input/regression/tuplet-full-length-note.ly: add file.
1227
1228         * lily/instrument-name-engraver.cc (acknowledge_axis_group):
1229         always store axis group.
1230
1231 2006-07-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
1232
1233         * input/regression/instrument-switch.ly: new file.
1234
1235         * lily/instrument-switch-engraver.cc (process_music): new file.
1236
1237         * ly/engraver-init.ly: add Instrument_switch_engraver
1238
1239         * ly/music-functions-init.ly: \instrumentSwitch
1240
1241         * scm/define-context-properties.scm
1242         (all-user-translation-properties): add instrumentCueName
1243
1244         * scm/define-grobs.scm (all-grob-descriptions): add InstrumentSwitch
1245
1246 2006-07-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
1247
1248         * ly/music-functions-init.ly: music function \transposition.
1249
1250         * lily/parser.yy (command_element): softcode \transposition.
1251
1252         * lily/fall-engraver.cc (process_music): delta-pitch -> delta-step.
1253         (process_music): oops.
1254
1255         * lily/instrument-name-engraver.cc (start_spanner): new
1256         function. Create spanner when property changes.
1257         (stop_spanner): new function.
1258
1259         * python/convertrules.py (conv): add rule.
1260
1261         * lily/instrument-name-engraver.cc: shortVocalName iso. vocNam,
1262         shortInstrumentName iso. instr.
1263
1264         * scm/output-ps.scm (dashed-line): add phase argument to
1265         dashed-line.
1266
1267         * lily/bar-line.cc (dashed_bar_line): new function.
1268         (compound_barline): support \bar "dashed". 
1269
1270         * lily/lily-parser-scheme.cc (LY_DEFINE): only write
1271         --output=DIR to DIR/BASE if it is a dir. 
1272
1273         * flower/file-name.cc (file_part): new function
1274         (dir_part): new function
1275
1276         * lily/lily-parser-scheme.cc (LY_DEFINE): 
1277
1278         * DEDICATION: update
1279
1280 2006-07-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
1281
1282         * lily/instrument-name-engraver.cc: formatting.
1283
1284         * python/convertrules.py (conv): bugfix for \epsfile.
1285
1286 2006-07-25  Joe Neeman  <joeneeman@gmail.com>
1287
1288         * lily/grob.cc:
1289         
1290         * lily/gourlay-breaking.cc: Oops, these should have been included
1291         in my last commit
1292
1293 2006-07-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
1294
1295         * scripts/*.py (program_name): cleanup relocation snippets.
1296
1297         * scripts/convert-ly.py (datadir): remove LILYPONDPREFIX support.
1298
1299 2006-07-24  Joe Neeman  <joeneeman@gmail.com>
1300
1301         * scm/define-grobs.scm (all-grob-descriptions): make NonMusicalPaperColumn
1302         page-breakable by default
1303
1304         * scm/layout-page-layout.scm (space-systems): fix bug where the force isn't
1305         correctly calculated for a single-system page
1306
1307         * scm/lily-library.scm (interval-sane?): also check that the first number is no
1308         bigger than the second number
1309
1310         * lily/simple-spacer.cc (solve): allow compression even when ragged (but we
1311         acknowledge that we aren't satisfying constraints)
1312
1313         * lily/hara-kiri-group-spanner.cc (request_suicide): give equal treatment to
1314         non-Items
1315
1316         * lily/grob.cc (pure_height): add minimum-Y-extent
1317
1318         * lily/gourlay-breaking.cc (solve): don't ignore a compression force, even if we're
1319         ragged
1320
1321         * lily/constrained-breaking.cc: convert code to use new Matrix class
1322         (get_best_solution): new function
1323
1324         * scm/page.scm (make-page-stencil): don't crash if we annotate-layout when there
1325         is a page with no systems
1326
1327 2006-07-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
1328
1329         * VERSION (PACKAGE_NAME): release 2.9.13
1330
1331         * scm/define-grobs.scm (all-grob-descriptions): remove stray
1332         assignment.
1333
1334 2006-07-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
1335
1336         * Documentation/topdocs/NEWS.tely (Top): doc new features.
1337
1338         * scm/output-lib.scm (grace-spacing::calc-shortest-duration): new
1339         function.
1340
1341         * scm/define-grob-properties.scm (all-user-grob-properties):
1342         remove grace-space-factor.
1343
1344         * scm/define-grob-interfaces.scm (grace-spacing-interface): add
1345         grace-spacing-interface
1346         (spacing-options-interface): add.
1347
1348         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add Grace_spacing_engraver
1349
1350         * lily/spacing-options.cc (get_duration_space): move function from spacing-basic.cc
1351
1352         * lily/spacing-basic.cc (note_spacing): do init_from_grob on
1353         GraceSpacing object.
1354
1355         * lily/note-spacing.cc: fix prop list formatting
1356
1357         * lily/beaming-pattern.cc (de_grace): new function. Sensible
1358         beaming for grace notes too.
1359
1360         * input/regression/spacing-grace.ly: update.
1361
1362         * lily/grace-spacing-engraver.cc: new file.
1363
1364         * lily/spacing-spanner.cc: add strict-grace-spacing.
1365
1366 2006-07-20  Graham Percival  <gpermus@gmail.com>
1367
1368         * lily/parser.yy: compile fix.
1369
1370 2006-07-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
1371
1372         * scm/define-grobs.scm (all-grob-descriptions): typo.
1373
1374         * scm/framework-eps.scm (dump-stencils-as-EPSes): just strip
1375         .eps extension from includegraphics.
1376
1377         * scripts/lilypond-book.py (main): add support for --pdf. 
1378
1379         * lily/spacing-spanner.cc (calc_common_shortest_duration): use
1380         callback to compute common shortest duration.
1381         (set_springs): typo.
1382
1383         * scm/define-grob-properties.scm (all-user-grob-properties): add
1384         strict-grace-spacing.
1385
1386         * lily/spacing-determine-loose-columns.cc (is_loose_column):
1387         support float_grace_columns_.
1388
1389         * lily/spacing-options.cc (init_from_grob): new file.
1390
1391         * Documentation/topdocs/NEWS.tely (Top): doc tupletFullLengthNote.
1392
1393         * input/regression/spacing-loose-grace.ly: new file.
1394
1395         * Documentation/topdocs/NEWS.tely (Top): document new feature.
1396
1397         * lily/tuplet-engraver.cc (struct Tuplet_description): read
1398         tupletFullLengthNote too. Choose right bound depending on value.
1399
1400         * input/regression/tuplet-full-length-note.ly: new file.
1401
1402 2006-07-19  Erik Sandberg  <mandolaerik@gmail.com>
1403
1404         * lily/*-performer.cc: Converted try_music to listen_*
1405
1406         * lily/grob-info.cc, lily/engraver.cc: represent the cause of grob
1407         as a stream-event internally. Introduce event_cause (), deprecate
1408         music_cause ().
1409
1410         * scm/define-music-types.scm: Removed BusyPlayingEvent
1411         
1412 2006-07-19  Mats Bengtsson  <mabe@s3.kth.se>
1413
1414         * Documentation/user/advanced-notation.itely (Font selection):
1415         Document how to get a list of available fonts using 'lilypond
1416         -dshow-available-fonts blabla'.
1417
1418 2006-07-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
1419
1420         * GNUmakefile.in: filter lily-XXX.pdf files.
1421
1422         * scm/define-grob-interfaces.scm (bend-after-interface): add thickness.
1423
1424         * scm/define-grob-properties.scm (all-internal-grob-properties):
1425         remove delta-pitch. Use delta-position everywhere.
1426
1427         * scm/output-lib.scm (fall::print): use new order.
1428
1429         * scm/output-ps.scm (path): reorder arguments.
1430
1431         * scm/output-svg.scm (path): support for path primitive.
1432
1433         * input/regression/bend-after.ly: new file.
1434
1435         * Documentation/user/GNUmakefile ($(outdir)/%.pdf): foolproof
1436         recipe for eps -> pdf conversion.
1437
1438 2006-07-19  Erik Sandberg  <mandolaerik@gmail.com>
1439
1440         * lily/parser.yy, lily/lexer.ll: added some simplifications by
1441         Angelo Contardi.
1442
1443 2006-07-19  Graham Percival  <gpermus@gmail.com>
1444
1445         * input/manual/screech-boink.ly: moved to here.
1446
1447         * input/screech-boink.ly: deleted.
1448
1449         * scm/define-grob-properties.scm: clarify doc string.
1450
1451 2006-07-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
1452
1453         * Documentation/topdocs/NEWS.tely (Top): doc new feature.
1454
1455         * scm/output-ps.scm (path): define path.
1456
1457         * scm/define-stencil-commands.scm
1458         (ly:register-stencil-expression): add path.
1459
1460         * scm/define-music-properties.scm (all-music-properties): add delta-pitch.
1461
1462         * ly/engraver-init.ly: add Fall_engraver
1463
1464         * lily/parser.yy (music_function_event): allow musicfunction
1465         without music arg as music_function_event.
1466
1467         * lily/grob-scheme.cc (LY_DEFINE):
1468         ly:grob-robust-relative-extent. New function.
1469
1470         * scm/define-grobs.scm (all-grob-descriptions): add BendAfter
1471
1472         * scm/define-music-types.scm (music-descriptions): add BendAfterEvent.
1473
1474         * scm/output-lib.scm (fall::print): new function
1475
1476         * lily/fall-engraver.cc (stop_fall): new file.
1477
1478         * ly/music-functions-init.ly: alphabetise.
1479
1480         * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): pdf iso. eps as
1481         base.
1482
1483 2006-07-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
1484
1485         * VERSION (PATCH_LEVEL): bump version. Release 2.9.12
1486
1487         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
1488         doc pdftex usage.
1489
1490         * lily/translator-group.cc (connect_to_context): non const error message.
1491
1492         * Documentation/user/GNUmakefile ($(outdir)/%.pdf): update to use PDF
1493
1494         * scm/paper.scm (internal-set-paper-size): define landscape to #f
1495         if unset.
1496
1497         * scm/framework-ps.scm (convert-to-pdf): swap h and w in case of landscape. 
1498
1499         * stepmake/stepmake/texinfo-rules.make: strip DVI support.
1500
1501         * scm/framework-eps.scm (dump-stencils-as-EPSes): generate
1502         systems.pdftex too.
1503
1504         * scm/backend-library.scm (postscript->pdf): use -dEPSCrop for PDF.
1505
1506         * make/lilypond-vars.make (TEXINPUTS): add pdf output format.
1507
1508         * Documentation/topdocs/NEWS.tely (Top): add pdftex note.
1509
1510         * scm/output-ps.scm (resetrotation): use gsave/grestore for rotation.
1511
1512         * lily/main.cc (parse_argv): don't overwrite previous --formats string.
1513
1514         * scm/backend-library.scm (postscript->pdf): strip .eps too. 
1515
1516 2006-07-14  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1517
1518         * scm/layout-page-layout.scm: Define module, tidy code, use more
1519         functions iso. a single big one.
1520
1521         * scm/layout-page-dump.scm: move page dump functions used in two
1522         pass spacing to this file. Define module.
1523
1524         * scm/lily.scm (ly:load): don't load layout-page-layout.scm
1525          (separate module)
1526
1527         * ly/paper-defaults.ly: use module layout-page-layout.
1528
1529 2006-07-14  Erik Sandberg  <mandolaerik@gmail.com>
1530
1531         * lily/music.cc: Revised MusicEvent event class. It now contains
1532         event data directly instead of encapsulating it in music. The
1533         previously used class is renamed to OldMusicEvent.
1534
1535         * lily/stream-event.cc: Stream events are now probs.
1536         
1537         * lily/translator-group.cc, lily/translator.cc: Translators can
1538         now listen directly to stream events, by using macros
1539         [DECLARE,IMPLEMENT]_TRANSLATOR_LISTENER.
1540
1541         * lily/arpeggio-engraver.cc: Converted to use new event system
1542
1543         * THANKS: Corrected spelling mistake.
1544
1545 2006-07-12  Graham Percival  <gpermus@gmail.com>
1546
1547         * Documentation/user/SConscript, make/lilypond-vars.make,
1548         input/GNUmakefile: doc build looks in input/manual instead
1549         of input/test/
1550
1551         * input/manual/ GNUmakefile, SConscript: build files for
1552         input/manual/
1553
1554         * input/test/ various: some files moved to input/manual/ 
1555
1556         * Documentation/user/basic-notation.itely: small updates;
1557         thanks Kieren and Charles!
1558
1559 2006-07-12  Han-Wen Nienhuys  <hanwen@lilypond.org>
1560
1561         * VERSION (PACKAGE_NAME): release 2.9.11
1562
1563         * Documentation/topdocs/NEWS.tely (Top): update prop value 
1564
1565         * Documentation/user/basic-notation.itely (Tuplets): new property
1566         value.
1567
1568 2006-07-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
1569
1570         * python/convertrules.py (conv): tweaks. 
1571
1572         * VERSION (PATCH_LEVEL): bump version.
1573
1574         * python/convertrules.py (conv): add rule for
1575         tupletNumberFormatFunction.
1576
1577         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
1578         tupletNumberFormatFunction.
1579
1580         * scm/define-grobs.scm (all-grob-descriptions): calc TupletNumber
1581         text through 'text callback.
1582
1583         * lily/time-scaled-music-iterator.cc (construct_children): copy
1584         tweaks generated events.
1585
1586         * scm/define-context-properties.scm
1587         (all-user-translation-properties): remove tupletNumberFormatFunction
1588
1589         * lily/tuplet-engraver.cc (process_music): don't read
1590         tupletNumberFormatFunction
1591
1592         * scm/output-lib.scm (tuplet-number::calc-fraction-text): new
1593         function.
1594
1595 2006-07-11  Erik Sandberg  <mandolaerik@gmail.com>
1596
1597         * lily/global-context-scheme.cc: Separated ly:run-translator into
1598         smaller pieces.
1599
1600         * lily/score-engraver.cc, lily/score-performer.cc,
1601         scm/define-context-properties.scm: Make paper/midi output
1602         accessable as a context property.
1603
1604         * lily/score-translator.cc, lily/score-context.cc: Removed.
1605
1606 2006-07-07  Guido Amoruso  <guidonte@katamail.com>
1607
1608         * scm/ps-to-png.scm (Module): 
1609         * scm/framework-tex.scm (Module): 
1610         * scm/framework-ps.scm (Module): 
1611         * scm/backend-library.scm (Module): 
1612         * scm/framework-ps.scm: invoke gs with "-dDEVICEWIDTHPOINTS" and
1613         "dDEVICEHEIGHTPOINTS".
1614
1615 2006-07-04  Graham Percival  <gpermus@gmail.com>
1616
1617         * Documentation/user/ various: general improvements to
1618         "working with lilypond files" section.
1619
1620 2006-07-03  Erik Sandberg  <mandolaerik@gmail.com>
1621
1622         * lily/sequential-iterator.cc: Change the default get_music_list
1623         to read elements-callback music property
1624
1625         * scm/define-music-types.scm, scm/music-functions.scm: Cleaner
1626         processing of multimeasure rests. Softcoded
1627         sequential-music-iterator.
1628
1629         * lily/sequential-music-iterator.cc: Removed.
1630
1631 2006-06-28  Graham Percival  <gpermus@gmail.com>
1632
1633         * Documentation/user/basic-notation.itely: clarify \repeatTie.
1634
1635 2006-06-27  Erik Sandberg  <mandolaerik@gmail.com>
1636
1637         * lily/parser.yy: Wrap non-post-events in EventChords before
1638         assigning them to identifiers.
1639
1640 2006-06-27  Mats Bengtsson  <mabe@s3.kth.se>
1641
1642         * lily/bar-line.cc (compound_barline): Fix parenthesis error,
1643         gives correct vertical placement of \bar ":" in all staff
1644         sizes. Thanks Martial!
1645
1646 2006-06-26  Graham Percival  <gpermus@gmail.com>
1647
1648         * Documentation/user/invoking.itely : minor update from mailist.
1649
1650 2006-06-26  Erik Sandberg  <mandolaerik@gmail.com>
1651
1652         * lily/ various: Introduce stream events of types Prepare,
1653         OneTimeStep, CreateContext, AnnounceNewContext, RemoveContext,
1654         ChangeContext, SetProperty, RevertProperty, Override and Revert.
1655
1656         * lily/global-context*.cc: Time is now -inf before iteration
1657         starts.
1658
1659         * lily/include/context.hh: Removed unique_, init_
1660
1661         * Documentation/topdocs/NEWS: Make the feathered beam example
1662         avoid triggering a bug.
1663
1664 2006-06-24  Graham Percival  <gpermus@gmail.com>
1665
1666         * Documentation/user/ various: small additions from mailist.
1667
1668 2006-06-22  Mats Bengtsson  <mabe@s3.kth.se>
1669
1670         * ly/performer-init.ly: Add some missing links in the context
1671         hierarchy for MIDI output. There are probably some more missing!
1672
1673 2006-06-21  Graham Percival  <gpermus@gmail.com>
1674
1675         * Documentation/user/ various: minor spelling fixes;
1676         thanks Dave Luttinen!
1677
1678         * Documentation/user/ various: small clarifications;
1679         thanks Anthony Youngman!
1680
1681 2006-06-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
1682
1683         * po/fr.po: add \n appropriately.
1684
1685         * lily/lexer.ll: remove ? from version-seen?  
1686
1687 2006-06-19  John Mandereau  <john.mandereau@free.fr>
1688
1689         * po/fr.po; update translation, by Jean-Charles Malahieude and
1690         John Mandereau.
1691
1692 2006-06-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
1693
1694         * THANKS: add Markus Schneider.
1695
1696         * lily/tab-staff-symbol-engraver.cc: derive from Engraver, not
1697         Staff_symbol_engraver
1698
1699         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): don't
1700         replace staff_engraver
1701
1702         * lily/staff-symbol-engraver.cc (stop_spanner): announce end of
1703         spanner.
1704
1705         * lily/staff-collecting-engraver.cc
1706         (acknowledge_end_staff_symbol): new function
1707
1708         * lily/volta-engraver.cc (acknowledge_end_staff_symbol): new function. 
1709
1710         * lily/staff-collecting-engraver.cc
1711         (acknowledge_end_staff_symbol): new function.
1712
1713         * lily/main.cc: switch on relocation by default.
1714
1715 2006-06-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
1716
1717         * lily/spacing-spanner.cc (musical_column_spacing): set
1718         compound_fixed_note_space to 0.0. Document why.
1719
1720         * lily/simple-spacer.cc (is_sane): also have a kludge for numeric
1721         range of inverse_hooke_
1722         (Simple_spacer): init completely.
1723         (fits): const
1724         (get_line_configuration): don't use cols.resize(); it introduces
1725         initialized data.
1726
1727         * scm/framework-ps.scm (dump-page): add setstrokeadjust. 
1728
1729         * ps/music-drawing-routines.ps: remove selectfont L1 hack.
1730
1731         * lily/beaming-pattern.cc (best_splitpoint_index): urg, 2nd
1732         try. Divide by beatlength.
1733
1734         * input/regression/beaming-ternary-metrum.ly: update doc.
1735         add beatLength hack.
1736
1737         * scm/music-functions.scm (make-time-signature-set): add
1738         standard-beat-grouping. 
1739
1740 2006-06-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
1741
1742         * input/regression/tie-whole.ly: new file.
1743
1744         * lily/tie-formatting-problem.cc (set_column_chord_outline): don't
1745         cross center of note head in case of invisible stem. 
1746
1747 2006-06-16  Graham Percival  <gpermus@gmail.com>
1748
1749         * Documentation/user/ various: small fixes from mailist.
1750
1751 2006-06-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
1752
1753         * lily/breathing-sign.cc (offset_callback): idem.
1754
1755         * lily/align-interface.cc (align_to_fixed_distance): remove
1756         hungarian suffix.
1757
1758         * lily/beaming-pattern.cc (count_factor_twos): oops. We want
1759         x%2==0.
1760
1761 2006-06-15  Han-Wen Nienhuys  <hanwen@lilypond.org>
1762
1763         * VERSION (PACKAGE_NAME): release 2.9.9
1764
1765         * ly/lilypond-book-preamble.ly: add \version
1766
1767 2006-06-14  Han-Wen Nienhuys  <hanwen@lilypond.org>
1768
1769         * scripts/lilypond-book.py (PREAMBLE_LY): include
1770         lilypond-book-preamble.ly
1771
1772         * lily/stem.cc (get_beaming): return max of 0 and
1773         scm_ilength. Fixes slurring from/to beams.
1774
1775         * ly/lilypond-book-preamble.ly: new file.
1776
1777         * lily/slur.cc: add inspect-index feature.
1778
1779 2006-06-13  Graham Percival  <gpermus@gmail.com>
1780
1781         * Documentation/user/tutorial.itely: trivial fix.
1782
1783 2006-06-13  Erik Sandberg  <mandolaerik@gmail.com>
1784
1785         * lily/parser.yy, scm/ly-syntax-constructors.scm: Produce almost
1786         all non-event music in the parser via MAKE_SYNTAX.
1787
1788         * lily/parser-scheme.cc: Add ly:parser-error function
1789
1790         * scm/paper.scm: fix typo
1791
1792 2006-06-13  Han-Wen Nienhuys  <hanwen@lilypond.org>
1793
1794         * THANKS: add RT.
1795
1796         * lily/font-config.cc (init_fontconfig): add warning if cache_file
1797         is null.
1798
1799         * buildscripts/output-distance.py (test_compare_signatures):
1800         timing routines.
1801         (read_signature_file): use new signature format.
1802
1803         * scm/stencil.scm (write-system-signature): simpler signature
1804         format.
1805
1806         * lily/stem.cc (calc_stem_end_position): calc quantized-positions
1807         for beamed case. 
1808
1809         * lily/note-spacing.cc (stem_dir_correction): don't inspect
1810         stem_end_position, but estimate instead. 
1811
1812         * lily/tuplet-bracket.cc (calc_positions): look at
1813         stem-end-position for tuplet bracket slope. Fixes sloped tuplet
1814         brackets narrower than beams. 
1815
1816         * lily/lexer.ll: set version-seen? even if version is
1817         INVALID. 
1818
1819         * lily/rest.cc (y_offset_callback): bugfix: decide position
1820         override based on scm_is_number(). Fixes \rest on center staff
1821         line. 
1822
1823         * lily/beaming-pattern.cc (best_splitpoint_index): fix beaming
1824         patterns for 16th triplets.
1825
1826 2006-06-10  Graham Percival  <gpermus@gmail.com>
1827
1828         * Documentation/user/ page.itely, global.itely: editing
1829         and reorg.
1830
1831         * Documentation/user/ various: findex -> funindex.
1832
1833 2006-06-10  Erik Sandberg  <mandolaerik@gmail.com>
1834
1835         * lily/time-scaled-music-iterator.cc: Use tupletSpannerDuration to
1836         insert extra tuplet events.
1837
1838 2006-06-10  Graham Percival  <gpermus@gmail.com>
1839
1840         * Documentation/user/programming-interfaces.itely: add
1841         info from NEWS.
1842
1843         * python/convertrules.py: add annotatefoo -> annotate-foo
1844         rules.
1845
1846         * Documentation/user/global.itely: start editing.
1847
1848         * Documentation/user/page.itely: major editing, new spacing
1849         docs.
1850
1851 2006-06-10  Han-Wen Nienhuys  <hanwen@lilypond.org>
1852
1853         * scm/define-markup-commands.scm (wordwrap-markups): use
1854         output-def 'line-width if undefined.
1855
1856         * HACKING: trim outdated info.
1857
1858 2006-06-09  Mats Bengtsson  <mabe@s3.kth.se>
1859
1860         * scm/define-grobs.scm (all-grob-descriptions): Add
1861         line-spanner-interface to all grobs that already have
1862         text-spanner-interface or dynamic-text-spanner-interface
1863
1864         * scm/page.scm: Rename annotate{headers,systems,page}->
1865         annotate-*
1866
1867         * input/regression/page-spacing.ly,
1868         input/regression/page-layout-manual-position.ly: idem
1869
1870 2006-06-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
1871
1872         * lily/line-spanner.cc: cleanup property list.
1873
1874         * scripts/lilypond-book.py (find_toplevel_snippets): don't use
1875         generator expressions (2.3 compat). 
1876
1877 2006-06-09  Mats Bengtsson  <mabe@s3.kth.se>
1878
1879         * lily/vertical-align-engraver.cc: Make sure that the
1880         align{Above,Below}Context properties are included in the automatic
1881         documentation.
1882
1883 2006-06-08  Joe Neeman  <joeneeman@gmail.com>
1884
1885         * scm/paper-system.scm (paper-system-annotate): also annotate the
1886         estimated pure-Y-extent
1887
1888         * scm/define-grobs.scm: add pure-Y-extent and pure-Y-offset functions
1889
1890         * lily/system.cc (break_into_pieces): set the estimated height
1891         of each child system
1892
1893         * lily/stem.cc (pure_height): new pure-Y-extent callback
1894
1895         * lily/staff-symbol-referencer.cc (callback): don't destroy
1896         the staff-position property
1897
1898         * lily/hara-kiri-group-spanner.cc (request_suicide): split
1899         consider_suicide into two functions
1900
1901         * lily/constrained-breaking.cc (resize): use the new pure
1902         callbacks to estimate the height of a system
1903
1904         * lily/axis-group-interface.cc (pure_group_height): new
1905         side-effect-free VerticalAxisGroup height-callback
1906
1907         * lily/align-interface.cc (get_extents_aligned_translates):
1908         split align_elements_to_extents into two functions
1909         (get_pure_child_y_translation): new function
1910
1911         * lily/grob.cc: new functions for pure-Y-extent and pure-Y-offset
1912
1913         * lily/item.cc: new functions pure_is_visible and spanned_rank_iv
1914
1915         * lily/paper-score.cc: cache break_indices and columns
1916
1917         * lily/side-position-interface.cc: new pure-Y-extent callbacks
1918         
1919 2006-06-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
1920
1921         * lily/font-config.cc (init_fontconfig): do the init if
1922         cache_file, but don't look at cache_file.
1923
1924         * input/regression/quote-tie.ly: new file.
1925
1926         * lily/tie-engraver.cc (struct Head_event_tuple): add end_moment_
1927         to Head_event_tuple, so we deal gracefully with ties on
1928         cue-endings.
1929
1930         * lily/pango-font.cc (pango_item_string_stencil): type correctness
1931         for FcChar8*
1932
1933 2006-06-08  Graham Percival  <gpermus@gmail.com>
1934
1935         * input/test/ smart-transpose.ly, reverse-music.ly:
1936         \applyMusic to music functions update, thanks Michael!
1937
1938 2006-06-07  Graham Percival  <gpermus@gmail.com>
1939
1940         * input/test/ add-staccato.ly, add-text-script.ly,
1941         unfold-all-repeats.ly, music-box.ly: \applyMusic to
1942         music functions update, thanks to Michael Meixner.
1943
1944         * Documentation/user/music-glossary.tely: small fix
1945         from Francisco.
1946
1947         * Documentation/user/ various: minor additions from mailist.
1948
1949         * Documentation/user/lilypond.tely, basic-notation.itely:
1950         small test of @funindex.  (works here)
1951
1952         * input/test/font-table.ly: reduce size to partially
1953         de-ugly version in manual.
1954
1955         * Documentation/user/page.itely: new file (split former
1956         "global issues" into "page settings" and "non-musical
1957         output".
1958
1959         * Documentation/user/ various: fix @ref{}s to match
1960         new chapter names (above).
1961
1962 2006-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
1963
1964         * SConstruct (LILYPONDPREFIX): Bootstrap fix.
1965
1966 2006-06-06  Graham Percival  <gpermus@gmail.com>
1967
1968         * Documentation/user/advanced-notation.itely: add example
1969         for segno/coda on barline.
1970
1971         * tex/texinfo.tex: merge from upstream.
1972
1973 2006-06-06  Jan Nieuwenhuizen  <janneke@gnu.org>
1974
1975         * scripts/lilypond-book.py (process_snippets): Argument fix.
1976
1977         * SConstruct:
1978         * buildscripts/builder.py:
1979         * lily/SConscript: 
1980         * mf/SConscript: 
1981         * Documentation/user/SConscript:  More SCons fixes.
1982
1983 2006-06-03  Jan Nieuwenhuizen  <janneke@gnu.org>
1984
1985         * lily/font-config.cc (init_fontconfig): Only initialize if
1986         global cache_file is found.
1987
1988 2006-06-06  Erik Sandberg  <mandolaerik@gmail.com>
1989
1990         * ly/music-functions-init.ly: Updated \overrideProperty to use the
1991         new \applyOutput.
1992
1993 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
1994
1995         * VERSION (PACKAGE_NAME): release 2.9.8
1996
1997         * lily/ledger-line-engraver.cc (stop_translation_timestep): new
1998         function. Delay ledger modifying ledgered grobs to
1999         stop_translation_timestep(), to ensure that we're ledgering
2000         according to the new spanner.
2001         (acknowledge_staff_symbol): don't check for non-NULL
2002         staff_sym->get_bound()
2003
2004         * lily/staff-symbol-engraver.cc (start_spanner): set left bound on
2005         creation.
2006
2007         * Documentation/pictures/GNUmakefile (XPM_FILES): src-wildcard for
2008         pictures too.
2009
2010         * GNUmakefile.in (dist-toplevel-txt-files): dist aclocal.m4
2011         directly from srcdir/stepmake/aclocal.m4
2012         
2013         * Documentation/misc/GNUmakefile (TEXTS): use src-wildcard for
2014         disting MISC files.
2015
2016         * lily/simple-spacer.cc (get_column_desc): desc -> description.
2017
2018 2006-06-06  Joe Neeman  <joeneeman@gmail.com>
2019
2020         * lily/simple-spacer.cc (get_line_configuration): add
2021         keep-inside-line rods
2022         (struct Column_desc): add constructor
2023         (struct Rod_desc): add constructor
2024         (get_line_forces): check for forced page breaks here too
2025
2026         * lily/instrument-name-engraver.cc (acknowledge_axis_group): prevent
2027         support/elements cycles between InstrumentNames and AxisGroups
2028
2029 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
2030
2031         * config.make.in (METAFONT): remove MAKEINFO_VERSION
2032
2033         * stepmake/stepmake/topdocs-targets.make (make-txt-files): define
2034         make-txt-files target.
2035
2036         * stepmake/stepmake/toplevel-targets.make (do-top-doc): use
2037         make-txt-files target.
2038
2039         * configure.in (LINK_GXX_STATICALLY): $srcdir for readlink.py
2040
2041         * stepmake/stepmake/generic-vars.make (distdir): create dist in
2042         top-build-dir.
2043
2044 2006-06-06  Jürgen Reuter  <reuter@ipd.uka.de>
2045
2046         * Documentation/user/instrument-notation.itely,
2047         input/regression/breathing-sign-ancient.ly,
2048         input/test/divisiones.ly: Removed redundant property settings for
2049         vaticana contexts.
2050
2051         * ly/gregorian-init.ly: Rewrote \versus and \responsum in order to
2052         fix lyrics alignment problems.  They are implemented now as scheme
2053         functions that add the appropriate unicode char to the first lyric
2054         event rather than adding a separate lyric event.  Minor edit of
2055         comments.
2056
2057 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
2058
2059         * GNUmakefile.in (dist-toplevel-txt-files): new target. Don't
2060         pollute src dir with built .txt files, but install directly from
2061         Documentation/topdocs/out/
2062
2063         * buildscripts/output-distance.py
2064         (ComparisonData.create_html_result_page): put version/directories
2065         in table header.
2066
2067         * Documentation/topdocs/NEWS.tely (Top): document spacing section
2068         feature.
2069
2070         * configure.in (LINK_GXX_STATICALLY): use readlink.py to resolve links.
2071         Patch by Karl Hammar
2072         
2073         * buildscripts/readlink.py: add  file.
2074         Patch by Karl Hammar
2075
2076 2006-06-06  Joe Neeman  <joeneeman@gmail.com>
2077
2078         * lily/tuplet-number.cc (print): prevent stencil from being
2079         garbage collected.
2080
2081 2006-06-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
2082
2083         * scm/stencil.scm (write-system-signature): explicitly 
2084         -well, superfluously- close output port.
2085
2086         * buildscripts/output-distance.py (main): oops. Add extra argument.
2087
2088 2006-06-05  Graham Percival  <gpermus@gmail.com>
2089
2090         * Documentation/user/music-glossary.tely: clarified example
2091         from Francisco Vila, thanks!
2092
2093 2006-06-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
2094
2095         * input/regression/spacing-section.ly: new file.
2096
2097         * lily/input.cc (programming_error): new function.
2098
2099         * lily/spacing-engraver.cc (try_music): new function. Accept
2100         spacing-section-event
2101
2102         * lily/spacing-spanner.cc (set_springs): take slices of all
2103         columns for spacing.
2104
2105         * lily/include/paper-column.hh (class Paper_column): add
2106         Paper_column::compare.
2107
2108         * ly/spanners-init.ly (newSpacingSection): add newSpacingSection.
2109
2110         * scm/define-music-types.scm (music-descriptions): add
2111         SpacingSectionEvent
2112
2113         * lily/music-iterator.cc (report_event): use programming_error for
2114         sending non-event error.
2115
2116         * lily/input.cc (programming_error): new function
2117
2118         * buildscripts/output-distance.py (main): use compare-XXX for
2119         compare files.
2120         (main): --threshold option, default at 0.30
2121
2122         * output-distance.py (main): add --threshold option.
2123
2124 2006-06-04  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2125
2126         * scm/paper-system.scm (paper-system-annotate): fix problem when
2127         annotating an empty system
2128
2129 2006-06-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
2130
2131         * GNUmakefile.in: reinstate old web tar/copying.
2132
2133 2006-06-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
2134
2135         * lily/lyric-combine-music-iterator.cc (find_voice): return 0 if
2136         nothing changes. (Erik S) 
2137
2138         * lily/percent-repeat-iterator.cc (get_music_list): fix repeat
2139         count. (Erik S)
2140
2141 2006-05-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2142
2143         * scm/define-markup-commands.scm (whiteout): do not force
2144         foreground color of argument markup to black.
2145
2146         * scm/stencil.scm (annotate-y-interval): put arrow dimension at
2147         the left of the arrow, instead of below the arrow name, so that,
2148         when two little arrows are vertically stacked, their dimensions
2149         and name should not overlap. Add a color key parameter.
2150
2151         * scm/paper-system.scm (paper-system-annotate): Annotate
2152         next-space+next-padding instead of next-space. Annotate space
2153         between next-padding and next-space+padding, respectively, and
2154         following system extent and refpoint-Y-extent. Use colors.
2155
2156         * scm/page.scm (annotate-page): translate annotations slightly to
2157         the right.
2158
2159 2006-06-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
2160
2161         * lily/figured-bass-position-engraver.cc (acknowledge_end_slur):
2162         fix for x-staff slurs. Thanks Joe!
2163
2164         * buildscripts/output-distance.py
2165         (SystemLink.output_expression_change_count): keep track of changed
2166         details, and dump in details html page.
2167  
2168         * input/regression/figured-bass-staff.ly: add note about setting
2169         properties in Staff context.
2170
2171         * lily/figured-bass-position-engraver.cc (acknowledge_slur):
2172         add slurs and ties to support too.
2173
2174         * buildscripts/output-distance.py (main): set dest_dir
2175         argument. Add --max-count option.
2176
2177 2006-06-02  Jürgen Reuter  <reuter@ipd.uka.de>
2178
2179         * ly/gregorian-init.ly: Converted to utf-8.  Added memorable
2180         shortcuts for special unicode chars that are useful in chant
2181         notation.  Revised exisiting and added new comments.
2182
2183 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
2184
2185         * make/mutopia-rules.make: remove duplicate recipe.
2186
2187 2006-06-02  Werner Lemberg  <wl@gnu.org>
2188
2189         * tex/texinfo.cnf: Fix typo (\euro -> \minus).
2190         Add support for U+0132 (IJ) and U+0133 (ij).
2191
2192 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
2193
2194         * buildscripts/output-distance.py (FileLink): new class. collect
2195         info systems from one .ly file. 
2196         (FileLink.link_files_for_html): further tweaks.
2197
2198 2006-06-02  Graham Percival  <gpermus@gmail.com>
2199
2200         * tex/texinfo.tex: partial fix for @funindex.
2201
2202         * Documentation/user/macros.tely: uncomment @funindex (doesn't
2203         break anything).
2204
2205 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
2206
2207         * make/mutopia-vars.make (ly_examples): replace .ly.txt with .ly
2208
2209         * tex/texinfo.tex (sectionheading, q.v.): call \quoteexpand for
2210         @example too. Backportme.
2211
2212 2006-06-02  Graham Percival  <gpermus@gmail.com>
2213
2214         * tex/texinfo.cnf: added UTF-8 support for texinfo; patch
2215         from Werner Lemberg.
2216
2217 2006-06-02  Paco (Francisco Vila)  <fravd@ya.com>
2218
2219         * Documentation/user/music-glossary.tely: additional spanish
2220         updates and a lyrics fix in an example.
2221
2222 2006-06-02  Jürgen Reuter  <reuter@ipd.uka.de>
2223
2224         * scm/define-grob-properties.scm: Previous patch contained
2225         spurious line from another patch not yet committed.  Fixed.
2226
2227         * scm/define-grob-properties.scm: Add missing doc strings for
2228         ancient notation.
2229
2230 2006-06-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
2231
2232         * buildscripts/output-distance.py
2233         (ComparisonData.write_text_result_page): separate the scores, sort
2234         by geo_score.
2235
2236         * scm/framework-eps.scm (output-classic-framework): start at 1 for
2237         system signatures.
2238
2239         * buildscripts/output-distance.py (me_path): use argv[0] for
2240         sys.path extension
2241         (ComparisonData.img_cell): use colored borders.
2242
2243         * scm/stencil.scm (write-system-signature): escape newlines too.
2244         (write-system-signature): use (1,-1) interval for empty interval
2245
2246 2006-01-01  Graham Percival  <gpermus@gmail.com>
2247
2248         * Documentation/user/music-glossary.tely: Spanish updates
2249         from Francisco Vila.
2250
2251         * Documentation/user/lilypond-book.itely: addition from
2252         Vaclav Smilauer.
2253
2254         * Documentation/user/ various: edits, small additions
2255         from mailist, etc.
2256
2257 2006-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
2258
2259         * GNUmakefile.in (tree-lib-prefix-current):
2260         (tree-share-prefix-current): Use version number in tree, add
2261         `current' symlinks.
2262
2263 2006-06-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
2264
2265         * GNUmakefile.in: write VERSION, again.
2266
2267         * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
2268         $(outdir)/%.ly $(outdir)/%.ps): dump sigs for normal files too.
2269
2270         * stepmake/aclocal.m4: robuster version detection.
2271
2272         * buildscripts/output-distance.py
2273         (ComparisonData.create_html_result_page): copy only if file
2274         exists, fixup src paths.
2275
2276         * stepmake/bin/add-html-footer.py (built): junk gulp_file()
2277
2278 2006-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
2279
2280         * stepmake/aclocal.m4: Robustification for (gcc) version detection.
2281         Another datarootdir reto.
2282
2283         * cygwin/postinstall-lilypond.sh: Do not fail if info docs aren't
2284         available.  This should be moved to postinstall-lilypond-doc.
2285
2286 2006-05-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
2287
2288         * GNUmakefile.in: simplify local-WWW-post. 
2289         remove -type l from find.
2290
2291         * buildscripts/output-distance.py (ComparisonData.compare_trees):
2292         fixes. Don't follow symlinks.
2293         (ComparisonData.create_html_result_page): remove previous results.
2294         insert ../python in path.
2295
2296         * scripts/lilypond-book.py (PREAMBLE_LY): spacing fixes.
2297
2298 2006-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
2299
2300         * config.make.in (datadir): Add datarootdir to silence autoconf.
2301
2302         * stepmake/aclocal.m4: Update for autoconf-2.59d.
2303
2304 2006-05-31  Erlend Aasland  <erlenda@gmail.com>
2305
2306         * dynamic-engraver.cc: fix bug (dynamics collide with accidentals)
2307
2308         * scm/output-ps.scm (repeat-slash): fix a bug that made repeat
2309         slash beams too wide.
2310
2311 2006-05-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
2312
2313         * VERSION: release 2.9.7
2314         
2315 2006-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
2316
2317         * lily/relocate.cc (read_relocation_dir): Do not blindly
2318         dereference DIR.
2319
2320 2006-05-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
2321
2322         * lily/parser.yy: replace THIS by PARSER
2323
2324         * Documentation/index.html.in: add link to test-results.html page.
2325
2326         * Documentation/topdocs/NEWS.tely (Top): update NEWS entry.
2327
2328         * scm/translation-functions.scm (format-bass-figure): translate
2329         digits over 10 to the left
2330
2331         * scm/define-markup-commands.scm (translate-scaled): new markup.
2332
2333         * mf/feta-nummer-code.mf (code): overshoot the topright tip of the
2334         7 glyph. 
2335
2336         * ly/engraver-init.ly: add Figured_bass_engraver
2337
2338         * lily/engraver-group.cc (acknowledge_grobs): use start/stop drul.
2339
2340         * lily/figured-bass-engraver.cc (clear_spanners): use everywhere.
2341
2342         * lily/score-engraver.cc (announce_grob): only note START announces.
2343
2344         * lily/include/engraver-group.hh (Translator_group):
2345         acknowledge_hash_table_ is now drul.
2346
2347         * lily/engraver.cc (announce_end_grob): new method.
2348
2349         * lily/include/grob-info.hh (class Grob_info): add start_end_ member.
2350
2351         * lily/translator-dispatch-list.cc (create): take start_end argument.
2352
2353         * lily/include/translator.hh (TRANSLATOR_DECLARATIONS): change
2354         acknowledge_static_array_ to drul
2355
2356         * lily/include/translator.icc (ADD_END_ACKNOWLEDGER): new macro.
2357
2358         * scm/define-grob-interfaces.scm
2359         (bass-figure-alignment-interface): add bass-figure-alignment-interface
2360
2361         * scm/define-grobs.scm (all-grob-descriptions): add
2362         BassFigureAlignmentPositioning
2363
2364         * ly/Welcome-to-LilyPond-MacOS.ly: include in LilyPond, so version
2365         number stays up to date. Backportme.
2366
2367 2006-05-30  Mats Bengtsson  <mabe@s3.kth.se>
2368
2369         * Documentation/user/basic-notation.itely (Bar lines): Document
2370         the "||:" bar type. 
2371
2372 2006-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
2373
2374         * buildscripts/builder.py: Remove --ly option/target from mf-to-table.
2375
2376         * scripts/lilypond-book.py: Bugfix: do not blindly attempt
2377         .../current hack if LILYPONDPREFIX is fine.  Fixes `scons doc'
2378         build.
2379
2380         * Resurrect `scons lily' build.
2381
2382         * SConstruct (symlink_tree): Bugfix: link
2383         music-drawing-routines.ps to file iso directory.
2384
2385         * lily/SConscript: Remove kpath-guile from LIBS.
2386
2387         * SConstruct (libdir_package_version): Typo.
2388         (configure): Comment-out fontforge for lack of fontforge.pc .
2389         Also add libdir* to environment.
2390
2391 2006-05-30  Graham Percival  <gpermus@gmail.com>
2392
2393         * Documentation/user/ various: minor additions from mailist and
2394         editing.
2395
2396 2006-05-30  Paco <fravd@ya.com>
2397
2398         * Documentation/user/music-glossary.tely: numerous corrections and
2399         some new translations.
2400
2401 2006-05-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
2402
2403         * BackportmeStart.
2404         
2405         * buildscripts/output-distance.py
2406         (ComparisonData.create_html_result_page): new routine: summarise
2407         results in HTML page with images. 
2408         (ComparisonData.create_text_result_page): create summary text files too.
2409
2410         * GNUmakefile.in (web-ext): package .signature files too. They
2411         compress well. 
2412
2413         * scm/stencil.scm (write-system-signature): typo.
2414
2415         * GNUmakefile.in: create web-root/VERSION to help upload scripts.
2416
2417         * scm/stencil.scm (write-system-signature): better escaping.
2418         only write signature for music systems, not for markup systems.
2419
2420         * scm/framework-ps.scm (output-framework): dump-signatures support
2421         for plain output.
2422
2423         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): add -ddump-signatures.
2424
2425         * scm/framework-ps.scm (write-preamble): redefine mark_URI to nop
2426         for -dno-point-and-click
2427
2428         * lily/grob.cc (get_print_stencil): don't read
2429         point_and_click_global to determine whether to set grob-cause.
2430
2431 2006-05-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
2432
2433         * buildscripts/output-distance.py (main): new function.
2434         (ComparisonData): new class.
2435
2436         * lily/ledger-line-engraver.cc (acknowledge_staff_symbol): be more
2437         careful with generating new LedgerLineSpanners.
2438
2439         * lily/ledger-line-spanner.cc (set_spacing_rods): suicide if no staff.
2440
2441         * ly/engraver-init.ly: remove Ledger_line_engraver from Voice
2442         context. This fixes double ledger lines in output. 
2443
2444         * lily/system.cc (get_paper_system): remove 3 layer limit.
2445
2446         * buildscripts/output-distance.py (SystemLink.distance): new
2447         file. Compare signatures.
2448
2449         * python/safeeval.py (SafeEval.visitUnarySub): new file.
2450
2451         * lily/grob-array.cc (remove_duplicates): rename from
2452         uniq(). Sort before calling uniq() so it actually works.
2453
2454 2006-05-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
2455
2456         * scripts/lilypond-book.py (Lilypond_file_snippet.ly): strip
2457         \version from lilypond file snippet.
2458         (Lilypond_file_snippet.ly): oops. typo.
2459         (find_toplevel_snippets): urgh. again.
2460
2461         * lily/system.cc (get_paper_systems): uniq all_elements_ , to
2462         prevent duplicated broken items in output.
2463
2464         * scm/framework-eps.scm (output-classic-framework): only dump if
2465         dump-signatures is set.
2466
2467         * scm/lily.scm (define-scheme-options): add dump-signatures option.
2468
2469         * scm/stencil.scm (write-system-signature): new routine: write
2470         python parseable signature of a separate paper system.
2471         BackportmeEnd.
2472         
2473 2006-05-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
2474
2475         * lily/stanza-number-engraver.cc (process_music): use is_markup()
2476         iso is_string().
2477         include header.
2478
2479 2006-05-25  Erik Sandberg  <mandolaerik@gmail.com>
2480
2481         * translator-group.cc: send music events to engravers in
2482         non-bottom contexts.
2483
2484         * tuplet-engraver.cc: process tuplet brackets in correct order.
2485
2486 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
2487
2488         * stepmake/aclocal.m4: STEPMAKE_PYTHON(): clear cached value since
2489         arg 2 might point us to a new binary (patch by Karl Hammar)
2490         
2491 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
2492
2493         * VERSION (PACKAGE_NAME): release 2.9.6
2494
2495         * Documentation/topdocs/NEWS.tely (Top): trim explanation. 
2496
2497         * Documentation/user/*.itely: 2nd
2498         attempt: replace funindex -> findex globally.
2499
2500 2006-05-24  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2501
2502         * input/no-notation/display-lily-tests.ly: fix \applyOutput
2503         test. Add \break, \pageBreak, \pageTurn, etc, tests.
2504
2505         * scm/define-music-display-methods.scm: display methods for
2506         breaks. Fix \applyOutput.
2507
2508 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
2509
2510         * Documentation/user/macros.itexi: comment out funindex expansion. 
2511
2512         * Documentation/user/music-glossary.tely: junk \oldaddlyrics
2513         everywhere.
2514
2515         * GNUmakefile.in: fix wildcarding for scrips/out/ links. Thanks
2516         Karl Hammar. Backportme.
2517  
2518         * Documentation/user/advanced-notation.itely (Balloon help): idem.
2519
2520         * Documentation/user/changing-defaults.itely (Creating contexts): idem.
2521
2522         * Documentation/user/programming-interface.itely (Running a
2523         function on all layout objects): idem.
2524
2525         * Documentation/user/introduction.itely (Automated engraving):
2526         update \applyOutput syntax
2527
2528         * lily/lyric-combine-music-iterator.cc (start_new_syllable):
2529         remove debugging hook.
2530
2531         * configure.in (LINK_GXX_STATICALLY): use "" to allow $
2532         expansion. 
2533
2534         * Documentation/user/GNUmakefile (TEXI2DVI_FLAGS): add -E.
2535
2536         * stepmake/stepmake/texinfo-rules.make ($(outdir)/%.dvi): add
2537         TEXI2DVI_FLAGS to texi2dvi invocation. 
2538
2539 2006-05-24  Erik Sandberg  <mandolaerik@gmail.com>
2540
2541         * lily/chord-tremolo-*.cc: Reworked how \repeat "tremolo"
2542         works. More work is done by iterator now, and engraver has been
2543         very much simplified.
2544
2545         * lily/translator-group.cc: try_music is now invoked through a
2546         listener
2547
2548         * lily/*-iterator.cc: Massive cleanups. Junked
2549         try_music_in_children globally. Renamed try_music to report_event,
2550         and made that method descend to a bottom context automatically.
2551
2552         * lily/event-iterator.cc: New file.
2553
2554         * lily/output-property-iterator.cc,
2555         lily/old-lyric-combine-music-iterator.cc: Removed.
2556
2557         * python/convert-rules.py: Modified the syntax for \applyOutput.
2558
2559 2006-05-23  Graham Percival  <gpermus@gmail.com>
2560
2561         * stepmake/stepmake/texinfo-rules.make: added -E, allows pdf doc
2562         creation.
2563
2564         * Documentation/user/ various: stuff that might have helped
2565         to fix the pdf creation, plus some minor doc additions.
2566
2567         * Documentation/user/changing-defaults.itely: remove @b from
2568         @b{ @internasref{foo}}; this breaks texi2dvi -E.
2569
2570 2006-05-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
2571
2572         * lily/beaming-pattern.cc (beamify): deal with negative start
2573         moments for beaming patterns.
2574
2575 2006-05-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
2576
2577         * lily/beaming-info.cc (beamify): new function: read beatLength
2578         and beatGrouping from context. 
2579
2580         * input/regression/beam-beat-grouping.ly (Module): new file.
2581
2582         * input/regression/beam-unconnected-beamlets.ly (Module): new file.
2583
2584         * lily/beam.cc (get_beam_segments): generate events for
2585         max_connect_ case too.
2586         (get_beam_segments): read Stem::max-beam-connect.
2587
2588         * input/regression/beam-single-stem.ly: new file.
2589
2590         * lily/stem.cc (set_beaming): use #f as signaling value for
2591         beamcount 0.
2592
2593         * lily/beam-engraver.cc (typeset_beam): set right bound if unset.
2594
2595         * lily/beam.cc (set_beaming): read clip-edges property.
2596         (calc_direction): don't suicide for single stem.
2597
2598         * lily/beaming-info.cc (best_splitpoint_index): take bool*
2599         argument, remove 1<<15 hack. Remove clip_edges() 
2600
2601         * lily/hairpin.cc (print): only do padding for nonmusical bounds
2602
2603 2006-05-21  Graham Percival  <gpermus@gmail.com>
2604
2605         * Documentation/user/basic-notation.itely: reorg.
2606
2607         * Documentation/user/ various: minor fixes.
2608
2609 2006-05-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
2610
2611         * lily/stencil-expression.cc (register_stencil_head): opps, append
2612         to cdr of static SCM object.
2613
2614 2006-05-19  Graham Percival  <gpermus@gmail.com>
2615
2616         * Documentation/user/README.txt, lilypond.tely, macros.itexi:
2617         update framework for command index.  DOC WRITERS: use @funindex
2618         instead of @cindex @code{}.
2619
2620         * Documentation/user/ various: replace @cindex @code{} => @funindex
2621
2622 2006-05-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
2623
2624         * lily/beam.cc (set_stem_lengths): trigger 'beaming callback, in
2625         case positions is set manually. 
2626
2627 2006-05-18  Erik Sandberg  <mandolaerik@gmail.com>
2628         
2629         * scm/ly-syntax-constructors.scm: New file. Converted a few syntax
2630         rules to Scheme.
2631
2632 2006-05-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
2633
2634         * Documentation/user/changing-defaults.itely (Contexts explained):
2635         use absolute dimension for @image.
2636
2637         * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): generate PNG
2638         out image for illustration too.
2639         ($(outdir)/%.png): add more png <-> eps rules. 
2640
2641 2006-05-17  Graham Percival  <gpermus@gmail.com>
2642
2643         * Documentation/user/ various: remove trailing whitespace, cosmetic
2644         change to reduce changes produced by diff.
2645
2646 2006-05-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
2647
2648         * lily/main.cc (do_chroot_jail): correctness tweak.
2649
2650         * python/lilylib.py (system): import subprocess in system () only.
2651
2652         * scripts/*.py: use TARGET_PYTHON iso PYTHON. Backportme.
2653
2654         * make/substitute.make (ATVARIABLES): add TARGET_PYTHON as subst
2655         variable. Backportme.
2656
2657 2006-05-17  Erik Sandberg  <mandolaerik@gmail.com>
2658         
2659         * lily/parser.yy: Change all syntax rules of type Music to SCM type
2660
2661 2006-05-17  Werner Lemberg  <wl@gnu.org>
2662
2663         * lily/lexer.ll (init_signature_has_table): Add
2664         `scm-scm-music-music'.
2665
2666         * lily/parser.yy (MUSIC_FUNCTION_SCM_SCM_MUSIC_MUSIC): New token.
2667         (Generic_prefix_music_scm): Add rule for it.
2668
2669         * lily/quote-iterator.cc (Quote_iterator::process): Handle
2670         `quoted-transposition' property.
2671
2672         * ly/music-functions-init.ly (transposedCueDuring): New function.
2673
2674         * scm/define-music-properties.scm (all-music-properties): Updated.
2675
2676         * Documenation/topdocs/NEWS.itely: Document it.
2677
2678 2006-05-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
2679
2680         * python/lilylib.py (system): move import subprocess to system()
2681         definition. 
2682
2683         * python/convertrules.py (conv): fix convert-ly rules for 2.9.4
2684
2685         * VERSION (PATCH_LEVEL): release 2.9.5
2686         
2687         * Documentation/topdocs/INSTALL.texi (Top): update versions and
2688         build instructions. 
2689
2690         * ly/engraver-init.ly: switch on hairpinToBarline by default.
2691
2692 2006-05-16  Graham Percival  <gpermus@gmail.com>
2693
2694         * Documentation/user/basic-notation.itely: editing from Dave, thanks!
2695
2696         * Documentation/user/ various: minor fixes.
2697
2698 2006-05-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
2699
2700         * Documentation/topdocs/NEWS.tely (Top): add hairpinToBarline feature.
2701
2702 2006-05-16  Mats Bengtsson  <mabe@s3.kth.se>
2703
2704         * Documentation/user/advanced-notation.itely (Instrument names):
2705         Modified obsolete instruction on how to move instrument names away
2706         from the staves. Hmm, at second thought the bug probably has been
2707         solved, so the full bug description should probably be removed.
2708
2709 2006-05-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
2710
2711         * lily/dynamic-engraver.cc (typeset_all): hang ending on
2712         currentCommandColumn. 
2713
2714         * lily/hairpin.cc (print): also add padding for non-neighbor
2715         hairpin bounds.
2716
2717         * scm/define-context-properties.scm
2718         (all-user-translation-properties): add hairpinToBarline
2719
2720         * input/regression/hairpin-to-barline.ly: new file.
2721
2722         * lily/context.cc (internal_send_stream_event): thinko fix.
2723
2724         * lily/tie.cc (set_default_control_points): robustness fix.
2725
2726         * python/musicxml.py (Part.interpret): don't complain about
2727         incomplete measures.
2728
2729         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): only add
2730         new music if last_event_chord() returned None.
2731
2732         * python/musicxml.py (Part.interpret): skip back over chord notes.
2733
2734 2006-05-16  Erik Sandberg  <mandolaerik@gmail.com>
2735         
2736         * lily/percent-repeat-engraver.cc, lily/parser.yy,
2737         lily/define-music-types.cc, lily/percent-repeat-iterator.cc,
2738         lily/slash-repeat-engraver.cc,
2739         lily/include/percent-repeat-iterator.hh: Rework percent repeats:
2740         iterator sends PercentEvents
2741
2742         * lily/time-scaled-music-iterator.cc, lily/tuplet-engraver.cc:
2743         rework tuplets: send start/stop events to engraver
2744
2745         * lily/context.cc, lily/music.cc, lily/context-scheme.cc: Add
2746         dispatchers event-source and events-below to Context
2747         
2748 2006-05-15  Graham Percival  <gpermus@gmail.com>
2749
2750         * Documentation/user/README.txt: update info for doc writers.
2751
2752         * Documentation/user/programming-interface.itely: integrate
2753         Nicolas' fixes for chapter rewrite.
2754
2755         * Documentation/user/ various: minor fixes.
2756
2757 2006-05-15  Han-Wen Nienhuys  <hanwen@lilypond.org>
2758
2759         * lily/clef-engraver.cc: cleanup.
2760
2761         * Documentation/user/GNUmakefile: dist context-example.eps too.
2762
2763         * lily/key-engraver.cc (create_key): use
2764         explicitKeySignatureVisibility for cancellation too. 
2765
2766         * lily/font-config.cc (init_fontconfig): don't close file if
2767         f==NULL. 
2768
2769 2006-05-15  Erlend Aasland  <erlenda@gmail.com>
2770
2771         * Documentation/topdocs/NEWS.tely: niente and rotation news
2772
2773 2006-05-14  Erlend Aasland  <erlenda@gmail.com>
2774
2775         * lily/include/stencil.hh
2776         * lily/stencil.cc (rotate): new function. Makes it possible
2777         to rotate a stencil around a given offset.
2778
2779         * lily/grob.cc (get_print_stencil): add rotation support
2780
2781         * lily/stencil-interpret.cc (interpret_stencil_expression):
2782         add rotation support
2783
2784         * lily/stencil-scheme.cc (ly:stencil-rotate): new function
2785
2786         * scm/define-grob-properties.scm: add 'rotation property
2787
2788         * scm/define-markup-commands.scm: add rotate markup command
2789         
2790         * scm/output-ps.scm: add rotation support in PostScript backend
2791
2792         * scm/output-svg.scm: add rotation support in SVG backend
2793
2794 2006-05-13  Graham Percival  <gpermus@gmail.com>
2795
2796         * Documentation/user/music-glossary.itely: French correction.
2797
2798         * Documentation/user/programming-interface.itely: major
2799         new docs, some reorg, some info from Nicolas.
2800
2801         * Documentation/user/ various: small fixes.
2802
2803 2006-05-12  Mats Bengtsson  <mabe@s3.kth.se>
2804
2805         * Documentation/user/programming-interface.itely (Markup
2806         programmer interface): Remove duplicate text.
2807
2808 2006-05-12  Graham Percival  <gpermus@gmail.com>
2809
2810         * Documentation/user/context-example.eps: new file.
2811
2812         * Documentation/user/changing-defaults.itely: set up file to
2813         use eps image.
2814
2815         * Documentation/user/programming-interface.itely: changes
2816         from mailist.
2817
2818 2006-05-12  Han-Wen Nienhuys  <hanwen@lilypond.org>
2819
2820         * configure.in (LINK_GXX_STATICALLY): python 2.4 req.
2821
2822 2006-05-11  Graham Percival  <gpermus@gmail.com>
2823
2824         * Documentation/user/programming-interface.itely: first round of
2825         editing and merging emails from Nicolas.
2826
2827         * Documentation/user/scheme-tutorial: minor edit.
2828
2829 2006-05-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
2830
2831         * python/musicxml.py (Xml_node.__init__): _attribute_dict stores
2832         XML attributes.
2833         (Xml_node.message): use it.
2834
2835         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): 
2836         oops. Add duration argument.
2837
2838 2006-05-10  Joe Neeman  <joeneeman@gmail.com>
2839
2840         * lily/paper-column-engraver.cc (make_columns):
2841         * scm/define-grobs.scm: Revert my previous change and set the default
2842         in define-grobs.scm instead.
2843
2844 2006-05-09  Graham Percival  <gpermus@gmail.com>
2845         
2846         * Documentation/user/changing-defaults.itely: general editing,
2847         info about \set and \override.
2848
2849         * Documentation/user/tweaking.itely, advanced-notation.itely:
2850         fixes from Dave Luttinen, thanks!
2851
2852 2006-05-09  Joe Neeman  <joeneeman@gmail.com>
2853
2854         * lily/paper-column-engraver.cc (make_columns): By default, a column
2855         needs to be breakable.
2856
2857 2006-05-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
2858
2859         * scripts/musicxml2ly.py (musicxml_clef_to_lily): use new
2860         Attributes methods
2861         (musicxml_time_to_lily): idem
2862         (musicxml_key_to_lily): idem
2863         (instrument_drumtype_dict): dict for supported drumtypes.
2864         (LilyPondVoiceBuilder.__init__): new class: sanely keep track of
2865         moments and pending mm rests
2866         (musicxml_voice_to_lily_voice): rewrite to use LilyPondVoiceBuilder
2867         (musicxml_voice_to_lily_voice): strip KeyChangeEvents for drums.
2868         (musicxml_voice_to_lily_voice): add mode change.
2869         (option_parser): lxml.etree (http://codespeak.net/lxml/) for more
2870         speed and less memory usage (factor 5 to 10).
2871         (convert): write -defs.ly  and driver file separately so people
2872         can script their own part extraction.
2873
2874         * python/musicxml.py (minidom_demarshal_node): new function:
2875         separate minidom handling.
2876         (lxml_demarshal_node): new function: support lxml.etree too.
2877         (Xml_node.message): new function: verbose error message, with XML
2878         path to offending node.
2879         (Attributes.get_measure_length): sane interface to MusicXML attributes.
2880         (Part_list.generate_id_instrument_dict): new method: collect
2881         instrument names, to be able to set drum_type.
2882         (Part.interpret): handle underfull measures
2883         (Part.interpret): assign instrument names.
2884
2885         * python/musicexp.py (Output_printer.close): new method
2886         (MusicWrapper.print_ly): new class: support other modes,
2887         eg. \drummode
2888         (BarCheck.print_ly): new class. Support bar checks, with comments
2889         and fancy barchecks. 
2890         (NoteEvent.__init__): also set drum_type for drum notes.
2891         (MultiMeasureRest.lisp_expression): dump mm rests.
2892
2893         * lily/paper-column-engraver.cc (stop_translation_timestep): set
2894         line-break-permission if forbidBreak is not set.
2895
2896 2006-05-09  Joe Neeman  <joeneeman@gmail.com>
2897
2898         * scm/define-context-properties.scm:
2899         * scm/define-grob-properties.scm:
2900         * scm/define-grobs.scm:
2901         * scm/define-music-display-methods.scm:
2902         * scm/define-music-properties.scm:
2903         * scm/define-music-types.scm:
2904         * scm/music-functions.scm:
2905         * ly/declarations-init.ly:
2906         * lily/include/constrained-breaking.hh:
2907         * lily/system.cc:
2908         * lily/spaceable-grob.cc:
2909         * lily/simple-spacer.cc:
2910         * lily/paper-score.cc:
2911         * lily/paper-column.cc:
2912         * lily/paper-column-engraver.cc:
2913         * lily/item.cc:
2914         * lily/gourlay-breaking.cc:
2915         * lily/constrained-breaking.cc:
2916         * python/convertrules.py:
2917         Change "penalty", "page-penalty" and "breakable" to "line-break-penalty",
2918         "page-break-penalty" and "line-break-permission".
2919         Add "page-break-permission", "page-turn-permission" and "page-turn-penalty".
2920         Replace BreakEvent with LineBreakEvent, PageBreakEvent and PageTurnEvent.
2921
2922         * lily/bar-engraver.cc:
2923         * lily/beam-engraver.cc:
2924         * lily/forbid-break-engraver.cc:
2925         * lily/ligature-engraver.cc:
2926         * lily/paper-column-engraver.cc:
2927         * lily/percent-repeat-engraver.cc:
2928         * lily/score-engraver.cc:
2929         * lily/score-engraver.hh:
2930         * lily/paper-column-engraver.hh:
2931         Inter-engraver communication regarding line breaks is done through context
2932         properties (Score.forbidBreak) instead of function calls.
2933
2934 2006-05-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
2935
2936         * VERSION (PACKAGE_NAME): release 2.9.4
2937
2938 2006-05-08  Graham Percival  <gpermus@gmail.com>
2939
2940         * Documentation/user/working.itely: proofreading from Dave
2941         Luttinen, thanks.
2942
2943         * Doucmentation/user/README.txt: updated with manual style info.
2944
2945         * Documentation/user/ various: trim linewidth to 78 chars.
2946
2947 2006-05-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
2948
2949         * scm/define-grob-properties.scm (all-internal-grob-properties):
2950         remove chord-tremolo property.
2951
2952         * lily/beam.cc (get_beam_segments): don't use stem position as
2953         base for broken ends.
2954
2955 2006-05-06  Graham Percival  <gpermus@gmail.com>
2956
2957         * Documentation/user/putting.itely: proofreading from Dave
2958         Luttinen, thanks!
2959
2960         * Documentation/user/ various: more reorg and clarifications.
2961
2962 2006-05-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
2963
2964         * scm/lily.scm (TEX_STRING_HASHLIMIT): move from framework-texstr.scm.
2965
2966         * ly/music-functions-init.ly: new function featherDurations
2967
2968         * lily/beam.cc: read grow-direction for feathered beaming.
2969
2970         * Documentation/topdocs/NEWS.tely (Top): typo.
2971
2972 2006-05-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
2973
2974         * lily/include/beam.hh (struct Beam_stem_segment): add gapped_ for
2975         tremolo beams.
2976
2977 2006-05-05  Erik Sandberg  <mandolaerik@gmail.com>
2978         * lily/context.cc, lily/global-context.cc: Added 'unique' member,
2979         used by music streams.
2980
2981         * lily/dispatcher.cc, lily/dispatcher-scheme.cc,
2982         lily/stream-event.cc, lily/stream-event-scheme.cc,
2983         lily/listener.cc, lily/scheme-listener.cc,
2984         lily/scheme-listener-scheme.cc, lily/include/dispatcher.hh,
2985         lily/include/stream-event.hh, lily/include/listener.hh,
2986         lily/include/scheme-listener.hh, scm/define-event-classes.scm:
2987         Created data structures for music streams.
2988         
2989 2006-05-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
2990
2991         * lily/beam.cc (get_beam_segments): new function. Reorganise the
2992         construction of a beam. 
2993         (print): rewrite. 
2994
2995         * flower/include/std-vector.hh (default_compare): use only one comparison.
2996
2997         * scm/define-markup-commands.scm (note-by-number): remove debug display.
2998         (note-by-number): further attachment fixes.
2999
3000         * scm/lily-library.scm (ordered-cons): new function.
3001         (interval-index): new function
3002
3003         * lily/note-head-scheme.cc (LY_DEFINE): new file.
3004
3005         * lily/note-head.cc (get_stem_attachment): new function.
3006
3007         * scm/define-markup-commands.scm (note-by-number): read 'style
3008         property. 
3009
3010         * input/regression/markup-note.ly: show note-head style option.
3011
3012         * mf/feta-bolletjes.mf (overdone_heads): fix attachment points for
3013         triangle head.
3014
3015 2006-05-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
3016
3017         * mf/GNUmakefile (NCSB_OTFS): remove old ncsb detection further.
3018
3019         * configure.in (LINK_GXX_STATICALLY): fix for ncsb detection.
3020
3021         * lily/include/constrained-breaking.hh: GCC 4 fix.
3022
3023 2006-05-04  Joe Neeman  <joeneeman@gmail.com>
3024
3025         * lily/simple-spacer.cc: Remove class Simple_spacer_wrapper.
3026         Replace it with functions get_line_forces and get_line_configuration.
3027         (class Simple_spacer): Make data private.
3028         Rewrite compression algorithm to be faster and simpler.
3029
3030         * lily/simple-spacer-scheme.cc (ly_solve_rod_and_spring_problem):
3031         * lily/gourlay-breaking.cc (solve):
3032         * lily/constrained_breaking.cc (space_line):
3033         Change it to the new simple-spacer code.
3034
3035         * lily/paper-score.cc (get_paper_systems):
3036         (Paper_score):
3037         (process):
3038         Delay breaking the systems until they are requested.
3039         (find_break_indices):
3040         Use vsize for indices.
3041         (calc_breaking):
3042         Move the "Calculating line breaks" message here.
3043
3044         * lily/system.cc (pre_processing):
3045         Move the "Calculating line breaks" message away from here.
3046         (break_into_pieces):
3047         Allow multiple calls to this function in sequence (with touching-but-
3048         not-overlapping breakpoints).
3049
3050         * lily/constrained-breaking.cc:
3051         Replace most of the get_XXXX functions with get_line_details.
3052         Only calculate the force for each line. Calculate configurations only
3053         for the lines we will actually use.
3054         Replace cols_ with lines_.
3055
3056 2006-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3057
3058         * mf/GNUmakefile (depth): remove FC_FIND.
3059
3060         * config.make.in (NCSB_SOURCE_FILES): subst NCSB_SOURCE_FILES
3061
3062         * configure.in (LINK_GXX_STATICALLY): call fc-match from within configure.
3063
3064         * scm/framework-ps.scm (write-preamble): new function.
3065         (write-preamble): load mac fonts via fondu, even if gs-font-load
3066         is set.
3067
3068 2006-05-03  Werner Lemberg  <wl@gnu.org>
3069
3070         * mf/GNUmakefile (FC_FIND): Fix typo.
3071
3072 2006-05-03  Erlend Aasland  <erlenda@gmail.com>
3073
3074         * stepmake/stepmake/generic-targets.make (cvs-clean): also remove out-www dirs.
3075
3076 2006-05-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
3077
3078         * stepmake/aclocal.m4: run python-config for crosscompiling
3079         flags. 
3080
3081         * scripts/lilypond-book.py (Lilypond_file_snippet.my_system): add
3082         -f png for HTML, TEXINFO formats. 
3083
3084         * input/tutorial/lbook-html-test.html: new file.
3085
3086         * lily/include/tie-formatting-problem.hh (class
3087         Tie_formatting_problem): index Chord_outline_map by Tuple2 for
3088         [column, direction]. This fixes laissez vibrer ties.
3089  
3090         * flower/include/tuple.hh (struct Tuple2): new file.
3091
3092         * mf/GNUmakefile (FC_FIND): new function. Find ncsb using
3093         $(FCMATCH), only if $(NCSB_DIR) not set. 
3094
3095         * configure.in (LINK_GXX_STATICALLY): only warn if $NCSB_DIR set.
3096
3097         * config.make.in (DOCUMENTATION): set FCMATCH.  
3098
3099         * autogen.sh (srcdir): don't set --with-ncsb-dir. 
3100
3101 2006-05-03  Graham Percival  <gpermus@gmail.com>
3102
3103         * Documentation/user/ various: final round of reorg.
3104
3105         * Documentation/user/instrument-notation.itely: some more
3106         fixes from Eduardo, thanks!
3107
3108 2006-05-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
3109
3110         * VERSION (PACKAGE_NAME): release 2.9.3
3111
3112         * flower/file-path.cc (is_dir): canonicalize file name before stat'ing.
3113
3114         * lily/relocate.cc (framework_relocation): remove old relocation stuff.
3115
3116 2006-05-01  Mats Bengtsson  <mabe@s3.kth.se>
3117
3118         * scm/define-grob-properties.scm (all-user-grob-properties):
3119         Correct typo, thanks to Eduardo.
3120
3121 2006-05-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
3122
3123         * scripts/GNUmakefile (SEXECUTABLES): remove lilypond-ps2png.scm
3124
3125         * buildscripts/lilypond-words.py (F): indent fix.
3126
3127         * input/regression/tie-arpeggio-collision.ly: new file.
3128
3129         * lily/tie-formatting-problem.cc (set_column_chord_outline): new
3130         function: store outlines per column rank.
3131
3132         * lily/include/tie-configuration.hh (class Tie_configuration): add
3133         column_ranks_ to specification and configuration, to distinguish
3134         between ties for different heads in arpegiated chords.
3135
3136         * lily/relocate.cc (framework_relocation): use INSTALLER_PREFIX.
3137
3138         * *.py: more 4 space indents.
3139
3140         * autogen.sh (conf_flags): set sensible default for with-ncsb-dir
3141
3142 2006-05-01  Joe Neeman  <joeneeman@gmail.com>
3143
3144         * scm/lily-library.scm: Fix guile 1.6 compatibility in inf? and nan?
3145
3146 2006-05-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
3147
3148         * buildscripts/pfx2ttf.fontforge (err): create OTF files.
3149
3150         * scripts/abc2ly.py (dump_score): indent of 4 for python code. 
3151
3152         * configure.in (LINK_GXX_STATICALLY): remove locate() call.
3153
3154 2006-04-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3155
3156         * python/convertrules.py (conv): indent 4 for python files.
3157
3158 2006-04-29  Mats Bengtsson  <mabe@s3.kth.se>
3159
3160         * Documentation/user/changing-defaults.itely (Creating contexts):
3161         Clarify \new semantics.
3162
3163 2006-04-28  Graham Percival  <gpermus@gmail.com>
3164
3165         * Documentation/user/ various: major new sections in the
3166         Learning manual, slight reorg elsewhere.
3167
3168 2006-04-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
3169
3170         * mf/GNUmakefile (MFTRACE_FLAGS): add $(outdir) to $(ENCODING_FILE) 
3171
3172         * scm/framework-ps.scm (output-framework): remove PageMedia
3173
3174 2006-04-27  Graham Percival  <gpermus@gmail.com>
3175
3176         * Documentation/user/ tweaks.itely, working.itely: new
3177         files, being more advanced "learning manual" chapters.
3178
3179         * Documentation/user/ tutorial, putting, lilypond: reorg.
3180
3181 2006-04-26  Graham Percival  <gpermus@gmail.com>
3182
3183         * input/regression/lyric-combine-polyphonic.ly: fixed test
3184         (no more "can't find context `one'" error).
3185
3186 2006-04-25  Joe Neeman <joeneeman@gmail.com>
3187
3188         * lily/stem-tremolo.cc (print): fix whole note tremolo placement
3189
3190         * input/regression/stem-tremolo.ly: add 2 more whole note examples
3191         
3192 2006-04-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3193
3194         * lily/relocate.cc (read_relocation_dir): new function.
3195
3196 2006-04-26  Graham Percival  <gpermus@gmail.com>
3197
3198         * Documentation/user/instrument-notation.itely: a few more fixes
3199         from Eduardo, thanks!
3200
3201         * Documentation/user/README.txt: new file; contains info on
3202         style that used to be in lilypond.tely.
3203
3204         * Documentation/user/ various: first round of doc reorg.
3205
3206         * Documentation/user/baer-flat-bw.png: remove alpha bit from
3207         graphic; this probably causes problems on some pdf
3208         viewers, notably Adobe Acrobat.
3209
3210 2006-04-24  Graham Percival  <gpermus@gmail.com>
3211
3212         * Documentation/user/instrument-notation.itely: many alterations
3213         to Vocal music, from Eduardo Viera.
3214
3215 2006-04-23  Graham Percival  <gpermus@gmail.com>
3216
3217         * Documentation/user/instrument-notation.itely: fix \new
3218         instead of \context problem.
3219
3220 2006-04-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3221
3222         * lily/relocate.cc (expand_environment_variables): new function.
3223         (read_line): id.
3224         (read_relocation_file): id.
3225
3226         * scm/stencil.scm (eps-file->stencil): fix EPS PS embedding code 
3227
3228 2006-04-21  Erlend Aasland  <erlenda@gmail.com>
3229
3230         * ly/engraver-init.ly: remove old comments from TabVoice
3231
3232 2006-04-20  Graham Percival  <gpermus@gmail.com>
3233
3234         * Documentation/user/instrument-notation.itely: added Erlend's
3235         latest doc patch, thanks!
3236
3237 2006-04-19  Erlend Aasland <erlenda@gmail.com>
3238
3239         * lily/include/slur.hh:
3240         * lily/slur.cc:
3241         * lily/phrasing-slur-engraver.cc:
3242         * lily/slur-engraver.cc: Fix 'cut & paste' code by merging
3243         acknowledge_extra_object () from Phrasing_slur_engraver:: and
3244         Slur_engraver:: and putting it in
3245         Slur::auxiliary_acknowledge_extra_object ().
3246
3247         * ps/music-drawing-routines.ps (draw_dashed_slur): fix another bug
3248
3249         * lily/note-collision.cc: fix a comment
3250
3251 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
3252
3253         * stepmake/bin/add-html-footer.py: fix footer position in
3254         generated html files: before </body> and </html> tags.
3255
3256 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
3257
3258         * scripts/GNUmakefile: revert last "fix", which rather broke make.
3259         Earlier successive `make' commands finally compiled ok.
3260
3261         * Documentation/topdocs/INSTALL.texi: require mftrace 1.1.19.
3262
3263 2006-04-18  Erlend Aasland <erlenda@gmail.com>
3264
3265         * lily/include/stem-tremolo.hh:
3266         * lily/stem-tremolo.cc: move rotated_box () to Lookup:: and update
3267         callers.
3268
3269         * lily/lookup.cc:
3270         * lily/include/lookup.hh: add rotated_box ()
3271
3272 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
3273
3274         * scripts/GNUmakefile: bugfix: run help2man only after scripts have 
3275         been generated. Fixes "can't get `--help'" bug after make clean.
3276
3277         * THANKS: alphabetize contributors.
3278
3279 2006-04-17  Graham Percival  <gpermus@gmail.com>
3280
3281         * Documentation/user/instrument-notation.itely: added Erlend's
3282         tabs and banjo doc patch.  Thanks!
3283
3284 2006-04-17  Erlend Aasland  <erlenda@gmail.com>
3285
3286         * scm/define-grobs.scm: fix stem-attachment for tablature note heads.
3287
3288         * ps/music-drawing-routines.ps (draw_dashed_line): fix dash pattern bug.
3289
3290         * scm/output-lib.scm: add some more predefined string tunings.
3291
3292         * Documentation/user/instrument-notation.itely: and doc them.
3293
3294 2006-04-16  Jürgen Reuter  <reuter@ipd.uka.de>
3295
3296         * ly/engraver.ly: Remove obsolete comments.
3297
3298         * ly/gregorian-init.ly: Define default layout block.
3299
3300         * input/puer-fragment.ly: Updated and extended.
3301
3302 2006-04-15  Jan Nieuwenhuizen  <janneke@gnu.org>
3303
3304         * lily/lily-parser-scheme.cc: Use them to fix --output=DIR/BASE
3305         pdf conversion behaviour.
3306
3307         * flower/file-name.cc (dir_name)
3308         (get_working_directory): Move from relocate.cc.
3309
3310         * lily/relocate.cc (setup_paths): Remove rogue stat calls.
3311         
3312         * lily/relocate.cc: Encapsulate sys/stat.h in
3313         HAVE_STAT_H.
3314
3315 2006-04-14  Graham Percival  <gpermus@gmail.com>
3316
3317         * Documentation/user/ various: small updates from Cameron
3318         and Juergen, thanks!
3319
3320         * Documentation/user/ various: small updates of my own.
3321
3322         * THANKS: 2.7 -> 2.8.
3323
3324 2006-04-11  Graham Percival  <gpermus@gmail.com>
3325
3326         * scm/define-context-properties.scm: typo.
3327
3328         * Documentation/user/ : many more small updates.
3329
3330 2006-04-13  Jürgen Reuter  <reuter@ipd.uka.de>
3331
3332         * scm/define-music-types.scm: disposed "docme".
3333
3334 2006-04-11  Erlend Aasland  <erlenda@gmail.com>
3335
3336         * lily/hairpin.cc: make niente circles a bit smaller.
3337
3338 2006-04-10  Erlend Aasland  <erlenda@gmail.com>
3339
3340         * mf/GNUmakefile: remove redundant mftrace check. Also remove
3341         get-pfa and get-*-fonts targets.
3342
3343 2006-04-10  Graham Percival  <gpermus@gmail.com>
3344
3345         * THANKS, Documentation/user/ basic-notation, advanced-notation,
3346         music-glossary, programming-interface: more minor fixes
3347         from mailist.
3348
3349         * scm/define-grob-properties.scm: clarified direction, thanks Mats!
3350
3351         * scm/define-context-properties.scm: another old \property update.
3352         This time tested for compiling!
3353
3354 2006-04-10  Erlend Aasland  <erlenda@gmail.com>
3355
3356         * mf/GNUmakefile: fix for mftrace version >= 1.2.0
3357
3358 2006-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
3359
3360         * scm/define-context-properties.scm (all-user-translation-properties): 
3361         * Documentation/user/global.itely (Page formatting): Compile fix.
3362
3363 2006-04-09  Mats Bengtsson  <mabe@s3.kth.se>
3364
3365         * Documentation/user/advanced-notation.itely (Polymetric
3366         notation): Update the example to use the "+" symbol and add link
3367         to input/test/compound-time.ly.
3368
3369 2006-04-08  Graham Percival  <gpermus@gmail.com>
3370
3371         * scm/define-grob-properties.scm: clarify docs for #'direction.
3372
3373         * scm/define-context-properties.scm: update old \property override.
3374
3375         * Documentation/user/ advanced-notation, global, lilypond-book:
3376         more minor doc updates.
3377
3378 2006-04-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
3379
3380         * lily/parser.yy (Generic_prefix_music_scm): append lists, not objects.
3381
3382         * scm/backend-library.scm (search-gs): oops.
3383
3384 2006-04-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
3385
3386         * scripts/lilypond-book.py (output): use base, not filename for href.
3387
3388         * scm/backend-library.scm: only look for gs.
3389
3390         * scripts/lilypond-book.py (output): fix printfilename.
3391
3392         * lily/parser.yy (music_function_musicless_prefix): fold together
3393         definitions of signature (SCM*) (Music|post_event|chord_body_element)
3394
3395         * lily/slur.cc (print): only set font-size if not set yet.
3396
3397         * lily/slur-configuration.cc (add_score): improved layout of debug
3398         scoring output.
3399
3400 2006-04-05  David Feuer  <David.Feuer@gmail.com>
3401
3402         * music-drawing-routines.ps (draw_round_box): removed testing artifact.
3403         (draw_circle): Hopefully fixed regression.
3404         Improved documentation for several procedures.
3405         
3406 2006-03-04  Werner Lemberg  <wl@gnu.org>
3407
3408         * ly/engraver-init.ly (\Score): Add beam-event to quotedEventTypes.
3409
3410 2006-04-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
3411
3412         * scripts/musicxml2ly.py (bindir): add dynamic
3413         relocation. 
3414
3415 2006-04-04  Graham Percival  <gpermus@gmail.com>
3416
3417         * Documentation/user/ basic-notation, advanced-notation, putting,
3418         instrument-notation, invoking, lilypond, THANKS: another ream of small
3419         fixes from the Doc Helpers.
3420
3421 2006-04-03  David Feuer  <David.Feuer@gmail.com>
3422
3423         * music-drawing-routines.ps: remove superfluous gsave/grestore pairs.
3424
3425         * lilyponddefs.ps (set-ps-scale-to-lily-scale): Fixed code duplication.
3426
3427         * Cleaned up interfaces between PostScript and Scheme, and moved
3428         computations from PostScript to Scheme:
3429
3430         * music-drawing-routines.ps
3431         (*SF, stroke_and_fill): new procedures.  Replaced stroke and fill
3432         with stroke_and_fill throughout.
3433         (euclidean_length, print_letter, draw_box): Deleted unused
3434         procedures.  If someone needs draw_box, implement it using
3435         draw_round_box; don't duplicate code.
3436         (print_glyphs, draw_round_box, draw_polygon, draw_repeat_slash):
3437         Refactored/cleaned up interfaces.
3438         (mark_URI): Moved.
3439
3440         * output-ps.scm: reordered arguments to PostScript functions to
3441         match new interfaces
3442         (glyph-string): Rewrote glyph-string.
3443         (grob-cause): Replaced string-append with format.
3444         (repeat-slash): Rewrote to do computation here.
3445         (round-filled-box): Rewrote to do computation here.
3446
3447 2006-04-04  Erlend Aasland  <erlenda@gmail.com>
3448
3449         * stepmake/stepmake/generic-targets.make: add cvs-clean target
3450
3451         * stepmake/stepmake/toplevel- targets.make: print help info about
3452         cvs-clean
3453
3454 2006-04-03  Erlend Aasland  <erlenda@gmail.com>
3455
3456         * input/regression/hairpin-circled.ly: new file
3457
3458 2006-04-03  Erlend Aasland  <erlenda@gmail.com>
3459
3460         * lily/hairpin.cc (print): add support for circled tip
3461
3462         * scm/define-grob-properties.scm: add circled-tip parameter
3463
3464         * scm/define-grobs.scm: init circled-tip to false
3465         
3466 2006-04-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
3467
3468         * scm/music-functions.scm (quote-substitute): set
3469         iterators-ctor. 
3470
3471 2006-03-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
3472
3473         * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): set
3474         BSTINPUTS. 
3475
3476         * Documentation/topdocs/AUTHORS.texi (Top): add David Feuer.
3477
3478         * scm/output-ps.scm (glyph-string): revert cid selectfont.
3479
3480 2006-03-31  David Feuer  <david.feuer@gmail.com>
3481         
3482         * scm/framework-ps.scm:
3483         
3484         * scm/output-ps.scm: glyph-string now produces smaller, more
3485         readable, and probably faster PostScript.  Several findfont
3486         scalefont setfont instances changed to selectfont
3487         Hacked-up string-appends changed to formats.
3488
3489         * ps/music-drawing-routines.ps: add print_letter, print_glyphs.
3490         
3491 2006-03-30  Graham Percival  <gpermus@gmail.com>
3492
3493         * scm/lily-library.scm: make "no version" warning message more polite.
3494
3495         * lily/music.cc: add double quotes to failed octave check.
3496
3497         * Documentation/user/ advanced-notation, changing-defaults,
3498         instrument-notation, invoking, music-glossary: whole bunch of minor
3499         fixes from mailist.
3500
3501 2006-03-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
3502
3503         * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): use
3504         $(buildscriptdir) iso. depth.
3505
3506         * VERSION (PACKAGE_NAME): release 2.9.1
3507
3508 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
3509
3510         * lily/pango-font.cc (pango_item_string_stencil): more robustness.
3511
3512         * VERSION (PATCH_LEVEL): bump version number.
3513
3514         * flower/include/guile-compatibility.hh (scm_from_uint32): add
3515         scm_from_uint32 ()
3516
3517         * lily/pango-font.cc (pango_item_string_stencil): use
3518         scm_from_uint32 ()
3519
3520         * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
3521         $(outdir)/emmentaler-%.svg): remove canary.
3522
3523         * lily/pango-font.cc (pango_item_string_stencil): only use uXXX
3524         glyphnames if we have a ttf font.
3525
3526 2006-03-30  Mats Bengtsson  <mabe@s3.kth.se>
3527
3528         * Documentation/user/advanced-notation.itely (Font selection):
3529         Corrected reference to the font-family-override.ly example.
3530
3531 2006-03-30  Joe Neeman  <joeneeman@gmail.com>
3532         
3533         * lily/chord-tremolo-engraver.cc (acknowledge_stem): set the
3534         stem-tremolo object in the stem (or else the stem might not be
3535         long enough).
3536
3537 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
3538
3539         * lily/ttf.cc (print_trailer): only print existing glyphs.
3540
3541 2006-03-30  Joe Neeman  <joeneeman@gmail.com>
3542
3543         * lily/stem-tremolo.cc (print): for whole notes (and breves, etc.)
3544         position the tremolo based on the position of the notehead.
3545
3546         * input/regression/stem-tremolo.ly: add example of unbeamed eighth
3547         notes and update the texidoc line with the new positioning rules.
3548         
3549 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
3550
3551         * lily/ttf.cc (print_trailer): don't always use uXXX glyphname.
3552
3553         * scripts/lilypond-book.py (Module): set default for linewidth if
3554         preamble not found.
3555
3556 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
3557
3558         * VERSION (PACKAGE_NAME): release 2.9.0.
3559
3560         * input/regression/stem-tremolo-position.ly: new file.
3561
3562         * lily/stem-tremolo.cc: remove Stem_tremolo::dim_callback
3563
3564 2006-03-28  Joe Neeman  <joeneeman@gmail.com>
3565
3566         * lily/stem-tremolo.cc (print): position
3567         the tremolo depending only on the end of the stem
3568         and not on the notehead
3569         (raw_stencil): center, on the middle staff line, the
3570         flag that is closest to the end of the stem (previously
3571         the bottom flag)
3572         (calc_width): add this callback to shorten a tremolo when
3573         it is beamed or it is stemup with a flag
3574         (style): add this callback to make a tremolo rectangular when
3575         it is beamed or it is stemup with a flag
3576         (rotated_box): this is like Lookup::beam but makes a rotated
3577         rectangle instead of a parallelogram
3578
3579         * lily/stem.cc (calc_stem_info): make sure the stem
3580         is long enough to fit the tremolo
3581         (calc-length): reduce the length of tremolo stems since the
3582         tremolo code is now capable of better positioning
3583
3584         * scm/define-grobs.scm: make calc_width the default beam-width
3585         callback for stem-tremolo and add the style callback
3586                 
3587 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
3588
3589         * lily/tuplet-bracket.cc (calc_control_points): handle suicide
3590         case. 
3591
3592 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
3593
3594         * lily/ttf.cc (make_index_to_charcode_map): restore old
3595         cmap. 
3596
3597 2006-03-28  Werner Lemberg  <wl@gnu.org>
3598
3599         * lily/pango-font.cc (get_unicode_name): Fix `uXXXXX' glyph names.
3600
3601 2006-03-28  Graham Percival  <gpermus@gmail.com>
3602
3603         * THANKS: update for 2.9, add section for Documentation helpers.
3604
3605         * Documentation/topdocs/NEWS.tely: compile fix.
3606
3607         * Documentation/user/ basic-notation, global, advanced-notation,
3608         examples.itely: minor fixes from mailist.
3609
3610 2006-03-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
3611
3612         * mf/feta-bolletjes.mf: match width of solfa notes with normal
3613         note heads. 
3614
3615         * lily/ttf.cc (print_trailer): use it.
3616
3617         * lily/pango-font.cc (get_unicode_name): new function.
3618
3619         * lily/ttf.cc (make_index_to_charcode_map): move function from
3620         open-type-font.cc
3621         (print_trailer): substitute uniXXXX name if applicable. 
3622
3623         * lily/pango-font.cc (get_index_to_charcode_map): new function.
3624         (pango_item_string_stencil): use it to generate uniXXXX names.
3625
3626         * mf/feta-bolletjes.mf (overdone_heads): add small style (ugly)
3627         note heads, for uniform widths in shape note output.
3628         (overdone_heads): hmm. remove them again.
3629
3630         * scripts/lilypond-book.py (output): add links to filenames.
3631
3632         * Documentation/topdocs/INSTALL.texi (Top): update versions.
3633
3634         * lily/note-collision.cc (get_clash_groups): only consider when
3635         Note_column::dir <> CENTER. 
3636
3637         * scripts/lilypond-book.py (get_option_parser): init output_name
3638         to ''. 
3639
3640 2006-03-24  Graham Percival  <gpermus@gmail.com>
3641
3642         * Documentation/topdocs/NEWS.tely: add @end itemize
3643
3644         * Documentation/user/ global, advanced-notation: minor
3645         stuff from mailist.
3646
3647 2006-03-23  Graham Percival  <gpermus@gmail.com>
3648
3649         * Documentation/user/ lilypond.tely, music-glossary,
3650         preface: housekeeping; 2005->2006, remove "notes for 2.6"
3651
3652 2006-03-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
3653
3654         * mf/GNUmakefile: don't install .enc files.
3655
3656         * Documentation/topdocs/NEWS.tely: clear for 2.9 cycle.
3657
3658         * VERSION (PATCH_LEVEL): bump to 2.9.0
3659
3660 2006-03-22  Graham Percival  <gpermus@gmail.com>
3661
3662         * Documentation/user/advanced-notation.itely: minor fixes
3663         from mailist.
3664
3665 2006-03-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
3666
3667         * Documentation/topdocs/AUTHORS.texi (Top): add Joe Neeman.
3668
3669         * branch lilypond_2_8
3670
3671 2006-03-22  Han-Wen Nienhuys  <lilydev@localhost.localdomain>
3672
3673         * scripts/lilypond-book.py (samefile): new function, for windoze
3674         compatibility.
3675
3676 2006-03-21  Graham Percival  <gpermus@gmail.com>
3677
3678         * ly/engraver-init.ly: add info about StaffGroup.
3679
3680 2006-03-21  Han-Wen Nienhuys  <lilydev@localhost.localdomain>
3681
3682         * input/regression/stem-direction-context.ly: idem.
3683
3684         * Documentation/topdocs/NEWS.tely (Top): fix interpolation example.
3685
3686         * THANKS: add Mats.
3687
3688         * input/regression/page-layout-twopass.ly: comment out \markup so
3689         tweak-file is left.
3690
3691         * lily/instrument-name-engraver.cc (finalize): add to instrument
3692         name global System. This also fixes chopped instrument names, but
3693         doesn't crash when there are slurs/beams.
3694
3695         * lily/slur-configuration.cc (add_score): disallow negative slur
3696         scores.
3697         
3698 2006-03-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3699
3700         * scm/framework-ps.scm (dump-stencil-as-EPS): remove debugging code.
3701
3702         * lily/instrument-name-engraver.cc (process_music): kludge: add
3703         InstrumentName spanner to axis group of left bound. Fixes chopped
3704         off instrument names in EPS images.
3705
3706         * input/regression/lyric-hyphen-retain.ly: elaborate explanation.
3707
3708         * scripts/abc2ly.py (option_parser): update to 2.7.40
3709
3710 2006-03-20  Graham Percival  <gpermus@gmail.com>
3711
3712         * THANKS: move small doc contributors to SUGGESTIONS.
3713
3714         * Documentation/user/ basic-notation, advanced-notation,
3715         global: small changes from mailist.
3716
3717 2006-03-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3718
3719         * Documentation/user/advanced-notation.itely (Text marks): update
3720         for new rehearsalMarkAlignSymbol convention.
3721
3722         * VERSION (PATCH_LEVEL): bump version.
3723
3724         * input/test/instrument-name-align.ly: new file.
3725
3726         * scm/define-markup-commands.scm (hcenter-in): add hcenter-in.
3727
3728         * input/test/instrument-name-align.ly: new file. Document how to
3729         align instrument names.
3730
3731         * lily/mark-engraver.cc: remove properties.
3732
3733         * scm/define-context-properties.scm
3734         (all-user-translation-properties): remove align symbol properties
3735         for barnumber/reh. mark.
3736
3737         * lily/break-align-interface.cc (self_align_callback): new
3738         interface, new function. Look at complete alignment. This handles
3739         tunable break alignments in case break-align-symbols are missing.
3740
3741         * lily/bar-number-engraver.cc (acknowledge_break_alignment): new function
3742
3743         * lily/mark-engraver.cc (acknowledge_break_alignment): new function.
3744
3745         * python/convertrules.py (conv): mark/bar number alignment rule.
3746
3747         * lily/break-align-interface.cc (calc_positioning_done): also
3748         store offset from last visible break-alignment to its
3749         neighbor. This makes alignment on non-visible objects more reliable.
3750
3751         * po/lilypond.pot (Module): ran po-replace.
3752
3753         * input/regression/tie-single-manual.ly (Module): new file.
3754
3755         * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
3756         look at has_manual_position_.
3757         (from_ties): set has_manual_position_ if tie has staff-position set.
3758
3759         * lily/tuplet-bracket.cc (calc_positions): idem.
3760
3761         * lily/tuplet-number.cc (print): don't print tupletnumber if it
3762         doesn't span time.
3763
3764 2006-03-19  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3765
3766         * scm/define-markup-commands.scm (smallCaps): new markup command
3767         for turning a text to small caps using smaller font size and upper
3768         casing.
3769
3770 2006-03-17  Graham Percival  <gpermus@gmail.com>
3771
3772         * Documentation/user/ examples, instrument-notation,
3773         advnaced-notation: minor fixes from mailist.
3774
3775 2006-03-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3776
3777         * Documentation/user/tutorial.itely (First steps): change example
3778         to verbatim.  
3779
3780 2006-03-17  Graham Percival  <gpermus@gmail.com>
3781
3782         * Documentation/user/ examples, advanced: minor changes from mailist.
3783
3784         * THANKS: add Geoff Horton, for documentation stuff.
3785
3786 2006-03-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3787
3788         * python/lilylib.py (system): revert have_select kludge.
3789
3790         * Documentation/user/tutorial.itely (Commenting input files):
3791         update version numbers in doc. 
3792
3793         * scm/define-grob-interfaces.scm (multi-measure-interface): add
3794         bound-padding to multi-measure-interface
3795
3796 2006-03-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3797
3798         * input/test/engraver-example.ily: update version number.
3799
3800         * VERSION (PACKAGE_NAME): release 2.7.39
3801
3802         * lily/note-spacing.cc (get_spacing): heighten threshold where
3803         accidentals/arpeggios influence previous spacing fully.
3804
3805         * lily/rest.cc (y_offset_callback): only use direction if
3806         staff-position wasn't set before.
3807
3808         * lily/bar-number-engraver.cc: add support for
3809         barNumberAlignSymbol. 
3810         add ADD_ACKNOWLEDGER() call for break_aligned. Fixes bar-number-breathe
3811
3812         * lily/pointer-group-interface.cc (set_ordered): new function. 
3813         (add_unordered_grob): new function.
3814
3815         * lily/grob-array.cc (Grob_array): grob-arrays are always assumed
3816         to ordered, unless the opposite has been proved.  This fixes
3817         random reordering of large object groups across linebreaks,
3818         eg. beams.
3819
3820         * lily/main.cc (do_chroot_jail): printf format fix.
3821
3822         * lily/tie-formatting-problem.cc (generate_configuration):
3823         multiply y-shift for dot with direction.
3824  
3825         * scm/define-markup-commands.scm (note-by-number): put (magstep
3826         size) in y-attach too.
3827
3828         * Documentation/topdocs/NEWS.tely (Top): show override.
3829
3830         * scm/define-grobs.scm (all-grob-descriptions): reinstate neutral
3831         direction for stems.
3832         
3833 2006-03-15  Graham Percival  <gpermus@gmail.com>
3834
3835         * Documentation/user/ changing-defaults, global: minor
3836         fixes from mailist.
3837
3838 2006-03-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3839
3840         * lily/lexer.ll (Lily_lexer): bump required version to 2.7.38
3841
3842         * lily/spacing-spanner.cc (musical_column_spacing): crude fix for
3843         breakable items after uniformly stretched notes.
3844
3845         * lily/tie-formatting-problem.cc (set_chord_outline): initialize
3846         outline with outer edge of note heads. This prevents infinity
3847         problems with tied whole notes.
3848
3849         * scripts/lilypond-book.py (do_file): use os.popen
3850
3851         * python/convertrules.py (conv): add rule for Stem #'beamed-*
3852
3853 2006-03-14 Erik Sandberg  <mandolaerik@gmail.com>
3854
3855         * Documentation/user/invoking.itely: Add ragged-right to bug report
3856         guidelines.
3857
3858 2006-03-14  Graham Percival  <gpermus@gmail.com>
3859
3860         * Documentation/user/global.itely: small fix from mailist.
3861
3862 2006-03-14  Mats Bengtsson  <mabe@s3.kth.se>
3863
3864         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use the
3865         file descriptor returned by tempfile.mkstemp() when writing
3866         to tmpfile and closing it. Solves problem with unlink(tmpfile)
3867         on mingw.
3868
3869 2006-03-14  Jan Nieuwenhuizen  <janneke@gnu.org>
3870
3871         * po/fi.po: newline bugfix.
3872
3873 2006-03-12  Jan Nieuwenhuizen  <janneke@gnu.org>
3874
3875         * scm/paper.scm (paper-alist): Rounding fixes.
3876
3877 2006-03-13  Graham Percival  <gpermus@gmail.com>
3878
3879         * Documentation/user/ changing-defaults, instrument-notation,
3880         tutorial: small fixes from mailist, mostly from Mats.  Thanks!
3881
3882 2006-03-13 Heikki Junes  <hjunes@cc.hut.fi>
3883
3884         * po/fi.po: update.
3885
3886 2006-03-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3887
3888         * stepmake/bin/add-html-footer.py (mail_address_url): don't add
3889         mailto: to http:// 
3890
3891         * python/lilylib.py (print_environment): move ps_page_count to
3892         lilypond-book.py
3893
3894 2006-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3895
3896         * Documentation/user/music-glossary.tely (G clef): fix clef alignments.
3897
3898         * scm/framework-ps.scm (embed-document): new function. Use to
3899         embed PFA files.
3900
3901         * ly/engraver-init.ly: init rehearsalMarkAlignSymbol to staff-bar.
3902
3903 2006-03-12  Mats Bengtsson  <mabe@s3.kth.se>
3904
3905         * Documentation/user/instrument-notation.itely (Setting simple
3906         songs): Added \book{...} around the full example, so the separate
3907         markups are included in the printed example. 
3908
3909 2006-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3910
3911         * scripts/lilypond-book.py (get_latex_textwidth): explicitly close
3912         tmphandle.
3913
3914         * python/lilylib.py (system): rewrite system() using
3915         subprocess. Remove >& redirection trickery.
3916
3917 2006-03-11  Graham Percival  <gpermus@gmail.com>
3918
3919         * Documentation/user/ changing-defaults, global, scheme-tutorial,
3920         notation-appendices.itely: minor fixes from mailist.
3921
3922 2006-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3923
3924         * Documentation/user/GNUmakefile ($(outdir)/lilypond.html):
3925         unsplit man also needs images.
3926
3927         * tex/texinfo.tex (sectionheading, q.v.): relax after \char'15.
3928
3929         * VERSION (PACKAGE_NAME): 2.7.38 released.
3930
3931 2006-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3932
3933         * scripts/lilypond-book.py (get_latex_textwidth): look for latex
3934         log in output dir.
3935
3936 2006-03-08  Johannes Schindelin  <Johannes.Schindelin@gmx.de>
3937
3938         * lily/audio-column.cc, lily/score-performer.cc: MIDI output now
3939         respects the Score.skipTypesetting property.
3940         
3941 2006-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3942
3943         * scm/framework-ps.scm (ps-embed-cff): no Setup section in
3944         Prolog. No %%EOF after CFF file.
3945
3946 2006-03-08  Joe Neeman  <joeneeman@gmail.com>
3947         
3948         * lily/constrained-breaking.cc (get_max_systems): used to return a
3949         much too big value
3950         (combine_demerits): use pointers to reduce copying data
3951         (calc_subproblem): idem
3952         (get_page_penalty): add page turn penalties
3953         
3954 2006-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3955
3956         * Documentation/user/invoking.itely (Invoking lilypond): better
3957         explanation of -e usage.
3958
3959         * lily/main.cc (main_with_guile): don't append to
3960         init_scheme_code_string
3961
3962         * tex/texinfo.tex (sectionheading, q.v.): don't center @image.
3963
3964         * Documentation/user/invoking.itely: add note about MacOS X scripts.
3965
3966         * scripts/convert-ly.py (do_options): don't print help for
3967         --show-rules rule.
3968
3969         * tex/texinfo.tex: patch texinfo.tex to leave single quotes in
3970         @code and @example. Update from texinfo.tex from CVS.
3971
3972 2006-03-08  Graham Percival  <gpermus@gmail.com>
3973
3974         * Documentation/user/scheme-tutorial.itely: clarifies distances
3975         measured in staff-spaces.
3976
3977 2006-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3978
3979         * lily/slur.cc (outside_slur_callback): only calculate offsets if
3980         consider[k] is true.
3981
3982         * scm/output-ps.scm (grob-cause): put numbers to ~$ (Thanks Johannes!)
3983
3984         * lily/spacing-basic.cc (standard_breakable_column_spacing): also
3985         consider columns that have originals.  Unifies spacing for mm
3986         rests around line breaks.
3987
3988         * lily/multi-measure-rest.cc (set_spacing_rods): read bound-padding.
3989         (set_text_rods): idem.
3990         (calculate_spacing_rods): new function: share code between
3991         set_text_rods and set_spacing_rods.
3992         (set_text_rods): take extents of bounds into account.  
3993
3994 2006-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3995
3996         * Documentation/user/basic-notation.itely (Writing music in
3997         parallel): don't use relative.
3998
3999 2006-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4000
4001         * ly/music-functions-init.ly (Module): add shiftDurations
4002
4003         * ly/drumpitch-init.ly (drumPitchNames): add tamtam.
4004
4005         * scm/paper.scm (paper-alist): no decimals for Ax paper sizes. 
4006
4007         * ly/engraver-init.ly: init vocalName to nil.
4008
4009 2006-03-05 Erik Sandberg  <mandolaerik@gmail.com>
4010
4011         * scm/music-functions.scm (music->make-music): bugfix,
4012         KeyChangeEvents are now handled correctly.
4013
4014         * scripts/lilypond-book.py: Add --debug option.
4015
4016 2006-03-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4017
4018         * python/lilylib.py: add tempfile.
4019
4020 2006-03-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4021
4022         * VERSION (PACKAGE_NAME): release 2.7.37
4023
4024         * python/lilylib.py (ps_page_count): remove make_ps_images().
4025         (ps_page_count): remove mkdir_p
4026         (system): remove cleanup_temp.
4027         (exit): remove lilypond_version_(check)
4028         (error_log): remove pseudo_filter_p
4029         remove read_pipe
4030         remove cp_to_dir
4031         remove identify
4032
4033         * scripts/lilypond-book.py (Lilypond_snippet.compose_ly): don't
4034         use __main__
4035
4036         * lily/accidental-engraver.cc (make_standard_accidental): only add
4037         support for side-axis is X_AXIS. Fixes text-spacing-accidental.ly
4038
4039         * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
4040         $(outdir)/emmentaler-%.svg): rewrite without functions; too many
4041         Make incompatibilities.
4042
4043         * scm/output-ps.scm (grob-cause): replace backslashes by /
4044         (glyph-string): use ~$ for less decimals for glyph-string and grob-cause.
4045
4046 2006-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
4047
4048         * cygwin/GNUmakefile: Install fixes.
4049
4050         * scripts/GNUmakefile (SEXECUTABLES): Install fix: remove mup2ly.
4051
4052         * lily/note-head.cc (head::get_balltype): Compile fix.
4053
4054         * flower/file-name.cc (dos_to_posix): Flower string fix.
4055
4056 2006-03-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4057
4058         * python/lilylib.py: pychecker cleanups.
4059
4060         * scripts/lilypond-book.py
4061         (Lilypond_snippet.output_print_filename): pychecker cleanups
4062
4063         * scripts/midi2ly.py (Key.dump): pychecker cleanups.
4064
4065         * python/lilylib.py (underscore): remove identify() , warranty()
4066
4067         * ps/music-drawing-routines.ps: change Border routine for GSView
4068         compatibility.
4069
4070         * lily/stem.cc (height): use quantize-positions.  This triggers
4071         set_stem_lengths, so scripts on beamed stems are handled correctly.
4072
4073         * lily/side-position-interface.cc (aligned_side): check if edges
4074         of script are inside staff. Fixes accent of edge of the staff.
4075
4076         * input/regression/staccato-pos.ly: more examples.
4077
4078         * stepmake/aclocal.m4 (depth): fix bashism.
4079
4080         * lily/lyric-combine-music-iterator.cc: move from
4081         new-lyric-combine-iterator.cc
4082         (process): add pending_grace_lyric_ member to delay lyrics on
4083         grace notes.
4084
4085         * lily/system-start-text.cc (print): suicide if we don't have any
4086         elements. Fixes hara kiri'd instrument names.
4087
4088         * scripts/mup2ly.py (Module): remove.
4089
4090 2006-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4091
4092         * Documentation/user/global.itely (A single music expression):
4093         close @lilypond properly
4094
4095         * lily/volta-bracket.cc (modify_edge_height): change from
4096         after_line_breaking_callback. Suicide last bracket if appropriate.
4097  
4098         * python/lilylib.py: strip getopt support
4099
4100         * scripts/etf2ly.py (do_options): use optparse
4101
4102         * scripts/midi2ly.py: optparse, strip lilylib copy. 
4103
4104         * scripts/abc2ly.py (voices): use optparse.
4105
4106         * stepmake/stepmake/generic-vars.make: new function absdir.
4107
4108         * scripts/convert-ly.py (bindir): use optparse, argv[0] relocation.
4109
4110         * scripts/lilypond-book.py (find_file): use global_options for
4111         include path
4112
4113         * scm/ps-to-png.scm (ps-page-count): prevent null characters
4114         entering C code.
4115
4116 2006-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4117
4118         * python/lilylib.py (get_global_option): ughness for extracting
4119         global options from lilylib.
4120         (NonDentedHeadingFormatter.format_heading): move from musicxml2ly
4121
4122         * scripts/lilypond-book.py (get_option_parser): use optparse for
4123         option handling.  Put options in global_options variable.
4124
4125 2006-02-28  Heikki Junes  <hjunes@cc.hut.fi>
4126
4127         * Documentation/index.html.in: clarify.
4128
4129 2006-02-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4130
4131         * scm/layout-page-layout.scm (write-page-breaks): add a
4132         music-system-heights property to the page layout output.
4133
4134         * scm/page.scm (make-page-stencil): take footer into account when
4135         computing the 'space-left page property
4136         (annotate-space-left): take footer into account when annonating
4137         space left.
4138
4139 2006-02-28  Graham Percival  <gpermus@gmail.com>
4140
4141         * Documentation/user/ advanced-notation, global: more (final)
4142         docs for music expressions, removed special fermatas.
4143
4144 2006-02-27  Graham Percival  <gpermus@gmail.com>
4145
4146         * Documentation/user/ basic-notation, global: minor changes
4147         from mailist.
4148
4149 2006-02-26  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4150
4151         * scm/framework-ps.scm:         
4152         * scm/lily-library.scm (nan?, inf?): Move guile 1.6 compatibility
4153         layer for inf? and nan? from framework-ps to lily-library.
4154
4155 2006-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4156
4157         * mf/GNUmakefile ($(outdir)/emmentaler-$(1).otf
4158         $(outdir)/emmentaler-$(1).svg): remove backslashes from define endef.
4159
4160         * buildscripts/substitute-encoding.py (Module): remove file.
4161
4162         * mf/GNUmakefile: more PFA strippage.
4163
4164         * mf/aybabtu.pe.in (i): remove PFAaybabtu generation
4165
4166         * buildscripts/gen-emmentaler-scripts.py (i): remove PFAemmentaler
4167         generation
4168
4169         * scm/framework-ps.scm: remove font name munging.
4170
4171         * Documentation/topdocs/INSTALL.texi (Top): bump GS requirement.
4172
4173 2006-02-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4174
4175         * scm/markup.scm (define-markup-command): change
4176         def-markup-command to define-markup-command
4177
4178         * scm/music-functions.scm (define-music-function): change
4179         def-music-function to define-music-function.
4180
4181         * python/convertrules.py (conv): rules for def-music-function
4182         and def-markup-commands
4183
4184         * Documentation/user/programming-interface.itely,
4185         input/no-notation/display-lily-tests.ly,
4186         input/regression/lily-in-scheme.ly,
4187         input/regression/markup-user.ly,
4188         input/regression/music-function.ly, input/regression/tie-chord.ly,
4189         scm/fret-diagrams.scm, ly/music-functions-init.ly,
4190         ly/gregorian-init.ly: use new macro names (define-music-function,
4191         define-markup-command).
4192
4193 2006-02-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4194
4195         * scripts/lilypond-book.py (main): write Makefile dependencies file. 
4196         (output): add comments to lp-book latex output.
4197
4198         * GNUmakefile.in (footifymail): use gmane address for webpage bug
4199         address.
4200
4201 2006-02-23  Graham Percival  <gpermus@gmail.com>
4202
4203         * Documentation/user/ tutorial, global: minor changes.
4204
4205 2006-02-23  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4206
4207         * mf/GNUmakefile: add '\' in multi-line "define ... endef"
4208         blocks (for make 3.80)
4209
4210         * scm/parser-ly-from-scheme.scm (ly:parse-string-result): add
4211         \notemode so that user should not have to explicitely type it.
4212
4213         * scm/define-music-display-methods.scm: various
4214         fixes (ApplyOutputEvent, ApplyContext; \new, \context and derived
4215         constructs)
4216
4217         * input/no-notation/display-lily-tests.ly: new tests for
4218         \applyOutput and \applyContext
4219
4220 2006-02-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4221
4222         * lily/constrained-breaking.cc: patch by Joe Neeman: "I have
4223         changed it slightly so that the number of systems returned by
4224         solve () will be the same as the last value passed to resize
4225         (). I've also added more documentation, removed casts, fixed style
4226         problems and put in some recovery if constraints aren't satisfied."
4227
4228 2006-02-23  Jan Nieuwenhuizen  <janneke@gnu.org>
4229
4230         * elisp/lilypond-mode.el (count-matches-as-number): New funtion
4231         for emacs < 22 compatibility.
4232         (count-rexp): Use it.
4233         (LilyPond-string-current-midi, LilyPond-string-all-midi): Remove
4234         substring juggling (Milan Zamazal).
4235
4236 2006-02-23  Graham Percival  <gpermus@gmail.com>
4237
4238         * Documentation/user/ basic-notation, advanced-notation,
4239         global.itely, invoking.itely, tutorial,itely:
4240         minor fixes from mailist.
4241
4242         * scm/define-markup-commands.scm: improve docs of \filled-box.
4243
4244 2006-02-23  Heikki Junes  <hjunes@cc.hut.fi>
4245
4246         * Documentation/index.html.in: changes concern the previous release.
4247
4248         * input/regression/+.ly: cultivate typographical terminology.
4249
4250 2006-02-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4251
4252         * scm/define-grob-interfaces.scm (parentheses-interface): add
4253         padding to parentheses-interface.
4254
4255         * Documentation/user/GNUmakefile: remove $(CROSS) support from
4256         Documentation/user/GNUmakefile. Use --disable-documentation for that.
4257
4258         * VERSION (PATCH_LEVEL): release 2.7.36
4259
4260         * lily/slur.cc: add avoid-slur (ugh.)
4261         
4262         * lily/slur-configuration.cc (fit_factor): oops, skip point if
4263         intersection gets smaller. This fixes slurs over extreme points.
4264
4265         * lily/melody-engraver.cc (stop_translation_timestep): ignore
4266         stems with neutral-direction set.
4267
4268         * lily/piano-pedal-engraver.cc (create_text_grobs): idem.
4269
4270         * lily/open-type-font.cc (load_table): format error.
4271
4272         * lily/change-iterator.cc (process): format fix.
4273
4274         * flower/include/international.hh (_f): idem.
4275
4276         * flower/include/std-string.hh: add format printf attribute.
4277
4278         * scm/define-grobs.scm (all-grob-descriptions): height of all
4279         PedalLineSpanner is Y-extent property. Fixes pedal-ped.ly
4280
4281         * lily/ambitus-engraver.cc (finalize): use grob_array. This fixes
4282         ambitus lines.
4283
4284         * input/regression/beam-cross-staff-slope.ly: remove decrescendo.
4285
4286 2006-02-22 Erik Sandberg  <mandolaerik@gmail.com>
4287
4288         * input/regression/: upgraded syntax for some files.
4289
4290         * THANKS: Add bughunters.
4291
4292 2006-02-22  Graham Percival  <gpermus@gmail.com>
4293
4294         * Documentation/user/ invoking.itely, advanced-notation.itely,
4295         global.itely: long-awaited "let's make chapter 10 not suck"
4296         update.  Rearrange chapter 10; now called "global issues",
4297         addresses file structure, etc.  Some info from other files
4298         moved into global.itely.
4299
4300 2006-02-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4301
4302         * lily/accidental-engraver.cc (acknowledge_rhythmic_head): also
4303         catch trill-span-event notes.
4304
4305         * Documentation/user/examples.itely (Ancient notation templates): typo.
4306         (Jazz combo): typo.
4307
4308         * scripts/lilypond-book.py (main): scrap invokes_lilypond(). 
4309
4310         * Documentation/user/basic-notation.itely (Ties): document \repeatTie.
4311
4312         * Documentation/topdocs/NEWS.tely (Top): document \repeatTie.
4313
4314         * scm/define-music-types.scm (music-descriptions): add RepeatTieEvent
4315
4316         * lily/repeat-tie-engraver.cc (acknowledge_note_head): new file. cut & paste
4317         froum Laissez_vibrer_engraver.
4318
4319         * ly/declarations-init.ly (repeatTie): add \repeatTie
4320
4321         * scm/define-grobs.scm (all-grob-descriptions): add RepeatTie, RepeatTieColumn
4322
4323         * scm/define-grob-properties.scm (all-user-grob-properties): add
4324         head-direction property.
4325
4326         * lily/tie-formatting-problem.cc (from_semi_ties): rename from
4327         from_lv_ties. Take head direction argument.
4328
4329         * lily/semi-tie-column.cc: rename from
4330         laissez-vibrer-tie-column.cc. Rename class too.
4331
4332         * lily/semi-tie.cc: rename from laissez-vibrer-tie.cc. Rename
4333         class too.
4334
4335         * lily/paper-score.cc (find_break_indices): move from Break_algorithm.
4336
4337         * lily/break-algorithm.cc (find_break_indices): remove linewidth <
4338         0 case.
4339         (find_breaks): idem.
4340
4341 2006-02-21  Graham Percival  <gpermus@gmail.com>
4342
4343         * Documentation/user/advanced-notation.itely: fixed make-moment]
4344         example.
4345
4346         * Documentation/user/basic-notation.itely: more clarification to
4347         transpose.
4348
4349 2006-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4350
4351         * lily/include/constrained-breaking.hh (class
4352         Constrained_breaking): new file.
4353
4354         * lily/constrained-breaking.cc (resize): new file.
4355
4356         * lily/gourlay-breaking.cc (do_solve): ragged-last iso raggedlast
4357
4358         * Documentation/user/advanced-notation.itely (Clusters): insert
4359         end ignore too.
4360
4361         * lily/tie-column.cc (calc_positioning_done): support for
4362         tie-score debugging
4363
4364         * lily/tie-formatting-problem.cc
4365         (generate_extremal_tie_variations): factor out.
4366         (score_ties_configuration): annotate all tie 
4367         (print_ties_configuration): new routine.
4368         (generate_configuration): nudge extremal ties outside of the head
4369         Y extents.
4370         (score_ties_configuration): oops. convert to staff-space before
4371         determining position symmetry.
4372
4373 2006-02-20  Graham Percival  <gpermus@gmail.com>
4374
4375         * Documentation/user/*-notation.itely: misc minor editing,
4376         shifting doc sections around.
4377
4378         * Documentation/user/*-notation-itely, global.itely,
4379         changing-defaults.itely: added new stuff from NEWS.
4380
4381 2006-02-20  Heikki Junes  <hjunes@cc.hut.fi>
4382
4383         * po/fi.po: update.
4384
4385 2006-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4386
4387         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): don't run
4388         lilypond --verbose for lp-book.
4389
4390         * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
4391         $(outdir)/%.ly $(outdir)/%.ps): use $(srcdir) iso $(shell pwd).
4392
4393         * make/lysdoc-rules.make ($(outdir)/collated-files.tely): use
4394         $(buildscript-dir) iso. absolute depth.
4395
4396         * buildscripts/genicon.py (dir): thinko.
4397
4398         * Documentation/pictures/GNUmakefile ($(outdir)/%.ico): typo.
4399
4400 2006-02-19 Erik Sandberg  <mandolaerik@gmail.com>
4401
4402         * scm/output-lib.scm: swap darkcyan/darkyellow
4403
4404         * THANKS: Add bughunters.
4405
4406 2006-02-19  Graham Percival  <gpermus@gmail.com>
4407
4408         * Documentation/user/programming-interfaces.itely: fixed example.
4409
4410         * Documentation/user/instrument-notation.itely: fix @{ @}.
4411
4412         * scm/script.scm: add avoid-slur for \open.
4413
4414 2006-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4415
4416         * lily/tie-formatting-problem.cc (score_configuration): use
4417         sliding score for min-length. 
4418
4419         * Documentation/pictures/GNUmakefile (local-dist): loose the rule
4420         spaghetti for icons.
4421
4422         * buildscripts/genicon.py (program_name): new file.
4423
4424         * lily/tie-formatting-problem.cc (set_chord_outline): put dots
4425         in outline too.  
4426         (generate_configuration): for small ties, also look for collisions
4427         at Y + DIR*h + DELTA_Y.
4428         (get_variations): consider variation for dot positions too.
4429
4430         * lily/side-position-interface.cc (aligned_side): take abs for
4431         quantized rounded position. Fixes tenuto below staff.
4432
4433         * scm/stencil.scm (annotate-y-interval): robustify: print nan/inf
4434         markers when necessary.
4435
4436         * lily/program-option.cc (internal_set_option): add
4437         strict_infinity_checking option.
4438
4439         * scm/output-lib.scm (cyan): swap yellow and cyan.
4440
4441 2006-02-19  Graham Percival  <gpermus@gmail.com>
4442
4443         * darwin.patch: trivial linenumber update.
4444
4445         * Documentation/user/ {various}: `\context foo = named' changed
4446         to `\new foo = "name"' in docs.
4447
4448 2006-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4449
4450         * scm/stencil.scm (annotate-y-interval): use it.
4451
4452         * scm/lily-library.scm (interval-sane?): new function.
4453
4454         * buildscripts/mf-to-table.py (Char_metric.__init__): remove
4455         tfm_checksum stuff.
4456
4457         * lily/tie-formatting-problem.cc (from_lv_ties): add heads for
4458         common refpoint.
4459
4460         * flower/include/std-vector.hh (iterof): add iterof macro.
4461
4462         * lily/enclosing-bracket.cc (width): new function.
4463
4464         * lily/align-interface.cc (align_elements_to_extents): reinstate
4465         warning.
4466
4467 2006-02-18  Heikki Junes  <hjunes@cc.hut.fi>
4468
4469         * Documentation/index.html.in: fix spelling: thankyous.
4470
4471 2006-02-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4472
4473         * lily/lyric-hyphen.cc: typo.
4474
4475 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4476
4477         * stepmake/stepmake/c++-rules.make ($(outdir)/%.cc
4478         $(outdir)/%.hh): generate h and c in one rule; otherwise -jX
4479         builds don't work. 
4480
4481         * VERSION: release 2.7.35
4482
4483         * lily/beam.cc (get_default_dir): oops. Take abs () for
4484         extremes[DOWN].
4485         (get_default_dir): use extreme position criterion only in absence
4486         of forced stem directions.
4487
4488         * VERSION (PATCH_LEVEL): bump VERSION.
4489
4490         * mf/GNUmakefile: explicit rules for emmentaler/aybabtu
4491         dependencies. Necessary for -jX builds.  
4492
4493 2006-02-17  Jan Nieuwenhuizen  <janneke@gnu.org>
4494
4495         * lily/relocate.cc (setup_paths): Yet another const fix.
4496
4497 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4498
4499         * configure.in (HOST_ARCH): determine HOST_ARCH in configure.
4500
4501         * lily/relocate.cc (setup_paths): oops.
4502
4503 2006-02-17  Heikki Junes  <hjunes@cc.hut.fi>
4504
4505         * Documentation/index.html.in: order links: html before PDF.
4506
4507 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4508
4509         * lily/tie-column-format.cc (Module): remove.
4510
4511         * lily/relocate.cc (setup_paths): GCC 4.2 fixes: const correctness.
4512
4513         * lily/text-spanner.cc (print): idem.
4514
4515         * lily/dynamic-text-spanner.cc (print): only print line if longer
4516         than dash-period.
4517
4518         * lily/auto-change-iterator.cc (change_to): formatting.
4519
4520         * lily/beam.cc (get_default_dir): take extreme note head as input
4521         for stem direction.
4522
4523         * lily/tie.cc (get_default_dir): only look directions for visible
4524         stems. 
4525
4526         * lily/side-position-interface.cc (aligned_side): oops. Don't
4527         mutiply with direction. This fixes quantized (staccato, tenuto)
4528         scripts below notes.
4529
4530         * lily/lyric-hyphen.cc (set_spacing_rods): oops. Multiply with
4531         direction. Fixes c-lyrics-center-align.ly
4532
4533 2006-02-16  Jan Nieuwenhuizen  <janneke@gnu.org>
4534
4535         * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Add copy
4536         constructor.
4537
4538         * lily/std-string.cc:
4539         * lily/include/std-vector.hh (split_string): Move and rename from
4540         lily/include/misc.hh, lily/misc.cc.  Update callers.
4541
4542 2006-02-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4543
4544         * lily/include/pango-font.hh: HAVE_PANGO_FT2 iso. HAVE_PANGO_16
4545
4546 2006-02-16  Jan Nieuwenhuizen  <janneke@gnu.org>
4547
4548         * flower/test-file.cc: New file.
4549
4550         * stepmake/stepmake/test-vars.make (TEST_MODULE_LIBES): Fixes for
4551         libraries.
4552
4553         * flower/GNUmakefile (TEST_MODULE_LIBS): Link to flower lib.
4554
4555 2006-02-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4556
4557         * flower/include/file-storage.hh: remove file.
4558
4559         * lily/include/midi-item.hh (class Midi_track): idem.
4560
4561         * lily/include/source.hh (class Sources): idem.
4562
4563         * lily/include/performance.hh (class Performance): use vector
4564         iso. Cons<>
4565
4566         * flower/include/cons.hh (class Cons): remove file.
4567
4568         * flower/include/flower-proto.hh: remove template cruft.
4569
4570         * lily/include/font-metric.hh: use size_t not vsize for indices.
4571
4572         * flower/include/flower-proto.hh (Module): remove std-vector.hh
4573         from proto.
4574
4575         * lily/include/all-font-metrics.hh: use HAVE_PANGO_FT2
4576
4577         * lily/include/paper-book.hh (class Paper_book):
4578         make get_system_specs() public.
4579
4580         * scm/layout-page-layout.scm (optimal-page-breaks): only consider
4581         the force=10000 case if we don't have a current-best. 
4582
4583         * lily/tuplet-bracket.cc (get_bounds): don't do (size() - 1) for
4584         vsize 
4585
4586         * flower/include/flower-proto.hh: remove outdated templates.
4587
4588         * scm/page.scm: use annotate-spacing
4589
4590 2006-02-15  Graham Percival  <gpermus@gmail.com>
4591
4592         * scm/translation-functions.scm: circle patch from Erlend, thanks!
4593
4594         * THANKS: moved Erlend Aasland to contributors.
4595
4596 2006-02-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4597
4598         * config.hh.in: remove HAVE_PANGO_16
4599
4600         * lily/tuplet-bracket.cc (calc_positions): multiply with
4601         staff-space for beam case. This fixes tuplets+beams on scaled
4602         staves.
4603
4604         * config.hh.in: remove all Kpathsea related defines.
4605
4606         * lily/dot-column.cc (side_position): reach stem via dots->
4607         head->stem. Inspect all stems for dot collisions. 
4608
4609         * lily/dot-column-engraver.cc (class Dot_column_engraver): excise
4610         stem handling.
4611
4612         * lily/bar-number-engraver.cc (process_music): document function
4613         of whichBar.
4614
4615         * lily/score.cc (default_rendering): add pscore, not systems
4616         themselves.
4617
4618         * lily/paper-book.cc (get_system_specs): separate generation of
4619         titles and systems.
4620
4621         * flower/include/std-vector.hh: don't include config.hh
4622
4623 2006-02-15  Jan Nieuwenhuizen  <janneke@gnu.org>
4624
4625         * flower/include/std-vector.hh: Better wrapper compatibility with
4626         std::vector.
4627
4628         * flower/include/flower-proto.hh: Remove cheap forward declaration
4629         attempts.
4630
4631         * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): Bugfix.
4632
4633 2006-02-14  Graham Percival  <gpermus@gmail.com>
4634
4635         * Documentation/user/invoking.itely: add warning about command line.
4636
4637 2006-02-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4638
4639         * lily/include/lily-proto.hh: add Prob, rm Page.
4640
4641         * flower/include/std-vector.hh (VPOS): use 64 bit-proof version.
4642
4643         * VERSION: release 2.7.34
4644
4645         * lily/relocate.cc (framework_relocation): show canary if
4646         GHOSTSCRIPT_VERSION undefined.
4647
4648         * GNUmakefile.in: remove $(VERSION) symlink.
4649
4650         * lily/relocate.cc (setup_paths): add + 
4651
4652 2006-02-13  Heikki Junes  <hjunes@cc.hut.fi>
4653
4654         * Documentation/index.html.in: specify sizes for all big HTML pages.
4655
4656 2006-02-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4657
4658         * config.hh.in: remove @FRAMEWORKDIR@
4659
4660         * lily/system-start-text.cc (get_stencil): new file: separate out
4661         system-start-delimiter text support.
4662
4663         * input/**ly: replace \context with \new where appropriate.
4664         
4665         * THANKS: add Don.
4666
4667         * lily/slur-scoring.cc (get_base_attachments): use
4668         robust_relative_extent. This fixes problems with empty paper-columns. 
4669
4670 2006-02-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4671
4672         * Documentation/topdocs/NEWS.tely (Top): document \new syntax.
4673
4674         * scm/define-music-properties.scm (all-music-properties):
4675         create-new property.
4676
4677         * lily/context-specced-music-iterator.cc (construct_children):
4678         inspect 'create-new property iso. magical $uniqueContextId context
4679         id.
4680
4681         * lily/parser.yy (optional_id): allow \new "Bar" = "foo" too.
4682
4683         * lily/context-key-manager.cc (Module): new file. Encapsulate
4684         object key generation.
4685
4686         * lily/include/context-key-manager.hh (Module): new file.
4687
4688 2006-02-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4689
4690         * scm/define-grobs.scm (all-grob-descriptions): center instrument
4691         names vertically
4692
4693         * configure.in (LINK_GXX_STATICALLY): strip -DSTRING_UTILS_INLINED
4694         options.
4695         (reloc_b): excise --enable-framework-dir
4696
4697         * lily/relocate.cc (framework_relocation): use getenv
4698         LILYPOND_GS_VERSION or -DGHOSTSCRIPT_VERSION to set GS version.
4699
4700 2006-02-11  Jan Nieuwenhuizen  <janneke@gnu.org>
4701
4702         * flower/include/std-string.hh: 
4703         * flower/include/std-vector.hh: Finish std:: conversion; move
4704         flower extensions from std:: namespace.  Update users.
4705
4706         * lily/include/lily-proto.hh: Replace Link_array__*_ macros by
4707         their expansion to vector<*>.  Update users.
4708
4709 2006-02-10  Graham Percival  <gpermus@gmail.com>
4710
4711         * Documentation/user/invoking.itely: add example to File structure.
4712
4713         * Documentation/user/ instrument-notation.itely, cheatsheet.itely,
4714         examples.itely, putting.itely: {\new|\context} Lyrics \lyricsto.
4715
4716 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4717
4718         * ly/paper-defaults.ly: typo.
4719
4720         * lily/parenthesis-engraver.cc (acknowledge_grob): don't do
4721         set_parent() for parentheses. This will make it show up in bbox
4722         calculations.
4723
4724         * scm/output-lib.scm (parentheses-item::print): rewrite, using
4725         ly:grob-common* functions.
4726
4727         * lily/grob-scheme.cc (LY_DEFINE):
4728         ly:grob-common-refpoint-of-array: new function 
4729         ly:grob-common-refpoint: new function 
4730         ly:grob-relative-coordinate: new function 
4731
4732         * lily/instrument-name-engraver.cc (process_music): use
4733         Text_interface::is_markup(). This fixes \markup on instrument names.  
4734
4735         * scm/define-grobs.scm (all-grob-descriptions): set line-thickness
4736         for ties and slurs.
4737
4738         * lily/slur.cc (print): idem.
4739
4740         * lily/tie.cc: add line-thickness for ties. 
4741
4742 2006-02-10  Jan Nieuwenhuizen  <janneke@gnu.org>
4743
4744         * scm/output-svg.scm: Document diversion from GNU coding standards
4745         as a workaround for a bug in Microsoft Internet Explorer.
4746
4747 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4748
4749         * lily/instrument-name-engraver.cc (process_music): use
4750         is_markup() iso. is_string()
4751
4752         * Documentation/user/changing-defaults.itely (Module): add menu entry.
4753
4754         * lily/percent-repeat-engraver.cc (process_music): only look at
4755         main_part_ for % repeats.
4756
4757         * lily/stem-tremolo.cc (get_beam_translation): new function.
4758         (calc_slope): new function.
4759         (height): don't use real slope.
4760
4761 2006-02-10  Jürgen Reuter  <reuter@ipd.uka.de>
4762
4763         * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: add
4764         new connect-to-neighbor, control-points and staff-padding
4765         properties to make ligature brackets showing up again.
4766
4767 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4768
4769         * VERSION: release 2.7.33
4770
4771         * lily/relocate.cc (prefix_relocation): oops. One TOPLEVEL_VERSION
4772         too many.
4773
4774         * Documentation/user/changing-defaults.itely (Difficult tweaks):
4775         remove applyOutput example.
4776         (Objects connected to the input): document \tweak, \parenthesize
4777
4778         * lily/relocate.cc (prefix_relocation): allow "current"
4779         iso. TOPLEVEL_VERSION for share/lilypond/ suffix. This makes
4780         changing VERSION in a lily tree less painful.
4781
4782         * input/regression/parenthesize.ly: new file. 
4783
4784         * scm/output-lib.scm (parenthesize-element): new function.
4785
4786         * scm/define-grobs.scm (all-grob-descriptions): add ParenthesesItem.
4787
4788         * lily/parenthesis-engraver.cc (acknowledge_grob): new file.
4789
4790         * lily/accidental-engraver.cc (make_standard_accidental): reroute
4791         cause: accidentals are caused by note heads, not note events. 
4792
4793 2006-02-08  Graham Percival  <gpermus@gmail.com>
4794
4795         * darwin.patch: small patch from Erlend, thanks!
4796
4797         * Documentation/user/basic-notation.itely: add stem-neutral example.
4798
4799         * Documentation/user/putting.itely: clarifications.
4800
4801 2006-02-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4802
4803         * Documentation/topdocs/NEWS.tely (Top): remove internal cleanup
4804         note, add more guidelines to what should go into NEWS.
4805
4806         * input/sakura-sakura.ly: document how to override font.
4807
4808         * input/regression/font-family-override.ly:  doc -dshow-available-fonts
4809
4810 2006-02-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4811
4812         * lily/midi-item.cc (to_string): truncate time sig at 255 beats.
4813
4814 2006-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
4815
4816         * scripts/convert-ly.py (lilypond_version_re_str): Move from
4817         convertrules.  Add explicit grouping, needed for python2.2.
4818
4819 2006-02-07  Jan Nieuwenhuizen  <janneke@gnu.org>
4820
4821         * Documentation/topdocs/NEWS.tely (Top): Mention code cleanup.
4822
4823 2006-02-07  Graham Percival  <gpermus@gmail.com>
4824
4825         * Documentation/user/global.itely: fix line-width in (text) docs.
4826
4827         * Documentation/user/lilypond-book.itely: same.
4828
4829 2006-02-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4830
4831         * VERSION (PACKAGE_NAME): release 2.7.32
4832
4833         * Documentation/topdocs/NEWS.tely (Top): document new variable
4834         naming.
4835
4836         * flower/include/array.icc (Message): remove file.
4837
4838         * flower/include/std-vector.hh: make sure vsize and VPOS are
4839         defined for binary_search_bounds().
4840
4841         * flower/std-string.cc (std): add to_string(long unsigned).
4842
4843         * configure.in (gui_b): excise std_string option.
4844         (gui_b): excise std_vector option.
4845
4846         * flower/string.cc (Module): excise flower array & string
4847
4848         * flower/include/std-string.hh: excise flower string.
4849
4850         * {ly,lily,scm}/*: use dashes in \paper and \layout variables
4851
4852         * python/convertrules.py (lilypond_version_re_str): require
4853         only numbers and dots in \version string.
4854
4855 2006-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4856
4857         * lily/system-start-delimiter.cc (print): allow style = text too.
4858
4859         * lily/system-start-delimiter-engraver.cc
4860         (acknowledge_system_start_text): new function, also add add to
4861         support of system-start-text (instrument names). This fixes
4862         instrument names on piano staves.
4863
4864         * lily/instrument-name-engraver.cc: rewrite. Use
4865         system-start-delimiter approach. This save memory and cpu.
4866
4867         * scm/define-grobs.scm (all-grob-descriptions): remove
4868         instrument-name from break-alignment.
4869
4870         * mf/GNUmakefile ($(NCSB_TTFS)): depend on pfx2ttf script too.
4871
4872 2006-02-05  Jan Nieuwenhuizen  <janneke@gnu.org>
4873
4874         * stepmake/stepmake/generic-vars.make (LOOP): Add PLUS to keep -j
4875         jobserver going.
4876
4877         * configure.in (std_vector): On by default.
4878
4879         * lily/include/font-metric.hh:
4880         * lily/include/tfm-reader.hh: 
4881         * lily/include/spanner.hh: Use unsigned for indices and sizes.
4882         Update users.
4883
4884         * Documentation/user/changing-defaults.itely: Fix link v2.5, out-www.
4885
4886 2006-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4887
4888         * VERSION (PACKAGE_NAME): 2.7.31
4889
4890         * scm/framework-ps.scm (dump-stencil-as-EPS): don't hardcode left
4891         EPS edge at 0, but take minimum with left-overshoot. This fixes
4892         cut off system start delims. 
4893
4894         * lily/instrument-name-engraver.cc (stop_translation_timestep):
4895         hack: add to axis group if not added yet. This fixes hara kiri'd
4896         piano staves.
4897
4898         * lily/hara-kiri-group-spanner.cc
4899         (force_hara_kiri_in_y_parent_callback): fix signatures.
4900
4901         * lily/hairpin.cc (print): check next hairpin to see whether or
4902         not to be continuing.
4903
4904 2006-02-04  Jan Nieuwenhuizen  <janneke@gnu.org>
4905
4906         * Remove trailing whitespace from makefiles.
4907         
4908         * flower/include/std-vector.hh: Add binary_search_bounds workaround
4909         for earlier gcc.
4910
4911         * .cvsignore: Add out*, out-www, config-*.  Remove lots of cruft.
4912
4913         * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Workaround.
4914
4915         * config.hh.in (HAVE_STL_DATA_METHOD): Add.
4916
4917         * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): New function.
4918
4919         * configure.in: Use it.
4920
4921 2006-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4922
4923         * scm/music-functions.scm (pitch-of-note): new function.
4924
4925         * ly/music-functions-init.ly: add \octave and \addquote
4926
4927         * lily/parser.yy (music_function_chord_body): softcode \octave.
4928         (lilypond_header): softcode \addquote
4929
4930 2006-02-03  Jan Nieuwenhuizen  <janneke@gnu.org>
4931
4932         * flower/include/std-vector.hh[STD_VECTOR]: Do not include
4933         array.hh, parray.hh at all.  Getting ready to flip the
4934         configure default.
4935
4936         * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
4937
4938         * lily/source-file.cc (file::get_line): Help binary_search_bounds
4939         a bit.
4940
4941         * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
4942
4943 2006-02-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4944
4945         * flower/include/array.hh: typo. 
4946
4947 2006-02-02  Graham Percival  <gpermus@gmail.com>
4948
4949         * Documentation/user/advanced-notation.itely: doc "\#" in text.
4950
4951 2006-02-03  Jan Nieuwenhuizen  <janneke@gnu.org>
4952
4953         * flower/include/pqueue.hh: Derive from std::vector.
4954
4955         * flower/include/parray.hh: Conform to std::vector interface.
4956         Update users.
4957
4958 2006-02-02  Graham Percival  <gpermus@gmail.com>
4959
4960         * Documentation/topdocs/NEWS.itely: grammar fix from Laura.
4961
4962 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4963
4964         * flower/file-path.cc (is_file): remove if 0 section.
4965
4966         * buildscripts/pfx2ttf.fontforge (err): robustness fix for
4967         selecting afii61352.
4968
4969 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
4970
4971         * flower/include/std-vector.hh (boundary): Oops, reverse.
4972
4973         * flower/string-convert.cc (convert::unsigned_string): Bugfix:
4974         remove superfluous `d'.
4975
4976         * flower/include/std-vector.hh (boundary, top): Detach from class.
4977         Remove empty vector shell.
4978
4979         * flower/include/array.hh (reverse, swap): Detach from class.
4980         Update users.
4981         
4982         * flower/include/std-vector.hh
4983         * flower/include/array.hh (concat): Globally change to insert ().
4984
4985         
4986         * flower/include/std-vector.hh
4987         * flower/include/parray.hh
4988         * flower/include/array.hh (elem, elem_ref): Globally replace by
4989         at ().
4990
4991 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4992
4993         * Documentation/topdocs/NEWS.tely (Top): use ly: prefix for members.
4994
4995         * python/convertrules.py (FatalConversionError.sub_cxx_id):
4996         anticipate on identifier substitutions.
4997
4998 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
4999
5000         * flower/include/std-vector.hh (insert): Remove, replace by
5001         std::vector interface.  Update callers.
5002
5003         * flower/include/array.icc (insert): Change signature to
5004         match std::vector interface.
5005         
5006         * flower/include/array.icc (vector_sort): Bugfix.
5007
5008 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5009
5010         * lily/parser.yy (output_def_head_with_mode_switch): new
5011         production. Result: dashes and underscores may be used in the
5012         \paper block.
5013
5014         * lily/lexer.ll: add DASHED_WORD.  Accept in INITIAL mode.
5015
5016         * python/convertrules.py (conv): oops. One slash too much.
5017
5018 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
5019
5020         * flower/include/std-vector.hh (sort): Remove, replace by
5021         ::vector_sort.  Update callers.
5022
5023         * flower/include/std-vector.hh (slice): Remove.  Update callers.
5024         (sort): Bugfix.
5025
5026         * flower/test-std.cc (vector_sort): New test.
5027
5028 2006-02-01  Graham Percival  <gpermus@gmail.com>
5029
5030         * Documentation/user/putting.itely: fixes from Erik.
5031
5032 2006-02-01  Jan Nieuwenhuizen  <janneke@gnu.org>
5033
5034         * flower/test-std.cc: Add simple unit test for vector migration.
5035
5036         * stepmake/stepmake/test*: Unit test support.
5037
5038         * flower/include/std-vector.hh (del): Remove.  Use erase (),
5039         update callers.
5040
5041         * flower/include/array.hh (begin, end): Add.
5042         (del, get): Remove.
5043
5044 2006-02-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5045
5046         * lily/include/lily-guile-macros.hh (MAKE_SCHEME_CALLBACK): use
5047         std::string not String. 
5048
5049         * lily/context-def.cc (path_to_acceptable_context): use INT_MAX
5050         iso UINT_MAX.
5051
5052         * lily/prob.cc (Prob): copy type_ too.
5053
5054         * lily/lily-guile.cc (mangle_cxx_identifier): new
5055         function. Class_bla::foo_bar_[px] ->
5056         ly:class-bla::foo-bar[?!]. Changes throughout
5057
5058 2006-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5059
5060         * flower/include/guile-compatibility.hh (scm_from_unsigned): add scm_from_unsigned().
5061
5062         * lily/beam.cc (calc_direction): take dir from visible stem in
5063         degenerate case.
5064
5065 2006-01-31  Jan Nieuwenhuizen  <janneke@gnu.org>
5066
5067         * lily/melody-spanner.cc (spanner::calc_neutral_stem_direction):
5068         Fix -1, >=0 boundary checks for unsigned vsize.
5069
5070         * lily/separating-group-spanner.cc (spanner::find_rods): Fix >=0
5071         loop for unsigned vsize.
5072
5073         * configure.in (--enable-std-vector): New option.
5074         (--enable-std-string): On by default.
5075
5076         * flower/include/std-vector.hh: New file.  Enable switch to
5077         std::vector, update client code.
5078
5079 2006-01-30  Graham Percival  <gpermus@gmail.com>
5080
5081         * scm/document-translation.scm: clarify "this context is also
5082         known as".  Thanks, Werner!
5083
5084         * Documentation/user/putting.itely: small fixes from Don Blaheta.
5085
5086         * Documentation/user/invoking.itely: small fix from Don.
5087
5088 2006-01-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5089
5090         * scm/lily.scm (define-scheme-options): rename option
5091         preview-include-book-title to book-title-preview
5092         (define-scheme-options): move force-eps-font-include (from paper
5093         block) to eps-font-include -d option.
5094
5095         * VERSION (PATCH_LEVEL): release 2.7.30
5096
5097         * input/bach-schenker.ly (staffPiano): new file.
5098
5099         * buildscripts/pfx2ttf.fontforge: remove No. glyph from TTF file.
5100
5101         * Documentation/topdocs/NEWS.tely (Top): simplify NEWS entry, add
5102         credits to Nicolas.
5103
5104         * scm/define-markup-commands.scm (epsfile): add scaling to \epsfile.
5105
5106         * ps/lilyponddefs.ps: remove start-system, stop-system,
5107         start-page fluff. This saves putting { } code on the stack, fixing
5108         stack overflows when including EPS files.
5109
5110 2006-01-29  Graham Percival  <gpermus@gmail.com>
5111
5112         * Documentation/user/putting.itely: minor fixes (comments on -devel).
5113
5114 2006-01-29  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5115
5116         * Documentation/topdocs/NEWS.tely (Top): add \parallelMusic news.
5117
5118 2006-01-28  Graham Percival  <gpermus@gmail.com>
5119
5120         * Documentation/user/putting.itely: minor fixes (mostly tab->space).
5121
5122 2006-01-28  Jan Nieuwenhuizen  <janneke@gnu.org>
5123
5124         * input/mutopia/claop.py: Update.
5125
5126 2006-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5127
5128         * input/regression/completion-heads.ly (texidoc): fix.
5129
5130         * lily/staff-symbol-referencer.cc (on_staff_line): idem.
5131
5132         * lily/tie-formatting-problem.cc
5133         (set_ties_config_standard_directions): use abs iso fabs for ints.
5134
5135         * Documentation/topdocs/INSTALL.texi (Top): document ncsb requirement.
5136
5137         * mf/feta-bolletjes.mf (overdone_heads): solfa_noteheight, a
5138         little less than noteheight, to prevent overlaps in chords.
5139
5140         * lily/note-collision.cc (check_meshing_chords): wipe upper FA
5141         head, and fudge stem-attachment.
5142
5143         * scm/lily-library.scm (not): define hash-for-each for guile 1.6
5144
5145         * lily/slur-scoring.cc (get_best_curve): handle opt_idx < 0 case.
5146
5147 2006-01-27  Jan Nieuwenhuizen  <janneke@gnu.org>
5148
5149         * lily/main.cc (main): Debugging aid: catch exceptions.
5150
5151         * flower/std-string.cc (to_string): Robustification.  Fixes midi
5152         output with std::string.
5153
5154 2006-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5155
5156         * Documentation/topdocs/INSTALL.texi (Top): remove libkpathsea notes.
5157
5158 2006-01-26  Jan Nieuwenhuizen  <janneke@gnu.org>
5159
5160         * Fix -DSTRING_UTILS_INLINED.
5161
5162 2006-01-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5163
5164         * VERSION (PATCH_LEVEL): release 2.7.29
5165
5166         * lily/relocate.cc (setup_paths): mingw uses std string too.
5167
5168         * lily/*.cc: various fixes for substr(ARG).
5169
5170         * lily/sustain-pedal.cc (print): 
5171
5172         * flower/file-name.cc (slashify): use std strings.
5173
5174         * flower/string-convert.cc: remove publib.h
5175
5176         * scm/define-markup-commands.scm (verbatim-file): new markup
5177         command \verbatim-file
5178
5179         * Documentation/topdocs/NEWS.tely: fixup URLs
5180
5181         * input/regression/alignment-vertical-manual-setting.ly (Module):
5182         new file.
5183
5184         * lily/align-interface.cc (align_elements_to_extents): overwrite
5185         translations with numbers in alignment-offsets from left bound
5186
5187         * scm/page.scm (make-page-stencil): read X-offset from paper-system.
5188         (page-translate-systems): new function: take into account Y-offset.
5189
5190         * Documentation/topdocs/NEWS.tely (Top): document new features.
5191
5192         * input/regression/page-layout-manual-position.ly (Module): new
5193         file.
5194
5195 2006-01-26  Jan Nieuwenhuizen  <janneke@gnu.org>
5196
5197         * flower/file-path.cc (path::parse_path): Oops.
5198
5199         * Finish std::string interface.  For now, use std:: marker
5200         throughout for easy s/r.
5201
5202 2006-01-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5203
5204         * Documentation/user/putting.itely (Score is a single musical
5205         expression): typo.
5206         (Score is a single musical expression): more typos.
5207
5208         * scm/page.scm (annotate-space-left): thinko.
5209         (annotate-page): more thinkos.
5210
5211 2006-01-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5212
5213         * scm/layout-page-layout.scm (write-page-breaks): record tweaks
5214         for different \score blocks separately.
5215         (post-process-pages): put write-page-layout into paper block.
5216
5217         * lily/output-def.cc (get_parser): new file.
5218
5219         * lily/output-def-scheme.cc (LY_DEFINE): ly:output-def-parser, new
5220         file.
5221
5222         * lily/include/output-def.hh (class Output_def): add parser_ member.
5223
5224         * input/regression/page-layout-twopass.ly (Module): new file.
5225
5226         * scm/lily.scm: remove cpp hack.
5227
5228         * lily/lyric-engraver.cc (get_voice_to_lyrics): use NPOS everywhere.
5229
5230 2006-01-25  Jan Nieuwenhuizen  <janneke@gnu.org>
5231
5232         * GNUmakefile.in (c-clean): New target.
5233
5234         * flower/include/std-string.hh: String/std::string compatibility:
5235         Use NPOS for `not found' (iso -1), use ssize for length () and pos
5236         type.
5237
5238         * flower/rational.cc: 
5239         * flower/include/rational.hh: 
5240
5241         * flower/offset.cc: 
5242         * flower/include/offset.hh: 
5243
5244         * flower/interval.cc: 
5245         * flower/include/interval.hh: 
5246
5247         * flower/string-convert.cc: 
5248         * flower/include/string-convert.hh: Use std::string [interface].
5249         Update callers.
5250
5251 2006-01-25  Heikki Junes  <hjunes@cc.hut.fi>
5252
5253         * Documentation/index.html.in: clean up.
5254
5255 2006-01-25  Graham Percival  <gpermus@gmail.com>
5256
5257         * Documentation/user/putting.itely: another new untested doc section.
5258
5259 2006-01-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5260
5261         * scm/layout-page-layout.scm (write-page-breaks): write
5262         \spacingTweaks #ALIST. Handle grace timing.
5263
5264         * scm/: more imports.
5265
5266         * scm/page.scm (make-page): add footer/header.
5267         (annotate-space-left): revise: only take page argument.
5268         (layout->page-init): new function.
5269
5270         * scm/layout-page-layout.scm (write-page-breaks): preliminary
5271         version of the system/spacing/linebreak hack writing to the output
5272
5273         * lily/prob-scheme.cc (LY_DEFINE): take optional 'key val args in
5274         ly:make-prob.
5275
5276         * lily/grob-scheme.cc (LY_DEFINE): ly:spanner-get-bound ->
5277         ly:spanner-bound
5278
5279 2006-01-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5280
5281         * scm/stencil.scm (annotate-y-interval): move from layout-page-layout.scm
5282
5283         * scm/paper-system.scm (paper-system-annotate): new file. Handle paper-system.
5284
5285         * scm/layout-page-layout.scm (optimal-page-breaks): move all page
5286         handling to page.scm
5287
5288         * lily/prob-scheme.cc (LY_DEFINE): new file.
5289         (LY_DEFINE): functions ly:make-prob , ly:prob-type? , ly:prob-(set-)property(!)
5290
5291         * lily/music-scheme.cc (LY_DEFINE): rewrite get/set property using
5292         prob functions.
5293
5294         * lily/music.cc (derived_mark): derive Music from Prob.
5295
5296         * lily/paper-system.cc (LY_DEFINE): derive from Prob.
5297
5298         * lily/prob.cc (Module): Implement Prob (Property Object), object
5299         with shared and r/w property alists.  
5300
5301         * lily/include/prob.hh (Module): new file. Declare Prob.
5302
5303         * flower/string.cc: remove is_empty().
5304
5305         * flower/include/string.hh (class String): remove String:: qualifier.
5306
5307         * buildscripts/analyse-cxx-log.py: new file. Read compile log to
5308         substitute appropriate functions.
5309
5310         * flower/include/string.hh (class String): remove to_str0 and
5311         is_empty(). S&R everywhere.
5312
5313 2006-01-23  Graham Percival  <gpermus@gmail.com>
5314
5315         * Documentation/user/basic-notation.itely: add hairpin
5316         after-linebreak tweak to commonprop.
5317
5318         * Documentation/user/putting.itely: added two new sections.
5319
5320 2006-01-23  Jan Nieuwenhuizen  <janneke@gnu.org>
5321
5322         * flower/international.cc: 
5323         * flower/include/international.hh: 
5324
5325         * flower/getopt-long.cc: 
5326         * flower/include/getopt-long.hh: Use std::string [interface].
5327         Update callers.
5328
5329         * flower/include/std-string.hh: Oops, bugfix for --disable-std-string.
5330
5331         * stepmake/stepmake/executable-rules.make: Add dependency on
5332         module libraries.
5333
5334 2006-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
5335
5336         * flower/file-path.cc: 
5337         * flower/include/file-path.hh: Use std::string [interface].
5338         Update callers.
5339
5340         * flower/direction.cc: 
5341         * flower/axis.cc: Unused.  Remove.
5342
5343         * configure.in (--enable-std-string): New option.
5344
5345         * flower/std-string.cc: 
5346         * flower/include/std-string.hh: New file.
5347
5348         * flower/file-name.cc[STD_STRING]:
5349         * flower/include/file-name.hh[STD_STRING]: Use it.  Update callers.
5350
5351 2006-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5352
5353         * scm/output-svg.scm (placebox): no GNU coding standards in SVG output. 
5354
5355         * scm/define-markup-commands.scm (with-dimensions):
5356         with-dimensions markup command.
5357
5358         * input/test/font-table.ly: use it.
5359
5360         * lily/open-type-font.cc (glyph_list): new function.
5361
5362         * lily/open-type-font-scheme.cc (LY_DEFINE): ly:otf-glyph-list function.
5363
5364         * lily/ttf.cc: remove ly:font-glyph-list scheme function
5365
5366 2006-01-22  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5367
5368         * ly/music-functions-init.ly (parallelMusic): new music function
5369         for parallel music entry.
5370
5371         * scm/define-music-properties.scm (all-music-properties): new
5372         'void music property
5373
5374         * scm/music-functions.scm (ly:music-message): make public, to be
5375         used in music function definitions
5376
5377         * scm/lily-library.scm (collect-music-for-book): discard music
5378         when the 'void property is set.
5379
5380 2006-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5381
5382         * lily/ttf.cc (LY_DEFINE): store name before destroying face.
5383
5384         * mf/GNUmakefile: idem.
5385
5386         * buildscripts/mf-to-table.py (help): excise fetaXXlist.ly support.
5387
5388         * stepmake/bin/install.py (dest): Only chmod/chown just created directories
5389
5390         * Documentation/user/notation-appendices.itely (The Feta font):
5391         use it.
5392
5393         * input/test/font-table.ly: new file. Generate font table within lily.
5394
5395         * Documentation/user/notation-appendices.itely (The Feta font):
5396         use new font-table.ly file. 
5397
5398         * stepmake/stepmake/install-out-targets.make
5399         (local-install-outfiles): only create directory if
5400         $(INSTALLATION_OUT_DIR) is defined. This fixes install on Gentoo.
5401
5402 2006-01-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5403
5404         * lily/ttf.cc (LY_DEFINE): new function ly:font-glyph-list.
5405
5406         * VERSION (PACKAGE_NAME): release 2.7.28
5407
5408         * scm/framework-ps.scm (write-preamble): use it to pick exactly
5409         the right font from a Mac dfont.
5410         (write-preamble): don't forget directory, only look at files.
5411
5412         This fixes problems with TTF files in dfonts that don't match
5413         their PostScript names.
5414          
5415         * lily/ttf.cc (LY_DEFINE): ly:ttf-ps-name: new routine to extract
5416         PS name from TTF font.
5417
5418         * input/regression/tie-manual.ly: document new feature.
5419
5420         * Documentation/topdocs/NEWS.tely (Top): add tie NEWS.
5421
5422         * VERSION (MY_PATCH_LEVEL): bump to .28
5423
5424         * Documentation/user/basic-notation.itely (Ties): add tie examples
5425         refs.
5426
5427         * lily/tie-formatting-problem.cc (score_ties_configuration):
5428         symmetry penalties for outer ties.
5429
5430 2006-01-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5431
5432         * lily/tie-formatting-problem.cc (generate_configuration) 
5433         (set_manual_tie_configuration): skip non-pair manual
5434         tie-configuration, so you can set individual ties as
5435
5436           #'tie-configuration = #'((7 . 1) #t (-3 . 1))
5437
5438         * input/regression/tie-chord.ly: use generateTiePattern to
5439         simplify file.
5440
5441         * lily/tie-formatting-problem.cc (peak_around): new function.
5442         (score_configuration): use sliding criterion for staff line collisions. 
5443         (score_configuration): idem for dot collisions.
5444         (generate_configuration): use separate stem_gap for gap to stem.
5445
5446         * lily/include/tie-formatting-problem.hh (struct Tie_details):
5447         separate penalty factors for x and y distance.
5448         (struct Tie_details): separate penalties for tip and center line collisions.
5449
5450 2006-01-19 Han-Wen Nienhuys  <hanwen@xs4all.nl>
5451
5452         * lily/tie-formatting-problem.cc (generate_configuration): make
5453         large ties avoid stafflines in the horizontal section.
5454         (score_configuration): use softcoded penalties
5455         (score_aptitude): idem.
5456
5457         * lily/tie-helper.cc (from_grob): softcode tie details
5458
5459         * lily/staff-symbol-referencer.cc (on_staff_line): new function
5460
5461         * lily/staff-symbol-referencer.cc (on_line): rename from
5462         on_staffline 
5463
5464 2006-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5465
5466         * ly/music-functions-init.ly: remove duplicate tag.
5467
5468         * lily/include/*.hh: GCC 4.1 fixes.
5469
5470 006-01-16  Erlend Aasland  <erlenda@gmail.com>
5471
5472         * Documentation/user/global.itely: fix typos; @bugs -> @refbugs
5473
5474         * scm/define-music-types.scm: fix bug in desc. string
5475         for OverrideProperty
5476
5477 2006-01-15 Erik Sandberg  <mandolaerik@gmail.com>
5478
5479         * scripts/lilypond-book.py: bugfix
5480
5481         * scm/define-music-types.scm: fix typos.
5482
5483 2006-01-14  Graham Percival  <gpermus@gmail.com>
5484
5485         * Documentation/user/ basic-notation.itely, global.itely,
5486         advanced-notation.itely, instrument-notation.itely: small
5487         additions (bugs and commonly tweaked properties).
5488
5489 2006-01-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5490
5491         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): generic
5492         detection of mingw build.
5493         (MINGW_BUILD): opps.
5494
5495 2006-01-12  Jan Nieuwenhuizen  <janneke@gnu.org>
5496
5497         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Add
5498         i686-mingw32.
5499
5500 2006-01-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5501
5502         * scm/music-functions.scm (skip->rest): add skip->rest
5503
5504 2006-01-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5505
5506         * lily/font-config.cc (init_fontconfig): call FcConfigBuildFonts()
5507         explicitly.
5508
5509         * lily/font-config-scheme.cc (LY_DEFINE): also display font and
5510         config dirs. Aids debugging. 
5511         (display_config): also display config files.
5512
5513 2006-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5514
5515         * VERSION: release 2.7.27
5516
5517         * lily/bar-line.cc (calc_bar_size): inspect staff->extent (Y_AXIS)
5518         for determining bar size.
5519
5520         * lily/staff-symbol.cc (print): place lines at distance line-positions
5521
5522         * scm/define-grob-properties.scm (all-user-grob-properties): add
5523         line-positions.
5524
5525         * lily/staff-symbol.cc (height): new function.
5526
5527         * input/regression/staff-line-positions.ly:  new file.
5528
5529 2006-01-06  Graham Percival  <gpermus@gmail.com>
5530
5531         * input/test/add-staccato.ly: remove reference to old file.
5532
5533 2006-01-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5534
5535         * scripts/lilypond-book.py (invokes_lilypond): allow . in path to
5536         lilypond binary too.
5537
5538 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5539
5540         * make/mutopia-rules.make (Module): use LILYPOND_BINARY
5541
5542 2006-01-06  Jan Nieuwenhuizen  <janneke@gnu.org>
5543
5544         * scripts/midi2ly.py: Bugfix: Declare datadir.
5545
5546         * make/ly-rules.make:
5547         * make/mutopia-rules.make: Use LILYPOND_BINARY (WAS: LILYPOND, but
5548         that seems to be gone). Fixes make web.
5549
5550         * The grand 2005-2006 replace.
5551
5552         * VERSION (MY_PATCH_LEVEL): Stay on .26 for now.
5553
5554 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5555
5556         * make/lilypond-vars.make: set LILYPOND_BINARY variable
5557         (LILYPOND_BOOK_LILYPOND_FLAGS): new variable
5558         LILYPOND_BOOK_LILYPOND_FLAGS to hold system dependent settings,
5559         like -dgs-font-load.
5560
5561         * Documentation/user/GNUmakefile ($(outdir)/interfaces.itexi):
5562         remove absolute path to lilypond binary.
5563         
5564 2006-01-05 Pedro Kroeger    <kroeger@pedrokroeger.net>
5565
5566         * configure.in (NCSB_DIR): fix --with-ncsb-dir option.
5567
5568 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5569
5570         * make/lilypond-vars.make: support LILYPOND_EXTERNAL_BINARY variable.
5571
5572         * mf/GNUmakefile: remove broken dvips map symlink.
5573
5574 2006-01-04  Jan Nieuwenhuizen  <janneke@gnu.org>
5575
5576         * lily/main.cc: 
5577         * configure.in: Cosmetic fixes.
5578
5579 2006-01-04  Mats Bengtsson  <mabe@s3.kth.se>
5580
5581         * Documentation/user/music-glossary.tely (Pitch names): Added
5582         Spanish pitch names and durations, thanks to Ernesto Gancedo
5583
5584 2006-01-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5585
5586         * scm/lily.scm (define-scheme-options): use quasi-quote for option
5587         init. Fixes verbose printing of .scm files.
5588
5589         * stepmake/aclocal.m4: add spaces before - options.
5590         
5591 2006-01-03  Jan Nieuwenhuizen  <janneke@gnu.org>
5592
5593         * lily/relocate.cc (setup_paths): Bugfix: do not store result
5594         of path search in local block variable.
5595
5596 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5597
5598         * configure.in (NCSB_DIR): --enable-ncsb-dir
5599         (LINK_GXX_STATICALLY): denko.
5600
5601         * mf/GNUmakefile ($(NCSB_TTFS)): NCSB_DIR iso. NCSB_PATH. 
5602
5603         * configure.in (LINK_GXX_STATICALLY): --enable-ncsb-path option. 
5604         use locate to find c059033l.pfb. 
5605         
5606 2006-01-02  Jan Nieuwenhuizen  <janneke@gnu.org>
5607
5608         * lily/tie-formatting-problem.cc
5609         (problem::generate_base_chord_configuration): Use my_round (was
5610         round).
5611
5612         * lily/source-file.cc (file::get_counts)[!HAVE_MBRTOWC]: Bugfix,
5613         do not invoke mbrtowc.
5614
5615         * lily/relocate.cc (setup_paths): Add more debugging verbosity.
5616
5617 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5618
5619         * scm/lily.scm (lilypond-all): oops. remove debugging hack.
5620
5621 2005-01-02  Heikki Junes  <hjunes@cc.hut.fi>
5622
5623         * Documentation/user/invoking.itely (svg): revise.
5624
5625 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5626
5627         * lily/lexer.ll: use sourcefilename iso. renameinput.
5628
5629 2006-01-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5630
5631         * mf/GNUmakefile ($(NCSB_TTFS)): revise rule. Create
5632         <PostScriptName>.ttf instead of c059XXXttf.
5633
5634         * lily/program-option.cc (LY_DEFINE): special support for
5635         --verbose, so it works before option init too.
5636  
5637         * mf/GNUmakefile (local-install): oops.
5638
5639         * lily/lyric-hyphen.cc (print): oops.
5640
5641         * buildscripts/pfx2ttf.fontforge: new file.
5642         
5643         * mf/GNUmakefile (NCSB_PATH): add vars for NCSB.
5644         ($(outdir)/%.ttf): new rule. 
5645
5646         * scm/define-grobs.scm (all-grob-descriptions): add font-interface
5647         to LyricHyphen.
5648
5649         * lily/lyric-hyphen.cc (print): multiply hyphen height by
5650         font-size
5651
5652 2005-12-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5653
5654         * VERSION: release 2.7.26
5655         
5656         * mf/GNUmakefile (install-fc-cache): remove old font.cache-1 files.
5657
5658 2005-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5659
5660         * lily/font-config.cc (init_fontconfig): verbosity.
5661
5662         * THANKS: add Muziekacademie Lede. 
5663
5664         * scripts/musicxml2ly.py (print_voice_definitions): new function 
5665         (print_score_setup): new function
5666         (convert): read part definition to output staves properly.
5667
5668         * python/musicxml.py (Measure.get_notes): new class. Wrap lists of
5669         Music_xml notes.
5670
5671         * python/musicexp.py (Output_printer.__init__): use _ in data
5672         members.
5673         (Output_printer.unformatted_output): new function: no formatting,
5674         but count braces.
5675         (Duration.get_length): remove isinstance() checks for
5676         Output_printer everywhere.
5677
5678         * input/regression/lyrics-bar.ly (texidoc): add
5679         Separating_line_group_engraver.
5680
5681 2005-12-29  Jan Nieuwenhuizen  <janneke@gnu.org>
5682
5683         * lily/relocate.cc (framework_relocation): New function,
5684         factored from set_relocation ().
5685         (prefix_relocation): Rename from set_relocation ().
5686         (setup_paths): Use it.
5687
5688 2005-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5689
5690         * scm/*.scm: use LEFT/RIGHT/UP/DOWN etc. iso. magical
5691         numbers. Patch by Erlend Aasland.
5692
5693 2005-12-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5694
5695         * lily/font-config.cc (init_fontconfig): print warning if cache
5696         file is not existant.
5697
5698         * lily/main.cc: don't use #ifdef but #if
5699
5700 2005-12-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5701
5702         * lily/grob-property.cc (internal_set_property): don't abort on
5703         calculation-in-progress.
5704
5705         * lily/beam.cc (get_default_dir): robustness: don't divide by zero.
5706
5707         * lily/tuplet-bracket.cc (calc_control_points): oops: typo. Read
5708         connect-to-neighbor property not connect-to-other
5709
5710         * lily/program-option.cc (LY_DEFINE): remove Protected_scm global variable.
5711         (LY_DEFINE): oops. don't forget protection.
5712
5713         * flower/parse-afm.cc (Module): strip AFM handling completely.
5714
5715         * lily/stencil-expression.cc: idem.
5716
5717         * lily/grob-interface-scheme.cc (LY_DEFINE): idem.
5718
5719         * lily/function-documentation.cc (ly_add_function_documentation):
5720         use static member iso. Protected_scm
5721
5722         * lily/main.cc: use ifdef ARGV0_RELOCATION iso. MINGW
5723
5724         * config.make.in (prefix): remove HAVE_KPATHSEA_SO
5725
5726 2005-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
5727
5728         * lily/relocate.cc (set_env_dir): New function.
5729         (set_relocation): Use it to fix setting PANGO_PREFIX.
5730
5731 2005-12-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5732
5733         * input/regression/stem-direction-context.ly: remove rest.
5734
5735         * lily/melody-engraver.cc (process_music): restart for bar lines.
5736         (acknowledge_slur): restart for slurs.
5737
5738 2005-12-27  Heikki Junes  <hjunes@cc.hut.fi>
5739
5740         * Documentation/user/invoking.itely: describe how to view SVG 
5741         output using Inkscape which replace embedded fonts with OTF fonts.
5742
5743 2005-12-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5744
5745         * lily/relocate.cc (set_relocation): set PANGO_PREFIX
5746
5747 2005-12-23  Jan Nieuwenhuizen  <janneke@gnu.org>
5748
5749         * lily/melody-engraver.cc (class Melody_engraver): Remove lying
5750         comment.
5751
5752 2005-12-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5753
5754         * VERSION (PACKAGE_NAME): release 2.7.25
5755
5756         * Documentation/topdocs/NEWS.tely (Top): document new feature.
5757
5758         * input/regression/stem-direction-context.ly: new file.
5759
5760         * lily/relocate.cc (set_relocation): add PANGO_PREFIX
5761
5762         * lily/melody-engraver.cc (acknowledge_stem): restart MelodyItem
5763         on rest.
5764
5765         * ly/engraver-init.ly: add Melody_engraver
5766
5767         * lily/beam.cc (calc_direction): use default-direction
5768         iso. get_default_direction()
5769
5770         * scm/define-grob-properties.scm (all-user-grob-properties): add
5771         default-direction property.
5772
5773         * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem.
5774
5775         * lily/stem.cc (calc_default_direction): remove
5776         Stem::get_default_direction, use default-direction with callback
5777         instead.
5778
5779         * lily/melody-spanner.cc (calc_neutral_stem_direction): 
5780
5781         * lily/melody-engraver.cc: new file. Acknowledge stems for
5782         interpolated stem directions. 
5783
5784         * lily/melody-spanner.cc: new file. Interpolate stem directions.
5785
5786         * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem
5787
5788         * lily/slur-configuration.cc (fit_factor): more robust check for
5789         point in curve X-extent.
5790
5791         * lily/slur.cc (outside_slur_callback): return offset_scm, not 0.
5792         (outside_slur_callback): check for 'outside avoidance.
5793
5794         * lily/slur-configuration.cc (score_extra_encompass): don't use
5795         bound->column() == avoid->column() for checking extents, as this
5796         doesn't work for accidentals. 
5797
5798         * lily/slur-engraver.cc (acknowledge_extra_object): remove
5799         DynamicText hardcoding.
5800
5801         * lily/slur-scoring.cc (enumerate_attachments): robustness: don't
5802         crash if bound stem is NULL
5803
5804         * lily/piano-pedal-performer.cc: patch by MWD for enabling piano
5805         pedals.
5806
5807 2005-12-22  Graham Percival  <gpermus@gmail.com>
5808
5809         * scm/define-markup-commands.scm: typo.  @code{\raise}
5810         => @code{\\raise}.
5811
5812         * darwin.patch: now used again, includes a
5813         required patch from fink.
5814
5815 2005-12-21  Heikki Junes  <hjunes@cc.hut.fi>
5816
5817         * po/TODO: mention gtranslator along with kbabel.
5818         * po/fi.po: update translations.
5819
5820 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
5821
5822         * lily/relocate.cc (setup_paths): Bugfix.
5823
5824 2005-12-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5825
5826         * lily/slur-configuration.cc (score_extra_encompass): don't use
5827         "avoid" choice for avoid-slur.
5828
5829         * stepmake/bin/install.py (dest): don't create existing dir.
5830
5831 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
5832
5833         * stepmake/bin/install.py: Remove file before copying.
5834
5835         * config.make.in: 
5836         * stepmake/aclocal.m4: Do not substitute INSTALL.
5837
5838 2005-12-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5839
5840         * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
5841         depend on link-tree.
5842
5843         * lily/relocate.cc (setup_paths): only check path for non-absolute
5844         dir without directory part.
5845
5846         * flower/file-name.cc (is_absolute):  new method.
5847         (is_absolute): check root_ too.
5848
5849 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
5850
5851         * lily/relocate.cc (setup_paths) [__MINGW32__]: Comment-out broken
5852         relocation code.  Oops, don't comment out too much.
5853
5854         * stepmake/stepmake/generic-vars.make (INSTALL): Assign INSTALL_PY
5855         iso itself.
5856
5857         * lily/relocate.cc [HAVE_GETTEXT]: Include libintl.h.  Fixes mingw
5858         compile.
5859
5860 2005-12-20  Jan Nieuwenhuizen  <janneke@gnu.org>
5861
5862         * .cvsignore: Add install-sh.
5863
5864         * autogen.sh (srcdir): Typo.
5865
5866 2005-12-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5867
5868         * autogen.sh (srcdir): urg. Touch install-sh.
5869
5870         * stepmake/bin/install-sh (Module): remove.
5871
5872         * stepmake/stepmake/generic-vars.make (INSTALL): add $(INSTALL).
5873
5874         * lily/include/relocate.hh: new file.
5875
5876         * lily/relocate.cc: new file. Contain relocation logic.
5877
5878         * lily/main.cc (setup_paths): fix: LILYPOND_RELOCATE_PREFIX.
5879         (main): read LILYPOND_VERBOSE as the first thing.
5880
5881         * stepmake/aclocal.m4: remove INSTALL variable.
5882
5883         * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
5884         separate target for making font symlinks.
5885         (documentation-dir): use $(if $(findstring )) for switching off
5886         Documentation.
5887
5888         * stepmake/stepmake/help2man-vars.make (OUT_DIST_FILES): only do
5889         something if DOCUMENTATION is no.
5890
5891 2005-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5892
5893         * VERSION: release 2.7.24
5894
5895         * lily/script-column-engraver.cc (stop_translation_timestep):
5896         delay adding to script-column.
5897
5898         * lily/tuplet-bracket.cc (print): suicide if no control-points. 
5899
5900         * python/convertrules.py (conv): rule for number-visibility
5901
5902         * lily/slur-configuration.cc (score_extra_encompass): different
5903         distance measure for avoid and inside avoidance.
5904         (score_extra_encompass): use 1/(distance+eps) as penalty.
5905
5906         * lily/slur-scoring.cc (generate_avoid_offsets): use 'inside
5907         encompass objects for generating slur curves.
5908
5909         * lily/slur.cc: use details iso. slur-details property.
5910
5911         * input/regression/slur-tuplet.ly: new file.
5912
5913         * lily/slur-engraver.cc (acknowledge_tuplet_number): new function.  
5914
5915         * flower/include/offset.hh (class Offset): new operator /=
5916
5917         * lily/tuplet-number.cc (print): new file, new interface.
5918
5919         * scm/define-grob-properties.scm (all-user-grob-properties):
5920         remove number-visibility property.
5921
5922         * lily/tuplet-bracket.cc (calc_control_points): new function
5923         (calc_connect_to_neighbors): new function.
5924         (print): remove text handling for tuplet numberdef.
5925
5926         * lily/tuplet-engraver.cc (struct Tuplet_description): create
5927         TupletNumbers too. 
5928
5929         * lily/lily-guile.cc (robust_scm2booldrul): new function
5930
5931         * scm/define-grobs.scm (all-grob-descriptions): new grob TupletNumber
5932
5933         * lily/tuplet-bracket.cc (calc_position_and_height): use
5934         staff-padding to control whether tuplet brackets are over staves.
5935
5936         * lily/grob.cc (suicide): clear dim_caches_.
5937
5938         * lily/dimension-cache.cc (clear): new function.
5939
5940         * lily/grob.cc (extent): swap order of min-extent and extent
5941         calculations. This fixes hara kiri staves. 
5942
5943 2005-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
5944
5945         * lily/main.cc: Nitpick: relocation is not based on path, but on
5946         directory (location).
5947
5948 2005-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5949
5950         * lily/main.cc (setup_paths): read LILYPOND_RELOCATE_PREFIX
5951
5952         * stepmake/stepmake/install-targets.make (local-uninstall): idem.
5953
5954         * stepmake/stepmake/install-out-targets.make (local-install-outfiles): idem.
5955
5956         * stepmake/stepmake/help2man-targets.make (install-help2man): idem.
5957
5958         * stepmake/stepmake/generic-vars.make (Module): idem.
5959
5960         * stepmake/stepmake/executable-targets.make (default): use it.
5961
5962         * stepmake/bin/install.py (create_dir): new file. Replace install-sh.
5963
5964         * make/GNUmakefile: don't install make rules.
5965
5966         * lily/main.cc (setup_paths): don't inspect $PATH for argv0 with
5967         slashes.
5968         (prepend_env_path): more verbosity.
5969
5970 2005-12-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5971
5972         * GNUmakefile.in: add dir argument for find command.
5973
5974         * lily/parser.yy (bass_figure): set_spot() for bass figures. This
5975         fixes weird line numbers for point & click.
5976
5977         * lily/source-file.cc (get_counts): init line/column/char counts.
5978
5979 2005-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5980
5981         * lily/main.cc: remove ARGV0_RELOCATION, instead use --relocate.
5982
5983 2005-12-16  Graham Percival  <gpermus@gmail.com>
5984
5985         * Documentation/user/basic-notation.itely, advanced-notation.itely:
5986         minor fixes from Fredric.  Thanks!
5987
5988 2005-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5989
5990         * ly/music-functions-init.ly: add \bar and \clef music function 
5991
5992         * lily/lily-lexer.cc: idem.
5993
5994         * lily/parser.yy (FIXME): remove BAR and CLEF.
5995
5996 2005-12-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5997
5998         * Documentation/topdocs/NEWS.tely (Top): doc string argument change.
5999
6000         * lily/parser.yy (Generic_prefix_music_scm): allow strings as
6001         function arguments too
6002
6003         * lily/main.cc (set_relocation): new function.
6004
6005         * scripts/musicxml2ly.py (convert): add \version
6006
6007         * lily/tie.cc: remove get_default_attachments()
6008
6009         * VERSION (PACKAGE_NAME): release 2.7.23
6010         
6011         * lily/chord-tremolo-engraver.cc (acknowledge_stem): use
6012         ultimate_music_cause(). This fixes core dumps in unfold-all-repeats.ly
6013
6014         * Documentation/topdocs/NEWS.tely (Top): document new feature.
6015
6016         * lily/tie-formatting-problem.cc (score_ties): new function
6017         (get_variations): new function. Try flipping dirs for collisions.
6018         (generate_optimal_chord_configuration): new function. 1-opt search
6019         for better configuration.
6020
6021         * lily/tie-configuration.cc: new file.
6022
6023         * lily/tie.cc: junk Tie::get_configuration()
6024
6025         * lily/tie-formatting-problem.cc (score_ties_aptitude): new function.
6026         (score_ties_configuration): new function.
6027         (generate_ties_configuration): new function.
6028         (generate_base_chord_configuration): new function.
6029         (set_ties_config_standard_directions): Move body from tie-column-format.cc 
6030         (set_manual_tie_configuration): Move body from tie-column-format.cc 
6031
6032         * input/regression/tie-dot.ly: new file.
6033
6034         * lily/tie-formatting-problem.cc (score_configuration): score
6035         tie/dot collisions.
6036
6037         * lily/tie-helper.cc (get_transformed_bezier): new function
6038
6039         * Documentation/topdocs/NEWS.tely (Top): strip out-www.
6040
6041         * stepmake/stepmake/python-module-vars.make (SHARED_FLAGS): use
6042         -undefined suppress iso. -framework Python 
6043
6044         * scm/define-grobs.scm (all-grob-descriptions): set
6045         springs-and-rods (thanks Joe Neeman!)
6046
6047 2005-12-12  Nicolas Sceaux  <nicolas.sceaux@free.fr>
6048
6049         * input/no-notation/display-lily-tests.ly (test): 
6050         * scm/display-lily.scm (tag->lily-string): the syntax for tags has
6051         changed from \tag #'(a b) to \tag #'a \tag #'b
6052
6053 2005-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6054
6055         * Documentation/topdocs/NEWS.tely: strip out-www.
6056
6057         * lily/include/grob-interface.hh: include lily-guile.hh not libguile.h
6058
6059         * config.make.in (AR): add AR and RANLIB
6060
6061         * flower/libc-extension.cc: include cassert
6062
6063         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): more robust
6064         darwin check.
6065
6066 2005-12-11  Graham Percival  <gpermus@gmail.com>
6067
6068         * stepmake/stepmake/generic-vars.make: define DARWIN_BUILD.
6069
6070         * stepmake/stepmake/python-modules-vars.make: define
6071         SHARED_FLAGS for OSX.  Thanks Johannes Schindelin!
6072
6073         * THANKS: added Johannes Schindelin.
6074
6075 2005-12-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6076
6077         * python/midi.c (pymidi_parse): use memcmp() iso. strcmp().
6078
6079         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
6080         Span_arpeggio_engraver, add Tweak_engraver to Score context. 
6081
6082         * lily/parser.yy: reorganize file layout.
6083
6084         * ly/music-functions-init.ly: add tweak music function.
6085
6086         * lily/grob-info.cc (ultimate_music_cause): new function:
6087         recursively lookup causes. 
6088
6089         * lily/parser.yy (chord_body_element): allow music functions for
6090         post-events, allow music functions for chord elements. 
6091  
6092         * lily/font-config-scheme.cc (display_fontset): add cast.
6093
6094         * python/convertrules.py (FatalConversionError.sub_syms): \tag
6095         #'(a b) -> \tag #'a \tag #'b rule.
6096
6097         * python/musicexp.py (Output_printer.dump_version): new function
6098
6099 2005-12-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6100
6101         * lily/parser.yy (FIXME): remove \tag
6102         (FIXME): remove tag_music() function.
6103
6104         * lily/lily-lexer.cc: remove \tag
6105
6106         * ly/music-functions-init.ly: define music-function "tag"
6107
6108         * lily/parser.yy (chord_body_element): allow tags in chord bodies.
6109
6110 2005-12-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6111
6112         * VERSION (PATCH_LEVEL): release 2.7.22
6113
6114         * input/regression/lyric-hyphen-retain.ly: renew.
6115
6116         * scm/define-grobs.scm (all-grob-descriptions): add LyricSpace
6117         grob
6118
6119         * lily/lyric-hyphen.cc (set_spacing_rods): use minimum-distance
6120         iso. minimum-length property for rods.
6121
6122         * lily/hyphen-engraver.cc (acknowledge_lyric_syllable): create
6123         LyricSpace item to keep lyrics spaced apart.
6124
6125         * ly/engraver-init.ly: remove Separating_line_group_engraver
6126
6127         * Documentation/user/music-glossary.tely: do setfilename before
6128         music-glossary.
6129
6130 2005-12-07  Heikki Junes  <hjunes@cc.hut.fi>
6131
6132         * Documentation/user/lilypond-book.itely: use `,´ after xref:
6133         See xref documentation, for example.
6134
6135 2005-12-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6136
6137         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): use
6138         pending_skip iso. ly_voice[-1]
6139         (main): add if __main__ for debugging.
6140
6141         * python/musicxml.py (Accidental.__init__): new class.
6142
6143         * scripts/musicxml2ly.py (progress): new function
6144         (musicxml_key_to_lily): don't barf on modeless keys.
6145         (create_skip_music): new function.
6146         (musicxml_spanner_to_lily_event): new function. Handle beams too.
6147         (musicxml_note_to_lily_main_event): new function.
6148
6149         * python/musicexp.py (Music.__init__): add comment field.
6150         (NestedMusic.append): new routine.
6151         (SequentialMusic.print_ly): print comment.
6152         (ArpeggioEvent.ly_expression): new class
6153         (BeamEvent.ly_expression): new class
6154         (NoteEvent.__init__): support for cautionary/forced accs.
6155
6156         * lily/lookup.cc (slur): normal order for array loop.
6157
6158         * scm/framework-ps.scm (dump-stencil-as-EPS): set left X of bbox
6159         to 0.0.
6160
6161         * ly/engraver-init.ly: set bar-size, so bar-lines aren't
6162         collapsed.
6163
6164 2005-12-06 Erik Sandberg  <mandolaerik@gmail.com>
6165
6166         * scm/music-functions.scm: Make phrasing slurs follow voice direction
6167
6168         * scripts/lilypond-book.py: Introduce option
6169             --preserve-line-breaks, for usage with srcltx
6170
6171 2005-12-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6172
6173         * scm/output-lib.scm (print-circled-text-callback): draw circle
6174         around text using make-circle-markup.
6175
6176         * Documentation/user/*: strip out-www from file names.
6177
6178 2005-12-05  Heikki Junes  <hjunes@cc.hut.fi>
6179
6180         * Documentation/user/lilypond.tely (direntry): remove empty lines;
6181         fixes invalid info entry issue with makeinfo 4.8 in debian sid.
6182
6183 2005-12-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6184
6185         * Documentation/user/GNUmakefile: idem.
6186
6187         * Documentation/user/macros.itexi: strip out-www
6188
6189         * python/rational.py: python 2.3 compat.
6190
6191         * VERSION (PATCH_LEVEL): release 2.7.21
6192
6193         * scripts/musicxml2ly.py (NonDentedHeadingFormatter.format_headi):
6194         option formatting, lilypond style.
6195
6196         * python/musicexp.py: grab from Ikebana: a library for composing
6197         ly music expressions. 
6198         (Output_printer): class for advanced .ly printing.
6199         (eg. tupletting) 
6200
6201         * python/musicxml.py: new file. Read MusicXML MiniDOM tree, and
6202         convert to pythonesque structure.
6203
6204         * python/rational.py: PD rational number class.
6205
6206         * Documentation/user/converters.itely (Invoking musicxml2ly):  new node.
6207
6208 2005-12-04  Erik Sandberg  <mandolaerik@gmail.com>
6209
6210         * lily/part-combine-iterator.cc: Minor bugfix
6211         
6212         * THANKS: Update bughunters
6213
6214 2005-12-02  Werner Lemberg  <wl@gnu.org>
6215
6216         * mf/README: Document process for proper mf2pt1 conversion.
6217
6218         * mf/feta-beugel.mf (draw_brace): Fix path to assure clean
6219         overlapping.
6220
6221         * mf/feta-harmonica.mf: Removed.  Unused.
6222
6223 2005-12-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6224
6225         * scripts/lilypond-book.py (do_file): fix thinkos.
6226
6227 2005-12-01  Jan Nieuwenhuizen  <janneke@gnu.org>
6228
6229         * lily/GNUmakefile ($(outdir)/FlexLexer.h):
6230         ($(outdir)/parser.cc): 
6231         ($(outdir)/lexer.cc): Bugfix: depend on config.h.
6232
6233 2005-11-30  Pedro Kröger  <kroeger@pedrokroeger.net>
6234
6235         * ly/titling-init.ly (tagline): it should be a space between
6236         "Music engraving by LilyPond" and the version number.
6237
6238 2005-12-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6239
6240         * VERSION (PACKAGE_NAME): release 2.7.20
6241
6242 2005-11-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6243
6244         * scm/define-markup-commands.scm (pad-to-box): new markup command.
6245
6246         * scm/define-grobs.scm (all-grob-descriptions): set thickness to
6247         1.0.
6248         (all-grob-descriptions): don't shift RehearsalMark arbitrarily.
6249
6250 2005-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6251
6252         * configure.in (LINK_GXX_STATICALLY): remove kpathsea checks.
6253
6254         * kpath-guile/: remove directory
6255
6256         * scm/kpathsea.scm (ly:kpathsea-expand-variable): new
6257         file. Encapsulate kpathsea using commandline tools.
6258
6259         * lily/all-font-metrics.cc (kpathsea_find_file): use (scm
6260         kpathsea) module.
6261
6262 2005-11-29  Mats Bengtsson  <mabe@s3.kth.se>
6263
6264         * Documentation/user/advanced-notation.itely (Setting automatic
6265         beam behavior): Correct a few typos. Thanks to David Bobroff.
6266
6267         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use
6268         \usepackage instead of \RequirePackage. Thanks to Bernard Hurley.
6269
6270 2005-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6271
6272         * scripts/*.py: gmane address for bugs.
6273
6274 2005-11-28 Pal Benko <benkop@freestart.hu>
6275         
6276         * make/ly-rules.make: add -f switch to mv
6277
6278         * scm/output-libs.scm: add new bar symbol "." for punctus divisionis
6279
6280         * lily/bar-line.cc: interpret it
6281
6282 2005-11-28  Jan Nieuwenhuizen  <janneke@gnu.org>
6283
6284         * configure.in (--disable-documentation): New switch.
6285
6286         * GNUmakefile.in: Use it.
6287
6288         * stepmake/aclocal.m4: Use AC_ARG_ENABLE for kpatsea.
6289
6290 2005-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6291
6292         * scripts/lilypond-book.py (do_file): search chunks for
6293         \\begin{document}
6294
6295         * GNUmakefile.in: add copy step in between so we can lose the
6296         out-www directories.
6297
6298 2005-11-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6299
6300         * lily/pango-font.cc (pango_item_string_stencil): put
6301         geometry.width into glyph-string too.
6302
6303 2005-11-26  Nicolas Sceaux  <nicolas.sceaux@free.fr>
6304
6305         * scm/define-music-display-methods.scm (RevertProperty):
6306         (OverrideProperty): Use grob-property-path property, a list of
6307         symbols, instead of grob-property, which used to be a single
6308         symbol.
6309         (BassFigureEvent): a figure can be a plain number, not necessarily a
6310         markup.
6311
6312 2005-11-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6313
6314         * VERSION: release 2.7.19
6315         
6316         * lily/figured-bass-engraver.cc (process_music): check
6317         figuredBassCenterContinuations first.
6318
6319         * scm/translation-functions.scm (format-bass-figure): make double
6320         sharp larger. 
6321
6322         * lily/mark-engraver.cc: read rehearsalMarkAlignSymbol to
6323         determine X-parent.
6324
6325         * lily/system-start-delimiter-engraver.cc: move from
6326         Nested_system_start_delimiter_engraver, rename
6327         Nested_system_start_delimiter_engraver ->
6328         System_start_delimiter_engraver.
6329
6330         * lily/nested-system-start-delimiter-engraver.cc (from_list): read
6331         bracket type from hierarchy.
6332
6333 2005-11-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6334
6335         * lily/rest.cc (y_offset_callback): read staff-position.
6336
6337         * scm/define-grob-properties.scm (all-user-grob-properties): don't
6338         mark after-line-breaking-callback as internal.
6339
6340         * lily/self-aligment-interface.cc: remove self-[XY]-offset.
6341
6342 2005-11-25  Werner Lemberg  <wl@gnu.org>
6343
6344         * mf/feta-banier.mf ("d3"): Make `flare' equal to `staff_space'.
6345
6346 2005-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6347
6348         * stepmake/bin/add-html-footer.py (do_file): add google
6349
6350         * lily/staff-symbol-engraver.cc (process_music): bugfix: stop
6351         staff if first_start_ is true.
6352
6353 2005-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6354
6355         * scripts/midi2ly.py (split_track): add __repr__ members.
6356         (track_first_item): only return Item if not None. This fixes a
6357         problem when dumping a track that starts with an empty channel.
6358
6359         * python/midi.c: doc module.
6360
6361 2005-11-22  Mats Bengtsson  <mabe@s3.kth.se>
6362
6363         * Documentation/user/global.itely (Creating MIDI files): Fix
6364         compilation problem.
6365
6366 2005-11-22  Graham Percival  <gpermus@gmail.com>
6367
6368         * Documentation/user/basic-notation.itely: clarify dynamic
6369         padding text.
6370
6371         * Documentation/user/advanced-notation.itely: add unicode
6372         escape control example, whatever that is.  :)
6373
6374         * Documentation/user/global.itely: added "removing dynamics
6375         from MIDI" code.
6376
6377 2005-11-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6378
6379         * VERSION (PATCH_LEVEL): release 2.7.18
6380
6381         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): replace
6382         System_start_delimiter_engraver by
6383         Nested_system_start_delimiter_engraver.
6384
6385         * lily/nested-system-start-delimiter-engraver.cc (struct
6386         Bracket_nesting_node): new class.
6387         (struct Bracket_nesting_group): new class
6388         (struct Bracket_nesting_staff): new class.
6389         (process_music): create hierarchy of grobs. This allows separate
6390         tuning of different SSDs. 
6391
6392         * scm/define-grobs.scm (all-grob-descriptions): new Grob SystemStartSquare
6393         (all-grob-descriptions): remove old NestedSystemStartDelimiter.
6394
6395 2005-11-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6396
6397         * lily/side-position-interface.cc (aligned_side): multiply
6398         staff_radius by 2.
6399
6400         * lily/script-engraver.cc (make_script_from_event): allow setting
6401         values to '()
6402
6403 2005-11-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6404
6405         * lily/system-start-delimiter.cc (line_bracket): don't shorten height.
6406
6407         * scm/define-grobs.scm (all-grob-descriptions): new grob
6408         NestedSystemStartDelimiter.
6409
6410         * input/regression/system-start-heavy-bar.ly: new file.
6411
6412         * lily/nested-system-start-delimiter-engraver.cc: new file.
6413
6414         * lily/nested-system-start-delimiter.cc: new file.
6415
6416         * input/regression/system-start-nesting.ly: new file.
6417
6418         * scm/define-grobs.scm (all-grob-descriptions): use X side
6419         positioning for positioning braces for nested contexts.
6420
6421         * lily/system-start-delimiter.cc (print): don't divide extent by
6422         staff_space.
6423         (print): use style iso. glyph.
6424         (staff_bracket): translate glyph inside routine already.
6425
6426 2005-11-18  Michael Welsh Duggan <md5i@cs.cmu.edu>
6427
6428         * lily/vaticana-ligature-engraver.cc: fixed 2 typos in glyph
6429         names.
6430
6431 2005-11-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6432
6433         * scm/define-context-properties.scm
6434         (all-user-translation-properties): rename figuredBassFormatter
6435         from newFiguredBassFormatter.
6436
6437         * scm/define-grobs.scm (all-grob-descriptions): move from NewBassFigure
6438
6439         * lily/figured-bass-engraver.cc: move from new-figured-bass-engraver.cc
6440
6441         * lily/stem.cc (calc_stem_info): trigger beaming calculation.
6442
6443         * lily/beam.cc (calc_beaming): new function.
6444         (calc_shorten): new function.
6445
6446         * THANKS: add Edward Neeman.
6447
6448         * input/regression/accidental-clef-change.ly: new file.
6449
6450         * lily/note-collision.cc (check_meshing_chords): don't merge fa heads.
6451
6452         * scm/define-grobs.scm (all-grob-descriptions): add Y-offset property.
6453
6454         * lily/clef-engraver.cc (inspect_clef_properties): reset
6455         localKeySignature for clef changes.
6456
6457 2005-11-17  Mats Bengtsson  <mabe@s3.kth.se>
6458
6459         * python/midi.c: PyMIDINIT_FUNC isn't defined in Python < 2.3 
6460         add dummy definition that works in Linux and add information in
6461         INSTALL.texi on the specific Python requirements for Cygwin/Mingw.
6462
6463         * Documentation/user/changing-defaults.itely (Modifying context
6464         plug-ins): Add index for \with.
6465
6466         * Documentation/user/music-glossary.tely (dal segno): Updated
6467         example to version >=2.6.
6468
6469 2005-11-16  Mats Bengtsson  <mabe@s3.kth.se>
6470
6471         * Documentation/user/instrument-notation.itely (Printing chord
6472         names): Reorder \chordmode and \repeat in one example.
6473
6474 2005-11-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6475
6476         * VERSION: release 2.7.17
6477         
6478         * Documentation/topdocs/NEWS.tely (Top): add note about
6479         refactoring.
6480
6481         * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
6482         new function. Search region of 3 positions for best tie.
6483         (score_configuration): new function.
6484         (score_aptitude): new function.
6485         (generate_configuration): new function.
6486         (get_configuration): new function.
6487         (Tie_formatting_problem): new function
6488
6489         * input/regression/page-top-space.ly: a6 for page-top-space demo. 
6490
6491         * stepmake/aclocal.m4: use $(if ) for config-FOOF.make
6492
6493         * THANKS: add Eduardo Vieira & Ralph Little
6494
6495         * mf/feta-bolletjes.mf (solfa_quarter_width): make solfa heads
6496         narrower.
6497
6498         * lily/include/tie-formatting-problem.hh (class
6499         Tie_formatting_problem): add Tie_details to
6500         Tie_formatting_problem. Update calling conventions.
6501
6502         * stepmake/aclocal.m4: oops. Include $CONFIGFILE.make, not
6503         config.make.
6504
6505         * Documentation/user/lilypond.tely: remove musedata2ly entry.
6506
6507 2005-11-16  Jürgen Reuter  <reuter@ipd.uka.de>
6508
6509         * lily/ligature-engraver.cc, lily/include/ligature-engraver.hh,
6510         scm/define-context-properties.scm: Maintenance bugfix: make
6511         ligature brackets work again by removing obsolete ligature
6512         primitive callback push/pop.
6513
6514         * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: do
6515         not call Tuplet_bracket::calc_direction.  Removed obsolete gap
6516         value.
6517
6518 2005-11-15  Jan Nieuwenhuizen  <janneke@gnu.org>
6519
6520         * stepmake/aclocal.m4 (depth): Explain why absolute directory is
6521         used and do not call it a path.
6522         (FLEXLEXER_FILE): Rename from FLEXLEXER_PATH and add file name.
6523
6524 2005-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6525
6526         * lily/include/tie-formatting-problem.hh (class
6527         Tie_formatting_problem): new file.
6528
6529         * lily/tie-formatting-problem.cc (common_x_refpoint): new file.
6530
6531         * Documentation/misc/ChangeLog-2.3:  new file.
6532
6533         * lily/audio-staff.cc (output): degarianize.
6534
6535 2005-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
6536
6537         * stepmake/stepmake/python-module-rules.make ($(outdir)/%.pyc):
6538         Unset PYTHONOPTIMIZE.  Fixes install if set.
6539
6540 2005-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6541
6542         * python/convertrules.py (conv): add warning about drums. 
6543
6544         * make/stepmake.make: include toplevel-version.make after config.make.
6545
6546         * stepmake/aclocal.m4 (depth): make sure $srcdir is absolute.
6547         also allow python2.4
6548
6549         * config.make.in (configure-srcdir): remove GXX GCC vars.
6550
6551         * stepmake/aclocal.m4: don't do non-srcdir build with
6552         symlinks. Use inclusion, so the src directory name can be changed.
6553
6554 2005-11-13  Jan Nieuwenhuizen  <janneke@gnu.org>
6555
6556         * make/mutopia-vars.make:
6557         * make/ly-vars.make: Use src-wildcard iso wildcard for source
6558         files.
6559
6560 2005-11-13  Werner Lemberg  <wl@gnu.org>
6561
6562         * mf/feta-arrow.mf: For all glyphs, don't mirror `currentpicture'
6563         but the affected path.  This ensures that the (overlapping) outlines
6564         have the same direction, which is a necessary prerequisite for
6565         FontForge's algorithm to remove overlaps.
6566         Formatting.
6567
6568         * mf/feta-haak.mf: Formatting.
6569         (draw_bracket): Slightly modify outline to avoid an unnecessary
6570         corner.
6571         Don't use ad-hoc values for `leave_angle' and `tip_angle' but derive
6572         them from the affected paths.
6573
6574 2005-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6575
6576         * mf/README: remove xpm / accordion notes.
6577
6578         * lily/tie-column-format.cc (set_chord_outline): add dots into
6579         skyline extents. This fixes tie formatting if the left head has dots.
6580
6581         * lily/tie.cc (get_configuration): only shift tie by a whole staff
6582         space inside the staff.
6583         (get_configuration): shift another position if necessary in case
6584         of left head tie  
6585
6586 2005-11-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6587
6588         * stepmake/stepmake/texinfo-vars.make (GENERATE_OMF): use
6589         buildscript-dir iso. $(depth)/buildscripts.
6590
6591         * tex/GNUmakefile (local-uninstall): remove
6592         music-drawing-routines.ps juggling.
6593
6594         * stepmake/stepmake/install-targets.make (local-install-files):
6595         prepend src-dir to install targets.
6596
6597         * lily/system-start-delimiter-engraver.cc
6598         (acknowledge_system_start_delimiter): use
6599         add_offset_callback(). This fixes translation of nested
6600         staffgroups.
6601
6602         * lily/grob-closure.cc (add_offset_callback): only encaps in
6603         simple_closure if it's a procedure.
6604         
6605         * lily/span-bar.cc (calc_glyph_name): read glyph-name, not glyph
6606         from bar-line.
6607
6608         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
6609         remove-empty where pertinent.
6610
6611 2005-11-12  Graham Percival  <gpermus@gmail.com>
6612
6613         * Documentation/user/instrument-notation.itely: added
6614         Cameron Horsburgh's multiple stanzas docs.  Thanks!
6615
6616 2005-11-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6617
6618         * lily/GNUmakefile
6619         ($(top-build-dir)/Documentation/pictures/$(outbase)/lilypond.ico):
6620         make picture in builddir, not srcdir.
6621
6622 2005-11-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6623
6624         * VERSION: release 2.7.16
6625         
6626         * scripts/lilypond-book.py (main): use commands.mkarg () to quote
6627         shell arguments. 
6628
6629 2005-11-10  Mats Bengtsson  <mabe@s3.kth.se>
6630
6631         * Documentation/user/examples.itely (Piano templates): Minor
6632         modification to the Piano centered lyrics example.
6633
6634 2005-11-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6635
6636         * scripts/lilypond-invoke-editor.scm (run-browser): look at
6637         $BROWSER.
6638
6639         * Documentation/user/point-and-click.itely: simplify p&c
6640         instruction: don't configure firefox. Put lilypond-invoke-editor
6641         in front of the browser.
6642
6643         * scripts/lilypond-invoke-editor.scm (run-editor): new function.
6644         (run-browser): new function.
6645
6646         * lily/parser.yy (Lily_lexer): recognize Book
6647
6648         * lily/book.cc (clone): new function
6649
6650         * lily/parser.yy (book_body): allow BOOK_IDENTIFIER.
6651
6652 2005-11-10  Jürgen Reuter  <reuter@ipd.uka.de>
6653
6654         * lily/vaticana-ligature.cc, lily/vaticana-ligature-engraver.cc:
6655         Maintenance bugfix: reduce number of font related warnings by
6656         updating naming conventions for glyph-name.
6657
6658 2005-11-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6659
6660         * scm/define-grobs.scm (all-grob-descriptions): add
6661         rhythmic-grob-interface to TabNoteHead.
6662
6663         * scm/layout-beam.scm (check-quant-callbacks): remove
6664         set_stem_lengths()
6665
6666 2005-11-08  Jürgen Reuter  <reuter@ipd.uka.de>
6667
6668         * ly/gregorian-init.ly (divisiones): Maintenance bugfix: vertical
6669         alignment of centered divisiones.
6670
6671         * scm/scripts.scm (articulations): Maintenance bugfix:
6672         follow-into-staff -> quantize-position.
6673
6674         * lily/vaticana-ligature-engraver.cc (transform_heads): Bugfix:
6675         plica head in porrectus deminutus.
6676
6677 2005-11-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6678
6679         * make/lilypond.fedora.spec.in (Group): add %clean section.
6680
6681         * lily/tuplet-bracket.cc (print): change check: remove bracket if
6682         less then 1/5th of total length.  
6683         (print): use gap too.  Fixes tupletUp-single-bracket.ly
6684
6685         * scm/music-functions.scm (glue-mm-rest-texts): also put other
6686         events into EventChord. This fixes textspanners on mm rests. Fixes
6687         spanner-rest.ly
6688
6689         * lily/side-position-interface.cc (get_axis): read side-axis
6690         (set_axis): set side-axis.
6691
6692         * scm/define-grobs.scm (all-grob-descriptions): add side-axis
6693         properties everywhere.
6694
6695         * lily/spacing-spanner.cc (breakable_column_spacing): add
6696         average-spacing-wishes. Take maximum if not set.
6697         (musical_column_spacing): idem. Fixes: spacing-keysig-note.ly
6698
6699         * scm/define-grobs.scm (all-grob-descriptions): add
6700         average-spacing-wishes.
6701
6702         * lily/grob-closure.cc (add_offset_callback): bugfix: properly add
6703         offset callbacks. This fixes alignment for Fingering objects.
6704
6705         * scm/define-grobs.scm (all-grob-descriptions): tiny bit less
6706         space for key - timesig combination. 
6707
6708         * input/regression/script-stem-tremolo.ly (Module): new file.
6709
6710         * scm/define-grobs.scm (all-grob-descriptions): decrease distance
6711         to key sig.
6712
6713         * lily/dynamic-engraver.cc (acknowledge_stem_tremolo): new function.
6714         Fixes: c-tremolo-script.ly.
6715         
6716         * lily/text-engraver.cc (acknowledge_stem_tremolo): new function.
6717
6718         * lily/script-engraver.cc (acknowledge_stem_tremolo): new function.
6719         
6720         * scm/define-grobs.scm (all-grob-descriptions): remove
6721         self-X-offset. Fixes alignment of octavate-8.
6722
6723         * scripts/lilypond-book.py (datadir): look in
6724         LILYPONDPREFIX/share/lilypond/current/
6725
6726         * GNUmakefile.in: symlink current to <VERSION>. 
6727
6728 2005-11-07  Pedro Kroger  <kroeger@pedrokroeger.net>
6729
6730         * lily/main.cc: eps listed as a backend.
6731
6732 2005-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6733
6734         * scm/lily-library.scm (print-music-as-book): quote $defaultpaper.
6735
6736 2005-11-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6737
6738         * lily/include/score.hh (class Score): remove texts_ member.
6739
6740         * lily/beam.cc (set_stem_lengths): force direction callback.
6741         (print): read quantized-positions, so we can force
6742         Beam::set_stem_lengths to occur.
6743         (rest_collision_callback): use common X parent. 
6744
6745 2005-11-03  Jan Nieuwenhuizen  <janneke@gnu.org>
6746
6747         * flower/file-path.cc (find): Bugfix: Return name of file found.
6748
6749         * lily/main.cc (setup_paths): Bugfix for argv0 logic.
6750         (setup_paths)[__CYGWIN__ || __MINGW32__]: Normalize argv0.
6751         (setup_paths)[__MINGW32__]: Also look for argv0 + .exe.
6752
6753 2005-11-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6754
6755         * flower/offset.cc: idem.
6756
6757         * mf/*.mf: update email address.
6758
6759         * lily/font-config-scheme.cc:  new file.
6760
6761         * GNUmakefile.in (SUBDIRS): remove debian/ directory.
6762
6763         * lily/*:  cs.uu.nl -> xs4all.nl
6764
6765         * VERSION (PATCH_LEVEL): release 2.7.15
6766
6767         * make/lilypond.mandrake.spec.in (Module): remove Mandrake & Suse
6768         spec files.
6769
6770         * make/lilypond.fedora.spec.in: add %{libdir}/lilypond/
6771
6772 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6773
6774         * GNUmakefile.in: bugfix: encapsulate mkdir && cd in parens.   
6775
6776         * lily/staff-performer.cc (process_music): add audio
6777         elements. This makes MIDI instrument changes work once again.
6778
6779         * lily/main.cc (LY_DEFINE): add gmane address.
6780
6781         * lily/beam.cc: remove calc_positions()
6782
6783         * lily/include/grob.hh (class Grob): move pscore, dim_cache_,
6784         original_ in private scope.
6785         (class Grob): drop pscore_ pointer, change to output_def pointer.
6786         (class Grob): cleanup class definition.
6787
6788         * ly/spanners-init.ly (assertBeamQuant): use make-simple-closure.
6789
6790 2005-11-02  Jan Nieuwenhuizen  <janneke@gnu.org>
6791
6792         * lily/main.cc (setup_paths)[__MINGW32__]: Do not assume argv0 is
6793         absolute.  Better diagnostics.
6794
6795         * GNUmakefile.in: Add bin/ to tree and populate with some links.
6796         This makes lilypond run from the build directory using argv0
6797         relocation (without any --prefix or LILYPONDPREFIX setting).
6798
6799 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6800
6801         * Documentation/topdocs/NEWS.tely (Top): document new backend design.
6802
6803         * scm/define-grobs.scm: purge self-[XY]-offset variables, replace
6804         with simple-closure.
6805
6806         * lily/self-aligment-interface.cc (set_align_self): new function
6807         (set_center_parent): new function.
6808
6809         * lily/side-position-interface.cc (set_axis): new function.
6810
6811         * lily/new-fingering-engraver.cc (position_scripts): use drul for
6812         generic code. 
6813
6814         * scm/define-grob-properties.scm (all-user-grob-properties):
6815         remove [XY]-offset-callbacks add [YX]-offset
6816         
6817 2005-11-02  Mats Bengtsson  <mabe@s3.kth.se>
6818
6819         * scm/define-grobs.scm (all-grob-descriptions): Added space-alist
6820         entry for time signatures after breathing signs. Bug report by
6821         Scott Russell.
6822
6823 2005-11-01  Jan Nieuwenhuizen  <janneke@gnu.org>
6824
6825         * lily/main.cc (setup_paths)[!__MINGW32__]: Bugfix: if argv0 is
6826         not absolute, make it absolute using PATH.
6827
6828 2005-10-28  Jan Nieuwenhuizen  <janneke@gnu.org>
6829
6830         * python/midi.c (initmidi): Fix type for mingw.
6831
6832 2005-10-27  Jan Nieuwenhuizen  <janneke@gnu.org>
6833
6834         * stepmake/stepmake/compile-vars.make (SHARED_FLAGS): Support mingw.
6835
6836         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Detect mingw
6837         cross compiling.
6838
6839         * stepmake/aclocal.m4: Support python cross compiling.
6840
6841         * stepmake/stepmake/python-module-vars.make (SHARED_MODULE_SUFFIX):
6842         Add mingw section.
6843
6844 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6845
6846         * scm/output-lib.scm (chain-grob-member-functions): replace
6847         chained-callback.cc
6848
6849         * lily/chained-callback.cc (Module): remove file.
6850
6851         * lily/rest-collision.cc (force_shift_callback_rest): change to
6852         chained callback.
6853
6854         * lily/rest.cc (y_offset_callback): merge function of 3 callbacks. 
6855
6856         * lily/grob.cc (y_parent_positioning): remove axis argument from
6857         parent_positioning callbacks.
6858         (Grob): junk init code
6859         (get_offset): use generic property callbacks for
6860         X-offset, Y-offset. Remove Grob::{add,has}_offset_callback.
6861         (axis_parent_positioning): new function
6862         (axis_offset_symbol): new function
6863         (chain_offset_callback): new function
6864         (add_offset_callback): new function
6865
6866         * lily/beam.cc (rest_collision_callback): change signature; this
6867         is now a chained callback.
6868
6869         * lily/include/dimension-cache.hh (class Dimension_cache): remove
6870         callback administration.
6871
6872         * lily/simple-closure.cc: new file. Smob type that allows "grob
6873         member functions",
6874
6875             (ly:make-simple-closure FUNC A B)
6876
6877         is evaluated as (FUNC grob A B). This allows chaining of callbacks
6878         in various ways.
6879
6880         * lily/slur-engraver.cc (acknowledge_extra_object): use chained
6881         callbacks.
6882
6883         * lily/slur.cc (outside_slur_callback): take 2 arguments.
6884
6885         * lily/rest.cc (polyphonic_offset_callback): remove.
6886
6887         * lily/script-engraver.cc (try_music): remove bool* argument.
6888
6889         * scm/script.scm (default-script-alist): set quantize-position
6890         appropriately.
6891
6892         * lily/script-engraver.cc: remove follow_into_staff_ special coding. 
6893
6894         * lily/side-position-interface.cc (aligned_side): move staff
6895         position quantization from
6896         Side_position_interface::quantised_position().
6897         (quantised_position): remove
6898         
6899 2005-10-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6900
6901         * input/regression/beam-quant-standard.ly: reindent, set
6902         debug-beam-quanting to #t.
6903
6904         * lily/beam-concave.cc (calc_concaveness): set concaveness to
6905         10000 if this is a "hard" concave beam.
6906
6907         * lily/beam.cc (calc_least_squares_positions): change from
6908         calc_least_squares_dy
6909         (set_stem_lengths): this is now a chained callback.
6910
6911         * lily/context-property.cc (execute_general_pushpop_property):
6912         bugfix override with procedure should have effect.
6913
6914         * scm/define-grob-properties.scm (all-internal-grob-properties):
6915         remove position-callbacks.
6916
6917         * scm/define-grobs.scm (all-grob-descriptions): use
6918         ly:make-callback-chain for positions property.
6919
6920         * scm/layout-beam.scm (check-quant-callbacks): return list of
6921         chained callbacks.
6922
6923         * scm/lily.scm (type-p-name-alist): add callback-chain
6924
6925         * lily/lily-guile.cc (type_check_assignment): type check failure
6926         is warning not message.
6927
6928         * lily/grob-property.cc (try_callback): walk callback chain if
6929         appropriate.
6930
6931         * lily/chained-callback.cc: new file. new smob type.
6932
6933         * lily/lily-guile.cc (procedure_arity): new function.
6934
6935 2005-10-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6936
6937         * Documentation/topdocs/INSTALL.texi (Top): add perl flex bison.
6938
6939 2005-10-25  John Mandereau  <john.mandereau@free.fr>
6940  
6941         * Documentation/user/instrument-notation.itely (Figured bass):
6942         describe new features
6943
6944 2005-10-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6945
6946         * lily/beam.cc (calc_least_squares_dy): use property callback.
6947
6948         * lily/beam-concave.cc (calc_concaveness): use property callback.
6949
6950         * ly/paper-defaults.ly: move fixed dimensions from paper.scm 
6951
6952 2005-10-25  Jan Nieuwenhuizen  <janneke@gnu.org>
6953
6954         * HACKING: Update.
6955
6956 2005-10-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6957
6958         * scm/layout-page-layout.scm (page-headfoot): annotate
6959         pagetopspace too.
6960
6961         * scm/stencil.scm (dimension-arrows): shorten arrowed lines a bit. 
6962
6963         * scm/layout-page-layout.scm (annotate-y-interval): y-annotation
6964         doesn't take y-space.
6965
6966         * scm/paper.scm (paper-alist): fix A7 dimensions. 
6967
6968 2005-10-24  Jan Nieuwenhuizen  <janneke@gnu.org>
6969
6970         * stepmake/stepmake/generic-vars.make (DIST_FILES): Fix
6971         src-wildcard, remove $(wildcard).
6972
6973         * po/GNUmakefile (PO_FILES): 
6974         * ps/GNUmakefile (PS_FILES): 
6975         * tex/GNUmakefile (TEX_FILES): 
6976         * cygwin/GNUmakefile (POSTINSTALLS):
6977         * vim/GNUmakefile (EXTRA_DIST_FILES): Bugfix: [etags sr?] missed
6978         some wildcard calls.
6979
6980 2005-10-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6981
6982         * THANKS: add Thomas Bushnell.
6983
6984 2005-10-23  Jan Nieuwenhuizen  <janneke@gnu.org>
6985
6986         * scm/lily.scm: Remove horrendous running-from-gui? kludge.
6987         (lilypond-main): Redirect to gui-main if 'gui is set.
6988
6989         * scripts/midi2ly.py (datadir): Add libdir iso datadir to path,
6990         for alternative installations kludging s/share/lib/g
6991         LILYPONDPREFIX. 
6992
6993         * SConstruct (libdir_package_version): Define.
6994
6995         * python/SConscript: 
6996         * python/GNUmakefile (INSTALLATION_OUT_DIR): Install binary .so
6997         module in libdir.  
6998
6999 2005-10-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7000
7001         * lily/main.cc: clarify --safe.
7002
7003 2005-10-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7004
7005         * VERSION: release 2.7.14
7006         
7007         * Documentation/user/*.itely: remove minimumVerticalExtent.
7008
7009         * scm/define-grobs.scm (all-grob-descriptions): remove
7010         RemoveEmptyVerticalGroup
7011
7012         * lily/hara-kiri-engraver.cc (get_spanner): create VerticalAxisGroup.
7013
7014         * lily/include/lily-guile.hh (GUILE_ELLIPSIS): define to get clean
7015         compile on MOSX
7016
7017         * python/convertrules.py (conv): add rules.
7018
7019         * lily/grob.cc: remove is_empty()
7020
7021         * lily/grob-property.cc: remove add_to_list_property().
7022
7023         * scripts/convert-ly.py (datadir): add prefix switching hack to
7024         .py too.
7025
7026         * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily (cresc): remove
7027         space-function tweak.
7028
7029         * lily/grob.cc: remove X-extent-callback / Y-extent-callback.
7030
7031         * scm/define-grob-properties.scm (all-user-grob-properties):
7032         remove callback property.
7033
7034         * lily/include/grob.hh (class Grob): remove property_callbacks_
7035         member. Properties of procedure type are assumed to be callbacks.
7036
7037         * lily/ligature-engraver.cc (override_stencil_callback):
7038         rewrite. Use noteHeadLigaturePrimitive as source.
7039
7040         * scm/define-grob-properties.scm (all-internal-grob-properties):
7041         remove ligature-primitive-callback
7042
7043         * lily/include/dimension-cache.hh (class Dimension_cache): make
7044         class, with Grob as friend.
7045
7046         * lily/grob.cc: remove set_extent_callback(), set_extent() and
7047         has_extent_callback()
7048
7049         * scm/translation-functions.scm (format-new-bass-figure): read
7050         figuredBassPlusDirection
7051
7052         * scm/define-context-properties.scm
7053         (all-user-translation-properties): add figuredBassPlusDirection.
7054
7055         * lily/staff-spacing.cc (next_notes_correction): oops. Init wishes.
7056
7057         * lily/align-interface.cc (set_ordered): new function.
7058
7059         * lily/grob.cc (flush_extent_cache): rewrite.
7060
7061         * lily/dimension-cache.cc (Dimension_cache): cache extent as
7062         Interval pointer directly.
7063
7064         * lily/main.cc (setup_paths): insert extra / .
7065         (setup_paths): junk cff entry.
7066
7067         * lily/font-config.cc (init_fontconfig): only add type1 / otf
7068         directories.
7069
7070         * lily/axis-group-engraver.cc (finalize): remove
7071         extraVerticalExtent, minimumVerticalExtent verticalExtent.
7072
7073         * lily/grob.cc (Grob): don't set extent from ctor.
7074         (extent): use property callbacks. 
7075
7076         * lily/axis-group-interface.cc: remove set_axes() function.
7077
7078         * lily/grob-property.cc (del_property): new function.
7079
7080 2005-10-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7081
7082         * lily/font-config.cc (init_fontconfig): resurrect mf/out/ check.
7083         
7084 2005-10-20  Jan Nieuwenhuizen  <janneke@gnu.org>
7085
7086         * stepmake/stepmake/script-vars.make (PYTHON_SCRIPTS_IN): Oops.  Add.
7087
7088 2005-10-19  Jan Nieuwenhuizen  <janneke@gnu.org>
7089
7090         * mf/SConscript: Updates.
7091
7092         * lily/GNUmakefile (OUT_DIST_FILES): Bugfix.
7093
7094         * stepmake/stepmake/*:
7095         * */GNUmakefile:
7096         * config.make.in:
7097         * GNUmakefile.in:
7098         * stepmake/aclocal.m4: Friendlier --srcdir build, allowing `make'
7099         from any directory in build-dir.  Cleanups.
7100
7101         * make/srcdir.make.in: Remove.
7102
7103         * lily/main.cc (setup_paths): Fix and document build-dir hack.
7104
7105         * SConstruct (CheckYYCurrentBuffer): Use TryCompile (there is no
7106         main).
7107
7108         * lily/SConscript: Remove ttftools.
7109
7110         * SConstruct: Resurrect.
7111
7112 2005-10-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7113
7114         * lily/tuplet-bracket.cc (print): use dy iso. positions[RIGHT] for
7115         Y coordinate. 
7116
7117         * lily/paper-book.cc (add_score_title): put Paper_score title into
7118         systems_ list.
7119
7120         * scm/translation-functions.scm (format-new-bass-figure): also
7121         allow plus in combination with _
7122
7123 2005-10-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7124
7125         * VERSION: 2.7.13 released.
7126
7127         * lily/note-collision.cc (check_meshing_chords): don't wipe
7128         stencil, merely set transparent.
7129
7130         * Documentation/topdocs/NEWS.tely (Top): mention John Mandereau. 
7131         (Top): document #'callbacks.
7132         (Top): document nested \override.
7133
7134         * input/regression/figured-bass.ly: update for slash and pluses.
7135
7136         * input/regression/figured-bass-continuation-forbid.ly (Module):
7137         new file.
7138
7139         * scm/translation-functions.scm (format-new-bass-figure): use
7140         slashed-digit if diminished is set.
7141         (format-new-bass-figure): add + if 'augmented is set.
7142
7143         * scm/define-markup-commands.scm (slashed-digit): new command slashed-digit.
7144
7145         * input/test/piano-staff-distance.ly: remove file.
7146
7147         * Documentation/user/advanced-notation.itely (Formatting cue
7148         notes): use length-fraction for making stems/beams smaller.
7149
7150         * lily/parser.yy (bass_figure): accept \+ \! and / as figured bass
7151         modifications.
7152
7153         * lily/new-figured-bass-engraver.cc: new property
7154         centerFiguredBassContinuations
7155
7156         * Documentation/user/changing-defaults.itely (Difficult tweaks):
7157         use callbacks.
7158
7159         * lily/context-property.cc (execute_general_pushpop_property):
7160         robustness checks.
7161
7162         * input/regression/override-nest.ly: new file.
7163
7164         * python/convertrules.py (FatalConversionError.subber): conversion
7165         rule for #'callbacks
7166
7167         * input/regression/override-nest.ly: new function.
7168
7169         * lily/parser.yy (music_property_def): allow \override #'a #'b =
7170         #c too. 
7171
7172         * lily/context-property.cc (lookup_nested_property): new function.
7173         (evict_from_alist): new function.
7174         (general_pushpop_property): new function.
7175         (execute_general_pushpop_property): rewrite. Support nested
7176         properties too.
7177
7178 2005-10-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7179
7180         * lily/beam.cc: use length-fraction too.
7181
7182         * scm/define-grob-properties.scm (all-user-grob-properties):
7183         remove property flag-width-function
7184         (all-user-grob-properties): remove space-function.
7185
7186         * scm/layout-beam.scm: remove flag-width-function.
7187
7188         * lily/beam.cc: remove flag-width-function
7189
7190         * scm/layout-beam.scm: remove beam dir functions.
7191
7192         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): use length-fraction.
7193
7194         * lily/stem.cc (calc_length): multiply with length_fraction. Makes
7195         for easier grace tweaks.
7196
7197         * lily/beam.cc: remove dir-function.
7198
7199         * lily/system.cc (pre_processing): use callback to trigger spacing procedures.
7200
7201         * lily/grob.cc: remove spacing-procedure.
7202
7203         * lily/note-head.cc (calc_stem_attachment): new function.
7204         (internal_print): use callback to get glyph-name.
7205
7206         * lily/grob-property.cc (get_interfaces): new function.
7207
7208         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-interfaces
7209
7210         * lily/stem.cc (calc_stem_end_position): new function.
7211         (calc_length): new function.
7212         document details for stem.
7213         remove Stem::get_direction()
7214
7215         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-set-callback! 
7216
7217         * lily/grob-property.cc (set_callback): new function.
7218
7219         * lily/script-engraver.cc (make_script_from_event): don't trigger callback.
7220
7221         * lily/item-scheme.cc: new file.
7222
7223         * lily/bar-line.cc (before_line_breaking): remove function.
7224         remove bar-size-procedure, break-glyph-function
7225
7226         * lily/clef-engraver.cc (set_glyph): use glyph iso. glyph-name
7227
7228         * lily/clef.cc (before_line_breaking): change to calc_glyph_name.
7229
7230         * lily/system-start-delimiter.cc (print): suicide from
7231         here. Remove after_line_breaking_callback.
7232
7233         * lily/script-interface.cc (calc_direction): use callback for direction.
7234
7235         * lily/side-position-interface.cc (aligned_side): don't use
7236         Side_position_interface::get_direction directly. Use callback. 
7237
7238         * lily/grob.cc (get_stencil): simplify: use callback mechanism to
7239         calculate stencil.
7240         (get_print_stencil): rename from get_stencil: create stencil with
7241         transparency, color and cause. 
7242
7243         * scm/define-grobs.scm: change print-function to stencil callback everywhere.
7244
7245         * python/convertrules.py (conv): insert temporary warning rule.
7246
7247         * lily/multi-measure-rest.cc (set_text_rods): use stencil directly.
7248
7249         * lily/grob-property.cc (try_callback): remove marker if applicable.
7250
7251         * lily/grob.cc: elucidate doc about after/before-line-breaking
7252
7253         * lily/slur-scoring.cc (enumerate_attachments): robustness fix.
7254
7255         * lily/stem.cc (height): idem.
7256
7257         * lily/stem-tremolo.cc: idem.
7258
7259         * lily/slur.cc (height): don't use get_uncached_stencil()
7260
7261         * lily/rest.cc (y_offset_callback): use offset callback
7262         iso. after-line-breaking callback.
7263
7264         * lily/grob.cc: change after/before-line-breaking-callback to
7265         after/before-line-breaking dummy properties.
7266
7267         * lily/include/grob.hh: remove Grob_status.
7268
7269         * scm/define-context-properties.scm
7270         (all-user-translation-properties): remove verticalAlignmentChildCallback
7271
7272         * lily/tuplet-bracket.cc: use positions property iso. left,right-position.
7273         (calc_direction): use callback
7274         (calc_positions): use callback.
7275
7276         * lily/tie.cc (calc_direction): use callback. Only call parent
7277         positioning for more than one tie.
7278
7279         * lily/tie-column.cc (calc_positioning_done): use callback
7280
7281         * lily/slur-scoring.cc (calc_control_points): use callback
7282
7283         * lily/slur.cc (calc_direction): use callback.
7284
7285         * lily/note-collision.cc (force_shift_callback): remove.
7286
7287         * lily/dot-column.cc (force_shift_callback): remove. Use
7288         other_axis_parent_positioning.
7289
7290         * lily/grob.cc (other_axis_parent_positioning): new function.
7291         (same_axis_parent_positioning): new function
7292
7293         * lily/align-interface.cc (alignment_callback): remove function.
7294
7295         * lily/note-collision.cc (calc_positioning_done): use callback.
7296
7297         * lily/laissez-vibrer-tie.cc (calc_control_points): use callback.
7298         (calc_direction): idem.
7299         remove print function.
7300
7301         * lily/laissez-vibrer-tie-column.cc (calc_positioning_done): use callback.
7302
7303         * lily/dot-column.cc (calc_positioning_done): use callback.
7304
7305         * lily/break-align-interface.cc (calc_positioning_done): use callback.
7306
7307         * lily/beam.cc (calc_direction): use pseudo-property for beam
7308         direction callback.
7309         (calc_positions): use callback 
7310
7311         * lily/align-interface.cc (calc_positioning_done): use
7312         callback. Fold fixed  distance and normal alignment in one function.
7313
7314         * lily/stem.cc (calc_stem_end_position): use callback.
7315         (calc_positioning_done): idem.
7316         (calc_direction): idem.
7317         (calc_stem_end_position): idem
7318         (calc_stem_info): idem.
7319
7320         * lily/grob-property.cc (get_property_data): new function: 
7321         (try_callback): new function.
7322
7323         * scm/define-grob-properties.scm (all-user-grob-properties): doc
7324         callbacks property.
7325
7326         * lily/break-align-interface.cc: remove Break_align_interface::alignment_callback.
7327
7328 2005-10-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7329
7330         * lily/tie.cc (get_position): robustness fix. Don't crash if a
7331         tie
7332         has no heads.
7333         
7334         * lily/include/*.hh (Module): compile fixes.
7335
7336 2005-10-14  Heikki Junes <hjunes@cc.hut.fi>
7337
7338         * elisp/lilypond-font-lock.el, elisp/lilypond-indent.el: Avoid nil 
7339         as an argument for char-syntax: use (char-syntax (or nil 0)) 
7340         instead of (char-syntax nil), thanks to Milan Zamazal.
7341
7342 2005-10-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7343
7344         * make/lilypond.fedora.spec.in (Group): add lilypond-internals to
7345         dist.
7346
7347         * lily/tuplet-bracket.cc: check columns of bounds, not bounds
7348         themselves.
7349
7350 2005-10-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7351
7352         * flower/include/virtual-methods.hh (VIRTUAL_COPY_CONSTRUCTOR):
7353         add class_name() method.
7354
7355         * lily/music-scheme.cc: remove ly:music-name.
7356
7357 2005-10-11  Jan Nieuwenhuizen  <janneke@gnu.org>
7358
7359         * cygwin/postinstall-lilypond.sh: Remove cruft.
7360
7361         * cygwin/postremove-lilypond.sh: Remove.
7362
7363         * cygwin/GNUmakefile (default): Remove postremove rules.
7364
7365 2005-10-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7366
7367         * ly/titling-init.ly (evenHeaderMarkup): use space in header on
7368         even header too.
7369         
7370         * scm/define-markup-commands.scm (wordwrap-string): bugfix for
7371         MacOS 9 users.
7372
7373         * lily/hara-kiri-group-spanner.cc (consider_suicide): only
7374         consider break index for broken spanner.
7375
7376         * scm/define-markup-commands.scm (wordwrap-string): remove \r
7377         characters from string before splitting.
7378
7379 2005-10-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7380
7381         * scm/framework-ps.scm (output-preview-framework): use
7382         is-book-title to determine whether to chop off the booktitle.
7383
7384         * lily/paper-book.cc (systems): init from book-title-properties
7385         (add_score_title): init score-title-properties.
7386
7387         * ly/paper-defaults.ly: add {score,book}-title-properties.
7388
7389         * scm/document-backend.scm (lookup-interface): error message if
7390         using unknown interface.
7391
7392         * lily/volta-bracket.cc (after_line_breaking): new function. Set
7393         edge-height.
7394
7395         * lily/horizontal-bracket.cc (make_enclosing_bracket): rename from
7396         make_bracket.
7397         (make_bracket): new function.
7398
7399         * scm/lily.scm (define-scheme-options): add paper-size option.
7400
7401         * ly/declarations-init.ly (laissezVibrer): get paper size from
7402         -dpaper-size
7403
7404         * scm/translation-functions.scm: use \fontsize for changing the
7405         fontsize.
7406
7407         * scm/define-grobs.scm (all-grob-descriptions): set
7408         between-length-limit to 1.0
7409
7410         * lily/tie-helper.cc: add between_length_limit_ detail property.
7411
7412         * mf/feta-bolletjes.mf: typos.
7413
7414         * lily/note-head.cc (internal_print): don't shadow idx
7415         parameter. This fixes wrong attachment for do shape heads.
7416
7417 2005-10-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7418
7419         * scm/parser-ly-from-scheme.scm: rename from ly-from-scheme.scm
7420
7421         * scm/parser-clef.scm (supported-clefs): rename from clef.scm
7422
7423         * scm/layout-slur.scm: rename from slur.scm
7424
7425         * scm/layout-page-layout.scm: rename from page-layout.scm
7426
7427         * scm/layout-beam.scm: rename from beam.scm
7428
7429         * scm/define-grob-interfaces.scm (bass-figure-interface): add
7430         bass-figure-interface
7431
7432         * lily/new-figured-bass-engraver.cc (process_music): add
7433         implicitBassFigures property.
7434         
7435         * scm/define-markup-commands.scm (pad-x): new markup.
7436
7437         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set
7438         minimumVerticalExtent on FiguredBass context.
7439
7440         * lily/figured-bass-continuation.cc (center_on_figures): kludge in
7441         case the continuation crosses a line break.
7442
7443 2005-10-09  Jan Nieuwenhuizen  <janneke@gnu.org>
7444
7445         * flower/file-name.cc (dos_to_posix)[__CYGWIN__]: Return
7446         unconverted value if cygwin_conv_to_posix_path () fails.  Fixes
7447         absolute file name bug.  
7448
7449 2005-10-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7450
7451         * VERSION (PACKAGE_NAME): release 2.7.12
7452
7453         * input/regression/figured-bass-continuation-center.ly: new file.
7454
7455         * input/regression/beam-outside-beamlets.ly: new file.
7456
7457         * lily/beam.cc (set_beaming): don't clip edges.
7458         (connect_beams): don't clip edges.
7459
7460         * lily/beaming-info.cc (clip_edges): new function.
7461
7462         * lily/enclosing-bracket.cc (struct Enclosing_bracket): new file.
7463
7464         * Documentation/user/instrument-notation.itely (Figured bass):
7465         demonstrate extenders, update seealso links.
7466
7467         * scm/titling.scm (marked-up-headfoot): change tagline
7468         handling. tagline = ##f will blank the tagline as well.
7469
7470 2005-10-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7471
7472         * Documentation/topdocs/NEWS.tely: add entry for Figured bass.
7473
7474         * lily/new-figured-bass-engraver.cc (struct
7475         New_figured_bass_engraver): add new_music_found_ member.
7476
7477         * lily/lilypond-version.cc (Lilypond_version): deal with
7478         incorrectly formatted version strings. 
7479
7480         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): switch on
7481         New_figured_bass_engraver by default.
7482
7483         * lily/ttf.cc (print_trailer): only define glyph names when
7484         FT_Face has FT_FACE_FLAG_GLYPH_NAMES
7485
7486 2005-10-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7487
7488         * lily/horizontal-bracket.cc (make_bracket): new function.
7489
7490         * scm/define-grobs.scm (all-grob-descriptions): new grobs
7491         NewBassFigure, BassFigureBracket, BassFigureContinuation,
7492         BassFigureLine, BassFigureAlignment
7493
7494         * lily/new-figured-bass-engraver.cc (process_music): new file.
7495
7496         * lily/figured-bass-continuation.cc: new file.
7497
7498         * lily/include/horizontal-bracket.hh (struct Horizontal_bracket):
7499         new file.
7500
7501 2005-10-04  Mats Bengtsson  <mabe@s3.kth.se>
7502
7503         * scripts/lilypond-book.py: Bug fix, put the quote around the
7504         actual score for LaTeX documents.
7505
7506         * scm/define-grobs.scm (all-grob-descriptions): Change
7507         collapse-height of the SystemStartBracket grob to 5.0, 
7508         so the bracket disappears for single stave score lines (similarly
7509         to SystemStartBraces). 
7510
7511         * Documentation/user/advanced-notation.itely (Polymetric
7512         notation): Clarify the use of compressMusic.
7513
7514         * Documentation/user/basic-notation.itely (Grace notes): Clarify
7515         that the grace spacer note in other staves need the same duration
7516         and document the stroke-style property.
7517
7518 2005-10-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7519
7520         * Documentation/user/global.itely (Vertical spacing): document
7521         alignment-extra-space and fixed-alignment-extra-space.
7522
7523         * Documentation/topdocs/NEWS.tely (Top): add entry.
7524
7525         * input/regression/alignment-vertical-spacing.ly: new file.
7526
7527         * python/convertrules.py (conv): add rule.
7528
7529         * ly/music-functions-init.ly: rename outputProperty to overrideProperty
7530
7531         * lily/align-interface.cc (stretch_after_break): new
7532         function. Read fixed-alignment-extra-space property.
7533         (align_elements_to_extents): read alignment-extra-space property.
7534
7535         * lily/lily-guile.cc (robust_scm2dir): new function.
7536
7537         * scm/page-layout.scm (page-headfoot): annotate headsep and footsep.
7538         (annotate-space-left): new function. Annotate space left on page. 
7539         (annotate-y-interval): new function.
7540         (paper-system-annotate-last): new function. Annotate bottom-space.
7541
7542         * mf/feta-beugel.mf (y): 
7543
7544 2005-10-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7545
7546         * VERSION (PACKAGE_NAME):  release 2.7.11
7547
7548         * scm/lily-library.scm (interval-translate): new function
7549         (interval-center): new function. 
7550
7551         * scm/page-layout.scm (paper-system-annotate): new function. Add
7552         arrows for dimensions.
7553  
7554         * scm/stencil.scm (dimension-arrows): new function.
7555
7556         * Documentation/user/global.itely (Vertical spacing): mention annotatespacing
7557
7558         * input/regression/page-spacing.ly: add annotatespacing
7559
7560         * lily/paper-system-scheme.cc (LY_DEFINE): remove ly:paper-system-{extent,stencil}
7561         (LY_DEFINE): new function ly:paper-system-set-property!
7562
7563         * Documentation/user/global.itely (Paper size): explain how to add
7564         sizes.
7565
7566         * scm/paper.scm (paper-alist): rename tabloid paper to 11x17 to
7567         correspond to GS's definition.
7568
7569         * lily/tuplet-bracket.cc (after_line_breaking): suicide empty
7570         tuplet bracket.
7571         (print): only connect to next bracket if the next one is alive.
7572         (print): set padding to 0.0 if the bound is a breakable
7573         column. This makes tupletFullLength brackets reach up to the staff
7574         line if it doesn't connect to the next line.
7575
7576 2005-09-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7577
7578         * lily/bar-number-engraver.cc: correct docs.
7579
7580         * scm/output-lib.scm (first-bar-number-invisible): rename from
7581         default-bar-number-visibility
7582
7583 2005-09-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7584
7585         * scm/define-music-properties.scm (all-music-properties): remove
7586         predicate property.
7587
7588 2005-09-28  Heikki Junes  <hjunes@cc.hut.fi>
7589
7590         * po/fi.po: refresh.
7591
7592 2005-09-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7593
7594         * input/regression/hara-kiri-pianostaff.ly (disappear): remove
7595         superfluous s1.
7596         (disappear): bugfix.
7597
7598         * lily/stem-tremolo.cc (raw_stencil): read slope property.
7599
7600         * lily/include/paper-system.hh (class Paper_system): remove
7601         staff_extents_ member.
7602
7603         * lily/paper-system-scheme.cc (LY_DEFINE): remove.
7604
7605         * lily/include/paper-system.hh (class Paper_system): remove
7606         number_ variable. Remove is_title_. Remove break_before_penalty_
7607
7608         * lily/paper-book.cc (systems): use 'number property iso. number_
7609         member.
7610
7611         * lily/paper-system-scheme.cc: remove ly:paper-system-break-before-penalty
7612         remove ly:paper-system-number.
7613
7614         * scm/lily-library.scm (paper-system-title?): new function.
7615
7616         * lily/book.cc (process): bugfix: flip ?: cases. 
7617
7618         * Documentation/user/changing-defaults.itely (Difficult tweaks):
7619         add outputProperty.
7620
7621         * ly/music-functions-init.ly: add outputProperty music function.
7622
7623         * scm/paper.scm (set-paper-dimension-variables): add pagetopspace
7624
7625         * scm/page-layout.scm (ly:optimal-page-breaks): read next-space
7626         and next-padding.
7627         (optimal-page-breaks): rename from ly:optimal-page-breaks.
7628
7629         * lily/paper-system-scheme.cc (LY_DEFINE): new function.
7630
7631         * lily/paper-system.cc (internal_get_property): new function.
7632
7633         * Documentation/user/global.itely (Vertical spacing): refer to
7634         page-spacing.ly
7635
7636         * scm/page-layout.scm (ly:optimal-page-breaks): add support for
7637         pagetopspace
7638
7639         * input/regression/page-spacing.ly: new file.
7640
7641         * input/regression/page-top-space.ly: new file.
7642
7643         * lily/spacing-spanner.cc: cmath -> math.h
7644
7645         * lily/paper-system.cc (read_left_bound): new function. Read
7646         line-break-system-details from left bound to determine extents.
7647  
7648         * Documentation/user/programming-interface.itely (Using LilyPond
7649         syntax inside Scheme): change applyxxx -> applyXxx.
7650
7651         * ly/music-functions-init.ly: add outputProperty music function.
7652
7653         * lily/parser.yy (Generic_prefix_music_scm): add scm-scm-scm signature.
7654
7655         * lily/grob-scheme.cc (LY_DEFINE): add ! to ly:grob-suicide! name.
7656
7657         * python/convertrules.py (conv): rule
7658
7659         * ly/music-functions-init.ly: applyxxx -> applyXxx
7660
7661         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): alias
7662         TabVoice to Voice.
7663
7664 2005-09-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7665
7666         * flower/include/real.hh: include <math.h> iso. <cmath>
7667
7668         * flower/include/offset.hh: include real.hh
7669
7670 2005-09-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7671
7672         * Documentation/user/changing-defaults.itely (Difficult tweaks):
7673         fix example, now that 'interfaces is no longer directly available.
7674
7675         * lily/book.cc (process): don't crash if paper == NULL.
7676
7677         * po/fr.po: update.
7678
7679 2005-09-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7680
7681         * scm/define-music-types.scm (music-descriptions): set length and
7682         start-callback for QuoteMusic
7683
7684 2005-09-15  Mats Bengtsson  <mabe@s3.kth.se>
7685
7686         * lily/tie.cc (get_configuration): Replace fabs -> abs for integer
7687         arguments. Fixes compilation error with gcc 3.3.
7688
7689 2005-09-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7690
7691         * VERSION: release 2.7.10
7692
7693         * stepmake/stepmake/python-module-rules.make
7694         ($(outdir)/%$(SHARED_MODULE_SUFFIX)): SHARED_FLAGS at the end.  
7695
7696         * lily/*.cc: remove <cmath> everywhere. <cmath> is included from
7697         real.hh
7698
7699 2005-09-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7700
7701         * stepmake/stepmake/c++-vars.make (#EXTRA_CXXFLAGS): don't add
7702         -Werror. Otherwise GCC barfs over various optimizations.
7703
7704         * scm/define-grob-properties.scm (all-internal-grob-properties):
7705         add note-head property
7706
7707         * Documentation/user/instrument-notation.itely (Laissez vibrer
7708         ties): new node.
7709
7710         * input/regression/laissez-vibrer-ties.ly: new file.
7711
7712         * lily/laissez-vibrer-engraver.cc: new file.    
7713
7714         * lily/include/tie-column-format.hh: new file.
7715
7716         * lily/tie-column-format.cc: new file. 
7717
7718         * lily/tie-column.cc (set_manual_tie_configuration): new function.
7719
7720         * lily/laissez-vibrer-tie.cc: new file.
7721
7722         * lily/include/laissez-vibrer-tie.hh: new file.
7723
7724         * ly/engraver-init.ly: add Laissez_vibrer_engraver
7725
7726         * ly/declarations-init.ly (laissezVibrer): add \laissezVibrer
7727
7728         * scm/define-grobs.scm (all-grob-descriptions): add
7729         LaissezVibrerTie, LaissezVibrerTieColumn
7730
7731         * lily/tie-column.cc (set_tie_config_directions): new function
7732         (final_shape_adjustment): new function.
7733         (shift_small_ties): new function.
7734
7735         * scm/define-music-types.scm (music-descriptions): add LaissezVibrerEvent
7736
7737         * lily/include/tie.hh (struct Tie_details): add x_gap_
7738         (struct Tie_configuration): add head_position_
7739
7740         * lily/tie-column.cc (set_chord_outline): new function.
7741
7742         * mf/cmr.enc.in:  remove file.
7743
7744 2005-09-11  Graham Percival  <gpermus@gmail.com>
7745
7746         * Documentation/user/examples.itely: typo fix.  Thanks, Matevž
7747
7748 2005-09-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7749
7750         * mf/feta-banier.mf: make vertical stem 1/2 stemthickness wide to
7751         reduce aliasing effects.
7752
7753         * lily/tie-column.cc (set_chord_outlines): bugfix: insert complete
7754         box in skyline.
7755
7756 2005-09-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7757
7758         * lily/tie.cc (get_configuration): don't crash if left_dot is NULL.
7759
7760         * flower/include/real.hh: std::fabs too.
7761
7762 2005-09-08  Jan Nieuwenhuizen  <janneke@gnu.org>
7763
7764         * Documentation/user/lilypond.tely: Spell Baßtuba in UTF-8 (Werner). 
7765
7766         * lily, flower: Include C++ iso C headers.  Import namespace std
7767         throughout.
7768
7769         * lily/side-position-interface.cc: 
7770         * lily/scm-hash.cc: 
7771         * lily/note-head.cc: 
7772         * lily/include/includable-lexer.hh: 
7773         * flower/include/string-data.icc: Remove using std::*.
7774
7775         * lily, flower: Include C++ iso C headers.  Import namespace std
7776         throughout.
7777
7778         * lily/side-position-interface.cc: 
7779         * lily/scm-hash.cc: 
7780         * lily/note-head.cc: 
7781         * lily/include/includable-lexer.hh: 
7782         * flower/include/string-data.icc: Remove using std::*.
7783
7784         * Documentation/user/instrument-notation.itely (Entering lyrics):
7785         Multiple latin-1->utf-8 conversion fix.
7786
7787         * Documentation/user/*tely: Update Emacs cookie to utf-8.
7788
7789 2005-09-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7790
7791         * lily/tie.cc (get_configuration): also avoid dots for non-space
7792         situations.
7793
7794 2005-09-07  Jan Nieuwenhuizen  <janneke@gnu.org>
7795
7796         * Documentation/user/instrument-notation.itely: Bugfix.
7797
7798 2005-09-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7799
7800         * tex/GNUmakefile: don't install texinfo.tex
7801
7802         * tex/ : cleanup: remove unused files.
7803
7804         * lily/general-scheme.cc: remove my_{isinf,isnan}.
7805
7806         * flower/include/real.hh: using std::{isnan,isinf}
7807         
7808         * VERSION (PATCH_LEVEL): release 2.7.9
7809
7810 2005-09-05  Graham Percival  <gpermus@gmail.com>
7811
7812         * Documentation/user/ instrument-notation.itely,
7813         advanced-notation.itely: minor tweaks.
7814
7815         * input/test/script-chart.ly: add item padding.
7816
7817 2005-09-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7818
7819         * flower/offset.cc: use math.h iso. <cmath>
7820
7821         * scm/ps-to-png.scm (make-ps-images): use png16m again, for sake
7822         of IE users.
7823
7824         * scm/framework-eps.scm (dump-stencils-as-EPSes): cleanup.
7825         (widen-left-stencil-edges): new function. Fix alignment problems
7826         with LaTeX includegraphics.
7827
7828         * lily/text-interface.cc (interpret_markup): use abort().
7829
7830 2005-09-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7831
7832         * input/regression/tie-chord.ly (testLong): add a chord in 4ths
7833
7834         * lily/tie.cc (get_configuration): update bezier shape as we
7835         change Y positions.
7836         (get_configuration): don't move large ties if we're outside of the
7837         staff.
7838
7839 2005-09-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7840
7841         * scm/define-markup-commands.scm (strut): swap X and Y dims.
7842         
7843 2005-09-03  Jan Nieuwenhuizen  <janneke@gnu.org>
7844
7845         * .cvsignore: Add auto-generated configure files and then some.
7846
7847 2005-09-02  Jan Nieuwenhuizen  <janneke@gnu.org>
7848
7849         * scm/define-grobs.scm (DynamicLineSpanner): Add
7850         X-extent-callback.  Fixes hairpin-slur collision.
7851
7852 2005-08-31  Graham Percival  <gpermus@gmail.com>
7853
7854         * Documentation/user/advanced-notation.itely,
7855         basic-notation.itely: minor changes.
7856
7857 2005-08-31  Mats Bengtsson  <mabe@s3.kth.se>
7858
7859         * scm/framework-eps.scm (dump-stencils-as-EPSes): Insert a
7860         \linebreak between each .eps file if \betweenLilyPondSystem is
7861         undefined. 
7862
7863         * Documentation/user/lilypond-book.itely (Integrating LaTeX and
7864         music): Document the \linebreak
7865
7866         * Documentation/user/lilypond-book.itely,
7867         input/tutorial/lbook-latex-test.tex,
7868         Documentation/user/examples.itely: Remove \usepackage{graphics}
7869
7870 2005-08-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7871
7872         * mf/aybabtu.pe.in (i): don't merge alphabet into aybabtu.
7873
7874         * lily/ly-module.cc (make_stand_in_procs_weak): 1.6.4 and earlier
7875         compat bugfix.
7876
7877         * scripts/lilypond-book.py (PREAMBLE_LY): define
7878         inside-lilypond-book
7879         (modify_preamble): new function. Insert \RequirePackage{graphics}
7880         when no {graphics found in preamble.  
7881
7882 2005-08030  Graham Percival  <gpermus@gmail.com>
7883
7884         * Documentation/user/basic-notation.itely, global.itely,
7885         tutorial.itely: misc small changes.
7886
7887 2005-08-30  Jan Nieuwenhuizen  <janneke@gnu.org>
7888
7889         * stepmake/aclocal.m4: Include MY_PATCH_LEVEL in config.make's
7890         VERSION.
7891
7892 2005-08-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7893
7894         * lily/tie-column.cc (new_directions): put Tie down on center
7895         staff line. 
7896
7897         * lily/script-interface.cc (before_line_breaking): use
7898         Grob::programming_error
7899
7900         * scm/ps-to-png.scm (make-ps-images): use pngalpha device.
7901
7902         * scripts/lilypond-book.py (get_latex_textwidth): oops. Take [0]
7903         of splitext.
7904
7905 2005-08-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7906
7907         * VERSION (PACKAGE_NAME): VERSION release 2.7.8
7908
7909 2005-08-29  Werner Lemberg  <wl@gnu.org>
7910
7911         * mf/GNUmakefile: Add `-f' flag to `rm' command while removing
7912         the `*.scale.pfa' files to avoid warnings.
7913
7914 2005-08-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7915
7916         * lily/tempo-performer.cc (process_music): idem.
7917
7918         * lily/midi-def.cc (get_tempo): Rational to int conversion bug.
7919
7920 2005-08-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7921
7922         * Documentation/user/advanced-notation.itely (Text markup): not a
7923         fragment.
7924
7925         * lily/midi-item.cc (to_string): use to_int() iso. int cast.
7926
7927         * lily/staff-performer.cc (initialize): add tempo/name to
7928         audio_staff_
7929
7930
7931 2005-08-26  Graham Percival  <gpermus@gmail.com>
7932
7933         * Documentation/user/advanced.itely: add text-only example.
7934
7935         * Documentation/user/invoking.itely: add index entries for
7936         convert-ly.
7937
7938         * Documentation/user/ tutorial.itely, basic-notation.itely:
7939         small fixes suggested by Steve D.  Thanks!
7940
7941 2005-08-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7942
7943         * input/regression/markup-bidi-pango.ly: new file.
7944
7945         * lily/pango-font.cc (pango_item_string_stencil): make Mingw code
7946         standard. Remove #ifdef. Remove memleak.
7947         (text_stencil): use text_dir to decide how to composite items.
7948         (text_stencil): determine uniform text direction for the entire
7949         string.
7950
7951         * scripts/lilypond-book.py (output_name): remove
7952         latex_filter_cmd. Non-portable to non-Unix systems. 
7953         (get_latex_textwidth): use File.write and os.unlink() instead.
7954
7955         * THANKS: add Vicente & Trevor.
7956
7957         * lily/grob.cc (discretionary_processing): look up origin for
7958         programming_error too. 
7959
7960         * input/regression/tie-broken.ly: new file.
7961
7962         * lily/tie-column.cc (set_chord_outlines): set outline for line
7963         break case too.
7964         
7965 2005-08-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7966
7967         * lily/pango-font.cc (text_stencil): don't translate glyphs in
7968         unscaled transform, just translate stencils.
7969
7970         * ly/performer-init.ly: init timing to #t.  Fixes bar checks in
7971         MIDI.
7972
7973         * scm/define-markup-commands.scm (wordwrap-string): use
7974         text-direction
7975         (wordwrap-stencils): idem.
7976         (line): idem.
7977         (fill-line): idem.
7978         (wordwrap-stencils): translate last line to right for
7979         text-direction = LEFT.
7980
7981         * scm/define-grob-properties.scm (all-user-grob-properties): add
7982         text-direction.
7983
7984 2005-08-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
7985
7986         * lily/lily-parser.cc (Lily_parser): also copy output_basename_
7987         when copying a Lily_parser object.
7988
7989 2005-08-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7990
7991         * scm/define-markup-commands.scm (null): add null markup.
7992
7993 2005-08-25  Mats Bengtsson  <mabe@s3.kth.se>
7994
7995         * lily/item.cc: Add documentation of center-invisible
7996
7997 2005-08-24  Graham Percival  <gpermus@gmail.com>
7998
7999         * Documentation/user/advanced-notation.itely: add info about
8000         raising text.
8001
8002         * Documentation/user/programming-interface.itely: fix example
8003         involving raised text.
8004
8005 2005-08-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8006
8007         * lily/beam.cc (print): fix X start/end points of isolated
8008         beamlets.
8009
8010         * scm/output-ps.scm (grob-cause): escape spaces in URLs.
8011
8012         * lily/multi-measure-rest.cc (set_text_rods): new function.
8013
8014         * lily/vertical-align-engraver.cc (process_music): call
8015         Align_interface::set_axis(). This forces #'elements to be ordered,
8016         preventing random vertical reordering of staves.
8017
8018         * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
8019         add avoid-slur property. 
8020
8021         * Documentation/user/basic-notation.itely (Measure repeats): add
8022         countPercentRepeats example.
8023
8024         * Documentation/user/advanced-notation.itely (Other text markup
8025         issues): remove remark about normal-font.  We have \normal-text
8026
8027         * input/regression/tie-chord.ly: add note about remaining bugs.
8028
8029         * lily/tie.cc (print): try Tie_column::set_directions () if
8030         control-points not yet defined.
8031
8032 2005-08-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8033
8034         * lily/system-start-delimiter.cc (staff_brace): don't remove brace
8035         extent. This fixes braces falling out of the EPS bbox.
8036
8037         * mf/feta-beugel.mf (braces_per_font): make brace glyph align
8038         exactly to bbox.
8039
8040 2005-08-23  Graham Percival  <gpermus@gmail.com>
8041
8042         * {various} : change #up->#UP and #down->#DOWN.
8043
8044         * ly/titling-init.ly: Spacing fix when using printallheaders=##t.
8045
8046         * Documentation/user/advanced-notation.itely: clarify
8047         what objects handles text on a multimeasure rest.
8048
8049 2005-08-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8050
8051         * VERSION (PATCH_LEVEL): release 2.7.7
8052
8053 2005-08-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8054
8055         * make/lilypond-vars.make: set -dgs-font-load for "make web" 
8056
8057         * Documentation/topdocs/INSTALL.texi (Top): add GS bugfix requirement.
8058
8059         * input/regression/*.ly: formatting clean-up. Default layout
8060         before music expression.
8061
8062         * input/mutopia/R.Schumann/GNUmakefile (examples): switch off
8063         romanze28-2 example.
8064
8065         * scm/ps-to-png.scm: remove dir-re function.
8066         (make-ps-images): generate page names, instead of globbing them.
8067         This brings down LilyPond memory usage for make web by a factor
8068         10. 
8069
8070         * scripts/lilypond-book.py (Lilypond_snippet.png_is_outdated):
8071         don't use glob. With 3000 files, globbing
8072         Documentation/user/out-www/ can take too much time. 
8073         
8074         * lily/lily-guile.cc (gulp_file_to_string): take size argument.
8075
8076         * lily/general-scheme.cc (LY_DEFINE): take optional size argument.
8077
8078         * input/regression/tie-manual.ly: new file
8079
8080         * input/regression/tie-chord.ly: update.
8081
8082         * flower/include/interval.hh (struct Interval_t): 
8083
8084         * lily/tie.cc (distance): new function 
8085         (height): new function.
8086         (init): new function
8087         (Tie_details): new struct.
8088
8089         * lily/skyline.cc (skyline_height): new function.
8090
8091         * lily/tie-column.cc (set_chord_outlines): new function.
8092         (new_directions): read tie-configuration
8093
8094         * lily/skyline.cc: fix ASCII art.
8095         
8096 2005-08-22  Mats Bengtsson  <mabe@s3.kth.se>
8097
8098         * python/convertrules.py (string_or_scheme): Fix spelling error
8099
8100 2005-08-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8101         
8102         * lily/tie-column.cc (set_directions): set directions only once.
8103         (add_configuration): new function.
8104
8105         * lily/tie.cc (set_control_points): new function
8106
8107         * lily/tie-column.cc (new_directions): new function.
8108
8109         * ly/music-functions-init.ly: set 'pitch property
8110         iso. trill-pitch. This makes \relative work with \pitchedTrill
8111
8112         * lily/tie.cc (get_configuration): new function. Don't generate
8113         control points, rather, generate configuration.
8114         remove head-pair property.
8115
8116         * lily/include/tie.hh (struct Tie_configuration): new struct.
8117
8118 2005-08-22  Heikki Junes  <hjunes@cc.hut.fi>
8119
8120         * Documentation/topdocs/NEWS.tely: clarify.
8121
8122 2005-08-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8123
8124         * lily/tie.cc: remove minimum-length
8125
8126         * scm/define-grob-properties.scm (all-user-grob-properties):
8127         remove staffline-clearance, y-offset 
8128
8129         * input/regression/tie-dots.ly (Module): remove.
8130
8131         * lily/tie.cc (get_control_points): rewrite. Put short ties in
8132         staff-spaces, make long ties cross staff lines. Avoid flags and dots.
8133
8134         * input/regression/tie-single.ly: new file.
8135
8136 2005-08-21  Graham Percival  <gpermus@gmail.com>
8137
8138         * ly/bagpipe.ly: fix compile problem.
8139
8140 2005-08-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8141
8142         * lily/midi-item.cc (name): new method.
8143
8144         * lily/staff-performer.cc (acknowledge_audio_element): use
8145         signature of baseclass.
8146
8147         * lily/engraver-group.cc (do_announces): move recursion call out
8148         of while loop. 
8149
8150         * lily/drum-note-performer.cc (class Drum_note_performer): use
8151         process_music everywhere.
8152
8153         * ly/performer-init.ly: add default children everywhere.
8154
8155         * lily/paper-book.cc (output): call paper-book-write-midis
8156         directly: always write MIDI, even if no \layout {} block. 
8157
8158 2005-08-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8159
8160         * VERSION (PACKAGE_NAME): release 2.7.6
8161
8162         * lily/percent-repeat-engraver.cc (try_music): don't print warning
8163         about not being able to handle repeat.
8164
8165 2005-08-19  Jan Nieuwenhuizen  <janneke@gnu.org>
8166
8167         * Documentation/user/examples.itely (Piano templates):
8168         * lily/include/performer-group.hh: Remove last traces of
8169         Performer_group_performer.  Fixes make web.
8170
8171 2005-08-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8172
8173         * Documentation/user/examples.itely (Piano templates): change
8174         Engraver_group_engraver -> Engraver_group
8175
8176         * lily/ly-module.cc (make_stand_in_procs_weak): only kludge if
8177         scm_stand_in_procs is not weak_any.
8178
8179         * lily/volta-bracket.cc (print): don't use strcmp().
8180
8181         * lily/volta-engraver.cc (process_music): use
8182         Text_interface::is_markup() for setting the 'text property of the
8183         volta bracket.
8184
8185         * input/mutopia/claop.py (accents): update syntax to 2.6
8186
8187         * scm/define-context-properties.scm
8188         (all-user-translation-properties): add countPercentRepeats.
8189
8190         * Documentation/user/basic-notation.itely (Measure repeats): add
8191         isolated percent example.
8192
8193 2005-08-18  Graham Percival  <gpermus@gmail.com>
8194
8195         * input/ {various}: change direction #1, #-1 to
8196         #up/#down or \fooUp, \fooDown.
8197
8198         * Documentation/user/music-glossary.tely: #-1 to #down.
8199
8200         * ly/bagpipe.ly, engraver-init.ly, property-init.ly: #1
8201         to #up, #-1 to #down.
8202
8203 2005-08-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8204
8205         * lily/include/engraver-group.hh: rename.
8206
8207         * lily/include/performer-group.hh: rename.
8208
8209 2005-08-18  Mats Bengtsson  <mabe@s3.kth.se>
8210
8211         * input/test/script-abbreviations.ly: Removed some old LaTeX
8212         left overs.
8213
8214 2005-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
8215
8216         * python/convertrules.py (conv): inside-slur -> avoid-slur.
8217         Remove functions.  Remove if 1: constructs, reindent.
8218
8219         * scripts/convert-ly.py (add_version): Add functions from
8220         convertrules.py
8221
8222         * scm/script.scm (default-script-alist):
8223         s/priority/script-priority.  Fixes script stacking.  Backportme.
8224         (Fermata): Very low priority.
8225
8226 2005-08-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8227
8228         * input/regression/*.ly: remove superfluous \score blocks. Reindent.
8229
8230         * input/regression/slur-script.ly: remove padding tweaks. Add
8231         comment strings.
8232
8233         * lily/note-spacing.cc (get_spacing): remove kludge for EOL wide
8234         time sigs and related stuff.
8235
8236         * scm/define-grob-properties.scm (all-user-grob-properties): add
8237         @code{} tags to property description.
8238
8239         * lily/include/line-group-group-engraver.hh (Module): remove file.
8240
8241         * python/convertrules.py (conv): add rule for
8242         Engraver_group_engraver -> Engraver_group.
8243
8244         * lily/include/performer-group-performer.hh: analogous.
8245
8246         * lily/include/engraver-group-engraver.hh: rename to Engraver_group.
8247
8248         * lily/context-def.cc (instantiate): check for
8249         Engraver_group_engraver and Performer_group_performer not
8250         Engraver/Performer. Fixes crashes when doing \with { \consists .. }
8251  
8252 2005-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
8253
8254         * input/les-nereides.ly: Remove three fingering tweaks, update
8255         remaining one.
8256
8257         * input/regression/slur-script-inside.ly: Update, fix doc.
8258
8259         * scm/script.scm: Update to avoid-slur.
8260
8261         * scm/define-grob-properties.scm (avoid-slur): New property.
8262
8263         * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
8264         * lily/slur-engraver.cc (acknowledge_extra_object): Invoke
8265         outside_slur_callback if avoid-slur != #'inside.
8266
8267         * scm/define-grobs.scm (Fingering, Textscript): No
8268         inside-slur/outside-slur preference.
8269         (DynamicLineSpanner): Always outside slur.
8270
8271         * input/regression/slur-script.ly: More tests.
8272
8273 2005-08-17  Graham Percival  <gpermus@gmail.com>
8274
8275         * Documentation/user/lilypond-book: fix notime entry.
8276
8277         * Documentation/user/advanced-notation.itely: add info on
8278         getting an I rehearsal mark.
8279
8280         * Documentation/user/putting.itely: reinstate "I", re-enforce
8281         the fact that \override numbers are the result of
8282         experimentation and personal taste.
8283
8284         * Documentation/user/invoking.itely: update convert-ly bugs.
8285
8286 2005-08-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8287
8288         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set timing
8289         to #t.
8290
8291         * lily/timing-translator.cc (initialize): don't initialize timing.
8292
8293         * input/regression/stem-spacing.ly (Module): remove file.
8294
8295         * input/regression/spacing-stick-out.ly: specify Score context for
8296         \override
8297
8298         * input/regression/clefs.ly: remove spurious {}s 
8299
8300 2005-08-17  Heikki Junes  <hjunes@cc.hut.fi>
8301
8302         * Documentation/topdocs/NEWS.tely,
8303         input/regression/repeat-percent-count.ly: clarify a bit.
8304
8305 2005-08-16  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8306
8307         * input/no-notation/display-lily-tests.ly: delete
8308         display-lily-init call.
8309
8310         * ly/music-functions-init.ly (displayLilyMusic): move
8311         display-lily-init call at top level, so that the user should not
8312         have to call it.
8313
8314         * scm/define-music-display-methods.scm (note-name->lily-string):
8315         retrieve note names directly from pitchnames using new function `rassoc'.
8316         (display-lily-init): note names list construction removed.
8317
8318 2005-08-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8319
8320         * THANKS: spello.
8321
8322         * lily/lily-parser.cc (get_header): copy module, instead of
8323         returning it.
8324
8325         * Documentation/topdocs/NEWS.tely (Top): add entry for percent
8326         counters.
8327
8328         * Documentation/user/basic-notation.itely (Measure repeats): add
8329         links to Counter grobs.
8330
8331         * scm/define-grobs.scm (all-grob-descriptions): add
8332         DoublePercentRepeatCounter
8333         (all-grob-descriptions): add PercentRepeatCounter
8334
8335         * lily/percent-repeat-engraver.cc (class Percent_repeat_engraver):
8336         also create counter grobs.
8337
8338         * lily/separation-item.cc (extremal_break_aligned_grob): don't
8339         return grob without space-alist.
8340
8341         * input/proportional.ly: tune staff-padding.
8342
8343         * input/regression/repeat-percent-count.ly: new file. 
8344
8345 2005-08-16  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8346
8347         * input/no-notation/display-lily-tests.ly: moved from
8348         input/regression/ to input/no-notation. Be sure to call
8349         `display-lily-init' before trying to use the display function.
8350
8351 2005-08-16  Mats Bengtsson  <mabe@s3.kth.se>
8352
8353         * scripts/lilypond-book.py (option_definitions): Don't localize
8354         the empty string. Fixes bug when --psfonts was used with
8355         non-English locale.
8356
8357 2005-08-15  Graham Percival  <gpermus@gmail.com>
8358
8359         * lily/tuplet-bracket.cc: simple build fix.
8360
8361         * Documentation/user/putting.itely: use "we" instead of "I".
8362
8363         * Documentation/user/basic-notation.itely: cautionary accidentals
8364         work with naturals, too.
8365
8366 2005-08-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8367
8368         * lily/tuplet-bracket.cc (calc_position_and_height): add
8369         staff-padding support.
8370
8371         * input/proportional.ly: set staff-padding.
8372         
8373         * VERSION (PATCH_LEVEL): release 2.7.5
8374
8375         * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): text formatting
8376         fixes. Remove tweaks.
8377
8378         * input/regression/tuplet-slope.ly: add a test case.
8379
8380         * lily/tuplet-bracket.cc (calc_position_and_height): revert
8381         erroneous fix. Add spanner bounds to offset array with relative X
8382         positions.
8383
8384         * ly/engraver-init.ly: add Rest_engraver only once.
8385
8386         * scm/define-music-display-methods.scm (KeyChangeEvent): only do
8387         (*parser*) lookup if (*parser*) != #f.
8388
8389 2005-08-15  Jan Nieuwenhuizen  <janneke@gnu.org>
8390
8391         * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
8392         Cut-and paste update.
8393
8394         * input/regression/slur-script.ly: Add example of reverting
8395         inside-slur for fingering.
8396
8397         * scm/define-grobs.scm (DynamicLineSpanner, Fingering,
8398         TextScript): Explicitly set inside-slur #f, forcing these out of slur.
8399
8400         * lily/slur-engraver.cc (acknowledge_extra_object): Only invoke
8401         outside_slur_callback if inside-slur == #f (as opposed to unset).
8402
8403 2005-08-14  Jan Nieuwenhuizen  <janneke@gnu.org>
8404
8405         * tex/GNUmakefile (INSTALLATION_FILES): Remove enc symlink setup,
8406         encoding files are already removed.
8407
8408 2005-08-15  Mats Bengtsson  <mabe@s3.kth.se>
8409
8410         * Documentation/user/advanced-notation.itely (Instrument names):
8411         Document a workaround for instrument names that collide with
8412         system start braces/brackets.
8413
8414 2005-08-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8415
8416         * lily/rest-collision.cc (do_shift): spello.
8417
8418         * input/proportional.ly: use #'used property. Set break-overshoot
8419         property.
8420
8421         * mf/feta-arrow.mf: center on arrow tip center, iso. tip edge.
8422
8423         * lily/paper-column.cc: add #'used property
8424
8425         * lily/mark-engraver.cc (stop_translation_timestep): set grob
8426         array for staves found.
8427
8428         * lily/metronome-engraver.cc (stop_translation_timestep): set grob
8429         array for stavesFound.
8430
8431         * lily/staff-spacing.cc (next_note_correction): add fixed and
8432         space to calling convention. This fixes spacing of accidentals
8433         after barlines.
8434
8435         * input/regression/spacing-accidental-stretch.ly: add barline -
8436         accidental case.
8437
8438         * scm/framework-ps.scm (page-header): add version number to
8439         creator
8440         (eps-header): idem.
8441
8442         * mf/feta-bolletjes.mf: swap d0 and u0 fa heads.
8443         
8444 2005-08-13  Graham Percival  <gpermus@gmail.com>
8445
8446         * Documentation/user/global.itely: add "fit as much as
8447         possible onto this page" example (Vertical spacing).
8448
8449 2005-08-13  Jan Nieuwenhuizen  <janneke@gnu.org>
8450
8451         * *: Nitpick run.
8452
8453         * buildscripts/fixcc.py: Fixes.
8454
8455 2005-08-12  Graham Percival  <gpermus@gmail.com>
8456
8457         * Documentation/user/advanced-notation.itely: add markup
8458         example to Text spanners.
8459
8460 2005-08-12  Mats Bengtsson  <mabe@s3.kth.se>
8461
8462         * Documentation/user/basic-notation.itely (Ties): Add example of
8463         tying a tremolo to a chord. Thanks to Steve Doonan. 
8464
8465         * lily/tie-engraver.cc: Add tieWaitForNote to the list of read
8466         properties and move tieMelismaBusy to the list of written
8467         properties. 
8468
8469 2005-08-12  Heikki Junes  <hjunes@cc.hut.fi>
8470
8471         * po/TODO: suggest to use a dedicated tool like kbabel.
8472
8473         * po/fi.po: update using kbabel.
8474
8475 2005-08-12  Jan Nieuwenhuizen  <janneke@gnu.org>
8476
8477         * *: Remove obsolete files.  Nitpick run.
8478
8479         * lily/lily-guile.cc (parse_symbol_list): Bugfix.
8480
8481 2005-08-11  Jan Nieuwenhuizen  <janneke@gnu.org>
8482
8483         * mf/GNUmakefile (get-*-fonts): Rename from get-*-pfa.  Copy SVG
8484         too.
8485
8486         * Documentation/topdocs/NEWS.tely (Top): Add slur script feature.
8487
8488         * lily/lily-guile.cc (parse_symbol_list): Rewrite.  Grok multiple
8489         whitespace as symbol separator.
8490
8491         * lily/side-position-interface.cc: Add slur-padding.
8492
8493         * input/regression/slur-script.ly: Fixed.  Backportme?  This is
8494         quite a large fix, and it never worked in a stable release; so not
8495         really a regression.
8496
8497         * lily/phrasing-slur-engraver.cc (class Phrasing_slur_engraver):
8498         Update cut and paste code from Slur_engraver.
8499
8500         * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
8501         Add.
8502
8503         * scm/define-grobs.scm (DynamicLineSpanner): Add
8504         dynamic-line-spanner-interface.
8505         (DynamicLineSpanner, TextScript, Fingering): Add slur-padding.
8506
8507 2005-08-09  Jan Nieuwenhuizen  <janneke@gnu.org>
8508
8509         * lily/slur-engraver.cc (acknowledge_extra_object): Bugfix: use
8510         to_boolean () so that non-set 'inside-slur means false.
8511
8512         * lily/slur.cc (outside_slur_callback): Bugfixes: make sure that
8513         slur has control-points.  Skip script without direction.  Always
8514         do_shift if script inside slur, even if slur not contained in
8515         script y-extent.  Increment k in loop.
8516
8517 2005-08-11  Mats Bengtsson  <mabe@s3.kth.se>
8518
8519         * scm/define-markup-commands.scm: Improved regexp to search for
8520         EPS bounding boxes and corrected call to ly:warning.
8521
8522 2005-08-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8523
8524         * Documentation/user/programming-interface.itely (Displaying music
8525         expressions): doc for \displayLilyMusic. Also some precisions in
8526         "Markup construction in Scheme"
8527
8528 2005-08-10  Mats Bengtsson  <mabe@s3.kth.se>
8529
8530         * scm/define-markup-commands.scm (normal-text): Added 2 new
8531         markup commands, \normal-text and \medium (the latter thanks to
8532         Bruce Fairchild). 
8533
8534 2005-08-08  Graham Percival  <gpermus@gmail.com>
8535
8536         * Documentation/user/programming-interface.itely: fix @{ @}.
8537
8538         * scm/define-markup-commands.scm: add linewidth info to
8539         \justify and \wordwrap, add "upright is the opposite of italic".
8540
8541         * Documentation/user/advanced-notation.itely: shaped->shape,
8542         add (cons (markup "foo")) type of example to text markup,
8543         reword multi-measure rests section.
8544
8545         * lily/note-heads-engraver.cc: changed Shaped->Shape in a
8546         comment.  No actual code was touched.
8547
8548         * Documentation/user/invoking.itely: add more info about
8549         \include.  Thanks, Bruce!
8550
8551         * THANKS: add Bruce Fairchild, alphabetise.
8552
8553         * Documentation/user/global.itely: document \score{\header{}}
8554         behavior.
8555
8556         * Documentation/user/basic-notation.itely: reword multi-measure
8557         rest discussion in Rests.
8558
8559 2005-08-08  Mats Bengtsson  <mabe@s3.kth.se>
8560
8561         * Documentation/user/programming-interface.itely (Markup
8562         construction in Scheme): Corrected example and tried to clarify
8563         the implicit \line in the table.
8564
8565 2005-08-07  Graham Percival  <gpermus@gmail.com>
8566
8567         * Documentation/user/instrument-notation.itely: moved
8568         some bagpipe info back into the bagpipe section.  Somehow
8569         it ended up in the "other vocal issues" section?!  :o_O
8570
8571 2005-08-07  Jan Nieuwenhuizen  <janneke@gnu.org>
8572
8573         * scm/framework-ps.scm (dir-join): Rename from path-join (joins
8574         directories, not paths).
8575
8576 2005-08-06  Jan Nieuwenhuizen  <janneke@gnu.org>
8577
8578         * scm/framework-ps.scm (munge-lily-font-name): Bugfix: Munge only
8579         plain emmentaler/aybabtu.  Backportme.
8580
8581         * lily/tuplet-bracket.cc (calc_position_and_height): Bugfix:
8582         missing dir correction.
8583
8584 2005-08-05  Graham Percival  <gperlist@shaw.ca>
8585
8586         * scm/define-markup-commands: fix reversed justify/wordwrap
8587         doc strings.
8588
8589 2005-08-05  Jürgen Reuter  <reuter@ipd.uka.de>
8590
8591         * lily/ligature-engaver.cc, lily/coherent-ligature-engaver.cc,
8592         lily/gregorian-ligature-engaver.cc,
8593         lily/include/ligature-engraver.hh,
8594         lily/include/coherent-ligature-engraver.hh,
8595         lily/include/gregorian-ligature-engraver.hh: make these classes
8596         truely abstract.  This should fix some internal oddities such as
8597         duplicate as well as dead translator/property declarations, and
8598         also some dead code.
8599
8600         * lily/ligature-bracket-engraver.cc, lily/ligature-engraver.cc:
8601         bugfix: avoid message "junking empty ligature" on ligature
8602         brackets by collecting dummy grobs.
8603
8604 2005-08-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8605
8606         * lily/tuplet-bracket.cc (print): default right overshoot to 0.0
8607
8608         * input/proportional.ly (staffKind): bugfix.
8609         (staffKind): updates by Trevor Baca.
8610
8611         * scm/define-grobs.scm (all-grob-descriptions): remove arrows as
8612         default layout. 
8613
8614         * lily/tuplet-bracket.cc (print): check whether edge-text is a
8615         pair.
8616
8617         * lily/beam.cc (rest_collision_callback): call position_beam() if
8618         necessary.
8619
8620         * VERSION: release 2.7.4
8621
8622         * input/regression/spacing-uniform-stretching.ly: new file.
8623
8624         * lily/spacing-loose-columns.cc (set_loose_columns): use robust_relative_extent().
8625
8626         * Documentation/topdocs/NEWS.tely (Top): add Nicolas as
8627         contributor.
8628
8629         * lily/include/ly-module.hh: define MODULE_GC_KLUDGE globally.
8630
8631         * input/proportional.ly: new file.
8632
8633         * lily/tuplet-bracket.cc (after_line_breaking): don't suicide if
8634         columns is empty
8635
8636         * lily/tuplet-engraver.cc (finalize): new function. Reset right
8637         bounds to currentCommandColumn for the last step.
8638         (start_translation_timestep): if tupletFullLength is set, set
8639         bound to Paper Column
8640
8641         * input/regression/tuplet-full-length.ly (indent): new file.
8642
8643         * lily/spacing-loose-columns.cc (set_loose_columns): space a whole
8644         clique of loose columns, eg. a set of grace notes in strict
8645         notespacing.
8646
8647         * input/regression/spacing-strict-spacing-grace.ly: new file.
8648
8649         * lily/key-signature-interface.cc: change property name to
8650         alteration-alist
8651
8652         * lily/key-engraver.cc (read_event): read keyAlterationOrder, not
8653         keyAccidentalOrder
8654
8655         * python/convertrules.py (conv): keyAccidentalOrder ->
8656         keyAlterationOrder
8657
8658         * lily/key-engraver.cc (create_key): always print a cancellation
8659         for going to C-major/A-minor, regardless of printKeyCancellation.
8660         (create_key): remove typecheck for visibility. This fixes key
8661         signature not being printed.
8662
8663         * lily/spacing-determine-loose-columns.cc: new file.
8664
8665         * input/regression/spacing-strict-notespacing.ly: new file.
8666
8667         * lily/spacing-spanner.cc (generate_springs): rename from
8668         do_measure. 
8669         (generate_pair_spacing): new function.
8670         (init, generate_pair_spacing): set between-cols for floating
8671         nonmusical columns.
8672
8673         * lily/spaceable-grob.cc (get_spring): new function. 
8674
8675         * lily/tuplet-bracket.cc (print): on the left, the overshoot is
8676         relative to the right edge of the prefatory matter.
8677
8678         * lily/beam.cc (print): read break-overshoot to determine where to
8679         stop/start broken beams.
8680
8681         * input/regression/spanner-break-overshoot.ly: new file.
8682
8683 2005-08-04  Graham Percival  <gperlist@shaw.ca>
8684
8685         * ly/bagpipe.ly: updated.
8686
8687         * Documentat/user/instrument.itely: un-comment out bagpipe example.
8688
8689 2005-08-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8690
8691         * lily/dynamic-engraver.cc (acknowledge_slur): add slur to
8692         support: now (de)crescs avoid slurs as well.
8693
8694         * Documentation/user/instrument-notation.itely (Bagpipe example):
8695         comment out non-functioning bagpipe example.
8696         (Bagpipe definitions): idem.
8697
8698         * Documentation/topdocs/NEWS.tely (Top): add uniform-stretching example.
8699         (Top): add proportionalNotationDuration example.
8700
8701         * input/regression/spacing-proportional.ly: new file.
8702
8703         * lily/tuplet-bracket.cc (parallel_beam): broken bracket never is
8704         synched to a beam.
8705
8706         * lily/beam.cc (shift_region_to_valid): divide by zero fix. This
8707         fixes beams with a single stem (eg. beams across linebreaks.)
8708
8709         * lily/parser.yy (simple_string): allow \new STRING_IDENTIFIER.
8710
8711         * flower/rational.cc (operator +): prevent overflow. This fixes
8712         heavily nested tuplets.
8713
8714         * lily/auto-beam-engraver.cc (derived_mark): new method. Yes. We
8715         have to protect even those unlikely to be corrupted data members.  
8716
8717 2005-08-04  Graham Percival  <gperlist@shaw.ca>
8718
8719         * ly/bagpipe.ly: new file.
8720
8721         * THANKS: added Sven Axelsson.
8722
8723 2005-08-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8724
8725         * lily/spacing-engraver.cc (stop_translation_timestep): directly
8726         copy proportionalNotationDuration into currentMusicalColumn if
8727         set.
8728
8729         * lily/spacing-spanner.cc (musical_column_spacing): if
8730         uniform-stretching set, fixed space is 0.0
8731
8732         * input/regression/spacing-multi-tuplet.ly: show
8733         uniform-stretching property.
8734
8735         * lily/spacing-spanner.cc (effective_shortest_duration): new function.
8736
8737         * lily/include/spacing-spanner.hh (class Spacing_spanner): new file.
8738         (struct Spacing_options): new struct.
8739
8740         * lily/spacing-basic.cc: new file.
8741
8742         * lily/spacing-spanner.cc (note_spacing): remove outdated code:
8743         delta_t doesn't have to be smaller than shortest_playing_len
8744
8745 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8746
8747         * input/regression/markup-arrows.ly:  new file.
8748
8749         * lily/tuplet-bracket.cc: document new behavior.
8750
8751         * input/regression/tuplet-broken.ly: new file. Demonstrate tuplets
8752         with line breaks.
8753
8754         * scm/define-markup-commands.scm (arrow-head): arrow-head markup command.
8755
8756         * scm/define-grobs.scm (all-grob-descriptions): set arrows as
8757         default 
8758
8759         * lily/tuplet-bracket.cc: add edge-text property.
8760         add break-overshoot.
8761         (print): read break-overshoot.
8762         (print): read edge-text, add stencils.
8763
8764         * mf/feta-arrow.mf: new file.
8765
8766         * mf/feta-generic.mf: add feta-arrow.
8767
8768 2005-08-03  Mats Bengtsson  <mabe@s3.kth.se>
8769
8770         * Documentation/user/lilypond-book.itely (An example of a
8771         musicological document): Added flag -o to dvips for people who use
8772         the default setting in teTeX where output is sent to the printer. 
8773
8774         * Documentation/user/global.itely (Vertical spacing): Added
8775         reference to the Axis_group_engraver which documents the *Extent
8776         properties.
8777
8778 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8779
8780         * Documentation/user/basic-notation.itely (Tuplets): add note
8781         about nested tuplets. Remove BUG. 
8782
8783         * input/regression/tuplet-nest.ly: update: remove manual hack. 
8784
8785         * lily/tuplet-bracket.cc (print): use robust_scm2drul
8786         (print): manually call print() for subtuplets.
8787         (calc_position_and_height): add subtuplets to the
8788         support. Vertically shift outer tuplet 
8789
8790         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): set
8791         remove-first for Lyrics, ChordNames and FiguredBass
8792
8793         * scm/define-grob-properties.scm (all-internal-grob-properties):
8794         use ly:grob-array? iso. grob-list?
8795         (all-internal-grob-properties): add tuplets grob-array.
8796
8797         * lily/tuplet-bracket.cc (add_tuplet_bracket):
8798         new function
8799
8800 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8801
8802         * input/test/time-signature-staff.ly: new file.
8803
8804         * ly/declarations-init.ly (center): escape to Scheme. Fixes
8805         spurious #<Music FingerEvent> errors. Backportme.
8806
8807 2005-08-03  Mats Bengtsson  <mabe@s3.kth.se>
8808
8809         * Documentation/user/programming-interface.itely (Markup
8810         construction in Scheme): Corrected markup syntax in the
8811         translation table.
8812
8813 2005-08-03  Graham Percival  <gperlist@shaw.ca>
8814
8815         * Documentation/user/instrument-notation.itely: small update
8816         to bagpipe notation docs; thanks Sven!
8817
8818         * Documentation/user/basic-notation.itely: add link about trills.
8819
8820 2005-08-02  Graham Percival  <gperlist@shaw.ca>
8821
8822         * Documentation/user/music-glossary: remove accidentally committed
8823         fink patch.
8824
8825 2005-08-02  Yoshinobu Ishizaki  <isizaki@mte.biglobe.ne.jp>
8826
8827         * lily/lily-parser.cc (get_header): new function. Enable multiple
8828         \header definitions.
8829
8830         * lily/parser.yy (lilypond_header_body): use get_header.
8831
8832         * ly/init.ly:
8833         * scm/lily-library.scm (print-score-with-defaults): renamed
8834         $globalheader to $defaultheader
8835             
8836         * Documentation/user/global.itely (Creating titles): added short
8837         explanation that multiple headers are useable.
8838
8839
8840 2005-08-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8841
8842         * lily/module-scheme.cc (LY_DEFINE): new file. 
8843
8844         * Documentation/user/advanced-notation.itely (Font selection): add
8845         doco for make-pango-font-tree.
8846
8847 2005-07-31  Graham Percival  <gperlist@shaw.ca>
8848
8849         * Documentation/user/music-glossary: more languages
8850         for tenuto.
8851
8852         * Docuemntation/user/instrument-notation.itely: minor
8853         update for bagpipe example.
8854
8855 2005-07-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8856
8857         * input/regression/+.ly (TODO): add some text.
8858
8859 2005-07-28  Graham Percival  <gperlist@shaw.ca>
8860
8861         * Documentation/user/invoking.itely: \score begins with music.
8862
8863         * Documentation/user/ basic-notation.itely,
8864         instrument-notation.itely: minor changes.
8865
8866         * Documentation/user/music-glossary.itely: began tenuto entry.
8867
8868 2005-07-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8869
8870         * scm/output-socket.scm (bezier-sandwich): add bezier-sandwich
8871
8872         * mf/feta-bolletjes.mf: swap up and down for aiken heads.
8873
8874 2005-07-27  Graham Percival  <gperlist@shaw.ca>
8875
8876         * Documentation/user/examples.itely: remove bagpipe template.
8877
8878         * Documentation/user/instrument-notation.itely: add bagpipe
8879         section, maybe fix quotes in lyrics.  I hate text encoding.
8880         Clarify chord durations, more bagpipe stuff.
8881
8882 2005-07-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8883  
8884         * lily/accidental-engraver.cc: formatting fixes.
8885
8886         * lily/spacing-spanner.cc (prune_loose_columns): right-items is a
8887         grob-array.
8888
8889         * lily/arpeggio.cc (print): suicide arpeggio for single notehead.
8890
8891         * lily/note-column.cc (arpeggio): new function.
8892
8893         * lily/note-spacing.cc (get_spacing): also take arpeggio into
8894         account for spacing.
8895
8896 2005-07-25  Jan Nieuwenhuizen  <janneke@gnu.org>
8897
8898         * lily/main.cc (sane_setenv)[!ARGV0_RELOCATION]: Also define.
8899         (setup_guile_env): Use it instead of nonstandard setenv.  Fixes
8900         mingw build.
8901         
8902 2005-07-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8903
8904         * scm/lily.scm (lilypond-all): clear anonymous modules after
8905         processing files.
8906
8907 2005-07-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8908
8909         * flower/include/guile-compatibility.hh (SCM_I_CONSP): add
8910         SCM_I_CONSP
8911
8912         * VERSION: 2.7.3 released
8913
8914         * Documentation/user/invoking.itely (Invoking lilypond): add
8915         LILYPOND_GC_YIELD documentation.
8916
8917         * lily/*: cleanups: use scm_from_int iso. scm_int2num. Idem for
8918         scm_from_real / scm_make_real.
8919
8920         * lily/main.cc (setup_guile_env): new function. Set GC min_yields
8921         higher. This increases memory footprint, but provides overall
8922         speedup of 15 to 20%. 
8923
8924         * lily/include/translator.hh (class Translator): remove
8925         PRECOMPUTED_VIRTUAL everywhere.
8926
8927         * lily/include/lily-guile.hh: inline scm_c[ad]r, scm_is_pair.
8928
8929         * lily/context.cc (now_mom): non-recursive now_mom() 
8930
8931         * lily/include/profile.hh: new file.
8932
8933         * lily/profile.cc: new file.
8934
8935         * lily/grob.cc (Grob::Grob): look properties up directly.
8936
8937         * lily/open-type-font.cc (get_indexed_char): cache index -> bbox
8938         lookups.
8939
8940         * lily/include/box.hh (class Box): smob Box type.
8941
8942         * lily/smobs.cc (protect_smob): O(1) GC (un)protection.
8943
8944         * lily/include/smobs.hh (DECLARE_BASE_SMOBS): add methods
8945         protect() and unprotect(). Use throughout.
8946
8947 2005-07-24  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8948
8949         * Documentation/topdocs/NEWS.tely: new item for \displayLilyMusic
8950
8951         * scm/define-music-display-methods.scm (markup->lily-string):
8952         markup elements can also be strings (without simple-markup
8953         appended)
8954
8955 2005-07-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8956
8957         * lily/context.cc (where_defined): also assign value in
8958         where_defined().
8959
8960         * lily/bezier.cc (get_other_coordinate): use curve_coordinate
8961         (curve_coordinate): new function
8962
8963         * lily/simple-spacer.cc (add_columns): only add rods between
8964         column i and begin/end if keep-inside-line is set (this repleces
8965         allow-outside-line as default)
8966
8967 2005-07-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8968
8969         * lily/tuplet-engraver.cc (start_translation_timestep): only read
8970         tupletSpannerDuration if applicable.
8971
8972         * lily/font-size-engraver.cc (process_music): read fontSize only
8973         once per timestep.
8974
8975         * lily/engraver*cc: use throughout.
8976         
8977         * lily/include/translator.icc (ADD_ACKNOWLEDGER): new macro.
8978
8979         * lily/translator.cc (add_acknowledger): new file. Directly jump
8980         into an Engraver::acknowledge_xxx () method based on a grobs
8981         interface-list.
8982
8983         * lily/include/translator-dispatch-list.hh (class
8984         Engraver_dispatch_list): new struct, new file.
8985
8986         * scm/define-context-properties.scm
8987         (all-internal-translation-properties): remove acceptHashTable,
8988         acknowledgeHashTable
8989
8990         * lily/translator-group.cc (mark_smob): idem for acceptHashTable.
8991
8992         * lily/engraver-group-engraver.cc (Engraver_group_engraver):
8993         change acknowledgeHashTable to C++ member. 
8994
8995         * lily/rest-collision.cc (do_shift): use extract_grob_set().
8996
8997 2005-07-22  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8998
8999         * scm/display-lily.scm: new file. Define a `display-lily-music'
9000         function, that displays the music expression given as an argument,
9001         using LilyPond notation.
9002
9003         * scm/define-music-display-methods.scm: new file. Implementation
9004         of display methods for each music type.
9005
9006         * ly/music-functions-init.ly (displayLilyMusic): new function for
9007         displaying music with LilyPond notation.
9008
9009         * input/regression/display-lily-tests.ly: new regression test file
9010         for `display-lily-music'.
9011
9012         * scm/markup.scm: remove obsolete debugging code (for printing
9013         markups with LilyPond notation).
9014
9015         * scm/define-music-types.scm (music-name-to-property-table):
9016         * scm/clef.scm (supported-clefs): export, in order to be accessible
9017         from the (scm display-lily) module.
9018
9019 2005-07-22  Jan Nieuwenhuizen  <janneke@gnu.org>
9020
9021         * Documentation/topdocs/NEWS.tely (Top): Typo.
9022
9023 2005-07-22  Heikki Junes  <hjunes@cc.hut.fi>
9024
9025         * Documentation/index.html.in, Documentation/texinfo.css,
9026           stepmake/bin/text2html.py, buildscripts/mutopia-index.py,
9027           Documentation/bibliography/index.html.in,
9028           Documentation/bibliography/html-long.bst: revert css-width patch,
9029           it does not work with IE6.
9030
9031 2005-07-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9032
9033         * Documentation/texinfo.css: revert 760px hack. 
9034
9035         * VERSION: release 2.7.2
9036
9037         * Documentation/topdocs/NEWS.tely (Top): mention barNumberCheck
9038
9039         * Documentation/user/basic-notation.itely (Barnumber check): add
9040         section.
9041
9042         * scm/music-functions.scm (skip-to-last): new function. Show only
9043         last showLastLength part of the \score.
9044
9045         * lily/moment-scheme.cc (LY_DEFINE): new function ly:moment-sub
9046
9047         * python/convertrules.py (conv): add ly:x-moment rule
9048
9049         * lily/moment-scheme.cc (LY_DEFINE): rename ly:X-moment  -> ly:moment-X
9050
9051         * Documentation/topdocs/NEWS.tely (Top): add new feature.
9052
9053         * Documentation/user/instrument-notation.itely (Flexibility in
9054         alignment): options in subsections.
9055
9056         * lily/lyric-engraver.cc (process_music): don't typeset text for _
9057         syllable text. Instead, assume that the previous lyric text is a
9058         melismated text.
9059
9060         * Documentation/index.html.in: revert 800x600 change.
9061
9062 2005-07-19  Jan Nieuwenhuizen  <janneke@gnu.org>
9063
9064         * lily/main.cc (main): Remove invalid handle kludge.
9065
9066         * scm/lily.scm (running-from-gui?): WINDOWS: check -dgui.
9067         (lambda): add gui define.
9068
9069 2005-07-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9070
9071         * Documentation/topdocs/NEWS.tely (Top): add note about Musica ficta.
9072
9073         * Documentation/user/instrument-notation.itely (Musica ficta
9074         accidentals): add section Musica ficta accidentals
9075
9076         * lily/accidental-engraver.cc (make_suggested_accidental): new
9077         function.
9078         (make_standard_accidental): move into new function.
9079         (create_accidental): new function.
9080
9081         * scm/define-grobs.scm (all-grob-descriptions): new Grob
9082         AccidentalSuggestion
9083
9084         * lily/output-def-scheme.cc (LY_DEFINE): take default  argument.
9085
9086         * lily/output-def.cc (lookup_variable): return SCM_UNDEFINED if
9087         undefined.
9088
9089         * Documentation/user/global.itely (Page formatting): document
9090         horizontalshift.
9091
9092         * scm/page-layout.scm (default-page-music-height):
9093         horizontalshift: new variable, shift all systems by
9094         horizontalshift to the right, to make space for instrument names.
9095
9096         * scm/paper.scm (set-paper-dimension-variables): add horizontalshift
9097
9098         * lily/input-scheme.cc (LY_DEFINE): take format commands.
9099
9100 2005-07-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9101
9102         * lily/note-column.cc (dir): idem.
9103
9104         * lily/spacing-spanner.cc (Module): idem.
9105
9106         * lily/script-column.cc (before_line_breaking): use extract_grob_set()
9107
9108         * lily/include/paper-column.hh (class Paper_column): add
9109         non-static get_rank() member.
9110
9111         * VERSION: release 2.7.1
9112         
9113         * scm/framework-null.scm: new file, used for benchmarking.
9114
9115 2005-07-20  Heikki Junes  <hjunes@cc.hut.fi>
9116
9117         * Documentation/topdocs/INSTALL.texi, configure.in: fix
9118         version dependencies for fontforge and gs.
9119
9120         * Documentation/index.html.in, Documentation/texinfo.css,
9121         stepmake/bin/text2html.py, buildscripts/mutopia-index.py,
9122         Documentation/bibliography/index.html.in, 
9123         Documentation/bibliography/html-long.bst: optimize width of
9124         html for a 800x600 screen (width:760), increases printability
9125         when 'fit to page' is not set and readability in wide screens.
9126
9127         * stepmake/bin/add-html-footer.py: add missing </p>.
9128
9129 2005-07-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9130
9131         * scm/define-markup-commands.scm (beam): use polygon in beam
9132         command.
9133
9134         * lily/grob-pq-engraver.cc (stop_translation_timestep): save up
9135         all acknowledged grobs, and do potentially expensive merge and
9136         write in one go.
9137
9138         * buildscripts/mf-to-table.py (write_fontlist): enforce noBreak.
9139
9140         * configure.in (reloc_b): add --enable-static-gxx to statically
9141         link to libstdc++
9142
9143         * lily/GNUmakefile (static-gxx-libs): new target
9144         static-gxx-libs. Create symlink to libstdc++.a
9145
9146         * lily/new-lyric-combine-music-iterator.cc: rename to
9147         Lyric_combine_music_iterator
9148
9149         * lily/lyric-combine-music-iterator.cc
9150         (Old_lyric_combine_music_iterator): rename to
9151         Old_lyric_combine_music_iterator
9152
9153         * lily/*-engraver.cc (various): remove double use of
9154         PRECOMPUTED_VIRTUAL function: only use
9155         start_translation_timestep() and stop_translation_timestep(), not
9156         both.
9157
9158         * lily/break-substitution.cc (fast_substitute_grob_array): do
9159         fast_substitute_grob_array for all unordered grob_arrays.
9160         (substitute_grob): return Grob *. Saves packing/unpacking SCMs.
9161         (substitute_grob_array): optimize.
9162
9163         * lily/align-interface.cc (set_axis): set ordered_ for 'elements
9164
9165         * lily/include/grob-array.hh (class Grob_array): ordered_ member.
9166
9167         * lily/parser.yy: revert $globalheader patch.
9168         
9169         * lily/include/translator.icc
9170         (IMPLEMENT_FETCH_PRECOMPUTABLE_METHODS): directly jump into
9171         Translator methods, without _static helper.
9172  
9173         * lily/grob-smob.cc (derived_mark): rename from
9174         do_derived_mark(). Return void.
9175
9176         * scm/define-context-properties.scm
9177         (all-internal-translation-properties): remove tweakCount/tweakRank.
9178
9179         * scm/output-lib.scm (begin-of-line-invisible): use vectors for
9180         predefined break-visibilities.
9181
9182         * lily/item.cc (handle_prebroken_dependencies): use a vector of 3
9183         booleans for break-visibility.
9184
9185         * Documentation/topdocs/NEWS.tely (Top): add note about engravers.
9186
9187         * python/convertrules.py (conv): rule for Timing_translator. 
9188
9189         * lily/include/translator.icc: new file. 
9190
9191         * lily/paper-column-engraver.cc (process_music): new
9192         file. Separate Paper_column factory from Score_engraver.
9193
9194         * lily/vertically-spaced-context-engraver.cc: administer
9195         spaceable-staves property of System.
9196
9197         * lily/translator-group-ctors.cc: new file.
9198
9199         * lily/context-property.cc (make_grob_from_properties): construct
9200         the right Grob class programmatically, looking at the class entry
9201         for the meta property.
9202
9203         * lily/break-align-engraver.cc (stop_translation_timestep): call
9204         Break_align_interface::add_element() directly.
9205
9206         * lily/context.cc (measure_position): measure_position() is now a
9207         normal function.
9208
9209         * lily/include/translator.hh (class Translator): rename
9210         process_acknowledged_grobs() to process_acknowledged() and move to
9211         Translator.
9212
9213         * scm/define-grobs.scm (all-grob-descriptions): add a 'class meta
9214         field for each grob description.
9215
9216         * lily/include/translator-group.hh (class Translator_group):
9217         change to base class. Separate class from Translator. This gets
9218         rid of virtual inheritance for Engravers/Performers.
9219
9220         * lily/staff-performer.cc (class Staff_performer): derive
9221         Staff_performer from Performer, not Performer_group_performer 
9222
9223         * Lily/translator-group.cc (precomputed_recurse_over_translators):
9224         new function.
9225         (precompute_method_bindings): new function. Precompute lists of
9226         Translators, so we only call methods (process_music,
9227         start_translation_timestep, etc.) for Translators needing
9228         it. Also: dispose of pointer-to-member-function calls.
9229
9230         * lily/engraver-group-engraver.cc: remove engraver_each,
9231         recurse_down_engravers ()
9232
9233         * lily/note-head.cc (internal_print): only call
9234         glyph-name-procedure if style != default. 
9235
9236 2005-07-16  Graham Percival  <gperlist@shaw.ca>
9237
9238         * ly/titling-init.ly: add printallheaders option.
9239
9240         * Documentation/user/global.itely: document printallheaders.
9241
9242 2005-07-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9243
9244         * lily/system.cc (do_derived_mark): don't mark from object_alist_
9245         anymore, but do it centrally.  
9246
9247         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
9248         hammer hack.
9249
9250         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-object
9251
9252         * scm/output-lib.scm: remove hammer-print-function.
9253
9254         * lily/include/pointer-group-interface.hh (extract_grob_set): new
9255         macro. Declare a Link_array<Grob> and fill it from a grob.
9256         (extract_item_set): idem for item.
9257
9258         * lily/break-substitution.cc: add header.
9259         (fast_substitute_grob_array): rewrite for Grob_arrays.
9260         (substitute_grob_array): idem.
9261
9262         * lily/group-interface.cc (add_thing): remove file.
9263
9264         * flower/include/parray.hh (class Link_array): slice() is const.
9265
9266         * lily/include/grob-array.hh: new file.
9267
9268         * lily/grob-array.cc (spanner): new file.
9269
9270         * lily/beam-quanting.cc (fill): read details property from beam.
9271
9272         * lily/beam.cc: support details property.
9273
9274         * total speedups below: approx 10%.
9275
9276         * lily/include/beam.hh: new struct, softcode beam quanting parameters
9277
9278         * lily/include/grob.hh (class Grob): add interfaces_ member.
9279
9280         * lily/bezier.cc (init_polynomial_cache): new function: cache
9281         binom(3,j) t^j (1-t)^{3-j}
9282         (curve_point): opps, actually use the cache for t^j , (1-t)^j! 
9283
9284         * lily/*.cc: substitution throughout.
9285
9286         * lily/grob-property.cc (internal_get_object): new routine.
9287         (internal_set_object): idem. Store grob refrences in separate
9288         alist. This saves processing time, since properties aren't
9289         break-substituted, and the per grob namespace is smaller, both for
9290         grobs and non-grob properties.
9291
9292         * scm/define-grob-properties.scm (all-internal-grob-properties):
9293         remove center-element.
9294
9295         * lily/grob.cc: remove tweak-count, tweak-rank.
9296
9297 2005-07-15  Graham Percival  <gperlist@shaw.ca>
9298
9299         * Documentation/user/lilypond-book.itely: fixes example.
9300
9301 2005-07-15  Nicolas Sceaux  <nicolas.sceaux@free.fr>
9302
9303         * Documentation/user/global.itely (Creating titles):    
9304         * Documentation/user/examples.itely (All headers): change the
9305         place of \header in \score blocks (after music block) to make
9306         examples compile (cf. changes on parser.yy on 2005-07-10)
9307
9308 2005-07-13  Graham Percival  <gperlist@shaw.ca>
9309
9310         * python/convertrules.py: add exc -> ecc rule.
9311
9312         * scripts/convert-ly.py: add location of convertrules.py
9313         in a comment.
9314
9315         * Documentation/user/changing-defaults.itely: fix language.
9316
9317 2005-07-12  Jan Nieuwenhuizen  <janneke@gnu.org>
9318
9319         * lily/lily-parser-scheme.cc (LY_DEFINE): Guile 1.6 fix.
9320
9321 2005-07-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9322
9323         * scm/output-socket.scm (grob-bbox): don't use inf? 
9324
9325         * flower/include/rational.hh: add operator bool() 
9326
9327         * scm/define-music-types.scm (music-descriptions): remove
9328         internal-class-name properties.
9329
9330         * lily/include/event.hh: remove file.
9331
9332         * lily/include/music-constructor.hh: remove file.
9333
9334         * lily/parser.yy (Lily_lexer): check EVENT_IDENTIFIER using 'event
9335         in 'types property.
9336
9337         * lily/music.cc (duration_length_callback): new function.
9338
9339         * lily/event.cc: remove file.
9340
9341         * lily/music-constructor.cc: remove file.
9342
9343         * lily/music-scheme.cc (LY_DEFINE): rename to ly:make-music
9344
9345         * lily/context.cc (get_grob_key): nop if use_object_keys not set.
9346         (get_context_key): idem.
9347
9348         * scm/lily.scm (lambda): new option object-keys (default to #f)
9349
9350         * scm/output-svg.scm (utf-8-string): rename  from utf8-string.
9351
9352         * scm/output-gnome.scm: remove beam routine.
9353
9354         * scm/output-ps.scm (scm): idem.
9355
9356         * scm/output-svg.scm: remove beam.
9357
9358         * ps/music-drawing-routines.ps: remove draw_beam.
9359
9360         * lily/lookup.cc (beam): use round_filled_polygon() for beam.
9361
9362         * flower/include/guile-compatibility.hh (scm_from_locale_string):
9363         add scm_from_locale_string compatibility glue. 
9364
9365 2005-07-13  Yoshinobu Ishizaki  <isizaki@mte.biglobe.ne.jp>
9366
9367         * scripts/lilypond-book.py: Prevent occuring error when
9368         'lilypond-book --output=foo/ somefile.ly' is executed multiple
9369         times and target file shoud be overwritten.  (Error message said
9370         'input file and output file is same'.)
9371
9372 2005-07-13  Graham Percival  <gperlist@shaw.ca>
9373
9374         * input/regression/slur-extreme.ly,
9375         input/regression/slur-scoring.ly, lily/slur-configuration.cc,
9376         lily/slur.cc, mf/feta-din-code.mf, mf/feta-timesig.mf,
9377         mf/parmesan-heads.mf, scm/define-grob-properties.scm: Change
9378         "excentricity" to "eccentricity".
9379
9380         * Documentation/user/converters.itely: fix URL for Noteedit and
9381         Rosegarden.
9382
9383         * THANKS: added Yoshinobu Ishizaki.
9384
9385 2005-07-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9386
9387         * scm/define-markup-commands.scm (justify-field): add. 
9388
9389         * scm/define-grobs.scm (all-grob-descriptions): decrease font size.
9390
9391 2005-07-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9392
9393         * lily/lookup.cc (filled_box): express filled_box with
9394         round_filled_box
9395
9396         * scm/midi.scm (paper-book-write-midis): new function. Write all
9397         performances in numbered MIDI files.
9398
9399         * lily/performance-scheme.cc (LY_DEFINE): new file.
9400         (LY_DEFINE): new function ly:performance-write.
9401
9402         * lily/lily-parser-scheme.cc (LY_DEFINE): ly:parser-output-name:
9403         new function.
9404         (LY_DEFINE): change name ly:parser-define -> ly:parser-define!
9405
9406         * scm/framework-*.scm: use port arguments throughout.
9407
9408         * lily/include/lily-guile.hh: rename ly_c_X_p -> ly_is_X
9409
9410         * lily/paper-outputter.cc (Paper_outputter): take port argument.
9411
9412         * lily/paper-outputter-scheme.cc (LY_DEFINE): take port argument.
9413
9414         * scm/framework-texstr.scm (output-framework): 
9415
9416         * input/regression/repeat-fold.ly (texidoc): remove TeX strings.
9417
9418         * scm/output-lib.scm (tablature-stem-attachment-function):
9419         tablature stem attachment fix. 
9420
9421 2005-07-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9422
9423         * lily/bezier.cc: hardcode binomial coefficients of order 3.
9424
9425         * lily/include/music-wrapper.hh: remove Music_wrapper as Music subtype.
9426
9427         * scm/define-music-types.scm (music-descriptions): don't use
9428         Music_wrapper type.
9429
9430         * lily/paper-column.cc (print): print moment too.
9431
9432         * scripts/mup2ly.py (cp_to_dir): remove 1.5.2 compat glue.  
9433         remove compatibility cruft.
9434
9435         * lily/parser.yy (score_body): \score can only begin with Music. 
9436
9437         * lily/score-scheme.cc (LY_DEFINE): rename scorify to
9438         make-score. Take music argument only. Move parser interaction to
9439         Scheme.
9440
9441         * scm/lily-library.scm (scorify-music): new function.
9442
9443         * python/lilylib.py (datadir): remove 2.1 compat kludge.
9444         (datadir): remove resource import.
9445         (print_environment): remove get_bbox()
9446         (cp_to_dir): remove pre 1.5.2 compat glue.
9447
9448 2005-07-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9449
9450         * lily/include/simple-spacer.hh (Module): idem.
9451
9452         * lily/include/spring.hh (struct Spring): store inverse
9453         strength. This prevents division by zero.
9454
9455         * VERSION: release 2.7.0
9456         
9457         * lily/include/music.hh (class Music): remove Music::duration_log()
9458
9459         * lily/stem-engraver.cc (make_stem): take duration log from event.
9460
9461         * lily/chord-tremolo-engraver.cc: don't ack note-head-interface.
9462
9463 2005-07-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9464
9465         * scm/lily.scm (ly:load): load autochange.scm
9466
9467         * Documentation/user/tutorial.itely (Running LilyPond for the
9468         first time): remove reference to DVI/TeX
9469
9470         * scm/define-markup-commands.scm (text): add \text markup command.
9471
9472         * configure.in (reloc_b): bump requirement to Python 2.2.
9473
9474         * lily/include/dots.hh (class Dots): make has_interface() static.
9475
9476         * python/convertrules.py (conv): add rule for ly:grob-default-font
9477
9478         * scm/define-grobs.scm (all-grob-descriptions): reorganize in
9479         alphabetical order.
9480
9481         * input/regression/trill-spanner-pitched.ly: new file.
9482
9483         * lily/font-interface-scheme.cc (LY_DEFINE): function
9484         ly:grob-default-font (changed from get-default-font).
9485
9486         * lily/axis-group-interface-scheme.cc (LY_DEFINE): new file.
9487
9488         * lily/note-head.cc (internal_print): if style is not a symbol,
9489         set style to 'default. 
9490         (internal_print): no style suffix if glyph-name-procedure not
9491         set. Default to quarter head.
9492
9493         * scm/define-grobs.scm (Module): new grob TrillPitchHead.
9494
9495         * scm/define-music-properties.scm (all-music-properties): add trill-pitch.
9496
9497         * ly/music-functions-init.ly: \pitchedTrill
9498
9499         * lily/pitched-trill-engraver.cc (acknowledge_grob): new file.
9500
9501         * ly/Welcome_to_LilyPond.ly: update to 2.6.0
9502
9503         * lily/trill-spanner-engraver.cc (finalize): rename req -> event
9504
9505         * scm/define-markup-commands.scm (pad-markup): pad-markup command.
9506
9507         * po/fr.po: update
9508
9509         * po/de.po: update.
9510
9511 2005-07-06  Graham Percival  <gperlist@shaw.ca>
9512
9513         * Documentation/user/changing-defaults.itely: add link
9514         to grob-iterface.
9515
9516         * Documentation/user/advanced-notation.itely: add material
9517         to Setting automatic beam behaviour.  Thanks, Joe!
9518
9519         * Documentation/user/lilypond.itely: change encoding to utf-8.
9520
9521 2005-07-01  Mats Bengtsson  <mabe@s3.kth.se>
9522
9523         * Documentation/user/advanced-notation.itely (Setting automatic
9524         beam behavior): Correct the documentation of
9525         revert-auto-beam-setting (backportme)
9526
9527 2005-07-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9528
9529         * lily/ly-module.cc (ly_make_anonymous_module): define
9530         %module-public-interface of module. 
9531
9532         * lily/lily-parser.cc (print_smob): allow printing of parser smob
9533         without lexer.
9534
9535 2005-07-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9536
9537         * input/regression/fret-diagrams.ly: stretch example.
9538
9539 2005-06-30  Jan Nieuwenhuizen  <janneke@gnu.org>
9540
9541         * cygwin/GNUmakefile ($(outdir)/%.sh): Bugfix: use TAB (Bertalan
9542         Fodor).
9543
9544 2005-06-30  Graham Percival  <gperlist@shaw.ca>
9545
9546         * Documentation/topdocs/AUTHORS.texi: update personal web address.
9547
9548         * Documentation/user/examples.itely, lilypond-book.itely:
9549         change \RequirePackage to \usepackage.
9550
9551         * Documentation/user/global.itely: document copyright and tagline.
9552
9553 2005-06-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9554
9555         * Documentation/user/basic-notation.itely (Transpose): remove link
9556         to nonexistent UntransposableMusic.
9557
9558         * scm/output-svg.scm: remove old definitions.
9559
9560         * scripts/lilypond-book.py (do_file): search for kpsewhich before
9561         invoking.
9562
9563         * python/lilylib.py (search_exe_path): new function.
9564
9565 2005-06-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9566
9567         * python/lilylib.py (mkdir_p): remove setup_environment()
9568         (backportme)
9569
9570         * buildscripts/mutopia-index.py (headertext): trim text.
9571
9572         * Documentation/topdocs/NEWS.tely (Top): refresh.
9573
9574         * scm/define-markup-commands.scm (wordwrap-string): new function:
9575         split string in paras and words.
9576         (wordwrap-markups): new function.
9577         (wordwrap-stencils): new function. 
9578         (justify): use it.
9579         (wordwrap): use it.
9580         (wordwrap-string): use it
9581         (justify-string): use it.
9582
9583         * scm/lily-library.scm (regexp-split): new function.
9584
9585         * scm/define-markup-commands.scm: remove encoded-simple. 
9586         remove font-markup.
9587         (fontsize): remove old version  of fontsize.
9588         (wordwrap): new markup function. Wrap into paragraphs.
9589
9590         * VERSION: Branch lilypond_2_6
9591         (MINOR_VERSION): go to 2.7.0
9592
9593 2005-06-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9594
9595         * po/zh_TW.po: update from translation project.
9596
9597 2005-06-28  Graham Percival  <gperlist@shaw.ca>
9598
9599         * scm/midi.scm: compile fix.
9600
9601 2005-06-28  Mats Bengtsson  <mabe@s3.kth.se>
9602
9603         * scripts/lilypond-book.py : Fix embarrassing bug in my previous
9604         patch. Now, the tempfile module is loaded too, not only used.
9605
9606 2005-06-28  Stephen Charles McCarthy  <stecmccarthy@hotpop.com>
9607
9608         * scm/midi.scm: changed midi volumes in absolute-volume-alist from
9609         0.05 - 1.00 to 0.25 - 1.00
9610
9611         * scm/midi.scm: moved the default-instrument-equalizer procedure
9612         to just under the insturment-equalizer-alist it takes as an
9613         argument.
9614
9615 2005-06-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9616
9617         * Documentation/user/advanced-notation.itely (Font selection):
9618         remove CMR note.
9619
9620         * scm/framework-ps.scm (write-preamble): ly:warning iso. ly:warn 
9621
9622 2005-06-28  Jan Nieuwenhuizen  <janneke@gnu.org>
9623
9624         * THANKS: Add UTF-8 marker.
9625
9626         * Documentation/user/point-and-click.itely (http): Update: use
9627         lilypond-invoke-editor.  Fix: instruct to use user.js.
9628
9629 2005-06-27  Graham Percival  <gperlist@shaw.ca>
9630
9631         * ly/titling-init.ly: implements printpagenumber, increases
9632         space between dedication and title (to avoid collisions with
9633         "g" and "q" in dedication), and nicer logic about copyright
9634         and instrument fields being printed on the first page.
9635         Thanks Vincent!
9636
9637         * Documentation/user/global.itely: document printpagenumber.
9638
9639 2005-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
9640
9641         * Documentation/topdocs/NEWS.tely: Update to 2.6.
9642
9643 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9644
9645         * THANKS: update to 2.6
9646
9647         * VERSION: 2.6.0 released.
9648
9649 2005-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
9650
9651         * cygwin/GNUmakefile (OUT_POSTREMOVES): Reinclude install script
9652         rule, errorneously removed probably because of misleading comment.
9653
9654 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9655
9656         * python/lilylib.py (datadir): py2exe comments.
9657
9658         * Documentation/topdocs/INSTALL.texi (Top): remove EC fonts requirement.
9659
9660         * configure.in (reloc_b): make fontconfig REQUIRED.
9661
9662 2005-06-27  Heikki Junes <hjunes@cc.hut.fi>
9663
9664         * po/fi.po: add latest translations.
9665
9666 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9667
9668         * ChangeLog: recode utf-8
9669
9670         * Documentation/pictures/lilypond.xpm (Module): edited photo as
9671         logo.
9672
9673         * Documentation/user/examples.itely (Module): 2.4.0 -> 2.6.0
9674
9675         * input/*.ly (Module): 2.4 -> 2.6 grand convert-ly s/r. 
9676
9677         * python/convertrules.py (do_conversion): don't print program_name
9678         from within a module
9679
9680         * configure.in (reloc_b): bump fontforge requirement to 20050624.
9681
9682         * python/convertrules.py (conv): add 2.6.0 dummy rule.
9683
9684 2005-06-23  Graham Percival  <gperlist@shaw.ca>
9685
9686         * Documentation/user/lilypond-book.itely,
9687         Documentation/user/examples.itely: add \RequirePackage{graphics}.
9688
9689         * ly/titling.ly: checks printfirstpagenumber, adds meter, and
9690         fixes baseline-skip.  Thanks Vincent!
9691
9692         * Documentation/user/advanced-notation.itely, global.itely:
9693         moved "Selecting font sizes" to global, since it deals with
9694         notation font size, not text fonts.
9695
9696 2005-06-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9697
9698         * buildscripts/gen-emmentaler-scripts.py (notice): add GPL notice
9699         to fonts.
9700
9701 2005-06-23  Mats Bengtsson  <mabe@s3.kth.se>
9702
9703         * scripts/lilypond-book.py (LATEX_DOCUMENT): More or less ugly
9704         workaround since /dev/stdin doesn't work on Cygwin. Using a
9705         temporary file in the current directory since latex doesn't
9706         understand the path name to the default TMP in Cygwin (at least on
9707         win XP).
9708         
9709         * Documentation/user/global.itely (Creating titles): Correct
9710         misprint in example. Thanks to Rob Vlasaty.
9711
9712 2005-06-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9713
9714         * VERSION (PATCH_LEVEL): release 2.5.32
9715
9716         * lily/lily-parser-scheme.cc (LY_DEFINE): don't set 'parser
9717         variable in lily module
9718
9719         * scm/framework-ps.scm (output-classic-framework): error message
9720         regarding the classic framework.
9721
9722         * Documentation/user/henle-flat-gray.png (Module): new file.
9723
9724         * Documentation/user/baer-flat-gray.png (Module): new file.
9725
9726         * scm/output-lib.scm (fret-number-tablature-format): vcenter and
9727         whiteout for markups.
9728
9729         * buildscripts/substitute-encoding.py (note_glyph): include _ in
9730         regex too. This fixes change clef appearance in PDF. 
9731
9732         * ttftool/include/*: remove.
9733
9734         * configure.in (reloc_b): remove TTFTOOL_ENDIAN
9735
9736         * config.make.in (WINDRES): remove TTFTOOL_ENDIAN.
9737
9738         * lily/GNUmakefile (MODULE_INCLUDES): remove ttftool
9739
9740         * ttftool/*: remove ttftool subdirectory.
9741
9742         * GNUmakefile.in (SUBDIRS): remove ttftool subdirectory.
9743
9744         * lily/ttf.cc (print_header): new file. Convert to type42, using
9745         FreeType to parse the TTF. 
9746
9747         * ttftool/parse.c (readPostTable): ugh. Kludge: nglyphs in maxp
9748         and post table may differ. Pass around post_nglyphs as well.
9749
9750 2005-06-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9751
9752         * ly/music-functions-init.ly (musicMap): new music function
9753         musicMap. 
9754         
9755 2005-06-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9756
9757         * make/mutopia-rules.make: anti-alias-factor = 2
9758
9759         * scm/ps-to-png.scm (make-ps-images): cleanup multipage vs. single
9760         page switch.
9761
9762         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): set
9763         anti-alias-factor for lilypond-book runs.
9764
9765         * scm/ps-to-png.scm (scale-down-image): new function.
9766         (my-system): new function.
9767         (make-ps-images): blow up GS resolution by anti-alias-factor,
9768         scale down image by anti-alias-factor.  This improves appearance
9769         of bitmaps
9770         (make-ps-images): remove showpage. Fixes spurious empty png at
9771         end.
9772
9773         * scm/framework-ps.scm (write-preamble): downcase filename before
9774         string-matching. Should fix .TTF files (as opposed to ttf files)  
9775
9776         * Documentation/user/tutorial.itely (Running LilyPond for the
9777         first time): separate subsections for windows, macos and unix.  
9778
9779         * Documentation/user/invoking.itely (Updating files with
9780         convert-ly): add MacOS X note.
9781
9782 2005-06-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9783
9784         * Documentation/user/introduction.itely (Engraving): don't include
9785         file optical-spacing, add directly.
9786
9787         * lily/paper-outputter.cc (file): open file in binary mode. This
9788         fixes OTF embedding on windows.
9789
9790 2005-06-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9791
9792         * scm/framework-ps.scm (write-preamble): remove debugging output.
9793
9794         * mf/aybabtu.pe.in (i): don't generate aybabtu.cff
9795
9796         * mf/GNUmakefile ($(outdir)/fonts.cache-1): create font cache for
9797         outdir.
9798         (install-fc-cache): install font cache in installation directories.
9799
9800 2005-06-17  Jan Nieuwenhuizen  <janneke@gnu.org>
9801
9802         * scm/editor.scm (editor-command-template-alist): Use char iso
9803         column, except for Emacs.
9804         (get-editor-command): Substitute char too (Bertalan Fodor).
9805
9806 2005-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
9807
9808         * scm/ps-to-png.scm (make-ps-images): Use ~S instead of single
9809         quoted ~s.  This should fix PNG output on Windows; single quotes
9810         are regular characters on Windows.
9811
9812 2005-06-16  Graham Percival  <gperlist@shaw.ca>
9813
9814         * Documentation/user/basic-notation.itely: include ChoirStaff
9815         in System start delimiters.
9816
9817         * Documentation/user/putting.itely: new doc section on
9818         fixing overlapping notation.
9819
9820 2005-06-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9821
9822         * Documentation/user/global.itely (Paper size): \paper is in
9823         \book, not \score.
9824
9825         * make/mutopia-rules.make: -ddelete-intermediate-files
9826
9827         * ly/engraver-init.ly: make Staff default child of ChoirStaff.
9828
9829 2005-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
9830
9831         * ChangeLog: Recode utf-8.
9832
9833         * python/GNUmakefile (INSTALLATION_OUT_DIR): Install .so module in
9834         datadir with .py modules.
9835
9836 2005-06-15  Heikki Junes  <hjunes@cc.hut.fi>
9837
9838         * Documentation/user/basic-notation.itely (Ties): add tieDashed.
9839
9840 2005-06-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9841
9842         * make/mutopia-rules.make: switch off ps, p&c for lilypond runs.
9843         
9844         * scm/framework-ps.scm (write-preamble): remove status check.
9845
9846         * Documentation/user/invoking.itely (Updating files with
9847         convert-ly): remove -o option.
9848
9849         * VERSION (PACKAGE_NAME): release 2.5.31
9850
9851         * scm/framework-ps.scm (write-preamble): use ly:system.
9852         (write-preamble): verbosity.
9853
9854         * scripts/convert-ly.py: cleanup. Use lilylib. Use convertrules.
9855
9856         * python/convertrules.py: new file. Store conversion rules
9857         separately.
9858
9859 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9860
9861         * scm/backend-library.scm (postprocess-output): remove debugging gobs.
9862
9863 2005-06-14  Mats Bengtsson  <mabe@s3.kth.se>
9864
9865         * Documentation/topdocs/NEWS.tely (Top): Corrected name of
9866         \musicDisplay 
9867
9868         * Documentation/user/instrument-notation.itely (More stanzas): Add
9869         reference to StanzaNumber.
9870
9871 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9872
9873         * THANKS: separate section for website translators.
9874
9875 2005-06-14  Graham Percival  <gperlist@shaw.ca>
9876
9877         * Documentation/topdocs/INSTALL.texi: update vim info;
9878         thanks Simon Bailey!
9879
9880         * Documentation/user/advanced-notation.itely: included
9881         color names.
9882
9883         * Documentation/user/advanced-notation.itely,
9884         Documentation/usr/notation-appendices.itely: moved
9885         color names into an appendix.
9886
9887 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9888         
9889         * lily/program-option.cc (LY_DEFINE): new function ly_add_option.
9890
9891         * scm/lily.scm (lambda): initialize program options from here.
9892
9893         * scm/framework-*.scm: add header info.
9894
9895         * lily/main.cc (parse_argv): only set output format to pdf if no
9896         other format specified.
9897
9898         * scm/backend-library.scm (postprocess-output): process
9899         'delete-intermediate-files after running convert-to-*. This fixes
9900         PNG generation when 'delete-intermediate-files is set.
9901         
9902 2005-06-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9903
9904         * buildscripts/mutopia-index.py (list_item): thinko. Fixes png
9905         links on website. 
9906
9907 2005-06-13  Graham Percival  <gperlist@shaw.ca>
9908
9909         * Documentation/topdocs/INSTALL.texi,
9910         Documentation/user/lilypond-book.itely: typos.
9911
9912 2005-06-12  Pal Benko  <benkop@freestart.hu>
9913
9914         * elisp/lilypond-mode.el (LilyPond-command-alist: 2PS): space
9915         added between program name and switch; -b changed to -f not
9916         to generate pdf
9917
9918 2005-06-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9919
9920         * elisp/lilypond-mode.el (LilyPond-command-alist): remove 2midi
9921         (LilyPond-command-alist): use -f ps (thanks to Pal Benko)
9922
9923         * input/sakura-sakura.ly: add \midi.
9924
9925         * buildscripts/mutopia-index.py (find): use /usr/bin/find
9926         iso. python find. 
9927
9928         * ttftool/test.c (main): cosmetics.
9929
9930         * ttftool/util.c (surely_lseek): use stdio FILE's for I/O 
9931
9932         * ttftool/test.c: new file. If compiled with -DTEST_TTFTOOL,
9933         create a ttf2ps binary.
9934
9935         * scm/ps-to-png.scm (make-ps-images): fix rename-page-1 functionality.
9936
9937         * scm/backend-library.scm (postscript->png): set rename-page-1 to
9938         true.
9939
9940 2005-06-11  Graham Percival <gperlist@shaw.ca>
9941
9942         * Documentation/user/lilypond-book.itely: add warning about
9943         the font warnings in dvips.
9944
9945 2005-06-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9946
9947         * THANKS: typo
9948
9949         * mf/GNUmakefile ($(outdir)/$(redhat-package)): Fedora-4 url.
9950
9951         * GNUmakefile.in: remove links for .map, .enc
9952         don't fail if out/ doesn't exist yet.
9953
9954 2005-06-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9955
9956         * ttftool/util.c (surely_read): return nbytes
9957
9958         * stepmake/bin/text2html.py (txt2html): add utf-8 marker. 
9959
9960         * VERSION (PACKAGE_NAME): release 2.5.30
9961
9962         * flower/string-convert.cc (precision_string): >? fix.
9963
9964         * scm/ps-to-png.scm (make-ps-images): search-gs for multipage too.
9965         (make-ps-images): add verbose -q too.
9966
9967         * lily/default-actions.cc (Module): new file. default
9968         {book,score}-print functions.
9969
9970         * scm/ly-from-scheme.scm (ly:parse-string-result): use new setup:
9971         pass results via parseStringResult, lookup via ly:parser-lookup.  
9972
9973         * lily/lily-parser.cc (Lily_parser): only clone lexer in
9974         constructors.
9975         (parse_file): encapsulate do_yyparse() in scm_set_current_module()
9976         (parse_string): idem.
9977
9978         * ly/spanners-init.ly (assertBeamQuant): don't use #{ #} in init.
9979
9980         * lily/main.cc (main_with_guile): copy be_verbose_global into
9981         ly_set_option()
9982
9983 2005-06-10  Jan Nieuwenhuizen  <janneke@gnu.org>
9984
9985         * scm/backend-library.scm (postscript->pdf):
9986         * scm/ps-to-png.scm (make-ps-images): Do not use gs -q switch in
9987         verbose mode.  Search for several names of gs executable.
9988
9989 2005-06-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9990
9991         * lily/ly-module.cc (ly_make_anonymous_module): call make-module
9992         directly. This fixes a massive memory leak, provided you use CVS
9993         GUILE.
9994
9995 2005-06-10  Erik Sandberg  <ersa9195@student.uu.se>
9996
9997         * ly/property-init.ly: Added tieDashed.
9998
9999         * THANKS: Added some bughunters for 2.5.
10000
10001 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10002
10003         * lily/program-option.cc: add debug-gc option.
10004
10005         * lily/include/lily-guile-macros.hh: don't protect exported module
10006         objects.
10007
10008         * lily/include/lily-parser.hh (class Lily_parser): remove beam_check().
10009
10010         * scm/backend-library.scm (postscript->pdf): use
10011         delete-intermediate-files iso. running-from-gui? 
10012
10013         * ttftool/util.c (surely_read): robustness. Allow read() to return
10014         less bytes than requested, as per posix standards.
10015
10016         * lily/pfb.cc (LY_DEFINE): set ttf_verbosity from ttf-verbosity
10017         program option.
10018
10019         * ttftool/include/ttftool.h ("C"): rename verbosity to
10020         ttf_verbosity. Add to public interface.
10021
10022         * scm/music-functions.scm (unfold-repeats): remove debugging display.
10023
10024         * lily/program-option.cc: rename from scm-option.cc
10025
10026         * lily/scm-option.cc (LY_DEFINE): handle no-foobar option setting.
10027         (get_help_string): Print pretty help string.
10028
10029         * scripts/lilypond-book.py (PREAMBLE_LY): add no-point-and-click
10030         to snippet preamble.
10031
10032         * lily/scm-option.cc: remove command-line-settings option. Fold
10033         all command-line options plus default settings in a generic
10034         interface. 
10035
10036         * flower/getopt-long.cc (table_string): indent 2nd lines of help
10037         texts too.
10038
10039 2005-06-09  Jan Nieuwenhuizen  <janneke@gnu.org>
10040
10041         * flower/file-name.cc: Bugfix: only append DIRSEP if BASE_
10042         or EXT_ components non-empty.
10043
10044 2005-06-08  Jan Nieuwenhuizen  <janneke@gnu.org>
10045
10046         * scm/lily.scm (running-from-gui?): Export.
10047
10048         * lily/lily-parser-scheme.cc (ly:parse-file): Use it to generate
10049         output in .ly source directory.
10050
10051 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10052
10053         * ttftool/util.c (surely_lseek): more verbosity.
10054
10055         * lily/include/lily-proto.hh: add Context_def. This fixes FC4
10056         compile.
10057
10058         * lily/parser.yy (Repeated_music): remove >? 
10059
10060         * scm/backend-library.scm (postscript->pdf): Support for
10061         -dgs-font-load=1
10062
10063         * scm/framework-ps.scm (write-preamble): make font loading
10064         switchable to GS via --define-default gs-font-load=1
10065
10066 2005-06-09  Graham Percival  <gperlist@shaw.ca>
10067
10068         * Documentation/user/global.itely: added \layout docs.
10069
10070 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10071
10072         * lily/lily-parser-scheme.cc: add unistd.h
10073
10074 2005-06-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10075
10076         * scm/editor.scm: add char argument.
10077
10078         * scripts/lilypond-invoke-editor.scm (dissect-uri): add char. 
10079
10080         * ttftool/util.c (syserror): use errno for better error reporting.
10081
10082         * lily/source-file.cc (get_counts): new function. Calc column,
10083         line and char count in one go.
10084
10085         * lily/binary-source-file.cc (quote_input): rename to quote_input
10086
10087         * lily/input.cc (set): new function.
10088
10089 2005-06-08  Jan Nieuwenhuizen  <janneke@gnu.org>
10090
10091         * flower/file-path.cc (find): Bugfix.  Append rather than prepend
10092         directory part of file name to search directory.
10093
10094         * lily/lily-parser-scheme.cc (ly:parse-file): Prepend cwd to
10095         search path and chdir to DIR if --outname=DIR used.
10096
10097         * lily/main.cc (prepend_env_path): Bugfix: Check directory
10098         existence before appending original path.
10099
10100 2005-06-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10101
10102         * ttftool/parse.c (readNamingTable): verbosity for "bad TTF
10103         file" massage.
10104
10105         * Documentation/user/GNUmakefile (TEXINPUTS): set TEXINPUTS so our
10106         texinfo.tex is always used.
10107         
10108 2005-06-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10109
10110         * flower/include/axis.hh: rename from axes.hh
10111
10112         * lily/include/text-interface.hh (Module): rename from text-item.hh
10113
10114         * VERSION (PATCH_LEVEL): release 2.5.29
10115
10116         * ttftool/parse.c (readNamingTable): handle Apple/8bit encoding too.
10117
10118         * scm/framework-ps.scm (font-file-as-ps-string): new function.
10119         (handle-macfont): new function. Call fondu for Native mac fonts.
10120
10121         * scm/define-markup-commands.scm (fill-line): handle text-widths =
10122         '() case.
10123
10124 2005-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
10125
10126         * scm/ps-to-png.scm (make-ps-images): Bugfix: `Pages: 1\n' is not
10127         multi-page.  Fix .eps regular expression.
10128
10129 2005-06-07  Graham Percival  <gperlist@shaw.ca>
10130
10131         * Documentation/user/putting.itely: add info on modifying templates.
10132
10133         * Documentation/user/lilypond.itely, converters.itely, invoking.itely:
10134         misc small changes.
10135
10136 2005-06-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10137
10138         * scm/ps-to-png.scm (make-ps-images): no paper size for multi-page.
10139
10140         * scripts/lilypond-ps2png.scm
10141
10142         * VERSION (PACKAGE_NAME): release 2.5.28
10143
10144 2005-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
10145
10146         * lily/main.cc (prepend_env_path): Do not append /, that does not
10147         work.  Localedir lives in datadir, not in prefix.
10148
10149         * scm/framework-ps.scm (write-preamble): Remove load-font-via-GS
10150         hack for windows.
10151
10152         * flower/include/file-cookie.hh: Compile fix.
10153
10154 2005-06-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10155
10156         * ly/engraver-init.ly: add \defaultchild to InnerStaffGroup. 
10157
10158         * scm/ps-to-png.scm (gulp-port): rename from read. Don't redefine
10159         system primitives.
10160         (gulp-port): using read-string!/partial. We don't want to read an
10161         entire PS file  (GUILE 1.6 limits strings to 16M) 
10162
10163         * scm/define-grobs.scm (all-grob-descriptions): remove arch-*
10164         properties. Add font-interface. 
10165
10166         * scm/define-grob-properties.scm (all-user-grob-properties):
10167         remove old bracket properties.
10168
10169         * scm/x11-color.scm: reformat. 
10170
10171         * lily/ledger-line-engraver.cc (acknowledge_grob): create new
10172         LedgerLineSpanner if new StaffSymbol is found. 
10173
10174         * lily/staff-symbol-engraver.cc (acknowledge_grob): also set
10175         staff-symbol for finishing staff. 
10176
10177         * lily/GNUmakefile (OUT_DIST_FILES): don't dist Flex output
10178
10179         * scm/output-svg.scm (setcolor): implement (re)setcolor with <g>
10180         change black to currentColor everywhere. This fixes color support
10181         in SVG.
10182
10183 2005-06-06  Carl Sorensen  <carldsorensen@comcast.net>
10184
10185         * input/regression/fret-diagrams.ly: new file to test fret diagram
10186         capability
10187
10188         * scm/output-tex.scm: remove white-dot and white-text
10189
10190         * scm/output-ps.scm: remove white-dot and white-text
10191
10192         * scm/fret-diagrams.scm (sans-serif-stencil-white): removed -- 
10193         using ly:stencil-in-color instead
10194         (draw-dots) : remove call to white-dot
10195
10196 2005-06-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10197
10198         * flower/memory-stream.cc (Memory_out_stream): remove fopencookie
10199         support.
10200
10201         * ttftool/ttfps.c: use lily_cookie functions everywhere. 
10202
10203         * flower/include/file-cookie.hh: new file. lily_cookie extension 
10204
10205         * flower/file-cookie.cc: new file. lily_cookie extension.
10206         
10207 2005-06-06  Jan Nieuwenhuizen  <janneke@gnu.org>
10208
10209         * scm/editor.scm (editor-command-template-alist): Add syn
10210         editor (Jaap [de Vos]).
10211
10212 2005-06-05  Jan Nieuwenhuizen  <janneke@gnu.org>
10213
10214         * scripts/lilypond-ps2png.scm:
10215         * scm/ps-to-png.scm: New file.
10216
10217         * scm/backend-library.scm (postscript->png): Use it.
10218
10219         * scripts/lilypond-ps-to-png.py: Remove file.
10220
10221         * python/lilylib.py (get_bbox, make_ps_images): Remove.
10222
10223 2005-06-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10224
10225         * lily/auto-beam-engraver.cc (acknowledge_grob): remove dead code.
10226
10227         * scm/auto-beam.scm (default-auto-beam-check): only forbid beam
10228         start on grace moment. Fixes autobeam-grace.ly.
10229
10230         * lily/auto-beam-engraver.cc (process_acknowledged_grobs): don't
10231         process anything unless we're at the end of a pending beam. Fixes
10232         syncopated 8ths beamed across a beat.
10233
10234 2005-06-03  Jan Nieuwenhuizen  <janneke@gnu.org>
10235
10236         * scm/editor.scm (editor-command-template-alist): Start emacs if
10237         emacslient fails.
10238
10239         * lily/main.cc (setup_localisation): Listen to LILYPOND_LOCALEDIR.
10240
10241         * flower/file-path.cc (is_file, is_dir): Export.
10242
10243         * lily/main.cc (prepend_env_path, set_env_file): Use them.
10244
10245 2005-06-02  Mats Bengtsson  <mabe@s3.kth.se>
10246
10247         * lily/easy-notation.cc: Added include cctype to correct
10248         compilation error.
10249
10250 2005-06-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10251
10252         * scm/backend-library.scm (postscript->pdf): set resolution to
10253         1200, so bitmap fonts aren't that ugly. 
10254
10255         * Documentation/topdocs/NEWS.tely (Top): add entry about font family.
10256
10257         * lily/dynamic-engraver.cc (acknowledge_grob): only center on
10258         parent if we have a notehead. Fixes incorrect offsets when
10259         Paper_column is very wide in the X direction.
10260
10261         * input/regression/font-family-override.ly (Module): new file.
10262
10263         * scm/font.scm (make-pango-font-tree): new function.
10264
10265         * lily/beam.cc (before_line_breaking): remove warning about less
10266         than 2 visible stems. We still get a warning when there is only
10267         one stem.
10268
10269 2005-06-01  Werner Lemberg  <wl@gnu.org>
10270
10271         * buildscripts/substitute-encoding.py: Handle PFAemmentaler-xx.pfa
10272         correctly.
10273
10274 2005-06-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10275
10276         * lily/slur-scoring.cc (generate_avoid_offsets): new
10277         function. Generate avoid offsets once per slur.
10278
10279         * lily/slur.cc (add_extra_encompass): add dependency to
10280         extra-encompass object. This fixes bugs/c-phrasing-slur.ly
10281
10282         * lily/stencil.cc (is_empty): check dim_ field for is_empty()
10283         too. Fixes inf error with added bass notes.
10284
10285         * scripts/lilypond-book.py (do_options): --psfonts doesn't take
10286         argument anymore.
10287
10288         * make/ly-vars.make (DVIPS_FLAGS): use .psfonts as extension.
10289
10290         * input/tutorial/lbook-latex-test.tex: add line length test.
10291
10292         * scripts/lilypond-book.py (set_default_options): new
10293         function. Call this before dissecting snippets, so linewidth
10294         settings reach the snippets.
10295
10296 2005-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
10297
10298         * scm/lily.scm (PLATFORM, slashify): Remove double slashes.
10299
10300 2005-06-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10301
10302         * input/mutopia/R.Schumann/romanze-op28-2.ly (leftb): bugfix.
10303
10304 2005-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
10305
10306         * stepmake/aclocal.m4: More autopackage friendliness.
10307
10308 2005-05-31  Graham Percival  <gperlist@shaw.ca>
10309
10310         * Documentation/index.html.in: remove link to LSR.
10311
10312         * Documentation/user/global.itely: remove duplicate
10313         "dedication" \header{} section.
10314
10315 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10316
10317         * VERSION (PACKAGE_NAME): release 2.5.27.
10318
10319         * lily/lily-parser-scheme.cc (LY_DEFINE): unprotect paper
10320         too. Plugs memory leak.
10321
10322         * make/lilypond.fedora.spec.in (Group): remove
10323         lilypond-pdfpc-helper.
10324
10325         * scripts/GNUmakefile (SEXECUTABLES): remove
10326         lilypond-pdfpc-helper. Use lilypond-invoke-editor instead.
10327
10328         * scm/font.scm (make-century-schoolbook-tree): add Mono as
10329         'typewriter family.
10330
10331         * lily/score.cc (Score): unprotect copy of Output_def. Plugs
10332         memory leak.
10333
10334         * lily/parser.yy (score_body): don't clone Score, that's done in
10335         Lily_lexer::try_special_identifiers(). This fixes a memory leak.
10336
10337         * lily/score-engraver.cc (derived_mark): new function.
10338         (initialize): unprotect Paper_score. This fixes a memory leak.
10339
10340         * lily/score-performer.cc (derived_mark): new function.
10341
10342         * lily/score-translator.cc (get_output): use SCM for get_output() call.
10343
10344         * stepmake/aclocal.m4: put FlexLexer.h test in conftest.cc. Fixes
10345         spurious warning.
10346
10347         * scm/font.scm (make-century-schoolbook-tree): use Sans for sans
10348         serif.
10349
10350 2005-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
10351
10352         * configure.in (reloc_b): Add --enable-relocation.
10353
10354 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10355
10356         * lily/pfb.cc (LY_DEFINE): show file name when loading PFB. 
10357
10358         * input/regression/alignment-order.ly: add Staff example.
10359
10360 2005-05-31  John Mandereau   <john.mandereau@free.fr>
10361
10362         * po/fr.po: update.
10363
10364 2005-05-31  Graham Percival  <gperlist@shaw.ca>
10365
10366         * Documentation/index.html.in: add link to LSR.
10367
10368 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10369
10370         * scm/define-stencil-commands.scm (Module): new file. Register all
10371         allowed stencil expression heads in a central place.
10372
10373         * lily/stencil-scheme.cc (LY_DEFINE): check is_stencil_head in
10374         ly:make-stencil
10375
10376         * lily/stencil-expression.cc (all_stencil_heads): registering
10377         stencil expressions.
10378
10379         * lily/stencil-interpret.cc: new file. Stencil expression
10380         interpreting.
10381
10382         * input/xiao-haizi-guai-guai.ly: move file back.
10383
10384 2005-05-30  Graham Percival  <gperlist@shaw.ca>
10385
10386         * Documentation/user/advanced.itely, converters.itely,
10387         instrument-notation.itely, lilypond-book.itely: misc small
10388         changes.
10389
10390 2005-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
10391
10392         * lily/lexer.ll: Skip UTF-8 BOM at BOF.
10393
10394         * make/lilypond.fedora.spec.in: Fix source url.
10395
10396         * cygwin: Update from mingw patches.
10397
10398         * scm/editor.scm (editor-command-template-alist): Use jedit
10399         -reuseview (Bertalan), add uedit (Patrick Huberts).
10400
10401         * input/xiao-hai-zi-guai-guai.ly: Rename from
10402         xiao-haizi-guai-guai.ly.
10403
10404         * input/*: Reindent, do not use TAB.
10405
10406         * Documentation/pictures/ly.xpm: Bugfix: do not anti-alias against
10407         white background.
10408
10409 2005-05-29  Jan Nieuwenhuizen  <janneke@gnu.org>
10410
10411         * scm/framework-ps.scm (dump-stencil-as-EPS): Add silly fix for
10412         numerical overflow error.
10413
10414 2005-05-29 Laura Conrad <lconrad@laymusic.org>
10415         
10416         * abc2ly.py: fix to syntax error in multi-part output.
10417
10418 2005-05-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10419
10420         * lily/span-bar.cc (print): sort bar line extents. Fixes problem
10421         with disappearing span bars when alignAboveContext is active
10422
10423         * lily/property-iterator.cc (check_grob): use is-grob?
10424         object-property. Fixes crash-key-sig-font-size.ly. 
10425
10426 2005-05-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10427
10428         * lily/bar-line.cc (print): don't round barlines; this produces
10429         odd aliasing effects in Acroread.
10430
10431         * lily/timing-engraver.cc (process_music): robustness fix.
10432
10433         * lily/context-def.cc (filter_engravers): bugfix.
10434
10435 2005-05-28  Jan Nieuwenhuizen  <janneke@gnu.org>
10436
10437         * lily/lilypond.rc.in: Add ly-icon.
10438
10439         * lily/GNUmakefile: 
10440         * Documentation/pictures/GNUmakefile (OUT_DIST_FILES): Add ly-icon
10441         rules.
10442
10443 2005-05-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10444
10445         * lily/stencil-scheme.cc (LY_DEFINE): ly:stencil-in-color
10446
10447         * ps/music-drawing-routines.ps: 
10448
10449         * scm/output-ps.scm: remove draw ez_ball.
10450
10451         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
10452         EasyNotation context definition.
10453
10454         * lily/easy-notation.cc (brew_ez_stencil): new file. Use
10455         Text_interface and color for making easy note heads.
10456
10457         * lily/stencil.cc (with_color): new function.
10458
10459         * ps/music-drawing-routines.ps: remove draw_zigzag_line
10460
10461         * lily/line-spanner.cc (zigzag_stencil): rewrite to use draw-line
10462         output routine. Zigzag now works in SVG too.
10463
10464         * scm/output-tex.scm (filledbox): idem.
10465
10466         * scm/output-svg.scm (filledbox): idem.
10467
10468         * scm/output-ps.scm (lily-def): remove horizontal-line. 
10469
10470         * lily/lookup.cc (horizontal_line): use draw-line. 
10471
10472         * lily/system-start-delimiter.cc: remove old staff bracket code.
10473
10474         * mf/feta-haak.mf: further tweaks.
10475
10476         * lily/system-start-delimiter.cc (staff_bracket): use glyphs.
10477
10478         * mf/feta-generic.mf: include feta-haak.
10479
10480         * mf/feta-haak.mf: rewrite. Make separate glyphs for the tips 
10481
10482         * scm/framework-ps.scm (write-preamble): only load fonts if their
10483         filename is a string. 
10484
10485 2005-05-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10486
10487         * scm/output-svg.scm (circle): support circle.
10488         (bracket): stub for bracket.
10489
10490         * scripts/lilypond-book.py (main): make sure --psfonts warning is
10491         correct.
10492
10493 2005-05-26  Graham Percival  <gperlist@shaw.ca>
10494
10495         * Documentation/user/lilypond.tely, advanced-notation.itely,
10496         basic-notation.itely, instrument-notation.itely, global.itely,
10497         introduction.itely, tutorial.itely: rearranging, editing,
10498         clean-up.
10499
10500         * mf/GNUmakefile: change a "make -C" to "${MAKE} -C", required
10501         for compiling on FreeBSD.
10502
10503 2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10504
10505         * lily/pfb.cc (LY_DEFINE): progress indication for opening ttf and
10506         otf files.
10507
10508         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly (lower):
10509         bugfixes.
10510
10511         * VERSION: 2.5.26 released.
10512
10513         * scm/titling.scm (marked-up-headfoot): revert Pedro's patch. 
10514
10515 2005-05-25  Pedro Kroger  <kroeger@pedrokroeger.net>
10516
10517         * scm/titling.scm (marked-up-headfoot): doesn't print pagenumbers
10518         if printpagenumber is false.
10519
10520 2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10521
10522         * lily/font-config.cc (init_fontconfig): comment out FontConfig
10523         cache warning.
10524
10525         * lily/tie.cc (print): support dotted ties.
10526         
10527 2005-05-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10528
10529         * scm/define-grobs.scm (all-grob-descriptions): switch off
10530         debugging
10531         (all-grob-descriptions): Arpeggio has Y-extent.
10532
10533         * scm/define-music-properties.scm (all-music-properties): document
10534         length-callback and start-callback as "read-only".
10535
10536         * scm/music-functions.scm (unfold-repeats): rewrite. Cannot set
10537         length-callback after creation. 
10538
10539         * scripts/convert-ly.py (conv): unfoldrepeats -> unfoldRepeats,
10540         compressmusic -> compressMusic.
10541
10542         * ly/music-functions-init.ly (oldaddlyrics): idem.
10543
10544         * lily/parser.yy: NewLyricCombineMusic ->
10545         LyricCombineMusic. LyricCombineMusic -> OldLyricCombineMusic.
10546
10547 2005-05-24  Pedro Kroger  <kroeger@pedrokroeger.net>
10548
10549         * ly/Welcome_to_LilyPond.ly: typo.
10550
10551 2005-05-24  Graham Percival  <gperlist@shaw.ca>
10552
10553         * Documentation/user/lilypond.tely: move changing-defaults to be
10554         before global issues.
10555
10556         * Documentation/user/basic-notation.itely: move Transpose section
10557         here from advanced/Other.
10558
10559         * Documentation/user/changing-defaults.itely,
10560         advanced-notation.itely: move Fonts to advanced, edit.
10561
10562 2005-05-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10563
10564         * lily/parser.yy (bare_int): remove rule.  From now on, we require
10565         # before negative integers.
10566
10567 2005-05-23  Graham Percival  <gperlist@shaw.ca>
10568
10569         * ly/property.ly: Update tieDotted to have the same form as slurDotted.
10570
10571         * Documentation/user/lilypond.tely: change Unified index to
10572         LilyPond index.
10573
10574         * Documentation/user/advanced-notation.itely,
10575         instrument-notation.itely: editing.
10576
10577 2005-05-23  Jan Nieuwenhuizen  <janneke@gnu.org>
10578
10579         * scm/lily.scm (lilypond-all): Bugfix: return failed.
10580
10581         * lily/main.cc (setup_paths)[__MINGW32__]: Normalize LILYPONDPREFIX.
10582
10583 2005-05-21  Jan Nieuwenhuizen  <janneke@gnu.org>
10584
10585         * lily/general-scheme.cc (ly:stderr-redirect): Rename from
10586         ly:port-move.  Needs to be stderr-specific on mingw.
10587         Run fixcc.
10588
10589 2005-05-20  Jan Nieuwenhuizen  <janneke@gnu.org>
10590
10591         * lily/general-scheme.cc (ly:port-move): Remove.
10592
10593         * scm/backend-library.scm (postscript->pdf): Remove -dSAFER in
10594         windows.
10595
10596         * lily/main.cc (setup_paths) [ARGV0_RELOCATION]: Reinstate GS_*
10597         variables.  This eliminates the need for a gs.bat wrapper, which
10598         opens a console.
10599
10600         * scripts/lilypond-invoke-editor.scm (running-from-gui?): 
10601         * scm/lily.scm (running-from-gui?): 
10602         * lily/main.cc[MINGW]: Remove isatty inversion, this is an
10603         artifact of not compiling with -mwindows.
10604
10605         * scm/editor.scm: Define PLATFORM.
10606
10607 2005-05-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10608
10609         * scripts/lilypond-book.py (PREAMBLE_LY): add marker, where people
10610         can start to cut & paste lilypond-book fragments.  
10611
10612         * scm/define-music-types.scm (music-descriptions): remove
10613         UntransposableMusic
10614
10615 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10616
10617         * scm/output-ps.scm (glyph-string): remove / before CIDs.
10618
10619 2005-05-20  Graham Percival  <gperlist@shaw.ca>
10620
10621         * Documentation/user/instrument-notation.itely: remove *Engraver.
10622
10623         * Documentation/user/advanced-notation.itely: edit, rearrange.
10624
10625 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10626
10627         * scm/output-ps.scm (glyph-string): take cid? argument. Use
10628         findresource iso. findfont for CID CFF fonts.
10629
10630         * VERSION (PACKAGE_NAME): release 2.5.25
10631
10632         * ly/Welcome_to_LilyPond.ly: add  \version
10633
10634 2005-05-20  Graham Percival  <gperlist@shaw.ca>
10635
10636         * Documentation/user/programming-interface.itely: move
10637         \displayMusic into its own section.
10638
10639         * Documentation/user/basic-notation.itely: finish editing.
10640
10641 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10642
10643         * flower/file-path.cc (find): don't throw away file_name.dir, but
10644         append to it. Fixes \include with directories.
10645
10646         * flower/include/file-path.hh (class File_path): don't derive from
10647         Array<String>.
10648
10649         * flower/include/file-name.hh (class File_name): remove to_str0()
10650
10651         * lily/hara-kiri-engraver.cc (acknowledge_grob): split
10652         Hara_kiri_engraver in separate file.
10653
10654         * lily/slur-configuration.cc (score_encompass): oops, <? to min()
10655         translation went wrong. Fixes vertically translated slurs.
10656
10657 2005-05-19  Graham Percival  <gperlist@shaw.ca>
10658
10659         * Documentation/user/basic-notaton.itely: editing.
10660
10661 2005-05-18  Graham Percival  <gperlist@shaw.ca>
10662
10663         * Documentation/user/macros.itexi, basic-notation.itely:
10664         add @commonprop (commonly used properties) macro.
10665
10666 2005-05-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10667
10668         * ly/Welcome_to_LilyPond.ly: talk about icon, not program.
10669
10670         * scripts/lilypond-book.py (invokes_lilypond): new function
10671         (main): only run fontextract if invokes_lilypond() is true.
10672
10673         * lily/function-documentation.cc (ly_add_function_documentation):
10674         duh, use !=
10675
10676         * Documentation/topdocs/INSTALL.texi (Top): add MacOS command.
10677
10678         * stepmake/aclocal.m4: remove kpathsea warning, change to OPTIONAL.
10679
10680         * scm/lily.scm (running-from-gui?): lowercase Darwin.
10681
10682         * lily/function-documentation.cc (ly_add_function_documentation):
10683         use scm_hash_table_p() for checking.
10684
10685 2005-05-18  Jan Nieuwenhuizen  <janneke@gnu.org>
10686
10687         * Documentation/user/advanced-notation.itely (Text scripts):
10688         Change nonexisting @internalsref{Text markup} to @ref{Text
10689         markup}.  Change @internalsref{Text script} to
10690         @internalsref{TextScript}.
10691
10692         * lily/main.cc (setup_paths): Bugfix: pangorc is not pango.modules.
10693
10694 2005-05-17  Graham Percival  <gperlist@shaw.ca>
10695
10696         * Documentation/user/tutorial.itely, basic-notation.itely,
10697         changing-defaults.itely: remove duplicate cindex entries
10698         that appear on the same page.
10699
10700         * scm/define-grobs.scm: change default padding for TextSpanner.
10701
10702         * Documentation/topdocs/AUTHORS.texi: update email address.
10703
10704         * Documentation/user/global.itely: add info about \include.
10705
10706 2005-05-17  Jan Nieuwenhuizen  <janneke@gnu.org>
10707
10708         * scm/backend-library.scm (postscript->pdf): Remove (useless) .ps
10709         when running-from-gui.
10710
10711         * scm/editor.scm (get-editor): Add platform defaults.
10712
10713         * scm/backend-library.scm (postscript->pdf): Typo.
10714
10715 2005-05-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10716
10717         * scm/lily.scm (running-from-gui?): Darwin never runs from GUI.
10718
10719         * lily/font-config.cc (init_fontconfig): add warning about cache.
10720
10721 2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
10722
10723         * lily/main.cc (setup_paths)[ARGV0_RELOCATION]: Remove GS_*.
10724
10725 2005-05-16  Mats Bengtsson  <mabe@s3.kth.se>
10726
10727         * lily/horizontal-bracket.cc (print): Take care of the direction
10728         property so brackets above the stave point downwards. 
10729
10730         * scm/define-grobs.scm (all-grob-descriptions): Set staff-padding
10731         for HorizontalBracket so it doesn't end up within the stave.
10732
10733 2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
10734
10735         * lily/GNUmakefile (default): Typo.
10736
10737         * scm/lily.scm (PLATFORM): Export.
10738
10739         * scm/framework-ps.scm (write-preamble)[MINGW]: Use
10740         load-font-via-GS, ttftool or fopencookie is broken on windows.
10741         
10742         * scm/backend-library.scm (postscript->pdf)[MINGW]: Do not use
10743         -dSAFER, that is broken on windows.
10744
10745 2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10746
10747         * lily/GNUmakefile ($(outdir)/FlexLexer.h): conditional dependency
10748         for FlexLexer.h
10749
10750         * scripts/lilypond-invoke-editor.scm: remove stray -
10751
10752 2005-05-15  Jan Nieuwenhuizen  <janneke@gnu.org>
10753
10754         * lily/lily-guile.cc (ly_scm2newstr): Use scm_i_string_length.
10755         Fixes deprecation warning.
10756
10757         * flower/include/string.icc (to_string): Only inline if
10758         -DSTRING_UTILS_INLINED.
10759
10760         * lily/pango-font.cc (pango_item_string_stencil): Normalize file
10761         name.  Remove windows comment.
10762
10763         * scm/editor.scm (slashify): New function.
10764         (get-editor-command): Use it.
10765         (get-command-template): Do not alter editor command if
10766         environment value includes `%(file)s' magic.
10767
10768         * scripts/lilypond-invoke-editor.scm (unquote-uri): New function.
10769         (dissect-uri): Use it.
10770         (unquote-uri): Bugfix.
10771
10772 2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10773
10774         * scm/framework-ps.scm (write-preamble): add TTF rule.
10775
10776         * Documentation/topdocs/README.texi (Top): remove note about
10777         xdelta.
10778
10779         * Documentation/topdocs/INSTALL.texi (Top): remove Flex
10780         requirement.
10781
10782         * stepmake/aclocal.m4: STEPMAKE_FLEXLEXER_LOCATION: new
10783         function. Figure out where FlexLexer.h lives
10784
10785         * lily/GNUmakefile (OUT_DIST_FILES): dist lexer.cc and FlexLexer.h
10786         
10787 2005-05-14  Jan Nieuwenhuizen  <janneke@gnu.org>
10788
10789         * scripts/lilypond-invoke-editor.scm (dissect-uri): Handle URIs
10790         with Windows root in file name.
10791
10792         * scm/backend-library.scm (ly:system): Only redirect output (using
10793         system and shell, ugh) if /dev/null is writable.
10794
10795         * Documentation/pictures/GNUmakefile [PLATFORM_WINDOWS]: Build
10796         windows icon.
10797
10798         * scm/lily.scm (is-absolute?): New function.  Fixes absolute files
10799         on Mingw.
10800
10801         * scm/output-ps.scm (grob-cause): Use it.  Fixes PDF point and
10802         click.
10803
10804         * flower/file-path.cc (is_dir, is_file): New function.  Actually
10805         use result of stat when available.
10806
10807         * flower/file-path.cc (find): Use it.  Refactor.  Fixes Mingw,
10808         absolute file name and root.
10809
10810         * scm/lily.scm (PLATFORM): On mingw, slashify getcwd.
10811
10812         * scm/editor.scm (get-editor-command): Typo: do not apply editor.
10813
10814         * flower/file-name.cc (slashify): Bugfix, do substitute if no
10815         slashes in file name.
10816
10817 2005-05-13  Jan Nieuwenhuizen  <janneke@gnu.org>
10818
10819         * Documentation/user/preface.itely (Preface): Run
10820         texinfo-all-menus-update.
10821
10822         * scm/editor.scm (get-editor-command): Bugfix: allow full
10823         LYEDITOR setting, partial XEDITOR setting.  With typo fix.
10824
10825         * Documentation/pictures/lilypond-48.xpm: New file.
10826
10827         * flower/file-path.cc (to_string): Bugfix: use PATHSEP.
10828
10829         * ly/Welcome_to_LilyPond.ly: New file.
10830
10831         * lily/main.cc (main): Only identify if we have a terminal.
10832
10833         * scm/backend-library.scm (postscript->png)
10834         (postscript->pdf): Fix file name quoting for GS/MINGW (ie,
10835         non-/bin/sh).
10836
10837 2005-05-13  Heikki Junes  <hjunes@cc.hut.fi>
10838
10839         * Documentation/topdocs/AUTHORS.texi: polish, update.
10840
10841 2005-05-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10842
10843         * Documentation/user/preface.itely (Notes for version 2.6): new
10844         notes for 2.6
10845
10846         * lily/dynamic-engraver.cc (stop_translation_timestep): first set
10847         finished_span_, then call typeset_all(). Fixes spurious "Hairpin
10848         is not fully contained" warnings.
10849
10850         * lily/slur-scoring.cc (get_bound_info): remove warning.
10851
10852         * lily/staff-symbol-engraver.cc (process_music): start initial
10853         spanner in process_music(). This fixes overrides of StaffSymbol
10854         properties.
10855
10856         * scm/framework-pdf.scm (Module): remove.
10857
10858         * Documentation/topdocs/AUTHORS.texi (AUTHORS): clean up, update.
10859
10860         * lily/ambitus-engraver.cc: formatting cleanups.
10861
10862         * mf/feta-solfa.mf (Module): remove.
10863
10864         * ChangeLog: more details about contributions.
10865
10866 2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10867
10868         * lily/align-interface.cc (align_elements_to_extents): warn if
10869         called too early. Fixes: disappearing-staff-lines.ly
10870
10871         * VERSION (PACKAGE_NAME): release 2.5.24
10872
10873 2005-05-12  Jan Nieuwenhuizen  <janneke@gnu.org>
10874
10875         * stepmake/aclocal.m4: Typo.
10876
10877         * flower/string.cc (substitute): Take two strings or two
10878         characters.  Update callers.
10879
10880 2005-05-11  Jan Nieuwenhuizen  <janneke@gnu.org>
10881
10882         * flower/file-name.cc (File_name): Slashify.
10883
10884         * scm/lily.scm: Use gui-main iso lilypond-main on MINGW.
10885
10886         * scripts/GNUmakefile (SEXECUTABLES): Add lilypond-invoke-editor.
10887
10888         * stepmake/aclocal.m4 (STEPMAKE_WINDOWS): New function.
10889
10890         * configure.in (gui_b): Use it.
10891
10892         * lily/lilypond.rc.in: New file.
10893
10894         * lily/GNUmakefile[PLATFROM_WINDOWS]: Compile it into executable.
10895
10896 2005-05-12  Graham Percival  <gperlist@shaw.ca>
10897
10898         * Documentation/user/advanced-notation.itely: edit of Text
10899         section; clarify text scripts vs. text markup.
10900
10901 2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10902
10903         * lily/multi-measure-rest-engraver.cc
10904         (Multi_measure_rest_engraver): init bar_seen_ to true. Notice
10905         separation items on start. Fixes mm rests in start of score.
10906
10907         * lily/slur-scoring.cc (move_away_from_staffline): robustness,
10908         don't access StaffSymbol if not there.
10909         Fixes: crash-staff-symbol-engraver.ly.
10910
10911         * lily/instrument-name-engraver.cc (class
10912         Instrument_name_engraver): data member first_. Create
10913         InstrumentName on start. 
10914
10915 2005-05-12  Graham Percival  <gperlist@shaw.ca>
10916
10917         * Documentation/user/instrument-notation.itely: add guitar
10918         position.
10919
10920         * Documentation/user/introduction.itely,
10921         Documentation/user/lilypond.tely,
10922         Documentation/user/tutorial.itely: begin pruning
10923         unused (duplicated) cindex entries and misc cleanup.
10924
10925 2005-05-12  Mats Bengtsson  <mabe@s3.kth.se>
10926
10927         * input/test/volta-chord-names.ly: Bring the explanation up to
10928         date.
10929
10930 2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
10931
10932         * Documentation/topdocs/{AUTHORS.texi,INSTALL.texi,README.texi}:
10933         Specify `@documentencoding utf-8' for html, ignore warnings.
10934
10935 2005-05-11  Erik Sandberg  <ersa9195@student.uu.se>
10936
10937         * THANKS: Added bughunters.
10938
10939 2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
10940
10941         * lily/main.cc: update help string for `lilypond -H'.
10942
10943         * po/fi.po: update.
10944         
10945 2005-05-10  Graham Percival  <gperlist@shaw.ca>
10946
10947         * Documentation/user/advanced-notation.itely: minor fixes.
10948
10949 2005-05-10  Jan Nieuwenhuizen  <janneke@gnu.org>
10950
10951         * scm/editor.scm: New module.
10952
10953         * scm/lily.scm (gui-main): Use it.
10954
10955         * scm/framework-gnome.scm (spawn-editor): Use it.
10956
10957         * scripts/lilypond-invoke-editor.scm: Use it in new script.
10958
10959 2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10960
10961         * scm/framework-ps.scm (load-font-via-GS):  new function.
10962
10963         * lily/pango-font.cc (pango_item_string_stencil): add support for
10964         CID keyed font.
10965
10966         * scm/output-ps.scm (glyph-string): add support for CID keyed font.
10967
10968 2005-05-10  Graham Percival  <gperlist@shaw.ca>
10969
10970         * Documentation/user/basic-notation.itely: add @ref.
10971
10972         * Documentation/user/advanced-notation.itely: add example
10973         of 5/8 beaming.
10974
10975 2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10976
10977         * scripts/lilypond-pdfpc-helper.py (ly_pc_editor): robustness fixes.
10978
10979         * scm/backend-library.scm (postscript->pdf): Invoke gs instead of
10980         going through ps2pdf wrappers.
10981
10982 2005-05-09  Jürgen Reuter  <reuter@ipd.uka.de>
10983
10984         * Documentation/user/instrument-notation.itely: petrucci note
10985         heads: updated docu
10986
10987         * input/regression/note-head-style.ly: updated regression test;
10988         indentation fixes
10989
10990         * ly/engraver-init.ly: MensuralVoiceContext: use petrucci note
10991         heads as default
10992
10993         * mf/parmesan-heads.mf: minor editing; use musicological names
10994         (rather than optical description) as note head names
10995
10996         * scm/output-lib.scm: complete petrucci heads
10997
10998 2005-05-09  Pal Benko  <benkop@freestart.hu>
10999
11000         * mf/parmesan-heads.mf: add petrucci heads (like neo-mensural
11001         heads, but bigger)
11002
11003 2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
11004
11005         * lily/main.cc (main_with_guile): Remove no files check.
11006
11007         * lily/main.cc (ly:usage): Export to Scheme.
11008
11009         * scm/lily.scm (no-files-handler): New function.
11010
11011         * scm/lily.scm (lilypond-main): Use it.
11012
11013         * configure.in (gui_b): Add mbrtowc checking.
11014         Resurrect [utf8/]wchar.h checking.
11015
11016 2005-05-09  Mats Bengtsson  <mabe@s3.kth.se>
11017
11018         * Documentation/user/advanced-notation.itely (Metronome marks):
11019         Add link to the program reference for MetronomeMark
11020
11021         * Documentation/user/lilypond-book.itely (An example of a
11022         musicological document): Correct the example using psfonts 
11023
11024 2005-05-09  Heikki Junes  <hjunes@cc.hut.fi>
11025
11026         * po/fi.po: update after a lesson how to update entries against
11027         source.
11028         
11029         * po/TODO: document the lesson.
11030
11031 2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11032
11033         * configure.in (gui_b): remove wcrtomb checking.
11034
11035         * lily/general-scheme.cc (LY_DEFINE): hand-convert utf8 to 32
11036         bits. Patch by Matthias Neeracher. <neeracher@mac.com>
11037
11038 2005-05-09  Mats Bengtsson  <mabe@s3.kth.se>
11039
11040         * scripts/convert-ly.py: In the conversion to version 1.9.0, 
11041         keep Scheme expressions and strings unmodified when doing the
11042         conversion to postfix notation for slurs and beams. Should
11043         hopefully solve most related conversion problems. 
11044
11045         * Documentation/user/lilypond-book.itely : Clarify and correct how
11046         to call dvips with -h psfonts.
11047
11048 2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
11049
11050         * Documentation/user/instrument-notation.itely (Entering lyrics):
11051         Typo.  Fixes build.
11052
11053 2005-05-09  Graham Percival  <gperlist@shaw.ca>
11054
11055         * Documentation/user/lilypond-book.itely: document PSFONTS file.
11056
11057         * Documentation/user/lilypond.tely, lilypond-book.itely,
11058         tutorial.itely: change references to 2.5.x to 2.6.x.
11059
11060         * Documentation/user/instrument-notation.itely: clarified \addlyrics
11061         vs \lyricmode.
11062
11063         * Documentation/user/invoking.itely: remove old info about
11064         lilypond-profile.
11065
11066         * Documentation/topdocs/INSTALL.texi: remove old info about
11067         lilypond-profile, add warning about needing international fonts
11068         to build docs.
11069
11070 2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11071
11072         * lily/include/grob-info.hh (class Grob_info): make data member
11073         private. Changes throughout.
11074
11075         * input/regression/alignment-order.ly: new file. 
11076
11077         * lily/vertical-align-engraver.cc (acknowledge_grob): read
11078         alignAboveContext and alignBelowContext
11079
11080 2005-05-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11081
11082         * lily/pfb.cc (LY_DEFINE): add cast.
11083
11084         * scm/framework-ps.scm (write-preamble): embed CFFs if file name
11085         matches .otf
11086         (write-preamble): warn about unknown fonts.
11087
11088         * lily/pfb.cc (Module): new function ly:otf->cff
11089
11090         * lily/open-type-font.cc (get_otf_table): use ::get_otf_table
11091         (get_otf_table): new function.
11092
11093 2005-05-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11094
11095         * scm/backend-library.scm (postscript->png): call lilypond-ps2png
11096         iso. ps2png.
11097
11098 2005-05-06  Heikki Junes  <hjunes@cc.hut.fi>
11099
11100         * po/fi.po: apply second round of update.
11101
11102 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11103
11104         * scm/x11-color.scm (make-x11-color-handler): don't use
11105         #\sp. Apparently doesn't work on all platforms. 
11106
11107 2005-05-06  Graham Percival  <gperlist@shaw.ca>
11108
11109         * Documentation/user/advanced-notation.itely, putting.itely,
11110         tutorial.itely, global.itely, introduction.itely: really minor fixes.
11111
11112 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11113
11114         * VERSION (PACKAGE_NAME): release 2.5.23
11115
11116 2005-05-06  Jan Nieuwenhuizen  <janneke@gnu.org>
11117
11118         * Documentation/topdocs/AUTHORS.texi: Remove texinfo @accents,
11119         convert to utf-8.
11120
11121         * THANKS: Add translators for this release, convert to utf-8.
11122
11123         * mf/GNUmakefile (MFTRACE_FLAGS):
11124         * buildscripts/substitute-encoding.py (outdir): Build fix: pass
11125         outdir as option (WAS: hardcoded).
11126
11127 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11128
11129         * lily/staff-symbol-engraver.cc (Staff_symbol_engraver): init
11130         finished_span_
11131
11132         * THANKS: add Hans Forbrich.
11133
11134         * Documentation/topdocs/NEWS.tely (Top): document new feature.
11135
11136         * Documentation/user/basic-notation.itely (Staff symbol): document
11137         start/stop staff. Reference to ossia.ly
11138
11139         * input/test/ossia.ly: new example using stop and startStaff.
11140
11141         * lily/timing-engraver.cc: remove Timing_engraver::initialize(),
11142         in other words, don't create "|" barline at start of the score.
11143         (start_translation_timestep): don't set whichBar for start of score.
11144
11145         * input/regression/staff-halfway.ly: use new functionality.
11146
11147         * lily/staff-symbol-engraver.cc (try_music): take StaffSpanEvents,
11148         start and stop staff based on events.
11149
11150         * scm/define-music-types.scm (music-descriptions): add StaffSpanEvent
11151
11152         * ly/declarations-init.ly (startStaff, stopStaff): new identifiers.
11153
11154 2005-05-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11155
11156         * Documentation/user/programming-interface.itely (How markups work
11157         internally ): remove \encoding reference.
11158
11159 2005-05-04  Mats Bengtsson  <mabe@s3.kth.se>
11160
11161         * scripts/convert-ly.py: Attempt to do a smarter update of 
11162         text markups from versions < 1.9.0 with arbitrary nesting.
11163
11164 2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
11165
11166         * po/fi.po: convert to utf-8, and update.
11167
11168 2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11169
11170         * make/lilypond.suse.spec.in: update from suse 2.4 package.
11171
11172         * lily/*.cc: more <? >? to min/max changes
11173
11174         * lily/include/interpretation-context-handle.hh: rename
11175         Interpretation_context_handle to Context_handle.
11176
11177 2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
11178
11179         * input/regression/GNUmakefile (local_delete): use `find` together 
11180         with `xargs` to avoid too long argument-lists in cmd line.
11181
11182 2005-05-04  Graham Percival  <gperlist@shaw.ca>
11183
11184         * Documentation/user/introduction.itely: updates "About this manual".
11185
11186         * Documentation/user/advanced-notation.itely,
11187         invoking.itely: minor fixes.
11188
11189 2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11190
11191         * COPYING: add font exception. Update FSF address. 
11192
11193         * lily/context-def.cc (path_to_acceptable_context): bugfix, depth
11194         should be taken without child context.
11195
11196         * ly/chord-modifiers-init.ly (blackTriangleMarkup): use it.
11197
11198         * scm/define-markup-commands.scm (triangle): new command, as
11199         robust replacement for unicode Delta/Triangle.
11200
11201 2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11202
11203         * ps/music-drawing-routines.ps: add fillp argument.
11204
11205         * lily/lookup.cc (round_filled_polygon): polygon takes filled? argument
11206
11207         * lily/font-config.cc (init_fontconfig): don't add cff/
11208
11209         * VERSION (PACKAGE_NAME): release 2.5.22
11210
11211         * mf/GNUmakefile: remove cff/cff.ps/.map install rules.
11212
11213         * lily/grace-engraver.cc (consider_change_grace_settings): use
11214         is_alias(). Fixes problem with CueVoice grace notes. 
11215
11216         * lily/simultaneous-music-iterator.cc (construct_children): call
11217         Music_iterator::quit() for iterators that start out invalid. This
11218         fixes indefinitely continuing contexts.
11219
11220         * buildscripts/substitute-encoding.py: new file
11221
11222         * Documentation/user/basic-notation.itely (Basic polyphony): fix
11223         missing @end 
11224
11225         * scripts/lilypond-book.py (write_if_updated): print file name.
11226
11227         * Documentation/user/basic-notation.itely (Explicitly
11228         instantiating voices): idem.
11229
11230         * Documentation/user/advanced-notation.itely (Text spanners):
11231         remove stray { } 
11232
11233         * lily/context.cc (default_child_context_name): the default child
11234         is now first in accepts_list_.
11235
11236         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
11237         \defaultchild to all relevant contexts.  This fixes:
11238         drums-pitch.ly.
11239
11240         (Probably also fixes similar problems with ancient
11241         transcriptions getting CueVoices instead of the desired voices.)
11242  
11243         * lily/context-def.cc (get_default_child): new function.
11244         (get_accepted): place default child in front of list.
11245
11246         * lily/parser.yy (FIXME): add DEFAULTCHILD token.
11247
11248         * lily/include/context-def.hh (struct Context_def): add
11249         default_accept_
11250
11251 2005-05-03  Graham Percival  <gperlist@shaw.ca>
11252
11253         * scm/define-grobs.scm: remove "remove-first" line, since
11254         the absent property is set to #f anyway.
11255
11256         * Documentation/user/basic-notation.itely,
11257         advanced-notation.itely, instrument-notation.itely: minor
11258         fixes.
11259
11260         * ly/property-init.ly: add textSpanner{Up,Down,Neutral}.
11261
11262         * Documentation/user/advanced-notation.itely,
11263         changing-defaults.itely: consolidate Text stuff in
11264         advanced notation.
11265
11266         * Documentation/user/global.itely: better docs for \header.
11267
11268         * Documentation/user/putting.itely: new chapter; placeholder
11269         for future expansion.
11270
11271         * Documentation/user/examples.itely: moved "suggestions for
11272         writing LP files" section into putting.itely.
11273
11274         * Documentation/user/lilypond.itely: added new chapter,
11275         fixed the short table of contents.
11276
11277 2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11278
11279         * lily/beam-quanting.cc (quanting): robustness fix, don't produce
11280         infinity for unfeasible beams.
11281
11282         * make/lilypond.fedora.spec.in (Group): idem.
11283
11284         * scripts/GNUmakefile (SEXECUTABLES): rename ps2png to lilypond-ps2png
11285
11286         * mf/GNUmakefile (ALL_GEN_FILES): remove .map
11287
11288         * scm/framework-ps.scm (write-preamble): extract CFF from OTF
11289         fonts directly.
11290
11291         * buildscripts/gen-emmentaler-scripts.py (i): idem.
11292
11293         * mf/GNUmakefile: remove all CFF rules.
11294
11295         * scm/framework-ps.scm (ps-embed-cff): reinstate.
11296
11297         * lily/open-type-font-scheme.cc (LY_DEFINE):
11298         new function ly:otf-font-table-data.
11299         (LY_DEFINE): new function otf-font?
11300
11301 2005-05-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11302
11303         * mf/GNUmakefile ($(outdir)/lilypond.map): remove rule.
11304         ($(outdir)/Fontmap.lily): idem.
11305
11306         * buildscripts/gen-emmentaler-scripts.py (i): load fetaXX encoding
11307         for PFAEmmentaler-XXX.pfa. 
11308
11309         * Documentation/user/music-glossary.tely (accidental): NL
11310         translation of accidental.
11311
11312 2005-05-02  Jan Nieuwenhuizen  <janneke@gnu.org>
11313
11314         * flower/include/international.hh: Bugfix: include "string.hh".
11315
11316         * lily/include/mingw-compatibility.hh: New file.
11317
11318         * flower/include/libc-extension.hh (memrev): Rename from strrev.
11319
11320         * configure.in: Search for mingw wcrtomb library.
11321
11322 2005-05-02  Mats Bengtsson  <mabe@s3.kth.se>
11323
11324         * scripts/convert-ly.py: Bug fix
11325
11326         * Documentation/user/changing-defaults.itely (Common tweaks):
11327         Added example where the context has to be specified explicitly
11328         (MetronomeMark). 
11329
11330 2005-05-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11331
11332         * scripts/lilypond-book.py (ly_options): set timing to #f for
11333         notime option.
11334
11335         * scripts/convert-ly.py (conv): typo.
11336
11337         * flower/*.cc: remove <? and >?
11338         
11339         * lily/*.cc: remove <? and >?
11340
11341         * lily/tweak-registration.cc (insert_tweak_from_file): Make sure
11342         that 0x0 isn't passed into scm_cons(). Fixes crash with tweak
11343         editor.
11344
11345 2005-04-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11346
11347         * lily/part-combine-engraver.cc: add space to variable list.
11348
11349 2005-04-30  Graham Percival  <gperlist@shaw.ca>
11350
11351         * scm/define-grobs.scm: changed RemoveEmptyVerticalGroup's
11352         remove-first to false (matches docs)
11353
11354         * Documentation/user/advanced-notation.itely: corrected docs
11355         concerning remove-first.
11356
11357 2005-04-29  Mats Bengtsson  <mabe@s3.kth.se>
11358
11359         * lily/part-combine-engraver.cc: make sure that the relevant
11360         properties are included in the documentation.
11361
11362 2005-04-28  Graham Percival  <gperlist@shaw.ca>
11363
11364         * Documentation/user/lilypond-book.itely: Bernard's docs
11365         for \betweenLilyPondSystem.
11366
11367 2005-04-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11368
11369         * Documentation/topdocs/INSTALL.texi (Top): remove TeX outdated
11370         remarks.
11371
11372 2005-04-28  Pal Benko  <benkop@freestart.hu>
11373
11374         * lily/mensural-ligature.cc (brew_flexa): apply thickness property
11375         only on vertical lines of flexa shape, and use a constant
11376         thickness value for horizontal lines (patch slightly modified by
11377         Jürgen Reuter)
11378
11379         * lily/include/mensural-ligature.hh: make 2 comments clearer
11380
11381 2005-04-28  Jürgen Reuter  <reuter@ipd.uka.de>
11382
11383         * lily/vaticana-ligature-engraver.cc (need_extra_space): renamed
11384         to need_extra_horizontal_space; bugfix: use class scope to avoid
11385         global namespace pollution
11386
11387         * Documentation/user/instrument-notation.itely (ligatures): added
11388         comment on possible future syntax change and how to work around
11389
11390         * lily/vaticana-ligature-engraver.cc, mf/parmesan-heads.mf
11391         (epiphonus, cephalicus): fine-tune shape of plica head for narrow
11392         intervals (fixes agnus dei example)
11393
11394         * Documentation/user/instrument-notation.itely (white mensural
11395         ligatures): selected a more illustrative example
11396
11397 2005-04-28  Heikki Junes <hjunes@cc.hut.fi>
11398
11399         * Documentation/index.html.in: specify utf-8 charset in meta content.
11400
11401 2005-04-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11402
11403         * python/lilylib.py (make_ps_images): bugfixes; GS can produce
11404         empty 2nd page for single page.
11405
11406         * scm/lily.scm: remove p&c definitions.
11407
11408         * po/zh_TW.po (Module): new translation.
11409
11410         * lily/lily-guile.cc (ly_chain_assoc): remove.
11411
11412         * lily/general-scheme.cc (LY_DEFINE): export ly:chain_assoc_get
11413         (LY_DEFINE): recurse, iso. calling ly_chain_assoc.
11414
11415 2005-04-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11416
11417         * lily/beaming-info.cc: remove infinity_i
11418
11419         * scripts/abc2ly.py (out_filename): fix thinko with \version.
11420
11421 2005-04-26  Graham Percival  <gperlist@shaw.ca>
11422
11423         * Documentation/user/basic-notation.itely,
11424         instrument-notation.itely, advanced-notation.itely,
11425         changing-defaults.itely: minor fixes.  Added docs
11426         for colors to advanced-notation.itely.
11427
11428         * Documentation/user/advanced-notation.itely: fixed compile
11429         problem and added Bernard's x11-color doc patch.
11430
11431 2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
11432
11433         * scm/output-ps.scm (grob-cause): Yet another fix, hope it's
11434         alright this time round.
11435
11436 2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11437
11438         * Documentation/topdocs/INSTALL.texi (Top): idem.
11439
11440         * Documentation/topdocs/README.texi (Top): remove clean-fonts refs.
11441
11442         * VERSION (MAJOR_VERSION): release 2.5.21
11443
11444         * scm/output-ps.scm (grob-cause): bugfix.
11445
11446 2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
11447
11448         * cygwin/*: Update.
11449
11450         * cygwin/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Remove profile
11451         stuff.
11452
11453         * scm/output-ps.scm (grob-cause): Bugfix.
11454
11455         * scm/lily.scm (ly:load): Remove x11-color.
11456
11457         * stepmake/aclocal.m4 (STEPMAKE_GET_EXECUTABLE): Bugfix: do not
11458         quote executable, fixes getting version from program --with
11459         --options.
11460         (STEPMAKE_KPATHSEA): Bugfix for Cygwin cross building: use
11461         $ac_exeect.
11462
11463         * Documentation/user/GNUmakefile: Only build music-glossary with
11464         rendered lilypond snippets during web.
11465
11466 2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11467
11468         * po/de.po: update.
11469
11470         * lily/GNUmakefile (OUT_DIST_FILES): don't dist lexer.cc
11471
11472 2005-04-22  Laura Conrad <lconrad@laymusic.org>
11473  
11474         * scripts/abc2ly:
11475         second title line append with punctuation dash character;
11476         encode abc2ly python strings in utf-8
11477        
11478 2005-04-21  Laura Conrad <lconrad@laymusic.org>
11479
11480         * scripts/abc2ly fix chords (again)
11481  
11482 2005-04-22  Bernard Hurley  <bernard@fong-hurley.org.uk>
11483
11484         * scm/x11-color.scm: new file
11485         All x11 color names can be accessed with:
11486         #(x11-color 'ColorName),
11487         #(x11-color "ColorName") or:
11488         #(x11-color "color name")
11489         If the x11 color name is not recognised then it defaults
11490         to black
11491
11492         * scm/lily.scm: amended to call scm/x11-color.scm
11493
11494 2005-04-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11495
11496         * Documentation/user/invoking.itely (Reporting bugs): comment out
11497         reference to online PNG bug repository.
11498
11499 2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
11500
11501         * lily/translator-scheme.cc (ly:translator-property): Remove.
11502         Update callers.
11503
11504         * lily/context-scheme.cc (ly:context-now): Move from translator.
11505         Update callers.
11506
11507 2005-04-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11508
11509         * input/regression/grid-lines.ly (skips): refine example.
11510
11511         * scm/define-context-properties.scm
11512         (all-user-translation-properties): doc autoBeamCheck
11513
11514         * input/regression/grid-lines.ly (Module): new file.
11515
11516         * lily/grid-point-engraver.cc (Module): new file.
11517
11518         * lily/grid-line.cc (Module): new file.
11519
11520         * lily/grid-line-span-engraver.cc (Module): new file.
11521
11522         * lily/grid-line-interface.cc (Module): new file.
11523
11524 2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
11525
11526         * scm/auto-beam.scm (revert-property-setting): Bugfixes: add
11527         missing parameter, actualy cdr through list.  Actually return a
11528         list with ENTRY removed (was '()).
11529
11530         * scripts/convert-ly.py: Update.  Print warning if file cannot be
11531         opened.
11532         (do_conversion): Fix printing of continuation comma.
11533
11534         * Documentation/user/advanced-notation.itely (Beam formatting):
11535         Remove refbugs about compound time and mixed duration.
11536
11537         * scm/auto-beam.scm (default-auto-beam-settings): Write out all
11538         modulo moments explicitely.
11539
11540         * lily/moment.cc (operator %): New function.
11541
11542         * lily/moment-scheme.cc (ly:mod-moment): Wrap it.
11543
11544         * lily/translator-scheme.cc (ly:translator-now,
11545         ly:translator-property): New function.
11546
11547         * scm/auto-beam.scm (default-auto-beam-check): New function.
11548
11549         * lily/auto-beam-engraver.cc (test_moment): Use it.
11550
11551         * flower/rational.cc (operator %): Bugfix.
11552
11553 2005-04-21  Erik Sandberg  <ersa9195@student.uu.se>
11554
11555         * scripts/abc2ly: Bugfix
11556
11557 2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11558
11559         * python/fontextract.py (write_extracted_fonts): bugfix, too many
11560         %'s on EndFont comment.
11561
11562         * lily/ledger-line-spanner.cc: some more words of explanation.
11563
11564 2005-04-20  John Williams <williams@tni.com>  
11565         
11566         * scripts/lilypond-book.py: htmlquote bugfix.
11567         Allow snippets to be given distinct filenames.
11568         Allow the default alt text to be overridden.
11569
11570 2005-04-20  Erik Sandberg  <ersa9195@student.uu.se>
11571
11572         * ly/performer-init.ly: Bugfix
11573
11574         * THANKS: Added bughunters.
11575
11576 2005-04-20  Jan Nieuwenhuizen  <janneke@gnu.org>
11577
11578         * SConstruct (test_lib): Bump mftrace requirement to 1.1.9.
11579
11580         * lily/auto-beam-engraver.cc (test_moment): Test exact measure
11581         position (was: use modulo measure length).
11582
11583         * configure.in (no gui_b): Remove optional gtk+ requirement.
11584
11585 2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11586
11587         * Documentation/user/basic-notation.itely (Pitches): add
11588         LedgerLineSpanner.
11589
11590         * lily/dynamic-engraver.cc (process_music): set right bound to
11591         script if present. Else, do not set.
11592         (acknowledge_grob): only set right bound of finished spanner to
11593         note column if no other bound is set.
11594
11595         * python/lilylib.py (make_ps_images): switch back to png16m.
11596         
11597 2005-04-19  Jan Nieuwenhuizen  <janneke@gnu.org>
11598
11599         * scripts/lilypond-book.py (write_if_updated): Bugfix for not
11600         writing up to date file.  Add dvips usage suggestion.
11601
11602         * scripts/convert-ly.py: Fix error message.
11603         Print usage if no files on command line.
11604         (usage): Add example usage.
11605
11606         * input/test/compound-time.ly: New file.
11607
11608         * input/test/circle.ly: New file.
11609
11610         * Documentation/topdocs/NEWS.tely: Use them.
11611
11612         * input/test/boxed-stencil.ly: Remove \score.
11613
11614         * buildscripts/mf-to-table.py (base): Add .log dependency.
11615
11616         * mf/GNUmakefile: Add PFAemmentaler and PFAaybabtu dependencies on
11617         pfa's.  Add .log dependency
11618
11619         * scm/define-markup-commands.scm (lower): New command.
11620
11621         * elisp/lilypond-mode.el (LilyPond-pdf-command): New command,
11622         make it default.
11623
11624 2005-04-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11625
11626         * lily/dynamic-engraver.cc (acknowledge_grob): add note-column
11627         also to finished cresc as right bound. This fixes:
11628         skip-string-decresc.ly
11629
11630         * lily/slur-scoring.cc (get_bound_info): robustness: substitute
11631         relative_coordinate if extent is empty.
11632
11633         * lily/stem.cc (width_callback): determine correct extent if flag
11634         is not there. This fixes slur-no-flag.ly
11635
11636         * lily/grace-engraver.cc (consider_change_grace_settings): new
11637         function.
11638         (initialize): also consider_change_grace_settings() on
11639         initialization. Fixes large grace notes at start of score.
11640
11641         * lily/break-align-interface.cc (do_alignment): don't translate if
11642         total_extent is empty.
11643
11644         * buildscripts/lilypond-{login,profile}.sh (Module): remove file.
11645
11646 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11647
11648         * scm/output-ps.scm (grob-cause): don't add cwd if path starts
11649         with slash.
11650
11651 2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
11652
11653         * stepmake/aclocal.m4: Remove tfm_path.
11654
11655 2005-04-18  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11656
11657         * scm/music-functions.scm (markup-expression->make-markup): fix
11658         bug with cons arguments of markup commands.
11659         (music->make-music): fix music expression property list building
11660
11661 2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
11662
11663         * aclocal.m4: Massage package names.
11664
11665         * SCons updates.
11666
11667 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11668
11669         * VERSION (PACKAGE_NAME): release 2.5.20
11670
11671         * lily/stem.cc (calc_stem_info): add minimum Y extent of
11672         stem-tremolo.  Fixes: bugs/tremolo-stem-length-beamed
11673
11674         * lily/percent-repeat-engraver.cc (try_music): add measure before
11675         next_moment to future processing moment. Fixes:
11676         percent-repeat-mm-rest.ly
11677         (process_music): don't add moment for 2nd time.
11678
11679         * input/regression/repeat-percent.ly: add mmrests as extra test.
11680
11681         * lily/axis-group-engraver.cc (acknowledge_grob): read
11682         keepAliveInterfaces to decide what to kill.
11683
11684         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add
11685         percent-repeat-interface to keepAliveInterfaces. This fixes
11686         percent-repeat-harakiri.
11687
11688 2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
11689
11690         * SCons updates.
11691
11692 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11693
11694         * config.make.in (TTFTOOL_ENDIAN): rm TFM_PATH
11695
11696         * aclocal.m4: remove --enable-tfm-path configure option
11697
11698         * input/test/ancient-font.ly (lowerStaff): clef name errors.
11699
11700         * scm/backend-library.scm (postscript->png): newline after
11701         finishing command.
11702
11703         * lily/paper-score-scheme.cc (LY_DEFINE): new file.
11704         (LY_DEFINE): ly:paper-score-paper-systems: new function 
11705
11706         * lily/score-scheme.cc (LY_DEFINE): require music argument. 
11707
11708         * lily/score.cc (default_rendering): use Music_output too.
11709
11710         * input/test/chord-names-languages.ly (Module): rename file.
11711
11712         * lily/text-spanner.cc: add bound-padding.
11713
11714         * lily/paper-book.cc (systems): accept Paper_score
11715         iso. Paper_system vector. 
11716
11717         * input/regression/line-arrows.ly: new file.
11718
11719         * lily/paper-score.cc (process): run get_paper_systems() only once.
11720
11721         * lily/line-spanner.cc (line_stencil): add arrows.
11722
11723 2005-04-18  Jonatan Liljedahl  <lijon@kymatica.com>
11724
11725         * lily/line-interface.cc (make_arrow): new function. 
11726         (arrows): idem.
11727
11728 2005-04-18  Mathieu Giraud  <magiraud@free.fr>
11729
11730         * input/test/chord-names-german.ly: update for italian/french
11731         chords.
11732         
11733         * Documentation/user/instrument-notation.itely (Printing chord
11734         names): update.
11735
11736 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11737
11738         * lily/include/paper-score.hh (class Paper_score): remove unused
11739         prototypes.
11740
11741         * lily/book.cc (process): add -COUNT to midi output.
11742
11743         * lily/score.cc (book_rendering): remove outname argument
11744         (book_rendering): return list of Music_outputs. 
11745
11746         * lily/global-context-scheme.cc (LY_DEFINE): remove outname argument.
11747
11748         * lily/book.cc (process): loop over Music_outputs returned from
11749         Score::book_rendering().
11750
11751         * lily/*.cc (width_callback): remove spurious "unused" warnings
11752         for assert (axis==[XY]_AXIS); 
11753
11754         * lily/include/music-output.hh (class Music_output): smobify class.
11755
11756         * lily/include/paper-score.hh (class Paper_score): make members
11757         private.
11758
11759         * lily/performance.cc (process): return #f iso. #<undefined>. This
11760         prevents #<undefined> leaking into GUILE-userspace.
11761
11762 2005-04-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11763
11764         * config.hh.in: remove HAVE_PANGO_FC_FONT_MAP_ADD_DECODER_FIND_FUNC.
11765
11766 2005-04-17  Mathieu Giraud  <magiraud@free.fr>
11767
11768         * scm/chord-name.scm : support for italian and french
11769         chords names.
11770
11771         * scm/chord-ignatzek-names.scm (ignatzek-chord-names): add
11772         a space defined by chordPrefixSpacer when the root name is
11773         direclty followed by a prefix.
11774
11775         * ly/engraver-init.ly : chordPrefixSpacer       
11776         * scm/define-context-properties.scm : chordPrefixSpacer
11777         * ly/property-init.ly : italianChords, frenchChords 
11778
11779 2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
11780
11781         * mf/feta-din.mf: Remove.
11782
11783         * mf/GNUmakefile (fontdir): Bugfix.
11784
11785         * mf/SConstruct: Some updates.
11786
11787         * SConstruct: Require pkg-config.
11788         (test_program): Bugfix for double digit version compares, use
11789         integer (not string-) compare.
11790         Optionally require gs 8.14.
11791
11792         * stepmake/aclocal.m4 (STEPMAKE_PANGO_FT2): Define HAVE_PANGO16 too.
11793
11794         * lily/*: s/ifdef HAVE_*/if have/.
11795
11796         * SConstruct (test_lib): New function.  Update pkg-config and some
11797         other requirements.
11798
11799         * configure.in: Require pkg-config.  Enforce REQUIRE and version for
11800         freetype, pangof2t.
11801
11802 2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
11803
11804         * po/lilypond.pot, ...: Update using bison-CVS.
11805
11806         * python/lilylib.py (make_ps_images): Fixo.
11807
11808 2005-04-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11809
11810         * python/lilylib.py (make_ps_images): typo.
11811
11812         * configure.in (gui_b): make bison optional.
11813
11814         * lily/GNUmakefile (OUT_DIST_FILES): dist parser and lexer.
11815
11816 2005-04-16  Bernard Hurley  <bernard@fong-hurley.org.uk>
11817
11818         * framework-eps.scm: code added so that a macro \betweenLilyPondSystem
11819         with one parameter can be defined in a LaTeX file when processed
11820         by lilypond-book this will be evaluated between the systems of
11821         a multi-system score. The parameter is the number of systems processed.
11822
11823 2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
11824
11825         * python/lilylib.py (make_ps_images): Escape newline.
11826
11827         * Documentation/user/music-glossary.tely: Run
11828         texinfo-all-menus-update.
11829
11830 2005-04-14  Jan Nieuwenhuizen  <janneke@gnu.org>
11831
11832         * scm/lily-library.scm (old-relative-not-used-message)
11833         (version-not-seen-message): Add input-file-name-location to message.
11834
11835         * lily/parser.yy (lilypond): Add token aliases.
11836
11837         * Documentation/user/music-glossary.tely (accidental): Fixes.  Do
11838         not confuse with alteration.
11839         (alteration): Add.
11840
11841 2005-04-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11842
11843         * python/lilylib.py (make_ps_images): use -dEPSCrop
11844
11845         * VERSION (PACKAGE_NAME): release 2.5.19 
11846
11847         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
11848         only put xrefs in info documentation.
11849
11850         * make/ly-rules.make ($(outdir)/%.html.omf): transplant .dvi ->
11851         .pdf rule to tex-rules.make.
11852
11853         * scm/framework-eps.scm (dump-stencils-as-EPSes): remove comments
11854         from -systems.* output.
11855
11856         * stepmake/stepmake/tex-rules.make ($(outdir)/%.pdf): make PDF
11857         directly, remove -$(PAGESIZE) target.
11858
11859         * input/test/embedded-postscript.ly: update.
11860
11861 2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11862
11863         * make/lysdoc-targets.make (local-WWW): remove ps.gz target.
11864
11865         * Documentation/user/changing-defaults.itely (Font selection):
11866         document font-name.
11867
11868         * input/regression/font-name.ly: show Pango fonts for
11869         font-name. Update example. 
11870
11871         * lily/pango-select.cc (properties_to_pango_description): don't
11872         convert symbol font-size to number, but use to lookup.
11873
11874         * python/fontextract.py (write_extracted_fonts): add VMusage 0.
11875
11876         * scm/framework-ps.scm (write-preamble): use (NAME . CONTENTS) and
11877         (NAME . FILE-NAME) tuples for font descriptions. 
11878         (write-preamble): display BeginFont DSC comments.
11879
11880         * python/fontextract.py (write_extracted_fonts): new file. Extract
11881         font resources from a PS file.
11882
11883         * scripts/lilypond-book.py (option_definitions): --psfonts option.
11884         (Compile_error.process_include): do_file returns chunks.
11885
11886         * make/ly-vars.make (DVIPS_FLAGS): don't load .map file.
11887
11888         * make/lysdoc-targets.make: .texi is .PRECIOUS
11889
11890         * scripts/lilypond-book.py (write_if_updated): new function.
11891
11892 2005-04-13  Jan Nieuwenhuizen  <janneke@gnu.org>
11893
11894         * scm/framework-eps.scm (dump-stencils-as-EPSes): Massage messages.
11895
11896 2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11897
11898         * scm/framework-eps.scm (dump-stencils-as-EPSes): no massages.
11899
11900         * input/regression/markup-syntax.ly: remove \score.
11901
11902         * scm/define-markup-commands.scm (draw-circle): add fill argument
11903
11904         * scm/stencil.scm (make-circle-stencil): add fill argument
11905
11906         * ps/music-drawing-routines.ps: add fill argument.
11907
11908         * ly/performer-init.ly: add CueVoice to MIDI too.
11909
11910         * ps/music-drawing-routines.ps: new routine BeginEPSF /
11911         EndEPSF.
11912
11913         * input/regression/markup-eps.ly: new file.
11914
11915         * scm/framework-ps.scm (write-preamble): change order: vars should
11916         be inited before procedures.
11917
11918         * scm/output-ps.scm (glyph-string): break lines. 255 chars is max
11919         for EPS files.
11920
11921         * scm/define-markup-commands.scm (epsfile): add epsfile command.
11922
11923 2005-04-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11924
11925         * configure.in (gui_b): add check for ghostscript 8.15
11926
11927 2005-04-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11928
11929         * lily/hairpin.cc (after_line_breaking): suicide the hairpinlet at
11930         start of line. Fixes cresc-after-newline.ly
11931
11932         * lily/source-file.cc (file_line_column_string): use get_column().
11933
11934 2005-04-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11935
11936         * lily/source-file.cc (get_column): utf-8 support for column numbers.
11937
11938 2005-04-12  Jan Nieuwenhuizen  <janneke@gnu.org>
11939
11940         * lily/*: use message () iso progress_indication () for messages.
11941         Revise/uniformise user messages.
11942
11943         * flower/warn.cc (progress_indication): New function.
11944         (message): Use it.  Fixes newline problems.
11945
11946         * config.make.in (webdir): Sort out install dirs.
11947
11948         * stepmake/stepmake/generic-targets.make (final-install): Bugfix.
11949
11950         * python/lilylib.py (command_name): Bugfix.
11951         (make_ps_images):
11952
11953 2005-04-11  Pedro Kroger  <kroeger@pedrokroeger.net>
11954
11955         * lily/main.cc: --help says what types of backends are availabe
11956
11957 2005-04-11  Jan Nieuwenhuizen  <janneke@gnu.org>
11958
11959         Fix ./VERSION dependency, and without need to reconfigure.
11960
11961         * lily/main.cc (setup_paths): Update.
11962
11963         * stepmake/bin/make-version.py (defs): Add TOPLEVEL_VERSION define..
11964
11965         * config.hh.in (LILYPOND_DATADIR): Remove TOPLEVEL_VERSION.
11966
11967         * scripts/convert-ly.py (\markup): Fix too simplistic regexps.
11968         Add \line for some simplistic cases.
11969
11970         * lily/GNUmakefile (main.o): Add missing dependency on version.hh.
11971
11972 2005-04-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11973
11974         * elisp/lilypond-mode.el (LilyPond-lilypond-command): command used
11975         to compile LY files (useful for adding eg. "-I" args)
11976         (LilyPond-command-alist): use `LilyPond-lilypond-command'. Add a
11977         2Gnome command for gnome backend.
11978         (LilyPond-command-formatgnome): call the 2Gnome command. key
11979         binding: C-c C-g
11980
11981 2005-04-10  Jan Nieuwenhuizen  <janneke@gnu.org>
11982
11983         * Documentation/user/GNUmakefile (lilypond/index.html): Bugfix:
11984         depend on all PNG images.
11985
11986 2005-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
11987
11988         * GNUmakefile.in: Bugfix: also link .map files.
11989
11990 2005-04-09  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11991
11992         * scm/music-functions.scm (music->make-music): generate 
11993         a (make-music ...) sexpr from a music expression.
11994         (display-scheme-music): use guile pretty printer to display the
11995         make-music sexpr.
11996
11997 2005-04-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11998
11999         * ly/engraver-init.ly: reindent.
12000         Add CueVoice.
12001
12002         * scm/music-functions.scm (music-pretty-string): handle moments
12003         too.
12004         (music-pretty-string): only print non-empty lists.
12005         (cue-substitute): create CueVoice context, which has smaller type.
12006
12007         * lily/moment-scheme.cc (LY_DEFINE): new methods
12008         ly:moment-grace-{numerator,denominator}
12009
12010         * lily/context-handle.cc: remove quit() method. 
12011
12012         * lily/font-config.cc (init_fontconfig): be verbose about font path.
12013         (init_fontconfig): success is 0, not !0
12014
12015 2005-04-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12016
12017         * mf/feta-nummer-code.mf (code): add plus glyph.
12018
12019         * lily/tie.cc (print): idem.
12020
12021         * lily/slur.cc (print): don't use thickness property for
12022         slur shape-thickness.
12023
12024         * lily/stencil-scheme.cc (LY_DEFINE): don't reverse the order
12025         while adding stencils.
12026
12027         * scm/define-markup-commands.scm (with-color): with-color markup
12028         command.
12029         (whiteout): new markup command 
12030         (filled-box): new markup command
12031
12032 2005-04-07  Jan Nieuwenhuizen  <janneke@gnu.org>
12033
12034         * Documentation/topdocs/NEWS.tely (Top): Make tex-able.  Handy
12035         test for PDF docs.
12036
12037         * mf/GNUmakefile (lilypond.map): Add PFAEmmentaler,
12038         PFAAybabtu-Regular.  Fixes feta font in PDFs.
12039         
12040         Notes for tetex-3.0 make web:
12041            psclean.map: s/uhv8a/uhvr8a/
12042            config.ps add:
12043                 p +psfonts_t1.map
12044                 p +psclean.map
12045                 p +typeface.map
12046
12047 2005-04-06  Nicolas Sceaux  <nicolas.sceaux@free.fr>
12048
12049         * scm/music-functions.scm (music-pretty-string): fix bug with
12050         string argument.
12051
12052 2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
12053
12054         * stepmake/bin/add-html-footer.py (i18n): Bugfix.
12055
12056 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12057
12058         * scripts/lilypond-book.py (Lilypond_snippet.__init__): 
12059         only process options if they're there.
12060         (write_file_map): add version-seen? to snippet-map.ly
12061
12062 2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
12063
12064         * scripts/lilypond-book.py (split_options): Bugfix.  Small code
12065         formatting cleanups.
12066
12067         * mf/GNUmakefile: Rewrite $addprefix, $addsuffix using % short-forms.
12068         Add PFAaybabtu.pfa dependency on aybabtu.subfonts.
12069
12070 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12071
12072         * scm/framework-ps.scm (ps-font-command): don't hash, just use
12073         name directly.
12074
12075         * lily/main.cc (setup_paths): either add mf/out to search path or 
12076         fonts/{otf,type1,etc}
12077         
12078         * lily/font-config.cc (init_fontconfig): either add mf/out to
12079         FontConfig or fonts/{otf,type1,etc}
12080
12081         * GNUmakefile.in: don't put mf/ link in share/ dir.
12082
12083         * lily/staff-spacing.cc: move same-direction-correction to
12084         note-spacing-interface
12085
12086         * scm/lily.scm (lilypond-main): use variable argument count for
12087         exception handler.
12088
12089         * lily/font-config.cc (init_fontconfig): add operator pacification
12090         message.
12091
12092         * mf/aybabtu.pe.in (i): generate PFAAybabtu.pfa
12093
12094         * buildscripts/gen-emmentaler-scripts.py (i): generate
12095         PFAEmmentaler as well.
12096
12097         * scm/framework-ps.scm (munge-lily-font-name): new function
12098         (write-preamble): hack: insert PFA equivalent of CFF into
12099         .PS. This makes LilyPond output printable on normal PS printers
12100         again.
12101
12102         * buildscripts/gen-emmentaler-scripts.py (i): generate
12103         PFAEmmentaler.pfa aswell.
12104
12105 2005-04-06  John Williams <williams@tni.com>  
12106         
12107         * scripts/lilypond-book.py: refactor the compose_ly procedure.
12108         
12109 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12110
12111         * scm/page-layout.scm (default-page-make-stencil): always combine
12112         the header stencil, even if empty. This prevents the body text to
12113         reach up to the margins.
12114
12115         * po/rw.po (Module): new file, for Kinyarwanda.
12116
12117         * input/test/spacing-optical.ly (Module): new file.
12118
12119         * lily/staff-spacing.cc: add same-direction-correction
12120
12121 2005-04-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12122
12123         * Documentation/user/introduction.itely (Engraving): Comment-out
12124         non-existent file.
12125
12126 2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12127
12128         * scm/define-grob-properties.scm (all-user-grob-properties): add
12129         same-direction-correction
12130
12131         * VERSION: release 2.5.18
12132
12133 2005-04-05  Jan Nieuwenhuizen  <janneke@gnu.org>
12134
12135         * lily/grob.cc (mark_smob): Check pscore->layout_ before
12136         dereferencing.  Fixes make web.
12137
12138         * lily/midi-stream.cc: Handle unwritable midi file.  Include
12139         errno.h.
12140
12141         * Documentation/user/: Fix links.
12142
12143 2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12144
12145         * lily/text-interface.cc (Module): rename from text-item.cc
12146
12147         * input/regression/apply-output.ly (texidoc): function naming fix.
12148
12149         * lily/time-signature-performer.cc (derived_mark): new function.
12150
12151         * lily/lily-parser-scheme.cc:  print mapped file name for progress
12152
12153         * scripts/lilypond-book.py (find_linestarts): new function.
12154         (find_toplevel_snippets): keep track of line numbers.
12155
12156         * lily/key-performer.cc (try_music): remove FIXME warning, gobble
12157         all key changes.
12158
12159         * ly/declarations-init.ly (partCombineListener): use
12160         ignoreBarChecks. Fixes: warn-partcombine-barcheck.ly
12161
12162         * lily/bar-check-iterator.cc (process): ignoreBarChecks property.
12163
12164 2005-04-04  Jan Nieuwenhuizen  <janneke@gnu.org>
12165
12166         * lily/text-item.cc: Fix link.
12167
12168         * Documentation/user/changing-defaults.itely (Changing defaults):
12169         Fix programs reference links.
12170
12171         * Documentation/user/music-glossary.tely: Convert to utf-8.
12172
12173 2005-04-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12174
12175         * make/lilypond-vars.make: remove TEXMF from variables.
12176         remove DEB_BUILD pk font variables.
12177         remove GUILE_LOAD_PATH
12178         remove TeX memory vars.
12179
12180 2005-04-04  Werner Lemberg  <wl@gnu.org>
12181
12182         * lilypond/scm-option.cc (ly_option_usage): Add final newline.
12183
12184 2005-04-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12185
12186         * ps/lilyponddefs.ps: remove reencode-font
12187
12188         * lily/simple-spacer.cc (add_columns): also compare
12189         directly. Column rank doesn't distinguish between broken and
12190         unbroken columns. This fixes large spaces before time sig changes.
12191
12192         * Documentation/user/point-and-click.itely: document ly:set-option.
12193
12194         * lily/grob.cc (get_uncached_stencil): only set grob-cause if
12195         point_and_click_global is set.
12196
12197         * lily/scm-option.cc (LY_DEFINE): add point-and-click
12198         ly:set-option argument.
12199
12200 2005-04-03  Jan Nieuwenhuizen  <janneke@gnu.org>
12201
12202         * GNUmakefile.in: Include symlinks in webball.
12203
12204         * Documentation/user/GNUmakefile (source-links): Add symlinks to
12205         source dir for split and non-split manuals.
12206
12207         * Documentation/user/*y: Fix @uref/@inputfile links for
12208         split/non-split HTML documents.
12209
12210         * Documentation/user/GNUmakefile (local-WWW): Do not generate
12211         .ps.gz.
12212         
12213 2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
12214
12215         * GNUmakefile.in: Add newline.
12216
12217 2005-04-01  Erlend Aasland  <erlenda@gmail.com>
12218
12219         * tex/lilyponddefs.tex: use color instead of xcolor
12220         * scm/output-tex.scm: minor editing
12221
12222 2005-04-02  Nicolas Sceaux  <nicolas.sceaux@free.fr>
12223
12224         * scm/music-functions.scm (display-scheme-music): pretty printer
12225         for music expressions.
12226
12227 2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
12228
12229         * buildscripts/install-info-html.sh (index_file): Fix link.
12230
12231 2005-04-01  Jan Nieuwenhuizen  <janneke@gnu.org>
12232
12233         * input/test/dynamic-extra.ly (piuf): Use utf-8 iso TeX accent.
12234
12235         * Documentation/index.html.in: Add size estimates with some big pages.
12236
12237         * Documentation/user/tutorial.itely (Running LilyPond for the
12238         first time): Add/replace some @rglos links.  TODO: add more
12239         @rglos links in tutorial, test non-intrusiveness (.css).
12240
12241         * stepmake/bin/add-html-footer.py (do_file): Remove info's
12242         annoying's indication of referencing external document.
12243
12244         * Documentation/user/GNUmakefile: Split version of glossary too.
12245         * Documentation/user/macros.itexi (@rglos): Have makeinfo produce
12246         links, not only for html.
12247
12248         * Documentation/user/introduction.itely: Fix some links for other
12249         than html, do not use `here' as link name.
12250
12251 2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
12252
12253         * scm/documentation-generate.scm (string-append): Fix @usermanref,
12254         @glossaryref.
12255
12256 2005-03-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12257
12258         * scm/page-layout.scm (default-page-make-stencil): only add header
12259         if existing and not empty. Fixes spurious programming error.
12260
12261         * lily/span-bar.cc (print): don't make rounded edges for spanbars.
12262
12263 2005-03-31  Erlend Aasland  <erlenda@gmail.com>
12264
12265         * scm/output-tex.scm: implement {re,}setcolor
12266         * tex/lilyponddefs.tex: use color package
12267
12268 2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
12269
12270         * GNUmakefile.in (local-WWW-post): Restore .htaccess and .html
12271         additions to website.
12272
12273         * Documentation/user/lilypond.tely: Remove reference to ps.gz.
12274
12275         * Documentation/user/macros.itexi: Fix @usermanref html links in
12276         split documents: use @inforef.
12277
12278 2005-03-30  Graham Percival  <gperlist@shaw.ca>
12279
12280         * Documentation/user/programming-interface.itely: minor fix.
12281
12282         * Documentation/user/advanced-notation.itely: added info to
12283         Metronome markings.
12284
12285 2005-03-30  Jan Nieuwenhuizen  <janneke@gnu.org>
12286
12287         * scm/output-lib.scm (make-stencil-boxer): Junk code duplication,
12288         use box-stencil.  Remove y-padding argument.
12289         (make-stencil-circler): New function.
12290
12291         * buildscripts/lilypond-words.py (F): 
12292         * elisp/SConscript (a): 
12293         * elisp/GNUmakefile (LILYPOND_WORDS_DEPENDS):
12294         * vim/SConscript (a): 
12295         * vim/GNUmakefile (LILYPOND_WORDS_DEPENDS): Update.
12296
12297         * lily/general-scheme.cc: Build fix.
12298
12299         * scm/markup.scm:
12300         * input/regression/markup-scheme.ly: 
12301         * input/regression/markup-syntax.ly: Drop 'new-' from name.
12302
12303         * scm/stencil.scm (make-circle-stencil): New function.
12304
12305         * scm/define-markup-commands.scm (draw-circle): Use it.  New
12306         name (was cicle).  Update callers.
12307         (circle): New markup command, similar to box.
12308
12309         * scm/stencil.scm (circle-stencil): New function.
12310
12311 2005-03-29  David Jedlinsky  <lilypond@ipnh.com>
12312
12313         * configure.in: Detect libutf8/wchar.h variant.
12314
12315         * stepmake/aclocal.m4: Modify shared size test.
12316
12317 2005-03-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12318
12319         * make/lilypond.fedora.spec.in (Group): remove texmf profile stuff.
12320
12321 2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12322
12323         * scripts/convert-ly.py (conv): add stencil-aligned-to! rule.
12324         
12325         * VERSION (PACKAGE_NAME):  release 2.5.17
12326
12327 2005-03-29  Jan Nieuwenhuizen  <janneke@gnu.org>
12328
12329         * scm/backend-library.scm (postscript->png): Fix comment and png
12330         message.
12331
12332         * GNUmakefile.in (link-tree): Fix locales.
12333
12334 2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12335
12336         * lily/stencil-scheme.cc (LY_DEFINE): change to
12337         ly:stencil-aligned-to, non mutating.
12338
12339         * scm/safe-lily.scm (lambda): remove ly:stencil-set-extent!
12340
12341         * lily/stencil-scheme.cc: remove ly:stencil-set-extent!
12342
12343         * lily/quote-iterator.cc (derived_mark): call
12344         Music_wrapper_iterator::derived_mark() too.
12345
12346         * lily/grace-engraver.cc (derived_mark): change signature, add
12347         const.
12348
12349 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12350
12351         * SConstruct (symlink): 
12352         * GNUmakefile.in (link-tree): Add scripts to prefix.
12353
12354         * lily/general-scheme.cc (ly:effective-prefix): New function.
12355
12356         * scm/backend-library.scm (postscript->png): Use it.
12357
12358 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12359
12360         * lily/paper-score.cc (process): don't delete grobs after
12361         producing stencils. 
12362
12363         * scm/part-combiner.scm (determine-split-list): switch off
12364         debugging info.
12365
12366         * scm/backend-library.scm (postscript->png): explicitly use ps2png.py
12367         if available.
12368
12369         * scm/define-context-properties.scm
12370         (all-user-translation-properties): add stringNumberOrientations.
12371
12372         * lily/new-fingering-engraver.cc (position_scripts): make generic,
12373         so fingering and string-numbers are separately controlled.
12374
12375 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12376
12377         * stepmake/aclocal.m4: Fix shared size test: add missing comma, do
12378         not use debugging.
12379
12380 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12381
12382         * GNUmakefile.in (local-WWW-post): remove UTF8 .htaccess.
12383
12384         * config.hh.in: add HAVE_FONTCONFIG.
12385
12386         * Documentation/user/instrument-notation.itely (String number
12387         indications): new node.
12388
12389         * input/regression/new-markup-syntax.ly (texidoc): add circle.
12390
12391         * lily/new-fingering-engraver.cc (add_string): new function. 
12392         (acknowledge_grob): accept string-number-event as well.
12393
12394         * scm/define-markup-commands.scm (circle): new markup command.
12395
12396         * scm/output-lib.scm (print-circled-text-callback): new function.
12397
12398         * lily/GNUmakefile: move ifeq after include stepmake.make.
12399
12400 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12401
12402         * config.make.in (HAVE_LIBKPATHSEA_SO):
12403         * stepmake/aclocal.m4: Also subst HAVE_LIBKPATHSEA_SO.
12404
12405         * lily/GNUmakefile (MODULE_LDFLAGS): Only if not HAVE_KPATHSEA_SO,
12406         add KPATHSEA_LIBS.
12407
12408         * debian/watch: 
12409         * debian/control: Update.
12410
12411 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12412
12413         * input/test/title-markup.ly (spaceTest): remove.
12414
12415         * input/test/embedded-tex.ly (Module): remove.
12416
12417         * input/test/music-box.ly: use 'name property, not ly:music-name.
12418
12419         * lily/GNUmakefile (MODULE_LDFLAGS): add KPATHSEA_LIBS.
12420
12421         * stepmake/aclocal.m4: STEPMAKE_FONTCONFIG: add.
12422
12423 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12424
12425         * Documentation/topdocs/INSTALL.texi (Top): Remove information
12426         about xdeltas.  Add information about CVS.
12427
12428         * scm/lily.scm (lilypond-main): Fix invocation of handler,
12429         gracefully handle failed files.
12430
12431         * lily/GNUmakefile (MODULE_LDFLAGS): Remove KPATHSEA_LIBS.
12432
12433         * Documentation/topdocs/INSTALL.texi (Top): Whitespace and other
12434         small fixes.
12435
12436         * scm/framework-tex.scm (convert-to-ps): Proper option spacing.
12437         No unnecessarily specific i18n messages.  Remove stray `1'.
12438
12439 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12440
12441         * buildscripts/lys-to-tely.py (strip_extension): add utf-8
12442         documentencoding
12443
12444         * scm/documentation-lib.scm (texi-file-head): set utf-8
12445         documentencoding.
12446
12447         * ly/chord-modifiers-init.ly (whiteTriangleMarkup): use the greek
12448         Delta, not the Symbol one. 
12449
12450         * mf/GNUmakefile ($(outdir)/lilypond.map): add -Regular to Aybabtu
12451         for the .map file.
12452
12453         * Documentation/topdocs/INSTALL.texi (Top): add running
12454         requirement as compilation requirement.
12455
12456 2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12457
12458         * buildscripts/mutopia-index.py (headertext): add h1 header and
12459         utf-8 charset meta field.
12460
12461         * input/GNUmakefile: prune example list.
12462
12463         * scm/framework-tex.scm (convert-to-ps): add -ofoo.ps to dvips
12464         options.
12465
12466         * lily/slur-scoring.cc (get_base_attachments): only look at stem
12467         extent for visible stems.
12468
12469         * lily/grob.cc (mark_smob): mark \layout block from Grob::mark_smob().
12470
12471 2005-03-27  Jan Nieuwenhuizen  <janneke@gnu.org>
12472
12473         * Documentation/topdocs/INSTALL.texi (Top): Updates.
12474
12475         * scripts/convert-ly.py: Python 2.2 compatibility (thanks Mats).
12476
12477 2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12478
12479         * lily/slur-scoring.cc (get_base_attachments): robustness. Don't
12480         pass inf/nan into slur scoring.
12481
12482         * ly/titling-init.ly (oddHeaderMarkup): don't show page no. on 1st
12483         page.
12484
12485         * scripts/abc2ly.py (dump_voices): use alphabet().
12486
12487 2005-03-27  Jeff Smith <whydoubt@yahoo.com>
12488         
12489         * mf/GNUmakefile (depth): use $(FONTFORGE). 
12490
12491 2005-03-27 Matthias Neeracher <neeracher@mac.com>
12492         
12493         * flower/include/virtual-methods.hh: simplify. Patch by
12494
12495 2005-03-25  John Williams <williams@tni.com>  
12496
12497         * scripts/lilypond-book.py (main): add png for HTML too, guess
12498         only if necessary. 
12499
12500 2005-03-25  Graham Percival  <gperlist@shaw.ca>
12501
12502         * Documentation/topdocs/INSTALL.texi: now recommends
12503         lexer-gcc-3.1.sh for gcc 3.1.1 or higher.
12504
12505         * Documentation/user/basic-notation.itely,
12506         Documentation/user/tutoria.itely: warn about
12507         only one (phrasing) slur at once.
12508
12509 2005-03-24  Pedro Kroger  <kroeger@pedrokroeger.net>
12510
12511         * ly/music-functions-init.ly (removeWithTag): fixed to return "music".
12512
12513 2005-03-23  Graham Percival  <gperlist@shaw.ca>
12514
12515         * Documentation/user/basic-notation.itely: fixed info about
12516         ending a (de)cresc.
12517
12518         * Documentation/user/lilypond-book.itely: fixed
12519         lilypond-book filter example and warned about not doing
12520         --filter and --process at the same time.
12521
12522 2005-03-23  Mats Bengtsson  <mabe@s3.kth.se>
12523
12524         * lily/parser.yy (bass_number),
12525         Documentation/user/instrument-notation.itely (Figured bass): 
12526         Add the possibility to use text markup in figured bass. 
12527
12528 2005-03-19  Graham Percival  <gperlist@shaw.ca>
12529
12530         * Documentation/user/global.itely: added info about naming
12531         identifiers and breakbefore.
12532
12533         * Documentation/user/invoking.itely: added info about batch
12534         processing files with convert-ly, removed references to TeX
12535         in the jail section.
12536
12537         * Documentation/user/examples.itely: possibly fixed piano
12538         dynamics.
12539
12540         * Documentation/user/advanced-notation.itely: added info
12541         about removing other types of Staff.
12542
12543         * Documentation/user/instrument-notation.itely: possibly
12544         fixed piano staff line switch.
12545
12546         * Documentation/user/changing-defaults.itely: added info
12547         about using normal font in titles.
12548
12549 2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12550
12551         * VERSION (PATCH_LEVEL): release 2.5.16
12552
12553         * make/ly-vars.make (DVIPS_FLAGS): include lilypond.map path
12554         explicitly.
12555
12556 2005-03-18  Jan Nieuwenhuizen  <janneke@gnu.org>
12557
12558         * scm/framework-tex.scm (convert-to-dvi): Barf if NAME contains
12559         whitespace.
12560
12561         * python/lilylib.py (make_ps_images):
12562         * scm/backend-library.scm (postscript->pdf, postscript->png):
12563         Quote file name.  Use format rather than string-append juggling.
12564
12565 2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12566
12567         * python/lilylib.py (make_ps_images): add x to -g argument. 
12568
12569         * lily/key-performer.cc (create_audio_elements): don't use
12570         scm_eval_string. Check for minor 3rd directly.
12571   
12572         * input/mutopia/J.S.Bach/baerenreiter-sarabande.ly
12573         (sarabandeCelloGlobal): key is D minor, not F major.
12574
12575 2005-03-17  Jan Nieuwenhuizen  <janneke@gnu.org>
12576
12577         Fix truncated --png output (Peter Danenberg).
12578         
12579         * python/lilylib.py (make_ps_images):
12580         * scripts/ps2png.py (copyright): Grok --papersize option.
12581
12582         * scm/backend-library.scm (postscript->png): Add parameter
12583         PAPERSIZE.  Update callers.
12584
12585         * scm/output-gnome.scm (music-font?): Bugfix: use "Emmentaler".
12586         Fixes symbol placement.
12587
12588         * lily/spanner.cc: 
12589         * lily/stencil.cc: Use "libc-extension.hh" (WAS:
12590         <libc-extension.hh>).
12591
12592 2005-03-16  Jan Nieuwenhuizen  <janneke@gnu.org>
12593
12594         * Nitpick run.
12595
12596         * buildscripts/fixcc.py: Update.
12597
12598         Builddir run fixes.
12599
12600         * HACKING (datadir): Add VERSION.
12601
12602         * GNUmakefile.in (linktree): Bugfix: outconfdirs are one dir
12603         higher up.
12604
12605 2005-03-15  Werner Lemberg  <wl@gnu.org>
12606
12607         * mf/feta-klef.mf (draw_gclef): Move z10' slightly so that the
12608         diagonal stem doesn't become thinner.
12609
12610 2005-03-15  Jan Nieuwenhuizen  <janneke@gnu.org>
12611
12612         * buildscripts/fixcc.py: Fixes (Werner).
12613
12614 2005-03-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12615
12616         * mf/GNUmakefile ($(outdir)/lilypond.map): capitalize
12617         Emmentaler/Aybabtu.
12618
12619         * GNUmakefile.in: fix lilypond-words path.
12620
12621         * po/tr.po: update to 2.3.21
12622
12623         * lily/new-fingering-engraver.cc (position_scripts): take priority
12624         from head position.
12625
12626         * input/regression/finger-chords-order.ly (texidoc): new file.
12627
12628 2005-03-14  Jan Nieuwenhuizen  <janneke@gnu.org>
12629
12630         * make/ly-rules.make: 
12631         * stepmake/aclocal.m4: 
12632         * Documentation/user/GNUmakefile: Remove old makeinfo compatibility.
12633
12634         * buildscripts/fixcc.py (rules): Leave space after operator.
12635
12636 2005-03-14  Werner Lemberg  <wl@gnu.org>
12637
12638         * mf/feta-klef.mf (draw_gclef): Replace `simple_serif' for
12639         top of the glyph with smooth curve.
12640
12641 2005-03-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12642
12643         * Documentation/user/global.itely (Page layout): remove
12644         printpagenumber.
12645
12646 2005-03-13  Jürgen Reuter  <reuter@ipd.uka.de>
12647
12648         * input/regression/mensural-ligatures.ly: new file (with examples
12649         compiled by Pal Benko).
12650
12651         * Documentation/user/instrument-notation.itely: Bugfix: yet some
12652         other "custodes.*-u0" -> "custodes.*.u0" renaming victims in
12653         musicglyph access.  Many small beautifications in ancient
12654         examples.
12655
12656         * input/test/divisiones.ly: fixed indentation; small
12657         beautifications
12658
12659         * ly/engraver-init.ly: added FIXME comment
12660
12661         * scripts/lilypond-book.py,
12662         Documentation/user/lilypond-book.itely: added music fragment
12663         option "packed" to lilypond-book
12664
12665         * Documentation/user/instrument-notation.itely: Bugfix: added
12666         missing LedgerLineSpanner color setting in several places.  Added
12667         music fragment option "packed" to VaticanaContext example.
12668
12669 2005-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12670
12671         * scm/define-grobs.scm (all-grob-descriptions): switch off
12672         Hyphen_spanner::set_spacing_rods 
12673
12674         * lily/lyric-hyphen.cc (print): add padding between syllable and
12675         hyphen.
12676         (print): shorten hyphen in tight situations (determine using
12677         minimum-length)
12678
12679         * scm/paper.scm (layout-set-staff-size): increase blotdiameter to
12680         0.4pt.
12681
12682 2005-03-13  Jan Nieuwenhuizen  <janneke@gnu.org>
12683
12684         * ly/titling-init.ly (bookTitleMarkup): Refinements.
12685
12686         * input/regression/page-breaks.ly (paper): Set not raggedlastbottom,
12687         header/footer markings for regression-test.
12688
12689         * scm/backend-library.scm (output-scopes, header-to-file): Move
12690         from framework-tex.scm.
12691
12692         * scm/framework-ps.scm (output-framework)
12693         (output-preview-framework):
12694         * scm/framework-eps.scm (output-classic-framework)
12695         (output-framework): Use it.  Fixes collated files.
12696
12697 2005-03-12  Jan Nieuwenhuizen  <janneke@gnu.org>
12698
12699         * input/sakura-sakura.ly: 
12700         * input/xiao-haizi-guai-guai.ly: Add from Debian package (Anthony).
12701
12702         * buildscripts/guile-gnome.sh: Update.
12703
12704         * mf/GNUmakefile (aybabtu.otf): Add dependency on .pe.
12705
12706         * mf/aybabtu.pe.in: Capitalize Aybabtu.
12707
12708 2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12709
12710         * lily/separating-group-spanner.cc (find_rods): oops. Fix the real
12711         culprit: always exit the loop if we find a rod, even if it has
12712         distance < 0. 
12713
12714         * lily/ledger-line-spanner.cc (set_spacing_rods): rewrite to O(n)
12715         algorithm.
12716
12717         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
12718         $(outdir)/%.svg $(outdir)/%.pfa): add --simplify.
12719
12720         * scm/output-svg.scm (dashed-line): new  function body.
12721         
12722         * GNUmakefile.in: create .htaccess.
12723
12724 2005-03-11  Jan Nieuwenhuizen  <janneke@gnu.org>
12725
12726         * Documentation/topdocs/NEWS.tely (Top): Fix text example.
12727
12728 2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12729
12730         * VERSION (PACKAGE_NAME): release 2.5.15
12731
12732         * scm/output-{pdf,pdftex,sketch}.scm (Module): remove bitrotted files.
12733
12734         * scm/framework-svg.scm (output-framework): put scaling in
12735         document header. Apply scaling only once.
12736         (output-framework): dump page size in px, not mm. 
12737
12738         * scm/lily-library.scm (modified-font-metric-font-scaling): rename
12739         from font-size.
12740
12741         * lily/paper-outputter-scheme.cc (LY_DEFINE):
12742         ly:outputter-output-scheme, new function.
12743
12744         * scm/output-svg.scm (pango-description-to-svg-font): new function
12745
12746 2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12747
12748         * Documentation/user/GNUmakefile (deep-symlinks): remove outimages
12749         target.
12750
12751         * input/typography-demo.ly: new file.
12752
12753 2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
12754
12755         * Documentation/user/global.itely (File structure): Add markup blocks
12756         to toplevel expressions.
12757         (Multiple movements, Creating titles): Add markup blocks.
12758
12759         * lily/stencil-scheme.cc: Use "libc-extension.hh" (WAS:
12760         <libc-extension.hh>).
12761
12762         * lily/accidental.cc (accurate_boxes): Compile fix: 1.51 was broken.
12763
12764         * flower
12765         * lily
12766         * kpath-guile: Nitpick run: buildscripts/fixcc.py.
12767
12768 2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12769
12770         * lily/accidental.cc: special bboxes for natural. 
12771
12772         * mf/feta-toevallig.mf: make stems heavier.
12773
12774         * lily/dynamic-text-spanner.cc (print): add bound padding for edge
12775         texts as well.
12776
12777         * mf/feta-klef.mf: revise. 
12778
12779         * mf/feta-schrift.mf: make thinning of accent less pronounced.
12780
12781         * mf/feta-klef.mf: add rounded curve at top. 
12782         make thinnib a little heavier.
12783
12784 2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
12785
12786         * lily/parser.yy (book_body): Oops, allow \markup in \book too.
12787
12788         * buildscripts/fixcc.py: New file.
12789
12790         * input/regression/utf8.ly: Update Debian font description.
12791
12792 2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
12793
12794         * stepmake/aclocal.m4: Fix test.
12795
12796 2005-03-09  Graham Percival  <gperlist@shaw.ca>
12797
12798         * Documentation/user/invoking.itely: added Sebastino Vigna's
12799         docs for the --jail option.
12800
12801 2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12802
12803         * lily/stem.cc (print): only produce stemlets if there are no
12804         noteheads on this stem.
12805
12806         * lily/note-spacing.cc (stem_dir_correction): robustness fix:
12807         don't crash on stemlet (visible stem without heads).
12808
12809         * scm/define-grobs.scm (all-grob-descriptions): junk LeftEdge for
12810         unbroken situations. 
12811
12812         * scm/output-lib.scm (center-invisible): new function.
12813
12814         * lily/spacing-loose-columns.cc (set_loose_columns): use spacing
12815         wishes to determine loose column space.
12816
12817         * lily/font-config.cc (init_fontconfig): add
12818         fonts/{otf,type1,cff}  to path.
12819
12820         * lily/main.cc (setup_paths): add fonts/{otf,svg,tfm,cff} to path
12821
12822         * mf/GNUmakefile (Module): install all fonts under otf/
12823
12824         * scm/framework-ps.scm (Module): read fonts from fonts/extension,
12825         replace /fonts/otf/ by /ps/ 
12826
12827         
12828 2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
12829
12830         * lily/paper-book.cc (classic_output): Reinstate header_0_ hack.
12831
12832         * lily/book.cc (process): Oops, add score_.header_.
12833
12834         * lily/paper-book.cc: Fold hearders, score and texts into scores_.
12835
12836         * lily/parser.yy: Handle toplevel and book texts as score.
12837
12838         * scm/page-layout.scm (default-page-make-stencil):
12839         Bugfix: (page-properties rename.
12840
12841         * scm/backend-library.scm (ly:system): Typo.
12842
12843 2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12844
12845         * stepmake/stepmake/executable-targets.make (installexe): don't
12846         strip installed executables
12847
12848         * lily/font-select.cc (get_font_by_design_size): revert
12849         pango_description_string as well.
12850
12851         * lily/system.cc (set_loose_columns): put loose column just left
12852         of next column.
12853
12854         * lily/include/group-interface.hh (extract_grob_array): rename
12855         from Pointer_group_interface__extract_grobs
12856
12857         * input/regression/ledger-line-minimum.ly (texidoc): new file.
12858
12859         * lily/ledger-line-spanner.cc (set_spacing_rods): new
12860         function. Keep ledgered note heads at a minimum distance.
12861         Introduce minimum-length-fraction
12862         (print): introduce length-fraction property.
12863
12864 2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12865
12866         * tex/GNUmakefile: remove latin1.enc rules.
12867
12868 2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
12869
12870         * scm/titling.scm: Typo.
12871
12872         * input/regression/score-text.ly: Really add.
12873
12874         * lily/score.cc: Bugfixes for SCM header_ and texts_ members.
12875
12876 2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12877
12878         * lily/open-type-font-scheme.cc:  new file.
12879
12880 2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
12881
12882         * scm/titling.scm (layout-extract-page-properties): Rename from
12883         page-properties.  Update callers.
12884
12885         * lily/lexer.ll (Lily_lexer):
12886         * lily/parser.yy: Junk lyric_markup state.
12887
12888         * Documentation/topdocs/NEWS.tely (Top): Mention markup text feature.
12889
12890         * scripts/lilypond-book.py (PREAMBLE_LY): toplevel-music-handler:
12891         Add texts parameter.
12892
12893 2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
12894
12895         * lily/lexer.ll (lyric_markup): New mode.
12896         (Lily_lexer::push_lyric_markup_state): New method.
12897         (MARKUPCOMMAND): Markup during lyric mode returns LYRIC_MARKUP.
12898
12899         * lily/parser.yy (book_body):
12900         (toplevel_expression): Grok \markup texts.
12901
12902         * lily/score-scheme.cc (ly:music-scorify): 
12903         * scm/lily-library.scm (collect-music-for-book): Take texts
12904         parameter.
12905
12906         * lily/score.cc (texts_): New member.
12907
12908         * lily/paper-book.cc (systems): Format score texts.
12909
12910         * score-text.ly: New file.
12911
12912         * ttftool/SConscript:
12913         * kpath-guile/SConscript: New file.
12914
12915         * lily/SConscript:
12916         * SConstruct: Update.
12917
12918 2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12919
12920         * VERSION (PACKAGE_NAME): release 2.5.14
12921
12922 2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
12923
12924         * lily/main.cc: Add dummy xgettext markers.
12925
12926 2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12927
12928         * make/lilypond.fedora.spec.in (Requires): scrap kpathsea/tex
12929         requirements
12930
12931         * stepmake/aclocal.m4: check dynamic link, by checking if kpathsea
12932         executable is < 40k
12933
12934         * lily/main.cc (setup_paths): remove tfm1 tfm2 tfm3 include path
12935         hack.
12936
12937 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12938
12939         * flower/libc-extension.cc:
12940         * flower/include/libc-extension.hh: [Open]BSD simply cast
12941         cookie/funopen declarations.
12942
12943         * stepmake/aclocal.m4: Check for libkpathsea.so.
12944
12945         * kpath-guile/kpath.c (ly_kpathsea_expand_variable): Use
12946         dl_kpse_find_file.
12947
12948 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12949
12950         * kpath-guile/kpath.c (open_library): dlopen libkpathsea.so
12951         (open_library): alternative for static library.
12952
12953 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12954
12955         * configure.in: Set TTFTOOL_ENDIAN iso global CFLAGS.
12956
12957         * ttftool/GNUmakefile (MODULE_CFLAGS): Add $(TTFTOOL_ENDIAN).
12958
12959         Drop run-time dependency on teTeX.
12960
12961         * lily/kpath.cc (initialize_kpathsea): dlopen libkpathsea.
12962
12963         * stepmake/aclocal.m4 (STEPMAKE_KPATHSEA): Do not include
12964         KPATHSEA_LIBS in LIBS.
12965         (STEPMAKE_DLOPEN): New function.
12966
12967         * lily/font-config.cc (init_fontconfig): Use dir for directory,
12968         not path.
12969
12970         * flower/file-path.cc (directories): Rename from paths, as this
12971         return an array of directories (a single path).
12972
12973 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12974
12975         * lily/GNUmakefile (MODULE_LIBS): link with kpath-guile
12976
12977         * lily/all-font-metrics.cc (kpathsea_find_file): wrapper around
12978         new ly:kpathsea-find-file
12979
12980         * kpath-guile/kpath.c: new file. Put kpath bindings in lib.
12981
12982         * kpath-guile/GNUmakefile: new file
12983
12984         * buildscripts/gen-emmentaler-scripts.py (i): generate
12985         emmentaler-X.fontname as well.
12986
12987         * buildscripts/ps-embed-cff.py: new script
12988
12989         * scm/lily-library.scm: remove ps-embed-cff.
12990
12991         * scm/framework-ps.scm (write-preamble): don't use kpathsea for
12992         font loading. 
12993
12994         * scm/font.scm (add-music-fonts): load dynamics/numbers through
12995         fontconfig as well.
12996
12997         * lily/font-config.cc (init_fontconfig): add cff/ too.
12998
12999         * ly/generate-embedded-cff.ly: capitalize.
13000
13001         * lily/pango-select.cc (select_pango_font): use ::find_pango_font,
13002         so as to register the pango font.
13003
13004         * lily/font-config.cc (init_fontconfig): add
13005         prefix/{otf,type1,mf/out} to fontconfig path.
13006
13007         * lily/main.cc: only look at one prefix directory, LILYPONDPREFIX
13008         overrides all. 
13009
13010         * configure.in (gui_b): remove ec mftrace check
13011
13012         * config.hh.in: use lilypond-Major.Minor as data directory.
13013
13014         * scm/framework-ps.scm (dump-page): use output-units for landscape.
13015
13016         * buildscripts/gen-emmentaler-scripts.py (i): lower case file
13017         name.
13018
13019 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
13020
13021         * lily/main.cc (do_chroot_jail): Small cleanups.  Avoid constant
13022         error messages.
13023
13024         * flower/libc-extension.cc:
13025         * flower/include/libc-extension.hh: [Open]BSD fixes for
13026         cookie/funopen declarations.
13027
13028 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13029
13030         * buildscripts/gen-emmentaler-scripts.py (outdir): capitalize
13031         emmentaler.
13032
13033         * lily/score-engraver.cc (initialize): remove check for ecrm10 /
13034         lcrm10.
13035
13036         * scm/define-markup-commands.scm (fontsize): new markup
13037         command. Also set baseline-skip
13038
13039 2005-03-06 Sebastiano Vigna <vigna@dsi.unimi.it>.
13040         
13041         * lily/main.cc (do_chroot_jail): paranoia security for webserver
13042         use.
13043
13044 2005-03-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13045
13046         * stepmake/bin/add-html-footer.py (do_file): make wiki link optional.
13047
13048         * lily/pdf.cc: remove PDF related files
13049
13050 2005-03-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13051
13052         * ly/deutsch.ly: add quarter tones, patch by Arno Waschk.
13053         <hamamatsu@gmx.de>
13054
13055 2005-03-05  Graham Percival  <gperlist@shaw.ca>
13056
13057         * Documentation/user/advanced-notation.itely: first draft
13058         of reorg done.
13059
13060         * Documentation/user/global.itely: fixed (sub)section
13061         bits of MIDI.
13062
13063 2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
13064
13065         * cygwin/mknetrel (extras): Bufix (Bertalan).
13066
13067         * Documentation/user/basic-notation.itely (Chords): @ref fix.
13068         * Documentation/user/instrument-notation.itely (Introducing chord
13069         names): Compile fix: must have unique name.
13070
13071 2005-03-02  Graham Percival  <gperlist@shaw.ca>
13072
13073         * Documentation/user/instrument-notation.itely: reorg.
13074
13075 2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
13076
13077         * scm/output-gnome.scm:
13078         * scm/output-svg.scm: Fix font scaling.
13079
13080 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13081
13082         * ly/titling-init.ly (tagline): Use Engraving.  Add comment about
13083         what link to use best.
13084
13085         * Documentation/user/instrument-notation.itely (Ancient accidentals): 
13086         * Documentation/user/tutorial.itely (Automatic and manual beams):
13087         Fix @ref.
13088
13089         * lily/tweak-registration.cc (replace_grob_tweak): New function.
13090         * lily/tweak-registration-scheme.cc (LY_DEFINE): Wrap it.
13091         * scm/framework-gnome.scm (tweak): Use it.
13092
13093 2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13094
13095         * Documentation/topdocs/NEWS.tely (Top): elucidate GS problem.
13096
13097         * scm/output-ps.scm (white-text): reinstate white-text
13098
13099 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13100
13101         * scm/output-ps.scm (offset-add): Remove.
13102
13103         * scm/lily-library.scm (offset-flip-y): New function.
13104         * scm/framework-gnome.scm (tweak): Use it.
13105
13106         * scm/output-gnome.scm (grob-cause): Add parameter.
13107
13108         * scm/lily.scm (ly:all-stencil-expressions): Add url-link.
13109         * scm/output-ps.scm (url-link): Move.
13110         (white-text): Warn user about brokenness.
13111
13112         * Documentation/topdocs/NEWS.tely: Be more accurate and respectful
13113         wrt ghostscript.
13114
13115 2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13116
13117         * lily/slash-repeat-engraver.cc (try_music): always make slashes
13118         if body length smaller than measure length.
13119
13120         * scm/define-markup-commands.scm (with-url): oops. use Y extent
13121         for Y.
13122
13123         * ly/titling-init.ly (tagline): put default tagline in \paper
13124
13125 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13126
13127         * lily/kpath.cc: 
13128         * lily/pdf.cc (Pdf_file): Use more generic error messages.
13129
13130         * scm/lily-library.scm (version-not-seen-message): New function.
13131         * ly/init.ly: Use it.
13132
13133         * scm/page-layout.scm (ly:optimal-page-breaks): Display page
13134         breaks as progess.
13135
13136         * scripts/lilypond-book.py (do_process_cmd): Do not lump
13137         whitespace with l10n message.
13138
13139         * scm/framework-tex.scm (convert-to-ps):
13140         (convert-to-dvi): Do not use overly specific l10n messages.
13141
13142         * ly/titling-init.ly (bookTitleMarkup): Add baseline skips from 2.4.
13143
13144         * tex/GNUmakefile $(outdir)/latin1.enc: Build fix:
13145         merge stderr with stdout.  
13146
13147 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13148
13149         * flower/libc-extension.cc: Tested BSD compile fix (Matthias
13150         Neeracher).
13151
13152 2005-02-29  Graham Percival  <gperlist@shaw.ca>
13153
13154         * Documentation/user/instrument-notation.teily: moved
13155         \arpeggio to Basic.
13156
13157         * Documentation/user/advanced-notation.itely: Articulation to
13158         Basic, a bunch of stuff from Basic moved to Advanced.
13159
13160         * Documentation/user/basic.itely: swapped various sections,
13161         reorganized Basic.
13162
13163 2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
13164
13165         * flower/memory-stream.cc: 
13166         * flower/libc-extension.cc: Remove obsolete #undefs.
13167
13168         * flower/include/libc-extension.hh: Bugfix for BSD, place #ifdef
13169         more carefully.
13170
13171 2005-02-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13172
13173         * make/lilypond.fedora.spec.in (Requires): add GS 8.15 as
13174         dependency.
13175
13176         * VERSION (PACKAGE_NAME): release 2.5.13
13177
13178         * GNUmakefile.in (web-ext): don't ship ps.gz
13179
13180         * tex/GNUmakefile ($(outdir)/latin1.enc): redirect stderr to
13181         stdout
13182
13183 2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
13184
13185         * lily/general-scheme.cc (LY_DEFINE): Compile fix for systems
13186         without libintl.  Now it compiles too.
13187
13188 2005-02-28  Graham Percival  <gperlist@shaw.ca>
13189
13190         * Documentation/user/basic-notation.itely,
13191         instument-notation.itely, advanced-notation.itely:
13192         split up contents of notation.itely.
13193
13194         * Documentation/user/notation.itely: file removed.
13195
13196         * Documentation/user/invoking.itely, converters.itely:
13197         moved convert-ly info to invoking.itely.
13198
13199         * Documentation/user/global.itely, changing-defaults.itely,
13200         sound-output.itexi: moved global settings, file layout, and
13201         sound into global.itely.
13202
13203         * Documentation/user/sound-output.itexi: file removed.
13204
13205         * Documentation/user/lilypond.tely: removed links to
13206         notation.itely and sound.itely.
13207
13208 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13209
13210         * scm/output-ps.scm (grob-cause): only do mark_URI if non-empty.
13211
13212         * scm/framework-ps.scm (write-preamble): remove pdf-viewer code.
13213  
13214         * THANKS: add sponsor.
13215
13216         * scm/define-markup-commands.scm (with-url): new markup command.
13217
13218         * scm/page-layout.scm (TAGLINE): add www.lilypond.org with URL to
13219         tagline.
13220         
13221         * scm/output-tex.scm (url-link): stub.
13222
13223         * scm/output-ps.scm (url-link): new function.
13224
13225         * lily/lily-parser-scheme.cc (LY_DEFINE): deprecate
13226         ly:set-point-and-click
13227
13228 2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
13229
13230         * ps/music-drawing-routines.ps (mark_file_line): Switch Action
13231         based on pdf-viewer setting.
13232
13233         * scm/framework-ps.scm (write-preamble): Find and set preferred
13234         pdf-viewer.
13235
13236 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13237
13238         * Documentation/user/point-and-click.itely: update for PDF point &
13239         click.
13240
13241         * scripts/lilypond-pdfpc-helper.py: new file. Invoke different
13242         editors based on EDITOR setting.
13243
13244 2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
13245
13246         * scm/*: Oops, more grand 2005 replace bits.
13247
13248 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13249
13250         * ps/music-drawing-routines.ps: new routine: insert PDF mark
13251
13252         * scm/output-ps.scm (grob-cause): point & click support for
13253         PostScript
13254
13255 2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13256
13257         * lily/input-scheme.cc (LY_DEFINE): rename to
13258         ly:input-file-line-column
13259
13260 2005-02-26  Graham Percival  <gperlist@shaw.ca>
13261
13262         * Documentation/user/examples.itely: small fix from Steve Doonan.
13263
13264         * Documentation/user/scheme-tutorial.itely: small fix from Steve Doonan.
13265
13266         * THANKS: added Yuval Harel.
13267
13268         * Documentation/user/{various}: inserted two spaces after a period.
13269
13270         * Documentation/user/lilypond.tely: added framework for reorg.
13271
13272         * Documentation/user/basic-notation.itely, instrument-notation.itely,
13273         advanced-notation.itely, global.itely: new files, placeholder for
13274         future reorg.
13275
13276 2005-02-26 Yuval Harel  <yuvalh@hotpop.com>
13277
13278         * Documentation/user/notation.itely: revamped Polyphony section
13279         
13280 2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13281
13282         * Documentation/user/lilypond-book.itely (Music fragment options):
13283         doc fontload.
13284
13285         * Documentation/user/changing-defaults.itely (Text encoding): add
13286         fontload option to utf8 include
13287
13288         * scripts/lilypond-book.py (compose_ly): add fontload option
13289
13290         * scm/framework-eps.scm (dump-stencils-as-EPSes): add
13291         force-eps-font-include option.
13292
13293         * ly/chord-modifiers-init.ly (blackTriangleMarkup): reinstate
13294         black triangle
13295
13296         * Documentation/user/invoking.itely (Editor support): remove
13297         lilypond-latex section.
13298
13299         * scripts/lilypond-latex.py (Module): remove script.
13300
13301         * cygwin/lily-wins.py (stat): write to .lylog, so as not to
13302         overwrite .log. 
13303
13304         * lily/main.cc: remove -m, --no-layout
13305
13306         * flower/include/libc-extension.hh: add ALIAS_FILE_TO_FILECOOKIE
13307         to define. We don't want to override fprintf everywhere.
13308
13309 2005-02-26  Jan Nieuwenhuizen  <janneke@gnu.org>
13310
13311         * cygwin/lilypond.hint: 
13312         * cygwin/README.in: Update dependencies.
13313
13314         * stepmake/aclocal.m4 (STEPMAKE_PANGO, STEPMAKE_PANGO_FT2):
13315         Bugfix: do not pollute CPPFLAGS, LIBS.
13316
13317         * cygwin/mknetrel (extras): Cross compile fixes.
13318
13319         * ttftool/util.c: 
13320         * ttftool/ttfps.c: 
13321         * ttftool/ps.c: #include libc-extension.hh
13322
13323         * flower/include/libc-extension.hh:
13324         * flower/libc-extension.cc (fopencookie)[!HAVE_FOPENCOOKIE]: Add
13325         wrapper using funopen.
13326         (fopencookie, handle_cookie_io_fclose, handle_cookie_io_fprintf,
13327         handle_cookie_io_fprintf): Add wrappers catching Memory_out_stream.
13328
13329         * config.hh.in:
13330         * configure.in (AC_CHECK_FUNCS): Add fopencookie, funopen.
13331         (AC_CHECK_HEADERS): Add libio.h
13332
13333         * scripts/convert-ly.py: Uniformize, internationalize.
13334         (2.5.2): Remove fatal encoding rule.
13335         (2.5.13): Handle latin1 encoding gracefully.
13336
13337 2005-02-23  Jan Nieuwenhuizen  <janneke@gnu.org>
13338
13339         * HACKING: Fix line breaks.
13340
13341 2005-02-23  Werner Lemberg  <wl@gnu.org>
13342
13343         * mf/graycx.mf, mf/graylj.mf: Removed.  Any decent TeX distribution
13344         contains those two files.
13345
13346 2005-02-21  Werner Lemberg  <wl@gnu.org>
13347
13348         * mf/feta-nummer-code.mf ("Numeral 5"): Include intersection point
13349         to improve overlap removal process.
13350
13351         * mf/feta-slag.mf (draw_trillelement): Add parameter to control
13352         left and right ending.  This ensures better overlapping.
13353         Update all callers.
13354         ("lineprall"): Don't use draw_gridline to get better overlapping.
13355
13356 2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13357
13358         * scm/lily-library.scm (ps-embed-cff): add \n after EndResource
13359
13360         * Documentation/topdocs/NEWS.tely (Top): oops.
13361
13362 2005-02-21  Pedro Kroger  <kroeger@pedrokroeger.net>
13363
13364         * HACKING: new file.
13365
13366         * input/regression/utf8.ly (portuguese): added a portuguese example
13367         to show latin1 accents.
13368
13369 2005-02-21  Pal Benko  <benkop@freestart.hu>
13370
13371         * lily/mensural-ligature-engraver.cc:
13372         * lily/mensural-ligature.cc:
13373         * lily/include/mensural-ligature.hh: new algorithm implemented
13374
13375         * scm/define-grob-properties.scm: join-left killed (add-join may
13376         be used); join-left-amount changed to join-right-amount
13377
13378 2005-02-21  Graham Percival  <gperlist@shaw.ca>
13379
13380         * Documentation/user/notation.itely: small but urgent fix.
13381
13382 2005-02-21  Jürgen Reuter  <reuter@ipd.uka.de>
13383
13384         * lily/duration-scheme.cc: bugfix: correct parameters to
13385         SCM_ASSERT_TYPE.
13386
13387         * THANKS: added Pal.
13388
13389         * Documentation/user/notation.itely: bugfix: unTeXified
13390         $\\backslash$.  Bugfix: yet another glyph renaming victim:
13391         "timesig.*x/y" -> "timesig.*xy".
13392
13393 2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13394         
13395         * VERSION (PACKAGE_NAME): release 2.5.12
13396
13397 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13398
13399         * ly/engraver-init.ly: set tieWaitForNote to #t by default
13400
13401         * configure.in (gui_b): bump GUILE requirement to 1.6.5 
13402
13403         * Documentation/topdocs/NEWS.tely: add inputfileref macro.
13404
13405         * scm/framework-ps.scm (supplies-or-needs): uniq font name list.
13406
13407 2005-02-20  Jan Nieuwenhuizen  <janneke@gnu.org>
13408
13409         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly: recode
13410         latin1..utf-8.
13411
13412         * input/regression/stanza-number.ly:
13413         * input/regression/utf8.ly (hebrew): Use addlyrics.  Update.
13414
13415         * lily/tie-engraver.cc (acknowledge_grob): Compile fix.
13416
13417 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13418
13419         * Documentation/topdocs/NEWS.tely (Top): only mention 2.5
13420         NEWS. Refer to website for older news.  
13421
13422         * stepmake/bin/add-html-footer.py (i18n): don't strip .PNG /
13423         .HTML. This should be done for specific servers only.
13424
13425         * Documentation/topdocs/NEWS.tely (Top): move to .tely. Add some
13426         .ly image examples.
13427
13428         * scm/define-grobs.scm (all-grob-descriptions): put ledger lines
13429         in layer 0 too.
13430
13431         * scm/define-context-properties.scm
13432         (all-user-translation-properties): add tieWaitForNote
13433
13434         * scm/define-grobs.scm (all-grob-descriptions): add
13435         Tie_column::before_line_breaking
13436
13437         * lily/tie.cc (get_column_rank): new function
13438
13439         * lily/tie-column.cc (before_line_breaking): new function.
13440         (werner_directions): take into account ties that start on
13441         different columns.  
13442
13443         * lily/score-engraver.cc (set_columns): move add_column() so we
13444         have column rank available.
13445
13446         * lily/tie.cc (get_column_rank): new function.
13447
13448         * input/regression/utf8.ly (japanese): add japanese lyrics.
13449
13450         * lily/pfb.cc (LY_DEFINE): ly:ttf->pfa, new function.
13451
13452         * THANKS: add Steve D
13453
13454         * ttftool/*.c: add TTF -> Type42 conversion library. Based on
13455         Public Domain work by Juliusz Chroboczek <jch@pps.jussieu.fr>
13456
13457 2005-02-20  Tatsuya Ono  <tats_ono@infoseek.jp>
13458
13459         * mf/parmesan-heads.mf: "0harmonic" -> "s0harmonic"
13460         to show harmonic notes
13461         * scm/define-markup-commands.scm: in \markup-by-number
13462         "dots-dot" -> "dots.dot" to show dotted notes
13463
13464 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13465
13466         * flower/include/memory-stream.hh (class Memory_out_stream): new file.
13467
13468         * flower/memory-stream.cc (writer): new file.
13469
13470         * configure.in: add endian test.
13471
13472 2005-02-19  Jürgen Reuter  <reuter@ipd.uka.de>
13473
13474         * Documentation/user/examples.itely: small
13475         simplification/beautification
13476
13477         * Documentation/user/notation.ietly: bugfix: fixed many artefacts
13478         from the "x-y-z"->"x.y.z" renaming of glyphs throughout the whole
13479         notation manual.
13480
13481         * lily/mensural-ligature.cc: bugfix: another few victims of the
13482         "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
13483
13484         * ly/gregorian-init.ly: commit some experimental code for hi-level
13485         ligature input language lying around here for several months.
13486
13487         * lily/mensural-ligature-engraver.cc: bugfix: another victim of
13488         the "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
13489
13490         * lily/vaticana-ligature-engraver.cc: bugfix: another few
13491         "x-y-z"->"x.y.s-z" fixes.
13492
13493 2005-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13494
13495         * scm/framework-pdf.scm (scm): new file
13496
13497         * lily/include/pdf.hh (class Pdf_file): new file.
13498
13499         * lily/pdf.cc (write_trailer): new file.
13500
13501 2005-02-18  Erlend Aasland  <erlenda@gmail.com>
13502
13503         * input/regression/color.ly: new file
13504
13505         * lily/stencil.cc (interpret_stencil_expression):
13506         when a color expression is encountered: save current color,
13507         process the rest of the expression, and restore previous color.
13508
13509         * lily/system.cc (get_line): check all grobs for color property and
13510         prepare the stencil scheme expressions for further processing.
13511         Fix layer-loop.
13512
13513         * scm/define-grob-properties.scm: introduce the color property.
13514
13515         * scm/output-lib.scm: color helper functions.
13516
13517         * scm/output-ps.scm: introduce setcolor/resetcolor.
13518
13519 2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
13520
13521         * ly/*.ly, input/regression/*.ly: Added missing \version
13522         statements in some files.
13523
13524 2005-02-15  Graham Percival  <gperlist@shaw.ca>
13525
13526         * Documentation/user/notation.itely: minor editing.
13527
13528         * Documentation/user/converters.itely: updated convert-ly bugs.
13529
13530         * Documentation/user/lilypond-book.itely: add info about using
13531         feta characters in latex.
13532
13533 2005-02-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13534
13535         * scripts/convert-ly.py: new slur dash patch by Bertalan Fodor.
13536
13537 2005-02-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13538
13539         * scm/define-grob-properties.scm (all-user-grob-properties):
13540         removed 'dashed property.
13541
13542 2005-02-13  Nicolas Sceaux  <nicolas.sceaux@free.fr>
13543
13544         * scm/lily.scm (define-safe-public): new macro for defining
13545         variables that can be used in --safe mode. Use it in *.scm
13546         instead of manually setting safe-objects in safe-lily.scm.
13547
13548 2005-02-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13549         
13550         * lily/slur.cc: Slur-dash patch by Bertalan.
13551
13552         * ly/engraver-init.ly (EasyNotation): glyph name dash -> period.
13553
13554         * stepmake/bin/add-html-footer.py (do_file): do i18n only once. 
13555
13556 2005-02-10  Jan Nieuwenhuizen  <janneke@gnu.org>
13557
13558         * stepmake/aclocal.m4: teTeX-3.0 inimf fix.  Comment-out.
13559
13560 2005-02-09  Jan Nieuwenhuizen  <janneke@gnu.org>
13561
13562         * mf/GNUmakefile: teTeX-3.0 install fix.
13563
13564         * Cygwin patch from Bertalan.
13565
13566         * stepmake/stepmake/metafont-rules.make: Remove bashism.
13567
13568 2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
13569
13570         * GNUmakefile.in: 
13571         * SConstruct (symlink): teTeX-3.0 build fix: add map symlink.
13572
13573         * tex/GNUmakefile: teTeX-3.0 fix: install .enc in fonts/enc.  Add
13574         2.0.x compatibility.
13575
13576 2005-02-08  Werner Lemberg  <wl@gnu.org>
13577
13578         * mf/feta-din-code.mf: Format; clean up code.
13579         Replace `---' with `--' plus explicit path directions.
13580         (linethickness#, stafflinethickness#): Remove.
13581         ("dynamic f"): Replace `draw' with `draw_rounded_block'.
13582         ("dynamic s"): Improve shape.
13583         ("dynamic p"): Improve shape.
13584         Replace `draw' with better outline approximation.
13585         ("dynamic r"): Improve shape.
13586         Don't call `fill' and `draw' at the same time.
13587
13588 2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
13589
13590         * SConstruct (symlink):
13591         * GNUmakefile.in ($(builddir)/share/lilypond-force): teTeX-3.0
13592         build fix: add enc symlink.
13593
13594         * lily/general-scheme.cc: Compile fixes: include wchar.h, string.h.
13595
13596         Support for DESTDIR besides prefix=/foo
13597
13598         * vim/GNUmakefile (local-install): Use $(INSTALL) -d iso mkdir.
13599
13600         * stepmake/stepmake/*.make:
13601         * */GNUmakefile:
13602         * GNUmakefile.in: Prepend $(DESTDIR) to installation directory.
13603
13604         * config.make.in (prefix): Remove broken $(DESTDIR) hack.
13605
13606         * stepmake/aclocal.m4: Use %0.f iso %d to quiet gawk < 3.1.4 and
13607         mawk in fontforge (date) test.
13608
13609 2005-02-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13610
13611         * scm/font.scm (make-century-schoolbook-tree): add NCS as
13612         font-family=roman. Add Luxi Sans as sans
13613
13614 2005-02-07  Graham Percival  <gperlist@shaw.ca>
13615
13616         * Documentation/user/notation.itely: add warning about
13617         percent repeats and Voice contexts.
13618
13619         * Documentation/user/lilypond-book.itely: clarified the
13620         necessity of dvips -u arguments.
13621
13622 2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
13623
13624         * THANKS: Added a bunch of bug hunters.
13625
13626 2005-02-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13627
13628         * scm/framework-ps.scm (output-preview-framework): bugfix.
13629
13630         * ly/chord-modifiers-init.ly (ignatzekExceptionMusic): use unicode
13631         o/ for chord modifier..
13632
13633         * lily/general-scheme.cc (LY_DEFINE): new function ly:wide-char->utf-8.
13634
13635         * lily/drum-note-performer.cc:  remove unused (thanks Michael
13636         Welsh Duggan). 
13637
13638 2005-02-06  Jan Nieuwenhuizen  <janneke@gnu.org>
13639
13640         * Documentation/user/changing-defaults.itely (Text encoding): Clarify.
13641
13642         * ly/titling-init.ly: Do not also print intstrument in header on
13643         first page.  Do not print page number on first and only page.
13644
13645 2005-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13646
13647         * input/regression/*.ly: remove old-relative everywhere
13648
13649         * lily/music-sequence.cc (simultaneous_relative_callback): do
13650         what-if analysis on copy, not on original. Fixes old-relative
13651         compatibility.
13652
13653         * scm/backend-library.scm (postscript->png): space before
13654         --verbose.
13655         
13656 2005-02-05  Werner Lemberg  <wl@gnu.org>
13657
13658         * mf/feta-autometric.mf (fet_beginchar): Check whether `feta_group'
13659         is defined.
13660
13661         * mf/feta-alphabet.mf: Define `staffsize#'.
13662         Include `feta-params.mf'.
13663         s/staffheight/design_size/.
13664
13665         * mf/feta-alphabet??.mf: s/staffheight/design_size/.
13666
13667         * mf/feta-alphabet26.mf: Fix a serious bug (design size off by 8pt).
13668
13669         * mf/feta-nummer-code.mf: Reformatted.
13670         (draw_six): Use outline intersection to avoid a self-intersecting
13671         path.
13672         ("Numeral comma"): Fix serious outline glitches.  This slightly
13673         changes the glyph shape.
13674         ("Numeral dash"): Use `draw_rounded_block'.
13675         ("Numeral dot"): Use `drawdot'.
13676         ("Numeral 1"): Assure identical tangent directions for the
13677         intersection points of paths.  The glyph shape improvement is only
13678         visible at very high magnifications.
13679         ("Numeral 2"): Use `solve' macro to make the lower right part of
13680         the glyph outline touch the x axis exactly.  This changes the
13681         glyph shape.
13682         Minor fixes for better overlap removal support.
13683         ("Numeral 4"): Make lefter corner `rounder'.
13684         ("Numeral 5"): Assure identical tangent directions for the
13685         intersection points of paths.  This improves the glyph shape at
13686         high magnifications.
13687         ("Numeral 7"): Use `solve' macro to make the upper right part of
13688         the glyph outline touch the metrics box exactly.  This changes the
13689         glyph shape.
13690         Avoid corner in the upper left part of the glyph (causing a minor
13691         shape change).
13692
13693         * mf/feta-ital-*.mf: Removed.  Unused.
13694
13695 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13696
13697         * VERSION (PATCH_LEVEL): release 2.5.11
13698
13699         * input/regression/fill-line-test.ly: new file.
13700
13701         * buildscripts/gen-emmentaler-scripts.py (i): insert dash in
13702         emmentaler name, eg. emmentaler-23. 
13703
13704 2005-02-04  Christian Hitz  <chhitz@gmx.net>
13705
13706         * scm/scm/define-markup-commands.scm (fill-line): rework for better
13707         alignment with centered texts
13708
13709         * scm/stencil.scm (stack-stencils-padding-list): new function, takes a
13710         list of paddings
13711
13712 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13713
13714         * mf/GNUmakefile ($(outdir)/lilypond.map): add aybabtu to .map file.
13715
13716         * lily/note-column.cc (translate_rests): call flush_extent_cache()
13717         of parents when translating rests. Fixes: c-chord-rest.ly 
13718
13719         * lily/include/dimension-cache.hh (struct Dimension_cache): add
13720         dimension_callback_ member.
13721
13722         * lily/grob.cc (flush_extent_cache): new function. Force recompute
13723         of extents.
13724
13725 2005-02-04  Jan Nieuwenhuizen  <janneke@gnu.org>
13726
13727         * all but lily/*: The grand 2004/2005 replace.
13728
13729 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13730
13731         * lily/*: add space after ,  
13732
13733         * scm/music-functions.scm (has-request-chord): don't use
13734         ly:music-name anywhere. Fixes <<\\>> notation. 
13735
13736         * scm/define-markup-commands.scm (box): use font-size for
13737         padding. Fixes boxed-rehearsal-marks.ly
13738
13739         * lily/parser.yy (assignment_id): allow LYRICS_STRING as
13740         identifier definition too, so foo = \lyrics { ...   } bar = #1
13741         doesn't complain about "bar" being LYRICS_STRING.
13742
13743         * lily/paper-def.cc (find_pango_font): new routine; Store
13744         pango_fonts in hash tab too. This is necessary for retrieving
13745         Pango_fonts::physical_font_tab() later on.
13746  
13747         * lily/pango-font.cc (pango_item_string_stencil): bugfix: don't
13748         crash if psname is null.
13749
13750         * lily/lily-guile.cc (ly_hash2alist): new function
13751
13752         * Documentation/user/changing-defaults.itely (Text encoding):
13753         rewrite. 
13754
13755         * lily/pango-font.cc (physical_font_tab): new member. Store PSname
13756         -> font_filename mapping.
13757
13758         * lily/pango-font-scheme.cc (LY_DEFINE): new file. New function
13759         ly_pango_font_physical_fonts
13760
13761         * scm/framework-ps.scm (supplies-or-needs): extract names from
13762         physical Pango_fonts.
13763
13764         * utf8.ly: new file.
13765
13766 2005-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13767
13768         * Documentation/user/changing-defaults.itely (Page layout): add
13769         doco about systemSeparatorMarkup.
13770
13771         * scm/page-layout.scm (default-page-make-stencil): add-to-page
13772         function.
13773         (default-page-make-stencil): insert system separators.
13774
13775         * scm/define-markup-commands.scm (hcenter): add
13776         (beam): add.
13777
13778 2005-02-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13779
13780         * scm/output-ps.scm (ez-ball): reinstate ez notation.
13781
13782 2005-02-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13783
13784         * lily/main.cc: Spell backend consistently.  Sort options.
13785
13786 2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13787
13788         * scripts/lilypond-book.py (Module): revert @include.
13789         
13790 2005-01-31  Jan Nieuwenhuizen  <janneke@gnu.org>
13791
13792         * scripts/lilypond-book.py: Resurrect HTML links to .ly source.
13793         Bugfix: @include .tex (not .texi).  Small cleanups.
13794
13795         * stepmake/bin/add-html-footer.py (i18n): New function.
13796
13797 2005-01-31  Werner Lemberg  <wl@gnu.org>
13798
13799         * mf/feta-nummer.mf: Removed.  Unused.
13800
13801 2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13802
13803         * lily/ : 2004 -> 2005 s&r
13804
13805         * scm/file-cache.scm (cached-file-contents): add file. Read each
13806         file only once.
13807
13808         * scm/font.scm (add-pango-fonts): change order. Medium weight is
13809         now default.
13810
13811         * VERSION: release 2.5.10
13812         
13813         * mf/GNUmakefile (INSTALLATION_OUT_FILES4): install cff.ps files.
13814
13815         * make/ly-rules.make ($(outdir)/%.texi): detect new EOF marker.
13816
13817         * scm/framework-ps.scm (dump-stencil-as-EPS): robustness: ensure
13818         that both X and Y extents of bbox are non-nil.
13819
13820 2005-01-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13821
13822         * scm/chord-name.scm (alteration->text-accidental-markup): change
13823         - to . 
13824
13825         * scm/output-ps.scm (utf8-string): add utf8-string for completeness.
13826
13827         * scm/framework-ps.scm (dump-stencil-as-EPS): new function
13828
13829         * Documentation/user/invoking.itely (Invoking lilypond): add note
13830         about EPS backend.
13831
13832         * scm/framework-eps.scm: new file: create per-system/per-page EPS
13833         files for inclusion in lilypond-book document.
13834
13835         * input/tutorial/lbook-latex-test.tex: rename from lilbook.tex
13836
13837         * input/tutorial/lbook-texi-test.texi: new file.
13838
13839         * scm/safe-lily.scm (safe-objects): add
13840         {begin,end}-of-line-(in)?visible as safe.
13841  
13842 2005-01-30  Graham Percival  <gperlist@shaw.ca>
13843
13844         * Documentation/user/changing-defaults.itely: fixed example
13845         of (dynamics).
13846
13847 2005-01-29  Graham Percival  <gperlist@shaw.ca>
13848
13849         * lily/main.cc: fix info about -o=FILE.
13850
13851 2005-01-29  Werner Lemberg  <wl@gnu.org>
13852
13853         * mf/feta-toevallig.mf ("Natural"): Completely changed the
13854         construction to assure smooth transition from straight to curved
13855         lines.
13856
13857 2005-01-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13858
13859         * lily/stencil.cc (moved_to_edge): don't halt on adding empty
13860         stencils.
13861
13862         * ps/lilyponddefs.ps: add start-page, start-system doesn't
13863         translate to top of page. Fixes alignment problems of
13864         lilypond-generated EPS files.
13865
13866 2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13867
13868         * scm/part-combiner.scm (analyse-spanner-states): trigger on
13869         crescendo-end as well, since Decrescendo maybe ended with Stop
13870         Crescendo.). Fixes: partcombine-diminuendo.ly
13871
13872         * scm/script.scm (default-script-alist): swap portato symbols.
13873
13874         * lily/instrument-name-engraver.cc (acknowledge_grob): typo.
13875
13876         * lily/paper-outputter-scheme.cc (LY_DEFINE):
13877         ly:outputter-port. New function.
13878
13879         * scm/framework-ps.scm (output-classic-framework): dump a
13880         -systems.texi too
13881         (output-classic-framework): dump multiple systems on an "infinite"
13882         page EPS including fonts. 
13883
13884         * scripts/lilypond-book.py (Lilypond_snippet.ly_is_outdated): use
13885         .eps files for both texi and tex formats. Use PNG coming from
13886         lilypond.
13887         
13888 2005-01-28  Graham Percival  <gperlist@shaw.ca>
13889
13890         * Docuemntation/user/invoking.itely: fix info about -o=FILE.
13891
13892         * scripts/lilypond-latex.py: fix info about -o=FILE.
13893
13894 2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13895
13896         * ly/generate-embedded-cff.ly: write .cff.ps files.
13897
13898         * mf/GNUmakefile ($(outdir)/lilypond.map): add .cff.ps to .map file.
13899
13900         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
13901         $(outdir)/%.svg $(outdir)/%.pfa): remove --simplify
13902
13903 2005-01-28  Jan Nieuwenhuizen  <janneke@gnu.org>
13904
13905         * lily/include/guile-compatibility.hh (SCM_VECTOR_P): Compile fix.
13906
13907 2005-01-28  Werner Lemberg  <wl@gnu.org>
13908
13909         * mf/feta-macros.mf (soft_start_penstroke, soft_end_penstroke): New
13910         macros.
13911         (draw_bulb): Improved.
13912
13913         * mf/feta-pendaal.mf ("Pedal asterisk"): Remove workaround for
13914         metapost bug.
13915         (draw_pedal_P): Use soft_end_penstroke.
13916         (draw_pedal_d): Use soft_start_penstroke.
13917
13918         * mf/feta-schrift.mf ("Trill (`tr')"): Remove redundant point in
13919         path.
13920         ("Varied Coda"): Move some points to avoid fontforge warnings.  This
13921         doesn't change the glyph shape.
13922
13923         * mf/feta-accordion.mf ("accOldEE"): Draw glyph differently (without
13924         changing the shape) to avoid fontforge warnings.
13925
13926         * mf/feta-klef.mf (draw_tab_T, draw_tab_A, draw_tab_B): Use
13927         soft_end_penstroke and fix glyph shape.
13928
13929 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13930
13931         * lily/*.cc: Scheme deprecation of SCM_VECTOR_* 
13932
13933 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13934
13935         * scm/define-markup-commands.scm (line): filter out empty stencils
13936         from line command.
13937
13938         * lily/stencil-scheme.cc (LY_DEFINE): only allow finite real
13939         amount.
13940
13941 2005-01-27  Graham Percival  <gperlist@shaw.ca>
13942
13943         * Documentation/user/notation.itely: added info about what
13944         \voiceFoo does.  Also rewrote warning about marks at
13945         a line break.
13946
13947         * Documentation/user/changing-defaults.itely: added info
13948         about putting dynamics in parenthesis and brackets.
13949
13950 2005-01-27  Werner Lemberg  <wl@gnu.org>
13951
13952         * mf/feta-schrift.mf ("Trill (`tr')"): Fix typo.
13953
13954 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13955
13956         * mf/feta-schrift.mf: reverse u and d portato. Fixes:
13957         portato-direction.ly
13958
13959         * lily/beam.cc (consider_auto_knees): add beam height to
13960         threshold. Fixes: knee-multiple-beam.ly
13961
13962         * lily/instrument-name-engraver.cc (acknowledge_grob): also ignore
13963         pedal line spanners. Fixes: instrument-center-pedal.ly
13964
13965         * lily/auto-beam-engraver.cc (acknowledge_grob): stop beam
13966         if encountering barline. Fixes: auto-beam-repeat.ly
13967
13968 2005-01-26  Werner Lemberg  <wl@gnu.org>
13969
13970         * mf/feta-slag.mf (draw_trillelement): Fix shape to get clean
13971         overlapping.
13972
13973         * mf/feta-toevallig.mf (draw_meta_sharp): Fix shape to avoid curves
13974         with inflections for the 1/2 sharp glyph.
13975
13976         * mf/feta-schrift.mf ("Trill (`tr')"): Fix start position of
13977         connection between `t' and `r'.
13978         Unify bulb with the rest of `r' to avoid grazing outlines which
13979         confuses the overlap removal algorithm of fontforge.
13980
13981         * mf/feta-bolletjes.mf (draw_slash): Fix shape to avoid curves with
13982         inflections.
13983         (draw_cross): Fix shape to have uniform thickness in corners.
13984
13985         * mf/feta-pendaal.mf (draw_pedal_P): Break shape into smaller pieces
13986         to avoid an uneven number of self-intersections; this confuses
13987         fontforge.
13988         Fix a slight bug in the shape at left bottom (which is visible only
13989         at high magnifications).
13990         `Center' the stem horizontally to avoid overlapping.
13991
13992 2005-01-24  Werner Lemberg  <wl@gnu.org>
13993
13994         * mf/feta-autometric.mf (fet_beginfont): Set font_coding_scheme
13995         to `asis'.
13996         (fet_begingroup): Save group name in string `feta_group'.
13997         (fet_endgroup): Updated.
13998         (fet_beginchar): Emit `glyph_name' special for mf2pt1.
13999
14000         * mf/feta-bolletjes.mf: s/p/pat/ for paths.
14001
14002         * mf/feta-pendaal.mf ("Pedal asterisk"): Add workaround for bug
14003         in metapost.
14004
14005 2005-01-24  Graham Percival  <gperlist@shaw.ca>
14006
14007         * Documentation/user/notation.itely: really minor editing.
14008
14009 2005-01-22  Graham Percival  <gperlist@shaw.ca>
14010
14011         * Documentation/user/examples.itely: minor editing.
14012
14013         * Documentation/user/changing-defaults.itely: minor editing.
14014
14015         * Documentation/user/notation.itely: clarified info on polyphony
14016         and \addlyrics.
14017
14018 2005-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
14019
14020         * scm/output-gnome.scm: 
14021         * scm/output-svg.scm:
14022         * scm/lily-library.scm (font-name-style): Update font name
14023         kludging for fontconfig use.
14024
14025 2005-01-20  Erlend Aasland  <erlenda@gmail.com>
14026
14027         * scm/define-markup-commands.scm: Document right-align and
14028         larger markup commands. Remove "TODO" from the topmost comment
14029         "each markup function should have a doc string." More consistent
14030         use of new-lines.
14031
14032 2005-01-22  Graham Percival  <gperlist@shaw.ca>
14033
14034         * Documentation/user/changing-defaults: removed info about
14035         copyright symbol, since it's likely to change soon.
14036         Added info about betweensystemspace.
14037
14038         * Documentation/user/notation.itely: minor fixes.
14039
14040         * Documentation/user/lilypond.tely,
14041         Documentation/user/music-glossary.tely: changed copyright
14042         date to 2005 instead of 2004.
14043
14044         * input/test/volta-chord-names.ly: added old example back.
14045
14046 2005-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14047
14048         * mf/feta-beugel.mf: use design size 20 (not 15).
14049
14050         * mf/aybabtu.pe.in: scale brace fonts to design sizes.
14051         change name to aybabtu completely
14052
14053 2005-01-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14054
14055         * buildscripts/gen-emmentaler-scripts.py (outdir): add
14056         design_size to fontname
14057
14058 2005-01-19  Werner Lemberg  <wl@gnu.org>
14059
14060         * mf/feta-accordion.mf, mf/feta-klef.mf, mf/feta-pendaal.mf,
14061         mf/feta-schrift.mf: s/p/pat/ if a path variable.
14062
14063         * mf/feta-autometric.mf (set_char_box): Add code which emits
14064         specials for mf2pt1 if run with metapost.
14065         (to_bp): New macro for mf2pt1.
14066
14067 2005-01-18  Graham Percival  <gperlist@shaw.ca>
14068
14069         * Documentation/user/changing-defaults: added info on
14070         creating a copyright symbol.
14071
14072 2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14073
14074         * VERSION: release 2.5.9
14075         
14076 2005-01-18  Erlend Aasland  <erlenda@gmail.com>
14077
14078         * scm/auto-beam.scm: Simplify score-override-auto-beam-setting
14079
14080         * Documentation/user/notation.itely: Document
14081         score-override-auto-beam-setting Fix documentation for
14082         revert-auto-beam-setting.
14083
14084 2005-01-18  Werner Lemberg  <wl@gnu.org>
14085
14086         * scm/framework-ps.scm (ps-embed-cff): Fix DSC comments.
14087         (procset): New function to define a procset resource.
14088         (ps-embed-pfa): New function to define a font resource.
14089         (setup): New function to define a `Setup' environment.
14090         (preamble): Use new functions.
14091
14092         * ps/lilypond.defs (init-lilypond-parameters): New function to
14093         get rid of directly executed PS code.  Used in scm/framework-ps.scm.
14094
14095 2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14096
14097         * mf/GNUmakefile (MFTRACE_FLAGS): add --no-afm to MFTRACE_FLAGS
14098
14099 2005-01-17  Erlend Aasland  <erlenda@gmail.com>
14100
14101         * scm/define-markup-commands.scm: Change number->markletter-string
14102         to take two arguments (vector number). Add number->mark-alphabet-vector
14103         and markalphabet markup command.
14104
14105         * scm/translation-functions.scm: Add format-mark-box-alphabet,
14106         format-mark-alphabet, format-mark-box-barnumbers and
14107         format-mark-barnumbers. Fix bug in format-mark-box-numbers.
14108
14109 2005-01-17  Graham Percival  <gperlist@shaw.ca>
14110
14111         * Documentation/user/examples.itely: add SATB automatic piano
14112         reduction template.
14113
14114         * Documentation/user/notation.itely: added info about changing
14115         partcombine texts.  Also adds examples of alternate lyrics.
14116
14117         * Documentation/user/changing-defaults.itely: added warning
14118         about \RemoveEmptyStaffContext overriding previous changes.
14119
14120 2005-01-17  Werner Lemberg  <wl@gnu.org>
14121
14122         * buildscripts/mf-to-table.py: Use `FetaAlphabetEncoding' for
14123         feta-alphabet*.
14124
14125 2005-01-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14126
14127         * python/lilylib.py (make_ps_images): don't do final showpage for
14128         multi-page documents.
14129         
14130         * VERSION (MY_PATCH_LEVEL): release 2.5.8
14131
14132 2005-01-16  Graham Percival  <gperlist@shaw.ca>
14133
14134         * Documentation/user/lilypond.tely: changed order of appendices;
14135         unified index should be last.
14136
14137         * Documentation/user/notation.itely: add example of key signatures
14138         and info about Staff.printKeyCancellation.
14139
14140 2005-01-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14141
14142         * lily/include/repeated-music.hh (class Repeated_music): change
14143         into "namespace" class.
14144
14145         * lily/event.cc: remove Key_change_event.
14146
14147         * lily/include/transposed-music.hh (class Transposed_music): remove.
14148
14149         * lily/transposed-music.cc: remove
14150
14151         * lily/include/relative-music.hh: remove.
14152
14153         * lily/include/music-sequence.hh (struct Music_sequence): change
14154         into "namespace" class.
14155
14156         * lily/untransposable-music.cc (Module): remove
14157
14158         * lily/include/un-relativable-music.hh (Module): remove
14159
14160         * lily/include/untransposable-music.hh (Module): remove
14161
14162         * lily/include/music-list.hh (Module): remove file
14163
14164         * lily/un-relativable-music.cc: remove file.
14165
14166 2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
14167
14168         * lily/parser.yy: Compile fix.
14169
14170 2005-01-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14171
14172         * lily/include/music.hh (class Music): unvirtualize transpose().
14173
14174         * lily/sequential-music.cc: remove file.
14175
14176         * lily/include/lyric-combine-music.hh ("music.hh"): remove file.
14177
14178         * lily/slur-scoring.cc (get_best_curve): only switch on
14179         DEBUG_SLUR_SCORING for non NDEBUG builds.
14180
14181         * lily/include/music.hh (class Music): replace Music::start_mom()
14182         by start-callback property
14183
14184         * lily/include/grace-music.hh: remove file. 
14185
14186         * lily/stem.cc (height): robustness fix.
14187
14188         * lily/time-scaled-music.cc: remove file.
14189
14190         * lily/include/music.hh (class Music): include SCM init argument.
14191         (class Music): replace Music::get_length() virtual by
14192         length-callback property everywhere.
14193
14194         * scripts/convert-ly.py (conv): add  # to \property scalar value.
14195
14196         * mf/GNUmakefile: don't install *list.ly
14197
14198 2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
14199
14200         * mf/GNUmakefile (CFF_FILES): Bugfix: only big cheeses and braces.
14201
14202 2005-01-12  Werner Lemberg  <wl@gnu.org>
14203
14204         This patch addresses the following problems in the feta sources
14205         files which contribute to the fetaXX fonts.
14206
14207         . Many fixes for rasterization at low resolutions (consistent use of
14208           `vround' and `hround', integer shift values for paths, applying
14209           `eps' for mirrored paths, use of `define_whole_pixels' and
14210           friends, etc.) -- while this probably looks like a waste of time
14211           it has revealed deficiencies in some glyph shapes.  See comment at
14212           the end of feta-params.mf how vertical symmetry is achieved.
14213
14214         . The `---' operator has been replaced everywhere with `--'; this
14215           both improves and considerably reduces the font size after
14216           conversion with mf2pt1.
14217
14218         These change aren't explicitly mentioned below since virtually all
14219         glyphs are affected.
14220
14221         Other notable differences:
14222
14223         . Glyphs from feta-accordion.mf now have charboxes around the
14224           outline.
14225
14226         . Fixed incorrect charbox for `accDot'.
14227
14228         . The `rcomma' and `lcomma' glyphs were distorted due to a typo.
14229
14230         . Fixed position of the bow in the `upprall' glyph and its siblings.
14231
14232         . The bulb size in the `2/2 meter' and `4/4 meter' glyphs is now
14233           dependent on the staff line thickness to avoid touching the middle
14234           staff line at smaller sizes.
14235
14236         . Largely extended output for feta-testXX: Where useful, glyphs
14237         are shown both between and on staff lines.
14238
14239
14240         * mf/feta-params.mf (staff_space_rounded,
14241         stafflinethickness_rounded, linethickness_rounded,
14242         ledgerlinethickness_rounded, stemthickness_rounded): New variables.
14243         Update all code which uses them where appropriate.
14244         (feta_eps, feta_shift, feta_space_shift, feta_offset, feta_fillpen):
14245         New variables used to control rasterization at low resolutions.  Set
14246         to zero if feta code is processed with metapost.
14247
14248         * mf/feta-macros.mf (draw_staff, draw_staff_outline): Updated.
14249         (draw_rounded_block, draw_square_block): Updated to use `--' only.
14250         (flare_path): Updated.
14251         Make it work with `filldraw' (but only circular pens).
14252         (hfloor, vfloor, hceiling, vceiling): New macros.
14253
14254         * mf/feta-accordion.mf ("accDiscant", "accFreebase", "accStdbase"):
14255         Use `draw' again in mf mode to have good pixel dropout control.
14256         Fix intersection points of horizontal lines with circle.
14257         ("accDot"): Fix parameters for set_char_box.
14258         ("accOldEE"): Use `draw' again in mf mode to have good pixel dropout
14259         control.
14260
14261         * mf/feta-banier.mf: Updated.
14262
14263         * mf/feta-bolletjes.mf (remember_pic): New variable, used for
14264         testing.
14265         (undraw_inside_ellipse): Remove `center' argument.  Update all
14266         callers.
14267         (draw_brevis): New macro, called by "Brevis notehead".
14268         (draw_whole_triangle_head): New macro, called by "Whole
14269         trianglehead".
14270         (draw_small_triangle_head): Use `filldraw'.
14271
14272         * mf/feta-eindelijk.mf: Remove useless global group.
14273         Updated.
14274
14275         * mf/feta-klef.mf (draw_c_clef): Correct point positions for using
14276         `filldraw'.
14277
14278         * mf/feta-pendaal.mf: Updated.
14279
14280         * mf/feta-puntje.mf: Updated.
14281
14282         * mf/feta-schrift.mf (draw_very_long_fermata): Simplified to use
14283         less points.
14284         ("Flageolet"): Use `draw' again in mf mode to have good pixel
14285         dropout control.
14286         ("Varied Coda"): Use `draw_block'.
14287         (draw_comma): Fix typo.
14288         (draw_arpeggio_arrow): Use `draw' also in mf mode to have good
14289         pixel dropout control.
14290
14291         * mf/feta-slag.mf ("upprall", "downprall", "lineprall"): Fix start
14292         position of bow.
14293
14294         * mf/feta-timesig.mf (draw_C): Reduce bulb size for smaller design
14295         sizes.
14296
14297         * mf/feta-toevallig.mf (remember_pic): New variable, used for
14298         testing.
14299         (draw_meta_sharp): Much simplified.
14300         ("Sharp", "1/2 Sharp", "3/4 Sharp"): Don't rotate but shift.
14301
14302         * mf/feta-test-generic.mf: Include all files as in feta-generic.mf.
14303
14304 2005-01-13  Mats Bengtsson  <mabe@s3.kth.se>
14305
14306         * Documentation/user/notation.itely (Ancient rests): Fix typo
14307         (thanks Anthony)
14308
14309 2005-01-13  Jan Nieuwenhuizen  <janneke@gnu.org>
14310
14311         * scm/auto-beam.scm (score-override-auto-beam-setting): New function.
14312
14313         * lily/main.cc (setup_paths): Add cff.
14314
14315         * mf/GNUmakefile (foe): Include actual target %.cff.
14316         (INSTALLATION_OUT_SUFFIXES): Install CFF and SVG fonts too.
14317
14318 2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14319
14320         * lily/include/lily-lexer.hh (class Lily_lexer): lose hungarian _b
14321         suffix for main_input_b_.
14322
14323         * scm/music-functions.scm (toplevel-music-functions):
14324         precompute music lengths for music expressions.  
14325
14326 2005-01-11  Nicolas Sceaux  <nicolas.sceaux@free.fr>
14327
14328         * lily/include/input.hh (class Input): new `end_' slot for end of
14329         input. Renamed defined_str0_ to start_.
14330
14331         * lily/input.cc (Input): Add Input::Input (Input const &) and
14332         remove Input::Input (Source_file*, char const *). Use the new
14333         slots.
14334         (set_location): method used by bison to propagate input
14335         locations (YYLLOC_DEFAULT).
14336         (end_line_number, end_column_number, step_forward): new methods
14337         
14338         * lily/input-scheme.cc (ly:input-both-locations): new function,
14339         similar to ly:input-location, but also return the end line and
14340         column.
14341
14342         * lily/include/includable-lexer.hh: 
14343         * lily/includable-lexer.cc: 
14344         * lily/include/lily-lexer.hh (class Lily_lexer): 
14345         * lily/lily-lexer.cc (add_lexed_char): Move add_lexed_char from
14346         Includable_lexer to Lily_lexer, in order to update lexloc (the
14347         yylloc), a new slot of Lily_lexer.
14348         (here_input, LexerError): simplify by using the lexloc slot (aka
14349         yylloc)
14350
14351         * lily/lexer.ll: #define yylloc to use input locations (it may
14352         be useless here?). Fixed the #embedded_scm rule (step the location
14353         forward in order to skip the sharp sign before parsing the scheme
14354         expression)
14355
14356         * lily/include/lily-parser.hh (class Lily_parser): 
14357         * lily/lily-parser.cc: Remove push_spot(), pop_spot() and
14358         here_input()
14359         (parser_error): overload for more precise locations of errors.
14360
14361         * lily/parser.yy (YYLTYPE): set location type to Input
14362         (YYLLOC_DEFAULT): use Input::set_location()
14363         (yylex): add the YYLTYPE* location parameter.
14364         Clean push_spot()/pop_spot()/here_input(), and use @$, @1, etc.
14365         Give an Input parameter to THIS->parser-error() for more accurate
14366         messages.
14367
14368 2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14369
14370         * stepmake/aclocal.m4: do NDEBUG for optimizing builds.
14371
14372         * lily/include/beam.hh (DEBUG_QUANTING): performance: only switch
14373         on BEAMQUANTING for non-NDEBUG builds.
14374
14375         * lily/stem.cc (head_count): performance: avoid String::String()
14376         inside oft called function.
14377
14378 2005-01-09  Graham Percival  <gperlist@shaw.ca>
14379
14380         * Documentation/user/examles.itely: attempted fix for broken
14381         string quartet template.
14382
14383         * Documentation/user/notation.itely: remove unnecessary broken
14384         link.
14385
14386 2005-01-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14387
14388         * VERSION (PACKAGE_NAME): release 2.5.7
14389
14390 2005-01-09  Jan Nieuwenhuizen  <janneke@gnu.org>
14391
14392         * config.make.in (METAFONT): Append -progname=mf, fixes use with
14393         mf-nowin for teTeX-3.0.  Backportme.
14394
14395         * scm/output-svg.scm (utf8-string): New function.
14396
14397         * scm/output-gnome.scm (utf8-string): New function.
14398         (otf-name-mangling): Remove.
14399
14400         * lily/pango-font.cc (Pango_font): Use font string iso font
14401         filename for utf8-text.
14402
14403         * buildscripts/gen-emmentaler-scripts.py: Remove designsize from
14404         name.
14405
14406 2005-01-08  Graham Percival  <gperlist@shaw.ca>
14407
14408         * Documentation/user/notation.itely: add info about
14409         Staff.extraNatural = ##f in Pitches section.  Also
14410         fixed some minor issues in the Vocal music section.
14411
14412 2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14413
14414         * scm/output-ps.scm (white-text): comment out Helvetica font,
14415         which is broken for my GS install.
14416
14417         * lily/pango-font.cc (pango_item_string_stencil): use ink_rect,
14418         which provides a tighter bbox.
14419
14420         * scm/define-grobs.scm (all-grob-descriptions): remove all
14421         extra-offsets from definitions.
14422
14423 2005-01-08  Erlend Aasland  <erlenda@gmail.com>
14424
14425         * scm/output-lib.scm: Rename guitar-tunings to guitar-tuning and
14426         add tuning for 4-string bass and some common 4/5-string banjo
14427         tunings.  New function (four-string-banjo) turns a 5-string tuning
14428         into a 4-string tuning.  New function
14429         (fret-number-tablature-format-banjo) computes correct fret numbers
14430         on 5-string banjos.
14431
14432         * ly/engraver-init.ly: Default stringTunings = #guitar-tuning
14433         Add beam correction to TabVoice.
14434
14435         * scm/define-grobs.scm: Adjust notehead offset. Print fret numbers
14436         using bold font; makes tabs more readable.
14437
14438 2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14439
14440         * lily/font-select.cc (get_font_by_design_size): don't make
14441         Modified_font_metric; this causes trouble, since we don't know the
14442         font magnification from inside Pango_font::text_stencil()
14443
14444         * lily/all-font-metrics.cc (find_pango_font): take magnification argument.
14445
14446         * Documentation/user/notation.itely (The Lyrics context): comment out
14447         broken {Small ensembles} link.
14448
14449         * scm/framework-svg.scm (output-framework): change calling convention.
14450
14451         * lily/object-key-dumper-scheme.cc: new file.
14452
14453         * lily/object-key-undumper-scheme.cc: new file.
14454
14455         * lily/tweak-registration-scheme.cc: new file.
14456
14457         * lily/pango-select.cc (symbol_to_pango_variant): init local variable.
14458
14459         * Documentation/user/examples.itely (String quartet): uncomment
14460         broken example.
14461
14462         * lily/font-config.cc: new file.
14463
14464 2005-01-08  Jan Nieuwenhuizen  <janneke@gnu.org>
14465
14466         * scm/output-svg.scm: 
14467         * scm/output-gnome.scm: s/bigcheese/emmentaler.
14468
14469         * lily/score-engraver.cc (MUSIC_FONT): Use emmentaler20.
14470
14471 2005-01-07  Jan Nieuwenhuizen  <janneke@gnu.org>
14472
14473         * lily/general-scheme.cc (LY_DEFINE): Use snprintf (WAS: sprintf).
14474         Add headers.
14475
14476         * lily/GNUmakefile (general-scheme.o): Add version.hh dependency.
14477
14478 2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14479
14480         * mf/GNUmakefile (debian-mirror): rename bigcheese to emmentaler.
14481
14482         * lily/include/main.hh: lose _b hungarian suffixes for global
14483         variables.
14484
14485         * lily/include/lily-guile-macros.hh: new file.
14486
14487         * lily/pango-select-scheme.cc (LY_DEFINE): new file.
14488
14489         * lily/general-scheme.cc: new file. 
14490
14491         * lily/font-select.cc (get_font_by_design_size): retrieve
14492         PangoFont for (designsize . "pango-descr") entries.
14493
14494         * lily/lily-parser-scheme.cc: new file.
14495
14496         * lily/output-def-scheme.cc: new file.
14497
14498         * lily/paper-book-scheme.cc: new file.
14499
14500         * lily/duration-scheme.cc (LY_DEFINE): new file.
14501
14502         * lily/pitch-scheme.cc:  new file.
14503
14504         * scm/font.scm (add-cmr-fonts): use real dimens in font selection.
14505
14506 2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14507
14508         * lily/dimensions.cc (LY_DEFINE): add ly:{inch,cm,mm,bp,pt}.
14509
14510 2005-01-06  Graham Percival  <gperlist@shaw.ca>
14511
14512         * Documentation/user/notation.itely: minor editing.
14513
14514         * Documentation/user/changing-defaults: minor editing.
14515
14516         * Documentation/user/examples.itely: add template for
14517         string quartet part extraction; demonstrates tag.
14518
14519 2005-01-06  Erlend Aasland  <erlenda@gmail.com>
14520
14521         * Documentation/user/notation.itely: documents
14522         format-mark-box-letters and format-mark-box-numbers
14523
14524         * scm/define-context-properties.scm: change comment.
14525
14526 2005-01-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14527
14528         * scm/framework-ps.scm (output-classic-framework): new function:
14529         dump systems as separate .eps files (without fonts) and write a
14530         single collecting .tex file.
14531
14532 2005-01-05  Mats Bengtsson  <mabe@s3.kth.se>
14533
14534         * Documentation/user/notation.itely (Setting simple songs):
14535         Correct several errors in the equivalent formulation of
14536         \addlyrics. 
14537         (The Lyrics context): Corrected link to the SATB example.
14538
14539 2005-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14540
14541         * scm/lily.scm (completize-formats): new function
14542         (postprocess-output): new function
14543
14544         * lily/paper-book.cc (classic_output): change calling
14545         convention. Give basename as first argument. 
14546         remove Paper_book::post_processing().
14547
14548         * lily/lily-guile.cc (LY_DEFINE): ly:output-backend, new function.
14549
14550 2005-01-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14551
14552         * lily/paper-outputter.cc (LY_DEFINE): new function
14553         ly:outputter-close.
14554
14555         * lily/main.cc: change --format,-f to --backend,-b
14556
14557         * lily/include/main.hh: rename format to backend.
14558
14559         * scm/translation-functions.scm (format-mark-box-numbers): add.
14560         patch by Erlend Aasland
14561
14562 2005-01-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14563
14564         * lily/pango-font.cc (text_stencil): dump string as
14565         (utf-8-string FONTDESC UTF8) for use in -f gnome, -f svg.
14566
14567 2005-01-03  Jan Nieuwenhuizen  <janneke@gnu.org>
14568
14569         * configure.in (gui_b): Remove handy developer-only
14570         PKG_CONFIG_PATH settings that cater for Jan-and-Han-Wen ~/usr/pkg/
14571         CVS source installations (but break other non-default but correct
14572         PKG_CONFIG_PATH setups), as this is no longer developer-only.
14573
14574         * SConstruct: 
14575         * ps/GNUmakefile (INSTALLATION_FILES): teTeX-3.0
14576         compatibility (backportme).
14577
14578         * GNUmakefile.in: teTeX-3.0 compatibility (backportme).
14579
14580 2005-01-03  Werner Lemberg  <wl@gnu.org>
14581
14582         Prepare glyph shapes for mf2pt1 conversion.
14583
14584         * mf/feta-accordion.mf (accreg_pen): Removed.  No longer used.
14585         (accDiscant, accFreebase, accStdbase): Replace `draw' with
14586         `penstroke'.
14587         (accDot): Use `drawdot'.
14588         (accBayanbase): Replace `draw' with `draw_gridline'.
14589         (print_penpos): Moved to feta-macros.mf.
14590         (accOldEE): Replace `filldraw' with `penstroke'.
14591         Replace `draw' with `penstroke' and `drawdot'.
14592
14593         * mf/feta-banier.mf: Code clean-up.
14594         ("grace dash (up)", "grace dash (down)"): Replace `draw' with
14595         `fill'.
14596
14597         * mf/feta-bolletjes (draw_cross): Remove call to `labels'.
14598
14599         * mf/feta-eindelijk.mf (draw_rest_bulb, draw_eigth_rest): Add
14600         paremeter to control drawing of labels.  Update all callers.
14601
14602         * mf/feta-klef.mf (draw_c_clef): Use `&' not `..' to connect paths.
14603         (new_bulb): Return a bulb as a single path.  To do that, it now
14604         takes some more parameters.  Updated all callers.
14605         (draw_gclef): Major clean-up.  `draw' has been replaced with
14606         `penstroke', unnecessary outlines have been removed.
14607         Remove (unused) gnome-canvas code.
14608
14609         * mf/feta-macros.mf (print_penpos): New macro (from
14610         feta-accordion.mf).
14611         Other minor fixes.
14612
14613         * mf/feta-pendaal.mf ("Pedal asterisk"): Use `undrawdot'.
14614         ("Pedal dot"): Use `drawdot'.
14615         (draw_pedal_P): Add parameter to control drawing of labels.  Update
14616         all callers.
14617         Fix shape at top.
14618         (draw_pedal_e): Add parameter to control drawing of labels.  Update
14619         all callers.
14620         (draw_pedal_d): Add parameter to control drawing of labels.  Update
14621         all callers.
14622         Revert drawing direction.
14623
14624         * mf/feta-schrift.mf (draw_fermata): Use single path.
14625         (draw_short_fermata): Replace `filldraw' with `fill'.
14626         (draw_long_fermata, draw_very_long_fermata): Replace calls to
14627         `draw_rounded_block' with a single path.
14628         ("Thumb"): Draw full circle instead of mirroring segments.
14629         (draw_accent): New macro.
14630         ("> accent", "espr"): Use it.
14631         (draw_marcato): Replace `filldraw' and `draw' with `fill'.
14632         ("open (unstopped)"): Draw full circle instead of mirroring
14633         segments.
14634         (draw_vee): Removed.
14635         ("Upbow"): Use `draw_accent' instead of `draw_vee'.
14636         ("Downbow"): Replace calls to `draw_rounded_block' with a single
14637         path.
14638         ("Trill (`tr')"): Replace overlapping loop drawn with `draw' with
14639         partial pieces drawn with `fill' -- these do still overlap with the
14640         stem of the `t' but just once, not multiple times so that fontforge
14641         can handle it gracefully.
14642         Change other parts of the glyph so that fontforge's overlapping
14643         algorithm reliably works.
14644         (draw_heel): Replace `draw' with `fill'.
14645         (draw_toe): Use `draw_accent' instead of `draw_vee'.
14646         ("Flageolet"): Replace `draw' with `penstroke'.
14647         ("Segno"): Replace `filldraw' with `penstroke'.
14648         Replace `draw' with `drawdot'.
14649         ("Coda"): Replace `fill' with `penstroke', using a single path.
14650         ("Varied Coda"): Use less overlapping paths.
14651         (draw_arpeggio_arrow): Replace `filldraw' with `fill', using a
14652         single path.
14653
14654         * mf/feta-slag.mf (draw_trillelement): Put `clearxy' outside of
14655         group to better control the `labels' command.
14656         Rename argument to `offset' and use it actually.  Update all
14657         callers.
14658         Replace `filldraw' with `fill'.
14659         ("mordent", "prallmordent", "upmordent", "downmordent",
14660         "lineprall"): Replace `draw' with `draw_gridline'.
14661         ("upprall", "downprall"): Replace `draw' with `fill'.
14662
14663         * mf/feta-timesig.mf: Formatting.
14664
14665         * mf feta-toevallig.mf (draw_meta_flag): Move code to draw labels
14666         to...
14667         ("Flat"): Here.
14668         (draw_paren): Move code to draw labels to...
14669         ("Right Parenthesis"): Here.
14670
14671 2005-01-02  Graham Percival <gperlist@shaw.ca>
14672
14673         * Documentation/user/notation.itely: add example of \setTextDecresc
14674         and \setTextDim.
14675
14676 2005-01-02  Tatsuya Ono <tats_ono@infoseek.jp>
14677
14678         * scm/define-markup-commands.scm :  fix glyph-strings of
14679         accidentals and \note-by-number
14680
14681 2005-01-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14682
14683         * VERSION: 2.5.6 released.
14684         
14685         * ps/lilyponddefs.ps: put mm -> pt scaling in here.
14686
14687         * input/regression/new-markup-scheme.ly: oops. font-family=music
14688         -> font-encoding fetaMusic.  
14689
14690         * lily/main.cc: put default to PS.
14691
14692         * lily/tfm.cc: idem.
14693
14694         * lily/afm.cc: idem.
14695
14696         * lily/include/modified-font-metric.hh (struct
14697         Modified_font_metric): remove coding_scheme() method.
14698
14699         * input/mutopia/F.Schubert/morgenlied.ly: convert to utf8
14700
14701         * scripts/convert-ly.py (conv): crash on encountering \encoding.
14702
14703         * input/les-nereides.ly: convert to utf8
14704
14705         * lily/modified-font-metric.cc (text_dimension): idem.
14706
14707         * lily/parser.yy (TODO): idem.
14708
14709         * lily/include/lily-lexer.hh (class Lily_lexer): idem.
14710
14711         * lily/lexer.ll: remove encoding
14712
14713         * scm/framework-ps.scm (output-variables): separately scale the
14714         page to mm 
14715
14716         * lily/pango-font.cc (Pango_font): fix scaling.
14717
14718         * lily/font-metric.cc (design_size): design_size returns a
14719         dimension now as well.
14720
14721 2004-12-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14722
14723         * mf/GNUmakefile ($(outdir)/%.otf-table): use findstring. Fixes
14724         brace generation. 
14725
14726         * lily/text-metrics.cc (LY_DEFINE): use scm_c_make_hash_table().
14727
14728 2004-12-30  Jan Nieuwenhuizen  <janneke@gnu.org>
14729
14730         * mf/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Do not try to
14731         install unbuildable Fontmap and Fontmap.lily (Simon Aridis-Lang).
14732
14733 2004-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14734
14735         * mf/GNUmakefile ($(outdir)/%.otf-table): include parmesan20.lisp
14736         in first run as well.
14737
14738         * scm/paper.scm (layout-set-staff-size): use text-font-size in
14739         dimension less points (ie. 12 = 12 point)
14740
14741         * lily/pango-select.cc (select_pango_font): use find_scaled_font().
14742
14743         * lily/all-font-metrics.cc (find_pango_font): set description_
14744
14745         * lily/pango-font.cc (text_stencil): export size as well.
14746         (text_stencil): fix scaling and extents box.
14747
14748 2004-12-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14749
14750         * Documentation/topdocs/NEWS.texi (Top): add -f texstr
14751
14752         * Documentation/user/invoking.itely (Invoking lilypond): document
14753         texstr
14754
14755         * scripts/convert-ly.py (conv): add ancient rules.
14756
14757         * scm/clef.scm (c0-pitch-alist): replace - with .
14758
14759         * scripts/lilypond-book.py (process_snippets): add texstr support.
14760
14761         * scm/framework-texstr.scm (header): change extension to .textmetrics
14762
14763         * lily/lily-parser.cc (parse_file): do try_load_text_metrics for
14764         -f tex.
14765
14766         * lily/text-metrics.cc: new file.
14767         (try_load_text_metrics): new function
14768
14769         * lily/include/text-metrics.hh: new file.
14770
14771 2004-12-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14772
14773         * lily/include/lily-guile.hh (ly_lily_module_constant): rename
14774         ly_scheme_function to ly_lily_module_constant.
14775
14776         * lily/modified-font-metric.cc (text_dimension): try
14777         lookup_tex_text_dimension() first.
14778
14779         * lily/tfm.cc: new function ly:load-text-dimensions
14780
14781 2004-12-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14782
14783         * scm/output-texstr.scm (text): use \lilygetmetrics
14784
14785         * scm/framework-texstr.scm (header): dump in new format.
14786
14787         * tex/lilypond-tex-metrics: new file.
14788         
14789 2004-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
14790
14791         * lily/pango-font.cc (text_stencil): Quick try at glyph->charcode
14792         mapping.
14793         (index_to_charcode): New method.
14794
14795         * scm/output-ps.scm (glyph-string): 
14796         * scm/output-gnome.scm (glyph-string): Add FONT parameter.
14797
14798 2004-12-26  Jan Nieuwenhuizen  <janneke@gnu.org>
14799
14800         * scm/output-gnome.scm (FIXME-glyph-string): New function.  Cannot
14801         implement fully, need FONT to get to charcode.
14802
14803         * scm/lily.scm (ly:all-stencil-expressions): Add glyph-string.
14804
14805         * scm: Cleanups.
14806
14807         * Documentation/user/changing-defaults.itely: Fix internalsrefs
14808         {Tunable context properties},
14809         {All layout objects},
14810         {Music definitions}.
14811
14812 2004-12-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14813
14814         * VERSION: release 2.5.5
14815         
14816         * lily/main.cc: use TeX as default output format.
14817
14818         * flower/file-path.cc (find): try to open directly as well, so we
14819         find absolute path files. 
14820
14821         * lily/pango-select.cc: new file.
14822
14823         * scm/framework-ps.scm: remove all encoding code. 
14824         load pfb/pfa for PangoFont too.
14825         
14826         * lily/lily-guile.cc (ly_chain_assoc_get): new function.
14827
14828 2004-12-22  Werner Lemberg  <wl@gnu.org>
14829
14830         Prepare glyph shapes for mf2pt1 conversion.
14831
14832         * mf/feta-toevallig.mf ("Double Sharp"): Minor path fix.
14833
14834         * mf/feta-bolletjes.mf (penposx): New auxiliary macro.
14835         (define_triangle_shape): Use it to replace `draw' with `fill' and
14836         `unfill'.  Update all callers.
14837         (draw_slash): Replace `filldraw' with `fill'.  Update all callers.
14838         (draw_cross): Ditto.
14839         ("X-Circled notehead"): Replace `draw' with `fill' and `unfill'.
14840         Use penrazor for better conversion with mf2pt1.
14841         (generic_draw_solfa_note_shape, draw_solfa_note_shape,
14842         draw_solfa_quarter_note_shape, triangle): Removed.  Unused.
14843         (draw_do_head, draw_re_head, draw_mi_head, draw_fa_head,
14844         draw_la_head, draw_ti_head): Replace `filldraw' with
14845         `fill'.  Update all callers.
14846
14847 2004-12-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14848
14849         * lily/paper-book.cc (output): revert: only allow a single output
14850         format.
14851
14852         * lily/include/pango-font.hh: new file.
14853
14854         * lily/pango-font.cc: new file.
14855
14856         * lily/font-metric.cc (text_stencil): new routine
14857
14858         * lily/all-font-metrics.cc (find_pango_font): new routine.
14859
14860         * lily/include/font-metric.hh (struct Font_metric): add
14861         text_stencil()
14862
14863         * configure.in (PKG_CONFIG_PATH): require PANGO_FT2
14864
14865 2004-12-22  Werner Lemberg  <wl@gnu.org>
14866
14867         Prepare glyph shapes for mf2pt1 conversion.
14868
14869         * mf/feta-macros.mf, mf_feta-eindelijk.mf: Some formatting.
14870
14871         * mf/feta-toevallig.mf: Formatting.
14872         (draw_meta_sharp): Modify path to replace `filldraw' with `fill'.
14873         ("Natural"): Fix paths to allow better postprocessing.
14874         (draw_meta_flat): Use `z3l' as additional point in path to get
14875         better conversion with mf2pt1.
14876         Other minor cleanups.
14877         ("3/4 Flat"): Add auxiliary points and modify path to replace
14878         `draw' with `fill'.
14879         ("Double Sharp"): Mirror path segments instead of picture elements
14880         to get a single outline.
14881         Modify path to replace `filldraw' with `fill'.
14882
14883 2004-12-22  Graham Percival  <gperlist@shaw.ca>
14884
14885         * input/test/unfold-all-repeats.ly: added file back.
14886
14887         * Documentation/user/notation.itely,
14888         Documentation/user/programming-interface.itely
14889         Documentation/user/changing-defaults.itely: fixed misc broken
14890         links to input/test/ files.
14891
14892 2004-12-22  Jan Nieuwenhuizen  <janneke@gnu.org>
14893
14894         * tex/texinfo.tex: Update.  We should not be distributing this,
14895         but since we do, use latest version.
14896
14897         * Documentation/user/macros.itexi: Comment-out \fetaflat,
14898         \fetasharp.  Fixes make web.  FIXME: make usable (compatible?) TeX
14899         macros for feta glyphs.
14900
14901 2004-12-22  Graham Percival  <gperlist@shaw.ca>
14902
14903         * Documentation/user/changing-defaults.itely: fix index for set.
14904
14905         * Documentation/user/converters.itely: added convert-ly bugs list
14906         from CVS.
14907
14908 2004-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
14909
14910         * python/lilylib.py (setup_environment): Set GS_FONTPATH, GS_LIB
14911         to empty.  Fixes make web, using gs-gpl-8.01.  In fact,
14912         gs-afpl-8.50 has more trouble with make web (ie, uses *a lot* more
14913         resourses; 3x MAXSIZE, 4x MAXRSS, 1.5x user).
14914
14915         * mf/GNUmakefile (pfa_warning): Use less broken check.
14916
14917         * python/lilylib.py (setup_environment): Remove cruft from
14918         GS_FONTPATH.
14919
14920         * configure.in: Bump mftrace requirement to 1.1.1.
14921
14922 2004-12-20  Jan Nieuwenhuizen  <janneke@gnu.org>
14923
14924         * scm/output-svg.scm (beam): Use polygon.
14925
14926         * scm/lily-library.scm: Bugfix.
14927
14928         * Documentation/user/invoking.itely (Invoking lilypond): Bugfix.
14929
14930         * mf/GNUmakefile (ALL_GEN_FILES): Remove unbuildable Fontmap.lily.
14931
14932 2004-12-19  Werner Lemberg  <wl@gnu.org>
14933
14934         Prepare glyph shapes for mf2pt1 conversion.
14935
14936         * mf/feta-eindelijk: Some formatting.
14937         (multi_rest_x, multi_beam_height): Removed.  Unused.
14938         ("Quarter rest"): Use `intersectiontimes' to create a single
14939         outline.
14940         (rest_crook): Removed.  Unused.
14941         (draw_rest_bulb): Return path (without filling).  Update callers.
14942         Simplified.
14943         (draw_eighth_rest, "16th rest", "32th rest", "64th rest",
14944         "128th rest"): Simplify `pat'.
14945         Create single outline.
14946
14947 2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
14948
14949         * mf/GNUmakefile (ALL_GEN_FILES):
14950         (INSTALLATION_OUT_SUFFIXES): Remove unbuildable fonts.scale.
14951
14952         * scm/output-svg.scm (polygon, draw-line, dashed-line): New
14953         function.
14954
14955 2004-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14956
14957         * scm/output-texstr.scm (placebox): add routine
14958
14959         * VERSION (PACKAGE_NAME): release 2.5.4
14960
14961         * scm/framework-texstr.scm (output-framework): new file.  
14962
14963         * scm/output-texstr.scm: new file. Collect (TEXT . ) calls for TeX
14964         processing.
14965
14966         * Documentation/user/invoking.itely (Invoking lilypond): add SVG
14967
14968         * stepmake/stepmake/metafont-rules.make: make single SVG/PFA/PFB
14969         rule.
14970
14971         * configure.in (gui_b): bump mftrace requirement to 1.1.0
14972
14973         * mf/feta-bolletjes.mf (triangle): add s to 0triangle.
14974
14975         * mf/GNUmakefile (ALL_GEN_FILES): make SVG files too.
14976
14977 2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
14978
14979         * scm/framework-svg.scm (dump-page): Implement landscape.
14980
14981 2004-12-18  Jan Nieuwenhuizen  <janneke@gnu.org>
14982
14983         * lily/main.cc (setup_paths): Add svg to search path.
14984
14985         * scm/output-svg.scm:
14986         * scm/framework-svg.scm: Add pageSet.  Update.
14987         (dump-fonts): New function.
14988         (output-framework): Use it.
14989
14990         * mf/GNUmakefile: 
14991         * buildscripts/gen-bigcheese-scripts.py: Also generate SVG font.
14992
14993 2004-12-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14994
14995         * tex/lilyponddefs.tex: comment out new ifpdf code.
14996
14997 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
14998
14999         * GNUmakefile.in: 
15000         * SConstruct (symlink): Replace afm by otf.
15001
15002         * scm/framework-gnome.scm (gnome-main): Remove invocation of
15003         ly:pango-add-afm-decoder.
15004
15005         * lily/lily-guile.cc ("ly:pango-add-afm-decoder"): Build fix: Remove.
15006
15007 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15008
15009         * scm/output-ps.scm (new-text): don't access t glyph for getting
15010         space dimension.
15011
15012         * ly/init.ly: warn about \version
15013
15014         * lily/lexer.ll: set version-seen?
15015
15016 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
15017
15018         * scm/output-svg.scm (string->entities): Update.
15019
15020 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15021
15022         * lily/main.cc (setup_paths): replace afm by otf for path. 
15023
15024         * lily/pangofc-afm-decoder.cc: remove.
15025
15026         * lily/include/pangofc-afm-decoder.hh: remove.
15027
15028         * scm/framework-scm.scm (output-framework): new file.
15029
15030         * mf/GNUmakefile: remove SAUTER_FONTS.
15031         remove SVG/sodipodi hacks.
15032
15033         * scm/lily-library.scm (stderr): move stderr.
15034
15035         * mf/GNUmakefile: remove AFM support.
15036
15037         * buildscripts/mf-to-table.py (base): remove AFM support.
15038
15039         * lily/open-type-font.cc (design_size): use design_size
15040
15041 2004-12-17  Pedro Kroger  <kroeger@pedrokroeger.net>
15042
15043         * lily/font-metric.cc (LY_DEFINE): Fix the docstring.
15044
15045 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
15046
15047         * mf/GNUmakefile: Generate combined aybabtu info.
15048         * mf/aybabtu.pe.in (i): Load it.
15049
15050         * scm/framework-tex.scm (otf-font-load-command): Bugfix: subfonts
15051         are not symbols.
15052
15053         * lily/include/open-type-font.hh (count): New method.
15054
15055         * mf/aybabtu.pe.in: Typo.
15056
15057         * Documentation/user/out/lilypond-internals.nexi (Scheme
15058         functions): Typo.
15059
15060         * lily/include/guile-compatibility.hh (SCM_HASHTABLE_P): Add compat.
15061
15062 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15063
15064         * buildscripts/gen-bigcheese-scripts.py (i): use symbols for
15065         subfonts.
15066
15067         * scm/output-tex.scm (named-glyph): new function. This fixes TeX output.
15068
15069         * scm/framework-tex.scm (otf-font-load-command): load subfonts.
15070         (tex-font-command-raw): new function.
15071
15072         * lily/include/virtual-font-metric.hh (Module): remove file
15073
15074         * lily/virtual-font-metric.cc (Module): remove file.
15075         
15076
15077         * lily/open-type-font.cc (LY_DEFINE): ly:otf-font-glyph-info
15078         (get_indexed_char): read bbox from lily table if present.
15079
15080 2004-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15081
15082         * mf/GNUmakefile ($(outdir)/aybabtu.subfonts): rule for
15083         aybabtu.subfonts
15084
15085         * mf/feta-beugel.mf (y): don't number consecutively, instead, use
15086         global glyphname. Enables more than 64 glyphs in the OTF.
15087
15088 2004-12-16  Jan Nieuwenhuizen  <janneke@gnu.org>
15089
15090         * scm/font.scm (add-music-fonts): Load aybabtu iso all separate
15091         braces.
15092
15093         * lily/open-type-font.cc (design_size): Use 12 as default for
15094         design size.
15095
15096         * mf/aybabtu.pe.in: New file.  Merge all our braces.
15097
15098         * mf/GNUmakefile: Generate aybabtu.
15099
15100         * tex/lilyponddefs.tex: teTeX 3.0 pdfetex fix.
15101
15102 2004-12-14  Jan Nieuwenhuizen  <janneke@gnu.org>
15103
15104         * scm/lily-library.scm (char->unicode-index): Remove.
15105
15106         * scm/output-gnome.scm (text): Bugfix for plain string input.
15107         Updates.
15108
15109         * scm/output-svg.scm (svg-font): Add weight to font selection.
15110
15111 2004-12-14  Mats Bengtsson  <mabe@s3.kth.se>
15112
15113         * Documentation/topdocs/INSTALL.texi (Top): Point to
15114         buildscripts/out/clean-fonts instead of
15115         buildscripts/clean-fonts.sh. 
15116
15117 2004-12-13  Graham Percival  <gperlist@shaw.ca>
15118
15119         * input/regression/figured-bass.ly: attempt to clarify text.
15120
15121         * Documentation/user/notation.tely: add cindex for tag, attempt to
15122         add figured bass example.
15123
15124         * Documentation/user/changing-defaults: basic editing.
15125
15126 2004-12-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15127
15128         * buildscripts/gen-bigcheese-scripts.py (i): load .subfonts table. 
15129
15130         * lily/open-type-font.cc (LY_DEFINE): new function
15131         ly:font-sub-fonts
15132
15133         * lily/include/font-metric.hh (struct Font_metric): new method
15134         sub_fonts()
15135
15136         * lily/vaticana-ligature-engraver.cc (transform_heads): replace
15137         . with - in add.stem.
15138         
15139 2004-12-13  Jan Nieuwenhuizen  <janneke@gnu.org>
15140
15141         * scm/encoding.scm (coding-alist): Fix encodings for fetaNumber
15142         and fetaDynamic.
15143
15144         * lily/rest.cc (glyph_name): Change - to . .
15145
15146         * scm/output-gnome.scm (text): Hello world, again.
15147
15148         * scm/output-svg.scm (named-glyph): New function.  Hello world!
15149
15150         * lily/modified-font-metric.cc (index_to_charcode): New method.
15151
15152         * lily/include/font-metric.hh (index_to_charcode): New function.
15153
15154         * lily/font-metric.cc (ly:font-glyph-name-to-charcode): Use it in
15155         new function.
15156         (ly:font-glyph-to-index): Remove.
15157
15158 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15159
15160         * lily/open-type-font.cc (make_index_to_charcode_map): new method.
15161
15162         * mf/feta-autometric.mf (code): remove tex name from fet_beginchar.
15163
15164         * lily/open-type-font.cc (load_scheme_table): new function
15165
15166         * lily/dots.cc (print): replace - 
15167
15168         * lily/open-type-font.cc (attachment_point): new function.
15169         (load_table): read LILC table
15170
15171         * buildscripts/gen-bigcheese-scripts.py (Module): new
15172         file. Generate FF scripts.
15173
15174         * mf/feta-din10.mf: idem.
15175
15176         * mf/feta-nummer10.mf: remove mf files.
15177
15178         * mf/feta-alphabet.mf (dynamic_design_size): merge din and number font.
15179
15180 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
15181
15182         * lily/lily-guile.cc: Use scm_from_locale_stringn.
15183
15184         * lily/include/guile-compatibility.hh (scm_from_locale_stringn): Add
15185         compatibility.
15186
15187 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15188
15189         * lily/open-type-font.cc (get_indexed_char): scale metrics by
15190         design-size and units_per_EM.
15191
15192         * mf/bigcheese.pe.in: set PUA codepoints before loading din & nummer.
15193
15194 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
15195
15196         * mf/bigcheese.pe.in (i): Map to 0xe000 (PUA) for testing, which
15197         does not crash fontforge.
15198
15199         * scm/lily-library.scm (char->unicode-index): Hack to map onto
15200         PUA.
15201
15202 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15203
15204         * scm/framework-ps.scm (ps-embed-cff): new function.
15205
15206         * lily/lily-guile.cc (LY_DEFINE): make ly:gulp-file binary proof.
15207
15208 2004-12-12  Werner Lemberg  <wl@gnu.org>
15209
15210         * mf/bigcheese.pe.in: Add PUA mapping.
15211         Don't create Type 42 but bare CFF font.
15212
15213 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
15214
15215         * scm/output-gnome.scm (placebox): Hackery to get bigcheese symbols
15216         within canvas boundaries.
15217
15218         * mf/merge.pe.in: Set font names, version, license GPL.
15219
15220         * make/substitute.make: Add FONTFORGE.
15221
15222         * config.make.in (FONTFORGE): Add.
15223
15224         * configure.in (gui_b): Use PATH_PROG for fontforge.
15225
15226 2004-12-11  Graham Percival  <gperlist@shaw.ca>
15227
15228         * scm/define-markup-commands.scm: add baseline-skip to info
15229         about \column.
15230
15231 2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
15232
15233         * lily/font-metric.cc (ly:font-get-glyph-index): New function.
15234
15235         * scm/output-gnome.scm (named-glyph): Use it.
15236
15237         * scm/lily.scm (ly:all-stencil-expressions): Add named-glyph.
15238
15239         * flower/string.cc (substitute_char): Rename, rewrite, modify this.
15240         (upper_string, lower_string, reverse_string): Remove.
15241
15242         * configure.in (fontforge): Reinstate version check.
15243
15244         * ly/engraver-init.ly: Fix clef glyph names.
15245
15246         * lily/time-signature.cc (special_time_signature): Fix fraction
15247         glyph names.
15248
15249 2004-12-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15250
15251         * mf/merge.pe: new file.
15252
15253         * lily/freetype.cc: new file.
15254
15255         * lily/include/open-type-font.hh (class Open_type_font): new file.
15256
15257         * lily/include/freetype.hh: new file.
15258
15259         * lily/open-type-font.cc: new file.
15260
15261         * lily/all-font-metrics.cc (find_otf): new function.
15262
15263 2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
15264
15265         * lily/time-signature.cc (special_time_signature): Fix.
15266
15267         * configure.in (PKG_CONFIG_PATH): Remove stray `i'.  Check for
15268         GTK2 before checking for pango.  Fixes -fgnome.
15269
15270         * lily/font-metric.cc (LY_DEFINE): Also rename C name to match
15271         Scheme name.
15272
15273         * scm/define-markup-commands.scm:
15274         * scm/safe-lily.scm: Bugfix: ly:font-by-name.
15275
15276         * configure.in: Require makeinfo 4.7 (needed for @ifdocbook).
15277
15278         * stepmake/aclocal.m4 (STEPMAKE_GET_VERSION): Grok fontforge-like
15279         date versions.  Fixes configure.
15280         (STEPMAKE_CHECK_VERSION): Support optional actual program version
15281         argument.
15282
15283 2004-12-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15284
15285         * buildscripts/mf-to-table.py (write_ps_encoding): write real
15286         names in .enc
15287
15288         * lily/*.cc: use '.' iso. '-' for separating glyph name elements.
15289
15290 2004-12-09  Graham Percival  <gperlist@shaw.ca>
15291
15292         * Documentation/user/changing-defaults.itely: add info about
15293         make-dynamic-script
15294
15295         * Documentation/user/notation.itely: add link in dynamics to
15296         section about make-dynamic-script.
15297
15298 2004-12-09  Christian hitz  <chhitz@gmx.net>
15299
15300         * lily/lily-guile.cc: change MACOS_X to __APPLE__
15301
15302 2004-12-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15303
15304         * buildscripts/mf-to-table.py (parse_logfile): use . for
15305         concatting name and group.
15306         (parse_logfile): use M for Minus (negative.)
15307
15308         * lily/include/type-swallow-translator.hh
15309         (DECLARE_EVENT_SWALLOWER): ENTER_DESCRIPTION -> ADD_TRANSLATOR
15310
15311         * lily/*.cc: cosmetics around = sign.
15312
15313         * lily/paper-column.cc (Paper_column): copy rank_. This fixes
15314         lyric spacing on the penultimate column.
15315
15316 2004-12-05  Christian Hitz  <chhitz@gmx.net>
15317
15318         * configure.in:
15319         * lily/accidental-placement.cc:
15320         * lily/bar-line.cc:
15321         * lily/beam-concave.cc:
15322         * lily/beam-quanting.cc:
15323         * lily/beam.cc:
15324         * lily/bezier-bow.cc:
15325         * lily/bezier.cc:
15326         * lily/break-align-interface.cc:
15327         * lily/custos.cc:
15328         * lily/dimension-cache.cc:
15329         * lily/dot-column.cc:
15330         * lily/font-metric.cc:
15331         * lily/font-select.cc:
15332         * lily/gourlay-breaking.cc:
15333         * lily/grob-property.cc:
15334         * lily/grob.cc:
15335         * lily/lily-guile.cc:
15336         * lily/line-spanner.cc:
15337         * lily/lookup.cc:
15338         * lily/lyric-extender.cc:
15339         * lily/lyric-hyphen.cc:
15340         * lily/mensural-ligature.cc:
15341         * lily/midi-def.cc:
15342         * lily/misc.cc:
15343         * lily/note-collision.cc:
15344         * lily/note-column.cc:
15345         * lily/note-head.cc:
15346         * lily/paper-outputter.cc:
15347         * lily/percent-repeat-item.cc:
15348         * lily/rest-collision.cc:
15349         * lily/side-position-interface.cc:
15350         * lily/simple-spacer.cc:
15351         * lily/slur-configuration.cc:
15352         * lily/slur-scoring.cc:
15353         * lily/slur.cc:
15354         * lily/spaceable-grob.cc:
15355         * lily/spacing-spanner.cc:
15356         * lily/spanner.cc:
15357         * lily/staff-symbol-referencer.cc:
15358         * lily/stem.cc:
15359         * lily/stencil.cc:
15360         * lily/system-start-delimiter.cc:
15361         * lily/system.cc:
15362         * lily/text-item.cc:
15363         * lily/tie.cc:
15364         * lily/tuplet-bracket.cc:
15365         * lily/vaticana-ligature.cc: Fix for MacOS X: use <math.h> instead of
15366         <cmath> beacause isinf/isnan is undefined in <cmath>
15367
15368 2004-12-03  Mats Bengtsson  <mabe@s3.kth.se>
15369
15370         * cygwin/lily-wins.py (stat): remove old flag -p when calling lilypond.
15371
15372 2004-12-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15373
15374         * VERSION: release 2.5.3
15375         
15376 2004-11-29  Arno Waschk <arno@arnowaschk.de>
15377
15378         * mf/feta-schrift.mf: added <>-like articulation mark as "espressivo"
15379
15380 2004-12-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15381
15382         * scm/music-functions.scm (cue-substitute): voice counts start at 0.
15383
15384         * lily/note-head.cc (internal_print): always try the "s" head if
15385         u/d not found.
15386
15387         * scm/titling.scm (marked-up-headfoot): reinstate default tagline.
15388
15389 2004-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15390
15391         * mf/parmesan-heads.mf (overdone_heads): typos.
15392
15393 2004-11-30  Nicolas Sceaux  <nicolas.sceaux@free.fr>
15394
15395         * lily/parser.yy (markup): in markups, { .. } without command
15396         before are also flattened, ie \line must be explicitely used.
15397
15398         * Documentation/user/changing-defaults.itely:
15399         * Documentation/user/notation.itely: 
15400         * input/wilhelmus.ly: 
15401         * input/regression/instrument-name-markup.ly: 
15402         * input/regression/markup-score.ly: 
15403         * input/regression/new-markup-scheme.ly: 
15404         * input/regression/new-markup-syntax.ly: 
15405         * input/test/coriolan-margin.ly: use \line in markups where
15406         appropriate
15407         
15408 2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
15409
15410         * scm/new-markup.scm (map-markup-command-list): helper function
15411         used in parser.yy to map markup commands on a markup list.
15412
15413         * lily/parser.yy: get rid off < > in markups by treating { } as
15414         real lists.
15415
15416         * lily/lexer.ll: remove < > from markup lexer mode.
15417
15418         * scripts/convert-ly.py (conv): add rule for converting 
15419         \markup < > to \markup { }
15420
15421         * ly/titling-init.ly: 
15422         * input/test/coriolan-margin.ly: 
15423         * input/regression/new-markup-syntax.ly: 
15424         * input/regression/new-markup-scheme.ly: 
15425         * input/regression/multi-measure-rest-text.ly: 
15426         * input/regression/markup-stack.ly: 
15427         * input/regression/markup-score.ly: 
15428         * input/regression/instrument-name-markup.ly: 
15429         * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: 
15430         * input/mutopia/R.Schumann/romanze-op28-2.ly: 
15431         * input/mutopia/J.S.Bach/wtk1-fugue2.ly: 
15432         * input/wilhelmus.ly: 
15433         * Documentation/user/notation.itely: 
15434         * Documentation/user/music-glossary.tely: 
15435         * Documentation/user/changing-defaults.itely: change < > to { } in
15436         markups
15437
15438 2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15439
15440         * lily/accidental-placement.cc (position_accidentals): shortcut if
15441         no accidentals to place.
15442
15443 2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
15444
15445         * scm/define-grob-properties.scm (all-user-grob-properties): fixed
15446         typo s/ly:dimension ?/ly:dimension?/
15447
15448         * input/regression/lily-in-scheme.ly: 
15449         * input/regression/music-function.ly: 
15450         * ly/spanners-init.ly (assertBeamSlope): 
15451         * scm/music-functions.scm (def-grace-function): add the paper
15452         argument to music function definitions.
15453
15454 2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15455
15456         * lily/moment.cc (LY_DEFINE):
15457         ly:moment-main-{denominator,numberator}, new function.
15458
15459         * lily/score-engraver.cc (typeset_all): assign to column on basis
15460         of axis-group-parent-X setting.
15461
15462         * lily/axis-group-engraver.cc (process_acknowledged_grobs): do
15463         add_element() on basis of axis-group-parent-Y setting.
15464
15465         * lily/grob.cc: add axis-group-parent-{XY} properties.
15466
15467         * input/regression/spacing-stick-out.ly: new file.
15468
15469         * lily/simple-spacer.cc (add_columns): use binary search for
15470         setting column rods. Changes O(n^2) to O(n log(n)) for
15471         constructing spacing problem from columns.
15472         (add_columns): read allow-outside-line to make sure no texts stick
15473         out.
15474         (solve): Simple_spacer::is_active() only determines
15475         satisfies_constraints_ for non-ragged typesetting.
15476
15477         * lily/simultaneous-music.cc (to_relative_octave): only set
15478         old_relative_used if return pitch actually changed.
15479
15480         * scm/define-context-properties.scm
15481         (all-user-translation-properties): change to match implementation.
15482
15483         * python/lilylib.py: Replace re.match by re.search and adds "-c
15484         showpage" to the gs command line (Johannes Schindelin)
15485
15486         * scm/framework-ps.scm (output-preview-framework): sanitize bbox
15487         before processing. Prevents crash when inf is in the extent.
15488
15489         * scm/define-markup-commands.scm (note-by-number): add "s" to
15490         "noteheads-" glyphname.
15491  
15492         * lily/parser.yy (Generic_prefix_music): supply parser argument to
15493         music function as well.
15494         
15495 2004-11-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15496
15497         * VERSION: release 2.5.2
15498
15499         * Documentation/user/changing-defaults.itely (Creating titles):
15500         add breakbefore variable.
15501
15502         * lily/paper-book.cc (set_system_penalty): new function. Set
15503         penalty_ based on breakBefore setting
15504
15505         * lily/context-specced-music-iterator.cc (construct_children):
15506         interpret special context id $uniqueContextId 
15507
15508         * lily/context.cc (create_unique_context): new method. Move
15509         creation of unique (\new) contexts into interpreting phase. This
15510         makes
15511
15512           foo= \new Staff ..
15513           << \foo \foo >>
15514
15515         produce 2 staves.
15516         
15517
15518         * scm/define-music-properties.scm (all-music-properties): add
15519         quoted-voice-direction
15520
15521         * ly/music-functions-init.ly: killCues function.
15522
15523         * scm/music-functions.scm (cue-substitute): move creation of voice
15524         contexts further to the back. 
15525
15526 2004-11-25  Werner Lemberg  <wl@gnu.org>
15527
15528         * tex/GNUmakefile ($(outdir)/latin1.enc): Replace `/minus' with
15529         `/hyphen' in encoding vector to get correct glyph name for EC fonts.
15530
15531 2004-11-24  Erik Sandberg  <ersa9195@student.uu.se>
15532
15533         * buildscripts/guile-gnome.sh: Fixed typo.
15534
15535 2004-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15536
15537         * lily/lexer.ll: add < >  to markup lexer mode (backportme)
15538
15539         * scripts/abc2ly.py (dump_slyrics): add ord(). 
15540
15541         * lily/note-heads-engraver.cc (process_music): add shapeNoteStyles
15542         to regular engraver. 
15543
15544 2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15545
15546         * mf/feta-bolletjes.mf (triangle): rewrite solfa heads.
15547
15548 2004-11-22  Jan Nieuwenhuizen  <janneke@gnu.org>
15549
15550         * scm/define-markup-commands.scm (fill-line): Typo.
15551
15552         * buildscripts/guile-gnome.sh (GGVERSION): Build update for 2.7.96
15553         and newer.
15554
15555 2004-11-22  Erik Sandberg  <ersa9195@student.uu.se>
15556
15557         * ly/dynamic-scripts-init.ly: Fixed typo.
15558
15559 2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15560
15561         * mf/feta-bolletjes.mf (overdone_heads): cleanup triangle
15562         note-head, to have different attachment points for up and down.
15563
15564         * mf/feta-bolletjes.mf: merge solfa heads into main note heads.
15565
15566         * mf/feta-generic.mf (else): remove solfa.
15567
15568         * mf/feta-bolletjes.mf (tishape): remove unicode test.
15569
15570         * scm/define-context-properties.scm
15571         (all-user-translation-properties): add shapeNoteStyles property.
15572
15573         * lily/shape-note-heads-engraver.cc (process_music): new file.
15574
15575         * lily/event.cc (transpose): call Event::transpose() for
15576         transposing the tonic.
15577
15578 2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
15579
15580         * scm/output-gnome.scm: Save some pointers about pango/fontconfig
15581         Unicode/OpenType and AFM.
15582
15583         * lily/include/guile-compatibility.hh (scm_from_bool): Add.
15584
15585 2004-11-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15586
15587         * lily/grob.cc (Grob): idem. Plugs mem leaks. 
15588
15589         * lily/context.cc (Context): unprotect key from ctor.
15590
15591         * scm/stencil.scm (stack-lines): return empty-stencil if argument
15592         is '()
15593         (stack-stencils): idem.
15594
15595         * Documentation/user/changing-defaults.itely (Creating titles):
15596         document new title layout options.
15597
15598         * lily/parser.yy (lilypond_header_body): copy previous
15599         $globalheader if present.
15600
15601         * lily/ly-module.cc (LY_DEFINE): rename ly:import-module to
15602         ly:module-copy
15603         
15604         * scm/page-layout.scm (marked-up-headfoot): remove old functions.
15605
15606         * scm/titling.scm: remove old titling functions
15607
15608         * lily/stencil.cc (translate): remove absolute dimension.
15609
15610         * ly/titling-init.ly (oddFooterMarkup): new file. Generate titles
15611         via markup.
15612
15613         * scm/page-layout.scm (marked-up-headfoot): create header/footer
15614         field from user-supplied markup
15615
15616         * scm/define-markup-commands.scm (on-the-fly): new markup
15617         command. Enter SCM markup procedure directly in Scheme.
15618         (fromproperty): new markup command. Read markup from props argument.
15619
15620         * scm/titling.scm (marked-up-title): create title via
15621         user-specified markup. 
15622
15623         * scm/define-markup-commands.scm (column): remove empty stencils
15624         from column.
15625
15626         * lily/ly-module.cc (LY_DEFINE): use ly_module_lookup(). This does
15627         not have side-effect of creating variable stub.
15628
15629         * lily/stencil-scheme.cc (LY_DEFINE): add ly:stencil-empty?
15630
15631 2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
15632
15633         * scm/encoding.scm (coding-alist): 
15634         * scm/font.scm (add-ec-fonts):
15635         * ly/paper-defaults.ly: Use actual name for EC fontencoding:
15636         Extended-TeX-Font-Encoding---Latin.
15637
15638         * lily/side-position-interface.cc (general_side_position): Add
15639         actual offset to error message (avoid constant error messages).
15640
15641         * lily/all-font-metrics.cc (find_font): Add "lm" to try-AFM-first
15642         block.
15643
15644         * lily/font-select.cc (select_encoded_font)
15645         (get_font_by_mag_step, get_font_by_design_size): 
15646         * lily/modified-font-metric.cc (Modified_font_metric): 
15647         * lily/paper-def.cc (find_scaled_font): Add font_encoding parameter.
15648
15649         * scm/encoding.scm (coding-alist): Add fetaDynamic.
15650         (read-encoding-file): Bugfix: do not require space after bracket.
15651
15652         * scm/font.scm (add-cork-lm-fonts): Remove lmbxi8 and lmbxi14,
15653         these do not exist.
15654
15655 2004-11-20  Graham Percival  <gperlist@shaw.ca>
15656
15657         * Documentation/user/notation.itely: added info about typesetting
15658         boxed bar numbers.
15659
15660 2004-11-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15661
15662         * flower/interval.cc (T_to_string): gcc4 fixes.
15663
15664         * scm/define-markup-commands.scm (fill-line): use
15665         stack-stencils. This fixes problems with putting already centered
15666         stencils in a line.
15667
15668         * VERSION: release 2.5.1
15669
15670         * lily/bar-line.cc (get_staff_bar_size): add line thickness.
15671
15672 2004-11-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15673
15674         * input/example-[1-3].ly: simplify.
15675
15676         * lily/cluster-engraver.cc (try_music): react to busy-playing-event
15677
15678         * scm/output-ps.scm (new-text): new function. Use glyphshow to
15679         show glyphs.
15680
15681         * scm/encoding.scm (decode-byte-string): new function.
15682
15683         * scripts/convert-ly.py (conv): add warning about
15684         set-global-staff-size.
15685
15686         * Doxyfile: add. 
15687
15688         * scripts/convert-ly.py (conv): add raggedlastbottom rule
15689         (conv): warn for TextSpanner split.
15690         (conv): warn for textheight.
15691
15692 2004-11-19  Jan Nieuwenhuizen  <janneke@gnu.org>
15693
15694         * GNUmakefile.in (install-WWW): Invoke install-info, so that when
15695         building the documentation, info with images are installed.
15696         (final-install): Fix description.  Mention sourcing of login
15697         scripts (instead of running).
15698
15699 2004-11-18  Jan Nieuwenhuizen  <janneke@gnu.org>
15700
15701         * Debian lmodern support.  Note that LilyPond will issue warnings
15702         
15703             no such encoding: "FontSpecific"
15704
15705           The font selection mechanism wants to get the encoding from the
15706           font itself, but the idea of lmodern is that it is usable with
15707           different encodings, ie, Lily should get the encoding from the
15708           font tree, rather than the font itself.  This would require some
15709           more work.
15710         
15711         * configure.in: Test for and accept lmodern if EC fonts not found.
15712
15713         * scm/framework-tex.scm (font-load-command): TeX font name
15714         mangling for latin1 encoded cork-lm fonts.
15715         (convert-to-ps): Load lm.map if available.
15716
15717         * ly/paper-defaults.ly: Use cork-lm encoding if ec is not
15718         available.
15719
15720         * scm/encoding.scm (coding-alist): Add cork-lm encoding.
15721
15722         * scm/font.scm: Add header.  Autoload cork-lm and ec fonts if
15723         available.
15724
15725         * lily/kpath.cc (ly_kpathsea_find_file): Rename.  Do not use
15726         path for absolute file name, that is silly.
15727
15728         * lily/score-engraver.cc (initialize): 
15729
15730         * Documentation/user/GNUmakefile (local-install-info): Invoke
15731         install-info --remove first.
15732
15733         * #include cleanup (Andreas Scherer).
15734
15735 2004-11-18  Heikki Junes  <hjunes@cc.hut.fi>
15736
15737         * input/test/script-abbreviations.ly: fix typos.
15738
15739 2004-11-17  Werner Lemberg  <wl@gnu.org>
15740
15741         * python/lilylib.py (options_help_str): Support pretty-printing of
15742         newlines in fourth element of option description.
15743
15744         * scripts/lilypond-book.py (option_definitions): Use new lilylib
15745         feature.
15746         Sort options.
15747
15748         * Documentation/user/lilypond-book.itely: Finish update.
15749
15750 2004-11-17  Jan Nieuwenhuizen  <janneke@gnu.org>
15751
15752         * Documentation/user/macros.itexi: Add comment about \command.
15753
15754         * Documentation/user/lilypond.tely:
15755         * Documentation/user/lilypond-book.itely: Fix names of lilypond
15756         and lilypond-book nodes, so that `info lilypond' visits the manual
15757         at top level, and `info lilypond-book' visits the lilypond-book
15758         section.
15759
15760         * Documentation/user/GNUmakefile (local-install-info): Fix rules
15761         and packager messages.
15762
15763         * lily/pangofc-afm-decoder.cc: Update test.
15764
15765 2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
15766
15767         * scm/lily-library.scm (char->unicode-index): New function.
15768
15769         * scm/output-gnome.scm: 
15770         * scm/output-svg.scm: Cleanup.  Map custom fonts to PUA.
15771
15772         * Proper naming of file name throughout; s/filename/file[-_]name/.
15773
15774         * lily/modified-font-metric.cc ("ly:font-encoding"): New function.
15775
15776         * lily/pangofc-afm-decoder.cc (pango_fc_afm_get_glyph): Map onto PUA.
15777
15778 2004-11-16  Werner Lemberg  <wl@gnu.org>
15779
15780         * scripts/lilypond-book.py: The Lord has commanded me to use only
15781         tabs for indentation.  Your humble servant obeys.
15782
15783 2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
15784
15785         * scm/output-svg.scm: Font fixes.  Sodipodi now groks svg
15786         including font, if LilyPond-feta font is only feta font in path.
15787
15788         * scm/output-gnome.scm (text): Revert to file name of font if font
15789         has no name.  Fixes ec font selection.
15790         (char): Bugfix: do not utf8 twice.  Fixes clefs.
15791
15792         * scm/framework-svg.scm:
15793         * scm/output-svg.scm: New file.  TODO: figure out how to
15794         do character by index in font.
15795
15796         * scm/output-sodipodi.scm: Remove.
15797
15798         * scm/output-ps.scm (stem): Remove.
15799
15800 2004-11-15  Jan Nieuwenhuizen  <janneke@gnu.org>
15801
15802         * scm/output-gnome.scm (beam): New function.
15803         (slur): Round corners.
15804         (round-filled-box): Round corners.
15805
15806 2004-11-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15807
15808         * scm/output-gnome.scm (beam): add function.
15809         (draw-line): new routine.
15810         (dashed-line): stub; call draw-line
15811         (polygon): new routine.
15812
15813 2004-11-15  Werner Lemberg  <wl@gnu.org>
15814
15815         * Documentation/user/lilypond-book.itely: Revise section on
15816         lilypond-book options.
15817         Other minor fixes.
15818
15819         * scripts/lilypond-book.py: Change indentation to 4.
15820         Minor formatting.
15821
15822 2004-11-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15823
15824         * lily/system.cc (apply_tweaks): new function. Run tweaks on all
15825         grobs that have tweaks specced.
15826         
15827 2004-11-14  Heikki Junes  <hjunes@cc.hut.fi>
15828
15829         * Documentation/user/sound-output.itexi: add code snippets for MIDI.
15830
15831 2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
15832
15833         * lily/font-metric.cc (get_indexed_char_stencil): Bugfix: get
15834         actual char #, not 0 based index.
15835
15836         * lily/system-start-delimiter.cc (staff_brace): Start at 65.
15837
15838         * mf/feta-beugel.mf: Actually start at char #65.  Add header.
15839         Warning: do make -C mf clean.
15840
15841         * lily/context-property.cc: Compile fix.
15842
15843         * scm/output-gnome.scm: Add ec-fonts-mftraced to ~/.fonts.conf.
15844         Grok ec-fonts, braces and dynamics.
15845
15846         * scm/framework-gnome.scm (gnome-main): Register braces with pango.
15847
15848 2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15849
15850         * lily/include/tweak-registration.hh: new file.
15851
15852         * lily/tweak-registration.cc: new file.
15853
15854         * scm/framework-gnome.scm (save-tweaks): use new key mechanism for
15855         saving tweaks.
15856
15857         * scm/output-gnome.scm (text): comment dribble.
15858
15859 2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
15860
15861         * lily/pangofc-afm-decoder.cc (main): Test more feta fonts.
15862
15863         * scm/output-gnome.scm (bezier-sandwich): New function.  Reset
15864         path-def before using.  Fixes muchtomany slurs in wrong places
15865         bug.
15866
15867 2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15868
15869         * lily/grob-scheme.cc (LY_DEFINE): add new function ly:grob-key.
15870
15871         * lily/include/object-key-undumper.hh (Module): new file.
15872
15873         * lily/object-key-undumper.cc (Module): New file. Deserialize
15874         keys. SCM bindings
15875
15876         * lily/object-key-dumper.cc (Object_key_dumper): idem.
15877         Provide SCM bindings.
15878
15879         * lily/include/object-key-dumper.hh (class Object_key_dumper): 
15880         new file. Serialize object keys.
15881         
15882         * lily/object-key.cc (dump): new function.
15883         (as_scheme): new virtual function
15884         (undump): new function
15885         (undumpers): new table.
15886
15887         * lily/include/global-context.hh (Context): take \score key upon init.
15888
15889         * lily/object-key-dumper.cc (serialize_key): new file.
15890
15891         * lily/include/object-key-dumper.hh (class Object_key_dumper): new file.
15892
15893         * lily/lily-lexer.cc: remove \quote.
15894
15895         * lily/lookup.cc (triangle): rewrite, obviating symmetric_x_triangle().
15896
15897         * lily/context.cc (Context): take key argument in ctor.
15898         (create_context): new function
15899
15900         * lily/grob.cc (Grob): take key argument in ctor.  
15901
15902         * lily/lilypond-key.cc (do_compare): new file.
15903
15904         * lily/object-key.cc (Object_key): new file.
15905
15906         * lily/include/object-key.hh (class Object_key): new file.
15907
15908         * lily/include/lilypond-key.hh (class Lilypond_context_key): new file.
15909
15910 2004-11-13  Graham Percival  <gperlist@shaw.ca>
15911
15912         * Documentation/user/lilypond-book.itely: add small warning about
15913         noindent default in lilypond-book.
15914
15915         * Documentation/user/converters.itely: add examples for convert-ly.
15916
15917         * Documentation/user/examples.itely: change version string in templates
15918         to 2.4.0.
15919
15920 2004-11-12  Karl Hammar  <karl@aspodata.se>
15921
15922         * GNUmakefile.in (local-WWW-post): `find ...` overflows the
15923         cmdline, use xargs instead (backportme)
15924
15925 2004-11-10  Andreas Scherer  <andreas_mutopia@freenet.de>
15926         
15927         * Documentation/user/: Numerous fixes in the user manual.
15928
15929 2004-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15930
15931         * lily/parser.yy (re_rhythmed_music): search music expression for
15932         context-id, surround by \new Voice if not found. Fixes:
15933         addlyrics-second-staff.ly
15934
15935         * VERSION: 2.5.0 released.
15936         
15937 2004-11-12  Jan Nieuwenhuizen  <janneke@gnu.org>
15938
15939         * Documentation/index.html.in: Fix url to one big page.  (backportme)
15940
15941         * Documentation/user/GNUmakefile: Separate rules for split and
15942         unsplit html documents.  Remove perl massaging.  (backportme)
15943
15944 2004-11-11  Graham Percival  <gperlist@shaw.ca>
15945
15946         * Documentation/user/lilypond-book.itely: add short warning about
15947         \lilypond{} in LaTeX docs.
15948
15949 2004-11-11  Jan Nieuwenhuizen  <janneke@gnu.org>
15950
15951         * stepmake/aclocal.m4: Barf if kpathsea/kpathsea.h is not
15952         found.  (backportme)
15953
15954         * Documentation/topdocs/INSTALL.texi (ec-fonts-mtraced): Add
15955         version requirement.  (backportme)
15956
15957         * configure.in: Be explicit about old versions of
15958         ec-fonts-mtraced.  (backportme)
15959
15960         * lily/context-selector.cc (set_tweaks): New function.
15961         * lily/grob-selector.cc (set_tweaks): (Re)set hash table.  Fixes
15962         web with -DTWEAK.
15963
15964         * Documentation/user/introduction.itely (Automated engraving):
15965         Remove fragment option.  Fixes web.
15966
15967         * lily/context-property.cc (make_item_from_properties):
15968         * lily/context.cc (add_context)[TWEAK]: Tweak registration behind
15969         #ifdef.
15970
15971         * scm/define-context-properties.scm
15972         (all-internal-translation-properties): Add tweakRank and tweakCount.
15973
15974         * lily/grob.cc: 
15975         * scm/define-grob-properties.scm (all-internal-grob-properties):
15976         Add tweak-rank and tweak-count.
15977
15978 2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
15979
15980         * scm/output-gnome.scm (string->utf8-string, char->utf8-string):
15981         New function.
15982         (text): Use them.
15983
15984         * scm/framework-gnome.scm (item-event): Add support from TLA.  Support
15985         animated/opaque grob dragging tweaks.
15986
15987         * buildscripts/guile-gnome.sh: Update.
15988
15989 2004-11-10  Mats Bengtsson  <mabe@s3.kth.se>
15990
15991         * scm/define-grobs.scm (all-grob-descriptions): Added
15992         line-interface to the LigatureBracket object.
15993
15994 2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
15995
15996         * scm/framework-gnome.scm (item-event): Support non-animated mouse
15997         dragging tweaks.
15998
15999         * lily/lily-guile.cc (ly_to_string, ly_to_symbol): New function.
16000
16001         * lily/context-selector.cc (store_context): New function.
16002
16003         * lily/grob-selector.cc (register_grob)[TWEAK]: Apply tweak.
16004         (store_grob): New function.
16005         (identify_grob): Add Moment parameter.
16006
16007         * lily/lily-parser.cc (parse_file)[TWEAK]: Read .ly.t file if it
16008         exists.
16009
16010         * scm/framework-gnome.scm (save-tweaks): Write as alist.
16011
16012 2004-11-09  Jan Nieuwenhuizen  <janneke@gnu.org>
16013
16014         * scm/framework-gnome.scm (item-event): Print grob id.
16015         (save-tweaks): New function.
16016         (tweak): New funtion.
16017         (item-event): Use it, bound to arrow keys.
16018
16019         * lily/context-property.cc (make_item_from_properties): Register grob.
16020         * lily/context.cc (add_context): Register context.
16021
16022         * lily/include/context-selector.hh:
16023         * lily/include/grob-selector.hh:
16024         * lily/context-selector.cc:
16025         * lily/grob-selector.cc: New file.
16026
16027 2004-11-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16028
16029         * lily/slur.cc: add 'positions to interface
16030
16031         * lily/main.cc: reinstate PS as standard output format. 
16032
16033         * scm/framework-tex.scm (output-preview-framework): print systems
16034         up to first non title system.
16035
16036         * lily/grace-engraver.cc (start_translation_timestep): split
16037         scm_cadddr
16038         
16039 2004-11-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16040
16041         * lily/quote-iterator.cc (Module): remove old quote-iterator
16042
16043         * scm/define-music-types.scm (music-descriptions): move
16044         NewQuoteMusic over QuoteMusic
16045
16046         * Documentation/user/notation.itely (Formatting cue notes): use
16047         \cueDuring.
16048
16049         * lily/new-quote-iterator.cc (quote_ok): new function.
16050
16051         * input/regression/quote-cue-during.ly: new file.
16052
16053         * input/regression/quote-grace.ly: new file.
16054
16055         * scm/define-context-properties.scm (Module): change definition of
16056         graceSettings
16057
16058         * lily/context-property.cc (Module): rename from
16059         translator-property.cc
16060
16061         * lily/context.cc (context_name_symbol): new function
16062
16063         * lily/grace-engraver.cc: new file. Set properties for grobs based
16064         on the grace-ness of now_moment().
16065
16066         * scm/music-functions.scm (add-grace-property): use list
16067         iso. vector for graceSettings
16068         remove set-{start,stop}-grace-properties. 
16069
16070         * lily/new-quote-iterator.cc (construct_children): set
16071         quote_outlet_ if no quoted-context-{id,type} specified.
16072
16073         * scripts/convert-ly.py (conv): \quote -> \quoteDuring.
16074
16075         * lily/parser.yy (command_element): remove \quote.
16076
16077         * ly/music-functions-init.ly (location): add quoteDuring music
16078         function. 
16079
16080         * lily/lexer.ll: allow \encoding in lyrics as well.  Remove
16081         optional semicolon. (backportme)
16082
16083 2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
16084
16085         * python/GNUmakefile (STEPMAKE_TEMPLATES): Unset USER_LDFLAGS, no
16086         need to link to GUILE et al.
16087
16088 2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16089
16090         * scm/define-music-properties.scm (all-music-properties): add
16091         quoted-context-type, quoted-context-id.
16092
16093         * scm/lily.scm (type-check-list): new function.
16094         
16095         * scm/lily-library.scm: new file. Generic library routines.
16096
16097         * lily/parser.yy (Generic_prefix_music): move typechecking out of
16098         parser.
16099
16100         * ly/music-functions-init.ly: add quoteDuring function.
16101
16102         * lily/include/music-iterator.hh (class Music_iterator): rename
16103         set_translator -> set_context
16104
16105         * lily/parser.yy (Generic_prefix_music_scm): add
16106         MUSIC_FUNCTION_SCM_SCM_MUSIC
16107
16108         * scm/lily.scm (sanitize-command-option): new function. (backportme)
16109
16110         * scm/framework-tex.scm (header): sanitize TeX paper size.
16111         (backportme)
16112
16113 2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
16114
16115         * elisp/lilypond-indent.el (LilyPond-indent-level): 2 is now standard.
16116
16117         * tex/lilyponddefs.tex: If no inputencoding use latin1.  (backportme)
16118
16119         * scm/framework-tex.scm (font-load-command): Use T1 if no
16120         font-encoding set.  (backportme)
16121
16122         * scm/lily.scm (postscript->pdf): Remove .pdf file if it
16123         exists before converting.  (backportme)
16124
16125         * scm/framework-tex.scm (convert-to-dvi): Remove .dvi file if it
16126         exists before converting.  (backportme)
16127         (convert-to-ps): Remove .ps file if it exists before
16128         converting.  (backportme)
16129
16130         * lily/lexer.ll: Remove extra progress newline, use present tense.
16131
16132         * scm/paper.scm (paper-alist): public.
16133         * scm/framework-tex.scm (convert-to-ps):
16134         * scm/lily.scm (postscript->pdf): Do not leak papersizename into
16135         command line.
16136
16137 2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16138
16139         * scm/lily.scm (ly:system): add > /dev/null 2>&1 . (backportme)
16140
16141         * lily/recording-group-engraver.cc (derived_mark): mark
16142         now_events_. (backportme)
16143
16144 2004-11-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16145
16146         * mf/GNUmakefile: use Fedora-3 in download link. (backportme.)
16147
16148         * scm/framework-tex.scm (convert-to-dvi): use ly:system for
16149         invoking latex. (backportme.)
16150
16151         * lily/stem.cc (off_callback): center stems for all rest stems.
16152
16153 2004-11-05  Werner Lemberg  <wl@gnu.org>
16154
16155         * Documentation/user/lilypond.tely: Add more guidelines for writing
16156         lilypond texinfo documents.
16157
16158 2004-11-05  Heikki Junes  <hjunes@cc.hut.fi>
16159
16160         * Documentation/index.html.in: remove <hr>.
16161
16162         * THANKS: change 2.3 to 2.4.
16163
16164 2004-11-05  Jan Nieuwenhuizen  <jannneke@gnu.org>
16165
16166         * scm/output-gnome.scm: More fontconfig comment.
16167
16168 2004-11-05  Pedro Kroger  <kroeger@pedrokroeger.net>
16169
16170         * GNUmakefile.in ($(builddir)/share/lilypond-force): create the
16171         <package> directory in $(builddir)/share according with
16172         PACKAGE_NAME defined in the VERSION file.
16173
16174 2004-11-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16175
16176         * lily/beam.cc (rest_collision_callback): use local beam
16177         multiplicity.
16178
16179         * input/regression/stem-stemlet.ly: new file.
16180
16181         * lily/stem.cc (add_head): store rests as well.
16182
16183         * scm/define-grob-properties.scm (all-user-grob-properties): add
16184         stemlet-length
16185
16186         * lily/stem.cc: store rests as well.
16187         
16188         * input/regression/new-slur.ly: mention forcing.
16189
16190 2004-11-04  Werner Lemberg  <wl@gnu.org>
16191
16192         * Documentation/user/*: A new round of layout fixes and document
16193         structure cleanup.
16194
16195 2004-11-04  Heikki Junes <hjunes@cc.hut.fi>
16196
16197         * Documentation/user/lilypond.tely: changes 2.3.x to 2.5.x.
16198
16199 2004-11-04  Jan Nieuwenhuizen  <janneke@gnu.org>
16200
16201         * Documentation/topdocs/INSTALL.texi (Top): Remove geometry.
16202
16203 2004-11-03  Jan Nieuwenhuizen  <janneke@gnu.org>
16204
16205         * Documentation/topdocs/INSTALL.texi (Top): Fix geometry url (dax).
16206
16207         * lily/lily-parser.cc (LY_DEFINE): Remove "Now " from message.
16208
16209         * lily/main.cc (main): Invoke identify.
16210
16211         * scm/lily.scm (postscript->pdf): Remove progress newline.
16212         Write progress to stderr.
16213
16214         * lily/paper-book.cc (output): Remove progress newline.
16215
16216         * scm/framework-tex.scm (convert-to-dvi, convert-to-ps): Call
16217         gettext on user messages, and remove whitespace.
16218
16219         * lily/paper-outputter.cc (get_paper_outputter): Add progress newline.
16220
16221         * scripts/lilypond-latex.py (program_name): Bugfix: use only basename of
16222         argv[0] (Thomas Scharkowski).
16223
16224         * configure.in: Bugfix: add REQUIRED parameter to STEPMAKE_TEXMF
16225         call (carlyannehorse).  Also check for mf and mf-nowin.  Add check
16226         for ec-fonts-mtraced.
16227
16228         * GNUmakefile.in (builddir-exec): Add symlink tex/out.  Fixes
16229         --srcdir build (Bertalan).
16230
16231         * stepmake/aclocal.m4 (STEPMAKE_GUILE_DEVEL): Check for guile
16232         headers and library too (Laura Conrad).
16233
16234         * Documentation/topdocs/INSTALL.texi (Top): Mention development
16235         package for guile too (Laura Conrad).
16236
16237         * lily/main.cc (usage): Typo.
16238
16239 2004-11-02  Werner Lemberg  <wl@gnu.org>
16240
16241         * Documentation/user/notation.ly: More fixes to improve appearance.
16242
16243         * tex/texinfo.tex: Updated from texinfo CVS -- this version provides
16244         better output for multicolumn tables.
16245
16246 2004-11-01  Mats Bengtsson  <mabe@s3.kth.se>
16247
16248         * lily/main.cc (dir_info): Fixed typo in the printouts.
16249
16250 2004-11-01  Werner Lemberg  <wl@gnu.org>
16251
16252         * buildscripts/mf-to-table.py (write_fontlist): Improve formatting
16253         of output.
16254         Set `per_line' to 2; replace hard-coded value with it.
16255
16256         * Documentation/user/*: Many fixes to improve appearance of
16257         printed manual.
16258
16259 2004-11-01  Werner Lemberg  <wl@gnu.org>
16260
16261         * Documentation/user/changing-defaults.itely,
16262         Documentation/user/notation.ly,
16263         Documentation/user/programming-interface.itely: Use @/.
16264         Fix formatting of some lilypond snippets and tables.
16265
16266         * scripts/lilypond-book.py (compose_ly): Provide useful default
16267         for LINEWIDTH in `override'.
16268
16269 2004-10-31  Graham Percival  <gperlist@shaw.ca>
16270
16271         * Documentation/user/invoking.itely: change "3.0" -> "2.4"
16272
16273 2004-10-31  Werner Lemberg  <wl@gnu.org>
16274
16275         Resetting @exampleindent to `5' gives ugly results with texinfo's
16276         DVI output.  Use `@format @exampleindent 0 ... @end format' instead
16277         (if not quoting) to change @exampleindent only locally.
16278
16279         * scripts/lilypond-book.py (NOQUOTE): New variable.
16280         (output) [LATEX]: Remove AFTER and BEFORE.
16281         [TEXINFO]: Remove AFTER and BEFORE.
16282         Fix QUOTE and VERBATIM pattern.
16283         Add NOQUOTE pattern.
16284         (Lilypond_snippet) [output_info, output_latex]: Don't handle AFTER
16285         and BEFORE.
16286         [output_texinfo]: Use NOQUOTE.
16287
16288 2004-10-31  Graham Percival  <gperlist@shaw.ca>
16289
16290         * Documentation/user/changing-defaults.itely: clarify paper
16291         size commands with correct info.
16292
16293         * Documentation/user/lilypond-book.itely: add more docs for
16294         filename extensions.
16295
16296 2004-10-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16297
16298         * VERSION (PATCH_LEVEL): Branch lilypond_2_4, release 2.4.0
16299         (PATCH_LEVEL): start 2.5.0.
16300
16301 #Local variables:
16302 #coding: utf-8
16303 #End:
16304