]> git.donarmstrong.com Git - lilypond.git/blob - ChangeLog
(pure-conversion): move pure-callback
[lilypond.git] / ChangeLog
1 2006-10-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
2
3         * scm/define-grobs.scm (pure-conversion): move pure-callback
4         further into body.
5
6         * scm/script.scm (default-script-alist): set avoid-slur for turn,
7         marcato, stopped, thumb.
8
9 2006-10-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
10
11         * lily/completion-note-heads-engraver.cc (process_music): don't
12         skimp on memory usage.
13
14         * lily/beam.cc (set_stem_lengths): do set_stemend for invisible
15         stems too. Fixes #5
16
17         * lily/parenthesis-engraver.cc (acknowledge_grob): set parent of
18         parenthesis item. This fixes premature Y-extent triggering. Fixes
19         issue #95. 
20  
21         * VERSION (PATCH_LEVEL): bump version.
22
23 2006-10-04  Graham Percival  <gpermus@gmail.com>
24
25         * Documentation/user/advanced-notation.itely: added
26         info about instrument names for piano or other contexts,
27         thanks Marcus!
28
29 2006-10-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
30
31         * mf/feta-bolletjes.mf (solfa_quarter_width): use
32         solfa_base_notewidth as unit for non-DO-notes too.
33
34         * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: update email.
35
36         * VERSION: release 2.9.21
37
38         * Documentation/topdocs/NEWS.tely (Top): simpler, more clearer
39         override.
40
41 2006-10-04  Mats Bengtsson  <mabe@drongo.s3.kth.se>
42
43         * python/lilylib.py (progress): Minor fix.
44
45 2006-10-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
46
47         * lily/note-name-engraver.cc: doc engraver.
48
49         * scm/output-lib.scm (hairpin::calc-grow-direction): new function.
50
51         * lily/dynamic-engraver.cc (process_music): don't set grow-direction.
52
53         * scm/define-grobs.scm (all-grob-descriptions): calc duration-log
54         by callback.
55
56         * lily/stem-engraver.cc (make_stem): don't set duration-log
57
58         * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
59         write snippet-names binary.
60
61         * python/lilylib.py (system): use os.system for mingw32
62
63         * scripts/lilypond-book.py (bindir): use os.pathsep for prepending
64         to $PATH.
65
66         * scm/backend-library.scm: update email address.
67
68         * Documentation/topdocs/NEWS.tely (Top): add duration-log override
69         example.
70
71         * scm/define-grobs.scm (all-grob-descriptions): use callback to
72         calc dot count.
73
74         * lily/dots-engraver.cc (class Dots_engraver): new engraver:
75         handle dot creation separately.
76
77         * lily/tab-note-heads-engraver.cc (process_music): idem.
78
79         * lily/drum-note-engraver.cc (process_music): idem.
80
81         * lily/note-heads-engraver.cc (process_music): idem.
82
83         * lily/rest-engraver.cc: don't set duration-log.
84
85         * scm/output-lib.scm (string-number::calc-text): new function.
86         (note-head::calc-duration-log): new function.
87
88         * lily/fingering-engraver.cc (make_script): remove 'text setting.
89
90         * scm/output-lib.scm (fingering::calc-text): new function.
91
92 2006-10-04  Mats Bengtsson  <mabe@drongo.s3.kth.se>
93
94         * scripts/lilypond-book.py: Fix typo gs-load-font -> gs-load-fonts
95          and include-eps-font -> include-eps-fonts
96
97 2006-10-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
98
99         * lily/multi-measure-rest-engraver.cc: use internalBarNumber
100
101         * lily/timing-translator.cc: list properties.
102         (start_translation_timestep): update internalBarNumber too.
103
104         * scm/define-context-properties.scm
105         (all-user-translation-properties): add internalBarNumber.
106
107         * input/regression/spacing-no-note.ly: new file.
108
109         * buildscripts/output-distance.py (link_file): verbosity for OSError.
110
111         * lily/book.cc: #include cleanup.
112
113         * lily/include/lily-guile-macros.hh: add assert to
114         scm_or_str2symbol(SCM).
115
116         * VERSION (PATCH_LEVEL): bump version.
117
118         * lily/spacing-spanner.cc (musical_column_spacing): handle
119         musical->nonmusical spacing case, where there is no spacing
120         wish. Fixes issue #61.
121
122         * lily/pango-font.cc (text_stencil): allow 'tight' bounds.
123         (pango_item_string_stencil): use logical rect horizontally (to
124         preserve spaces), ink_rect vertically (for time signatures).
125
126         * lily/font-metric.cc (word_stencil): new interface function
127
128         * input/regression/utf-8-mixed-text.ly: new file.
129
130         * lily/percent-repeat-engraver.cc (listen_percent): remove
131         spurious warning.
132
133         * lily/phrasing-slur-engraver.cc (acknowledge_script): only ack
134         non-dynamic scripts. Fixes #30.
135
136         * lily/slur.cc (outside_slur_callback): make offset_scm optional.
137
138         * lily/beam.cc (rest_collision_callback): make prev_offset optional.
139
140         * lily/grob-closure.cc (chain_offset_callback): don't pass 0 but
141         SCM_UNDEFINED for non-existent data.
142
143         * lily/side-position-interface.cc (general_side_position): allow
144         optional current_offset argument for chaining, so combinations of side-position
145         and outside slur callback don't add up.  Fixes issue #92.
146
147         * lily/pango-font.cc (pango_item_string_stencil): use
148         logical_rect. This prevents spaces after words from disappearing,
149         issue #72.
150         
151         * VERSION: release 2.9.20
152
153 2006-10-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
154
155         * scm/define-grob-properties.scm (all-user-grob-properties):
156         mention stencil as user settable.
157
158 2006-10-02  Joe Neeman  <joeneeman@gmail.com>
159
160         * Documentation/user/page.itely (Page formatting): 
161         document auto-first-page-number
162
163         * lily/page-breaking.cc (find_chunks_and_breaks): 
164         * lily/paper-score.cc (calc_breaking): Follow changes to the
165         Constrained_breaking interface
166
167         * lily/constrained-breaking.cc (calc_subproblem): run the main loop
168         here backwards, as an optimisation
169         (initialize): new function; move most of the code in resize () here
170         (combine_demerits): cache ragged_right_
171         (Constrained_breaking): constructor now takes the Paper_score
172
173 2006-10-02  Erik Sandberg  <mandolaerik@gmail.com>
174         
175         * lily/lexer.ll, lily/parser.yy: Add EXPECT_NO_MORE_ARGS token, to
176         avoid parser lookahead for 0-ary functions.
177
178         * lily/translator.cc: Extract event classes from
179         IMPLEMENT_TRANSLATOR_LISTENER for documentation generation.
180
181 2006-10-02  Heikki Junes  <hjunes@gmail.com>
182
183         * po/fi.po: Fix spaces, commas etc. in Finnish translation using
184         KBabel fix tool.
185
186 2006-10-01  Nicolas Sceaux  <nicolas.sceaux@free.fr>
187
188         * scm/layout-page-layout.scm (page-breaking-wrapper): new
189         function. Call the page breaking function selected in the
190         `page-breaking' \paper variable, then the post processing function
191         chosen using the `page-post-process' \paper variable.
192         (line-height): new function. Return the height of a system.
193         (line-minimum-position-on-page): new function. Return the position
194         of a system on page (using the previous line position), only
195         considering between system padding.
196         (stretchable-line?): new function. Says whether a line can be
197         stretched (ie. is not a title nor a single staff system).
198         (page-maximum-space-left): new function. Computes space left on a
199         page, when all systems are separated by their padding.
200
201         * lily/page-breaking.cc (breaking::make_pages): Move page post
202         processing function call to page breaking wrapper (common to all
203         page breakers).
204
205         * lily/paper-book.cc (book::pages): call the page breaking
206         wrapper, instead of the page breaker directly
207
208         * ly/paper-defaults.ly: Add \paper variables for page breaking
209         wrapper and page post processing function. Make
210         `write-page-layout' value depend on the 'dump-tweaks option. Add a
211         `system-maximum-stretch-procedure' variable for holding a function
212         computing the maximum stretch a system allows.
213
214         * scm/layout-page-dump.scm (write-page-breaks): computes the
215         stretch to apply to systems on a page to minimize left
216         space. Dump this stretch length.
217
218         * ly/music-functions-init.ly (spacingTweaks): implement it. Read
219         the system-stretch property of the tweak data to stretch the
220         system.
221         (includePageLayoutFile): Void function which includes the
222         generated page-layout file if it exists and if the page layout
223         dumping is not asked.
224         (scoreTweak): if the score tweak named by the argument exists,
225         return it.
226
227 2006-10-01  Joe Neeman  <joeneeman@gmail.com>
228
229         * lily/page-spacing.cc (compress_lines, uncompress_solution):
230         handle correctly the case where there are multiple \noPageBreaks
231         in a row.
232
233 2006-09-30  Laura Conrad <lconrad@laymusic.org>
234
235         * abc2ly.py adds segno (S) and Coda (O) to articulations.
236         
237         * abc2ly.py fix so that entering " -- " will translate to a -- in
238         the lilypond instead of a " - - "
239         
240 2006-09-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
241
242         * lily/align-interface.cc: fix typo
243
244         * lily/dynamic-text-spanner.cc (print): Add a special case for
245         trill spanner right sides. 
246
247         * scm/define-grobs.scm (all-grob-descriptions): set padding to 0.1
248
249         * lily/align-interface.cc (get_extents_aligned_translates): add
250         support for padding variable.
251
252         * lily/break-align-interface.cc (self_align_callback): oops: use
253         loop variable in guard.
254
255         * input/regression/repeat-percent-grace.ly: new file.
256
257         * lily/percent-repeat-engraver.cc (start_translation_timestep):
258         remember first currentCommandColumn of a grace run. Fixes issue 70.
259
260         * lily/percent-repeat-iterator.cc (class Percent_repeat_iterator):
261         move class definition to CC file.
262
263         * lily/multi-measure-rest.cc (percent): use robust_relative_extent()
264
265         * lily/slash-repeat-engraver.cc (listen_percent): don't warn for
266         measure-long  repeats.
267
268         * flower/include/international.hh: include stdarg.h
269
270 2006-09-30  Joe Neeman  <joeneeman@gmail.com>
271
272         * lily/page-turn-page-breaking.cc (calc_demerits): now that we allow
273         put_systems_on_pages to return an empty result, we need to assign
274         demerits properly in that case.
275         (put_systems_on_pages): Make the number of pages depend on the
276         evenness of page_number. Add auto-first-page-number.
277         (calc_subproblem): ensure that the page-number is even for the
278         left-hand page. Warn if the first page-turn doesn't fit onto the
279         first (right-hand) page.
280
281         * lily/page-spacing.cc (solve): bug: demerits_ would always be inf
282         (min_page_count): make this publicly accessible
283         (min_page_count): fix a bug when there are forced page breaks that
284         was introduced when I made this loop run backwards
285         (space_systems_on_n_pages, space_systems_on_n_or_one_more_pages):
286         replace space_systems_on_min_pages with these two. The logic in
287         space_systems_on_min_pages was getting too convoluted and is better
288         contained in page-turn-page-breaking.
289
290         * lily/page-turn-engraver.cc (breakable_column): remove an always-true
291         conditional
292         (breakable_column): typo
293
294         * lily/source-file.cc (get_line): fix off-by-one error
295         and clean up some of the logic
296
297 2006-09-29  Joe Neeman  <joeneeman@gmail.com>
298
299         * lily/page-breaking.cc (make_pages): honour the first-page-number
300         property
301
302 2006-09-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
303
304         * VERSION (PACKAGE_NAME): bump version.
305
306 2006-09-26  Pal Benko  <benko.pal@gmail.com>
307
308         * scm/parser-clef.scm: add petrucci-f3 and -f4 clefs
309         (the latter is the same as petrucci-f which is kept for compatibility)
310
311 2006-09-26  Erik Sandberg  <mandolaerik@gmail.com>
312         
313         * lily/part-combine-iterator.cc: solo1-event -> solo-one-event
314
315 2006-09-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
316
317         * lily/global-context.cc (run_iterator_on_me): break out of loop
318         if moment doesn't increase.
319
320         * scm/define-grob-properties.scm (all-user-grob-properties): add
321         forced property.
322
323         * lily/accidental.cc (after_line_breaking): read forced property.
324
325         * lily/accidental-engraver.cc (process_acknowledged): set 'forced
326         property.
327
328         * input/regression/accidental-forced-tie.ly:  new file.
329
330 2006-09-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
331
332         * ly/engraver-init.ly: set ignoreFiguredBassRest in Staff context.
333
334         * lily/figured-bass-engraver.cc: only listen to rest events if
335         ignoreFiguredBassRest is not set.
336
337         * scm/define-context-properties.scm
338         (all-user-translation-properties): add ignoreFiguredBassRest property
339
340 2006-09-24  Joe Neeman  <joeneeman@gmail.com>
341
342         * lily/paper-book.cc (get_system_specs):
343         (set_system_penalty): fix breakbefore.
344         We used to set a penalty on the system after the break, now we
345         set a permission on the system before the break
346
347         * lily/grob-property.cc: add scm debugging hooks into
348         property modification
349
350         * lily/context-property.cc:
351         * lily/engraver.cc:
352         rename make_foo_from_properties to internal_make_foo and
353         move it from context-property.cc to a member function of
354         Engraver.
355         
356         * lily/include/lily-guile-macros.hh:
357         overload ly_symbol2scm macro so that there is no more need
358         to use internal_foo
359
360         * lily/volta-repeat-iterator.cc:
361         * lily/tweak-engraver.cc:
362         * lily/tuplet-bracket.cc:
363         * lily/span-bar-engraver.cc:
364         * lily/script-engraver.cc:
365         * lily/prob-scheme.cc:
366         * lily/pointer-group-interface.cc:
367         * lily/parser.yy:
368         * lily/grob-scheme.cc:
369         * lily/grob-property.cc:
370         * lily/context.cc:
371         * lily/context-property.cc:
372         * lily/break-substitution.cc:
373         * lily/break-align-engraver.cc:
374         * lily/axis-group-interface.cc:
375         * lily/align-interface.cc:
376         remove calls to internal_FOO
377
378         * lily/system-start-delimiter-engraver.cc:
379         * lily/parenthesis-engraver.cc:
380         * lily/accidental-engraver.cc:
381         remove calls to make_foo_from_properties
382
383 2006-09-23  Graham Percival  <gpermus@gmail.com>
384
385         * Documentation/user/programming-iterfaces.itely: fix
386         def-music-function -> define-music... leftover.
387
388 2006-09-23  Joe Neeman  <joeneeman@gmail.com>
389
390         * lily/page-spacing.cc (min_page_count): by running the loop
391         backwards, we can calculate ragged_last properly.
392
393 2006-09-22  Mats Bengtsson  <mabe@drongo.s3.kth.se>
394
395         * ly/titling-init.ly (scoreTitleMarkup): Rename (typo!?)
396         printfirst-page-number -> print-first-page-number
397
398         * python/convertrules.py: corresponding rule.
399
400         * Documentation/user/page.itely (Page formatting): Document the
401         default values of all page layout parameters. 
402
403 2006-09-22  Erik Sandberg  <mandolaerik@gmail.com>
404
405         * lily/lexer.ll: remove limitation on music function arity. New
406         mode extratoken, which inserts extra EXPECT_* tokens after
407         MUSIC_FUNCTION token. Junk all MUSIC_FUNCTION_* tokens.
408
409         * lily/parser.yy: Change grammar for music function accordingly.
410
411         * lily/include/lily-parser.hh: New method get_state, new member
412         hidden_state. Works around a problem when parser fetches
413         MUSIC_FUNCTION token but not the following EXPECT_* token.
414
415         * lily/translator.cc, lily/context.cc:, lily/translator-group.cc:
416         remove try_music
417
418         * lily/*-engraver.cc, lily/*-performer.cc: Remove all remaining
419         references to Music; use ASSIGN_EVENT_ONCE everywhere
420
421         * lily/grob-info.cc: junk *music_cause
422
423         * lily/music.cc: copy eventified articulations to stream event
424
425         * lily/part-combine-iterator.cc: Cleanup using enums
426
427         * lily/translator-group.cc: Junk OldMusicEvent, and associated
428         methods
429
430         * lily/include/engraver.hh: Junk music.hh include
431
432         * lily/stream-event.cc: Changed constructors
433
434 2006-09-21  Graham Percival  <gpermus@gmail.com>
435
436         * Documentation/user/tweaks.itely (Fitting music onto fewer
437         pages): change settings to avoid warning messages.
438
439 2006-09-21  Mats Bengtsson  <mabe@drongo.s3.kth.se>
440
441         * Documentation/user/tweaks.itely (Fitting music onto fewer
442         pages): Add between-system-space setting. 
443
444 2006-09-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
445
446         * lily/accidental-placement.cc (calc_positioning_done): don't
447         trigger Y-extent calculation too early. Use pure_height instead.
448
449         * lily/scale.cc (LY_DEFINE): new file. 
450
451 2006-09-20  Joe Neeman  <joeneeman@gmail.com>
452
453         * lily/page-breaking.cc (find_chunks_and_breaks): ignore breaks
454         that happen at the start of a score: having a zero-length
455         chunk was messing up min_system_count calculations.
456
457         * lily/source-file.cc (get_line): lower_bound, not
458         binary_search. Fixes problem where point-and-click would
459         always point to the first line.
460
461 2006-09-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
462
463         * lily/accidental-placement.cc (calc_positioning_done): also put
464         stems into accidental support. 
465
466         * lily/tie-engraver.cc (process_music): also set tieMelismaBusy if
467         event_ detected.
468
469         * scm/script.scm (default-script-alist): avoid-slur and
470         slur-padding for portato script.
471
472         * lily/stem-tremolo.cc (translated_stencil): new function. 
473         (height): use new function. Fixes tremolos on whole notes.
474
475         * lily/slur-scoring.cc (get_best_curve): don't crash if no optimal
476         slur found.
477
478 2006-09-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
479
480         * scripts/abc2ly.py (try_parse_comment): idem.
481
482         * scripts/lilypond-book.py (find_toplevel_snippets): use 'foo' in
483         bar_string iso. string.find()
484
485         * lily/*.cc: idem.
486
487         * lily/slur.cc (get_curve): always use scm_is_pair() looping
488         scheme lists.  
489
490 2006-09-18  Graham Percival  <gpermus@gmail.com>
491
492         * Documentation/user/basic-notation.itely: add bug
493         warning about ties and octavation/clef.
494
495 2006-09-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
496
497         * VERSION (PACKAGE_NAME): release 2.9.18
498
499 2006-08-29  Milan Zamazal  <pdm@brailcom.org>
500
501         * elisp/lilypond-mode.el (LilyPond-command-alist): Don't try to
502         figure out midi file names right here.
503         
504 2006-09-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
505
506         * scm/framework-ps.scm (dump-stencil-as-EPS): naming pad-eps-boxes.
507
508         * scm/backend-library.scm: option naming:  gs-font-load*s*
509
510         * scm/framework-eps.scm (dump-stencils-as-EPSes): rename option to
511         include-eps-fonts
512
513 2006-09-17  Joe Neeman  <joeneeman@gmail.com>
514
515         * scm/define-music-types.scm (music-descriptions): remove
516         BreakEvent and fix {Page,Line}{Break,Turn}Event so
517         Music::to_event doesn't complain.
518
519         * lily/accidental-placement.cc (ape_compare):
520         * lily/semi-tie.cc (compare): 
521         * lily/note-column.cc (shift_compare): replace by XXX_less
522
523         * lily/tie-formatting-problem.cc (set_chord_outline): 
524         * lily/tie-column.cc (calc_positioning_done): 
525         * lily/system.cc (post_processing)
526         (get_paper_system): 
527         * lily/stem.cc (note_head_positions)
528         (calc_positioning_done): 
529         * lily/spanner.cc (do_break_processing)
530         (find_broken_piece): 
531         * lily/span-bar.cc (print): 
532         * lily/semi-tie-column.cc (calc_positioning_done): 
533         * lily/rest-collision.cc (calc_positioning_done): 
534         * lily/program-option.cc (get_help_string): 
535         * lily/note-collision.cc (get_clash_groups):
536         * lily/new-fingering-engraver.cc (position_scripts):
537         * lily/keyword.cc (Keyword_table):
538         * lily/hara-kiri-group-spanner.cc (request_suicide):
539         * lily/grob-pq-engraver.cc (stop_translation_timestep):
540         * lily/accidental-placement.cc (calc_positioning_done):
541         (stagger_apes):
542         * lily/beam.cc (get_beam_segments):
543         * lily/grob-array.cc (remove_duplicates):
544         use new vector_sort
545         
546         * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily:
547         ragged-last-bottom = ##f (test the new page breaker)
548
549         * flower/include/std-vector.hh (vector_sort): use STL sort stuff
550
551         * scm/define-context-properties.scm
552         (all-internal-translation-properties): remove properties that
553         were used to communicate page-turn stuff to the paper-column
554         engraver.
555
556         * lily/lily-guile.cc (robust_scm2string): new function
557
558         * lily/paper-column-engraver.cc: Clean up page turn stuff
559
560         * lily/page-turn-engraver.cc: Re-write the page turn logic here
561         instead of cluttering up paper-column-engraver.cc
562
563 2006-09-17  Nicolas Sceaux  <nicolas.sceaux@free.fr>
564
565         * scm/layout-page-dump.scm (scm): export utility function names,
566         to allow user writing cutsom dumping functions.
567
568         * scm/layout-page-layout.scm: export utility function names to
569         enable custom page breaking function writing. Tabify.
570         (line-next-space): use ?-suffix only for predicates
571         (page-maximum-space-to-fill): new function. Return the space
572         between first and bottom system of a page, to give to
573         space-systems.
574         (space-systems): use a space-to-fill argument (for instance as
575         computed by page-maximum-space-to-fill) instead of computing
576         internaly this space with the page height. That way, the caller
577         can adjust the space to use.
578         (make-page-from-systems, walk-paths): compute space to fill before
579         calling space-systems.
580
581 2006-09-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
582
583         * scm/script.scm (default-script-alist): set paddings for every
584         type here, increase for portato mark.
585
586         * scm/lily.scm (define-scheme-options): typo: add s, so it is 
587         -dinclude-eps-fonts
588
589 2006-09-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
590
591         * scm/define-grobs.scm (all-grob-descriptions): oops, typo:
592         use spanner::set-spacing-rods
593
594         * lily/note-column.cc: reformat.
595
596         * lily/rest-collision.cc (calc_positioning_done): fix whole/half
597         step positioning for note/rest combinations.
598
599         * input/regression/rest-note-collision.ly: new file.
600
601         * scm/define-grobs.scm (all-grob-descriptions): add
602         springs-and-rods
603
604         * flower/include/std-vector.hh: switch off again.
605
606         * VERSION (PATCH_LEVEL): bump to 2.9.18
607
608         * flower/include/std-string.hh: idem.
609
610         * flower/include/std-vector.hh (_GLIBCXX_DEBUG): set if NDEBUG not set.
611
612 2006-09-15  Mats Bengtsson  <mabe@drongo.s3.kth.se>
613
614         * ly/engraver-init.ly: Make FiguredBass accepted in GrandStaff and
615         PianoStaff. 
616
617 2006-09-08  Joe Neeman  <joeneeman@gmail.com>
618
619         * Documentation/user/page.itely: update page breaking documentation
620
621 2006-09-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
622
623         * lily/note-collision.cc (calc_positioning_done): only access
624         first head if available.
625
626         * lily/tuplet-engraver.cc: add tupletFullLengthNote to description.
627
628         * scm/framework-ps.scm (output-preview-framework): use new name.
629
630         * lily/program-option.cc (internal_set_option): use new names.
631
632         * Documentation/user/SConscript (lilypond_book_flags): update -d
633         variable names.
634
635         * Documentation/user/lilypond-book.itely (Inserting LilyPond
636         output into other programs): new variable names.
637
638         * scm/lily.scm (define-scheme-options): uniformize var names.
639
640         * lily/tuplet-engraver.cc (listen_tuplet_span): verify that
641         tuplets_ is non-empty before popping.
642
643 2006-09-07  Joe Neeman  <joeneeman@gmail.com>
644
645         * lily/spanner.cc (find_broken_piece): 
646         * lily/spacing-spanner.cc (get_columns): 
647         * lily/source-file.cc (get_line): 
648         * lily/simple-spacer.cc (get_column_description): 
649         * lily/keyword.cc (lookup): 
650         use the new binary search.
651
652         * flower/include/std-vector.hh: replace binary_search with
653         a more STL-like version
654
655 2006-09-04  Michael Welsh Duggan  <md5i@cs.cmu.edu>
656
657         * lily/tie-performer.cc: remove unused last_event_ property.
658         (class Tie_performer): add now_tied_heads_ property for
659         partially-tied heads.
660         (acknowledge_audio_element): when adding an Audio_note, put the
661         note in now_tied_heads_ if the audio note is partially tied.
662         (stop_translation_timestep): always include entries in
663         now_tied_heads_ in heads_to_tie_.
664
665         * lily/drum-note-performer.cc (process_music): look for tie-events
666         in the articulations; pass to Audio_note constructor.
667
668         * lily/note-performer.cc (process_music): look for tie-events in
669         the articulations; pass to Audio_note constructor.
670
671         * lily/audio-item.cc (Audio_note): Initialize tie_event_ in
672         constructor.
673
674         * lily/include/audio-item.hh (class Audio_note): add tie_event_.
675         include initializer in constructor.
676
677 2006-09-02  Joe Neeman  <joeneeman@gmail.com>
678
679         * lily/simple-spacer.cc (get_line_forces): Ignore loose columns
680         unless they are breakable. This fixes discrepancies between the forces
681         calculated here and the forces calculated in get_line_configuration.
682
683         * lily/grob.cc (pure_relative_y_coordinate): fix some
684         mis-estimation that was happening with piano staves.
685
686         * lily/constrained-breaking.cc (resize): don't choke if we get a
687         measure that won't fit on a line.
688         (combine_demerits): don't consider uniformity when ragged
689
690         * lily/page-spacing.cc (solve): why the f* were there two of these?
691         (calc_subproblem): properly handle the case where a system is taller
692         than the page.
693
694         * lily/system.cc (get_paper_system): ensure that all the permissions
695         and penalties are passed to the paper systems.
696
697         * lily/page-breaking.cc (create_system_list): support system-count.
698
699         * scm/define-grobs.scm (pure-print-callbacks): add
700         ly:script-interface::print
701
702         * lily/page-spacing.cc (min_page_count): fix calculation of min
703         pages if we are ragged and there are non-zero springs.
704
705         * scm/layout-page-layout.scm: if the pure-height estimates are under
706         the real height, allow space-systems to ignore padding if it is
707         needed in order to fit the systems on one page
708
709         * lily/optimal-page-breaking.cc (try_page_spacing): fix reading
710         ragged properties
711         (solve): fix performance problem. Make sure we always get at least
712         one solution
713
714         * lily/page-breaking.cc (make_pages): include write-page-breaks
715         and page-stencil
716
717         * lily/paper-score.cc (calc_breaking): remove Gourlay breaker
718
719         * scm/define-grobs.scm: add the new slur-callback
720         fix pure-relevant to not exclude grobs whose extent is already
721         calculated
722
723         * ly/paper-defaults.ly: make ly:optimal-breaking the new default
724         page breaker
725
726         * lily/slur.cc (pure_height): new callback to estimate the height
727         of a slur
728
729 2006-09-02  Graham Percival  <gpermus@gmail.com>
730
731         * Documentation/user/invoking.itely: small update on
732         MacOS X notes; thanks Trevor!
733
734 2006-09-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
735
736         * VERSION (MY_PATCH_LEVEL): release 2.9.17
737
738         * lily/lexer.ll: accept EOF in all states.
739
740         * lily/tempo-performer.cc (Tempo_performer): initialize last_tempo_.
741
742         * lily/source-file.cc (Source_file): always 0-terminate character
743         array, to prevent Flex from barfing.
744
745         * lily/global-context.cc (get_output): robustness: don't crash if
746         no Score context found.
747
748         * lily/include/book.hh (class Book): idem.
749
750         * lily/include/context-def.hh (struct Context_def): idem.
751
752         * lily/include/score.hh (class Score): don't derive from Input.
753
754         * lily/book.cc (Book): add a copy ctor. 
755
756         * buildscripts/output-distance.py (FileLink.calc_distance): count
757         orphans in distance too.
758
759         * python/midi.c (midi_parse_track): robustness: don't read past
760         end of string.
761
762         * ly/performer-init.ly: add Control_track_performer, move
763         Tempo_performer and Time_signature_performer to Score.        
764
765         * lily/score-performer.cc (acknowledge_audio_elements): override
766         from base class: add to audio-columns
767
768         * lily/control-track-performer.cc (add_text): new file: generate
769         the control track.
770
771         * lily/performance.cc: move output_header_track to
772         Control_track_performer ()
773
774         * lily/midi-walker.cc (Midi_walker): get channel in constructor.
775
776         * lily/include/midi-item.hh (class Midi_channel_item): insert
777         class into hierarchy, for items that can have a channel setting. Dehungarify.
778
779         * lily/include/performer.hh (class Performer): remove
780         play_element();  move functionality into announce/acknowledge.
781
782         * lily/audio-staff.cc (output): remove channel_ from Midi_track.
783
784         * lily/tie-engraver.cc (stop_translation_timestep): only wipe
785         heads_to_tie_ if there are new heads to tie.  Fixes polyphony in ties.
786
787 2006-08-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
788
789         * lily/tie-engraver.cc (stop_translation_timestep): robustness for
790         ambituses.
791
792         * lily/all-font-metrics.cc: remove TFM support.
793
794         * lily/include/tfm.hh: remove TFM support, TFM reader.
795
796         * lily/include/binary-source-file.hh: remove Binary_source_file.
797
798 2006-08-27  Graham Percival  <gpermus@gmail.com>
799
800         * Documentation/topdocs/NEWS.itely: add @c marker for
801         stuff I've processed.
802
803         * Documentation/user/ various: info from NEWS.
804
805 2006-08-27  Joe Neeman  <joeneeman@gmail.com>
806
807         * lily/paper-column-engraver.cc (finalize): Oops, this change
808         should have gone in on 2006-08-23
809
810 2006-08-26  Mats Bengtsson  <mabe@s3.kth.se>
811
812         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use double
813         quotes to quote arguments. Fixes Windows problem.
814
815         * python/lilylib.py (progress): idem
816
817 2006-08-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
818
819         * scripts/musicxml2ly.py: fix for importing
820         minor key signatures from MusicXML.  (Phillip Kirlin)
821
822 2006-08-24  Phillip Kirlin  <pkirlin@acm.org>
823
824         * python/musicxml.py: 
825         (Attributes.get_key_signature): now correctly retrieves mode from 
826         MusicXML. 
827
828 2006-08-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
829
830         * lily/parser.yy (output_def_body): take ownership of identifier
831         back to C++.
832
833         * Documentation/user/advanced-notation.itely (Metronome marks):
834         update use of \tempo in \midi.
835
836         * VERSION: release 2.9.16
837         
838 2006-08-24  Erik Sandberg  <mandolaerik@gmail.com>
839
840         * input/mutopia/*: upgrade to new midi tempo syntax (repairs make
841         web partially)
842
843 2006-08-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
844
845         * input/regression/tie-chord-partial.ly: clarify example.
846
847         * scm/define-music-properties.scm (all-music-properties): remove
848         untied.
849
850         * ly/music-functions-init.ly: remove \untied.
851
852         * lily/tie-engraver.cc (struct Head_event_tuple): store both
853         stream events and music events.
854         (stop_translation_timestep): search acknowledged heads for
855         tie-event.
856
857         * input/regression/tie-chord-partial.ly: new file.
858
859         * scm/define-markup-commands.scm (char): use ly:wide-char->utf-8
860         for \char markup command.
861
862         * scm/define-event-classes.scm (unlistened-music-event-classes): idem.
863
864         * scm/define-music-types.scm (music-descriptions): consistency:
865         Use solo-{one,two}-event iso. solo-[12]-event.
866
867         * lily/part-combine-engraver.cc (process_music):
868         Use solo-{one,two}-event iso. solo-[12]-event.
869
870         * ly/declarations-init.ly (partCombineListener): add Timing as
871         alias
872
873         * flower/std-string.cc (string_copy): use copy ()
874
875         * lily/source-file.cc (Source_file): use copy(). Remove contents_str0()
876
877 2006-08-24  Graham Percival  <gpermus@gmail.com>
878
879         * Documentation/user/changing-defaults.itely, global.itely,
880         lilypond-book.itely, page.itely: minor changes from mailist.
881
882 2006-08-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
883
884         * buildscripts/mutopia-index.py (allfiles): filter lily-XXX and
885         snippet-map
886
887         * scm/define-context-properties.scm
888         (translator-property-description): robustness: detect type errors
889         in property definitions.
890
891         * lily/parser.yy (score_body): protect SCORE_IDENTIFIER result
892         after getting it from SCM. 
893
894         * lily/smobs.cc (protect_smob): switch off fancy smob protection
895         for now. 
896
897         * lily/include/performer.hh (class Performer): strip get_tempo()
898         method.
899
900         * lily/midi-def.cc: strip file.
901
902         * lily/lexer.ll (Lily_lexer): don't protect hash key separately.
903
904         * lily/include/context-def.hh (struct Context_def): use
905         VIRTUAL_COPY_CONSTRUCTOR().
906
907         * lily/source-file.cc: smobification.
908
909         * lily/include/source-file.hh (class Source_file): smobify
910         Source_file. Trim redundant members.
911
912         * lily/parser.yy (Lily_lexer::try_special_identifiers): unprotect
913         clones after creation. This plugs a huge memory leak.
914
915         * python/convertrules.py (FatalConversionError.sub_tempo):
916         complete rule for \midi{ \tempo }
917
918         * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): idem.
919
920         * input/mutopia/F.Schubert/morgenlied.ly (pianoLH): update tempo.
921
922 2006-08-23  Joe Neeman  <joeneeman@gmail.com>
923
924         * input/regression/optimal-page-breaking-hstretch.ly: test for
925         ragged-last-bottom also
926
927         * lily/paper-column-engraver.cc (finalize): make the end of a score
928         breakable by default. This is to balance out a change in behaviour
929         of the page-turn-breaker which no longer makes the end of a score
930         breakable.
931
932         * lily/paper-book.cc (pages): set the systems_ once the pages are
933         broken
934
935         * lily/page-turn-page-breaking.cc (calc_subproblem): use the new
936         Page_breaking interface.
937
938         * lily/page-breaking.cc (class Page_breaking): make the interface
939         more consistent and provide abstractions for dealing with
940         Line_divisions.
941
942         * lily/optimal-page-breaking.cc (solve): use a more straightforward
943         algorithm. Use the new interface to Page_breaking.
944
945         * lily/page-spacing.cc: better support for ragged-bottom and
946         ragged-last-bottom
947
948 2006-08-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
949
950         * python/convertrules.py (conv): warning on \tempo{}
951
952         * ly/performer-init.ly: set tempoWholesPerMinute.
953
954         * ly/midi-init.ly: remove \midi
955
956         * lily/tempo-performer.cc: look at tempoWholesPerMinute to set
957         MIDI tempo.
958
959         * lily/metronome-engraver.cc (process_music): use tempoUnitCount
960         tempoUnitDuration for determining what to print.
961
962         * lily/lyric-extender.cc: typo.
963
964         * lily/parser.yy (output_def_body): disallow \tempo in \midi{}
965
966         * lily/duration-scheme.cc (LY_DEFINE): ly:duration-length: new
967         function.
968
969         * scm/lily.scm (define-scheme-options): alphabetize, add eps-pad-boxes.
970
971         * scm/framework-ps.scm (dump-stencil-as-EPS): only pad boxes if
972         eps-pad-boxes is set.
973
974         * scripts/lilypond-book.py (main): use -deps-pad-boxes.
975
976         * THANKS: update sponsors.
977
978         * ly/english.ly: quarter tone naming (thanks, Trevor Baca)
979
980         * Documentation/topdocs/NEWS.tely (Top): doc new feature.
981
982         * input/regression/tie-chord-untied.ly: new file.
983
984         * lily/tie-engraver.cc (acknowledge_note_head): check 'untied property.
985
986         * scm/define-music-properties.scm (all-music-properties): add
987         'untied property.
988
989         * buildscripts/mutopia-index.py (allfiles): look for .ly rather
990         than .ly.txt.
991         (headertext_nopics): sanitize no-examples text.
992
993         * scm/page.scm (make-page-stencil): don't rely on extents of
994         page-stencil. This fixes spurious space around .EPS files produced
995         with the EPS backend.
996
997 2006-08-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
998
999         * lily/stencil-scheme.cc (LY_DEFINE): make extent arguments optional.
1000
1001         * lily/hara-kiri-engraver.cc (process_music): remember
1002         keepAliveInterfaces after processing \set
1003
1004         * lily/lyric-extender.cc (print): support left/right-padding for
1005         extenders.
1006
1007         * scm/documentation-generate.scm (string-append): revert lilypond/
1008         path, doc why.
1009
1010 2006-08-20  Graham Percival  <gpermus@gmail.com>
1011
1012         * Documentation/user/lilypond.tely: clarification to
1013         license presentation (not to actual license).
1014
1015         * Documentation/user/basic-notation.itely,
1016         instrument-notation.itely: minor changes.
1017
1018         * input/ {regression, test}/+.ly: clarification to
1019         text (you can click on examples).  Thanks, Mats!
1020
1021         * input/manual/bar-lines.ly: adds ||: repeats.
1022
1023 2006-08-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
1024
1025         * make/ly-vars.make (OMF_FILES): strip ps.gz from OMF_FILES 
1026
1027         * scm/documentation-lib.scm (texi-file-head): category LilyPond.
1028
1029         * Documentation/user/lilypond.tely: strip lilypond/ from info
1030         links, rename to category LilyPond
1031
1032         * lily/pango-font.cc (description_string): new function.
1033
1034         * VERSION: release 2.9.15
1035
1036         * lily/spacing-engraver.cc (stop_translation_timestep): use
1037         Dscho's fix for spacing spanner. 
1038
1039         * scm/define-music-types.scm (music-descriptions): use
1040         apply-output-event for ApplyOutputEvent
1041
1042         * lily/output-property-engraver.cc (listen_apply_output): rename
1043         from listen_layout_instruction.
1044
1045         * lily/piano-pedal-engraver.cc (struct Pedal_type_info): new
1046         function protect()
1047
1048 2006-08-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
1049
1050         * scm/lily.scm (lilypond-all): option read-file-list: substitute
1051         commandline args with contains, split by \n.
1052
1053         * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
1054         write snippet-names file, call with -dread-file-list. Fixes
1055         command limitations on 64-bit systems.
1056
1057         * input/regression/stencil-color-rotation.ly: new file.
1058
1059         * lily/include/translator.hh (struct Acknowledge_information):
1060         revert: don't use Protected_scm in global objects, as GUILE can't
1061         handle gc_unprotect from automated destructors on MacOS X.
1062  
1063         * lily/grob.cc (get_print_stencil): use retval.expr() as base for
1064         color, not the original stencil. Fixes combinations of
1065         color/transparency/rotation. 
1066
1067         * scripts/lilypond-book.py (main): add --formats=eps for
1068         texinfo/latex.
1069
1070         * lily/spacing-engraver.cc (stop_translation_timestep): don't
1071         crash if spacing_ is nonexistent.
1072
1073 2006-08-14  Mats Bengtsson  <mabe@s3.kth.se>
1074
1075         * scripts/lilypond-book.py (output): Remove obsolete(!?)
1076         \catcode`\@=12 in the LaTeX output.
1077
1078 2006-08-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
1079
1080         * scm/define-music-types.scm (music-descriptions):
1081         use sustain-event iso. sustain-pedal-event.
1082
1083 2006-08-11  Joe Neeman  <joeneeman@gmail.com>
1084
1085         * scripts/convert-ly.py: honour the -n command-line switch
1086
1087 2006-08-10  Han-Wen Nienhuys  <hanwen@lilypond.org>
1088
1089         * scm/output-lib.scm (bar-line::calc-glyph-name): add dashed liine
1090         break specification.
1091
1092 2006-08-10  Joe Neeman  <joeneeman@gmail.com>
1093
1094         * Documentation/user: convert-ly the user manual
1095
1096 2006-08-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
1097
1098         * stepmake/aclocal.m4: version check patch (thanks MWD)
1099
1100         * ly/music-functions-init.ly: robustness. Don't crash if
1101         currentBarNumber is not a number.
1102
1103         * VERSION (PATCH_LEVEL): bump.
1104
1105 2006-08-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
1106
1107         * stepmake/aclocal.m4: better version check; handle fooX.Y
1108         binaries too.
1109
1110         * ly/performer-init.ly: instrument name fixup.
1111
1112         * input/manual/chord-names-jazz.ly (banterProperties):
1113         instrumentName update
1114
1115         * scm/define-event-classes.scm (lambda): use ly:is-listened-event-class
1116
1117         * lily/ly-module.cc (ly_module_symbols): use ly_hash_table_keys
1118
1119         * lily/translator.cc (LY_DEFINE): ly:is-listened-event-class: new
1120         function. Use hash tables to check membership.
1121
1122         * lily/general-scheme.cc (LY_DEFINE): new function.
1123
1124         * lily/piano-pedal-engraver.cc (struct Pedal_type_info): idem
1125
1126         * lily/include/translator.hh (struct Acknowledge_information): add
1127         Protected_scm
1128
1129         * ly/music-functions-init.ly: change name to BreathingEvent
1130
1131         * input/regression/*.ly: apply it.
1132
1133         * python/convertrules.py (conv): better instrumentName conversion
1134         rule.
1135
1136         * scm/define-music-types.scm (music-descriptions): add
1137         line-break-event to LineBreakEvent music
1138
1139         * lily/music.cc (to_event): don't crash if music type not set.
1140
1141         * lily/spacing-loose-columns.cc (set_loose_columns): don't barf if
1142         spacing not set.
1143
1144         * lily/spacing-engraver.cc (stop_translation_timestep): set
1145         spacing for proportional notation too.
1146
1147         * scm/translation-functions.scm (format-bass-figure): inspect
1148         stream-event.
1149
1150         * scripts/lilypond-book.py (bindir): add bindir to $PATH.
1151
1152 2006-08-08  Joe Neeman  <joeneeman@gmail.com>
1153
1154         * lily/include/constrained-breaking.hh: add Line_details (Prob*)
1155
1156         * scm/page.scm (make-page): make it friendlier to call (esp. from C++)
1157
1158         * scm/layout-page-layout.scm (make-page-from-systems): new function
1159         (optimal-page-breaks): use the new page-breaking calling convention
1160
1161         * scm/define-context-properties.scm (all-user-translation-properties):
1162         add revokePageTurns
1163
1164         * lily/paper-column-engraver.cc (stop_translation_timestep): add
1165         revokePageTurns  functionality. If there is a special barline within
1166         the breakable region, break there instead of at the end of the region.
1167
1168         * lily/paper-book.cc (pages): use the new page-breaking calling
1169         convention
1170
1171 2006-08-07  Erik Sandberg  <mandolaerik@gmail.com>
1172
1173         * lily/lexer.ll, lily/source-file.cc: Add \sourcefileline command
1174
1175         * scripts/lilypond-book.py: insert \sourcefileline command in
1176         output, so lilypond error messages refer to the spot in the
1177         original .lytex / .itely sourcefile.
1178
1179 2006-08-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
1180
1181         * lily/spacing-loose-columns.cc (set_loose_columns): oops: use
1182         space to next column for distance to fixed col.
1183
1184         * VERSION (PACKAGE_NAME): release 2.9.14
1185
1186         * lily/pitched-trill-engraver.cc (make_trill): do set_parent also
1187         if no accidental.
1188
1189         * lily/accidental-engraver.cc (process_acknowledged): don't create
1190         accidental for trill span event. This fixes spurious accidentals
1191         on trills.
1192
1193 2006-08-04  Mats Bengtsson  <mabe@s3.kth.se>
1194
1195         * scm/define-grob-properties.scm (all-user-grob-properties):
1196         Clarify documentation of side-axis and direction. Thanks to Paul
1197         for the inspiration.
1198
1199         * lily/bar-line.cc: Add documentation for "||:" also in the
1200         interface documentation.
1201
1202 2006-08-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
1203
1204         * lily/spacing-loose-columns.cc (set_loose_columns): bugfix.
1205
1206         * lily/paper-column.cc (set_system): new function.
1207
1208         * lily/spacing-engraver.cc (stop_translation_timestep): store
1209         SpacingSpanner refs in Paper_column.
1210
1211         * lily/spacing-loose-columns.cc (set_loose_columns): rewrite
1212         compute loose clique spacing using GraceSpacing/SpacingSpanner.
1213
1214 2006-08-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
1215
1216         * lily/beam-engraver.cc (listen_beam): add method for
1217         Grace_beam_engraver too.
1218
1219 2006-08-03  Mats Bengtsson  <mabe@s3.kth.se>
1220
1221         * python/convertrules.py: Fix indentation bug that broke
1222         conversion of files older than 1.3.117.
1223         Fix escape error in the description for 2.9.6.
1224
1225 2006-08-02  Erik Sandberg  <mandolaerik@gmail.com>
1226
1227         * lily/*-engraver.cc: convert all try_music functions to listen_*
1228         functions.
1229
1230         * lily/piano-pedal-engraver.cc: some additional cleanups: use
1231         enums to represent pedal types, and calculate more data statically.
1232
1233         * scm/part-combiner.scm (recording-group-emulate): create a
1234         softcoded substitute for recording-group-engraver.cc.
1235
1236         * lily/music.cc: make a common transpose function for events and
1237         music
1238
1239         * ly/declarations-init.ly: change melisma/melismaEnd. Eliminates
1240         ManualMelismaEvent, and obsoletes Melisma_translator.
1241
1242 2006-08-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
1243
1244         * input/test/instrument-name-align.ly: update version.
1245
1246 2006-08-02  Mats Bengtsson  <mabe@s3.kth.se>
1247
1248         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
1249         Doc the --pdf flag to lilypond-book.
1250
1251 2006-07-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
1252
1253         * Documentation/topdocs/NEWS.tely (Top): add description.
1254
1255         * input/regression/tuplet-full-length-note.ly: add file.
1256
1257         * lily/instrument-name-engraver.cc (acknowledge_axis_group):
1258         always store axis group.
1259
1260 2006-07-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
1261
1262         * input/regression/instrument-switch.ly: new file.
1263
1264         * lily/instrument-switch-engraver.cc (process_music): new file.
1265
1266         * ly/engraver-init.ly: add Instrument_switch_engraver
1267
1268         * ly/music-functions-init.ly: \instrumentSwitch
1269
1270         * scm/define-context-properties.scm
1271         (all-user-translation-properties): add instrumentCueName
1272
1273         * scm/define-grobs.scm (all-grob-descriptions): add InstrumentSwitch
1274
1275 2006-07-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
1276
1277         * ly/music-functions-init.ly: music function \transposition.
1278
1279         * lily/parser.yy (command_element): softcode \transposition.
1280
1281         * lily/fall-engraver.cc (process_music): delta-pitch -> delta-step.
1282         (process_music): oops.
1283
1284         * lily/instrument-name-engraver.cc (start_spanner): new
1285         function. Create spanner when property changes.
1286         (stop_spanner): new function.
1287
1288         * python/convertrules.py (conv): add rule.
1289
1290         * lily/instrument-name-engraver.cc: shortVocalName iso. vocNam,
1291         shortInstrumentName iso. instr.
1292
1293         * scm/output-ps.scm (dashed-line): add phase argument to
1294         dashed-line.
1295
1296         * lily/bar-line.cc (dashed_bar_line): new function.
1297         (compound_barline): support \bar "dashed". 
1298
1299         * lily/lily-parser-scheme.cc (LY_DEFINE): only write
1300         --output=DIR to DIR/BASE if it is a dir. 
1301
1302         * flower/file-name.cc (file_part): new function
1303         (dir_part): new function
1304
1305         * lily/lily-parser-scheme.cc (LY_DEFINE): 
1306
1307         * DEDICATION: update
1308
1309 2006-07-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
1310
1311         * lily/instrument-name-engraver.cc: formatting.
1312
1313         * python/convertrules.py (conv): bugfix for \epsfile.
1314
1315 2006-07-25  Joe Neeman  <joeneeman@gmail.com>
1316
1317         * lily/grob.cc:
1318         
1319         * lily/gourlay-breaking.cc: Oops, these should have been included
1320         in my last commit
1321
1322 2006-07-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
1323
1324         * scripts/*.py (program_name): cleanup relocation snippets.
1325
1326         * scripts/convert-ly.py (datadir): remove LILYPONDPREFIX support.
1327
1328 2006-07-24  Joe Neeman  <joeneeman@gmail.com>
1329
1330         * scm/define-grobs.scm (all-grob-descriptions): make NonMusicalPaperColumn
1331         page-breakable by default
1332
1333         * scm/layout-page-layout.scm (space-systems): fix bug where the force isn't
1334         correctly calculated for a single-system page
1335
1336         * scm/lily-library.scm (interval-sane?): also check that the first number is no
1337         bigger than the second number
1338
1339         * lily/simple-spacer.cc (solve): allow compression even when ragged (but we
1340         acknowledge that we aren't satisfying constraints)
1341
1342         * lily/hara-kiri-group-spanner.cc (request_suicide): give equal treatment to
1343         non-Items
1344
1345         * lily/grob.cc (pure_height): add minimum-Y-extent
1346
1347         * lily/gourlay-breaking.cc (solve): don't ignore a compression force, even if we're
1348         ragged
1349
1350         * lily/constrained-breaking.cc: convert code to use new Matrix class
1351         (get_best_solution): new function
1352
1353         * scm/page.scm (make-page-stencil): don't crash if we annotate-layout when there
1354         is a page with no systems
1355
1356 2006-07-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
1357
1358         * VERSION (PACKAGE_NAME): release 2.9.13
1359
1360         * scm/define-grobs.scm (all-grob-descriptions): remove stray
1361         assignment.
1362
1363 2006-07-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
1364
1365         * Documentation/topdocs/NEWS.tely (Top): doc new features.
1366
1367         * scm/output-lib.scm (grace-spacing::calc-shortest-duration): new
1368         function.
1369
1370         * scm/define-grob-properties.scm (all-user-grob-properties):
1371         remove grace-space-factor.
1372
1373         * scm/define-grob-interfaces.scm (grace-spacing-interface): add
1374         grace-spacing-interface
1375         (spacing-options-interface): add.
1376
1377         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add Grace_spacing_engraver
1378
1379         * lily/spacing-options.cc (get_duration_space): move function from spacing-basic.cc
1380
1381         * lily/spacing-basic.cc (note_spacing): do init_from_grob on
1382         GraceSpacing object.
1383
1384         * lily/note-spacing.cc: fix prop list formatting
1385
1386         * lily/beaming-pattern.cc (de_grace): new function. Sensible
1387         beaming for grace notes too.
1388
1389         * input/regression/spacing-grace.ly: update.
1390
1391         * lily/grace-spacing-engraver.cc: new file.
1392
1393         * lily/spacing-spanner.cc: add strict-grace-spacing.
1394
1395 2006-07-20  Graham Percival  <gpermus@gmail.com>
1396
1397         * lily/parser.yy: compile fix.
1398
1399 2006-07-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
1400
1401         * scm/define-grobs.scm (all-grob-descriptions): typo.
1402
1403         * scm/framework-eps.scm (dump-stencils-as-EPSes): just strip
1404         .eps extension from includegraphics.
1405
1406         * scripts/lilypond-book.py (main): add support for --pdf. 
1407
1408         * lily/spacing-spanner.cc (calc_common_shortest_duration): use
1409         callback to compute common shortest duration.
1410         (set_springs): typo.
1411
1412         * scm/define-grob-properties.scm (all-user-grob-properties): add
1413         strict-grace-spacing.
1414
1415         * lily/spacing-determine-loose-columns.cc (is_loose_column):
1416         support float_grace_columns_.
1417
1418         * lily/spacing-options.cc (init_from_grob): new file.
1419
1420         * Documentation/topdocs/NEWS.tely (Top): doc tupletFullLengthNote.
1421
1422         * input/regression/spacing-loose-grace.ly: new file.
1423
1424         * Documentation/topdocs/NEWS.tely (Top): document new feature.
1425
1426         * lily/tuplet-engraver.cc (struct Tuplet_description): read
1427         tupletFullLengthNote too. Choose right bound depending on value.
1428
1429         * input/regression/tuplet-full-length-note.ly: new file.
1430
1431 2006-07-19  Erik Sandberg  <mandolaerik@gmail.com>
1432
1433         * lily/*-performer.cc: Converted try_music to listen_*
1434
1435         * lily/grob-info.cc, lily/engraver.cc: represent the cause of grob
1436         as a stream-event internally. Introduce event_cause (), deprecate
1437         music_cause ().
1438
1439         * scm/define-music-types.scm: Removed BusyPlayingEvent
1440         
1441 2006-07-19  Mats Bengtsson  <mabe@s3.kth.se>
1442
1443         * Documentation/user/advanced-notation.itely (Font selection):
1444         Document how to get a list of available fonts using 'lilypond
1445         -dshow-available-fonts blabla'.
1446
1447 2006-07-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
1448
1449         * GNUmakefile.in: filter lily-XXX.pdf files.
1450
1451         * scm/define-grob-interfaces.scm (bend-after-interface): add thickness.
1452
1453         * scm/define-grob-properties.scm (all-internal-grob-properties):
1454         remove delta-pitch. Use delta-position everywhere.
1455
1456         * scm/output-lib.scm (fall::print): use new order.
1457
1458         * scm/output-ps.scm (path): reorder arguments.
1459
1460         * scm/output-svg.scm (path): support for path primitive.
1461
1462         * input/regression/bend-after.ly: new file.
1463
1464         * Documentation/user/GNUmakefile ($(outdir)/%.pdf): foolproof
1465         recipe for eps -> pdf conversion.
1466
1467 2006-07-19  Erik Sandberg  <mandolaerik@gmail.com>
1468
1469         * lily/parser.yy, lily/lexer.ll: added some simplifications by
1470         Angelo Contardi.
1471
1472 2006-07-19  Graham Percival  <gpermus@gmail.com>
1473
1474         * input/manual/screech-boink.ly: moved to here.
1475
1476         * input/screech-boink.ly: deleted.
1477
1478         * scm/define-grob-properties.scm: clarify doc string.
1479
1480 2006-07-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
1481
1482         * Documentation/topdocs/NEWS.tely (Top): doc new feature.
1483
1484         * scm/output-ps.scm (path): define path.
1485
1486         * scm/define-stencil-commands.scm
1487         (ly:register-stencil-expression): add path.
1488
1489         * scm/define-music-properties.scm (all-music-properties): add delta-pitch.
1490
1491         * ly/engraver-init.ly: add Fall_engraver
1492
1493         * lily/parser.yy (music_function_event): allow musicfunction
1494         without music arg as music_function_event.
1495
1496         * lily/grob-scheme.cc (LY_DEFINE):
1497         ly:grob-robust-relative-extent. New function.
1498
1499         * scm/define-grobs.scm (all-grob-descriptions): add BendAfter
1500
1501         * scm/define-music-types.scm (music-descriptions): add BendAfterEvent.
1502
1503         * scm/output-lib.scm (fall::print): new function
1504
1505         * lily/fall-engraver.cc (stop_fall): new file.
1506
1507         * ly/music-functions-init.ly: alphabetise.
1508
1509         * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): pdf iso. eps as
1510         base.
1511
1512 2006-07-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
1513
1514         * VERSION (PATCH_LEVEL): bump version. Release 2.9.12
1515
1516         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
1517         doc pdftex usage.
1518
1519         * lily/translator-group.cc (connect_to_context): non const error message.
1520
1521         * Documentation/user/GNUmakefile ($(outdir)/%.pdf): update to use PDF
1522
1523         * scm/paper.scm (internal-set-paper-size): define landscape to #f
1524         if unset.
1525
1526         * scm/framework-ps.scm (convert-to-pdf): swap h and w in case of landscape. 
1527
1528         * stepmake/stepmake/texinfo-rules.make: strip DVI support.
1529
1530         * scm/framework-eps.scm (dump-stencils-as-EPSes): generate
1531         systems.pdftex too.
1532
1533         * scm/backend-library.scm (postscript->pdf): use -dEPSCrop for PDF.
1534
1535         * make/lilypond-vars.make (TEXINPUTS): add pdf output format.
1536
1537         * Documentation/topdocs/NEWS.tely (Top): add pdftex note.
1538
1539         * scm/output-ps.scm (resetrotation): use gsave/grestore for rotation.
1540
1541         * lily/main.cc (parse_argv): don't overwrite previous --formats string.
1542
1543         * scm/backend-library.scm (postscript->pdf): strip .eps too. 
1544
1545 2006-07-14  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1546
1547         * scm/layout-page-layout.scm: Define module, tidy code, use more
1548         functions iso. a single big one.
1549
1550         * scm/layout-page-dump.scm: move page dump functions used in two
1551         pass spacing to this file. Define module.
1552
1553         * scm/lily.scm (ly:load): don't load layout-page-layout.scm
1554          (separate module)
1555
1556         * ly/paper-defaults.ly: use module layout-page-layout.
1557
1558 2006-07-14  Erik Sandberg  <mandolaerik@gmail.com>
1559
1560         * lily/music.cc: Revised MusicEvent event class. It now contains
1561         event data directly instead of encapsulating it in music. The
1562         previously used class is renamed to OldMusicEvent.
1563
1564         * lily/stream-event.cc: Stream events are now probs.
1565         
1566         * lily/translator-group.cc, lily/translator.cc: Translators can
1567         now listen directly to stream events, by using macros
1568         [DECLARE,IMPLEMENT]_TRANSLATOR_LISTENER.
1569
1570         * lily/arpeggio-engraver.cc: Converted to use new event system
1571
1572         * THANKS: Corrected spelling mistake.
1573
1574 2006-07-12  Graham Percival  <gpermus@gmail.com>
1575
1576         * Documentation/user/SConscript, make/lilypond-vars.make,
1577         input/GNUmakefile: doc build looks in input/manual instead
1578         of input/test/
1579
1580         * input/manual/ GNUmakefile, SConscript: build files for
1581         input/manual/
1582
1583         * input/test/ various: some files moved to input/manual/ 
1584
1585         * Documentation/user/basic-notation.itely: small updates;
1586         thanks Kieren and Charles!
1587
1588 2006-07-12  Han-Wen Nienhuys  <hanwen@lilypond.org>
1589
1590         * VERSION (PACKAGE_NAME): release 2.9.11
1591
1592         * Documentation/topdocs/NEWS.tely (Top): update prop value 
1593
1594         * Documentation/user/basic-notation.itely (Tuplets): new property
1595         value.
1596
1597 2006-07-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
1598
1599         * python/convertrules.py (conv): tweaks. 
1600
1601         * VERSION (PATCH_LEVEL): bump version.
1602
1603         * python/convertrules.py (conv): add rule for
1604         tupletNumberFormatFunction.
1605
1606         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
1607         tupletNumberFormatFunction.
1608
1609         * scm/define-grobs.scm (all-grob-descriptions): calc TupletNumber
1610         text through 'text callback.
1611
1612         * lily/time-scaled-music-iterator.cc (construct_children): copy
1613         tweaks generated events.
1614
1615         * scm/define-context-properties.scm
1616         (all-user-translation-properties): remove tupletNumberFormatFunction
1617
1618         * lily/tuplet-engraver.cc (process_music): don't read
1619         tupletNumberFormatFunction
1620
1621         * scm/output-lib.scm (tuplet-number::calc-fraction-text): new
1622         function.
1623
1624 2006-07-11  Erik Sandberg  <mandolaerik@gmail.com>
1625
1626         * lily/global-context-scheme.cc: Separated ly:run-translator into
1627         smaller pieces.
1628
1629         * lily/score-engraver.cc, lily/score-performer.cc,
1630         scm/define-context-properties.scm: Make paper/midi output
1631         accessable as a context property.
1632
1633         * lily/score-translator.cc, lily/score-context.cc: Removed.
1634
1635 2006-07-07  Guido Amoruso  <guidonte@katamail.com>
1636
1637         * scm/ps-to-png.scm (Module): 
1638         * scm/framework-tex.scm (Module): 
1639         * scm/framework-ps.scm (Module): 
1640         * scm/backend-library.scm (Module): 
1641         * scm/framework-ps.scm: invoke gs with "-dDEVICEWIDTHPOINTS" and
1642         "dDEVICEHEIGHTPOINTS".
1643
1644 2006-07-04  Graham Percival  <gpermus@gmail.com>
1645
1646         * Documentation/user/ various: general improvements to
1647         "working with lilypond files" section.
1648
1649 2006-07-03  Erik Sandberg  <mandolaerik@gmail.com>
1650
1651         * lily/sequential-iterator.cc: Change the default get_music_list
1652         to read elements-callback music property
1653
1654         * scm/define-music-types.scm, scm/music-functions.scm: Cleaner
1655         processing of multimeasure rests. Softcoded
1656         sequential-music-iterator.
1657
1658         * lily/sequential-music-iterator.cc: Removed.
1659
1660 2006-06-28  Graham Percival  <gpermus@gmail.com>
1661
1662         * Documentation/user/basic-notation.itely: clarify \repeatTie.
1663
1664 2006-06-27  Erik Sandberg  <mandolaerik@gmail.com>
1665
1666         * lily/parser.yy: Wrap non-post-events in EventChords before
1667         assigning them to identifiers.
1668
1669 2006-06-27  Mats Bengtsson  <mabe@s3.kth.se>
1670
1671         * lily/bar-line.cc (compound_barline): Fix parenthesis error,
1672         gives correct vertical placement of \bar ":" in all staff
1673         sizes. Thanks Martial!
1674
1675 2006-06-26  Graham Percival  <gpermus@gmail.com>
1676
1677         * Documentation/user/invoking.itely : minor update from mailist.
1678
1679 2006-06-26  Erik Sandberg  <mandolaerik@gmail.com>
1680
1681         * lily/ various: Introduce stream events of types Prepare,
1682         OneTimeStep, CreateContext, AnnounceNewContext, RemoveContext,
1683         ChangeContext, SetProperty, RevertProperty, Override and Revert.
1684
1685         * lily/global-context*.cc: Time is now -inf before iteration
1686         starts.
1687
1688         * lily/include/context.hh: Removed unique_, init_
1689
1690         * Documentation/topdocs/NEWS: Make the feathered beam example
1691         avoid triggering a bug.
1692
1693 2006-06-24  Graham Percival  <gpermus@gmail.com>
1694
1695         * Documentation/user/ various: small additions from mailist.
1696
1697 2006-06-22  Mats Bengtsson  <mabe@s3.kth.se>
1698
1699         * ly/performer-init.ly: Add some missing links in the context
1700         hierarchy for MIDI output. There are probably some more missing!
1701
1702 2006-06-21  Graham Percival  <gpermus@gmail.com>
1703
1704         * Documentation/user/ various: minor spelling fixes;
1705         thanks Dave Luttinen!
1706
1707         * Documentation/user/ various: small clarifications;
1708         thanks Anthony Youngman!
1709
1710 2006-06-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
1711
1712         * po/fr.po: add \n appropriately.
1713
1714         * lily/lexer.ll: remove ? from version-seen?  
1715
1716 2006-06-19  John Mandereau  <john.mandereau@free.fr>
1717
1718         * po/fr.po; update translation, by Jean-Charles Malahieude and
1719         John Mandereau.
1720
1721 2006-06-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
1722
1723         * THANKS: add Markus Schneider.
1724
1725         * lily/tab-staff-symbol-engraver.cc: derive from Engraver, not
1726         Staff_symbol_engraver
1727
1728         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): don't
1729         replace staff_engraver
1730
1731         * lily/staff-symbol-engraver.cc (stop_spanner): announce end of
1732         spanner.
1733
1734         * lily/staff-collecting-engraver.cc
1735         (acknowledge_end_staff_symbol): new function
1736
1737         * lily/volta-engraver.cc (acknowledge_end_staff_symbol): new function. 
1738
1739         * lily/staff-collecting-engraver.cc
1740         (acknowledge_end_staff_symbol): new function.
1741
1742         * lily/main.cc: switch on relocation by default.
1743
1744 2006-06-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
1745
1746         * lily/spacing-spanner.cc (musical_column_spacing): set
1747         compound_fixed_note_space to 0.0. Document why.
1748
1749         * lily/simple-spacer.cc (is_sane): also have a kludge for numeric
1750         range of inverse_hooke_
1751         (Simple_spacer): init completely.
1752         (fits): const
1753         (get_line_configuration): don't use cols.resize(); it introduces
1754         initialized data.
1755
1756         * scm/framework-ps.scm (dump-page): add setstrokeadjust. 
1757
1758         * ps/music-drawing-routines.ps: remove selectfont L1 hack.
1759
1760         * lily/beaming-pattern.cc (best_splitpoint_index): urg, 2nd
1761         try. Divide by beatlength.
1762
1763         * input/regression/beaming-ternary-metrum.ly: update doc.
1764         add beatLength hack.
1765
1766         * scm/music-functions.scm (make-time-signature-set): add
1767         standard-beat-grouping. 
1768
1769 2006-06-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
1770
1771         * input/regression/tie-whole.ly: new file.
1772
1773         * lily/tie-formatting-problem.cc (set_column_chord_outline): don't
1774         cross center of note head in case of invisible stem. 
1775
1776 2006-06-16  Graham Percival  <gpermus@gmail.com>
1777
1778         * Documentation/user/ various: small fixes from mailist.
1779
1780 2006-06-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
1781
1782         * lily/breathing-sign.cc (offset_callback): idem.
1783
1784         * lily/align-interface.cc (align_to_fixed_distance): remove
1785         hungarian suffix.
1786
1787         * lily/beaming-pattern.cc (count_factor_twos): oops. We want
1788         x%2==0.
1789
1790 2006-06-15  Han-Wen Nienhuys  <hanwen@lilypond.org>
1791
1792         * VERSION (PACKAGE_NAME): release 2.9.9
1793
1794         * ly/lilypond-book-preamble.ly: add \version
1795
1796 2006-06-14  Han-Wen Nienhuys  <hanwen@lilypond.org>
1797
1798         * scripts/lilypond-book.py (PREAMBLE_LY): include
1799         lilypond-book-preamble.ly
1800
1801         * lily/stem.cc (get_beaming): return max of 0 and
1802         scm_ilength. Fixes slurring from/to beams.
1803
1804         * ly/lilypond-book-preamble.ly: new file.
1805
1806         * lily/slur.cc: add inspect-index feature.
1807
1808 2006-06-13  Graham Percival  <gpermus@gmail.com>
1809
1810         * Documentation/user/tutorial.itely: trivial fix.
1811
1812 2006-06-13  Erik Sandberg  <mandolaerik@gmail.com>
1813
1814         * lily/parser.yy, scm/ly-syntax-constructors.scm: Produce almost
1815         all non-event music in the parser via MAKE_SYNTAX.
1816
1817         * lily/parser-scheme.cc: Add ly:parser-error function
1818
1819         * scm/paper.scm: fix typo
1820
1821 2006-06-13  Han-Wen Nienhuys  <hanwen@lilypond.org>
1822
1823         * THANKS: add RT.
1824
1825         * lily/font-config.cc (init_fontconfig): add warning if cache_file
1826         is null.
1827
1828         * buildscripts/output-distance.py (test_compare_signatures):
1829         timing routines.
1830         (read_signature_file): use new signature format.
1831
1832         * scm/stencil.scm (write-system-signature): simpler signature
1833         format.
1834
1835         * lily/stem.cc (calc_stem_end_position): calc quantized-positions
1836         for beamed case. 
1837
1838         * lily/note-spacing.cc (stem_dir_correction): don't inspect
1839         stem_end_position, but estimate instead. 
1840
1841         * lily/tuplet-bracket.cc (calc_positions): look at
1842         stem-end-position for tuplet bracket slope. Fixes sloped tuplet
1843         brackets narrower than beams. 
1844
1845         * lily/lexer.ll: set version-seen? even if version is
1846         INVALID. 
1847
1848         * lily/rest.cc (y_offset_callback): bugfix: decide position
1849         override based on scm_is_number(). Fixes \rest on center staff
1850         line. 
1851
1852         * lily/beaming-pattern.cc (best_splitpoint_index): fix beaming
1853         patterns for 16th triplets.
1854
1855 2006-06-10  Graham Percival  <gpermus@gmail.com>
1856
1857         * Documentation/user/ page.itely, global.itely: editing
1858         and reorg.
1859
1860         * Documentation/user/ various: findex -> funindex.
1861
1862 2006-06-10  Erik Sandberg  <mandolaerik@gmail.com>
1863
1864         * lily/time-scaled-music-iterator.cc: Use tupletSpannerDuration to
1865         insert extra tuplet events.
1866
1867 2006-06-10  Graham Percival  <gpermus@gmail.com>
1868
1869         * Documentation/user/programming-interfaces.itely: add
1870         info from NEWS.
1871
1872         * python/convertrules.py: add annotatefoo -> annotate-foo
1873         rules.
1874
1875         * Documentation/user/global.itely: start editing.
1876
1877         * Documentation/user/page.itely: major editing, new spacing
1878         docs.
1879
1880 2006-06-10  Han-Wen Nienhuys  <hanwen@lilypond.org>
1881
1882         * scm/define-markup-commands.scm (wordwrap-markups): use
1883         output-def 'line-width if undefined.
1884
1885         * HACKING: trim outdated info.
1886
1887 2006-06-09  Mats Bengtsson  <mabe@s3.kth.se>
1888
1889         * scm/define-grobs.scm (all-grob-descriptions): Add
1890         line-spanner-interface to all grobs that already have
1891         text-spanner-interface or dynamic-text-spanner-interface
1892
1893         * scm/page.scm: Rename annotate{headers,systems,page}->
1894         annotate-*
1895
1896         * input/regression/page-spacing.ly,
1897         input/regression/page-layout-manual-position.ly: idem
1898
1899 2006-06-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
1900
1901         * lily/line-spanner.cc: cleanup property list.
1902
1903         * scripts/lilypond-book.py (find_toplevel_snippets): don't use
1904         generator expressions (2.3 compat). 
1905
1906 2006-06-09  Mats Bengtsson  <mabe@s3.kth.se>
1907
1908         * lily/vertical-align-engraver.cc: Make sure that the
1909         align{Above,Below}Context properties are included in the automatic
1910         documentation.
1911
1912 2006-06-08  Joe Neeman  <joeneeman@gmail.com>
1913
1914         * scm/paper-system.scm (paper-system-annotate): also annotate the
1915         estimated pure-Y-extent
1916
1917         * scm/define-grobs.scm: add pure-Y-extent and pure-Y-offset functions
1918
1919         * lily/system.cc (break_into_pieces): set the estimated height
1920         of each child system
1921
1922         * lily/stem.cc (pure_height): new pure-Y-extent callback
1923
1924         * lily/staff-symbol-referencer.cc (callback): don't destroy
1925         the staff-position property
1926
1927         * lily/hara-kiri-group-spanner.cc (request_suicide): split
1928         consider_suicide into two functions
1929
1930         * lily/constrained-breaking.cc (resize): use the new pure
1931         callbacks to estimate the height of a system
1932
1933         * lily/axis-group-interface.cc (pure_group_height): new
1934         side-effect-free VerticalAxisGroup height-callback
1935
1936         * lily/align-interface.cc (get_extents_aligned_translates):
1937         split align_elements_to_extents into two functions
1938         (get_pure_child_y_translation): new function
1939
1940         * lily/grob.cc: new functions for pure-Y-extent and pure-Y-offset
1941
1942         * lily/item.cc: new functions pure_is_visible and spanned_rank_iv
1943
1944         * lily/paper-score.cc: cache break_indices and columns
1945
1946         * lily/side-position-interface.cc: new pure-Y-extent callbacks
1947         
1948 2006-06-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
1949
1950         * lily/font-config.cc (init_fontconfig): do the init if
1951         cache_file, but don't look at cache_file.
1952
1953         * input/regression/quote-tie.ly: new file.
1954
1955         * lily/tie-engraver.cc (struct Head_event_tuple): add end_moment_
1956         to Head_event_tuple, so we deal gracefully with ties on
1957         cue-endings.
1958
1959         * lily/pango-font.cc (pango_item_string_stencil): type correctness
1960         for FcChar8*
1961
1962 2006-06-08  Graham Percival  <gpermus@gmail.com>
1963
1964         * input/test/ smart-transpose.ly, reverse-music.ly:
1965         \applyMusic to music functions update, thanks Michael!
1966
1967 2006-06-07  Graham Percival  <gpermus@gmail.com>
1968
1969         * input/test/ add-staccato.ly, add-text-script.ly,
1970         unfold-all-repeats.ly, music-box.ly: \applyMusic to
1971         music functions update, thanks to Michael Meixner.
1972
1973         * Documentation/user/music-glossary.tely: small fix
1974         from Francisco.
1975
1976         * Documentation/user/ various: minor additions from mailist.
1977
1978         * Documentation/user/lilypond.tely, basic-notation.itely:
1979         small test of @funindex.  (works here)
1980
1981         * input/test/font-table.ly: reduce size to partially
1982         de-ugly version in manual.
1983
1984         * Documentation/user/page.itely: new file (split former
1985         "global issues" into "page settings" and "non-musical
1986         output".
1987
1988         * Documentation/user/ various: fix @ref{}s to match
1989         new chapter names (above).
1990
1991 2006-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
1992
1993         * SConstruct (LILYPONDPREFIX): Bootstrap fix.
1994
1995 2006-06-06  Graham Percival  <gpermus@gmail.com>
1996
1997         * Documentation/user/advanced-notation.itely: add example
1998         for segno/coda on barline.
1999
2000         * tex/texinfo.tex: merge from upstream.
2001
2002 2006-06-06  Jan Nieuwenhuizen  <janneke@gnu.org>
2003
2004         * scripts/lilypond-book.py (process_snippets): Argument fix.
2005
2006         * SConstruct:
2007         * buildscripts/builder.py:
2008         * lily/SConscript: 
2009         * mf/SConscript: 
2010         * Documentation/user/SConscript:  More SCons fixes.
2011
2012 2006-06-03  Jan Nieuwenhuizen  <janneke@gnu.org>
2013
2014         * lily/font-config.cc (init_fontconfig): Only initialize if
2015         global cache_file is found.
2016
2017 2006-06-06  Erik Sandberg  <mandolaerik@gmail.com>
2018
2019         * ly/music-functions-init.ly: Updated \overrideProperty to use the
2020         new \applyOutput.
2021
2022 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
2023
2024         * VERSION (PACKAGE_NAME): release 2.9.8
2025
2026         * lily/ledger-line-engraver.cc (stop_translation_timestep): new
2027         function. Delay ledger modifying ledgered grobs to
2028         stop_translation_timestep(), to ensure that we're ledgering
2029         according to the new spanner.
2030         (acknowledge_staff_symbol): don't check for non-NULL
2031         staff_sym->get_bound()
2032
2033         * lily/staff-symbol-engraver.cc (start_spanner): set left bound on
2034         creation.
2035
2036         * Documentation/pictures/GNUmakefile (XPM_FILES): src-wildcard for
2037         pictures too.
2038
2039         * GNUmakefile.in (dist-toplevel-txt-files): dist aclocal.m4
2040         directly from srcdir/stepmake/aclocal.m4
2041         
2042         * Documentation/misc/GNUmakefile (TEXTS): use src-wildcard for
2043         disting MISC files.
2044
2045         * lily/simple-spacer.cc (get_column_desc): desc -> description.
2046
2047 2006-06-06  Joe Neeman  <joeneeman@gmail.com>
2048
2049         * lily/simple-spacer.cc (get_line_configuration): add
2050         keep-inside-line rods
2051         (struct Column_desc): add constructor
2052         (struct Rod_desc): add constructor
2053         (get_line_forces): check for forced page breaks here too
2054
2055         * lily/instrument-name-engraver.cc (acknowledge_axis_group): prevent
2056         support/elements cycles between InstrumentNames and AxisGroups
2057
2058 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
2059
2060         * config.make.in (METAFONT): remove MAKEINFO_VERSION
2061
2062         * stepmake/stepmake/topdocs-targets.make (make-txt-files): define
2063         make-txt-files target.
2064
2065         * stepmake/stepmake/toplevel-targets.make (do-top-doc): use
2066         make-txt-files target.
2067
2068         * configure.in (LINK_GXX_STATICALLY): $srcdir for readlink.py
2069
2070         * stepmake/stepmake/generic-vars.make (distdir): create dist in
2071         top-build-dir.
2072
2073 2006-06-06  Jürgen Reuter  <reuter@ipd.uka.de>
2074
2075         * Documentation/user/instrument-notation.itely,
2076         input/regression/breathing-sign-ancient.ly,
2077         input/test/divisiones.ly: Removed redundant property settings for
2078         vaticana contexts.
2079
2080         * ly/gregorian-init.ly: Rewrote \versus and \responsum in order to
2081         fix lyrics alignment problems.  They are implemented now as scheme
2082         functions that add the appropriate unicode char to the first lyric
2083         event rather than adding a separate lyric event.  Minor edit of
2084         comments.
2085
2086 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
2087
2088         * GNUmakefile.in (dist-toplevel-txt-files): new target. Don't
2089         pollute src dir with built .txt files, but install directly from
2090         Documentation/topdocs/out/
2091
2092         * buildscripts/output-distance.py
2093         (ComparisonData.create_html_result_page): put version/directories
2094         in table header.
2095
2096         * Documentation/topdocs/NEWS.tely (Top): document spacing section
2097         feature.
2098
2099         * configure.in (LINK_GXX_STATICALLY): use readlink.py to resolve links.
2100         Patch by Karl Hammar
2101         
2102         * buildscripts/readlink.py: add  file.
2103         Patch by Karl Hammar
2104
2105 2006-06-06  Joe Neeman  <joeneeman@gmail.com>
2106
2107         * lily/tuplet-number.cc (print): prevent stencil from being
2108         garbage collected.
2109
2110 2006-06-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
2111
2112         * scm/stencil.scm (write-system-signature): explicitly 
2113         -well, superfluously- close output port.
2114
2115         * buildscripts/output-distance.py (main): oops. Add extra argument.
2116
2117 2006-06-05  Graham Percival  <gpermus@gmail.com>
2118
2119         * Documentation/user/music-glossary.tely: clarified example
2120         from Francisco Vila, thanks!
2121
2122 2006-06-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
2123
2124         * input/regression/spacing-section.ly: new file.
2125
2126         * lily/input.cc (programming_error): new function.
2127
2128         * lily/spacing-engraver.cc (try_music): new function. Accept
2129         spacing-section-event
2130
2131         * lily/spacing-spanner.cc (set_springs): take slices of all
2132         columns for spacing.
2133
2134         * lily/include/paper-column.hh (class Paper_column): add
2135         Paper_column::compare.
2136
2137         * ly/spanners-init.ly (newSpacingSection): add newSpacingSection.
2138
2139         * scm/define-music-types.scm (music-descriptions): add
2140         SpacingSectionEvent
2141
2142         * lily/music-iterator.cc (report_event): use programming_error for
2143         sending non-event error.
2144
2145         * lily/input.cc (programming_error): new function
2146
2147         * buildscripts/output-distance.py (main): use compare-XXX for
2148         compare files.
2149         (main): --threshold option, default at 0.30
2150
2151         * output-distance.py (main): add --threshold option.
2152
2153 2006-06-04  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2154
2155         * scm/paper-system.scm (paper-system-annotate): fix problem when
2156         annotating an empty system
2157
2158 2006-06-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
2159
2160         * GNUmakefile.in: reinstate old web tar/copying.
2161
2162 2006-06-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
2163
2164         * lily/lyric-combine-music-iterator.cc (find_voice): return 0 if
2165         nothing changes. (Erik S) 
2166
2167         * lily/percent-repeat-iterator.cc (get_music_list): fix repeat
2168         count. (Erik S)
2169
2170 2006-05-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2171
2172         * scm/define-markup-commands.scm (whiteout): do not force
2173         foreground color of argument markup to black.
2174
2175         * scm/stencil.scm (annotate-y-interval): put arrow dimension at
2176         the left of the arrow, instead of below the arrow name, so that,
2177         when two little arrows are vertically stacked, their dimensions
2178         and name should not overlap. Add a color key parameter.
2179
2180         * scm/paper-system.scm (paper-system-annotate): Annotate
2181         next-space+next-padding instead of next-space. Annotate space
2182         between next-padding and next-space+padding, respectively, and
2183         following system extent and refpoint-Y-extent. Use colors.
2184
2185         * scm/page.scm (annotate-page): translate annotations slightly to
2186         the right.
2187
2188 2006-06-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
2189
2190         * lily/figured-bass-position-engraver.cc (acknowledge_end_slur):
2191         fix for x-staff slurs. Thanks Joe!
2192
2193         * buildscripts/output-distance.py
2194         (SystemLink.output_expression_change_count): keep track of changed
2195         details, and dump in details html page.
2196  
2197         * input/regression/figured-bass-staff.ly: add note about setting
2198         properties in Staff context.
2199
2200         * lily/figured-bass-position-engraver.cc (acknowledge_slur):
2201         add slurs and ties to support too.
2202
2203         * buildscripts/output-distance.py (main): set dest_dir
2204         argument. Add --max-count option.
2205
2206 2006-06-02  Jürgen Reuter  <reuter@ipd.uka.de>
2207
2208         * ly/gregorian-init.ly: Converted to utf-8.  Added memorable
2209         shortcuts for special unicode chars that are useful in chant
2210         notation.  Revised exisiting and added new comments.
2211
2212 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
2213
2214         * make/mutopia-rules.make: remove duplicate recipe.
2215
2216 2006-06-02  Werner Lemberg  <wl@gnu.org>
2217
2218         * tex/texinfo.cnf: Fix typo (\euro -> \minus).
2219         Add support for U+0132 (IJ) and U+0133 (ij).
2220
2221 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
2222
2223         * buildscripts/output-distance.py (FileLink): new class. collect
2224         info systems from one .ly file. 
2225         (FileLink.link_files_for_html): further tweaks.
2226
2227 2006-06-02  Graham Percival  <gpermus@gmail.com>
2228
2229         * tex/texinfo.tex: partial fix for @funindex.
2230
2231         * Documentation/user/macros.tely: uncomment @funindex (doesn't
2232         break anything).
2233
2234 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
2235
2236         * make/mutopia-vars.make (ly_examples): replace .ly.txt with .ly
2237
2238         * tex/texinfo.tex (sectionheading, q.v.): call \quoteexpand for
2239         @example too. Backportme.
2240
2241 2006-06-02  Graham Percival  <gpermus@gmail.com>
2242
2243         * tex/texinfo.cnf: added UTF-8 support for texinfo; patch
2244         from Werner Lemberg.
2245
2246 2006-06-02  Paco (Francisco Vila)  <fravd@ya.com>
2247
2248         * Documentation/user/music-glossary.tely: additional spanish
2249         updates and a lyrics fix in an example.
2250
2251 2006-06-02  Jürgen Reuter  <reuter@ipd.uka.de>
2252
2253         * scm/define-grob-properties.scm: Previous patch contained
2254         spurious line from another patch not yet committed.  Fixed.
2255
2256         * scm/define-grob-properties.scm: Add missing doc strings for
2257         ancient notation.
2258
2259 2006-06-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
2260
2261         * buildscripts/output-distance.py
2262         (ComparisonData.write_text_result_page): separate the scores, sort
2263         by geo_score.
2264
2265         * scm/framework-eps.scm (output-classic-framework): start at 1 for
2266         system signatures.
2267
2268         * buildscripts/output-distance.py (me_path): use argv[0] for
2269         sys.path extension
2270         (ComparisonData.img_cell): use colored borders.
2271
2272         * scm/stencil.scm (write-system-signature): escape newlines too.
2273         (write-system-signature): use (1,-1) interval for empty interval
2274
2275 2006-01-01  Graham Percival  <gpermus@gmail.com>
2276
2277         * Documentation/user/music-glossary.tely: Spanish updates
2278         from Francisco Vila.
2279
2280         * Documentation/user/lilypond-book.itely: addition from
2281         Vaclav Smilauer.
2282
2283         * Documentation/user/ various: edits, small additions
2284         from mailist, etc.
2285
2286 2006-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
2287
2288         * GNUmakefile.in (tree-lib-prefix-current):
2289         (tree-share-prefix-current): Use version number in tree, add
2290         `current' symlinks.
2291
2292 2006-06-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
2293
2294         * GNUmakefile.in: write VERSION, again.
2295
2296         * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
2297         $(outdir)/%.ly $(outdir)/%.ps): dump sigs for normal files too.
2298
2299         * stepmake/aclocal.m4: robuster version detection.
2300
2301         * buildscripts/output-distance.py
2302         (ComparisonData.create_html_result_page): copy only if file
2303         exists, fixup src paths.
2304
2305         * stepmake/bin/add-html-footer.py (built): junk gulp_file()
2306
2307 2006-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
2308
2309         * stepmake/aclocal.m4: Robustification for (gcc) version detection.
2310         Another datarootdir reto.
2311
2312         * cygwin/postinstall-lilypond.sh: Do not fail if info docs aren't
2313         available.  This should be moved to postinstall-lilypond-doc.
2314
2315 2006-05-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
2316
2317         * GNUmakefile.in: simplify local-WWW-post. 
2318         remove -type l from find.
2319
2320         * buildscripts/output-distance.py (ComparisonData.compare_trees):
2321         fixes. Don't follow symlinks.
2322         (ComparisonData.create_html_result_page): remove previous results.
2323         insert ../python in path.
2324
2325         * scripts/lilypond-book.py (PREAMBLE_LY): spacing fixes.
2326
2327 2006-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
2328
2329         * config.make.in (datadir): Add datarootdir to silence autoconf.
2330
2331         * stepmake/aclocal.m4: Update for autoconf-2.59d.
2332
2333 2006-05-31  Erlend Aasland  <erlenda@gmail.com>
2334
2335         * dynamic-engraver.cc: fix bug (dynamics collide with accidentals)
2336
2337         * scm/output-ps.scm (repeat-slash): fix a bug that made repeat
2338         slash beams too wide.
2339
2340 2006-05-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
2341
2342         * VERSION: release 2.9.7
2343         
2344 2006-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
2345
2346         * lily/relocate.cc (read_relocation_dir): Do not blindly
2347         dereference DIR.
2348
2349 2006-05-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
2350
2351         * lily/parser.yy: replace THIS by PARSER
2352
2353         * Documentation/index.html.in: add link to test-results.html page.
2354
2355         * Documentation/topdocs/NEWS.tely (Top): update NEWS entry.
2356
2357         * scm/translation-functions.scm (format-bass-figure): translate
2358         digits over 10 to the left
2359
2360         * scm/define-markup-commands.scm (translate-scaled): new markup.
2361
2362         * mf/feta-nummer-code.mf (code): overshoot the topright tip of the
2363         7 glyph. 
2364
2365         * ly/engraver-init.ly: add Figured_bass_engraver
2366
2367         * lily/engraver-group.cc (acknowledge_grobs): use start/stop drul.
2368
2369         * lily/figured-bass-engraver.cc (clear_spanners): use everywhere.
2370
2371         * lily/score-engraver.cc (announce_grob): only note START announces.
2372
2373         * lily/include/engraver-group.hh (Translator_group):
2374         acknowledge_hash_table_ is now drul.
2375
2376         * lily/engraver.cc (announce_end_grob): new method.
2377
2378         * lily/include/grob-info.hh (class Grob_info): add start_end_ member.
2379
2380         * lily/translator-dispatch-list.cc (create): take start_end argument.
2381
2382         * lily/include/translator.hh (TRANSLATOR_DECLARATIONS): change
2383         acknowledge_static_array_ to drul
2384
2385         * lily/include/translator.icc (ADD_END_ACKNOWLEDGER): new macro.
2386
2387         * scm/define-grob-interfaces.scm
2388         (bass-figure-alignment-interface): add bass-figure-alignment-interface
2389
2390         * scm/define-grobs.scm (all-grob-descriptions): add
2391         BassFigureAlignmentPositioning
2392
2393         * ly/Welcome-to-LilyPond-MacOS.ly: include in LilyPond, so version
2394         number stays up to date. Backportme.
2395
2396 2006-05-30  Mats Bengtsson  <mabe@s3.kth.se>
2397
2398         * Documentation/user/basic-notation.itely (Bar lines): Document
2399         the "||:" bar type. 
2400
2401 2006-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
2402
2403         * buildscripts/builder.py: Remove --ly option/target from mf-to-table.
2404
2405         * scripts/lilypond-book.py: Bugfix: do not blindly attempt
2406         .../current hack if LILYPONDPREFIX is fine.  Fixes `scons doc'
2407         build.
2408
2409         * Resurrect `scons lily' build.
2410
2411         * SConstruct (symlink_tree): Bugfix: link
2412         music-drawing-routines.ps to file iso directory.
2413
2414         * lily/SConscript: Remove kpath-guile from LIBS.
2415
2416         * SConstruct (libdir_package_version): Typo.
2417         (configure): Comment-out fontforge for lack of fontforge.pc .
2418         Also add libdir* to environment.
2419
2420 2006-05-30  Graham Percival  <gpermus@gmail.com>
2421
2422         * Documentation/user/ various: minor additions from mailist and
2423         editing.
2424
2425 2006-05-30  Paco <fravd@ya.com>
2426
2427         * Documentation/user/music-glossary.tely: numerous corrections and
2428         some new translations.
2429
2430 2006-05-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
2431
2432         * BackportmeStart.
2433         
2434         * buildscripts/output-distance.py
2435         (ComparisonData.create_html_result_page): new routine: summarise
2436         results in HTML page with images. 
2437         (ComparisonData.create_text_result_page): create summary text files too.
2438
2439         * GNUmakefile.in (web-ext): package .signature files too. They
2440         compress well. 
2441
2442         * scm/stencil.scm (write-system-signature): typo.
2443
2444         * GNUmakefile.in: create web-root/VERSION to help upload scripts.
2445
2446         * scm/stencil.scm (write-system-signature): better escaping.
2447         only write signature for music systems, not for markup systems.
2448
2449         * scm/framework-ps.scm (output-framework): dump-signatures support
2450         for plain output.
2451
2452         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): add -ddump-signatures.
2453
2454         * scm/framework-ps.scm (write-preamble): redefine mark_URI to nop
2455         for -dno-point-and-click
2456
2457         * lily/grob.cc (get_print_stencil): don't read
2458         point_and_click_global to determine whether to set grob-cause.
2459
2460 2006-05-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
2461
2462         * buildscripts/output-distance.py (main): new function.
2463         (ComparisonData): new class.
2464
2465         * lily/ledger-line-engraver.cc (acknowledge_staff_symbol): be more
2466         careful with generating new LedgerLineSpanners.
2467
2468         * lily/ledger-line-spanner.cc (set_spacing_rods): suicide if no staff.
2469
2470         * ly/engraver-init.ly: remove Ledger_line_engraver from Voice
2471         context. This fixes double ledger lines in output. 
2472
2473         * lily/system.cc (get_paper_system): remove 3 layer limit.
2474
2475         * buildscripts/output-distance.py (SystemLink.distance): new
2476         file. Compare signatures.
2477
2478         * python/safeeval.py (SafeEval.visitUnarySub): new file.
2479
2480         * lily/grob-array.cc (remove_duplicates): rename from
2481         uniq(). Sort before calling uniq() so it actually works.
2482
2483 2006-05-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
2484
2485         * scripts/lilypond-book.py (Lilypond_file_snippet.ly): strip
2486         \version from lilypond file snippet.
2487         (Lilypond_file_snippet.ly): oops. typo.
2488         (find_toplevel_snippets): urgh. again.
2489
2490         * lily/system.cc (get_paper_systems): uniq all_elements_ , to
2491         prevent duplicated broken items in output.
2492
2493         * scm/framework-eps.scm (output-classic-framework): only dump if
2494         dump-signatures is set.
2495
2496         * scm/lily.scm (define-scheme-options): add dump-signatures option.
2497
2498         * scm/stencil.scm (write-system-signature): new routine: write
2499         python parseable signature of a separate paper system.
2500         BackportmeEnd.
2501         
2502 2006-05-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
2503
2504         * lily/stanza-number-engraver.cc (process_music): use is_markup()
2505         iso is_string().
2506         include header.
2507
2508 2006-05-25  Erik Sandberg  <mandolaerik@gmail.com>
2509
2510         * translator-group.cc: send music events to engravers in
2511         non-bottom contexts.
2512
2513         * tuplet-engraver.cc: process tuplet brackets in correct order.
2514
2515 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
2516
2517         * stepmake/aclocal.m4: STEPMAKE_PYTHON(): clear cached value since
2518         arg 2 might point us to a new binary (patch by Karl Hammar)
2519         
2520 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
2521
2522         * VERSION (PACKAGE_NAME): release 2.9.6
2523
2524         * Documentation/topdocs/NEWS.tely (Top): trim explanation. 
2525
2526         * Documentation/user/*.itely: 2nd
2527         attempt: replace funindex -> findex globally.
2528
2529 2006-05-24  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2530
2531         * input/no-notation/display-lily-tests.ly: fix \applyOutput
2532         test. Add \break, \pageBreak, \pageTurn, etc, tests.
2533
2534         * scm/define-music-display-methods.scm: display methods for
2535         breaks. Fix \applyOutput.
2536
2537 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
2538
2539         * Documentation/user/macros.itexi: comment out funindex expansion. 
2540
2541         * Documentation/user/music-glossary.tely: junk \oldaddlyrics
2542         everywhere.
2543
2544         * GNUmakefile.in: fix wildcarding for scrips/out/ links. Thanks
2545         Karl Hammar. Backportme.
2546  
2547         * Documentation/user/advanced-notation.itely (Balloon help): idem.
2548
2549         * Documentation/user/changing-defaults.itely (Creating contexts): idem.
2550
2551         * Documentation/user/programming-interface.itely (Running a
2552         function on all layout objects): idem.
2553
2554         * Documentation/user/introduction.itely (Automated engraving):
2555         update \applyOutput syntax
2556
2557         * lily/lyric-combine-music-iterator.cc (start_new_syllable):
2558         remove debugging hook.
2559
2560         * configure.in (LINK_GXX_STATICALLY): use "" to allow $
2561         expansion. 
2562
2563         * Documentation/user/GNUmakefile (TEXI2DVI_FLAGS): add -E.
2564
2565         * stepmake/stepmake/texinfo-rules.make ($(outdir)/%.dvi): add
2566         TEXI2DVI_FLAGS to texi2dvi invocation. 
2567
2568 2006-05-24  Erik Sandberg  <mandolaerik@gmail.com>
2569
2570         * lily/chord-tremolo-*.cc: Reworked how \repeat "tremolo"
2571         works. More work is done by iterator now, and engraver has been
2572         very much simplified.
2573
2574         * lily/translator-group.cc: try_music is now invoked through a
2575         listener
2576
2577         * lily/*-iterator.cc: Massive cleanups. Junked
2578         try_music_in_children globally. Renamed try_music to report_event,
2579         and made that method descend to a bottom context automatically.
2580
2581         * lily/event-iterator.cc: New file.
2582
2583         * lily/output-property-iterator.cc,
2584         lily/old-lyric-combine-music-iterator.cc: Removed.
2585
2586         * python/convert-rules.py: Modified the syntax for \applyOutput.
2587
2588 2006-05-23  Graham Percival  <gpermus@gmail.com>
2589
2590         * stepmake/stepmake/texinfo-rules.make: added -E, allows pdf doc
2591         creation.
2592
2593         * Documentation/user/ various: stuff that might have helped
2594         to fix the pdf creation, plus some minor doc additions.
2595
2596         * Documentation/user/changing-defaults.itely: remove @b from
2597         @b{ @internasref{foo}}; this breaks texi2dvi -E.
2598
2599 2006-05-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
2600
2601         * lily/beaming-pattern.cc (beamify): deal with negative start
2602         moments for beaming patterns.
2603
2604 2006-05-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
2605
2606         * lily/beaming-info.cc (beamify): new function: read beatLength
2607         and beatGrouping from context. 
2608
2609         * input/regression/beam-beat-grouping.ly (Module): new file.
2610
2611         * input/regression/beam-unconnected-beamlets.ly (Module): new file.
2612
2613         * lily/beam.cc (get_beam_segments): generate events for
2614         max_connect_ case too.
2615         (get_beam_segments): read Stem::max-beam-connect.
2616
2617         * input/regression/beam-single-stem.ly: new file.
2618
2619         * lily/stem.cc (set_beaming): use #f as signaling value for
2620         beamcount 0.
2621
2622         * lily/beam-engraver.cc (typeset_beam): set right bound if unset.
2623
2624         * lily/beam.cc (set_beaming): read clip-edges property.
2625         (calc_direction): don't suicide for single stem.
2626
2627         * lily/beaming-info.cc (best_splitpoint_index): take bool*
2628         argument, remove 1<<15 hack. Remove clip_edges() 
2629
2630         * lily/hairpin.cc (print): only do padding for nonmusical bounds
2631
2632 2006-05-21  Graham Percival  <gpermus@gmail.com>
2633
2634         * Documentation/user/basic-notation.itely: reorg.
2635
2636         * Documentation/user/ various: minor fixes.
2637
2638 2006-05-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
2639
2640         * lily/stencil-expression.cc (register_stencil_head): opps, append
2641         to cdr of static SCM object.
2642
2643 2006-05-19  Graham Percival  <gpermus@gmail.com>
2644
2645         * Documentation/user/README.txt, lilypond.tely, macros.itexi:
2646         update framework for command index.  DOC WRITERS: use @funindex
2647         instead of @cindex @code{}.
2648
2649         * Documentation/user/ various: replace @cindex @code{} => @funindex
2650
2651 2006-05-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
2652
2653         * lily/beam.cc (set_stem_lengths): trigger 'beaming callback, in
2654         case positions is set manually. 
2655
2656 2006-05-18  Erik Sandberg  <mandolaerik@gmail.com>
2657         
2658         * scm/ly-syntax-constructors.scm: New file. Converted a few syntax
2659         rules to Scheme.
2660
2661 2006-05-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
2662
2663         * Documentation/user/changing-defaults.itely (Contexts explained):
2664         use absolute dimension for @image.
2665
2666         * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): generate PNG
2667         out image for illustration too.
2668         ($(outdir)/%.png): add more png <-> eps rules. 
2669
2670 2006-05-17  Graham Percival  <gpermus@gmail.com>
2671
2672         * Documentation/user/ various: remove trailing whitespace, cosmetic
2673         change to reduce changes produced by diff.
2674
2675 2006-05-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
2676
2677         * lily/main.cc (do_chroot_jail): correctness tweak.
2678
2679         * python/lilylib.py (system): import subprocess in system () only.
2680
2681         * scripts/*.py: use TARGET_PYTHON iso PYTHON. Backportme.
2682
2683         * make/substitute.make (ATVARIABLES): add TARGET_PYTHON as subst
2684         variable. Backportme.
2685
2686 2006-05-17  Erik Sandberg  <mandolaerik@gmail.com>
2687         
2688         * lily/parser.yy: Change all syntax rules of type Music to SCM type
2689
2690 2006-05-17  Werner Lemberg  <wl@gnu.org>
2691
2692         * lily/lexer.ll (init_signature_has_table): Add
2693         `scm-scm-music-music'.
2694
2695         * lily/parser.yy (MUSIC_FUNCTION_SCM_SCM_MUSIC_MUSIC): New token.
2696         (Generic_prefix_music_scm): Add rule for it.
2697
2698         * lily/quote-iterator.cc (Quote_iterator::process): Handle
2699         `quoted-transposition' property.
2700
2701         * ly/music-functions-init.ly (transposedCueDuring): New function.
2702
2703         * scm/define-music-properties.scm (all-music-properties): Updated.
2704
2705         * Documenation/topdocs/NEWS.itely: Document it.
2706
2707 2006-05-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
2708
2709         * python/lilylib.py (system): move import subprocess to system()
2710         definition. 
2711
2712         * python/convertrules.py (conv): fix convert-ly rules for 2.9.4
2713
2714         * VERSION (PATCH_LEVEL): release 2.9.5
2715         
2716         * Documentation/topdocs/INSTALL.texi (Top): update versions and
2717         build instructions. 
2718
2719         * ly/engraver-init.ly: switch on hairpinToBarline by default.
2720
2721 2006-05-16  Graham Percival  <gpermus@gmail.com>
2722
2723         * Documentation/user/basic-notation.itely: editing from Dave, thanks!
2724
2725         * Documentation/user/ various: minor fixes.
2726
2727 2006-05-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
2728
2729         * Documentation/topdocs/NEWS.tely (Top): add hairpinToBarline feature.
2730
2731 2006-05-16  Mats Bengtsson  <mabe@s3.kth.se>
2732
2733         * Documentation/user/advanced-notation.itely (Instrument names):
2734         Modified obsolete instruction on how to move instrument names away
2735         from the staves. Hmm, at second thought the bug probably has been
2736         solved, so the full bug description should probably be removed.
2737
2738 2006-05-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
2739
2740         * lily/dynamic-engraver.cc (typeset_all): hang ending on
2741         currentCommandColumn. 
2742
2743         * lily/hairpin.cc (print): also add padding for non-neighbor
2744         hairpin bounds.
2745
2746         * scm/define-context-properties.scm
2747         (all-user-translation-properties): add hairpinToBarline
2748
2749         * input/regression/hairpin-to-barline.ly: new file.
2750
2751         * lily/context.cc (internal_send_stream_event): thinko fix.
2752
2753         * lily/tie.cc (set_default_control_points): robustness fix.
2754
2755         * python/musicxml.py (Part.interpret): don't complain about
2756         incomplete measures.
2757
2758         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): only add
2759         new music if last_event_chord() returned None.
2760
2761         * python/musicxml.py (Part.interpret): skip back over chord notes.
2762
2763 2006-05-16  Erik Sandberg  <mandolaerik@gmail.com>
2764         
2765         * lily/percent-repeat-engraver.cc, lily/parser.yy,
2766         lily/define-music-types.cc, lily/percent-repeat-iterator.cc,
2767         lily/slash-repeat-engraver.cc,
2768         lily/include/percent-repeat-iterator.hh: Rework percent repeats:
2769         iterator sends PercentEvents
2770
2771         * lily/time-scaled-music-iterator.cc, lily/tuplet-engraver.cc:
2772         rework tuplets: send start/stop events to engraver
2773
2774         * lily/context.cc, lily/music.cc, lily/context-scheme.cc: Add
2775         dispatchers event-source and events-below to Context
2776         
2777 2006-05-15  Graham Percival  <gpermus@gmail.com>
2778
2779         * Documentation/user/README.txt: update info for doc writers.
2780
2781         * Documentation/user/programming-interface.itely: integrate
2782         Nicolas' fixes for chapter rewrite.
2783
2784         * Documentation/user/ various: minor fixes.
2785
2786 2006-05-15  Han-Wen Nienhuys  <hanwen@lilypond.org>
2787
2788         * lily/clef-engraver.cc: cleanup.
2789
2790         * Documentation/user/GNUmakefile: dist context-example.eps too.
2791
2792         * lily/key-engraver.cc (create_key): use
2793         explicitKeySignatureVisibility for cancellation too. 
2794
2795         * lily/font-config.cc (init_fontconfig): don't close file if
2796         f==NULL. 
2797
2798 2006-05-15  Erlend Aasland  <erlenda@gmail.com>
2799
2800         * Documentation/topdocs/NEWS.tely: niente and rotation news
2801
2802 2006-05-14  Erlend Aasland  <erlenda@gmail.com>
2803
2804         * lily/include/stencil.hh
2805         * lily/stencil.cc (rotate): new function. Makes it possible
2806         to rotate a stencil around a given offset.
2807
2808         * lily/grob.cc (get_print_stencil): add rotation support
2809
2810         * lily/stencil-interpret.cc (interpret_stencil_expression):
2811         add rotation support
2812
2813         * lily/stencil-scheme.cc (ly:stencil-rotate): new function
2814
2815         * scm/define-grob-properties.scm: add 'rotation property
2816
2817         * scm/define-markup-commands.scm: add rotate markup command
2818         
2819         * scm/output-ps.scm: add rotation support in PostScript backend
2820
2821         * scm/output-svg.scm: add rotation support in SVG backend
2822
2823 2006-05-13  Graham Percival  <gpermus@gmail.com>
2824
2825         * Documentation/user/music-glossary.itely: French correction.
2826
2827         * Documentation/user/programming-interface.itely: major
2828         new docs, some reorg, some info from Nicolas.
2829
2830         * Documentation/user/ various: small fixes.
2831
2832 2006-05-12  Mats Bengtsson  <mabe@s3.kth.se>
2833
2834         * Documentation/user/programming-interface.itely (Markup
2835         programmer interface): Remove duplicate text.
2836
2837 2006-05-12  Graham Percival  <gpermus@gmail.com>
2838
2839         * Documentation/user/context-example.eps: new file.
2840
2841         * Documentation/user/changing-defaults.itely: set up file to
2842         use eps image.
2843
2844         * Documentation/user/programming-interface.itely: changes
2845         from mailist.
2846
2847 2006-05-12  Han-Wen Nienhuys  <hanwen@lilypond.org>
2848
2849         * configure.in (LINK_GXX_STATICALLY): python 2.4 req.
2850
2851 2006-05-11  Graham Percival  <gpermus@gmail.com>
2852
2853         * Documentation/user/programming-interface.itely: first round of
2854         editing and merging emails from Nicolas.
2855
2856         * Documentation/user/scheme-tutorial: minor edit.
2857
2858 2006-05-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
2859
2860         * python/musicxml.py (Xml_node.__init__): _attribute_dict stores
2861         XML attributes.
2862         (Xml_node.message): use it.
2863
2864         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): 
2865         oops. Add duration argument.
2866
2867 2006-05-10  Joe Neeman  <joeneeman@gmail.com>
2868
2869         * lily/paper-column-engraver.cc (make_columns):
2870         * scm/define-grobs.scm: Revert my previous change and set the default
2871         in define-grobs.scm instead.
2872
2873 2006-05-09  Graham Percival  <gpermus@gmail.com>
2874         
2875         * Documentation/user/changing-defaults.itely: general editing,
2876         info about \set and \override.
2877
2878         * Documentation/user/tweaking.itely, advanced-notation.itely:
2879         fixes from Dave Luttinen, thanks!
2880
2881 2006-05-09  Joe Neeman  <joeneeman@gmail.com>
2882
2883         * lily/paper-column-engraver.cc (make_columns): By default, a column
2884         needs to be breakable.
2885
2886 2006-05-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
2887
2888         * scripts/musicxml2ly.py (musicxml_clef_to_lily): use new
2889         Attributes methods
2890         (musicxml_time_to_lily): idem
2891         (musicxml_key_to_lily): idem
2892         (instrument_drumtype_dict): dict for supported drumtypes.
2893         (LilyPondVoiceBuilder.__init__): new class: sanely keep track of
2894         moments and pending mm rests
2895         (musicxml_voice_to_lily_voice): rewrite to use LilyPondVoiceBuilder
2896         (musicxml_voice_to_lily_voice): strip KeyChangeEvents for drums.
2897         (musicxml_voice_to_lily_voice): add mode change.
2898         (option_parser): lxml.etree (http://codespeak.net/lxml/) for more
2899         speed and less memory usage (factor 5 to 10).
2900         (convert): write -defs.ly  and driver file separately so people
2901         can script their own part extraction.
2902
2903         * python/musicxml.py (minidom_demarshal_node): new function:
2904         separate minidom handling.
2905         (lxml_demarshal_node): new function: support lxml.etree too.
2906         (Xml_node.message): new function: verbose error message, with XML
2907         path to offending node.
2908         (Attributes.get_measure_length): sane interface to MusicXML attributes.
2909         (Part_list.generate_id_instrument_dict): new method: collect
2910         instrument names, to be able to set drum_type.
2911         (Part.interpret): handle underfull measures
2912         (Part.interpret): assign instrument names.
2913
2914         * python/musicexp.py (Output_printer.close): new method
2915         (MusicWrapper.print_ly): new class: support other modes,
2916         eg. \drummode
2917         (BarCheck.print_ly): new class. Support bar checks, with comments
2918         and fancy barchecks. 
2919         (NoteEvent.__init__): also set drum_type for drum notes.
2920         (MultiMeasureRest.lisp_expression): dump mm rests.
2921
2922         * lily/paper-column-engraver.cc (stop_translation_timestep): set
2923         line-break-permission if forbidBreak is not set.
2924
2925 2006-05-09  Joe Neeman  <joeneeman@gmail.com>
2926
2927         * scm/define-context-properties.scm:
2928         * scm/define-grob-properties.scm:
2929         * scm/define-grobs.scm:
2930         * scm/define-music-display-methods.scm:
2931         * scm/define-music-properties.scm:
2932         * scm/define-music-types.scm:
2933         * scm/music-functions.scm:
2934         * ly/declarations-init.ly:
2935         * lily/include/constrained-breaking.hh:
2936         * lily/system.cc:
2937         * lily/spaceable-grob.cc:
2938         * lily/simple-spacer.cc:
2939         * lily/paper-score.cc:
2940         * lily/paper-column.cc:
2941         * lily/paper-column-engraver.cc:
2942         * lily/item.cc:
2943         * lily/gourlay-breaking.cc:
2944         * lily/constrained-breaking.cc:
2945         * python/convertrules.py:
2946         Change "penalty", "page-penalty" and "breakable" to "line-break-penalty",
2947         "page-break-penalty" and "line-break-permission".
2948         Add "page-break-permission", "page-turn-permission" and "page-turn-penalty".
2949         Replace BreakEvent with LineBreakEvent, PageBreakEvent and PageTurnEvent.
2950
2951         * lily/bar-engraver.cc:
2952         * lily/beam-engraver.cc:
2953         * lily/forbid-break-engraver.cc:
2954         * lily/ligature-engraver.cc:
2955         * lily/paper-column-engraver.cc:
2956         * lily/percent-repeat-engraver.cc:
2957         * lily/score-engraver.cc:
2958         * lily/score-engraver.hh:
2959         * lily/paper-column-engraver.hh:
2960         Inter-engraver communication regarding line breaks is done through context
2961         properties (Score.forbidBreak) instead of function calls.
2962
2963 2006-05-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
2964
2965         * VERSION (PACKAGE_NAME): release 2.9.4
2966
2967 2006-05-08  Graham Percival  <gpermus@gmail.com>
2968
2969         * Documentation/user/working.itely: proofreading from Dave
2970         Luttinen, thanks.
2971
2972         * Doucmentation/user/README.txt: updated with manual style info.
2973
2974         * Documentation/user/ various: trim linewidth to 78 chars.
2975
2976 2006-05-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
2977
2978         * scm/define-grob-properties.scm (all-internal-grob-properties):
2979         remove chord-tremolo property.
2980
2981         * lily/beam.cc (get_beam_segments): don't use stem position as
2982         base for broken ends.
2983
2984 2006-05-06  Graham Percival  <gpermus@gmail.com>
2985
2986         * Documentation/user/putting.itely: proofreading from Dave
2987         Luttinen, thanks!
2988
2989         * Documentation/user/ various: more reorg and clarifications.
2990
2991 2006-05-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
2992
2993         * scm/lily.scm (TEX_STRING_HASHLIMIT): move from framework-texstr.scm.
2994
2995         * ly/music-functions-init.ly: new function featherDurations
2996
2997         * lily/beam.cc: read grow-direction for feathered beaming.
2998
2999         * Documentation/topdocs/NEWS.tely (Top): typo.
3000
3001 2006-05-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
3002
3003         * lily/include/beam.hh (struct Beam_stem_segment): add gapped_ for
3004         tremolo beams.
3005
3006 2006-05-05  Erik Sandberg  <mandolaerik@gmail.com>
3007         * lily/context.cc, lily/global-context.cc: Added 'unique' member,
3008         used by music streams.
3009
3010         * lily/dispatcher.cc, lily/dispatcher-scheme.cc,
3011         lily/stream-event.cc, lily/stream-event-scheme.cc,
3012         lily/listener.cc, lily/scheme-listener.cc,
3013         lily/scheme-listener-scheme.cc, lily/include/dispatcher.hh,
3014         lily/include/stream-event.hh, lily/include/listener.hh,
3015         lily/include/scheme-listener.hh, scm/define-event-classes.scm:
3016         Created data structures for music streams.
3017         
3018 2006-05-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
3019
3020         * lily/beam.cc (get_beam_segments): new function. Reorganise the
3021         construction of a beam. 
3022         (print): rewrite. 
3023
3024         * flower/include/std-vector.hh (default_compare): use only one comparison.
3025
3026         * scm/define-markup-commands.scm (note-by-number): remove debug display.
3027         (note-by-number): further attachment fixes.
3028
3029         * scm/lily-library.scm (ordered-cons): new function.
3030         (interval-index): new function
3031
3032         * lily/note-head-scheme.cc (LY_DEFINE): new file.
3033
3034         * lily/note-head.cc (get_stem_attachment): new function.
3035
3036         * scm/define-markup-commands.scm (note-by-number): read 'style
3037         property. 
3038
3039         * input/regression/markup-note.ly: show note-head style option.
3040
3041         * mf/feta-bolletjes.mf (overdone_heads): fix attachment points for
3042         triangle head.
3043
3044 2006-05-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
3045
3046         * mf/GNUmakefile (NCSB_OTFS): remove old ncsb detection further.
3047
3048         * configure.in (LINK_GXX_STATICALLY): fix for ncsb detection.
3049
3050         * lily/include/constrained-breaking.hh: GCC 4 fix.
3051
3052 2006-05-04  Joe Neeman  <joeneeman@gmail.com>
3053
3054         * lily/simple-spacer.cc: Remove class Simple_spacer_wrapper.
3055         Replace it with functions get_line_forces and get_line_configuration.
3056         (class Simple_spacer): Make data private.
3057         Rewrite compression algorithm to be faster and simpler.
3058
3059         * lily/simple-spacer-scheme.cc (ly_solve_rod_and_spring_problem):
3060         * lily/gourlay-breaking.cc (solve):
3061         * lily/constrained_breaking.cc (space_line):
3062         Change it to the new simple-spacer code.
3063
3064         * lily/paper-score.cc (get_paper_systems):
3065         (Paper_score):
3066         (process):
3067         Delay breaking the systems until they are requested.
3068         (find_break_indices):
3069         Use vsize for indices.
3070         (calc_breaking):
3071         Move the "Calculating line breaks" message here.
3072
3073         * lily/system.cc (pre_processing):
3074         Move the "Calculating line breaks" message away from here.
3075         (break_into_pieces):
3076         Allow multiple calls to this function in sequence (with touching-but-
3077         not-overlapping breakpoints).
3078
3079         * lily/constrained-breaking.cc:
3080         Replace most of the get_XXXX functions with get_line_details.
3081         Only calculate the force for each line. Calculate configurations only
3082         for the lines we will actually use.
3083         Replace cols_ with lines_.
3084
3085 2006-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3086
3087         * mf/GNUmakefile (depth): remove FC_FIND.
3088
3089         * config.make.in (NCSB_SOURCE_FILES): subst NCSB_SOURCE_FILES
3090
3091         * configure.in (LINK_GXX_STATICALLY): call fc-match from within configure.
3092
3093         * scm/framework-ps.scm (write-preamble): new function.
3094         (write-preamble): load mac fonts via fondu, even if gs-font-load
3095         is set.
3096
3097 2006-05-03  Werner Lemberg  <wl@gnu.org>
3098
3099         * mf/GNUmakefile (FC_FIND): Fix typo.
3100
3101 2006-05-03  Erlend Aasland  <erlenda@gmail.com>
3102
3103         * stepmake/stepmake/generic-targets.make (cvs-clean): also remove out-www dirs.
3104
3105 2006-05-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
3106
3107         * stepmake/aclocal.m4: run python-config for crosscompiling
3108         flags. 
3109
3110         * scripts/lilypond-book.py (Lilypond_file_snippet.my_system): add
3111         -f png for HTML, TEXINFO formats. 
3112
3113         * input/tutorial/lbook-html-test.html: new file.
3114
3115         * lily/include/tie-formatting-problem.hh (class
3116         Tie_formatting_problem): index Chord_outline_map by Tuple2 for
3117         [column, direction]. This fixes laissez vibrer ties.
3118  
3119         * flower/include/tuple.hh (struct Tuple2): new file.
3120
3121         * mf/GNUmakefile (FC_FIND): new function. Find ncsb using
3122         $(FCMATCH), only if $(NCSB_DIR) not set. 
3123
3124         * configure.in (LINK_GXX_STATICALLY): only warn if $NCSB_DIR set.
3125
3126         * config.make.in (DOCUMENTATION): set FCMATCH.  
3127
3128         * autogen.sh (srcdir): don't set --with-ncsb-dir. 
3129
3130 2006-05-03  Graham Percival  <gpermus@gmail.com>
3131
3132         * Documentation/user/ various: final round of reorg.
3133
3134         * Documentation/user/instrument-notation.itely: some more
3135         fixes from Eduardo, thanks!
3136
3137 2006-05-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
3138
3139         * VERSION (PACKAGE_NAME): release 2.9.3
3140
3141         * flower/file-path.cc (is_dir): canonicalize file name before stat'ing.
3142
3143         * lily/relocate.cc (framework_relocation): remove old relocation stuff.
3144
3145 2006-05-01  Mats Bengtsson  <mabe@s3.kth.se>
3146
3147         * scm/define-grob-properties.scm (all-user-grob-properties):
3148         Correct typo, thanks to Eduardo.
3149
3150 2006-05-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
3151
3152         * scripts/GNUmakefile (SEXECUTABLES): remove lilypond-ps2png.scm
3153
3154         * buildscripts/lilypond-words.py (F): indent fix.
3155
3156         * input/regression/tie-arpeggio-collision.ly: new file.
3157
3158         * lily/tie-formatting-problem.cc (set_column_chord_outline): new
3159         function: store outlines per column rank.
3160
3161         * lily/include/tie-configuration.hh (class Tie_configuration): add
3162         column_ranks_ to specification and configuration, to distinguish
3163         between ties for different heads in arpegiated chords.
3164
3165         * lily/relocate.cc (framework_relocation): use INSTALLER_PREFIX.
3166
3167         * *.py: more 4 space indents.
3168
3169         * autogen.sh (conf_flags): set sensible default for with-ncsb-dir
3170
3171 2006-05-01  Joe Neeman  <joeneeman@gmail.com>
3172
3173         * scm/lily-library.scm: Fix guile 1.6 compatibility in inf? and nan?
3174
3175 2006-05-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
3176
3177         * buildscripts/pfx2ttf.fontforge (err): create OTF files.
3178
3179         * scripts/abc2ly.py (dump_score): indent of 4 for python code. 
3180
3181         * configure.in (LINK_GXX_STATICALLY): remove locate() call.
3182
3183 2006-04-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3184
3185         * python/convertrules.py (conv): indent 4 for python files.
3186
3187 2006-04-29  Mats Bengtsson  <mabe@s3.kth.se>
3188
3189         * Documentation/user/changing-defaults.itely (Creating contexts):
3190         Clarify \new semantics.
3191
3192 2006-04-28  Graham Percival  <gpermus@gmail.com>
3193
3194         * Documentation/user/ various: major new sections in the
3195         Learning manual, slight reorg elsewhere.
3196
3197 2006-04-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
3198
3199         * mf/GNUmakefile (MFTRACE_FLAGS): add $(outdir) to $(ENCODING_FILE) 
3200
3201         * scm/framework-ps.scm (output-framework): remove PageMedia
3202
3203 2006-04-27  Graham Percival  <gpermus@gmail.com>
3204
3205         * Documentation/user/ tweaks.itely, working.itely: new
3206         files, being more advanced "learning manual" chapters.
3207
3208         * Documentation/user/ tutorial, putting, lilypond: reorg.
3209
3210 2006-04-26  Graham Percival  <gpermus@gmail.com>
3211
3212         * input/regression/lyric-combine-polyphonic.ly: fixed test
3213         (no more "can't find context `one'" error).
3214
3215 2006-04-25  Joe Neeman <joeneeman@gmail.com>
3216
3217         * lily/stem-tremolo.cc (print): fix whole note tremolo placement
3218
3219         * input/regression/stem-tremolo.ly: add 2 more whole note examples
3220         
3221 2006-04-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3222
3223         * lily/relocate.cc (read_relocation_dir): new function.
3224
3225 2006-04-26  Graham Percival  <gpermus@gmail.com>
3226
3227         * Documentation/user/instrument-notation.itely: a few more fixes
3228         from Eduardo, thanks!
3229
3230         * Documentation/user/README.txt: new file; contains info on
3231         style that used to be in lilypond.tely.
3232
3233         * Documentation/user/ various: first round of doc reorg.
3234
3235         * Documentation/user/baer-flat-bw.png: remove alpha bit from
3236         graphic; this probably causes problems on some pdf
3237         viewers, notably Adobe Acrobat.
3238
3239 2006-04-24  Graham Percival  <gpermus@gmail.com>
3240
3241         * Documentation/user/instrument-notation.itely: many alterations
3242         to Vocal music, from Eduardo Viera.
3243
3244 2006-04-23  Graham Percival  <gpermus@gmail.com>
3245
3246         * Documentation/user/instrument-notation.itely: fix \new
3247         instead of \context problem.
3248
3249 2006-04-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3250
3251         * lily/relocate.cc (expand_environment_variables): new function.
3252         (read_line): id.
3253         (read_relocation_file): id.
3254
3255         * scm/stencil.scm (eps-file->stencil): fix EPS PS embedding code 
3256
3257 2006-04-21  Erlend Aasland  <erlenda@gmail.com>
3258
3259         * ly/engraver-init.ly: remove old comments from TabVoice
3260
3261 2006-04-20  Graham Percival  <gpermus@gmail.com>
3262
3263         * Documentation/user/instrument-notation.itely: added Erlend's
3264         latest doc patch, thanks!
3265
3266 2006-04-19  Erlend Aasland <erlenda@gmail.com>
3267
3268         * lily/include/slur.hh:
3269         * lily/slur.cc:
3270         * lily/phrasing-slur-engraver.cc:
3271         * lily/slur-engraver.cc: Fix 'cut & paste' code by merging
3272         acknowledge_extra_object () from Phrasing_slur_engraver:: and
3273         Slur_engraver:: and putting it in
3274         Slur::auxiliary_acknowledge_extra_object ().
3275
3276         * ps/music-drawing-routines.ps (draw_dashed_slur): fix another bug
3277
3278         * lily/note-collision.cc: fix a comment
3279
3280 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
3281
3282         * stepmake/bin/add-html-footer.py: fix footer position in
3283         generated html files: before </body> and </html> tags.
3284
3285 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
3286
3287         * scripts/GNUmakefile: revert last "fix", which rather broke make.
3288         Earlier successive `make' commands finally compiled ok.
3289
3290         * Documentation/topdocs/INSTALL.texi: require mftrace 1.1.19.
3291
3292 2006-04-18  Erlend Aasland <erlenda@gmail.com>
3293
3294         * lily/include/stem-tremolo.hh:
3295         * lily/stem-tremolo.cc: move rotated_box () to Lookup:: and update
3296         callers.
3297
3298         * lily/lookup.cc:
3299         * lily/include/lookup.hh: add rotated_box ()
3300
3301 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
3302
3303         * scripts/GNUmakefile: bugfix: run help2man only after scripts have 
3304         been generated. Fixes "can't get `--help'" bug after make clean.
3305
3306         * THANKS: alphabetize contributors.
3307
3308 2006-04-17  Graham Percival  <gpermus@gmail.com>
3309
3310         * Documentation/user/instrument-notation.itely: added Erlend's
3311         tabs and banjo doc patch.  Thanks!
3312
3313 2006-04-17  Erlend Aasland  <erlenda@gmail.com>
3314
3315         * scm/define-grobs.scm: fix stem-attachment for tablature note heads.
3316
3317         * ps/music-drawing-routines.ps (draw_dashed_line): fix dash pattern bug.
3318
3319         * scm/output-lib.scm: add some more predefined string tunings.
3320
3321         * Documentation/user/instrument-notation.itely: and doc them.
3322
3323 2006-04-16  Jürgen Reuter  <reuter@ipd.uka.de>
3324
3325         * ly/engraver.ly: Remove obsolete comments.
3326
3327         * ly/gregorian-init.ly: Define default layout block.
3328
3329         * input/puer-fragment.ly: Updated and extended.
3330
3331 2006-04-15  Jan Nieuwenhuizen  <janneke@gnu.org>
3332
3333         * lily/lily-parser-scheme.cc: Use them to fix --output=DIR/BASE
3334         pdf conversion behaviour.
3335
3336         * flower/file-name.cc (dir_name)
3337         (get_working_directory): Move from relocate.cc.
3338
3339         * lily/relocate.cc (setup_paths): Remove rogue stat calls.
3340         
3341         * lily/relocate.cc: Encapsulate sys/stat.h in
3342         HAVE_STAT_H.
3343
3344 2006-04-14  Graham Percival  <gpermus@gmail.com>
3345
3346         * Documentation/user/ various: small updates from Cameron
3347         and Juergen, thanks!
3348
3349         * Documentation/user/ various: small updates of my own.
3350
3351         * THANKS: 2.7 -> 2.8.
3352
3353 2006-04-11  Graham Percival  <gpermus@gmail.com>
3354
3355         * scm/define-context-properties.scm: typo.
3356
3357         * Documentation/user/ : many more small updates.
3358
3359 2006-04-13  Jürgen Reuter  <reuter@ipd.uka.de>
3360
3361         * scm/define-music-types.scm: disposed "docme".
3362
3363 2006-04-11  Erlend Aasland  <erlenda@gmail.com>
3364
3365         * lily/hairpin.cc: make niente circles a bit smaller.
3366
3367 2006-04-10  Erlend Aasland  <erlenda@gmail.com>
3368
3369         * mf/GNUmakefile: remove redundant mftrace check. Also remove
3370         get-pfa and get-*-fonts targets.
3371
3372 2006-04-10  Graham Percival  <gpermus@gmail.com>
3373
3374         * THANKS, Documentation/user/ basic-notation, advanced-notation,
3375         music-glossary, programming-interface: more minor fixes
3376         from mailist.
3377
3378         * scm/define-grob-properties.scm: clarified direction, thanks Mats!
3379
3380         * scm/define-context-properties.scm: another old \property update.
3381         This time tested for compiling!
3382
3383 2006-04-10  Erlend Aasland  <erlenda@gmail.com>
3384
3385         * mf/GNUmakefile: fix for mftrace version >= 1.2.0
3386
3387 2006-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
3388
3389         * scm/define-context-properties.scm (all-user-translation-properties): 
3390         * Documentation/user/global.itely (Page formatting): Compile fix.
3391
3392 2006-04-09  Mats Bengtsson  <mabe@s3.kth.se>
3393
3394         * Documentation/user/advanced-notation.itely (Polymetric
3395         notation): Update the example to use the "+" symbol and add link
3396         to input/test/compound-time.ly.
3397
3398 2006-04-08  Graham Percival  <gpermus@gmail.com>
3399
3400         * scm/define-grob-properties.scm: clarify docs for #'direction.
3401
3402         * scm/define-context-properties.scm: update old \property override.
3403
3404         * Documentation/user/ advanced-notation, global, lilypond-book:
3405         more minor doc updates.
3406
3407 2006-04-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
3408
3409         * lily/parser.yy (Generic_prefix_music_scm): append lists, not objects.
3410
3411         * scm/backend-library.scm (search-gs): oops.
3412
3413 2006-04-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
3414
3415         * scripts/lilypond-book.py (output): use base, not filename for href.
3416
3417         * scm/backend-library.scm: only look for gs.
3418
3419         * scripts/lilypond-book.py (output): fix printfilename.
3420
3421         * lily/parser.yy (music_function_musicless_prefix): fold together
3422         definitions of signature (SCM*) (Music|post_event|chord_body_element)
3423
3424         * lily/slur.cc (print): only set font-size if not set yet.
3425
3426         * lily/slur-configuration.cc (add_score): improved layout of debug
3427         scoring output.
3428
3429 2006-04-05  David Feuer  <David.Feuer@gmail.com>
3430
3431         * music-drawing-routines.ps (draw_round_box): removed testing artifact.
3432         (draw_circle): Hopefully fixed regression.
3433         Improved documentation for several procedures.
3434         
3435 2006-03-04  Werner Lemberg  <wl@gnu.org>
3436
3437         * ly/engraver-init.ly (\Score): Add beam-event to quotedEventTypes.
3438
3439 2006-04-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
3440
3441         * scripts/musicxml2ly.py (bindir): add dynamic
3442         relocation. 
3443
3444 2006-04-04  Graham Percival  <gpermus@gmail.com>
3445
3446         * Documentation/user/ basic-notation, advanced-notation, putting,
3447         instrument-notation, invoking, lilypond, THANKS: another ream of small
3448         fixes from the Doc Helpers.
3449
3450 2006-04-03  David Feuer  <David.Feuer@gmail.com>
3451
3452         * music-drawing-routines.ps: remove superfluous gsave/grestore pairs.
3453
3454         * lilyponddefs.ps (set-ps-scale-to-lily-scale): Fixed code duplication.
3455
3456         * Cleaned up interfaces between PostScript and Scheme, and moved
3457         computations from PostScript to Scheme:
3458
3459         * music-drawing-routines.ps
3460         (*SF, stroke_and_fill): new procedures.  Replaced stroke and fill
3461         with stroke_and_fill throughout.
3462         (euclidean_length, print_letter, draw_box): Deleted unused
3463         procedures.  If someone needs draw_box, implement it using
3464         draw_round_box; don't duplicate code.
3465         (print_glyphs, draw_round_box, draw_polygon, draw_repeat_slash):
3466         Refactored/cleaned up interfaces.
3467         (mark_URI): Moved.
3468
3469         * output-ps.scm: reordered arguments to PostScript functions to
3470         match new interfaces
3471         (glyph-string): Rewrote glyph-string.
3472         (grob-cause): Replaced string-append with format.
3473         (repeat-slash): Rewrote to do computation here.
3474         (round-filled-box): Rewrote to do computation here.
3475
3476 2006-04-04  Erlend Aasland  <erlenda@gmail.com>
3477
3478         * stepmake/stepmake/generic-targets.make: add cvs-clean target
3479
3480         * stepmake/stepmake/toplevel- targets.make: print help info about
3481         cvs-clean
3482
3483 2006-04-03  Erlend Aasland  <erlenda@gmail.com>
3484
3485         * input/regression/hairpin-circled.ly: new file
3486
3487 2006-04-03  Erlend Aasland  <erlenda@gmail.com>
3488
3489         * lily/hairpin.cc (print): add support for circled tip
3490
3491         * scm/define-grob-properties.scm: add circled-tip parameter
3492
3493         * scm/define-grobs.scm: init circled-tip to false
3494         
3495 2006-04-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
3496
3497         * scm/music-functions.scm (quote-substitute): set
3498         iterators-ctor. 
3499
3500 2006-03-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
3501
3502         * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): set
3503         BSTINPUTS. 
3504
3505         * Documentation/topdocs/AUTHORS.texi (Top): add David Feuer.
3506
3507         * scm/output-ps.scm (glyph-string): revert cid selectfont.
3508
3509 2006-03-31  David Feuer  <david.feuer@gmail.com>
3510         
3511         * scm/framework-ps.scm:
3512         
3513         * scm/output-ps.scm: glyph-string now produces smaller, more
3514         readable, and probably faster PostScript.  Several findfont
3515         scalefont setfont instances changed to selectfont
3516         Hacked-up string-appends changed to formats.
3517
3518         * ps/music-drawing-routines.ps: add print_letter, print_glyphs.
3519         
3520 2006-03-30  Graham Percival  <gpermus@gmail.com>
3521
3522         * scm/lily-library.scm: make "no version" warning message more polite.
3523
3524         * lily/music.cc: add double quotes to failed octave check.
3525
3526         * Documentation/user/ advanced-notation, changing-defaults,
3527         instrument-notation, invoking, music-glossary: whole bunch of minor
3528         fixes from mailist.
3529
3530 2006-03-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
3531
3532         * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): use
3533         $(buildscriptdir) iso. depth.
3534
3535         * VERSION (PACKAGE_NAME): release 2.9.1
3536
3537 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
3538
3539         * lily/pango-font.cc (pango_item_string_stencil): more robustness.
3540
3541         * VERSION (PATCH_LEVEL): bump version number.
3542
3543         * flower/include/guile-compatibility.hh (scm_from_uint32): add
3544         scm_from_uint32 ()
3545
3546         * lily/pango-font.cc (pango_item_string_stencil): use
3547         scm_from_uint32 ()
3548
3549         * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
3550         $(outdir)/emmentaler-%.svg): remove canary.
3551
3552         * lily/pango-font.cc (pango_item_string_stencil): only use uXXX
3553         glyphnames if we have a ttf font.
3554
3555 2006-03-30  Mats Bengtsson  <mabe@s3.kth.se>
3556
3557         * Documentation/user/advanced-notation.itely (Font selection):
3558         Corrected reference to the font-family-override.ly example.
3559
3560 2006-03-30  Joe Neeman  <joeneeman@gmail.com>
3561         
3562         * lily/chord-tremolo-engraver.cc (acknowledge_stem): set the
3563         stem-tremolo object in the stem (or else the stem might not be
3564         long enough).
3565
3566 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
3567
3568         * lily/ttf.cc (print_trailer): only print existing glyphs.
3569
3570 2006-03-30  Joe Neeman  <joeneeman@gmail.com>
3571
3572         * lily/stem-tremolo.cc (print): for whole notes (and breves, etc.)
3573         position the tremolo based on the position of the notehead.
3574
3575         * input/regression/stem-tremolo.ly: add example of unbeamed eighth
3576         notes and update the texidoc line with the new positioning rules.
3577         
3578 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
3579
3580         * lily/ttf.cc (print_trailer): don't always use uXXX glyphname.
3581
3582         * scripts/lilypond-book.py (Module): set default for linewidth if
3583         preamble not found.
3584
3585 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
3586
3587         * VERSION (PACKAGE_NAME): release 2.9.0.
3588
3589         * input/regression/stem-tremolo-position.ly: new file.
3590
3591         * lily/stem-tremolo.cc: remove Stem_tremolo::dim_callback
3592
3593 2006-03-28  Joe Neeman  <joeneeman@gmail.com>
3594
3595         * lily/stem-tremolo.cc (print): position
3596         the tremolo depending only on the end of the stem
3597         and not on the notehead
3598         (raw_stencil): center, on the middle staff line, the
3599         flag that is closest to the end of the stem (previously
3600         the bottom flag)
3601         (calc_width): add this callback to shorten a tremolo when
3602         it is beamed or it is stemup with a flag
3603         (style): add this callback to make a tremolo rectangular when
3604         it is beamed or it is stemup with a flag
3605         (rotated_box): this is like Lookup::beam but makes a rotated
3606         rectangle instead of a parallelogram
3607
3608         * lily/stem.cc (calc_stem_info): make sure the stem
3609         is long enough to fit the tremolo
3610         (calc-length): reduce the length of tremolo stems since the
3611         tremolo code is now capable of better positioning
3612
3613         * scm/define-grobs.scm: make calc_width the default beam-width
3614         callback for stem-tremolo and add the style callback
3615                 
3616 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
3617
3618         * lily/tuplet-bracket.cc (calc_control_points): handle suicide
3619         case. 
3620
3621 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
3622
3623         * lily/ttf.cc (make_index_to_charcode_map): restore old
3624         cmap. 
3625
3626 2006-03-28  Werner Lemberg  <wl@gnu.org>
3627
3628         * lily/pango-font.cc (get_unicode_name): Fix `uXXXXX' glyph names.
3629
3630 2006-03-28  Graham Percival  <gpermus@gmail.com>
3631
3632         * THANKS: update for 2.9, add section for Documentation helpers.
3633
3634         * Documentation/topdocs/NEWS.tely: compile fix.
3635
3636         * Documentation/user/ basic-notation, global, advanced-notation,
3637         examples.itely: minor fixes from mailist.
3638
3639 2006-03-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
3640
3641         * mf/feta-bolletjes.mf: match width of solfa notes with normal
3642         note heads. 
3643
3644         * lily/ttf.cc (print_trailer): use it.
3645
3646         * lily/pango-font.cc (get_unicode_name): new function.
3647
3648         * lily/ttf.cc (make_index_to_charcode_map): move function from
3649         open-type-font.cc
3650         (print_trailer): substitute uniXXXX name if applicable. 
3651
3652         * lily/pango-font.cc (get_index_to_charcode_map): new function.
3653         (pango_item_string_stencil): use it to generate uniXXXX names.
3654
3655         * mf/feta-bolletjes.mf (overdone_heads): add small style (ugly)
3656         note heads, for uniform widths in shape note output.
3657         (overdone_heads): hmm. remove them again.
3658
3659         * scripts/lilypond-book.py (output): add links to filenames.
3660
3661         * Documentation/topdocs/INSTALL.texi (Top): update versions.
3662
3663         * lily/note-collision.cc (get_clash_groups): only consider when
3664         Note_column::dir <> CENTER. 
3665
3666         * scripts/lilypond-book.py (get_option_parser): init output_name
3667         to ''. 
3668
3669 2006-03-24  Graham Percival  <gpermus@gmail.com>
3670
3671         * Documentation/topdocs/NEWS.tely: add @end itemize
3672
3673         * Documentation/user/ global, advanced-notation: minor
3674         stuff from mailist.
3675
3676 2006-03-23  Graham Percival  <gpermus@gmail.com>
3677
3678         * Documentation/user/ lilypond.tely, music-glossary,
3679         preface: housekeeping; 2005->2006, remove "notes for 2.6"
3680
3681 2006-03-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
3682
3683         * mf/GNUmakefile: don't install .enc files.
3684
3685         * Documentation/topdocs/NEWS.tely: clear for 2.9 cycle.
3686
3687         * VERSION (PATCH_LEVEL): bump to 2.9.0
3688
3689 2006-03-22  Graham Percival  <gpermus@gmail.com>
3690
3691         * Documentation/user/advanced-notation.itely: minor fixes
3692         from mailist.
3693
3694 2006-03-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
3695
3696         * Documentation/topdocs/AUTHORS.texi (Top): add Joe Neeman.
3697
3698         * branch lilypond_2_8
3699
3700 2006-03-22  Han-Wen Nienhuys  <lilydev@localhost.localdomain>
3701
3702         * scripts/lilypond-book.py (samefile): new function, for windoze
3703         compatibility.
3704
3705 2006-03-21  Graham Percival  <gpermus@gmail.com>
3706
3707         * ly/engraver-init.ly: add info about StaffGroup.
3708
3709 2006-03-21  Han-Wen Nienhuys  <lilydev@localhost.localdomain>
3710
3711         * input/regression/stem-direction-context.ly: idem.
3712
3713         * Documentation/topdocs/NEWS.tely (Top): fix interpolation example.
3714
3715         * THANKS: add Mats.
3716
3717         * input/regression/page-layout-twopass.ly: comment out \markup so
3718         tweak-file is left.
3719
3720         * lily/instrument-name-engraver.cc (finalize): add to instrument
3721         name global System. This also fixes chopped instrument names, but
3722         doesn't crash when there are slurs/beams.
3723
3724         * lily/slur-configuration.cc (add_score): disallow negative slur
3725         scores.
3726         
3727 2006-03-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3728
3729         * scm/framework-ps.scm (dump-stencil-as-EPS): remove debugging code.
3730
3731         * lily/instrument-name-engraver.cc (process_music): kludge: add
3732         InstrumentName spanner to axis group of left bound. Fixes chopped
3733         off instrument names in EPS images.
3734
3735         * input/regression/lyric-hyphen-retain.ly: elaborate explanation.
3736
3737         * scripts/abc2ly.py (option_parser): update to 2.7.40
3738
3739 2006-03-20  Graham Percival  <gpermus@gmail.com>
3740
3741         * THANKS: move small doc contributors to SUGGESTIONS.
3742
3743         * Documentation/user/ basic-notation, advanced-notation,
3744         global: small changes from mailist.
3745
3746 2006-03-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3747
3748         * Documentation/user/advanced-notation.itely (Text marks): update
3749         for new rehearsalMarkAlignSymbol convention.
3750
3751         * VERSION (PATCH_LEVEL): bump version.
3752
3753         * input/test/instrument-name-align.ly: new file.
3754
3755         * scm/define-markup-commands.scm (hcenter-in): add hcenter-in.
3756
3757         * input/test/instrument-name-align.ly: new file. Document how to
3758         align instrument names.
3759
3760         * lily/mark-engraver.cc: remove properties.
3761
3762         * scm/define-context-properties.scm
3763         (all-user-translation-properties): remove align symbol properties
3764         for barnumber/reh. mark.
3765
3766         * lily/break-align-interface.cc (self_align_callback): new
3767         interface, new function. Look at complete alignment. This handles
3768         tunable break alignments in case break-align-symbols are missing.
3769
3770         * lily/bar-number-engraver.cc (acknowledge_break_alignment): new function
3771
3772         * lily/mark-engraver.cc (acknowledge_break_alignment): new function.
3773
3774         * python/convertrules.py (conv): mark/bar number alignment rule.
3775
3776         * lily/break-align-interface.cc (calc_positioning_done): also
3777         store offset from last visible break-alignment to its
3778         neighbor. This makes alignment on non-visible objects more reliable.
3779
3780         * po/lilypond.pot (Module): ran po-replace.
3781
3782         * input/regression/tie-single-manual.ly (Module): new file.
3783
3784         * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
3785         look at has_manual_position_.
3786         (from_ties): set has_manual_position_ if tie has staff-position set.
3787
3788         * lily/tuplet-bracket.cc (calc_positions): idem.
3789
3790         * lily/tuplet-number.cc (print): don't print tupletnumber if it
3791         doesn't span time.
3792
3793 2006-03-19  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3794
3795         * scm/define-markup-commands.scm (smallCaps): new markup command
3796         for turning a text to small caps using smaller font size and upper
3797         casing.
3798
3799 2006-03-17  Graham Percival  <gpermus@gmail.com>
3800
3801         * Documentation/user/ examples, instrument-notation,
3802         advnaced-notation: minor fixes from mailist.
3803
3804 2006-03-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3805
3806         * Documentation/user/tutorial.itely (First steps): change example
3807         to verbatim.  
3808
3809 2006-03-17  Graham Percival  <gpermus@gmail.com>
3810
3811         * Documentation/user/ examples, advanced: minor changes from mailist.
3812
3813         * THANKS: add Geoff Horton, for documentation stuff.
3814
3815 2006-03-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3816
3817         * python/lilylib.py (system): revert have_select kludge.
3818
3819         * Documentation/user/tutorial.itely (Commenting input files):
3820         update version numbers in doc. 
3821
3822         * scm/define-grob-interfaces.scm (multi-measure-interface): add
3823         bound-padding to multi-measure-interface
3824
3825 2006-03-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3826
3827         * input/test/engraver-example.ily: update version number.
3828
3829         * VERSION (PACKAGE_NAME): release 2.7.39
3830
3831         * lily/note-spacing.cc (get_spacing): heighten threshold where
3832         accidentals/arpeggios influence previous spacing fully.
3833
3834         * lily/rest.cc (y_offset_callback): only use direction if
3835         staff-position wasn't set before.
3836
3837         * lily/bar-number-engraver.cc: add support for
3838         barNumberAlignSymbol. 
3839         add ADD_ACKNOWLEDGER() call for break_aligned. Fixes bar-number-breathe
3840
3841         * lily/pointer-group-interface.cc (set_ordered): new function. 
3842         (add_unordered_grob): new function.
3843
3844         * lily/grob-array.cc (Grob_array): grob-arrays are always assumed
3845         to ordered, unless the opposite has been proved.  This fixes
3846         random reordering of large object groups across linebreaks,
3847         eg. beams.
3848
3849         * lily/main.cc (do_chroot_jail): printf format fix.
3850
3851         * lily/tie-formatting-problem.cc (generate_configuration):
3852         multiply y-shift for dot with direction.
3853  
3854         * scm/define-markup-commands.scm (note-by-number): put (magstep
3855         size) in y-attach too.
3856
3857         * Documentation/topdocs/NEWS.tely (Top): show override.
3858
3859         * scm/define-grobs.scm (all-grob-descriptions): reinstate neutral
3860         direction for stems.
3861         
3862 2006-03-15  Graham Percival  <gpermus@gmail.com>
3863
3864         * Documentation/user/ changing-defaults, global: minor
3865         fixes from mailist.
3866
3867 2006-03-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3868
3869         * lily/lexer.ll (Lily_lexer): bump required version to 2.7.38
3870
3871         * lily/spacing-spanner.cc (musical_column_spacing): crude fix for
3872         breakable items after uniformly stretched notes.
3873
3874         * lily/tie-formatting-problem.cc (set_chord_outline): initialize
3875         outline with outer edge of note heads. This prevents infinity
3876         problems with tied whole notes.
3877
3878         * scripts/lilypond-book.py (do_file): use os.popen
3879
3880         * python/convertrules.py (conv): add rule for Stem #'beamed-*
3881
3882 2006-03-14 Erik Sandberg  <mandolaerik@gmail.com>
3883
3884         * Documentation/user/invoking.itely: Add ragged-right to bug report
3885         guidelines.
3886
3887 2006-03-14  Graham Percival  <gpermus@gmail.com>
3888
3889         * Documentation/user/global.itely: small fix from mailist.
3890
3891 2006-03-14  Mats Bengtsson  <mabe@s3.kth.se>
3892
3893         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use the
3894         file descriptor returned by tempfile.mkstemp() when writing
3895         to tmpfile and closing it. Solves problem with unlink(tmpfile)
3896         on mingw.
3897
3898 2006-03-14  Jan Nieuwenhuizen  <janneke@gnu.org>
3899
3900         * po/fi.po: newline bugfix.
3901
3902 2006-03-12  Jan Nieuwenhuizen  <janneke@gnu.org>
3903
3904         * scm/paper.scm (paper-alist): Rounding fixes.
3905
3906 2006-03-13  Graham Percival  <gpermus@gmail.com>
3907
3908         * Documentation/user/ changing-defaults, instrument-notation,
3909         tutorial: small fixes from mailist, mostly from Mats.  Thanks!
3910
3911 2006-03-13 Heikki Junes  <hjunes@cc.hut.fi>
3912
3913         * po/fi.po: update.
3914
3915 2006-03-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3916
3917         * stepmake/bin/add-html-footer.py (mail_address_url): don't add
3918         mailto: to http:// 
3919
3920         * python/lilylib.py (print_environment): move ps_page_count to
3921         lilypond-book.py
3922
3923 2006-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3924
3925         * Documentation/user/music-glossary.tely (G clef): fix clef alignments.
3926
3927         * scm/framework-ps.scm (embed-document): new function. Use to
3928         embed PFA files.
3929
3930         * ly/engraver-init.ly: init rehearsalMarkAlignSymbol to staff-bar.
3931
3932 2006-03-12  Mats Bengtsson  <mabe@s3.kth.se>
3933
3934         * Documentation/user/instrument-notation.itely (Setting simple
3935         songs): Added \book{...} around the full example, so the separate
3936         markups are included in the printed example. 
3937
3938 2006-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3939
3940         * scripts/lilypond-book.py (get_latex_textwidth): explicitly close
3941         tmphandle.
3942
3943         * python/lilylib.py (system): rewrite system() using
3944         subprocess. Remove >& redirection trickery.
3945
3946 2006-03-11  Graham Percival  <gpermus@gmail.com>
3947
3948         * Documentation/user/ changing-defaults, global, scheme-tutorial,
3949         notation-appendices.itely: minor fixes from mailist.
3950
3951 2006-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3952
3953         * Documentation/user/GNUmakefile ($(outdir)/lilypond.html):
3954         unsplit man also needs images.
3955
3956         * tex/texinfo.tex (sectionheading, q.v.): relax after \char'15.
3957
3958         * VERSION (PACKAGE_NAME): 2.7.38 released.
3959
3960 2006-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3961
3962         * scripts/lilypond-book.py (get_latex_textwidth): look for latex
3963         log in output dir.
3964
3965 2006-03-08  Johannes Schindelin  <Johannes.Schindelin@gmx.de>
3966
3967         * lily/audio-column.cc, lily/score-performer.cc: MIDI output now
3968         respects the Score.skipTypesetting property.
3969         
3970 2006-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3971
3972         * scm/framework-ps.scm (ps-embed-cff): no Setup section in
3973         Prolog. No %%EOF after CFF file.
3974
3975 2006-03-08  Joe Neeman  <joeneeman@gmail.com>
3976         
3977         * lily/constrained-breaking.cc (get_max_systems): used to return a
3978         much too big value
3979         (combine_demerits): use pointers to reduce copying data
3980         (calc_subproblem): idem
3981         (get_page_penalty): add page turn penalties
3982         
3983 2006-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3984
3985         * Documentation/user/invoking.itely (Invoking lilypond): better
3986         explanation of -e usage.
3987
3988         * lily/main.cc (main_with_guile): don't append to
3989         init_scheme_code_string
3990
3991         * tex/texinfo.tex (sectionheading, q.v.): don't center @image.
3992
3993         * Documentation/user/invoking.itely: add note about MacOS X scripts.
3994
3995         * scripts/convert-ly.py (do_options): don't print help for
3996         --show-rules rule.
3997
3998         * tex/texinfo.tex: patch texinfo.tex to leave single quotes in
3999         @code and @example. Update from texinfo.tex from CVS.
4000
4001 2006-03-08  Graham Percival  <gpermus@gmail.com>
4002
4003         * Documentation/user/scheme-tutorial.itely: clarifies distances
4004         measured in staff-spaces.
4005
4006 2006-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4007
4008         * lily/slur.cc (outside_slur_callback): only calculate offsets if
4009         consider[k] is true.
4010
4011         * scm/output-ps.scm (grob-cause): put numbers to ~$ (Thanks Johannes!)
4012
4013         * lily/spacing-basic.cc (standard_breakable_column_spacing): also
4014         consider columns that have originals.  Unifies spacing for mm
4015         rests around line breaks.
4016
4017         * lily/multi-measure-rest.cc (set_spacing_rods): read bound-padding.
4018         (set_text_rods): idem.
4019         (calculate_spacing_rods): new function: share code between
4020         set_text_rods and set_spacing_rods.
4021         (set_text_rods): take extents of bounds into account.  
4022
4023 2006-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4024
4025         * Documentation/user/basic-notation.itely (Writing music in
4026         parallel): don't use relative.
4027
4028 2006-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4029
4030         * ly/music-functions-init.ly (Module): add shiftDurations
4031
4032         * ly/drumpitch-init.ly (drumPitchNames): add tamtam.
4033
4034         * scm/paper.scm (paper-alist): no decimals for Ax paper sizes. 
4035
4036         * ly/engraver-init.ly: init vocalName to nil.
4037
4038 2006-03-05 Erik Sandberg  <mandolaerik@gmail.com>
4039
4040         * scm/music-functions.scm (music->make-music): bugfix,
4041         KeyChangeEvents are now handled correctly.
4042
4043         * scripts/lilypond-book.py: Add --debug option.
4044
4045 2006-03-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4046
4047         * python/lilylib.py: add tempfile.
4048
4049 2006-03-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4050
4051         * VERSION (PACKAGE_NAME): release 2.7.37
4052
4053         * python/lilylib.py (ps_page_count): remove make_ps_images().
4054         (ps_page_count): remove mkdir_p
4055         (system): remove cleanup_temp.
4056         (exit): remove lilypond_version_(check)
4057         (error_log): remove pseudo_filter_p
4058         remove read_pipe
4059         remove cp_to_dir
4060         remove identify
4061
4062         * scripts/lilypond-book.py (Lilypond_snippet.compose_ly): don't
4063         use __main__
4064
4065         * lily/accidental-engraver.cc (make_standard_accidental): only add
4066         support for side-axis is X_AXIS. Fixes text-spacing-accidental.ly
4067
4068         * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
4069         $(outdir)/emmentaler-%.svg): rewrite without functions; too many
4070         Make incompatibilities.
4071
4072         * scm/output-ps.scm (grob-cause): replace backslashes by /
4073         (glyph-string): use ~$ for less decimals for glyph-string and grob-cause.
4074
4075 2006-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
4076
4077         * cygwin/GNUmakefile: Install fixes.
4078
4079         * scripts/GNUmakefile (SEXECUTABLES): Install fix: remove mup2ly.
4080
4081         * lily/note-head.cc (head::get_balltype): Compile fix.
4082
4083         * flower/file-name.cc (dos_to_posix): Flower string fix.
4084
4085 2006-03-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4086
4087         * python/lilylib.py: pychecker cleanups.
4088
4089         * scripts/lilypond-book.py
4090         (Lilypond_snippet.output_print_filename): pychecker cleanups
4091
4092         * scripts/midi2ly.py (Key.dump): pychecker cleanups.
4093
4094         * python/lilylib.py (underscore): remove identify() , warranty()
4095
4096         * ps/music-drawing-routines.ps: change Border routine for GSView
4097         compatibility.
4098
4099         * lily/stem.cc (height): use quantize-positions.  This triggers
4100         set_stem_lengths, so scripts on beamed stems are handled correctly.
4101
4102         * lily/side-position-interface.cc (aligned_side): check if edges
4103         of script are inside staff. Fixes accent of edge of the staff.
4104
4105         * input/regression/staccato-pos.ly: more examples.
4106
4107         * stepmake/aclocal.m4 (depth): fix bashism.
4108
4109         * lily/lyric-combine-music-iterator.cc: move from
4110         new-lyric-combine-iterator.cc
4111         (process): add pending_grace_lyric_ member to delay lyrics on
4112         grace notes.
4113
4114         * lily/system-start-text.cc (print): suicide if we don't have any
4115         elements. Fixes hara kiri'd instrument names.
4116
4117         * scripts/mup2ly.py (Module): remove.
4118
4119 2006-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4120
4121         * Documentation/user/global.itely (A single music expression):
4122         close @lilypond properly
4123
4124         * lily/volta-bracket.cc (modify_edge_height): change from
4125         after_line_breaking_callback. Suicide last bracket if appropriate.
4126  
4127         * python/lilylib.py: strip getopt support
4128
4129         * scripts/etf2ly.py (do_options): use optparse
4130
4131         * scripts/midi2ly.py: optparse, strip lilylib copy. 
4132
4133         * scripts/abc2ly.py (voices): use optparse.
4134
4135         * stepmake/stepmake/generic-vars.make: new function absdir.
4136
4137         * scripts/convert-ly.py (bindir): use optparse, argv[0] relocation.
4138
4139         * scripts/lilypond-book.py (find_file): use global_options for
4140         include path
4141
4142         * scm/ps-to-png.scm (ps-page-count): prevent null characters
4143         entering C code.
4144
4145 2006-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4146
4147         * python/lilylib.py (get_global_option): ughness for extracting
4148         global options from lilylib.
4149         (NonDentedHeadingFormatter.format_heading): move from musicxml2ly
4150
4151         * scripts/lilypond-book.py (get_option_parser): use optparse for
4152         option handling.  Put options in global_options variable.
4153
4154 2006-02-28  Heikki Junes  <hjunes@cc.hut.fi>
4155
4156         * Documentation/index.html.in: clarify.
4157
4158 2006-02-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4159
4160         * scm/layout-page-layout.scm (write-page-breaks): add a
4161         music-system-heights property to the page layout output.
4162
4163         * scm/page.scm (make-page-stencil): take footer into account when
4164         computing the 'space-left page property
4165         (annotate-space-left): take footer into account when annonating
4166         space left.
4167
4168 2006-02-28  Graham Percival  <gpermus@gmail.com>
4169
4170         * Documentation/user/ advanced-notation, global: more (final)
4171         docs for music expressions, removed special fermatas.
4172
4173 2006-02-27  Graham Percival  <gpermus@gmail.com>
4174
4175         * Documentation/user/ basic-notation, global: minor changes
4176         from mailist.
4177
4178 2006-02-26  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4179
4180         * scm/framework-ps.scm:         
4181         * scm/lily-library.scm (nan?, inf?): Move guile 1.6 compatibility
4182         layer for inf? and nan? from framework-ps to lily-library.
4183
4184 2006-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4185
4186         * mf/GNUmakefile ($(outdir)/emmentaler-$(1).otf
4187         $(outdir)/emmentaler-$(1).svg): remove backslashes from define endef.
4188
4189         * buildscripts/substitute-encoding.py (Module): remove file.
4190
4191         * mf/GNUmakefile: more PFA strippage.
4192
4193         * mf/aybabtu.pe.in (i): remove PFAaybabtu generation
4194
4195         * buildscripts/gen-emmentaler-scripts.py (i): remove PFAemmentaler
4196         generation
4197
4198         * scm/framework-ps.scm: remove font name munging.
4199
4200         * Documentation/topdocs/INSTALL.texi (Top): bump GS requirement.
4201
4202 2006-02-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4203
4204         * scm/markup.scm (define-markup-command): change
4205         def-markup-command to define-markup-command
4206
4207         * scm/music-functions.scm (define-music-function): change
4208         def-music-function to define-music-function.
4209
4210         * python/convertrules.py (conv): rules for def-music-function
4211         and def-markup-commands
4212
4213         * Documentation/user/programming-interface.itely,
4214         input/no-notation/display-lily-tests.ly,
4215         input/regression/lily-in-scheme.ly,
4216         input/regression/markup-user.ly,
4217         input/regression/music-function.ly, input/regression/tie-chord.ly,
4218         scm/fret-diagrams.scm, ly/music-functions-init.ly,
4219         ly/gregorian-init.ly: use new macro names (define-music-function,
4220         define-markup-command).
4221
4222 2006-02-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4223
4224         * scripts/lilypond-book.py (main): write Makefile dependencies file. 
4225         (output): add comments to lp-book latex output.
4226
4227         * GNUmakefile.in (footifymail): use gmane address for webpage bug
4228         address.
4229
4230 2006-02-23  Graham Percival  <gpermus@gmail.com>
4231
4232         * Documentation/user/ tutorial, global: minor changes.
4233
4234 2006-02-23  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4235
4236         * mf/GNUmakefile: add '\' in multi-line "define ... endef"
4237         blocks (for make 3.80)
4238
4239         * scm/parser-ly-from-scheme.scm (ly:parse-string-result): add
4240         \notemode so that user should not have to explicitely type it.
4241
4242         * scm/define-music-display-methods.scm: various
4243         fixes (ApplyOutputEvent, ApplyContext; \new, \context and derived
4244         constructs)
4245
4246         * input/no-notation/display-lily-tests.ly: new tests for
4247         \applyOutput and \applyContext
4248
4249 2006-02-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4250
4251         * lily/constrained-breaking.cc: patch by Joe Neeman: "I have
4252         changed it slightly so that the number of systems returned by
4253         solve () will be the same as the last value passed to resize
4254         (). I've also added more documentation, removed casts, fixed style
4255         problems and put in some recovery if constraints aren't satisfied."
4256
4257 2006-02-23  Jan Nieuwenhuizen  <janneke@gnu.org>
4258
4259         * elisp/lilypond-mode.el (count-matches-as-number): New funtion
4260         for emacs < 22 compatibility.
4261         (count-rexp): Use it.
4262         (LilyPond-string-current-midi, LilyPond-string-all-midi): Remove
4263         substring juggling (Milan Zamazal).
4264
4265 2006-02-23  Graham Percival  <gpermus@gmail.com>
4266
4267         * Documentation/user/ basic-notation, advanced-notation,
4268         global.itely, invoking.itely, tutorial,itely:
4269         minor fixes from mailist.
4270
4271         * scm/define-markup-commands.scm: improve docs of \filled-box.
4272
4273 2006-02-23  Heikki Junes  <hjunes@cc.hut.fi>
4274
4275         * Documentation/index.html.in: changes concern the previous release.
4276
4277         * input/regression/+.ly: cultivate typographical terminology.
4278
4279 2006-02-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4280
4281         * scm/define-grob-interfaces.scm (parentheses-interface): add
4282         padding to parentheses-interface.
4283
4284         * Documentation/user/GNUmakefile: remove $(CROSS) support from
4285         Documentation/user/GNUmakefile. Use --disable-documentation for that.
4286
4287         * VERSION (PATCH_LEVEL): release 2.7.36
4288
4289         * lily/slur.cc: add avoid-slur (ugh.)
4290         
4291         * lily/slur-configuration.cc (fit_factor): oops, skip point if
4292         intersection gets smaller. This fixes slurs over extreme points.
4293
4294         * lily/melody-engraver.cc (stop_translation_timestep): ignore
4295         stems with neutral-direction set.
4296
4297         * lily/piano-pedal-engraver.cc (create_text_grobs): idem.
4298
4299         * lily/open-type-font.cc (load_table): format error.
4300
4301         * lily/change-iterator.cc (process): format fix.
4302
4303         * flower/include/international.hh (_f): idem.
4304
4305         * flower/include/std-string.hh: add format printf attribute.
4306
4307         * scm/define-grobs.scm (all-grob-descriptions): height of all
4308         PedalLineSpanner is Y-extent property. Fixes pedal-ped.ly
4309
4310         * lily/ambitus-engraver.cc (finalize): use grob_array. This fixes
4311         ambitus lines.
4312
4313         * input/regression/beam-cross-staff-slope.ly: remove decrescendo.
4314
4315 2006-02-22 Erik Sandberg  <mandolaerik@gmail.com>
4316
4317         * input/regression/: upgraded syntax for some files.
4318
4319         * THANKS: Add bughunters.
4320
4321 2006-02-22  Graham Percival  <gpermus@gmail.com>
4322
4323         * Documentation/user/ invoking.itely, advanced-notation.itely,
4324         global.itely: long-awaited "let's make chapter 10 not suck"
4325         update.  Rearrange chapter 10; now called "global issues",
4326         addresses file structure, etc.  Some info from other files
4327         moved into global.itely.
4328
4329 2006-02-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4330
4331         * lily/accidental-engraver.cc (acknowledge_rhythmic_head): also
4332         catch trill-span-event notes.
4333
4334         * Documentation/user/examples.itely (Ancient notation templates): typo.
4335         (Jazz combo): typo.
4336
4337         * scripts/lilypond-book.py (main): scrap invokes_lilypond(). 
4338
4339         * Documentation/user/basic-notation.itely (Ties): document \repeatTie.
4340
4341         * Documentation/topdocs/NEWS.tely (Top): document \repeatTie.
4342
4343         * scm/define-music-types.scm (music-descriptions): add RepeatTieEvent
4344
4345         * lily/repeat-tie-engraver.cc (acknowledge_note_head): new file. cut & paste
4346         froum Laissez_vibrer_engraver.
4347
4348         * ly/declarations-init.ly (repeatTie): add \repeatTie
4349
4350         * scm/define-grobs.scm (all-grob-descriptions): add RepeatTie, RepeatTieColumn
4351
4352         * scm/define-grob-properties.scm (all-user-grob-properties): add
4353         head-direction property.
4354
4355         * lily/tie-formatting-problem.cc (from_semi_ties): rename from
4356         from_lv_ties. Take head direction argument.
4357
4358         * lily/semi-tie-column.cc: rename from
4359         laissez-vibrer-tie-column.cc. Rename class too.
4360
4361         * lily/semi-tie.cc: rename from laissez-vibrer-tie.cc. Rename
4362         class too.
4363
4364         * lily/paper-score.cc (find_break_indices): move from Break_algorithm.
4365
4366         * lily/break-algorithm.cc (find_break_indices): remove linewidth <
4367         0 case.
4368         (find_breaks): idem.
4369
4370 2006-02-21  Graham Percival  <gpermus@gmail.com>
4371
4372         * Documentation/user/advanced-notation.itely: fixed make-moment]
4373         example.
4374
4375         * Documentation/user/basic-notation.itely: more clarification to
4376         transpose.
4377
4378 2006-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4379
4380         * lily/include/constrained-breaking.hh (class
4381         Constrained_breaking): new file.
4382
4383         * lily/constrained-breaking.cc (resize): new file.
4384
4385         * lily/gourlay-breaking.cc (do_solve): ragged-last iso raggedlast
4386
4387         * Documentation/user/advanced-notation.itely (Clusters): insert
4388         end ignore too.
4389
4390         * lily/tie-column.cc (calc_positioning_done): support for
4391         tie-score debugging
4392
4393         * lily/tie-formatting-problem.cc
4394         (generate_extremal_tie_variations): factor out.
4395         (score_ties_configuration): annotate all tie 
4396         (print_ties_configuration): new routine.
4397         (generate_configuration): nudge extremal ties outside of the head
4398         Y extents.
4399         (score_ties_configuration): oops. convert to staff-space before
4400         determining position symmetry.
4401
4402 2006-02-20  Graham Percival  <gpermus@gmail.com>
4403
4404         * Documentation/user/*-notation.itely: misc minor editing,
4405         shifting doc sections around.
4406
4407         * Documentation/user/*-notation-itely, global.itely,
4408         changing-defaults.itely: added new stuff from NEWS.
4409
4410 2006-02-20  Heikki Junes  <hjunes@cc.hut.fi>
4411
4412         * po/fi.po: update.
4413
4414 2006-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4415
4416         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): don't run
4417         lilypond --verbose for lp-book.
4418
4419         * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
4420         $(outdir)/%.ly $(outdir)/%.ps): use $(srcdir) iso $(shell pwd).
4421
4422         * make/lysdoc-rules.make ($(outdir)/collated-files.tely): use
4423         $(buildscript-dir) iso. absolute depth.
4424
4425         * buildscripts/genicon.py (dir): thinko.
4426
4427         * Documentation/pictures/GNUmakefile ($(outdir)/%.ico): typo.
4428
4429 2006-02-19 Erik Sandberg  <mandolaerik@gmail.com>
4430
4431         * scm/output-lib.scm: swap darkcyan/darkyellow
4432
4433         * THANKS: Add bughunters.
4434
4435 2006-02-19  Graham Percival  <gpermus@gmail.com>
4436
4437         * Documentation/user/programming-interfaces.itely: fixed example.
4438
4439         * Documentation/user/instrument-notation.itely: fix @{ @}.
4440
4441         * scm/script.scm: add avoid-slur for \open.
4442
4443 2006-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4444
4445         * lily/tie-formatting-problem.cc (score_configuration): use
4446         sliding score for min-length. 
4447
4448         * Documentation/pictures/GNUmakefile (local-dist): loose the rule
4449         spaghetti for icons.
4450
4451         * buildscripts/genicon.py (program_name): new file.
4452
4453         * lily/tie-formatting-problem.cc (set_chord_outline): put dots
4454         in outline too.  
4455         (generate_configuration): for small ties, also look for collisions
4456         at Y + DIR*h + DELTA_Y.
4457         (get_variations): consider variation for dot positions too.
4458
4459         * lily/side-position-interface.cc (aligned_side): take abs for
4460         quantized rounded position. Fixes tenuto below staff.
4461
4462         * scm/stencil.scm (annotate-y-interval): robustify: print nan/inf
4463         markers when necessary.
4464
4465         * lily/program-option.cc (internal_set_option): add
4466         strict_infinity_checking option.
4467
4468         * scm/output-lib.scm (cyan): swap yellow and cyan.
4469
4470 2006-02-19  Graham Percival  <gpermus@gmail.com>
4471
4472         * darwin.patch: trivial linenumber update.
4473
4474         * Documentation/user/ {various}: `\context foo = named' changed
4475         to `\new foo = "name"' in docs.
4476
4477 2006-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4478
4479         * scm/stencil.scm (annotate-y-interval): use it.
4480
4481         * scm/lily-library.scm (interval-sane?): new function.
4482
4483         * buildscripts/mf-to-table.py (Char_metric.__init__): remove
4484         tfm_checksum stuff.
4485
4486         * lily/tie-formatting-problem.cc (from_lv_ties): add heads for
4487         common refpoint.
4488
4489         * flower/include/std-vector.hh (iterof): add iterof macro.
4490
4491         * lily/enclosing-bracket.cc (width): new function.
4492
4493         * lily/align-interface.cc (align_elements_to_extents): reinstate
4494         warning.
4495
4496 2006-02-18  Heikki Junes  <hjunes@cc.hut.fi>
4497
4498         * Documentation/index.html.in: fix spelling: thankyous.
4499
4500 2006-02-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4501
4502         * lily/lyric-hyphen.cc: typo.
4503
4504 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4505
4506         * stepmake/stepmake/c++-rules.make ($(outdir)/%.cc
4507         $(outdir)/%.hh): generate h and c in one rule; otherwise -jX
4508         builds don't work. 
4509
4510         * VERSION: release 2.7.35
4511
4512         * lily/beam.cc (get_default_dir): oops. Take abs () for
4513         extremes[DOWN].
4514         (get_default_dir): use extreme position criterion only in absence
4515         of forced stem directions.
4516
4517         * VERSION (PATCH_LEVEL): bump VERSION.
4518
4519         * mf/GNUmakefile: explicit rules for emmentaler/aybabtu
4520         dependencies. Necessary for -jX builds.  
4521
4522 2006-02-17  Jan Nieuwenhuizen  <janneke@gnu.org>
4523
4524         * lily/relocate.cc (setup_paths): Yet another const fix.
4525
4526 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4527
4528         * configure.in (HOST_ARCH): determine HOST_ARCH in configure.
4529
4530         * lily/relocate.cc (setup_paths): oops.
4531
4532 2006-02-17  Heikki Junes  <hjunes@cc.hut.fi>
4533
4534         * Documentation/index.html.in: order links: html before PDF.
4535
4536 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4537
4538         * lily/tie-column-format.cc (Module): remove.
4539
4540         * lily/relocate.cc (setup_paths): GCC 4.2 fixes: const correctness.
4541
4542         * lily/text-spanner.cc (print): idem.
4543
4544         * lily/dynamic-text-spanner.cc (print): only print line if longer
4545         than dash-period.
4546
4547         * lily/auto-change-iterator.cc (change_to): formatting.
4548
4549         * lily/beam.cc (get_default_dir): take extreme note head as input
4550         for stem direction.
4551
4552         * lily/tie.cc (get_default_dir): only look directions for visible
4553         stems. 
4554
4555         * lily/side-position-interface.cc (aligned_side): oops. Don't
4556         mutiply with direction. This fixes quantized (staccato, tenuto)
4557         scripts below notes.
4558
4559         * lily/lyric-hyphen.cc (set_spacing_rods): oops. Multiply with
4560         direction. Fixes c-lyrics-center-align.ly
4561
4562 2006-02-16  Jan Nieuwenhuizen  <janneke@gnu.org>
4563
4564         * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Add copy
4565         constructor.
4566
4567         * lily/std-string.cc:
4568         * lily/include/std-vector.hh (split_string): Move and rename from
4569         lily/include/misc.hh, lily/misc.cc.  Update callers.
4570
4571 2006-02-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4572
4573         * lily/include/pango-font.hh: HAVE_PANGO_FT2 iso. HAVE_PANGO_16
4574
4575 2006-02-16  Jan Nieuwenhuizen  <janneke@gnu.org>
4576
4577         * flower/test-file.cc: New file.
4578
4579         * stepmake/stepmake/test-vars.make (TEST_MODULE_LIBES): Fixes for
4580         libraries.
4581
4582         * flower/GNUmakefile (TEST_MODULE_LIBS): Link to flower lib.
4583
4584 2006-02-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4585
4586         * flower/include/file-storage.hh: remove file.
4587
4588         * lily/include/midi-item.hh (class Midi_track): idem.
4589
4590         * lily/include/source.hh (class Sources): idem.
4591
4592         * lily/include/performance.hh (class Performance): use vector
4593         iso. Cons<>
4594
4595         * flower/include/cons.hh (class Cons): remove file.
4596
4597         * flower/include/flower-proto.hh: remove template cruft.
4598
4599         * lily/include/font-metric.hh: use size_t not vsize for indices.
4600
4601         * flower/include/flower-proto.hh (Module): remove std-vector.hh
4602         from proto.
4603
4604         * lily/include/all-font-metrics.hh: use HAVE_PANGO_FT2
4605
4606         * lily/include/paper-book.hh (class Paper_book):
4607         make get_system_specs() public.
4608
4609         * scm/layout-page-layout.scm (optimal-page-breaks): only consider
4610         the force=10000 case if we don't have a current-best. 
4611
4612         * lily/tuplet-bracket.cc (get_bounds): don't do (size() - 1) for
4613         vsize 
4614
4615         * flower/include/flower-proto.hh: remove outdated templates.
4616
4617         * scm/page.scm: use annotate-spacing
4618
4619 2006-02-15  Graham Percival  <gpermus@gmail.com>
4620
4621         * scm/translation-functions.scm: circle patch from Erlend, thanks!
4622
4623         * THANKS: moved Erlend Aasland to contributors.
4624
4625 2006-02-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4626
4627         * config.hh.in: remove HAVE_PANGO_16
4628
4629         * lily/tuplet-bracket.cc (calc_positions): multiply with
4630         staff-space for beam case. This fixes tuplets+beams on scaled
4631         staves.
4632
4633         * config.hh.in: remove all Kpathsea related defines.
4634
4635         * lily/dot-column.cc (side_position): reach stem via dots->
4636         head->stem. Inspect all stems for dot collisions. 
4637
4638         * lily/dot-column-engraver.cc (class Dot_column_engraver): excise
4639         stem handling.
4640
4641         * lily/bar-number-engraver.cc (process_music): document function
4642         of whichBar.
4643
4644         * lily/score.cc (default_rendering): add pscore, not systems
4645         themselves.
4646
4647         * lily/paper-book.cc (get_system_specs): separate generation of
4648         titles and systems.
4649
4650         * flower/include/std-vector.hh: don't include config.hh
4651
4652 2006-02-15  Jan Nieuwenhuizen  <janneke@gnu.org>
4653
4654         * flower/include/std-vector.hh: Better wrapper compatibility with
4655         std::vector.
4656
4657         * flower/include/flower-proto.hh: Remove cheap forward declaration
4658         attempts.
4659
4660         * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): Bugfix.
4661
4662 2006-02-14  Graham Percival  <gpermus@gmail.com>
4663
4664         * Documentation/user/invoking.itely: add warning about command line.
4665
4666 2006-02-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4667
4668         * lily/include/lily-proto.hh: add Prob, rm Page.
4669
4670         * flower/include/std-vector.hh (VPOS): use 64 bit-proof version.
4671
4672         * VERSION: release 2.7.34
4673
4674         * lily/relocate.cc (framework_relocation): show canary if
4675         GHOSTSCRIPT_VERSION undefined.
4676
4677         * GNUmakefile.in: remove $(VERSION) symlink.
4678
4679         * lily/relocate.cc (setup_paths): add + 
4680
4681 2006-02-13  Heikki Junes  <hjunes@cc.hut.fi>
4682
4683         * Documentation/index.html.in: specify sizes for all big HTML pages.
4684
4685 2006-02-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4686
4687         * config.hh.in: remove @FRAMEWORKDIR@
4688
4689         * lily/system-start-text.cc (get_stencil): new file: separate out
4690         system-start-delimiter text support.
4691
4692         * input/**ly: replace \context with \new where appropriate.
4693         
4694         * THANKS: add Don.
4695
4696         * lily/slur-scoring.cc (get_base_attachments): use
4697         robust_relative_extent. This fixes problems with empty paper-columns. 
4698
4699 2006-02-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4700
4701         * Documentation/topdocs/NEWS.tely (Top): document \new syntax.
4702
4703         * scm/define-music-properties.scm (all-music-properties):
4704         create-new property.
4705
4706         * lily/context-specced-music-iterator.cc (construct_children):
4707         inspect 'create-new property iso. magical $uniqueContextId context
4708         id.
4709
4710         * lily/parser.yy (optional_id): allow \new "Bar" = "foo" too.
4711
4712         * lily/context-key-manager.cc (Module): new file. Encapsulate
4713         object key generation.
4714
4715         * lily/include/context-key-manager.hh (Module): new file.
4716
4717 2006-02-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4718
4719         * scm/define-grobs.scm (all-grob-descriptions): center instrument
4720         names vertically
4721
4722         * configure.in (LINK_GXX_STATICALLY): strip -DSTRING_UTILS_INLINED
4723         options.
4724         (reloc_b): excise --enable-framework-dir
4725
4726         * lily/relocate.cc (framework_relocation): use getenv
4727         LILYPOND_GS_VERSION or -DGHOSTSCRIPT_VERSION to set GS version.
4728
4729 2006-02-11  Jan Nieuwenhuizen  <janneke@gnu.org>
4730
4731         * flower/include/std-string.hh: 
4732         * flower/include/std-vector.hh: Finish std:: conversion; move
4733         flower extensions from std:: namespace.  Update users.
4734
4735         * lily/include/lily-proto.hh: Replace Link_array__*_ macros by
4736         their expansion to vector<*>.  Update users.
4737
4738 2006-02-10  Graham Percival  <gpermus@gmail.com>
4739
4740         * Documentation/user/invoking.itely: add example to File structure.
4741
4742         * Documentation/user/ instrument-notation.itely, cheatsheet.itely,
4743         examples.itely, putting.itely: {\new|\context} Lyrics \lyricsto.
4744
4745 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4746
4747         * ly/paper-defaults.ly: typo.
4748
4749         * lily/parenthesis-engraver.cc (acknowledge_grob): don't do
4750         set_parent() for parentheses. This will make it show up in bbox
4751         calculations.
4752
4753         * scm/output-lib.scm (parentheses-item::print): rewrite, using
4754         ly:grob-common* functions.
4755
4756         * lily/grob-scheme.cc (LY_DEFINE):
4757         ly:grob-common-refpoint-of-array: new function 
4758         ly:grob-common-refpoint: new function 
4759         ly:grob-relative-coordinate: new function 
4760
4761         * lily/instrument-name-engraver.cc (process_music): use
4762         Text_interface::is_markup(). This fixes \markup on instrument names.  
4763
4764         * scm/define-grobs.scm (all-grob-descriptions): set line-thickness
4765         for ties and slurs.
4766
4767         * lily/slur.cc (print): idem.
4768
4769         * lily/tie.cc: add line-thickness for ties. 
4770
4771 2006-02-10  Jan Nieuwenhuizen  <janneke@gnu.org>
4772
4773         * scm/output-svg.scm: Document diversion from GNU coding standards
4774         as a workaround for a bug in Microsoft Internet Explorer.
4775
4776 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4777
4778         * lily/instrument-name-engraver.cc (process_music): use
4779         is_markup() iso. is_string()
4780
4781         * Documentation/user/changing-defaults.itely (Module): add menu entry.
4782
4783         * lily/percent-repeat-engraver.cc (process_music): only look at
4784         main_part_ for % repeats.
4785
4786         * lily/stem-tremolo.cc (get_beam_translation): new function.
4787         (calc_slope): new function.
4788         (height): don't use real slope.
4789
4790 2006-02-10  Jürgen Reuter  <reuter@ipd.uka.de>
4791
4792         * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: add
4793         new connect-to-neighbor, control-points and staff-padding
4794         properties to make ligature brackets showing up again.
4795
4796 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4797
4798         * VERSION: release 2.7.33
4799
4800         * lily/relocate.cc (prefix_relocation): oops. One TOPLEVEL_VERSION
4801         too many.
4802
4803         * Documentation/user/changing-defaults.itely (Difficult tweaks):
4804         remove applyOutput example.
4805         (Objects connected to the input): document \tweak, \parenthesize
4806
4807         * lily/relocate.cc (prefix_relocation): allow "current"
4808         iso. TOPLEVEL_VERSION for share/lilypond/ suffix. This makes
4809         changing VERSION in a lily tree less painful.
4810
4811         * input/regression/parenthesize.ly: new file. 
4812
4813         * scm/output-lib.scm (parenthesize-element): new function.
4814
4815         * scm/define-grobs.scm (all-grob-descriptions): add ParenthesesItem.
4816
4817         * lily/parenthesis-engraver.cc (acknowledge_grob): new file.
4818
4819         * lily/accidental-engraver.cc (make_standard_accidental): reroute
4820         cause: accidentals are caused by note heads, not note events. 
4821
4822 2006-02-08  Graham Percival  <gpermus@gmail.com>
4823
4824         * darwin.patch: small patch from Erlend, thanks!
4825
4826         * Documentation/user/basic-notation.itely: add stem-neutral example.
4827
4828         * Documentation/user/putting.itely: clarifications.
4829
4830 2006-02-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4831
4832         * Documentation/topdocs/NEWS.tely (Top): remove internal cleanup
4833         note, add more guidelines to what should go into NEWS.
4834
4835         * input/sakura-sakura.ly: document how to override font.
4836
4837         * input/regression/font-family-override.ly:  doc -dshow-available-fonts
4838
4839 2006-02-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4840
4841         * lily/midi-item.cc (to_string): truncate time sig at 255 beats.
4842
4843 2006-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
4844
4845         * scripts/convert-ly.py (lilypond_version_re_str): Move from
4846         convertrules.  Add explicit grouping, needed for python2.2.
4847
4848 2006-02-07  Jan Nieuwenhuizen  <janneke@gnu.org>
4849
4850         * Documentation/topdocs/NEWS.tely (Top): Mention code cleanup.
4851
4852 2006-02-07  Graham Percival  <gpermus@gmail.com>
4853
4854         * Documentation/user/global.itely: fix line-width in (text) docs.
4855
4856         * Documentation/user/lilypond-book.itely: same.
4857
4858 2006-02-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4859
4860         * VERSION (PACKAGE_NAME): release 2.7.32
4861
4862         * Documentation/topdocs/NEWS.tely (Top): document new variable
4863         naming.
4864
4865         * flower/include/array.icc (Message): remove file.
4866
4867         * flower/include/std-vector.hh: make sure vsize and VPOS are
4868         defined for binary_search_bounds().
4869
4870         * flower/std-string.cc (std): add to_string(long unsigned).
4871
4872         * configure.in (gui_b): excise std_string option.
4873         (gui_b): excise std_vector option.
4874
4875         * flower/string.cc (Module): excise flower array & string
4876
4877         * flower/include/std-string.hh: excise flower string.
4878
4879         * {ly,lily,scm}/*: use dashes in \paper and \layout variables
4880
4881         * python/convertrules.py (lilypond_version_re_str): require
4882         only numbers and dots in \version string.
4883
4884 2006-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4885
4886         * lily/system-start-delimiter.cc (print): allow style = text too.
4887
4888         * lily/system-start-delimiter-engraver.cc
4889         (acknowledge_system_start_text): new function, also add add to
4890         support of system-start-text (instrument names). This fixes
4891         instrument names on piano staves.
4892
4893         * lily/instrument-name-engraver.cc: rewrite. Use
4894         system-start-delimiter approach. This save memory and cpu.
4895
4896         * scm/define-grobs.scm (all-grob-descriptions): remove
4897         instrument-name from break-alignment.
4898
4899         * mf/GNUmakefile ($(NCSB_TTFS)): depend on pfx2ttf script too.
4900
4901 2006-02-05  Jan Nieuwenhuizen  <janneke@gnu.org>
4902
4903         * stepmake/stepmake/generic-vars.make (LOOP): Add PLUS to keep -j
4904         jobserver going.
4905
4906         * configure.in (std_vector): On by default.
4907
4908         * lily/include/font-metric.hh:
4909         * lily/include/tfm-reader.hh: 
4910         * lily/include/spanner.hh: Use unsigned for indices and sizes.
4911         Update users.
4912
4913         * Documentation/user/changing-defaults.itely: Fix link v2.5, out-www.
4914
4915 2006-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4916
4917         * VERSION (PACKAGE_NAME): 2.7.31
4918
4919         * scm/framework-ps.scm (dump-stencil-as-EPS): don't hardcode left
4920         EPS edge at 0, but take minimum with left-overshoot. This fixes
4921         cut off system start delims. 
4922
4923         * lily/instrument-name-engraver.cc (stop_translation_timestep):
4924         hack: add to axis group if not added yet. This fixes hara kiri'd
4925         piano staves.
4926
4927         * lily/hara-kiri-group-spanner.cc
4928         (force_hara_kiri_in_y_parent_callback): fix signatures.
4929
4930         * lily/hairpin.cc (print): check next hairpin to see whether or
4931         not to be continuing.
4932
4933 2006-02-04  Jan Nieuwenhuizen  <janneke@gnu.org>
4934
4935         * Remove trailing whitespace from makefiles.
4936         
4937         * flower/include/std-vector.hh: Add binary_search_bounds workaround
4938         for earlier gcc.
4939
4940         * .cvsignore: Add out*, out-www, config-*.  Remove lots of cruft.
4941
4942         * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Workaround.
4943
4944         * config.hh.in (HAVE_STL_DATA_METHOD): Add.
4945
4946         * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): New function.
4947
4948         * configure.in: Use it.
4949
4950 2006-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4951
4952         * scm/music-functions.scm (pitch-of-note): new function.
4953
4954         * ly/music-functions-init.ly: add \octave and \addquote
4955
4956         * lily/parser.yy (music_function_chord_body): softcode \octave.
4957         (lilypond_header): softcode \addquote
4958
4959 2006-02-03  Jan Nieuwenhuizen  <janneke@gnu.org>
4960
4961         * flower/include/std-vector.hh[STD_VECTOR]: Do not include
4962         array.hh, parray.hh at all.  Getting ready to flip the
4963         configure default.
4964
4965         * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
4966
4967         * lily/source-file.cc (file::get_line): Help binary_search_bounds
4968         a bit.
4969
4970         * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
4971
4972 2006-02-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4973
4974         * flower/include/array.hh: typo. 
4975
4976 2006-02-02  Graham Percival  <gpermus@gmail.com>
4977
4978         * Documentation/user/advanced-notation.itely: doc "\#" in text.
4979
4980 2006-02-03  Jan Nieuwenhuizen  <janneke@gnu.org>
4981
4982         * flower/include/pqueue.hh: Derive from std::vector.
4983
4984         * flower/include/parray.hh: Conform to std::vector interface.
4985         Update users.
4986
4987 2006-02-02  Graham Percival  <gpermus@gmail.com>
4988
4989         * Documentation/topdocs/NEWS.itely: grammar fix from Laura.
4990
4991 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4992
4993         * flower/file-path.cc (is_file): remove if 0 section.
4994
4995         * buildscripts/pfx2ttf.fontforge (err): robustness fix for
4996         selecting afii61352.
4997
4998 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
4999
5000         * flower/include/std-vector.hh (boundary): Oops, reverse.
5001
5002         * flower/string-convert.cc (convert::unsigned_string): Bugfix:
5003         remove superfluous `d'.
5004
5005         * flower/include/std-vector.hh (boundary, top): Detach from class.
5006         Remove empty vector shell.
5007
5008         * flower/include/array.hh (reverse, swap): Detach from class.
5009         Update users.
5010         
5011         * flower/include/std-vector.hh
5012         * flower/include/array.hh (concat): Globally change to insert ().
5013
5014         
5015         * flower/include/std-vector.hh
5016         * flower/include/parray.hh
5017         * flower/include/array.hh (elem, elem_ref): Globally replace by
5018         at ().
5019
5020 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5021
5022         * Documentation/topdocs/NEWS.tely (Top): use ly: prefix for members.
5023
5024         * python/convertrules.py (FatalConversionError.sub_cxx_id):
5025         anticipate on identifier substitutions.
5026
5027 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
5028
5029         * flower/include/std-vector.hh (insert): Remove, replace by
5030         std::vector interface.  Update callers.
5031
5032         * flower/include/array.icc (insert): Change signature to
5033         match std::vector interface.
5034         
5035         * flower/include/array.icc (vector_sort): Bugfix.
5036
5037 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5038
5039         * lily/parser.yy (output_def_head_with_mode_switch): new
5040         production. Result: dashes and underscores may be used in the
5041         \paper block.
5042
5043         * lily/lexer.ll: add DASHED_WORD.  Accept in INITIAL mode.
5044
5045         * python/convertrules.py (conv): oops. One slash too much.
5046
5047 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
5048
5049         * flower/include/std-vector.hh (sort): Remove, replace by
5050         ::vector_sort.  Update callers.
5051
5052         * flower/include/std-vector.hh (slice): Remove.  Update callers.
5053         (sort): Bugfix.
5054
5055         * flower/test-std.cc (vector_sort): New test.
5056
5057 2006-02-01  Graham Percival  <gpermus@gmail.com>
5058
5059         * Documentation/user/putting.itely: fixes from Erik.
5060
5061 2006-02-01  Jan Nieuwenhuizen  <janneke@gnu.org>
5062
5063         * flower/test-std.cc: Add simple unit test for vector migration.
5064
5065         * stepmake/stepmake/test*: Unit test support.
5066
5067         * flower/include/std-vector.hh (del): Remove.  Use erase (),
5068         update callers.
5069
5070         * flower/include/array.hh (begin, end): Add.
5071         (del, get): Remove.
5072
5073 2006-02-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5074
5075         * lily/include/lily-guile-macros.hh (MAKE_SCHEME_CALLBACK): use
5076         std::string not String. 
5077
5078         * lily/context-def.cc (path_to_acceptable_context): use INT_MAX
5079         iso UINT_MAX.
5080
5081         * lily/prob.cc (Prob): copy type_ too.
5082
5083         * lily/lily-guile.cc (mangle_cxx_identifier): new
5084         function. Class_bla::foo_bar_[px] ->
5085         ly:class-bla::foo-bar[?!]. Changes throughout
5086
5087 2006-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5088
5089         * flower/include/guile-compatibility.hh (scm_from_unsigned): add scm_from_unsigned().
5090
5091         * lily/beam.cc (calc_direction): take dir from visible stem in
5092         degenerate case.
5093
5094 2006-01-31  Jan Nieuwenhuizen  <janneke@gnu.org>
5095
5096         * lily/melody-spanner.cc (spanner::calc_neutral_stem_direction):
5097         Fix -1, >=0 boundary checks for unsigned vsize.
5098
5099         * lily/separating-group-spanner.cc (spanner::find_rods): Fix >=0
5100         loop for unsigned vsize.
5101
5102         * configure.in (--enable-std-vector): New option.
5103         (--enable-std-string): On by default.
5104
5105         * flower/include/std-vector.hh: New file.  Enable switch to
5106         std::vector, update client code.
5107
5108 2006-01-30  Graham Percival  <gpermus@gmail.com>
5109
5110         * scm/document-translation.scm: clarify "this context is also
5111         known as".  Thanks, Werner!
5112
5113         * Documentation/user/putting.itely: small fixes from Don Blaheta.
5114
5115         * Documentation/user/invoking.itely: small fix from Don.
5116
5117 2006-01-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5118
5119         * scm/lily.scm (define-scheme-options): rename option
5120         preview-include-book-title to book-title-preview
5121         (define-scheme-options): move force-eps-font-include (from paper
5122         block) to eps-font-include -d option.
5123
5124         * VERSION (PATCH_LEVEL): release 2.7.30
5125
5126         * input/bach-schenker.ly (staffPiano): new file.
5127
5128         * buildscripts/pfx2ttf.fontforge: remove No. glyph from TTF file.
5129
5130         * Documentation/topdocs/NEWS.tely (Top): simplify NEWS entry, add
5131         credits to Nicolas.
5132
5133         * scm/define-markup-commands.scm (epsfile): add scaling to \epsfile.
5134
5135         * ps/lilyponddefs.ps: remove start-system, stop-system,
5136         start-page fluff. This saves putting { } code on the stack, fixing
5137         stack overflows when including EPS files.
5138
5139 2006-01-29  Graham Percival  <gpermus@gmail.com>
5140
5141         * Documentation/user/putting.itely: minor fixes (comments on -devel).
5142
5143 2006-01-29  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5144
5145         * Documentation/topdocs/NEWS.tely (Top): add \parallelMusic news.
5146
5147 2006-01-28  Graham Percival  <gpermus@gmail.com>
5148
5149         * Documentation/user/putting.itely: minor fixes (mostly tab->space).
5150
5151 2006-01-28  Jan Nieuwenhuizen  <janneke@gnu.org>
5152
5153         * input/mutopia/claop.py: Update.
5154
5155 2006-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5156
5157         * input/regression/completion-heads.ly (texidoc): fix.
5158
5159         * lily/staff-symbol-referencer.cc (on_staff_line): idem.
5160
5161         * lily/tie-formatting-problem.cc
5162         (set_ties_config_standard_directions): use abs iso fabs for ints.
5163
5164         * Documentation/topdocs/INSTALL.texi (Top): document ncsb requirement.
5165
5166         * mf/feta-bolletjes.mf (overdone_heads): solfa_noteheight, a
5167         little less than noteheight, to prevent overlaps in chords.
5168
5169         * lily/note-collision.cc (check_meshing_chords): wipe upper FA
5170         head, and fudge stem-attachment.
5171
5172         * scm/lily-library.scm (not): define hash-for-each for guile 1.6
5173
5174         * lily/slur-scoring.cc (get_best_curve): handle opt_idx < 0 case.
5175
5176 2006-01-27  Jan Nieuwenhuizen  <janneke@gnu.org>
5177
5178         * lily/main.cc (main): Debugging aid: catch exceptions.
5179
5180         * flower/std-string.cc (to_string): Robustification.  Fixes midi
5181         output with std::string.
5182
5183 2006-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5184
5185         * Documentation/topdocs/INSTALL.texi (Top): remove libkpathsea notes.
5186
5187 2006-01-26  Jan Nieuwenhuizen  <janneke@gnu.org>
5188
5189         * Fix -DSTRING_UTILS_INLINED.
5190
5191 2006-01-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5192
5193         * VERSION (PATCH_LEVEL): release 2.7.29
5194
5195         * lily/relocate.cc (setup_paths): mingw uses std string too.
5196
5197         * lily/*.cc: various fixes for substr(ARG).
5198
5199         * lily/sustain-pedal.cc (print): 
5200
5201         * flower/file-name.cc (slashify): use std strings.
5202
5203         * flower/string-convert.cc: remove publib.h
5204
5205         * scm/define-markup-commands.scm (verbatim-file): new markup
5206         command \verbatim-file
5207
5208         * Documentation/topdocs/NEWS.tely: fixup URLs
5209
5210         * input/regression/alignment-vertical-manual-setting.ly (Module):
5211         new file.
5212
5213         * lily/align-interface.cc (align_elements_to_extents): overwrite
5214         translations with numbers in alignment-offsets from left bound
5215
5216         * scm/page.scm (make-page-stencil): read X-offset from paper-system.
5217         (page-translate-systems): new function: take into account Y-offset.
5218
5219         * Documentation/topdocs/NEWS.tely (Top): document new features.
5220
5221         * input/regression/page-layout-manual-position.ly (Module): new
5222         file.
5223
5224 2006-01-26  Jan Nieuwenhuizen  <janneke@gnu.org>
5225
5226         * flower/file-path.cc (path::parse_path): Oops.
5227
5228         * Finish std::string interface.  For now, use std:: marker
5229         throughout for easy s/r.
5230
5231 2006-01-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5232
5233         * Documentation/user/putting.itely (Score is a single musical
5234         expression): typo.
5235         (Score is a single musical expression): more typos.
5236
5237         * scm/page.scm (annotate-space-left): thinko.
5238         (annotate-page): more thinkos.
5239
5240 2006-01-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5241
5242         * scm/layout-page-layout.scm (write-page-breaks): record tweaks
5243         for different \score blocks separately.
5244         (post-process-pages): put write-page-layout into paper block.
5245
5246         * lily/output-def.cc (get_parser): new file.
5247
5248         * lily/output-def-scheme.cc (LY_DEFINE): ly:output-def-parser, new
5249         file.
5250
5251         * lily/include/output-def.hh (class Output_def): add parser_ member.
5252
5253         * input/regression/page-layout-twopass.ly (Module): new file.
5254
5255         * scm/lily.scm: remove cpp hack.
5256
5257         * lily/lyric-engraver.cc (get_voice_to_lyrics): use NPOS everywhere.
5258
5259 2006-01-25  Jan Nieuwenhuizen  <janneke@gnu.org>
5260
5261         * GNUmakefile.in (c-clean): New target.
5262
5263         * flower/include/std-string.hh: String/std::string compatibility:
5264         Use NPOS for `not found' (iso -1), use ssize for length () and pos
5265         type.
5266
5267         * flower/rational.cc: 
5268         * flower/include/rational.hh: 
5269
5270         * flower/offset.cc: 
5271         * flower/include/offset.hh: 
5272
5273         * flower/interval.cc: 
5274         * flower/include/interval.hh: 
5275
5276         * flower/string-convert.cc: 
5277         * flower/include/string-convert.hh: Use std::string [interface].
5278         Update callers.
5279
5280 2006-01-25  Heikki Junes  <hjunes@cc.hut.fi>
5281
5282         * Documentation/index.html.in: clean up.
5283
5284 2006-01-25  Graham Percival  <gpermus@gmail.com>
5285
5286         * Documentation/user/putting.itely: another new untested doc section.
5287
5288 2006-01-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5289
5290         * scm/layout-page-layout.scm (write-page-breaks): write
5291         \spacingTweaks #ALIST. Handle grace timing.
5292
5293         * scm/: more imports.
5294
5295         * scm/page.scm (make-page): add footer/header.
5296         (annotate-space-left): revise: only take page argument.
5297         (layout->page-init): new function.
5298
5299         * scm/layout-page-layout.scm (write-page-breaks): preliminary
5300         version of the system/spacing/linebreak hack writing to the output
5301
5302         * lily/prob-scheme.cc (LY_DEFINE): take optional 'key val args in
5303         ly:make-prob.
5304
5305         * lily/grob-scheme.cc (LY_DEFINE): ly:spanner-get-bound ->
5306         ly:spanner-bound
5307
5308 2006-01-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5309
5310         * scm/stencil.scm (annotate-y-interval): move from layout-page-layout.scm
5311
5312         * scm/paper-system.scm (paper-system-annotate): new file. Handle paper-system.
5313
5314         * scm/layout-page-layout.scm (optimal-page-breaks): move all page
5315         handling to page.scm
5316
5317         * lily/prob-scheme.cc (LY_DEFINE): new file.
5318         (LY_DEFINE): functions ly:make-prob , ly:prob-type? , ly:prob-(set-)property(!)
5319
5320         * lily/music-scheme.cc (LY_DEFINE): rewrite get/set property using
5321         prob functions.
5322
5323         * lily/music.cc (derived_mark): derive Music from Prob.
5324
5325         * lily/paper-system.cc (LY_DEFINE): derive from Prob.
5326
5327         * lily/prob.cc (Module): Implement Prob (Property Object), object
5328         with shared and r/w property alists.  
5329
5330         * lily/include/prob.hh (Module): new file. Declare Prob.
5331
5332         * flower/string.cc: remove is_empty().
5333
5334         * flower/include/string.hh (class String): remove String:: qualifier.
5335
5336         * buildscripts/analyse-cxx-log.py: new file. Read compile log to
5337         substitute appropriate functions.
5338
5339         * flower/include/string.hh (class String): remove to_str0 and
5340         is_empty(). S&R everywhere.
5341
5342 2006-01-23  Graham Percival  <gpermus@gmail.com>
5343
5344         * Documentation/user/basic-notation.itely: add hairpin
5345         after-linebreak tweak to commonprop.
5346
5347         * Documentation/user/putting.itely: added two new sections.
5348
5349 2006-01-23  Jan Nieuwenhuizen  <janneke@gnu.org>
5350
5351         * flower/international.cc: 
5352         * flower/include/international.hh: 
5353
5354         * flower/getopt-long.cc: 
5355         * flower/include/getopt-long.hh: Use std::string [interface].
5356         Update callers.
5357
5358         * flower/include/std-string.hh: Oops, bugfix for --disable-std-string.
5359
5360         * stepmake/stepmake/executable-rules.make: Add dependency on
5361         module libraries.
5362
5363 2006-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
5364
5365         * flower/file-path.cc: 
5366         * flower/include/file-path.hh: Use std::string [interface].
5367         Update callers.
5368
5369         * flower/direction.cc: 
5370         * flower/axis.cc: Unused.  Remove.
5371
5372         * configure.in (--enable-std-string): New option.
5373
5374         * flower/std-string.cc: 
5375         * flower/include/std-string.hh: New file.
5376
5377         * flower/file-name.cc[STD_STRING]:
5378         * flower/include/file-name.hh[STD_STRING]: Use it.  Update callers.
5379
5380 2006-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5381
5382         * scm/output-svg.scm (placebox): no GNU coding standards in SVG output. 
5383
5384         * scm/define-markup-commands.scm (with-dimensions):
5385         with-dimensions markup command.
5386
5387         * input/test/font-table.ly: use it.
5388
5389         * lily/open-type-font.cc (glyph_list): new function.
5390
5391         * lily/open-type-font-scheme.cc (LY_DEFINE): ly:otf-glyph-list function.
5392
5393         * lily/ttf.cc: remove ly:font-glyph-list scheme function
5394
5395 2006-01-22  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5396
5397         * ly/music-functions-init.ly (parallelMusic): new music function
5398         for parallel music entry.
5399
5400         * scm/define-music-properties.scm (all-music-properties): new
5401         'void music property
5402
5403         * scm/music-functions.scm (ly:music-message): make public, to be
5404         used in music function definitions
5405
5406         * scm/lily-library.scm (collect-music-for-book): discard music
5407         when the 'void property is set.
5408
5409 2006-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5410
5411         * lily/ttf.cc (LY_DEFINE): store name before destroying face.
5412
5413         * mf/GNUmakefile: idem.
5414
5415         * buildscripts/mf-to-table.py (help): excise fetaXXlist.ly support.
5416
5417         * stepmake/bin/install.py (dest): Only chmod/chown just created directories
5418
5419         * Documentation/user/notation-appendices.itely (The Feta font):
5420         use it.
5421
5422         * input/test/font-table.ly: new file. Generate font table within lily.
5423
5424         * Documentation/user/notation-appendices.itely (The Feta font):
5425         use new font-table.ly file. 
5426
5427         * stepmake/stepmake/install-out-targets.make
5428         (local-install-outfiles): only create directory if
5429         $(INSTALLATION_OUT_DIR) is defined. This fixes install on Gentoo.
5430
5431 2006-01-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5432
5433         * lily/ttf.cc (LY_DEFINE): new function ly:font-glyph-list.
5434
5435         * VERSION (PACKAGE_NAME): release 2.7.28
5436
5437         * scm/framework-ps.scm (write-preamble): use it to pick exactly
5438         the right font from a Mac dfont.
5439         (write-preamble): don't forget directory, only look at files.
5440
5441         This fixes problems with TTF files in dfonts that don't match
5442         their PostScript names.
5443          
5444         * lily/ttf.cc (LY_DEFINE): ly:ttf-ps-name: new routine to extract
5445         PS name from TTF font.
5446
5447         * input/regression/tie-manual.ly: document new feature.
5448
5449         * Documentation/topdocs/NEWS.tely (Top): add tie NEWS.
5450
5451         * VERSION (MY_PATCH_LEVEL): bump to .28
5452
5453         * Documentation/user/basic-notation.itely (Ties): add tie examples
5454         refs.
5455
5456         * lily/tie-formatting-problem.cc (score_ties_configuration):
5457         symmetry penalties for outer ties.
5458
5459 2006-01-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5460
5461         * lily/tie-formatting-problem.cc (generate_configuration) 
5462         (set_manual_tie_configuration): skip non-pair manual
5463         tie-configuration, so you can set individual ties as
5464
5465           #'tie-configuration = #'((7 . 1) #t (-3 . 1))
5466
5467         * input/regression/tie-chord.ly: use generateTiePattern to
5468         simplify file.
5469
5470         * lily/tie-formatting-problem.cc (peak_around): new function.
5471         (score_configuration): use sliding criterion for staff line collisions. 
5472         (score_configuration): idem for dot collisions.
5473         (generate_configuration): use separate stem_gap for gap to stem.
5474
5475         * lily/include/tie-formatting-problem.hh (struct Tie_details):
5476         separate penalty factors for x and y distance.
5477         (struct Tie_details): separate penalties for tip and center line collisions.
5478
5479 2006-01-19 Han-Wen Nienhuys  <hanwen@xs4all.nl>
5480
5481         * lily/tie-formatting-problem.cc (generate_configuration): make
5482         large ties avoid stafflines in the horizontal section.
5483         (score_configuration): use softcoded penalties
5484         (score_aptitude): idem.
5485
5486         * lily/tie-helper.cc (from_grob): softcode tie details
5487
5488         * lily/staff-symbol-referencer.cc (on_staff_line): new function
5489
5490         * lily/staff-symbol-referencer.cc (on_line): rename from
5491         on_staffline 
5492
5493 2006-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5494
5495         * ly/music-functions-init.ly: remove duplicate tag.
5496
5497         * lily/include/*.hh: GCC 4.1 fixes.
5498
5499 006-01-16  Erlend Aasland  <erlenda@gmail.com>
5500
5501         * Documentation/user/global.itely: fix typos; @bugs -> @refbugs
5502
5503         * scm/define-music-types.scm: fix bug in desc. string
5504         for OverrideProperty
5505
5506 2006-01-15 Erik Sandberg  <mandolaerik@gmail.com>
5507
5508         * scripts/lilypond-book.py: bugfix
5509
5510         * scm/define-music-types.scm: fix typos.
5511
5512 2006-01-14  Graham Percival  <gpermus@gmail.com>
5513
5514         * Documentation/user/ basic-notation.itely, global.itely,
5515         advanced-notation.itely, instrument-notation.itely: small
5516         additions (bugs and commonly tweaked properties).
5517
5518 2006-01-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5519
5520         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): generic
5521         detection of mingw build.
5522         (MINGW_BUILD): opps.
5523
5524 2006-01-12  Jan Nieuwenhuizen  <janneke@gnu.org>
5525
5526         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Add
5527         i686-mingw32.
5528
5529 2006-01-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5530
5531         * scm/music-functions.scm (skip->rest): add skip->rest
5532
5533 2006-01-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5534
5535         * lily/font-config.cc (init_fontconfig): call FcConfigBuildFonts()
5536         explicitly.
5537
5538         * lily/font-config-scheme.cc (LY_DEFINE): also display font and
5539         config dirs. Aids debugging. 
5540         (display_config): also display config files.
5541
5542 2006-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5543
5544         * VERSION: release 2.7.27
5545
5546         * lily/bar-line.cc (calc_bar_size): inspect staff->extent (Y_AXIS)
5547         for determining bar size.
5548
5549         * lily/staff-symbol.cc (print): place lines at distance line-positions
5550
5551         * scm/define-grob-properties.scm (all-user-grob-properties): add
5552         line-positions.
5553
5554         * lily/staff-symbol.cc (height): new function.
5555
5556         * input/regression/staff-line-positions.ly:  new file.
5557
5558 2006-01-06  Graham Percival  <gpermus@gmail.com>
5559
5560         * input/test/add-staccato.ly: remove reference to old file.
5561
5562 2006-01-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5563
5564         * scripts/lilypond-book.py (invokes_lilypond): allow . in path to
5565         lilypond binary too.
5566
5567 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5568
5569         * make/mutopia-rules.make (Module): use LILYPOND_BINARY
5570
5571 2006-01-06  Jan Nieuwenhuizen  <janneke@gnu.org>
5572
5573         * scripts/midi2ly.py: Bugfix: Declare datadir.
5574
5575         * make/ly-rules.make:
5576         * make/mutopia-rules.make: Use LILYPOND_BINARY (WAS: LILYPOND, but
5577         that seems to be gone). Fixes make web.
5578
5579         * The grand 2005-2006 replace.
5580
5581         * VERSION (MY_PATCH_LEVEL): Stay on .26 for now.
5582
5583 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5584
5585         * make/lilypond-vars.make: set LILYPOND_BINARY variable
5586         (LILYPOND_BOOK_LILYPOND_FLAGS): new variable
5587         LILYPOND_BOOK_LILYPOND_FLAGS to hold system dependent settings,
5588         like -dgs-font-load.
5589
5590         * Documentation/user/GNUmakefile ($(outdir)/interfaces.itexi):
5591         remove absolute path to lilypond binary.
5592         
5593 2006-01-05 Pedro Kroeger    <kroeger@pedrokroeger.net>
5594
5595         * configure.in (NCSB_DIR): fix --with-ncsb-dir option.
5596
5597 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5598
5599         * make/lilypond-vars.make: support LILYPOND_EXTERNAL_BINARY variable.
5600
5601         * mf/GNUmakefile: remove broken dvips map symlink.
5602
5603 2006-01-04  Jan Nieuwenhuizen  <janneke@gnu.org>
5604
5605         * lily/main.cc: 
5606         * configure.in: Cosmetic fixes.
5607
5608 2006-01-04  Mats Bengtsson  <mabe@s3.kth.se>
5609
5610         * Documentation/user/music-glossary.tely (Pitch names): Added
5611         Spanish pitch names and durations, thanks to Ernesto Gancedo
5612
5613 2006-01-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5614
5615         * scm/lily.scm (define-scheme-options): use quasi-quote for option
5616         init. Fixes verbose printing of .scm files.
5617
5618         * stepmake/aclocal.m4: add spaces before - options.
5619         
5620 2006-01-03  Jan Nieuwenhuizen  <janneke@gnu.org>
5621
5622         * lily/relocate.cc (setup_paths): Bugfix: do not store result
5623         of path search in local block variable.
5624
5625 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5626
5627         * configure.in (NCSB_DIR): --enable-ncsb-dir
5628         (LINK_GXX_STATICALLY): denko.
5629
5630         * mf/GNUmakefile ($(NCSB_TTFS)): NCSB_DIR iso. NCSB_PATH. 
5631
5632         * configure.in (LINK_GXX_STATICALLY): --enable-ncsb-path option. 
5633         use locate to find c059033l.pfb. 
5634         
5635 2006-01-02  Jan Nieuwenhuizen  <janneke@gnu.org>
5636
5637         * lily/tie-formatting-problem.cc
5638         (problem::generate_base_chord_configuration): Use my_round (was
5639         round).
5640
5641         * lily/source-file.cc (file::get_counts)[!HAVE_MBRTOWC]: Bugfix,
5642         do not invoke mbrtowc.
5643
5644         * lily/relocate.cc (setup_paths): Add more debugging verbosity.
5645
5646 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5647
5648         * scm/lily.scm (lilypond-all): oops. remove debugging hack.
5649
5650 2005-01-02  Heikki Junes  <hjunes@cc.hut.fi>
5651
5652         * Documentation/user/invoking.itely (svg): revise.
5653
5654 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5655
5656         * lily/lexer.ll: use sourcefilename iso. renameinput.
5657
5658 2006-01-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5659
5660         * mf/GNUmakefile ($(NCSB_TTFS)): revise rule. Create
5661         <PostScriptName>.ttf instead of c059XXXttf.
5662
5663         * lily/program-option.cc (LY_DEFINE): special support for
5664         --verbose, so it works before option init too.
5665  
5666         * mf/GNUmakefile (local-install): oops.
5667
5668         * lily/lyric-hyphen.cc (print): oops.
5669
5670         * buildscripts/pfx2ttf.fontforge: new file.
5671         
5672         * mf/GNUmakefile (NCSB_PATH): add vars for NCSB.
5673         ($(outdir)/%.ttf): new rule. 
5674
5675         * scm/define-grobs.scm (all-grob-descriptions): add font-interface
5676         to LyricHyphen.
5677
5678         * lily/lyric-hyphen.cc (print): multiply hyphen height by
5679         font-size
5680
5681 2005-12-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5682
5683         * VERSION: release 2.7.26
5684         
5685         * mf/GNUmakefile (install-fc-cache): remove old font.cache-1 files.
5686
5687 2005-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5688
5689         * lily/font-config.cc (init_fontconfig): verbosity.
5690
5691         * THANKS: add Muziekacademie Lede. 
5692
5693         * scripts/musicxml2ly.py (print_voice_definitions): new function 
5694         (print_score_setup): new function
5695         (convert): read part definition to output staves properly.
5696
5697         * python/musicxml.py (Measure.get_notes): new class. Wrap lists of
5698         Music_xml notes.
5699
5700         * python/musicexp.py (Output_printer.__init__): use _ in data
5701         members.
5702         (Output_printer.unformatted_output): new function: no formatting,
5703         but count braces.
5704         (Duration.get_length): remove isinstance() checks for
5705         Output_printer everywhere.
5706
5707         * input/regression/lyrics-bar.ly (texidoc): add
5708         Separating_line_group_engraver.
5709
5710 2005-12-29  Jan Nieuwenhuizen  <janneke@gnu.org>
5711
5712         * lily/relocate.cc (framework_relocation): New function,
5713         factored from set_relocation ().
5714         (prefix_relocation): Rename from set_relocation ().
5715         (setup_paths): Use it.
5716
5717 2005-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5718
5719         * scm/*.scm: use LEFT/RIGHT/UP/DOWN etc. iso. magical
5720         numbers. Patch by Erlend Aasland.
5721
5722 2005-12-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5723
5724         * lily/font-config.cc (init_fontconfig): print warning if cache
5725         file is not existant.
5726
5727         * lily/main.cc: don't use #ifdef but #if
5728
5729 2005-12-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5730
5731         * lily/grob-property.cc (internal_set_property): don't abort on
5732         calculation-in-progress.
5733
5734         * lily/beam.cc (get_default_dir): robustness: don't divide by zero.
5735
5736         * lily/tuplet-bracket.cc (calc_control_points): oops: typo. Read
5737         connect-to-neighbor property not connect-to-other
5738
5739         * lily/program-option.cc (LY_DEFINE): remove Protected_scm global variable.
5740         (LY_DEFINE): oops. don't forget protection.
5741
5742         * flower/parse-afm.cc (Module): strip AFM handling completely.
5743
5744         * lily/stencil-expression.cc: idem.
5745
5746         * lily/grob-interface-scheme.cc (LY_DEFINE): idem.
5747
5748         * lily/function-documentation.cc (ly_add_function_documentation):
5749         use static member iso. Protected_scm
5750
5751         * lily/main.cc: use ifdef ARGV0_RELOCATION iso. MINGW
5752
5753         * config.make.in (prefix): remove HAVE_KPATHSEA_SO
5754
5755 2005-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
5756
5757         * lily/relocate.cc (set_env_dir): New function.
5758         (set_relocation): Use it to fix setting PANGO_PREFIX.
5759
5760 2005-12-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5761
5762         * input/regression/stem-direction-context.ly: remove rest.
5763
5764         * lily/melody-engraver.cc (process_music): restart for bar lines.
5765         (acknowledge_slur): restart for slurs.
5766
5767 2005-12-27  Heikki Junes  <hjunes@cc.hut.fi>
5768
5769         * Documentation/user/invoking.itely: describe how to view SVG 
5770         output using Inkscape which replace embedded fonts with OTF fonts.
5771
5772 2005-12-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5773
5774         * lily/relocate.cc (set_relocation): set PANGO_PREFIX
5775
5776 2005-12-23  Jan Nieuwenhuizen  <janneke@gnu.org>
5777
5778         * lily/melody-engraver.cc (class Melody_engraver): Remove lying
5779         comment.
5780
5781 2005-12-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5782
5783         * VERSION (PACKAGE_NAME): release 2.7.25
5784
5785         * Documentation/topdocs/NEWS.tely (Top): document new feature.
5786
5787         * input/regression/stem-direction-context.ly: new file.
5788
5789         * lily/relocate.cc (set_relocation): add PANGO_PREFIX
5790
5791         * lily/melody-engraver.cc (acknowledge_stem): restart MelodyItem
5792         on rest.
5793
5794         * ly/engraver-init.ly: add Melody_engraver
5795
5796         * lily/beam.cc (calc_direction): use default-direction
5797         iso. get_default_direction()
5798
5799         * scm/define-grob-properties.scm (all-user-grob-properties): add
5800         default-direction property.
5801
5802         * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem.
5803
5804         * lily/stem.cc (calc_default_direction): remove
5805         Stem::get_default_direction, use default-direction with callback
5806         instead.
5807
5808         * lily/melody-spanner.cc (calc_neutral_stem_direction): 
5809
5810         * lily/melody-engraver.cc: new file. Acknowledge stems for
5811         interpolated stem directions. 
5812
5813         * lily/melody-spanner.cc: new file. Interpolate stem directions.
5814
5815         * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem
5816
5817         * lily/slur-configuration.cc (fit_factor): more robust check for
5818         point in curve X-extent.
5819
5820         * lily/slur.cc (outside_slur_callback): return offset_scm, not 0.
5821         (outside_slur_callback): check for 'outside avoidance.
5822
5823         * lily/slur-configuration.cc (score_extra_encompass): don't use
5824         bound->column() == avoid->column() for checking extents, as this
5825         doesn't work for accidentals. 
5826
5827         * lily/slur-engraver.cc (acknowledge_extra_object): remove
5828         DynamicText hardcoding.
5829
5830         * lily/slur-scoring.cc (enumerate_attachments): robustness: don't
5831         crash if bound stem is NULL
5832
5833         * lily/piano-pedal-performer.cc: patch by MWD for enabling piano
5834         pedals.
5835
5836 2005-12-22  Graham Percival  <gpermus@gmail.com>
5837
5838         * scm/define-markup-commands.scm: typo.  @code{\raise}
5839         => @code{\\raise}.
5840
5841         * darwin.patch: now used again, includes a
5842         required patch from fink.
5843
5844 2005-12-21  Heikki Junes  <hjunes@cc.hut.fi>
5845
5846         * po/TODO: mention gtranslator along with kbabel.
5847         * po/fi.po: update translations.
5848
5849 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
5850
5851         * lily/relocate.cc (setup_paths): Bugfix.
5852
5853 2005-12-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5854
5855         * lily/slur-configuration.cc (score_extra_encompass): don't use
5856         "avoid" choice for avoid-slur.
5857
5858         * stepmake/bin/install.py (dest): don't create existing dir.
5859
5860 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
5861
5862         * stepmake/bin/install.py: Remove file before copying.
5863
5864         * config.make.in: 
5865         * stepmake/aclocal.m4: Do not substitute INSTALL.
5866
5867 2005-12-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5868
5869         * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
5870         depend on link-tree.
5871
5872         * lily/relocate.cc (setup_paths): only check path for non-absolute
5873         dir without directory part.
5874
5875         * flower/file-name.cc (is_absolute):  new method.
5876         (is_absolute): check root_ too.
5877
5878 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
5879
5880         * lily/relocate.cc (setup_paths) [__MINGW32__]: Comment-out broken
5881         relocation code.  Oops, don't comment out too much.
5882
5883         * stepmake/stepmake/generic-vars.make (INSTALL): Assign INSTALL_PY
5884         iso itself.
5885
5886         * lily/relocate.cc [HAVE_GETTEXT]: Include libintl.h.  Fixes mingw
5887         compile.
5888
5889 2005-12-20  Jan Nieuwenhuizen  <janneke@gnu.org>
5890
5891         * .cvsignore: Add install-sh.
5892
5893         * autogen.sh (srcdir): Typo.
5894
5895 2005-12-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5896
5897         * autogen.sh (srcdir): urg. Touch install-sh.
5898
5899         * stepmake/bin/install-sh (Module): remove.
5900
5901         * stepmake/stepmake/generic-vars.make (INSTALL): add $(INSTALL).
5902
5903         * lily/include/relocate.hh: new file.
5904
5905         * lily/relocate.cc: new file. Contain relocation logic.
5906
5907         * lily/main.cc (setup_paths): fix: LILYPOND_RELOCATE_PREFIX.
5908         (main): read LILYPOND_VERBOSE as the first thing.
5909
5910         * stepmake/aclocal.m4: remove INSTALL variable.
5911
5912         * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
5913         separate target for making font symlinks.
5914         (documentation-dir): use $(if $(findstring )) for switching off
5915         Documentation.
5916
5917         * stepmake/stepmake/help2man-vars.make (OUT_DIST_FILES): only do
5918         something if DOCUMENTATION is no.
5919
5920 2005-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5921
5922         * VERSION: release 2.7.24
5923
5924         * lily/script-column-engraver.cc (stop_translation_timestep):
5925         delay adding to script-column.
5926
5927         * lily/tuplet-bracket.cc (print): suicide if no control-points. 
5928
5929         * python/convertrules.py (conv): rule for number-visibility
5930
5931         * lily/slur-configuration.cc (score_extra_encompass): different
5932         distance measure for avoid and inside avoidance.
5933         (score_extra_encompass): use 1/(distance+eps) as penalty.
5934
5935         * lily/slur-scoring.cc (generate_avoid_offsets): use 'inside
5936         encompass objects for generating slur curves.
5937
5938         * lily/slur.cc: use details iso. slur-details property.
5939
5940         * input/regression/slur-tuplet.ly: new file.
5941
5942         * lily/slur-engraver.cc (acknowledge_tuplet_number): new function.  
5943
5944         * flower/include/offset.hh (class Offset): new operator /=
5945
5946         * lily/tuplet-number.cc (print): new file, new interface.
5947
5948         * scm/define-grob-properties.scm (all-user-grob-properties):
5949         remove number-visibility property.
5950
5951         * lily/tuplet-bracket.cc (calc_control_points): new function
5952         (calc_connect_to_neighbors): new function.
5953         (print): remove text handling for tuplet numberdef.
5954
5955         * lily/tuplet-engraver.cc (struct Tuplet_description): create
5956         TupletNumbers too. 
5957
5958         * lily/lily-guile.cc (robust_scm2booldrul): new function
5959
5960         * scm/define-grobs.scm (all-grob-descriptions): new grob TupletNumber
5961
5962         * lily/tuplet-bracket.cc (calc_position_and_height): use
5963         staff-padding to control whether tuplet brackets are over staves.
5964
5965         * lily/grob.cc (suicide): clear dim_caches_.
5966
5967         * lily/dimension-cache.cc (clear): new function.
5968
5969         * lily/grob.cc (extent): swap order of min-extent and extent
5970         calculations. This fixes hara kiri staves. 
5971
5972 2005-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
5973
5974         * lily/main.cc: Nitpick: relocation is not based on path, but on
5975         directory (location).
5976
5977 2005-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5978
5979         * lily/main.cc (setup_paths): read LILYPOND_RELOCATE_PREFIX
5980
5981         * stepmake/stepmake/install-targets.make (local-uninstall): idem.
5982
5983         * stepmake/stepmake/install-out-targets.make (local-install-outfiles): idem.
5984
5985         * stepmake/stepmake/help2man-targets.make (install-help2man): idem.
5986
5987         * stepmake/stepmake/generic-vars.make (Module): idem.
5988
5989         * stepmake/stepmake/executable-targets.make (default): use it.
5990
5991         * stepmake/bin/install.py (create_dir): new file. Replace install-sh.
5992
5993         * make/GNUmakefile: don't install make rules.
5994
5995         * lily/main.cc (setup_paths): don't inspect $PATH for argv0 with
5996         slashes.
5997         (prepend_env_path): more verbosity.
5998
5999 2005-12-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6000
6001         * GNUmakefile.in: add dir argument for find command.
6002
6003         * lily/parser.yy (bass_figure): set_spot() for bass figures. This
6004         fixes weird line numbers for point & click.
6005
6006         * lily/source-file.cc (get_counts): init line/column/char counts.
6007
6008 2005-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6009
6010         * lily/main.cc: remove ARGV0_RELOCATION, instead use --relocate.
6011
6012 2005-12-16  Graham Percival  <gpermus@gmail.com>
6013
6014         * Documentation/user/basic-notation.itely, advanced-notation.itely:
6015         minor fixes from Fredric.  Thanks!
6016
6017 2005-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6018
6019         * ly/music-functions-init.ly: add \bar and \clef music function 
6020
6021         * lily/lily-lexer.cc: idem.
6022
6023         * lily/parser.yy (FIXME): remove BAR and CLEF.
6024
6025 2005-12-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6026
6027         * Documentation/topdocs/NEWS.tely (Top): doc string argument change.
6028
6029         * lily/parser.yy (Generic_prefix_music_scm): allow strings as
6030         function arguments too
6031
6032         * lily/main.cc (set_relocation): new function.
6033
6034         * scripts/musicxml2ly.py (convert): add \version
6035
6036         * lily/tie.cc: remove get_default_attachments()
6037
6038         * VERSION (PACKAGE_NAME): release 2.7.23
6039         
6040         * lily/chord-tremolo-engraver.cc (acknowledge_stem): use
6041         ultimate_music_cause(). This fixes core dumps in unfold-all-repeats.ly
6042
6043         * Documentation/topdocs/NEWS.tely (Top): document new feature.
6044
6045         * lily/tie-formatting-problem.cc (score_ties): new function
6046         (get_variations): new function. Try flipping dirs for collisions.
6047         (generate_optimal_chord_configuration): new function. 1-opt search
6048         for better configuration.
6049
6050         * lily/tie-configuration.cc: new file.
6051
6052         * lily/tie.cc: junk Tie::get_configuration()
6053
6054         * lily/tie-formatting-problem.cc (score_ties_aptitude): new function.
6055         (score_ties_configuration): new function.
6056         (generate_ties_configuration): new function.
6057         (generate_base_chord_configuration): new function.
6058         (set_ties_config_standard_directions): Move body from tie-column-format.cc 
6059         (set_manual_tie_configuration): Move body from tie-column-format.cc 
6060
6061         * input/regression/tie-dot.ly: new file.
6062
6063         * lily/tie-formatting-problem.cc (score_configuration): score
6064         tie/dot collisions.
6065
6066         * lily/tie-helper.cc (get_transformed_bezier): new function
6067
6068         * Documentation/topdocs/NEWS.tely (Top): strip out-www.
6069
6070         * stepmake/stepmake/python-module-vars.make (SHARED_FLAGS): use
6071         -undefined suppress iso. -framework Python 
6072
6073         * scm/define-grobs.scm (all-grob-descriptions): set
6074         springs-and-rods (thanks Joe Neeman!)
6075
6076 2005-12-12  Nicolas Sceaux  <nicolas.sceaux@free.fr>
6077
6078         * input/no-notation/display-lily-tests.ly (test): 
6079         * scm/display-lily.scm (tag->lily-string): the syntax for tags has
6080         changed from \tag #'(a b) to \tag #'a \tag #'b
6081
6082 2005-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6083
6084         * Documentation/topdocs/NEWS.tely: strip out-www.
6085
6086         * lily/include/grob-interface.hh: include lily-guile.hh not libguile.h
6087
6088         * config.make.in (AR): add AR and RANLIB
6089
6090         * flower/libc-extension.cc: include cassert
6091
6092         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): more robust
6093         darwin check.
6094
6095 2005-12-11  Graham Percival  <gpermus@gmail.com>
6096
6097         * stepmake/stepmake/generic-vars.make: define DARWIN_BUILD.
6098
6099         * stepmake/stepmake/python-modules-vars.make: define
6100         SHARED_FLAGS for OSX.  Thanks Johannes Schindelin!
6101
6102         * THANKS: added Johannes Schindelin.
6103
6104 2005-12-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6105
6106         * python/midi.c (pymidi_parse): use memcmp() iso. strcmp().
6107
6108         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
6109         Span_arpeggio_engraver, add Tweak_engraver to Score context. 
6110
6111         * lily/parser.yy: reorganize file layout.
6112
6113         * ly/music-functions-init.ly: add tweak music function.
6114
6115         * lily/grob-info.cc (ultimate_music_cause): new function:
6116         recursively lookup causes. 
6117
6118         * lily/parser.yy (chord_body_element): allow music functions for
6119         post-events, allow music functions for chord elements. 
6120  
6121         * lily/font-config-scheme.cc (display_fontset): add cast.
6122
6123         * python/convertrules.py (FatalConversionError.sub_syms): \tag
6124         #'(a b) -> \tag #'a \tag #'b rule.
6125
6126         * python/musicexp.py (Output_printer.dump_version): new function
6127
6128 2005-12-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6129
6130         * lily/parser.yy (FIXME): remove \tag
6131         (FIXME): remove tag_music() function.
6132
6133         * lily/lily-lexer.cc: remove \tag
6134
6135         * ly/music-functions-init.ly: define music-function "tag"
6136
6137         * lily/parser.yy (chord_body_element): allow tags in chord bodies.
6138
6139 2005-12-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6140
6141         * VERSION (PATCH_LEVEL): release 2.7.22
6142
6143         * input/regression/lyric-hyphen-retain.ly: renew.
6144
6145         * scm/define-grobs.scm (all-grob-descriptions): add LyricSpace
6146         grob
6147
6148         * lily/lyric-hyphen.cc (set_spacing_rods): use minimum-distance
6149         iso. minimum-length property for rods.
6150
6151         * lily/hyphen-engraver.cc (acknowledge_lyric_syllable): create
6152         LyricSpace item to keep lyrics spaced apart.
6153
6154         * ly/engraver-init.ly: remove Separating_line_group_engraver
6155
6156         * Documentation/user/music-glossary.tely: do setfilename before
6157         music-glossary.
6158
6159 2005-12-07  Heikki Junes  <hjunes@cc.hut.fi>
6160
6161         * Documentation/user/lilypond-book.itely: use `,´ after xref:
6162         See xref documentation, for example.
6163
6164 2005-12-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6165
6166         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): use
6167         pending_skip iso. ly_voice[-1]
6168         (main): add if __main__ for debugging.
6169
6170         * python/musicxml.py (Accidental.__init__): new class.
6171
6172         * scripts/musicxml2ly.py (progress): new function
6173         (musicxml_key_to_lily): don't barf on modeless keys.
6174         (create_skip_music): new function.
6175         (musicxml_spanner_to_lily_event): new function. Handle beams too.
6176         (musicxml_note_to_lily_main_event): new function.
6177
6178         * python/musicexp.py (Music.__init__): add comment field.
6179         (NestedMusic.append): new routine.
6180         (SequentialMusic.print_ly): print comment.
6181         (ArpeggioEvent.ly_expression): new class
6182         (BeamEvent.ly_expression): new class
6183         (NoteEvent.__init__): support for cautionary/forced accs.
6184
6185         * lily/lookup.cc (slur): normal order for array loop.
6186
6187         * scm/framework-ps.scm (dump-stencil-as-EPS): set left X of bbox
6188         to 0.0.
6189
6190         * ly/engraver-init.ly: set bar-size, so bar-lines aren't
6191         collapsed.
6192
6193 2005-12-06 Erik Sandberg  <mandolaerik@gmail.com>
6194
6195         * scm/music-functions.scm: Make phrasing slurs follow voice direction
6196
6197         * scripts/lilypond-book.py: Introduce option
6198             --preserve-line-breaks, for usage with srcltx
6199
6200 2005-12-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6201
6202         * scm/output-lib.scm (print-circled-text-callback): draw circle
6203         around text using make-circle-markup.
6204
6205         * Documentation/user/*: strip out-www from file names.
6206
6207 2005-12-05  Heikki Junes  <hjunes@cc.hut.fi>
6208
6209         * Documentation/user/lilypond.tely (direntry): remove empty lines;
6210         fixes invalid info entry issue with makeinfo 4.8 in debian sid.
6211
6212 2005-12-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6213
6214         * Documentation/user/GNUmakefile: idem.
6215
6216         * Documentation/user/macros.itexi: strip out-www
6217
6218         * python/rational.py: python 2.3 compat.
6219
6220         * VERSION (PATCH_LEVEL): release 2.7.21
6221
6222         * scripts/musicxml2ly.py (NonDentedHeadingFormatter.format_headi):
6223         option formatting, lilypond style.
6224
6225         * python/musicexp.py: grab from Ikebana: a library for composing
6226         ly music expressions. 
6227         (Output_printer): class for advanced .ly printing.
6228         (eg. tupletting) 
6229
6230         * python/musicxml.py: new file. Read MusicXML MiniDOM tree, and
6231         convert to pythonesque structure.
6232
6233         * python/rational.py: PD rational number class.
6234
6235         * Documentation/user/converters.itely (Invoking musicxml2ly):  new node.
6236
6237 2005-12-04  Erik Sandberg  <mandolaerik@gmail.com>
6238
6239         * lily/part-combine-iterator.cc: Minor bugfix
6240         
6241         * THANKS: Update bughunters
6242
6243 2005-12-02  Werner Lemberg  <wl@gnu.org>
6244
6245         * mf/README: Document process for proper mf2pt1 conversion.
6246
6247         * mf/feta-beugel.mf (draw_brace): Fix path to assure clean
6248         overlapping.
6249
6250         * mf/feta-harmonica.mf: Removed.  Unused.
6251
6252 2005-12-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6253
6254         * scripts/lilypond-book.py (do_file): fix thinkos.
6255
6256 2005-12-01  Jan Nieuwenhuizen  <janneke@gnu.org>
6257
6258         * lily/GNUmakefile ($(outdir)/FlexLexer.h):
6259         ($(outdir)/parser.cc): 
6260         ($(outdir)/lexer.cc): Bugfix: depend on config.h.
6261
6262 2005-11-30  Pedro Kröger  <kroeger@pedrokroeger.net>
6263
6264         * ly/titling-init.ly (tagline): it should be a space between
6265         "Music engraving by LilyPond" and the version number.
6266
6267 2005-12-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6268
6269         * VERSION (PACKAGE_NAME): release 2.7.20
6270
6271 2005-11-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6272
6273         * scm/define-markup-commands.scm (pad-to-box): new markup command.
6274
6275         * scm/define-grobs.scm (all-grob-descriptions): set thickness to
6276         1.0.
6277         (all-grob-descriptions): don't shift RehearsalMark arbitrarily.
6278
6279 2005-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6280
6281         * configure.in (LINK_GXX_STATICALLY): remove kpathsea checks.
6282
6283         * kpath-guile/: remove directory
6284
6285         * scm/kpathsea.scm (ly:kpathsea-expand-variable): new
6286         file. Encapsulate kpathsea using commandline tools.
6287
6288         * lily/all-font-metrics.cc (kpathsea_find_file): use (scm
6289         kpathsea) module.
6290
6291 2005-11-29  Mats Bengtsson  <mabe@s3.kth.se>
6292
6293         * Documentation/user/advanced-notation.itely (Setting automatic
6294         beam behavior): Correct a few typos. Thanks to David Bobroff.
6295
6296         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use
6297         \usepackage instead of \RequirePackage. Thanks to Bernard Hurley.
6298
6299 2005-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6300
6301         * scripts/*.py: gmane address for bugs.
6302
6303 2005-11-28 Pal Benko <benkop@freestart.hu>
6304         
6305         * make/ly-rules.make: add -f switch to mv
6306
6307         * scm/output-libs.scm: add new bar symbol "." for punctus divisionis
6308
6309         * lily/bar-line.cc: interpret it
6310
6311 2005-11-28  Jan Nieuwenhuizen  <janneke@gnu.org>
6312
6313         * configure.in (--disable-documentation): New switch.
6314
6315         * GNUmakefile.in: Use it.
6316
6317         * stepmake/aclocal.m4: Use AC_ARG_ENABLE for kpatsea.
6318
6319 2005-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6320
6321         * scripts/lilypond-book.py (do_file): search chunks for
6322         \\begin{document}
6323
6324         * GNUmakefile.in: add copy step in between so we can lose the
6325         out-www directories.
6326
6327 2005-11-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6328
6329         * lily/pango-font.cc (pango_item_string_stencil): put
6330         geometry.width into glyph-string too.
6331
6332 2005-11-26  Nicolas Sceaux  <nicolas.sceaux@free.fr>
6333
6334         * scm/define-music-display-methods.scm (RevertProperty):
6335         (OverrideProperty): Use grob-property-path property, a list of
6336         symbols, instead of grob-property, which used to be a single
6337         symbol.
6338         (BassFigureEvent): a figure can be a plain number, not necessarily a
6339         markup.
6340
6341 2005-11-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6342
6343         * VERSION: release 2.7.19
6344         
6345         * lily/figured-bass-engraver.cc (process_music): check
6346         figuredBassCenterContinuations first.
6347
6348         * scm/translation-functions.scm (format-bass-figure): make double
6349         sharp larger. 
6350
6351         * lily/mark-engraver.cc: read rehearsalMarkAlignSymbol to
6352         determine X-parent.
6353
6354         * lily/system-start-delimiter-engraver.cc: move from
6355         Nested_system_start_delimiter_engraver, rename
6356         Nested_system_start_delimiter_engraver ->
6357         System_start_delimiter_engraver.
6358
6359         * lily/nested-system-start-delimiter-engraver.cc (from_list): read
6360         bracket type from hierarchy.
6361
6362 2005-11-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6363
6364         * lily/rest.cc (y_offset_callback): read staff-position.
6365
6366         * scm/define-grob-properties.scm (all-user-grob-properties): don't
6367         mark after-line-breaking-callback as internal.
6368
6369         * lily/self-aligment-interface.cc: remove self-[XY]-offset.
6370
6371 2005-11-25  Werner Lemberg  <wl@gnu.org>
6372
6373         * mf/feta-banier.mf ("d3"): Make `flare' equal to `staff_space'.
6374
6375 2005-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6376
6377         * stepmake/bin/add-html-footer.py (do_file): add google
6378
6379         * lily/staff-symbol-engraver.cc (process_music): bugfix: stop
6380         staff if first_start_ is true.
6381
6382 2005-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6383
6384         * scripts/midi2ly.py (split_track): add __repr__ members.
6385         (track_first_item): only return Item if not None. This fixes a
6386         problem when dumping a track that starts with an empty channel.
6387
6388         * python/midi.c: doc module.
6389
6390 2005-11-22  Mats Bengtsson  <mabe@s3.kth.se>
6391
6392         * Documentation/user/global.itely (Creating MIDI files): Fix
6393         compilation problem.
6394
6395 2005-11-22  Graham Percival  <gpermus@gmail.com>
6396
6397         * Documentation/user/basic-notation.itely: clarify dynamic
6398         padding text.
6399
6400         * Documentation/user/advanced-notation.itely: add unicode
6401         escape control example, whatever that is.  :)
6402
6403         * Documentation/user/global.itely: added "removing dynamics
6404         from MIDI" code.
6405
6406 2005-11-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6407
6408         * VERSION (PATCH_LEVEL): release 2.7.18
6409
6410         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): replace
6411         System_start_delimiter_engraver by
6412         Nested_system_start_delimiter_engraver.
6413
6414         * lily/nested-system-start-delimiter-engraver.cc (struct
6415         Bracket_nesting_node): new class.
6416         (struct Bracket_nesting_group): new class
6417         (struct Bracket_nesting_staff): new class.
6418         (process_music): create hierarchy of grobs. This allows separate
6419         tuning of different SSDs. 
6420
6421         * scm/define-grobs.scm (all-grob-descriptions): new Grob SystemStartSquare
6422         (all-grob-descriptions): remove old NestedSystemStartDelimiter.
6423
6424 2005-11-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6425
6426         * lily/side-position-interface.cc (aligned_side): multiply
6427         staff_radius by 2.
6428
6429         * lily/script-engraver.cc (make_script_from_event): allow setting
6430         values to '()
6431
6432 2005-11-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6433
6434         * lily/system-start-delimiter.cc (line_bracket): don't shorten height.
6435
6436         * scm/define-grobs.scm (all-grob-descriptions): new grob
6437         NestedSystemStartDelimiter.
6438
6439         * input/regression/system-start-heavy-bar.ly: new file.
6440
6441         * lily/nested-system-start-delimiter-engraver.cc: new file.
6442
6443         * lily/nested-system-start-delimiter.cc: new file.
6444
6445         * input/regression/system-start-nesting.ly: new file.
6446
6447         * scm/define-grobs.scm (all-grob-descriptions): use X side
6448         positioning for positioning braces for nested contexts.
6449
6450         * lily/system-start-delimiter.cc (print): don't divide extent by
6451         staff_space.
6452         (print): use style iso. glyph.
6453         (staff_bracket): translate glyph inside routine already.
6454
6455 2005-11-18  Michael Welsh Duggan <md5i@cs.cmu.edu>
6456
6457         * lily/vaticana-ligature-engraver.cc: fixed 2 typos in glyph
6458         names.
6459
6460 2005-11-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6461
6462         * scm/define-context-properties.scm
6463         (all-user-translation-properties): rename figuredBassFormatter
6464         from newFiguredBassFormatter.
6465
6466         * scm/define-grobs.scm (all-grob-descriptions): move from NewBassFigure
6467
6468         * lily/figured-bass-engraver.cc: move from new-figured-bass-engraver.cc
6469
6470         * lily/stem.cc (calc_stem_info): trigger beaming calculation.
6471
6472         * lily/beam.cc (calc_beaming): new function.
6473         (calc_shorten): new function.
6474
6475         * THANKS: add Edward Neeman.
6476
6477         * input/regression/accidental-clef-change.ly: new file.
6478
6479         * lily/note-collision.cc (check_meshing_chords): don't merge fa heads.
6480
6481         * scm/define-grobs.scm (all-grob-descriptions): add Y-offset property.
6482
6483         * lily/clef-engraver.cc (inspect_clef_properties): reset
6484         localKeySignature for clef changes.
6485
6486 2005-11-17  Mats Bengtsson  <mabe@s3.kth.se>
6487
6488         * python/midi.c: PyMIDINIT_FUNC isn't defined in Python < 2.3 
6489         add dummy definition that works in Linux and add information in
6490         INSTALL.texi on the specific Python requirements for Cygwin/Mingw.
6491
6492         * Documentation/user/changing-defaults.itely (Modifying context
6493         plug-ins): Add index for \with.
6494
6495         * Documentation/user/music-glossary.tely (dal segno): Updated
6496         example to version >=2.6.
6497
6498 2005-11-16  Mats Bengtsson  <mabe@s3.kth.se>
6499
6500         * Documentation/user/instrument-notation.itely (Printing chord
6501         names): Reorder \chordmode and \repeat in one example.
6502
6503 2005-11-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6504
6505         * VERSION: release 2.7.17
6506         
6507         * Documentation/topdocs/NEWS.tely (Top): add note about
6508         refactoring.
6509
6510         * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
6511         new function. Search region of 3 positions for best tie.
6512         (score_configuration): new function.
6513         (score_aptitude): new function.
6514         (generate_configuration): new function.
6515         (get_configuration): new function.
6516         (Tie_formatting_problem): new function
6517
6518         * input/regression/page-top-space.ly: a6 for page-top-space demo. 
6519
6520         * stepmake/aclocal.m4: use $(if ) for config-FOOF.make
6521
6522         * THANKS: add Eduardo Vieira & Ralph Little
6523
6524         * mf/feta-bolletjes.mf (solfa_quarter_width): make solfa heads
6525         narrower.
6526
6527         * lily/include/tie-formatting-problem.hh (class
6528         Tie_formatting_problem): add Tie_details to
6529         Tie_formatting_problem. Update calling conventions.
6530
6531         * stepmake/aclocal.m4: oops. Include $CONFIGFILE.make, not
6532         config.make.
6533
6534         * Documentation/user/lilypond.tely: remove musedata2ly entry.
6535
6536 2005-11-16  Jürgen Reuter  <reuter@ipd.uka.de>
6537
6538         * lily/ligature-engraver.cc, lily/include/ligature-engraver.hh,
6539         scm/define-context-properties.scm: Maintenance bugfix: make
6540         ligature brackets work again by removing obsolete ligature
6541         primitive callback push/pop.
6542
6543         * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: do
6544         not call Tuplet_bracket::calc_direction.  Removed obsolete gap
6545         value.
6546
6547 2005-11-15  Jan Nieuwenhuizen  <janneke@gnu.org>
6548
6549         * stepmake/aclocal.m4 (depth): Explain why absolute directory is
6550         used and do not call it a path.
6551         (FLEXLEXER_FILE): Rename from FLEXLEXER_PATH and add file name.
6552
6553 2005-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6554
6555         * lily/include/tie-formatting-problem.hh (class
6556         Tie_formatting_problem): new file.
6557
6558         * lily/tie-formatting-problem.cc (common_x_refpoint): new file.
6559
6560         * Documentation/misc/ChangeLog-2.3:  new file.
6561
6562         * lily/audio-staff.cc (output): degarianize.
6563
6564 2005-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
6565
6566         * stepmake/stepmake/python-module-rules.make ($(outdir)/%.pyc):
6567         Unset PYTHONOPTIMIZE.  Fixes install if set.
6568
6569 2005-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6570
6571         * python/convertrules.py (conv): add warning about drums. 
6572
6573         * make/stepmake.make: include toplevel-version.make after config.make.
6574
6575         * stepmake/aclocal.m4 (depth): make sure $srcdir is absolute.
6576         also allow python2.4
6577
6578         * config.make.in (configure-srcdir): remove GXX GCC vars.
6579
6580         * stepmake/aclocal.m4: don't do non-srcdir build with
6581         symlinks. Use inclusion, so the src directory name can be changed.
6582
6583 2005-11-13  Jan Nieuwenhuizen  <janneke@gnu.org>
6584
6585         * make/mutopia-vars.make:
6586         * make/ly-vars.make: Use src-wildcard iso wildcard for source
6587         files.
6588
6589 2005-11-13  Werner Lemberg  <wl@gnu.org>
6590
6591         * mf/feta-arrow.mf: For all glyphs, don't mirror `currentpicture'
6592         but the affected path.  This ensures that the (overlapping) outlines
6593         have the same direction, which is a necessary prerequisite for
6594         FontForge's algorithm to remove overlaps.
6595         Formatting.
6596
6597         * mf/feta-haak.mf: Formatting.
6598         (draw_bracket): Slightly modify outline to avoid an unnecessary
6599         corner.
6600         Don't use ad-hoc values for `leave_angle' and `tip_angle' but derive
6601         them from the affected paths.
6602
6603 2005-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6604
6605         * mf/README: remove xpm / accordion notes.
6606
6607         * lily/tie-column-format.cc (set_chord_outline): add dots into
6608         skyline extents. This fixes tie formatting if the left head has dots.
6609
6610         * lily/tie.cc (get_configuration): only shift tie by a whole staff
6611         space inside the staff.
6612         (get_configuration): shift another position if necessary in case
6613         of left head tie  
6614
6615 2005-11-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6616
6617         * stepmake/stepmake/texinfo-vars.make (GENERATE_OMF): use
6618         buildscript-dir iso. $(depth)/buildscripts.
6619
6620         * tex/GNUmakefile (local-uninstall): remove
6621         music-drawing-routines.ps juggling.
6622
6623         * stepmake/stepmake/install-targets.make (local-install-files):
6624         prepend src-dir to install targets.
6625
6626         * lily/system-start-delimiter-engraver.cc
6627         (acknowledge_system_start_delimiter): use
6628         add_offset_callback(). This fixes translation of nested
6629         staffgroups.
6630
6631         * lily/grob-closure.cc (add_offset_callback): only encaps in
6632         simple_closure if it's a procedure.
6633         
6634         * lily/span-bar.cc (calc_glyph_name): read glyph-name, not glyph
6635         from bar-line.
6636
6637         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
6638         remove-empty where pertinent.
6639
6640 2005-11-12  Graham Percival  <gpermus@gmail.com>
6641
6642         * Documentation/user/instrument-notation.itely: added
6643         Cameron Horsburgh's multiple stanzas docs.  Thanks!
6644
6645 2005-11-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6646
6647         * lily/GNUmakefile
6648         ($(top-build-dir)/Documentation/pictures/$(outbase)/lilypond.ico):
6649         make picture in builddir, not srcdir.
6650
6651 2005-11-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6652
6653         * VERSION: release 2.7.16
6654         
6655         * scripts/lilypond-book.py (main): use commands.mkarg () to quote
6656         shell arguments. 
6657
6658 2005-11-10  Mats Bengtsson  <mabe@s3.kth.se>
6659
6660         * Documentation/user/examples.itely (Piano templates): Minor
6661         modification to the Piano centered lyrics example.
6662
6663 2005-11-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6664
6665         * scripts/lilypond-invoke-editor.scm (run-browser): look at
6666         $BROWSER.
6667
6668         * Documentation/user/point-and-click.itely: simplify p&c
6669         instruction: don't configure firefox. Put lilypond-invoke-editor
6670         in front of the browser.
6671
6672         * scripts/lilypond-invoke-editor.scm (run-editor): new function.
6673         (run-browser): new function.
6674
6675         * lily/parser.yy (Lily_lexer): recognize Book
6676
6677         * lily/book.cc (clone): new function
6678
6679         * lily/parser.yy (book_body): allow BOOK_IDENTIFIER.
6680
6681 2005-11-10  Jürgen Reuter  <reuter@ipd.uka.de>
6682
6683         * lily/vaticana-ligature.cc, lily/vaticana-ligature-engraver.cc:
6684         Maintenance bugfix: reduce number of font related warnings by
6685         updating naming conventions for glyph-name.
6686
6687 2005-11-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6688
6689         * scm/define-grobs.scm (all-grob-descriptions): add
6690         rhythmic-grob-interface to TabNoteHead.
6691
6692         * scm/layout-beam.scm (check-quant-callbacks): remove
6693         set_stem_lengths()
6694
6695 2005-11-08  Jürgen Reuter  <reuter@ipd.uka.de>
6696
6697         * ly/gregorian-init.ly (divisiones): Maintenance bugfix: vertical
6698         alignment of centered divisiones.
6699
6700         * scm/scripts.scm (articulations): Maintenance bugfix:
6701         follow-into-staff -> quantize-position.
6702
6703         * lily/vaticana-ligature-engraver.cc (transform_heads): Bugfix:
6704         plica head in porrectus deminutus.
6705
6706 2005-11-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6707
6708         * make/lilypond.fedora.spec.in (Group): add %clean section.
6709
6710         * lily/tuplet-bracket.cc (print): change check: remove bracket if
6711         less then 1/5th of total length.  
6712         (print): use gap too.  Fixes tupletUp-single-bracket.ly
6713
6714         * scm/music-functions.scm (glue-mm-rest-texts): also put other
6715         events into EventChord. This fixes textspanners on mm rests. Fixes
6716         spanner-rest.ly
6717
6718         * lily/side-position-interface.cc (get_axis): read side-axis
6719         (set_axis): set side-axis.
6720
6721         * scm/define-grobs.scm (all-grob-descriptions): add side-axis
6722         properties everywhere.
6723
6724         * lily/spacing-spanner.cc (breakable_column_spacing): add
6725         average-spacing-wishes. Take maximum if not set.
6726         (musical_column_spacing): idem. Fixes: spacing-keysig-note.ly
6727
6728         * scm/define-grobs.scm (all-grob-descriptions): add
6729         average-spacing-wishes.
6730
6731         * lily/grob-closure.cc (add_offset_callback): bugfix: properly add
6732         offset callbacks. This fixes alignment for Fingering objects.
6733
6734         * scm/define-grobs.scm (all-grob-descriptions): tiny bit less
6735         space for key - timesig combination. 
6736
6737         * input/regression/script-stem-tremolo.ly (Module): new file.
6738
6739         * scm/define-grobs.scm (all-grob-descriptions): decrease distance
6740         to key sig.
6741
6742         * lily/dynamic-engraver.cc (acknowledge_stem_tremolo): new function.
6743         Fixes: c-tremolo-script.ly.
6744         
6745         * lily/text-engraver.cc (acknowledge_stem_tremolo): new function.
6746
6747         * lily/script-engraver.cc (acknowledge_stem_tremolo): new function.
6748         
6749         * scm/define-grobs.scm (all-grob-descriptions): remove
6750         self-X-offset. Fixes alignment of octavate-8.
6751
6752         * scripts/lilypond-book.py (datadir): look in
6753         LILYPONDPREFIX/share/lilypond/current/
6754
6755         * GNUmakefile.in: symlink current to <VERSION>. 
6756
6757 2005-11-07  Pedro Kroger  <kroeger@pedrokroeger.net>
6758
6759         * lily/main.cc: eps listed as a backend.
6760
6761 2005-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6762
6763         * scm/lily-library.scm (print-music-as-book): quote $defaultpaper.
6764
6765 2005-11-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6766
6767         * lily/include/score.hh (class Score): remove texts_ member.
6768
6769         * lily/beam.cc (set_stem_lengths): force direction callback.
6770         (print): read quantized-positions, so we can force
6771         Beam::set_stem_lengths to occur.
6772         (rest_collision_callback): use common X parent. 
6773
6774 2005-11-03  Jan Nieuwenhuizen  <janneke@gnu.org>
6775
6776         * flower/file-path.cc (find): Bugfix: Return name of file found.
6777
6778         * lily/main.cc (setup_paths): Bugfix for argv0 logic.
6779         (setup_paths)[__CYGWIN__ || __MINGW32__]: Normalize argv0.
6780         (setup_paths)[__MINGW32__]: Also look for argv0 + .exe.
6781
6782 2005-11-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6783
6784         * flower/offset.cc: idem.
6785
6786         * mf/*.mf: update email address.
6787
6788         * lily/font-config-scheme.cc:  new file.
6789
6790         * GNUmakefile.in (SUBDIRS): remove debian/ directory.
6791
6792         * lily/*:  cs.uu.nl -> xs4all.nl
6793
6794         * VERSION (PATCH_LEVEL): release 2.7.15
6795
6796         * make/lilypond.mandrake.spec.in (Module): remove Mandrake & Suse
6797         spec files.
6798
6799         * make/lilypond.fedora.spec.in: add %{libdir}/lilypond/
6800
6801 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6802
6803         * GNUmakefile.in: bugfix: encapsulate mkdir && cd in parens.   
6804
6805         * lily/staff-performer.cc (process_music): add audio
6806         elements. This makes MIDI instrument changes work once again.
6807
6808         * lily/main.cc (LY_DEFINE): add gmane address.
6809
6810         * lily/beam.cc: remove calc_positions()
6811
6812         * lily/include/grob.hh (class Grob): move pscore, dim_cache_,
6813         original_ in private scope.
6814         (class Grob): drop pscore_ pointer, change to output_def pointer.
6815         (class Grob): cleanup class definition.
6816
6817         * ly/spanners-init.ly (assertBeamQuant): use make-simple-closure.
6818
6819 2005-11-02  Jan Nieuwenhuizen  <janneke@gnu.org>
6820
6821         * lily/main.cc (setup_paths)[__MINGW32__]: Do not assume argv0 is
6822         absolute.  Better diagnostics.
6823
6824         * GNUmakefile.in: Add bin/ to tree and populate with some links.
6825         This makes lilypond run from the build directory using argv0
6826         relocation (without any --prefix or LILYPONDPREFIX setting).
6827
6828 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6829
6830         * Documentation/topdocs/NEWS.tely (Top): document new backend design.
6831
6832         * scm/define-grobs.scm: purge self-[XY]-offset variables, replace
6833         with simple-closure.
6834
6835         * lily/self-aligment-interface.cc (set_align_self): new function
6836         (set_center_parent): new function.
6837
6838         * lily/side-position-interface.cc (set_axis): new function.
6839
6840         * lily/new-fingering-engraver.cc (position_scripts): use drul for
6841         generic code. 
6842
6843         * scm/define-grob-properties.scm (all-user-grob-properties):
6844         remove [XY]-offset-callbacks add [YX]-offset
6845         
6846 2005-11-02  Mats Bengtsson  <mabe@s3.kth.se>
6847
6848         * scm/define-grobs.scm (all-grob-descriptions): Added space-alist
6849         entry for time signatures after breathing signs. Bug report by
6850         Scott Russell.
6851
6852 2005-11-01  Jan Nieuwenhuizen  <janneke@gnu.org>
6853
6854         * lily/main.cc (setup_paths)[!__MINGW32__]: Bugfix: if argv0 is
6855         not absolute, make it absolute using PATH.
6856
6857 2005-10-28  Jan Nieuwenhuizen  <janneke@gnu.org>
6858
6859         * python/midi.c (initmidi): Fix type for mingw.
6860
6861 2005-10-27  Jan Nieuwenhuizen  <janneke@gnu.org>
6862
6863         * stepmake/stepmake/compile-vars.make (SHARED_FLAGS): Support mingw.
6864
6865         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Detect mingw
6866         cross compiling.
6867
6868         * stepmake/aclocal.m4: Support python cross compiling.
6869
6870         * stepmake/stepmake/python-module-vars.make (SHARED_MODULE_SUFFIX):
6871         Add mingw section.
6872
6873 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6874
6875         * scm/output-lib.scm (chain-grob-member-functions): replace
6876         chained-callback.cc
6877
6878         * lily/chained-callback.cc (Module): remove file.
6879
6880         * lily/rest-collision.cc (force_shift_callback_rest): change to
6881         chained callback.
6882
6883         * lily/rest.cc (y_offset_callback): merge function of 3 callbacks. 
6884
6885         * lily/grob.cc (y_parent_positioning): remove axis argument from
6886         parent_positioning callbacks.
6887         (Grob): junk init code
6888         (get_offset): use generic property callbacks for
6889         X-offset, Y-offset. Remove Grob::{add,has}_offset_callback.
6890         (axis_parent_positioning): new function
6891         (axis_offset_symbol): new function
6892         (chain_offset_callback): new function
6893         (add_offset_callback): new function
6894
6895         * lily/beam.cc (rest_collision_callback): change signature; this
6896         is now a chained callback.
6897
6898         * lily/include/dimension-cache.hh (class Dimension_cache): remove
6899         callback administration.
6900
6901         * lily/simple-closure.cc: new file. Smob type that allows "grob
6902         member functions",
6903
6904             (ly:make-simple-closure FUNC A B)
6905
6906         is evaluated as (FUNC grob A B). This allows chaining of callbacks
6907         in various ways.
6908
6909         * lily/slur-engraver.cc (acknowledge_extra_object): use chained
6910         callbacks.
6911
6912         * lily/slur.cc (outside_slur_callback): take 2 arguments.
6913
6914         * lily/rest.cc (polyphonic_offset_callback): remove.
6915
6916         * lily/script-engraver.cc (try_music): remove bool* argument.
6917
6918         * scm/script.scm (default-script-alist): set quantize-position
6919         appropriately.
6920
6921         * lily/script-engraver.cc: remove follow_into_staff_ special coding. 
6922
6923         * lily/side-position-interface.cc (aligned_side): move staff
6924         position quantization from
6925         Side_position_interface::quantised_position().
6926         (quantised_position): remove
6927         
6928 2005-10-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6929
6930         * input/regression/beam-quant-standard.ly: reindent, set
6931         debug-beam-quanting to #t.
6932
6933         * lily/beam-concave.cc (calc_concaveness): set concaveness to
6934         10000 if this is a "hard" concave beam.
6935
6936         * lily/beam.cc (calc_least_squares_positions): change from
6937         calc_least_squares_dy
6938         (set_stem_lengths): this is now a chained callback.
6939
6940         * lily/context-property.cc (execute_general_pushpop_property):
6941         bugfix override with procedure should have effect.
6942
6943         * scm/define-grob-properties.scm (all-internal-grob-properties):
6944         remove position-callbacks.
6945
6946         * scm/define-grobs.scm (all-grob-descriptions): use
6947         ly:make-callback-chain for positions property.
6948
6949         * scm/layout-beam.scm (check-quant-callbacks): return list of
6950         chained callbacks.
6951
6952         * scm/lily.scm (type-p-name-alist): add callback-chain
6953
6954         * lily/lily-guile.cc (type_check_assignment): type check failure
6955         is warning not message.
6956
6957         * lily/grob-property.cc (try_callback): walk callback chain if
6958         appropriate.
6959
6960         * lily/chained-callback.cc: new file. new smob type.
6961
6962         * lily/lily-guile.cc (procedure_arity): new function.
6963
6964 2005-10-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6965
6966         * Documentation/topdocs/INSTALL.texi (Top): add perl flex bison.
6967
6968 2005-10-25  John Mandereau  <john.mandereau@free.fr>
6969  
6970         * Documentation/user/instrument-notation.itely (Figured bass):
6971         describe new features
6972
6973 2005-10-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6974
6975         * lily/beam.cc (calc_least_squares_dy): use property callback.
6976
6977         * lily/beam-concave.cc (calc_concaveness): use property callback.
6978
6979         * ly/paper-defaults.ly: move fixed dimensions from paper.scm 
6980
6981 2005-10-25  Jan Nieuwenhuizen  <janneke@gnu.org>
6982
6983         * HACKING: Update.
6984
6985 2005-10-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6986
6987         * scm/layout-page-layout.scm (page-headfoot): annotate
6988         pagetopspace too.
6989
6990         * scm/stencil.scm (dimension-arrows): shorten arrowed lines a bit. 
6991
6992         * scm/layout-page-layout.scm (annotate-y-interval): y-annotation
6993         doesn't take y-space.
6994
6995         * scm/paper.scm (paper-alist): fix A7 dimensions. 
6996
6997 2005-10-24  Jan Nieuwenhuizen  <janneke@gnu.org>
6998
6999         * stepmake/stepmake/generic-vars.make (DIST_FILES): Fix
7000         src-wildcard, remove $(wildcard).
7001
7002         * po/GNUmakefile (PO_FILES): 
7003         * ps/GNUmakefile (PS_FILES): 
7004         * tex/GNUmakefile (TEX_FILES): 
7005         * cygwin/GNUmakefile (POSTINSTALLS):
7006         * vim/GNUmakefile (EXTRA_DIST_FILES): Bugfix: [etags sr?] missed
7007         some wildcard calls.
7008
7009 2005-10-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7010
7011         * THANKS: add Thomas Bushnell.
7012
7013 2005-10-23  Jan Nieuwenhuizen  <janneke@gnu.org>
7014
7015         * scm/lily.scm: Remove horrendous running-from-gui? kludge.
7016         (lilypond-main): Redirect to gui-main if 'gui is set.
7017
7018         * scripts/midi2ly.py (datadir): Add libdir iso datadir to path,
7019         for alternative installations kludging s/share/lib/g
7020         LILYPONDPREFIX. 
7021
7022         * SConstruct (libdir_package_version): Define.
7023
7024         * python/SConscript: 
7025         * python/GNUmakefile (INSTALLATION_OUT_DIR): Install binary .so
7026         module in libdir.  
7027
7028 2005-10-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7029
7030         * lily/main.cc: clarify --safe.
7031
7032 2005-10-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7033
7034         * VERSION: release 2.7.14
7035         
7036         * Documentation/user/*.itely: remove minimumVerticalExtent.
7037
7038         * scm/define-grobs.scm (all-grob-descriptions): remove
7039         RemoveEmptyVerticalGroup
7040
7041         * lily/hara-kiri-engraver.cc (get_spanner): create VerticalAxisGroup.
7042
7043         * lily/include/lily-guile.hh (GUILE_ELLIPSIS): define to get clean
7044         compile on MOSX
7045
7046         * python/convertrules.py (conv): add rules.
7047
7048         * lily/grob.cc: remove is_empty()
7049
7050         * lily/grob-property.cc: remove add_to_list_property().
7051
7052         * scripts/convert-ly.py (datadir): add prefix switching hack to
7053         .py too.
7054
7055         * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily (cresc): remove
7056         space-function tweak.
7057
7058         * lily/grob.cc: remove X-extent-callback / Y-extent-callback.
7059
7060         * scm/define-grob-properties.scm (all-user-grob-properties):
7061         remove callback property.
7062
7063         * lily/include/grob.hh (class Grob): remove property_callbacks_
7064         member. Properties of procedure type are assumed to be callbacks.
7065
7066         * lily/ligature-engraver.cc (override_stencil_callback):
7067         rewrite. Use noteHeadLigaturePrimitive as source.
7068
7069         * scm/define-grob-properties.scm (all-internal-grob-properties):
7070         remove ligature-primitive-callback
7071
7072         * lily/include/dimension-cache.hh (class Dimension_cache): make
7073         class, with Grob as friend.
7074
7075         * lily/grob.cc: remove set_extent_callback(), set_extent() and
7076         has_extent_callback()
7077
7078         * scm/translation-functions.scm (format-new-bass-figure): read
7079         figuredBassPlusDirection
7080
7081         * scm/define-context-properties.scm
7082         (all-user-translation-properties): add figuredBassPlusDirection.
7083
7084         * lily/staff-spacing.cc (next_notes_correction): oops. Init wishes.
7085
7086         * lily/align-interface.cc (set_ordered): new function.
7087
7088         * lily/grob.cc (flush_extent_cache): rewrite.
7089
7090         * lily/dimension-cache.cc (Dimension_cache): cache extent as
7091         Interval pointer directly.
7092
7093         * lily/main.cc (setup_paths): insert extra / .
7094         (setup_paths): junk cff entry.
7095
7096         * lily/font-config.cc (init_fontconfig): only add type1 / otf
7097         directories.
7098
7099         * lily/axis-group-engraver.cc (finalize): remove
7100         extraVerticalExtent, minimumVerticalExtent verticalExtent.
7101
7102         * lily/grob.cc (Grob): don't set extent from ctor.
7103         (extent): use property callbacks. 
7104
7105         * lily/axis-group-interface.cc: remove set_axes() function.
7106
7107         * lily/grob-property.cc (del_property): new function.
7108
7109 2005-10-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7110
7111         * lily/font-config.cc (init_fontconfig): resurrect mf/out/ check.
7112         
7113 2005-10-20  Jan Nieuwenhuizen  <janneke@gnu.org>
7114
7115         * stepmake/stepmake/script-vars.make (PYTHON_SCRIPTS_IN): Oops.  Add.
7116
7117 2005-10-19  Jan Nieuwenhuizen  <janneke@gnu.org>
7118
7119         * mf/SConscript: Updates.
7120
7121         * lily/GNUmakefile (OUT_DIST_FILES): Bugfix.
7122
7123         * stepmake/stepmake/*:
7124         * */GNUmakefile:
7125         * config.make.in:
7126         * GNUmakefile.in:
7127         * stepmake/aclocal.m4: Friendlier --srcdir build, allowing `make'
7128         from any directory in build-dir.  Cleanups.
7129
7130         * make/srcdir.make.in: Remove.
7131
7132         * lily/main.cc (setup_paths): Fix and document build-dir hack.
7133
7134         * SConstruct (CheckYYCurrentBuffer): Use TryCompile (there is no
7135         main).
7136
7137         * lily/SConscript: Remove ttftools.
7138
7139         * SConstruct: Resurrect.
7140
7141 2005-10-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7142
7143         * lily/tuplet-bracket.cc (print): use dy iso. positions[RIGHT] for
7144         Y coordinate. 
7145
7146         * lily/paper-book.cc (add_score_title): put Paper_score title into
7147         systems_ list.
7148
7149         * scm/translation-functions.scm (format-new-bass-figure): also
7150         allow plus in combination with _
7151
7152 2005-10-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7153
7154         * VERSION: 2.7.13 released.
7155
7156         * lily/note-collision.cc (check_meshing_chords): don't wipe
7157         stencil, merely set transparent.
7158
7159         * Documentation/topdocs/NEWS.tely (Top): mention John Mandereau. 
7160         (Top): document #'callbacks.
7161         (Top): document nested \override.
7162
7163         * input/regression/figured-bass.ly: update for slash and pluses.
7164
7165         * input/regression/figured-bass-continuation-forbid.ly (Module):
7166         new file.
7167
7168         * scm/translation-functions.scm (format-new-bass-figure): use
7169         slashed-digit if diminished is set.
7170         (format-new-bass-figure): add + if 'augmented is set.
7171
7172         * scm/define-markup-commands.scm (slashed-digit): new command slashed-digit.
7173
7174         * input/test/piano-staff-distance.ly: remove file.
7175
7176         * Documentation/user/advanced-notation.itely (Formatting cue
7177         notes): use length-fraction for making stems/beams smaller.
7178
7179         * lily/parser.yy (bass_figure): accept \+ \! and / as figured bass
7180         modifications.
7181
7182         * lily/new-figured-bass-engraver.cc: new property
7183         centerFiguredBassContinuations
7184
7185         * Documentation/user/changing-defaults.itely (Difficult tweaks):
7186         use callbacks.
7187
7188         * lily/context-property.cc (execute_general_pushpop_property):
7189         robustness checks.
7190
7191         * input/regression/override-nest.ly: new file.
7192
7193         * python/convertrules.py (FatalConversionError.subber): conversion
7194         rule for #'callbacks
7195
7196         * input/regression/override-nest.ly: new function.
7197
7198         * lily/parser.yy (music_property_def): allow \override #'a #'b =
7199         #c too. 
7200
7201         * lily/context-property.cc (lookup_nested_property): new function.
7202         (evict_from_alist): new function.
7203         (general_pushpop_property): new function.
7204         (execute_general_pushpop_property): rewrite. Support nested
7205         properties too.
7206
7207 2005-10-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7208
7209         * lily/beam.cc: use length-fraction too.
7210
7211         * scm/define-grob-properties.scm (all-user-grob-properties):
7212         remove property flag-width-function
7213         (all-user-grob-properties): remove space-function.
7214
7215         * scm/layout-beam.scm: remove flag-width-function.
7216
7217         * lily/beam.cc: remove flag-width-function
7218
7219         * scm/layout-beam.scm: remove beam dir functions.
7220
7221         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): use length-fraction.
7222
7223         * lily/stem.cc (calc_length): multiply with length_fraction. Makes
7224         for easier grace tweaks.
7225
7226         * lily/beam.cc: remove dir-function.
7227
7228         * lily/system.cc (pre_processing): use callback to trigger spacing procedures.
7229
7230         * lily/grob.cc: remove spacing-procedure.
7231
7232         * lily/note-head.cc (calc_stem_attachment): new function.
7233         (internal_print): use callback to get glyph-name.
7234
7235         * lily/grob-property.cc (get_interfaces): new function.
7236
7237         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-interfaces
7238
7239         * lily/stem.cc (calc_stem_end_position): new function.
7240         (calc_length): new function.
7241         document details for stem.
7242         remove Stem::get_direction()
7243
7244         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-set-callback! 
7245
7246         * lily/grob-property.cc (set_callback): new function.
7247
7248         * lily/script-engraver.cc (make_script_from_event): don't trigger callback.
7249
7250         * lily/item-scheme.cc: new file.
7251
7252         * lily/bar-line.cc (before_line_breaking): remove function.
7253         remove bar-size-procedure, break-glyph-function
7254
7255         * lily/clef-engraver.cc (set_glyph): use glyph iso. glyph-name
7256
7257         * lily/clef.cc (before_line_breaking): change to calc_glyph_name.
7258
7259         * lily/system-start-delimiter.cc (print): suicide from
7260         here. Remove after_line_breaking_callback.
7261
7262         * lily/script-interface.cc (calc_direction): use callback for direction.
7263
7264         * lily/side-position-interface.cc (aligned_side): don't use
7265         Side_position_interface::get_direction directly. Use callback. 
7266
7267         * lily/grob.cc (get_stencil): simplify: use callback mechanism to
7268         calculate stencil.
7269         (get_print_stencil): rename from get_stencil: create stencil with
7270         transparency, color and cause. 
7271
7272         * scm/define-grobs.scm: change print-function to stencil callback everywhere.
7273
7274         * python/convertrules.py (conv): insert temporary warning rule.
7275
7276         * lily/multi-measure-rest.cc (set_text_rods): use stencil directly.
7277
7278         * lily/grob-property.cc (try_callback): remove marker if applicable.
7279
7280         * lily/grob.cc: elucidate doc about after/before-line-breaking
7281
7282         * lily/slur-scoring.cc (enumerate_attachments): robustness fix.
7283
7284         * lily/stem.cc (height): idem.
7285
7286         * lily/stem-tremolo.cc: idem.
7287
7288         * lily/slur.cc (height): don't use get_uncached_stencil()
7289
7290         * lily/rest.cc (y_offset_callback): use offset callback
7291         iso. after-line-breaking callback.
7292
7293         * lily/grob.cc: change after/before-line-breaking-callback to
7294         after/before-line-breaking dummy properties.
7295
7296         * lily/include/grob.hh: remove Grob_status.
7297
7298         * scm/define-context-properties.scm
7299         (all-user-translation-properties): remove verticalAlignmentChildCallback
7300
7301         * lily/tuplet-bracket.cc: use positions property iso. left,right-position.
7302         (calc_direction): use callback
7303         (calc_positions): use callback.
7304
7305         * lily/tie.cc (calc_direction): use callback. Only call parent
7306         positioning for more than one tie.
7307
7308         * lily/tie-column.cc (calc_positioning_done): use callback
7309
7310         * lily/slur-scoring.cc (calc_control_points): use callback
7311
7312         * lily/slur.cc (calc_direction): use callback.
7313
7314         * lily/note-collision.cc (force_shift_callback): remove.
7315
7316         * lily/dot-column.cc (force_shift_callback): remove. Use
7317         other_axis_parent_positioning.
7318
7319         * lily/grob.cc (other_axis_parent_positioning): new function.
7320         (same_axis_parent_positioning): new function
7321
7322         * lily/align-interface.cc (alignment_callback): remove function.
7323
7324         * lily/note-collision.cc (calc_positioning_done): use callback.
7325
7326         * lily/laissez-vibrer-tie.cc (calc_control_points): use callback.
7327         (calc_direction): idem.
7328         remove print function.
7329
7330         * lily/laissez-vibrer-tie-column.cc (calc_positioning_done): use callback.
7331
7332         * lily/dot-column.cc (calc_positioning_done): use callback.
7333
7334         * lily/break-align-interface.cc (calc_positioning_done): use callback.
7335
7336         * lily/beam.cc (calc_direction): use pseudo-property for beam
7337         direction callback.
7338         (calc_positions): use callback 
7339
7340         * lily/align-interface.cc (calc_positioning_done): use
7341         callback. Fold fixed  distance and normal alignment in one function.
7342
7343         * lily/stem.cc (calc_stem_end_position): use callback.
7344         (calc_positioning_done): idem.
7345         (calc_direction): idem.
7346         (calc_stem_end_position): idem
7347         (calc_stem_info): idem.
7348
7349         * lily/grob-property.cc (get_property_data): new function: 
7350         (try_callback): new function.
7351
7352         * scm/define-grob-properties.scm (all-user-grob-properties): doc
7353         callbacks property.
7354
7355         * lily/break-align-interface.cc: remove Break_align_interface::alignment_callback.
7356
7357 2005-10-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7358
7359         * lily/tie.cc (get_position): robustness fix. Don't crash if a
7360         tie
7361         has no heads.
7362         
7363         * lily/include/*.hh (Module): compile fixes.
7364
7365 2005-10-14  Heikki Junes <hjunes@cc.hut.fi>
7366
7367         * elisp/lilypond-font-lock.el, elisp/lilypond-indent.el: Avoid nil 
7368         as an argument for char-syntax: use (char-syntax (or nil 0)) 
7369         instead of (char-syntax nil), thanks to Milan Zamazal.
7370
7371 2005-10-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7372
7373         * make/lilypond.fedora.spec.in (Group): add lilypond-internals to
7374         dist.
7375
7376         * lily/tuplet-bracket.cc: check columns of bounds, not bounds
7377         themselves.
7378
7379 2005-10-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7380
7381         * flower/include/virtual-methods.hh (VIRTUAL_COPY_CONSTRUCTOR):
7382         add class_name() method.
7383
7384         * lily/music-scheme.cc: remove ly:music-name.
7385
7386 2005-10-11  Jan Nieuwenhuizen  <janneke@gnu.org>
7387
7388         * cygwin/postinstall-lilypond.sh: Remove cruft.
7389
7390         * cygwin/postremove-lilypond.sh: Remove.
7391
7392         * cygwin/GNUmakefile (default): Remove postremove rules.
7393
7394 2005-10-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7395
7396         * ly/titling-init.ly (evenHeaderMarkup): use space in header on
7397         even header too.
7398         
7399         * scm/define-markup-commands.scm (wordwrap-string): bugfix for
7400         MacOS 9 users.
7401
7402         * lily/hara-kiri-group-spanner.cc (consider_suicide): only
7403         consider break index for broken spanner.
7404
7405         * scm/define-markup-commands.scm (wordwrap-string): remove \r
7406         characters from string before splitting.
7407
7408 2005-10-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7409
7410         * scm/framework-ps.scm (output-preview-framework): use
7411         is-book-title to determine whether to chop off the booktitle.
7412
7413         * lily/paper-book.cc (systems): init from book-title-properties
7414         (add_score_title): init score-title-properties.
7415
7416         * ly/paper-defaults.ly: add {score,book}-title-properties.
7417
7418         * scm/document-backend.scm (lookup-interface): error message if
7419         using unknown interface.
7420
7421         * lily/volta-bracket.cc (after_line_breaking): new function. Set
7422         edge-height.
7423
7424         * lily/horizontal-bracket.cc (make_enclosing_bracket): rename from
7425         make_bracket.
7426         (make_bracket): new function.
7427
7428         * scm/lily.scm (define-scheme-options): add paper-size option.
7429
7430         * ly/declarations-init.ly (laissezVibrer): get paper size from
7431         -dpaper-size
7432
7433         * scm/translation-functions.scm: use \fontsize for changing the
7434         fontsize.
7435
7436         * scm/define-grobs.scm (all-grob-descriptions): set
7437         between-length-limit to 1.0
7438
7439         * lily/tie-helper.cc: add between_length_limit_ detail property.
7440
7441         * mf/feta-bolletjes.mf: typos.
7442
7443         * lily/note-head.cc (internal_print): don't shadow idx
7444         parameter. This fixes wrong attachment for do shape heads.
7445
7446 2005-10-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7447
7448         * scm/parser-ly-from-scheme.scm: rename from ly-from-scheme.scm
7449
7450         * scm/parser-clef.scm (supported-clefs): rename from clef.scm
7451
7452         * scm/layout-slur.scm: rename from slur.scm
7453
7454         * scm/layout-page-layout.scm: rename from page-layout.scm
7455
7456         * scm/layout-beam.scm: rename from beam.scm
7457
7458         * scm/define-grob-interfaces.scm (bass-figure-interface): add
7459         bass-figure-interface
7460
7461         * lily/new-figured-bass-engraver.cc (process_music): add
7462         implicitBassFigures property.
7463         
7464         * scm/define-markup-commands.scm (pad-x): new markup.
7465
7466         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set
7467         minimumVerticalExtent on FiguredBass context.
7468
7469         * lily/figured-bass-continuation.cc (center_on_figures): kludge in
7470         case the continuation crosses a line break.
7471
7472 2005-10-09  Jan Nieuwenhuizen  <janneke@gnu.org>
7473
7474         * flower/file-name.cc (dos_to_posix)[__CYGWIN__]: Return
7475         unconverted value if cygwin_conv_to_posix_path () fails.  Fixes
7476         absolute file name bug.  
7477
7478 2005-10-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7479
7480         * VERSION (PACKAGE_NAME): release 2.7.12
7481
7482         * input/regression/figured-bass-continuation-center.ly: new file.
7483
7484         * input/regression/beam-outside-beamlets.ly: new file.
7485
7486         * lily/beam.cc (set_beaming): don't clip edges.
7487         (connect_beams): don't clip edges.
7488
7489         * lily/beaming-info.cc (clip_edges): new function.
7490
7491         * lily/enclosing-bracket.cc (struct Enclosing_bracket): new file.
7492
7493         * Documentation/user/instrument-notation.itely (Figured bass):
7494         demonstrate extenders, update seealso links.
7495
7496         * scm/titling.scm (marked-up-headfoot): change tagline
7497         handling. tagline = ##f will blank the tagline as well.
7498
7499 2005-10-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7500
7501         * Documentation/topdocs/NEWS.tely: add entry for Figured bass.
7502
7503         * lily/new-figured-bass-engraver.cc (struct
7504         New_figured_bass_engraver): add new_music_found_ member.
7505
7506         * lily/lilypond-version.cc (Lilypond_version): deal with
7507         incorrectly formatted version strings. 
7508
7509         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): switch on
7510         New_figured_bass_engraver by default.
7511
7512         * lily/ttf.cc (print_trailer): only define glyph names when
7513         FT_Face has FT_FACE_FLAG_GLYPH_NAMES
7514
7515 2005-10-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7516
7517         * lily/horizontal-bracket.cc (make_bracket): new function.
7518
7519         * scm/define-grobs.scm (all-grob-descriptions): new grobs
7520         NewBassFigure, BassFigureBracket, BassFigureContinuation,
7521         BassFigureLine, BassFigureAlignment
7522
7523         * lily/new-figured-bass-engraver.cc (process_music): new file.
7524
7525         * lily/figured-bass-continuation.cc: new file.
7526
7527         * lily/include/horizontal-bracket.hh (struct Horizontal_bracket):
7528         new file.
7529
7530 2005-10-04  Mats Bengtsson  <mabe@s3.kth.se>
7531
7532         * scripts/lilypond-book.py: Bug fix, put the quote around the
7533         actual score for LaTeX documents.
7534
7535         * scm/define-grobs.scm (all-grob-descriptions): Change
7536         collapse-height of the SystemStartBracket grob to 5.0, 
7537         so the bracket disappears for single stave score lines (similarly
7538         to SystemStartBraces). 
7539
7540         * Documentation/user/advanced-notation.itely (Polymetric
7541         notation): Clarify the use of compressMusic.
7542
7543         * Documentation/user/basic-notation.itely (Grace notes): Clarify
7544         that the grace spacer note in other staves need the same duration
7545         and document the stroke-style property.
7546
7547 2005-10-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7548
7549         * Documentation/user/global.itely (Vertical spacing): document
7550         alignment-extra-space and fixed-alignment-extra-space.
7551
7552         * Documentation/topdocs/NEWS.tely (Top): add entry.
7553
7554         * input/regression/alignment-vertical-spacing.ly: new file.
7555
7556         * python/convertrules.py (conv): add rule.
7557
7558         * ly/music-functions-init.ly: rename outputProperty to overrideProperty
7559
7560         * lily/align-interface.cc (stretch_after_break): new
7561         function. Read fixed-alignment-extra-space property.
7562         (align_elements_to_extents): read alignment-extra-space property.
7563
7564         * lily/lily-guile.cc (robust_scm2dir): new function.
7565
7566         * scm/page-layout.scm (page-headfoot): annotate headsep and footsep.
7567         (annotate-space-left): new function. Annotate space left on page. 
7568         (annotate-y-interval): new function.
7569         (paper-system-annotate-last): new function. Annotate bottom-space.
7570
7571         * mf/feta-beugel.mf (y): 
7572
7573 2005-10-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7574
7575         * VERSION (PACKAGE_NAME):  release 2.7.11
7576
7577         * scm/lily-library.scm (interval-translate): new function
7578         (interval-center): new function. 
7579
7580         * scm/page-layout.scm (paper-system-annotate): new function. Add
7581         arrows for dimensions.
7582  
7583         * scm/stencil.scm (dimension-arrows): new function.
7584
7585         * Documentation/user/global.itely (Vertical spacing): mention annotatespacing
7586
7587         * input/regression/page-spacing.ly: add annotatespacing
7588
7589         * lily/paper-system-scheme.cc (LY_DEFINE): remove ly:paper-system-{extent,stencil}
7590         (LY_DEFINE): new function ly:paper-system-set-property!
7591
7592         * Documentation/user/global.itely (Paper size): explain how to add
7593         sizes.
7594
7595         * scm/paper.scm (paper-alist): rename tabloid paper to 11x17 to
7596         correspond to GS's definition.
7597
7598         * lily/tuplet-bracket.cc (after_line_breaking): suicide empty
7599         tuplet bracket.
7600         (print): only connect to next bracket if the next one is alive.
7601         (print): set padding to 0.0 if the bound is a breakable
7602         column. This makes tupletFullLength brackets reach up to the staff
7603         line if it doesn't connect to the next line.
7604
7605 2005-09-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7606
7607         * lily/bar-number-engraver.cc: correct docs.
7608
7609         * scm/output-lib.scm (first-bar-number-invisible): rename from
7610         default-bar-number-visibility
7611
7612 2005-09-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7613
7614         * scm/define-music-properties.scm (all-music-properties): remove
7615         predicate property.
7616
7617 2005-09-28  Heikki Junes  <hjunes@cc.hut.fi>
7618
7619         * po/fi.po: refresh.
7620
7621 2005-09-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7622
7623         * input/regression/hara-kiri-pianostaff.ly (disappear): remove
7624         superfluous s1.
7625         (disappear): bugfix.
7626
7627         * lily/stem-tremolo.cc (raw_stencil): read slope property.
7628
7629         * lily/include/paper-system.hh (class Paper_system): remove
7630         staff_extents_ member.
7631
7632         * lily/paper-system-scheme.cc (LY_DEFINE): remove.
7633
7634         * lily/include/paper-system.hh (class Paper_system): remove
7635         number_ variable. Remove is_title_. Remove break_before_penalty_
7636
7637         * lily/paper-book.cc (systems): use 'number property iso. number_
7638         member.
7639
7640         * lily/paper-system-scheme.cc: remove ly:paper-system-break-before-penalty
7641         remove ly:paper-system-number.
7642
7643         * scm/lily-library.scm (paper-system-title?): new function.
7644
7645         * lily/book.cc (process): bugfix: flip ?: cases. 
7646
7647         * Documentation/user/changing-defaults.itely (Difficult tweaks):
7648         add outputProperty.
7649
7650         * ly/music-functions-init.ly: add outputProperty music function.
7651
7652         * scm/paper.scm (set-paper-dimension-variables): add pagetopspace
7653
7654         * scm/page-layout.scm (ly:optimal-page-breaks): read next-space
7655         and next-padding.
7656         (optimal-page-breaks): rename from ly:optimal-page-breaks.
7657
7658         * lily/paper-system-scheme.cc (LY_DEFINE): new function.
7659
7660         * lily/paper-system.cc (internal_get_property): new function.
7661
7662         * Documentation/user/global.itely (Vertical spacing): refer to
7663         page-spacing.ly
7664
7665         * scm/page-layout.scm (ly:optimal-page-breaks): add support for
7666         pagetopspace
7667
7668         * input/regression/page-spacing.ly: new file.
7669
7670         * input/regression/page-top-space.ly: new file.
7671
7672         * lily/spacing-spanner.cc: cmath -> math.h
7673
7674         * lily/paper-system.cc (read_left_bound): new function. Read
7675         line-break-system-details from left bound to determine extents.
7676  
7677         * Documentation/user/programming-interface.itely (Using LilyPond
7678         syntax inside Scheme): change applyxxx -> applyXxx.
7679
7680         * ly/music-functions-init.ly: add outputProperty music function.
7681
7682         * lily/parser.yy (Generic_prefix_music_scm): add scm-scm-scm signature.
7683
7684         * lily/grob-scheme.cc (LY_DEFINE): add ! to ly:grob-suicide! name.
7685
7686         * python/convertrules.py (conv): rule
7687
7688         * ly/music-functions-init.ly: applyxxx -> applyXxx
7689
7690         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): alias
7691         TabVoice to Voice.
7692
7693 2005-09-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7694
7695         * flower/include/real.hh: include <math.h> iso. <cmath>
7696
7697         * flower/include/offset.hh: include real.hh
7698
7699 2005-09-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7700
7701         * Documentation/user/changing-defaults.itely (Difficult tweaks):
7702         fix example, now that 'interfaces is no longer directly available.
7703
7704         * lily/book.cc (process): don't crash if paper == NULL.
7705
7706         * po/fr.po: update.
7707
7708 2005-09-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7709
7710         * scm/define-music-types.scm (music-descriptions): set length and
7711         start-callback for QuoteMusic
7712
7713 2005-09-15  Mats Bengtsson  <mabe@s3.kth.se>
7714
7715         * lily/tie.cc (get_configuration): Replace fabs -> abs for integer
7716         arguments. Fixes compilation error with gcc 3.3.
7717
7718 2005-09-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7719
7720         * VERSION: release 2.7.10
7721
7722         * stepmake/stepmake/python-module-rules.make
7723         ($(outdir)/%$(SHARED_MODULE_SUFFIX)): SHARED_FLAGS at the end.  
7724
7725         * lily/*.cc: remove <cmath> everywhere. <cmath> is included from
7726         real.hh
7727
7728 2005-09-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7729
7730         * stepmake/stepmake/c++-vars.make (#EXTRA_CXXFLAGS): don't add
7731         -Werror. Otherwise GCC barfs over various optimizations.
7732
7733         * scm/define-grob-properties.scm (all-internal-grob-properties):
7734         add note-head property
7735
7736         * Documentation/user/instrument-notation.itely (Laissez vibrer
7737         ties): new node.
7738
7739         * input/regression/laissez-vibrer-ties.ly: new file.
7740
7741         * lily/laissez-vibrer-engraver.cc: new file.    
7742
7743         * lily/include/tie-column-format.hh: new file.
7744
7745         * lily/tie-column-format.cc: new file. 
7746
7747         * lily/tie-column.cc (set_manual_tie_configuration): new function.
7748
7749         * lily/laissez-vibrer-tie.cc: new file.
7750
7751         * lily/include/laissez-vibrer-tie.hh: new file.
7752
7753         * ly/engraver-init.ly: add Laissez_vibrer_engraver
7754
7755         * ly/declarations-init.ly (laissezVibrer): add \laissezVibrer
7756
7757         * scm/define-grobs.scm (all-grob-descriptions): add
7758         LaissezVibrerTie, LaissezVibrerTieColumn
7759
7760         * lily/tie-column.cc (set_tie_config_directions): new function
7761         (final_shape_adjustment): new function.
7762         (shift_small_ties): new function.
7763
7764         * scm/define-music-types.scm (music-descriptions): add LaissezVibrerEvent
7765
7766         * lily/include/tie.hh (struct Tie_details): add x_gap_
7767         (struct Tie_configuration): add head_position_
7768
7769         * lily/tie-column.cc (set_chord_outline): new function.
7770
7771         * mf/cmr.enc.in:  remove file.
7772
7773 2005-09-11  Graham Percival  <gpermus@gmail.com>
7774
7775         * Documentation/user/examples.itely: typo fix.  Thanks, Matevž
7776
7777 2005-09-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7778
7779         * mf/feta-banier.mf: make vertical stem 1/2 stemthickness wide to
7780         reduce aliasing effects.
7781
7782         * lily/tie-column.cc (set_chord_outlines): bugfix: insert complete
7783         box in skyline.
7784
7785 2005-09-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7786
7787         * lily/tie.cc (get_configuration): don't crash if left_dot is NULL.
7788
7789         * flower/include/real.hh: std::fabs too.
7790
7791 2005-09-08  Jan Nieuwenhuizen  <janneke@gnu.org>
7792
7793         * Documentation/user/lilypond.tely: Spell Baßtuba in UTF-8 (Werner). 
7794
7795         * lily, flower: Include C++ iso C headers.  Import namespace std
7796         throughout.
7797
7798         * lily/side-position-interface.cc: 
7799         * lily/scm-hash.cc: 
7800         * lily/note-head.cc: 
7801         * lily/include/includable-lexer.hh: 
7802         * flower/include/string-data.icc: Remove using std::*.
7803
7804         * lily, flower: Include C++ iso C headers.  Import namespace std
7805         throughout.
7806
7807         * lily/side-position-interface.cc: 
7808         * lily/scm-hash.cc: 
7809         * lily/note-head.cc: 
7810         * lily/include/includable-lexer.hh: 
7811         * flower/include/string-data.icc: Remove using std::*.
7812
7813         * Documentation/user/instrument-notation.itely (Entering lyrics):
7814         Multiple latin-1->utf-8 conversion fix.
7815
7816         * Documentation/user/*tely: Update Emacs cookie to utf-8.
7817
7818 2005-09-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7819
7820         * lily/tie.cc (get_configuration): also avoid dots for non-space
7821         situations.
7822
7823 2005-09-07  Jan Nieuwenhuizen  <janneke@gnu.org>
7824
7825         * Documentation/user/instrument-notation.itely: Bugfix.
7826
7827 2005-09-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7828
7829         * tex/GNUmakefile: don't install texinfo.tex
7830
7831         * tex/ : cleanup: remove unused files.
7832
7833         * lily/general-scheme.cc: remove my_{isinf,isnan}.
7834
7835         * flower/include/real.hh: using std::{isnan,isinf}
7836         
7837         * VERSION (PATCH_LEVEL): release 2.7.9
7838
7839 2005-09-05  Graham Percival  <gpermus@gmail.com>
7840
7841         * Documentation/user/ instrument-notation.itely,
7842         advanced-notation.itely: minor tweaks.
7843
7844         * input/test/script-chart.ly: add item padding.
7845
7846 2005-09-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7847
7848         * flower/offset.cc: use math.h iso. <cmath>
7849
7850         * scm/ps-to-png.scm (make-ps-images): use png16m again, for sake
7851         of IE users.
7852
7853         * scm/framework-eps.scm (dump-stencils-as-EPSes): cleanup.
7854         (widen-left-stencil-edges): new function. Fix alignment problems
7855         with LaTeX includegraphics.
7856
7857         * lily/text-interface.cc (interpret_markup): use abort().
7858
7859 2005-09-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7860
7861         * input/regression/tie-chord.ly (testLong): add a chord in 4ths
7862
7863         * lily/tie.cc (get_configuration): update bezier shape as we
7864         change Y positions.
7865         (get_configuration): don't move large ties if we're outside of the
7866         staff.
7867
7868 2005-09-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7869
7870         * scm/define-markup-commands.scm (strut): swap X and Y dims.
7871         
7872 2005-09-03  Jan Nieuwenhuizen  <janneke@gnu.org>
7873
7874         * .cvsignore: Add auto-generated configure files and then some.
7875
7876 2005-09-02  Jan Nieuwenhuizen  <janneke@gnu.org>
7877
7878         * scm/define-grobs.scm (DynamicLineSpanner): Add
7879         X-extent-callback.  Fixes hairpin-slur collision.
7880
7881 2005-08-31  Graham Percival  <gpermus@gmail.com>
7882
7883         * Documentation/user/advanced-notation.itely,
7884         basic-notation.itely: minor changes.
7885
7886 2005-08-31  Mats Bengtsson  <mabe@s3.kth.se>
7887
7888         * scm/framework-eps.scm (dump-stencils-as-EPSes): Insert a
7889         \linebreak between each .eps file if \betweenLilyPondSystem is
7890         undefined. 
7891
7892         * Documentation/user/lilypond-book.itely (Integrating LaTeX and
7893         music): Document the \linebreak
7894
7895         * Documentation/user/lilypond-book.itely,
7896         input/tutorial/lbook-latex-test.tex,
7897         Documentation/user/examples.itely: Remove \usepackage{graphics}
7898
7899 2005-08-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7900
7901         * mf/aybabtu.pe.in (i): don't merge alphabet into aybabtu.
7902
7903         * lily/ly-module.cc (make_stand_in_procs_weak): 1.6.4 and earlier
7904         compat bugfix.
7905
7906         * scripts/lilypond-book.py (PREAMBLE_LY): define
7907         inside-lilypond-book
7908         (modify_preamble): new function. Insert \RequirePackage{graphics}
7909         when no {graphics found in preamble.  
7910
7911 2005-08030  Graham Percival  <gpermus@gmail.com>
7912
7913         * Documentation/user/basic-notation.itely, global.itely,
7914         tutorial.itely: misc small changes.
7915
7916 2005-08-30  Jan Nieuwenhuizen  <janneke@gnu.org>
7917
7918         * stepmake/aclocal.m4: Include MY_PATCH_LEVEL in config.make's
7919         VERSION.
7920
7921 2005-08-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7922
7923         * lily/tie-column.cc (new_directions): put Tie down on center
7924         staff line. 
7925
7926         * lily/script-interface.cc (before_line_breaking): use
7927         Grob::programming_error
7928
7929         * scm/ps-to-png.scm (make-ps-images): use pngalpha device.
7930
7931         * scripts/lilypond-book.py (get_latex_textwidth): oops. Take [0]
7932         of splitext.
7933
7934 2005-08-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7935
7936         * VERSION (PACKAGE_NAME): VERSION release 2.7.8
7937
7938 2005-08-29  Werner Lemberg  <wl@gnu.org>
7939
7940         * mf/GNUmakefile: Add `-f' flag to `rm' command while removing
7941         the `*.scale.pfa' files to avoid warnings.
7942
7943 2005-08-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7944
7945         * lily/tempo-performer.cc (process_music): idem.
7946
7947         * lily/midi-def.cc (get_tempo): Rational to int conversion bug.
7948
7949 2005-08-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7950
7951         * Documentation/user/advanced-notation.itely (Text markup): not a
7952         fragment.
7953
7954         * lily/midi-item.cc (to_string): use to_int() iso. int cast.
7955
7956         * lily/staff-performer.cc (initialize): add tempo/name to
7957         audio_staff_
7958
7959
7960 2005-08-26  Graham Percival  <gpermus@gmail.com>
7961
7962         * Documentation/user/advanced.itely: add text-only example.
7963
7964         * Documentation/user/invoking.itely: add index entries for
7965         convert-ly.
7966
7967         * Documentation/user/ tutorial.itely, basic-notation.itely:
7968         small fixes suggested by Steve D.  Thanks!
7969
7970 2005-08-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7971
7972         * input/regression/markup-bidi-pango.ly: new file.
7973
7974         * lily/pango-font.cc (pango_item_string_stencil): make Mingw code
7975         standard. Remove #ifdef. Remove memleak.
7976         (text_stencil): use text_dir to decide how to composite items.
7977         (text_stencil): determine uniform text direction for the entire
7978         string.
7979
7980         * scripts/lilypond-book.py (output_name): remove
7981         latex_filter_cmd. Non-portable to non-Unix systems. 
7982         (get_latex_textwidth): use File.write and os.unlink() instead.
7983
7984         * THANKS: add Vicente & Trevor.
7985
7986         * lily/grob.cc (discretionary_processing): look up origin for
7987         programming_error too. 
7988
7989         * input/regression/tie-broken.ly: new file.
7990
7991         * lily/tie-column.cc (set_chord_outlines): set outline for line
7992         break case too.
7993         
7994 2005-08-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7995
7996         * lily/pango-font.cc (text_stencil): don't translate glyphs in
7997         unscaled transform, just translate stencils.
7998
7999         * ly/performer-init.ly: init timing to #t.  Fixes bar checks in
8000         MIDI.
8001
8002         * scm/define-markup-commands.scm (wordwrap-string): use
8003         text-direction
8004         (wordwrap-stencils): idem.
8005         (line): idem.
8006         (fill-line): idem.
8007         (wordwrap-stencils): translate last line to right for
8008         text-direction = LEFT.
8009
8010         * scm/define-grob-properties.scm (all-user-grob-properties): add
8011         text-direction.
8012
8013 2005-08-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8014
8015         * lily/lily-parser.cc (Lily_parser): also copy output_basename_
8016         when copying a Lily_parser object.
8017
8018 2005-08-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8019
8020         * scm/define-markup-commands.scm (null): add null markup.
8021
8022 2005-08-25  Mats Bengtsson  <mabe@s3.kth.se>
8023
8024         * lily/item.cc: Add documentation of center-invisible
8025
8026 2005-08-24  Graham Percival  <gpermus@gmail.com>
8027
8028         * Documentation/user/advanced-notation.itely: add info about
8029         raising text.
8030
8031         * Documentation/user/programming-interface.itely: fix example
8032         involving raised text.
8033
8034 2005-08-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8035
8036         * lily/beam.cc (print): fix X start/end points of isolated
8037         beamlets.
8038
8039         * scm/output-ps.scm (grob-cause): escape spaces in URLs.
8040
8041         * lily/multi-measure-rest.cc (set_text_rods): new function.
8042
8043         * lily/vertical-align-engraver.cc (process_music): call
8044         Align_interface::set_axis(). This forces #'elements to be ordered,
8045         preventing random vertical reordering of staves.
8046
8047         * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
8048         add avoid-slur property. 
8049
8050         * Documentation/user/basic-notation.itely (Measure repeats): add
8051         countPercentRepeats example.
8052
8053         * Documentation/user/advanced-notation.itely (Other text markup
8054         issues): remove remark about normal-font.  We have \normal-text
8055
8056         * input/regression/tie-chord.ly: add note about remaining bugs.
8057
8058         * lily/tie.cc (print): try Tie_column::set_directions () if
8059         control-points not yet defined.
8060
8061 2005-08-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8062
8063         * lily/system-start-delimiter.cc (staff_brace): don't remove brace
8064         extent. This fixes braces falling out of the EPS bbox.
8065
8066         * mf/feta-beugel.mf (braces_per_font): make brace glyph align
8067         exactly to bbox.
8068
8069 2005-08-23  Graham Percival  <gpermus@gmail.com>
8070
8071         * {various} : change #up->#UP and #down->#DOWN.
8072
8073         * ly/titling-init.ly: Spacing fix when using printallheaders=##t.
8074
8075         * Documentation/user/advanced-notation.itely: clarify
8076         what objects handles text on a multimeasure rest.
8077
8078 2005-08-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8079
8080         * VERSION (PATCH_LEVEL): release 2.7.7
8081
8082 2005-08-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8083
8084         * make/lilypond-vars.make: set -dgs-font-load for "make web" 
8085
8086         * Documentation/topdocs/INSTALL.texi (Top): add GS bugfix requirement.
8087
8088         * input/regression/*.ly: formatting clean-up. Default layout
8089         before music expression.
8090
8091         * input/mutopia/R.Schumann/GNUmakefile (examples): switch off
8092         romanze28-2 example.
8093
8094         * scm/ps-to-png.scm: remove dir-re function.
8095         (make-ps-images): generate page names, instead of globbing them.
8096         This brings down LilyPond memory usage for make web by a factor
8097         10. 
8098
8099         * scripts/lilypond-book.py (Lilypond_snippet.png_is_outdated):
8100         don't use glob. With 3000 files, globbing
8101         Documentation/user/out-www/ can take too much time. 
8102         
8103         * lily/lily-guile.cc (gulp_file_to_string): take size argument.
8104
8105         * lily/general-scheme.cc (LY_DEFINE): take optional size argument.
8106
8107         * input/regression/tie-manual.ly: new file
8108
8109         * input/regression/tie-chord.ly: update.
8110
8111         * flower/include/interval.hh (struct Interval_t): 
8112
8113         * lily/tie.cc (distance): new function 
8114         (height): new function.
8115         (init): new function
8116         (Tie_details): new struct.
8117
8118         * lily/skyline.cc (skyline_height): new function.
8119
8120         * lily/tie-column.cc (set_chord_outlines): new function.
8121         (new_directions): read tie-configuration
8122
8123         * lily/skyline.cc: fix ASCII art.
8124         
8125 2005-08-22  Mats Bengtsson  <mabe@s3.kth.se>
8126
8127         * python/convertrules.py (string_or_scheme): Fix spelling error
8128
8129 2005-08-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8130         
8131         * lily/tie-column.cc (set_directions): set directions only once.
8132         (add_configuration): new function.
8133
8134         * lily/tie.cc (set_control_points): new function
8135
8136         * lily/tie-column.cc (new_directions): new function.
8137
8138         * ly/music-functions-init.ly: set 'pitch property
8139         iso. trill-pitch. This makes \relative work with \pitchedTrill
8140
8141         * lily/tie.cc (get_configuration): new function. Don't generate
8142         control points, rather, generate configuration.
8143         remove head-pair property.
8144
8145         * lily/include/tie.hh (struct Tie_configuration): new struct.
8146
8147 2005-08-22  Heikki Junes  <hjunes@cc.hut.fi>
8148
8149         * Documentation/topdocs/NEWS.tely: clarify.
8150
8151 2005-08-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8152
8153         * lily/tie.cc: remove minimum-length
8154
8155         * scm/define-grob-properties.scm (all-user-grob-properties):
8156         remove staffline-clearance, y-offset 
8157
8158         * input/regression/tie-dots.ly (Module): remove.
8159
8160         * lily/tie.cc (get_control_points): rewrite. Put short ties in
8161         staff-spaces, make long ties cross staff lines. Avoid flags and dots.
8162
8163         * input/regression/tie-single.ly: new file.
8164
8165 2005-08-21  Graham Percival  <gpermus@gmail.com>
8166
8167         * ly/bagpipe.ly: fix compile problem.
8168
8169 2005-08-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8170
8171         * lily/midi-item.cc (name): new method.
8172
8173         * lily/staff-performer.cc (acknowledge_audio_element): use
8174         signature of baseclass.
8175
8176         * lily/engraver-group.cc (do_announces): move recursion call out
8177         of while loop. 
8178
8179         * lily/drum-note-performer.cc (class Drum_note_performer): use
8180         process_music everywhere.
8181
8182         * ly/performer-init.ly: add default children everywhere.
8183
8184         * lily/paper-book.cc (output): call paper-book-write-midis
8185         directly: always write MIDI, even if no \layout {} block. 
8186
8187 2005-08-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8188
8189         * VERSION (PACKAGE_NAME): release 2.7.6
8190
8191         * lily/percent-repeat-engraver.cc (try_music): don't print warning
8192         about not being able to handle repeat.
8193
8194 2005-08-19  Jan Nieuwenhuizen  <janneke@gnu.org>
8195
8196         * Documentation/user/examples.itely (Piano templates):
8197         * lily/include/performer-group.hh: Remove last traces of
8198         Performer_group_performer.  Fixes make web.
8199
8200 2005-08-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8201
8202         * Documentation/user/examples.itely (Piano templates): change
8203         Engraver_group_engraver -> Engraver_group
8204
8205         * lily/ly-module.cc (make_stand_in_procs_weak): only kludge if
8206         scm_stand_in_procs is not weak_any.
8207
8208         * lily/volta-bracket.cc (print): don't use strcmp().
8209
8210         * lily/volta-engraver.cc (process_music): use
8211         Text_interface::is_markup() for setting the 'text property of the
8212         volta bracket.
8213
8214         * input/mutopia/claop.py (accents): update syntax to 2.6
8215
8216         * scm/define-context-properties.scm
8217         (all-user-translation-properties): add countPercentRepeats.
8218
8219         * Documentation/user/basic-notation.itely (Measure repeats): add
8220         isolated percent example.
8221
8222 2005-08-18  Graham Percival  <gpermus@gmail.com>
8223
8224         * input/ {various}: change direction #1, #-1 to
8225         #up/#down or \fooUp, \fooDown.
8226
8227         * Documentation/user/music-glossary.tely: #-1 to #down.
8228
8229         * ly/bagpipe.ly, engraver-init.ly, property-init.ly: #1
8230         to #up, #-1 to #down.
8231
8232 2005-08-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8233
8234         * lily/include/engraver-group.hh: rename.
8235
8236         * lily/include/performer-group.hh: rename.
8237
8238 2005-08-18  Mats Bengtsson  <mabe@s3.kth.se>
8239
8240         * input/test/script-abbreviations.ly: Removed some old LaTeX
8241         left overs.
8242
8243 2005-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
8244
8245         * python/convertrules.py (conv): inside-slur -> avoid-slur.
8246         Remove functions.  Remove if 1: constructs, reindent.
8247
8248         * scripts/convert-ly.py (add_version): Add functions from
8249         convertrules.py
8250
8251         * scm/script.scm (default-script-alist):
8252         s/priority/script-priority.  Fixes script stacking.  Backportme.
8253         (Fermata): Very low priority.
8254
8255 2005-08-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8256
8257         * input/regression/*.ly: remove superfluous \score blocks. Reindent.
8258
8259         * input/regression/slur-script.ly: remove padding tweaks. Add
8260         comment strings.
8261
8262         * lily/note-spacing.cc (get_spacing): remove kludge for EOL wide
8263         time sigs and related stuff.
8264
8265         * scm/define-grob-properties.scm (all-user-grob-properties): add
8266         @code{} tags to property description.
8267
8268         * lily/include/line-group-group-engraver.hh (Module): remove file.
8269
8270         * python/convertrules.py (conv): add rule for
8271         Engraver_group_engraver -> Engraver_group.
8272
8273         * lily/include/performer-group-performer.hh: analogous.
8274
8275         * lily/include/engraver-group-engraver.hh: rename to Engraver_group.
8276
8277         * lily/context-def.cc (instantiate): check for
8278         Engraver_group_engraver and Performer_group_performer not
8279         Engraver/Performer. Fixes crashes when doing \with { \consists .. }
8280  
8281 2005-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
8282
8283         * input/les-nereides.ly: Remove three fingering tweaks, update
8284         remaining one.
8285
8286         * input/regression/slur-script-inside.ly: Update, fix doc.
8287
8288         * scm/script.scm: Update to avoid-slur.
8289
8290         * scm/define-grob-properties.scm (avoid-slur): New property.
8291
8292         * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
8293         * lily/slur-engraver.cc (acknowledge_extra_object): Invoke
8294         outside_slur_callback if avoid-slur != #'inside.
8295
8296         * scm/define-grobs.scm (Fingering, Textscript): No
8297         inside-slur/outside-slur preference.
8298         (DynamicLineSpanner): Always outside slur.
8299
8300         * input/regression/slur-script.ly: More tests.
8301
8302 2005-08-17  Graham Percival  <gpermus@gmail.com>
8303
8304         * Documentation/user/lilypond-book: fix notime entry.
8305
8306         * Documentation/user/advanced-notation.itely: add info on
8307         getting an I rehearsal mark.
8308
8309         * Documentation/user/putting.itely: reinstate "I", re-enforce
8310         the fact that \override numbers are the result of
8311         experimentation and personal taste.
8312
8313         * Documentation/user/invoking.itely: update convert-ly bugs.
8314
8315 2005-08-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8316
8317         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set timing
8318         to #t.
8319
8320         * lily/timing-translator.cc (initialize): don't initialize timing.
8321
8322         * input/regression/stem-spacing.ly (Module): remove file.
8323
8324         * input/regression/spacing-stick-out.ly: specify Score context for
8325         \override
8326
8327         * input/regression/clefs.ly: remove spurious {}s 
8328
8329 2005-08-17  Heikki Junes  <hjunes@cc.hut.fi>
8330
8331         * Documentation/topdocs/NEWS.tely,
8332         input/regression/repeat-percent-count.ly: clarify a bit.
8333
8334 2005-08-16  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8335
8336         * input/no-notation/display-lily-tests.ly: delete
8337         display-lily-init call.
8338
8339         * ly/music-functions-init.ly (displayLilyMusic): move
8340         display-lily-init call at top level, so that the user should not
8341         have to call it.
8342
8343         * scm/define-music-display-methods.scm (note-name->lily-string):
8344         retrieve note names directly from pitchnames using new function `rassoc'.
8345         (display-lily-init): note names list construction removed.
8346
8347 2005-08-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8348
8349         * THANKS: spello.
8350
8351         * lily/lily-parser.cc (get_header): copy module, instead of
8352         returning it.
8353
8354         * Documentation/topdocs/NEWS.tely (Top): add entry for percent
8355         counters.
8356
8357         * Documentation/user/basic-notation.itely (Measure repeats): add
8358         links to Counter grobs.
8359
8360         * scm/define-grobs.scm (all-grob-descriptions): add
8361         DoublePercentRepeatCounter
8362         (all-grob-descriptions): add PercentRepeatCounter
8363
8364         * lily/percent-repeat-engraver.cc (class Percent_repeat_engraver):
8365         also create counter grobs.
8366
8367         * lily/separation-item.cc (extremal_break_aligned_grob): don't
8368         return grob without space-alist.
8369
8370         * input/proportional.ly: tune staff-padding.
8371
8372         * input/regression/repeat-percent-count.ly: new file. 
8373
8374 2005-08-16  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8375
8376         * input/no-notation/display-lily-tests.ly: moved from
8377         input/regression/ to input/no-notation. Be sure to call
8378         `display-lily-init' before trying to use the display function.
8379
8380 2005-08-16  Mats Bengtsson  <mabe@s3.kth.se>
8381
8382         * scripts/lilypond-book.py (option_definitions): Don't localize
8383         the empty string. Fixes bug when --psfonts was used with
8384         non-English locale.
8385
8386 2005-08-15  Graham Percival  <gpermus@gmail.com>
8387
8388         * lily/tuplet-bracket.cc: simple build fix.
8389
8390         * Documentation/user/putting.itely: use "we" instead of "I".
8391
8392         * Documentation/user/basic-notation.itely: cautionary accidentals
8393         work with naturals, too.
8394
8395 2005-08-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8396
8397         * lily/tuplet-bracket.cc (calc_position_and_height): add
8398         staff-padding support.
8399
8400         * input/proportional.ly: set staff-padding.
8401         
8402         * VERSION (PATCH_LEVEL): release 2.7.5
8403
8404         * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): text formatting
8405         fixes. Remove tweaks.
8406
8407         * input/regression/tuplet-slope.ly: add a test case.
8408
8409         * lily/tuplet-bracket.cc (calc_position_and_height): revert
8410         erroneous fix. Add spanner bounds to offset array with relative X
8411         positions.
8412
8413         * ly/engraver-init.ly: add Rest_engraver only once.
8414
8415         * scm/define-music-display-methods.scm (KeyChangeEvent): only do
8416         (*parser*) lookup if (*parser*) != #f.
8417
8418 2005-08-15  Jan Nieuwenhuizen  <janneke@gnu.org>
8419
8420         * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
8421         Cut-and paste update.
8422
8423         * input/regression/slur-script.ly: Add example of reverting
8424         inside-slur for fingering.
8425
8426         * scm/define-grobs.scm (DynamicLineSpanner, Fingering,
8427         TextScript): Explicitly set inside-slur #f, forcing these out of slur.
8428
8429         * lily/slur-engraver.cc (acknowledge_extra_object): Only invoke
8430         outside_slur_callback if inside-slur == #f (as opposed to unset).
8431
8432 2005-08-14  Jan Nieuwenhuizen  <janneke@gnu.org>
8433
8434         * tex/GNUmakefile (INSTALLATION_FILES): Remove enc symlink setup,
8435         encoding files are already removed.
8436
8437 2005-08-15  Mats Bengtsson  <mabe@s3.kth.se>
8438
8439         * Documentation/user/advanced-notation.itely (Instrument names):
8440         Document a workaround for instrument names that collide with
8441         system start braces/brackets.
8442
8443 2005-08-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8444
8445         * lily/rest-collision.cc (do_shift): spello.
8446
8447         * input/proportional.ly: use #'used property. Set break-overshoot
8448         property.
8449
8450         * mf/feta-arrow.mf: center on arrow tip center, iso. tip edge.
8451
8452         * lily/paper-column.cc: add #'used property
8453
8454         * lily/mark-engraver.cc (stop_translation_timestep): set grob
8455         array for staves found.
8456
8457         * lily/metronome-engraver.cc (stop_translation_timestep): set grob
8458         array for stavesFound.
8459
8460         * lily/staff-spacing.cc (next_note_correction): add fixed and
8461         space to calling convention. This fixes spacing of accidentals
8462         after barlines.
8463
8464         * input/regression/spacing-accidental-stretch.ly: add barline -
8465         accidental case.
8466
8467         * scm/framework-ps.scm (page-header): add version number to
8468         creator
8469         (eps-header): idem.
8470
8471         * mf/feta-bolletjes.mf: swap d0 and u0 fa heads.
8472         
8473 2005-08-13  Graham Percival  <gpermus@gmail.com>
8474
8475         * Documentation/user/global.itely: add "fit as much as
8476         possible onto this page" example (Vertical spacing).
8477
8478 2005-08-13  Jan Nieuwenhuizen  <janneke@gnu.org>
8479
8480         * *: Nitpick run.
8481
8482         * buildscripts/fixcc.py: Fixes.
8483
8484 2005-08-12  Graham Percival  <gpermus@gmail.com>
8485
8486         * Documentation/user/advanced-notation.itely: add markup
8487         example to Text spanners.
8488
8489 2005-08-12  Mats Bengtsson  <mabe@s3.kth.se>
8490
8491         * Documentation/user/basic-notation.itely (Ties): Add example of
8492         tying a tremolo to a chord. Thanks to Steve Doonan. 
8493
8494         * lily/tie-engraver.cc: Add tieWaitForNote to the list of read
8495         properties and move tieMelismaBusy to the list of written
8496         properties. 
8497
8498 2005-08-12  Heikki Junes  <hjunes@cc.hut.fi>
8499
8500         * po/TODO: suggest to use a dedicated tool like kbabel.
8501
8502         * po/fi.po: update using kbabel.
8503
8504 2005-08-12  Jan Nieuwenhuizen  <janneke@gnu.org>
8505
8506         * *: Remove obsolete files.  Nitpick run.
8507
8508         * lily/lily-guile.cc (parse_symbol_list): Bugfix.
8509
8510 2005-08-11  Jan Nieuwenhuizen  <janneke@gnu.org>
8511
8512         * mf/GNUmakefile (get-*-fonts): Rename from get-*-pfa.  Copy SVG
8513         too.
8514
8515         * Documentation/topdocs/NEWS.tely (Top): Add slur script feature.
8516
8517         * lily/lily-guile.cc (parse_symbol_list): Rewrite.  Grok multiple
8518         whitespace as symbol separator.
8519
8520         * lily/side-position-interface.cc: Add slur-padding.
8521
8522         * input/regression/slur-script.ly: Fixed.  Backportme?  This is
8523         quite a large fix, and it never worked in a stable release; so not
8524         really a regression.
8525
8526         * lily/phrasing-slur-engraver.cc (class Phrasing_slur_engraver):
8527         Update cut and paste code from Slur_engraver.
8528
8529         * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
8530         Add.
8531
8532         * scm/define-grobs.scm (DynamicLineSpanner): Add
8533         dynamic-line-spanner-interface.
8534         (DynamicLineSpanner, TextScript, Fingering): Add slur-padding.
8535
8536 2005-08-09  Jan Nieuwenhuizen  <janneke@gnu.org>
8537
8538         * lily/slur-engraver.cc (acknowledge_extra_object): Bugfix: use
8539         to_boolean () so that non-set 'inside-slur means false.
8540
8541         * lily/slur.cc (outside_slur_callback): Bugfixes: make sure that
8542         slur has control-points.  Skip script without direction.  Always
8543         do_shift if script inside slur, even if slur not contained in
8544         script y-extent.  Increment k in loop.
8545
8546 2005-08-11  Mats Bengtsson  <mabe@s3.kth.se>
8547
8548         * scm/define-markup-commands.scm: Improved regexp to search for
8549         EPS bounding boxes and corrected call to ly:warning.
8550
8551 2005-08-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8552
8553         * Documentation/user/programming-interface.itely (Displaying music
8554         expressions): doc for \displayLilyMusic. Also some precisions in
8555         "Markup construction in Scheme"
8556
8557 2005-08-10  Mats Bengtsson  <mabe@s3.kth.se>
8558
8559         * scm/define-markup-commands.scm (normal-text): Added 2 new
8560         markup commands, \normal-text and \medium (the latter thanks to
8561         Bruce Fairchild). 
8562
8563 2005-08-08  Graham Percival  <gpermus@gmail.com>
8564
8565         * Documentation/user/programming-interface.itely: fix @{ @}.
8566
8567         * scm/define-markup-commands.scm: add linewidth info to
8568         \justify and \wordwrap, add "upright is the opposite of italic".
8569
8570         * Documentation/user/advanced-notation.itely: shaped->shape,
8571         add (cons (markup "foo")) type of example to text markup,
8572         reword multi-measure rests section.
8573
8574         * lily/note-heads-engraver.cc: changed Shaped->Shape in a
8575         comment.  No actual code was touched.
8576
8577         * Documentation/user/invoking.itely: add more info about
8578         \include.  Thanks, Bruce!
8579
8580         * THANKS: add Bruce Fairchild, alphabetise.
8581
8582         * Documentation/user/global.itely: document \score{\header{}}
8583         behavior.
8584
8585         * Documentation/user/basic-notation.itely: reword multi-measure
8586         rest discussion in Rests.
8587
8588 2005-08-08  Mats Bengtsson  <mabe@s3.kth.se>
8589
8590         * Documentation/user/programming-interface.itely (Markup
8591         construction in Scheme): Corrected example and tried to clarify
8592         the implicit \line in the table.
8593
8594 2005-08-07  Graham Percival  <gpermus@gmail.com>
8595
8596         * Documentation/user/instrument-notation.itely: moved
8597         some bagpipe info back into the bagpipe section.  Somehow
8598         it ended up in the "other vocal issues" section?!  :o_O
8599
8600 2005-08-07  Jan Nieuwenhuizen  <janneke@gnu.org>
8601
8602         * scm/framework-ps.scm (dir-join): Rename from path-join (joins
8603         directories, not paths).
8604
8605 2005-08-06  Jan Nieuwenhuizen  <janneke@gnu.org>
8606
8607         * scm/framework-ps.scm (munge-lily-font-name): Bugfix: Munge only
8608         plain emmentaler/aybabtu.  Backportme.
8609
8610         * lily/tuplet-bracket.cc (calc_position_and_height): Bugfix:
8611         missing dir correction.
8612
8613 2005-08-05  Graham Percival  <gperlist@shaw.ca>
8614
8615         * scm/define-markup-commands: fix reversed justify/wordwrap
8616         doc strings.
8617
8618 2005-08-05  Jürgen Reuter  <reuter@ipd.uka.de>
8619
8620         * lily/ligature-engaver.cc, lily/coherent-ligature-engaver.cc,
8621         lily/gregorian-ligature-engaver.cc,
8622         lily/include/ligature-engraver.hh,
8623         lily/include/coherent-ligature-engraver.hh,
8624         lily/include/gregorian-ligature-engraver.hh: make these classes
8625         truely abstract.  This should fix some internal oddities such as
8626         duplicate as well as dead translator/property declarations, and
8627         also some dead code.
8628
8629         * lily/ligature-bracket-engraver.cc, lily/ligature-engraver.cc:
8630         bugfix: avoid message "junking empty ligature" on ligature
8631         brackets by collecting dummy grobs.
8632
8633 2005-08-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8634
8635         * lily/tuplet-bracket.cc (print): default right overshoot to 0.0
8636
8637         * input/proportional.ly (staffKind): bugfix.
8638         (staffKind): updates by Trevor Baca.
8639
8640         * scm/define-grobs.scm (all-grob-descriptions): remove arrows as
8641         default layout. 
8642
8643         * lily/tuplet-bracket.cc (print): check whether edge-text is a
8644         pair.
8645
8646         * lily/beam.cc (rest_collision_callback): call position_beam() if
8647         necessary.
8648
8649         * VERSION: release 2.7.4
8650
8651         * input/regression/spacing-uniform-stretching.ly: new file.
8652
8653         * lily/spacing-loose-columns.cc (set_loose_columns): use robust_relative_extent().
8654
8655         * Documentation/topdocs/NEWS.tely (Top): add Nicolas as
8656         contributor.
8657
8658         * lily/include/ly-module.hh: define MODULE_GC_KLUDGE globally.
8659
8660         * input/proportional.ly: new file.
8661
8662         * lily/tuplet-bracket.cc (after_line_breaking): don't suicide if
8663         columns is empty
8664
8665         * lily/tuplet-engraver.cc (finalize): new function. Reset right
8666         bounds to currentCommandColumn for the last step.
8667         (start_translation_timestep): if tupletFullLength is set, set
8668         bound to Paper Column
8669
8670         * input/regression/tuplet-full-length.ly (indent): new file.
8671
8672         * lily/spacing-loose-columns.cc (set_loose_columns): space a whole
8673         clique of loose columns, eg. a set of grace notes in strict
8674         notespacing.
8675
8676         * input/regression/spacing-strict-spacing-grace.ly: new file.
8677
8678         * lily/key-signature-interface.cc: change property name to
8679         alteration-alist
8680
8681         * lily/key-engraver.cc (read_event): read keyAlterationOrder, not
8682         keyAccidentalOrder
8683
8684         * python/convertrules.py (conv): keyAccidentalOrder ->
8685         keyAlterationOrder
8686
8687         * lily/key-engraver.cc (create_key): always print a cancellation
8688         for going to C-major/A-minor, regardless of printKeyCancellation.
8689         (create_key): remove typecheck for visibility. This fixes key
8690         signature not being printed.
8691
8692         * lily/spacing-determine-loose-columns.cc: new file.
8693
8694         * input/regression/spacing-strict-notespacing.ly: new file.
8695
8696         * lily/spacing-spanner.cc (generate_springs): rename from
8697         do_measure. 
8698         (generate_pair_spacing): new function.
8699         (init, generate_pair_spacing): set between-cols for floating
8700         nonmusical columns.
8701
8702         * lily/spaceable-grob.cc (get_spring): new function. 
8703
8704         * lily/tuplet-bracket.cc (print): on the left, the overshoot is
8705         relative to the right edge of the prefatory matter.
8706
8707         * lily/beam.cc (print): read break-overshoot to determine where to
8708         stop/start broken beams.
8709
8710         * input/regression/spanner-break-overshoot.ly: new file.
8711
8712 2005-08-04  Graham Percival  <gperlist@shaw.ca>
8713
8714         * ly/bagpipe.ly: updated.
8715
8716         * Documentat/user/instrument.itely: un-comment out bagpipe example.
8717
8718 2005-08-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8719
8720         * lily/dynamic-engraver.cc (acknowledge_slur): add slur to
8721         support: now (de)crescs avoid slurs as well.
8722
8723         * Documentation/user/instrument-notation.itely (Bagpipe example):
8724         comment out non-functioning bagpipe example.
8725         (Bagpipe definitions): idem.
8726
8727         * Documentation/topdocs/NEWS.tely (Top): add uniform-stretching example.
8728         (Top): add proportionalNotationDuration example.
8729
8730         * input/regression/spacing-proportional.ly: new file.
8731
8732         * lily/tuplet-bracket.cc (parallel_beam): broken bracket never is
8733         synched to a beam.
8734
8735         * lily/beam.cc (shift_region_to_valid): divide by zero fix. This
8736         fixes beams with a single stem (eg. beams across linebreaks.)
8737
8738         * lily/parser.yy (simple_string): allow \new STRING_IDENTIFIER.
8739
8740         * flower/rational.cc (operator +): prevent overflow. This fixes
8741         heavily nested tuplets.
8742
8743         * lily/auto-beam-engraver.cc (derived_mark): new method. Yes. We
8744         have to protect even those unlikely to be corrupted data members.  
8745
8746 2005-08-04  Graham Percival  <gperlist@shaw.ca>
8747
8748         * ly/bagpipe.ly: new file.
8749
8750         * THANKS: added Sven Axelsson.
8751
8752 2005-08-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8753
8754         * lily/spacing-engraver.cc (stop_translation_timestep): directly
8755         copy proportionalNotationDuration into currentMusicalColumn if
8756         set.
8757
8758         * lily/spacing-spanner.cc (musical_column_spacing): if
8759         uniform-stretching set, fixed space is 0.0
8760
8761         * input/regression/spacing-multi-tuplet.ly: show
8762         uniform-stretching property.
8763
8764         * lily/spacing-spanner.cc (effective_shortest_duration): new function.
8765
8766         * lily/include/spacing-spanner.hh (class Spacing_spanner): new file.
8767         (struct Spacing_options): new struct.
8768
8769         * lily/spacing-basic.cc: new file.
8770
8771         * lily/spacing-spanner.cc (note_spacing): remove outdated code:
8772         delta_t doesn't have to be smaller than shortest_playing_len
8773
8774 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8775
8776         * input/regression/markup-arrows.ly:  new file.
8777
8778         * lily/tuplet-bracket.cc: document new behavior.
8779
8780         * input/regression/tuplet-broken.ly: new file. Demonstrate tuplets
8781         with line breaks.
8782
8783         * scm/define-markup-commands.scm (arrow-head): arrow-head markup command.
8784
8785         * scm/define-grobs.scm (all-grob-descriptions): set arrows as
8786         default 
8787
8788         * lily/tuplet-bracket.cc: add edge-text property.
8789         add break-overshoot.
8790         (print): read break-overshoot.
8791         (print): read edge-text, add stencils.
8792
8793         * mf/feta-arrow.mf: new file.
8794
8795         * mf/feta-generic.mf: add feta-arrow.
8796
8797 2005-08-03  Mats Bengtsson  <mabe@s3.kth.se>
8798
8799         * Documentation/user/lilypond-book.itely (An example of a
8800         musicological document): Added flag -o to dvips for people who use
8801         the default setting in teTeX where output is sent to the printer. 
8802
8803         * Documentation/user/global.itely (Vertical spacing): Added
8804         reference to the Axis_group_engraver which documents the *Extent
8805         properties.
8806
8807 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8808
8809         * Documentation/user/basic-notation.itely (Tuplets): add note
8810         about nested tuplets. Remove BUG. 
8811
8812         * input/regression/tuplet-nest.ly: update: remove manual hack. 
8813
8814         * lily/tuplet-bracket.cc (print): use robust_scm2drul
8815         (print): manually call print() for subtuplets.
8816         (calc_position_and_height): add subtuplets to the
8817         support. Vertically shift outer tuplet 
8818
8819         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): set
8820         remove-first for Lyrics, ChordNames and FiguredBass
8821
8822         * scm/define-grob-properties.scm (all-internal-grob-properties):
8823         use ly:grob-array? iso. grob-list?
8824         (all-internal-grob-properties): add tuplets grob-array.
8825
8826         * lily/tuplet-bracket.cc (add_tuplet_bracket):
8827         new function
8828
8829 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8830
8831         * input/test/time-signature-staff.ly: new file.
8832
8833         * ly/declarations-init.ly (center): escape to Scheme. Fixes
8834         spurious #<Music FingerEvent> errors. Backportme.
8835
8836 2005-08-03  Mats Bengtsson  <mabe@s3.kth.se>
8837
8838         * Documentation/user/programming-interface.itely (Markup
8839         construction in Scheme): Corrected markup syntax in the
8840         translation table.
8841
8842 2005-08-03  Graham Percival  <gperlist@shaw.ca>
8843
8844         * Documentation/user/instrument-notation.itely: small update
8845         to bagpipe notation docs; thanks Sven!
8846
8847         * Documentation/user/basic-notation.itely: add link about trills.
8848
8849 2005-08-02  Graham Percival  <gperlist@shaw.ca>
8850
8851         * Documentation/user/music-glossary: remove accidentally committed
8852         fink patch.
8853
8854 2005-08-02  Yoshinobu Ishizaki  <isizaki@mte.biglobe.ne.jp>
8855
8856         * lily/lily-parser.cc (get_header): new function. Enable multiple
8857         \header definitions.
8858
8859         * lily/parser.yy (lilypond_header_body): use get_header.
8860
8861         * ly/init.ly:
8862         * scm/lily-library.scm (print-score-with-defaults): renamed
8863         $globalheader to $defaultheader
8864             
8865         * Documentation/user/global.itely (Creating titles): added short
8866         explanation that multiple headers are useable.
8867
8868
8869 2005-08-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8870
8871         * lily/module-scheme.cc (LY_DEFINE): new file. 
8872
8873         * Documentation/user/advanced-notation.itely (Font selection): add
8874         doco for make-pango-font-tree.
8875
8876 2005-07-31  Graham Percival  <gperlist@shaw.ca>
8877
8878         * Documentation/user/music-glossary: more languages
8879         for tenuto.
8880
8881         * Docuemntation/user/instrument-notation.itely: minor
8882         update for bagpipe example.
8883
8884 2005-07-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8885
8886         * input/regression/+.ly (TODO): add some text.
8887
8888 2005-07-28  Graham Percival  <gperlist@shaw.ca>
8889
8890         * Documentation/user/invoking.itely: \score begins with music.
8891
8892         * Documentation/user/ basic-notation.itely,
8893         instrument-notation.itely: minor changes.
8894
8895         * Documentation/user/music-glossary.itely: began tenuto entry.
8896
8897 2005-07-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8898
8899         * scm/output-socket.scm (bezier-sandwich): add bezier-sandwich
8900
8901         * mf/feta-bolletjes.mf: swap up and down for aiken heads.
8902
8903 2005-07-27  Graham Percival  <gperlist@shaw.ca>
8904
8905         * Documentation/user/examples.itely: remove bagpipe template.
8906
8907         * Documentation/user/instrument-notation.itely: add bagpipe
8908         section, maybe fix quotes in lyrics.  I hate text encoding.
8909         Clarify chord durations, more bagpipe stuff.
8910
8911 2005-07-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8912  
8913         * lily/accidental-engraver.cc: formatting fixes.
8914
8915         * lily/spacing-spanner.cc (prune_loose_columns): right-items is a
8916         grob-array.
8917
8918         * lily/arpeggio.cc (print): suicide arpeggio for single notehead.
8919
8920         * lily/note-column.cc (arpeggio): new function.
8921
8922         * lily/note-spacing.cc (get_spacing): also take arpeggio into
8923         account for spacing.
8924
8925 2005-07-25  Jan Nieuwenhuizen  <janneke@gnu.org>
8926
8927         * lily/main.cc (sane_setenv)[!ARGV0_RELOCATION]: Also define.
8928         (setup_guile_env): Use it instead of nonstandard setenv.  Fixes
8929         mingw build.
8930         
8931 2005-07-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8932
8933         * scm/lily.scm (lilypond-all): clear anonymous modules after
8934         processing files.
8935
8936 2005-07-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8937
8938         * flower/include/guile-compatibility.hh (SCM_I_CONSP): add
8939         SCM_I_CONSP
8940
8941         * VERSION: 2.7.3 released
8942
8943         * Documentation/user/invoking.itely (Invoking lilypond): add
8944         LILYPOND_GC_YIELD documentation.
8945
8946         * lily/*: cleanups: use scm_from_int iso. scm_int2num. Idem for
8947         scm_from_real / scm_make_real.
8948
8949         * lily/main.cc (setup_guile_env): new function. Set GC min_yields
8950         higher. This increases memory footprint, but provides overall
8951         speedup of 15 to 20%. 
8952
8953         * lily/include/translator.hh (class Translator): remove
8954         PRECOMPUTED_VIRTUAL everywhere.
8955
8956         * lily/include/lily-guile.hh: inline scm_c[ad]r, scm_is_pair.
8957
8958         * lily/context.cc (now_mom): non-recursive now_mom() 
8959
8960         * lily/include/profile.hh: new file.
8961
8962         * lily/profile.cc: new file.
8963
8964         * lily/grob.cc (Grob::Grob): look properties up directly.
8965
8966         * lily/open-type-font.cc (get_indexed_char): cache index -> bbox
8967         lookups.
8968
8969         * lily/include/box.hh (class Box): smob Box type.
8970
8971         * lily/smobs.cc (protect_smob): O(1) GC (un)protection.
8972
8973         * lily/include/smobs.hh (DECLARE_BASE_SMOBS): add methods
8974         protect() and unprotect(). Use throughout.
8975
8976 2005-07-24  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8977
8978         * Documentation/topdocs/NEWS.tely: new item for \displayLilyMusic
8979
8980         * scm/define-music-display-methods.scm (markup->lily-string):
8981         markup elements can also be strings (without simple-markup
8982         appended)
8983
8984 2005-07-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8985
8986         * lily/context.cc (where_defined): also assign value in
8987         where_defined().
8988
8989         * lily/bezier.cc (get_other_coordinate): use curve_coordinate
8990         (curve_coordinate): new function
8991
8992         * lily/simple-spacer.cc (add_columns): only add rods between
8993         column i and begin/end if keep-inside-line is set (this repleces
8994         allow-outside-line as default)
8995
8996 2005-07-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8997
8998         * lily/tuplet-engraver.cc (start_translation_timestep): only read
8999         tupletSpannerDuration if applicable.
9000
9001         * lily/font-size-engraver.cc (process_music): read fontSize only
9002         once per timestep.
9003
9004         * lily/engraver*cc: use throughout.
9005         
9006         * lily/include/translator.icc (ADD_ACKNOWLEDGER): new macro.
9007
9008         * lily/translator.cc (add_acknowledger): new file. Directly jump
9009         into an Engraver::acknowledge_xxx () method based on a grobs
9010         interface-list.
9011
9012         * lily/include/translator-dispatch-list.hh (class
9013         Engraver_dispatch_list): new struct, new file.
9014
9015         * scm/define-context-properties.scm
9016         (all-internal-translation-properties): remove acceptHashTable,
9017         acknowledgeHashTable
9018
9019         * lily/translator-group.cc (mark_smob): idem for acceptHashTable.
9020
9021         * lily/engraver-group-engraver.cc (Engraver_group_engraver):
9022         change acknowledgeHashTable to C++ member. 
9023
9024         * lily/rest-collision.cc (do_shift): use extract_grob_set().
9025
9026 2005-07-22  Nicolas Sceaux  <nicolas.sceaux@free.fr>
9027
9028         * scm/display-lily.scm: new file. Define a `display-lily-music'
9029         function, that displays the music expression given as an argument,
9030         using LilyPond notation.
9031
9032         * scm/define-music-display-methods.scm: new file. Implementation
9033         of display methods for each music type.
9034
9035         * ly/music-functions-init.ly (displayLilyMusic): new function for
9036         displaying music with LilyPond notation.
9037
9038         * input/regression/display-lily-tests.ly: new regression test file
9039         for `display-lily-music'.
9040
9041         * scm/markup.scm: remove obsolete debugging code (for printing
9042         markups with LilyPond notation).
9043
9044         * scm/define-music-types.scm (music-name-to-property-table):
9045         * scm/clef.scm (supported-clefs): export, in order to be accessible
9046         from the (scm display-lily) module.
9047
9048 2005-07-22  Jan Nieuwenhuizen  <janneke@gnu.org>
9049
9050         * Documentation/topdocs/NEWS.tely (Top): Typo.
9051
9052 2005-07-22  Heikki Junes  <hjunes@cc.hut.fi>
9053
9054         * Documentation/index.html.in, Documentation/texinfo.css,
9055           stepmake/bin/text2html.py, buildscripts/mutopia-index.py,
9056           Documentation/bibliography/index.html.in,
9057           Documentation/bibliography/html-long.bst: revert css-width patch,
9058           it does not work with IE6.
9059
9060 2005-07-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9061
9062         * Documentation/texinfo.css: revert 760px hack. 
9063
9064         * VERSION: release 2.7.2
9065
9066         * Documentation/topdocs/NEWS.tely (Top): mention barNumberCheck
9067
9068         * Documentation/user/basic-notation.itely (Barnumber check): add
9069         section.
9070
9071         * scm/music-functions.scm (skip-to-last): new function. Show only
9072         last showLastLength part of the \score.
9073
9074         * lily/moment-scheme.cc (LY_DEFINE): new function ly:moment-sub
9075
9076         * python/convertrules.py (conv): add ly:x-moment rule
9077
9078         * lily/moment-scheme.cc (LY_DEFINE): rename ly:X-moment  -> ly:moment-X
9079
9080         * Documentation/topdocs/NEWS.tely (Top): add new feature.
9081
9082         * Documentation/user/instrument-notation.itely (Flexibility in
9083         alignment): options in subsections.
9084
9085         * lily/lyric-engraver.cc (process_music): don't typeset text for _
9086         syllable text. Instead, assume that the previous lyric text is a
9087         melismated text.
9088
9089         * Documentation/index.html.in: revert 800x600 change.
9090
9091 2005-07-19  Jan Nieuwenhuizen  <janneke@gnu.org>
9092
9093         * lily/main.cc (main): Remove invalid handle kludge.
9094
9095         * scm/lily.scm (running-from-gui?): WINDOWS: check -dgui.
9096         (lambda): add gui define.
9097
9098 2005-07-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9099
9100         * Documentation/topdocs/NEWS.tely (Top): add note about Musica ficta.
9101
9102         * Documentation/user/instrument-notation.itely (Musica ficta
9103         accidentals): add section Musica ficta accidentals
9104
9105         * lily/accidental-engraver.cc (make_suggested_accidental): new
9106         function.
9107         (make_standard_accidental): move into new function.
9108         (create_accidental): new function.
9109
9110         * scm/define-grobs.scm (all-grob-descriptions): new Grob
9111         AccidentalSuggestion
9112
9113         * lily/output-def-scheme.cc (LY_DEFINE): take default  argument.
9114
9115         * lily/output-def.cc (lookup_variable): return SCM_UNDEFINED if
9116         undefined.
9117
9118         * Documentation/user/global.itely (Page formatting): document
9119         horizontalshift.
9120
9121         * scm/page-layout.scm (default-page-music-height):
9122         horizontalshift: new variable, shift all systems by
9123         horizontalshift to the right, to make space for instrument names.
9124
9125         * scm/paper.scm (set-paper-dimension-variables): add horizontalshift
9126
9127         * lily/input-scheme.cc (LY_DEFINE): take format commands.
9128
9129 2005-07-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9130
9131         * lily/note-column.cc (dir): idem.
9132
9133         * lily/spacing-spanner.cc (Module): idem.
9134
9135         * lily/script-column.cc (before_line_breaking): use extract_grob_set()
9136
9137         * lily/include/paper-column.hh (class Paper_column): add
9138         non-static get_rank() member.
9139
9140         * VERSION: release 2.7.1
9141         
9142         * scm/framework-null.scm: new file, used for benchmarking.
9143
9144 2005-07-20  Heikki Junes  <hjunes@cc.hut.fi>
9145
9146         * Documentation/topdocs/INSTALL.texi, configure.in: fix
9147         version dependencies for fontforge and gs.
9148
9149         * Documentation/index.html.in, Documentation/texinfo.css,
9150         stepmake/bin/text2html.py, buildscripts/mutopia-index.py,
9151         Documentation/bibliography/index.html.in, 
9152         Documentation/bibliography/html-long.bst: optimize width of
9153         html for a 800x600 screen (width:760), increases printability
9154         when 'fit to page' is not set and readability in wide screens.
9155
9156         * stepmake/bin/add-html-footer.py: add missing </p>.
9157
9158 2005-07-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9159
9160         * scm/define-markup-commands.scm (beam): use polygon in beam
9161         command.
9162
9163         * lily/grob-pq-engraver.cc (stop_translation_timestep): save up
9164         all acknowledged grobs, and do potentially expensive merge and
9165         write in one go.
9166
9167         * buildscripts/mf-to-table.py (write_fontlist): enforce noBreak.
9168
9169         * configure.in (reloc_b): add --enable-static-gxx to statically
9170         link to libstdc++
9171
9172         * lily/GNUmakefile (static-gxx-libs): new target
9173         static-gxx-libs. Create symlink to libstdc++.a
9174
9175         * lily/new-lyric-combine-music-iterator.cc: rename to
9176         Lyric_combine_music_iterator
9177
9178         * lily/lyric-combine-music-iterator.cc
9179         (Old_lyric_combine_music_iterator): rename to
9180         Old_lyric_combine_music_iterator
9181
9182         * lily/*-engraver.cc (various): remove double use of
9183         PRECOMPUTED_VIRTUAL function: only use
9184         start_translation_timestep() and stop_translation_timestep(), not
9185         both.
9186
9187         * lily/break-substitution.cc (fast_substitute_grob_array): do
9188         fast_substitute_grob_array for all unordered grob_arrays.
9189         (substitute_grob): return Grob *. Saves packing/unpacking SCMs.
9190         (substitute_grob_array): optimize.
9191
9192         * lily/align-interface.cc (set_axis): set ordered_ for 'elements
9193
9194         * lily/include/grob-array.hh (class Grob_array): ordered_ member.
9195
9196         * lily/parser.yy: revert $globalheader patch.
9197         
9198         * lily/include/translator.icc
9199         (IMPLEMENT_FETCH_PRECOMPUTABLE_METHODS): directly jump into
9200         Translator methods, without _static helper.
9201  
9202         * lily/grob-smob.cc (derived_mark): rename from
9203         do_derived_mark(). Return void.
9204
9205         * scm/define-context-properties.scm
9206         (all-internal-translation-properties): remove tweakCount/tweakRank.
9207
9208         * scm/output-lib.scm (begin-of-line-invisible): use vectors for
9209         predefined break-visibilities.
9210
9211         * lily/item.cc (handle_prebroken_dependencies): use a vector of 3
9212         booleans for break-visibility.
9213
9214         * Documentation/topdocs/NEWS.tely (Top): add note about engravers.
9215
9216         * python/convertrules.py (conv): rule for Timing_translator. 
9217
9218         * lily/include/translator.icc: new file. 
9219
9220         * lily/paper-column-engraver.cc (process_music): new
9221         file. Separate Paper_column factory from Score_engraver.
9222
9223         * lily/vertically-spaced-context-engraver.cc: administer
9224         spaceable-staves property of System.
9225
9226         * lily/translator-group-ctors.cc: new file.
9227
9228         * lily/context-property.cc (make_grob_from_properties): construct
9229         the right Grob class programmatically, looking at the class entry
9230         for the meta property.
9231
9232         * lily/break-align-engraver.cc (stop_translation_timestep): call
9233         Break_align_interface::add_element() directly.
9234
9235         * lily/context.cc (measure_position): measure_position() is now a
9236         normal function.
9237
9238         * lily/include/translator.hh (class Translator): rename
9239         process_acknowledged_grobs() to process_acknowledged() and move to
9240         Translator.
9241
9242         * scm/define-grobs.scm (all-grob-descriptions): add a 'class meta
9243         field for each grob description.
9244
9245         * lily/include/translator-group.hh (class Translator_group):
9246         change to base class. Separate class from Translator. This gets
9247         rid of virtual inheritance for Engravers/Performers.
9248
9249         * lily/staff-performer.cc (class Staff_performer): derive
9250         Staff_performer from Performer, not Performer_group_performer 
9251
9252         * Lily/translator-group.cc (precomputed_recurse_over_translators):
9253         new function.
9254         (precompute_method_bindings): new function. Precompute lists of
9255         Translators, so we only call methods (process_music,
9256         start_translation_timestep, etc.) for Translators needing
9257         it. Also: dispose of pointer-to-member-function calls.
9258
9259         * lily/engraver-group-engraver.cc: remove engraver_each,
9260         recurse_down_engravers ()
9261
9262         * lily/note-head.cc (internal_print): only call
9263         glyph-name-procedure if style != default. 
9264
9265 2005-07-16  Graham Percival  <gperlist@shaw.ca>
9266
9267         * ly/titling-init.ly: add printallheaders option.
9268
9269         * Documentation/user/global.itely: document printallheaders.
9270
9271 2005-07-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9272
9273         * lily/system.cc (do_derived_mark): don't mark from object_alist_
9274         anymore, but do it centrally.  
9275
9276         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
9277         hammer hack.
9278
9279         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-object
9280
9281         * scm/output-lib.scm: remove hammer-print-function.
9282
9283         * lily/include/pointer-group-interface.hh (extract_grob_set): new
9284         macro. Declare a Link_array<Grob> and fill it from a grob.
9285         (extract_item_set): idem for item.
9286
9287         * lily/break-substitution.cc: add header.
9288         (fast_substitute_grob_array): rewrite for Grob_arrays.
9289         (substitute_grob_array): idem.
9290
9291         * lily/group-interface.cc (add_thing): remove file.
9292
9293         * flower/include/parray.hh (class Link_array): slice() is const.
9294
9295         * lily/include/grob-array.hh: new file.
9296
9297         * lily/grob-array.cc (spanner): new file.
9298
9299         * lily/beam-quanting.cc (fill): read details property from beam.
9300
9301         * lily/beam.cc: support details property.
9302
9303         * total speedups below: approx 10%.
9304
9305         * lily/include/beam.hh: new struct, softcode beam quanting parameters
9306
9307         * lily/include/grob.hh (class Grob): add interfaces_ member.
9308
9309         * lily/bezier.cc (init_polynomial_cache): new function: cache
9310         binom(3,j) t^j (1-t)^{3-j}
9311         (curve_point): opps, actually use the cache for t^j , (1-t)^j! 
9312
9313         * lily/*.cc: substitution throughout.
9314
9315         * lily/grob-property.cc (internal_get_object): new routine.
9316         (internal_set_object): idem. Store grob refrences in separate
9317         alist. This saves processing time, since properties aren't
9318         break-substituted, and the per grob namespace is smaller, both for
9319         grobs and non-grob properties.
9320
9321         * scm/define-grob-properties.scm (all-internal-grob-properties):
9322         remove center-element.
9323
9324         * lily/grob.cc: remove tweak-count, tweak-rank.
9325
9326 2005-07-15  Graham Percival  <gperlist@shaw.ca>
9327
9328         * Documentation/user/lilypond-book.itely: fixes example.
9329
9330 2005-07-15  Nicolas Sceaux  <nicolas.sceaux@free.fr>
9331
9332         * Documentation/user/global.itely (Creating titles):    
9333         * Documentation/user/examples.itely (All headers): change the
9334         place of \header in \score blocks (after music block) to make
9335         examples compile (cf. changes on parser.yy on 2005-07-10)
9336
9337 2005-07-13  Graham Percival  <gperlist@shaw.ca>
9338
9339         * python/convertrules.py: add exc -> ecc rule.
9340
9341         * scripts/convert-ly.py: add location of convertrules.py
9342         in a comment.
9343
9344         * Documentation/user/changing-defaults.itely: fix language.
9345
9346 2005-07-12  Jan Nieuwenhuizen  <janneke@gnu.org>
9347
9348         * lily/lily-parser-scheme.cc (LY_DEFINE): Guile 1.6 fix.
9349
9350 2005-07-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9351
9352         * scm/output-socket.scm (grob-bbox): don't use inf? 
9353
9354         * flower/include/rational.hh: add operator bool() 
9355
9356         * scm/define-music-types.scm (music-descriptions): remove
9357         internal-class-name properties.
9358
9359         * lily/include/event.hh: remove file.
9360
9361         * lily/include/music-constructor.hh: remove file.
9362
9363         * lily/parser.yy (Lily_lexer): check EVENT_IDENTIFIER using 'event
9364         in 'types property.
9365
9366         * lily/music.cc (duration_length_callback): new function.
9367
9368         * lily/event.cc: remove file.
9369
9370         * lily/music-constructor.cc: remove file.
9371
9372         * lily/music-scheme.cc (LY_DEFINE): rename to ly:make-music
9373
9374         * lily/context.cc (get_grob_key): nop if use_object_keys not set.
9375         (get_context_key): idem.
9376
9377         * scm/lily.scm (lambda): new option object-keys (default to #f)
9378
9379         * scm/output-svg.scm (utf-8-string): rename  from utf8-string.
9380
9381         * scm/output-gnome.scm: remove beam routine.
9382
9383         * scm/output-ps.scm (scm): idem.
9384
9385         * scm/output-svg.scm: remove beam.
9386
9387         * ps/music-drawing-routines.ps: remove draw_beam.
9388
9389         * lily/lookup.cc (beam): use round_filled_polygon() for beam.
9390
9391         * flower/include/guile-compatibility.hh (scm_from_locale_string):
9392         add scm_from_locale_string compatibility glue. 
9393
9394 2005-07-13  Yoshinobu Ishizaki  <isizaki@mte.biglobe.ne.jp>
9395
9396         * scripts/lilypond-book.py: Prevent occuring error when
9397         'lilypond-book --output=foo/ somefile.ly' is executed multiple
9398         times and target file shoud be overwritten.  (Error message said
9399         'input file and output file is same'.)
9400
9401 2005-07-13  Graham Percival  <gperlist@shaw.ca>
9402
9403         * input/regression/slur-extreme.ly,
9404         input/regression/slur-scoring.ly, lily/slur-configuration.cc,
9405         lily/slur.cc, mf/feta-din-code.mf, mf/feta-timesig.mf,
9406         mf/parmesan-heads.mf, scm/define-grob-properties.scm: Change
9407         "excentricity" to "eccentricity".
9408
9409         * Documentation/user/converters.itely: fix URL for Noteedit and
9410         Rosegarden.
9411
9412         * THANKS: added Yoshinobu Ishizaki.
9413
9414 2005-07-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9415
9416         * scm/define-markup-commands.scm (justify-field): add. 
9417
9418         * scm/define-grobs.scm (all-grob-descriptions): decrease font size.
9419
9420 2005-07-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9421
9422         * lily/lookup.cc (filled_box): express filled_box with
9423         round_filled_box
9424
9425         * scm/midi.scm (paper-book-write-midis): new function. Write all
9426         performances in numbered MIDI files.
9427
9428         * lily/performance-scheme.cc (LY_DEFINE): new file.
9429         (LY_DEFINE): new function ly:performance-write.
9430
9431         * lily/lily-parser-scheme.cc (LY_DEFINE): ly:parser-output-name:
9432         new function.
9433         (LY_DEFINE): change name ly:parser-define -> ly:parser-define!
9434
9435         * scm/framework-*.scm: use port arguments throughout.
9436
9437         * lily/include/lily-guile.hh: rename ly_c_X_p -> ly_is_X
9438
9439         * lily/paper-outputter.cc (Paper_outputter): take port argument.
9440
9441         * lily/paper-outputter-scheme.cc (LY_DEFINE): take port argument.
9442
9443         * scm/framework-texstr.scm (output-framework): 
9444
9445         * input/regression/repeat-fold.ly (texidoc): remove TeX strings.
9446
9447         * scm/output-lib.scm (tablature-stem-attachment-function):
9448         tablature stem attachment fix. 
9449
9450 2005-07-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9451
9452         * lily/bezier.cc: hardcode binomial coefficients of order 3.
9453
9454         * lily/include/music-wrapper.hh: remove Music_wrapper as Music subtype.
9455
9456         * scm/define-music-types.scm (music-descriptions): don't use
9457         Music_wrapper type.
9458
9459         * lily/paper-column.cc (print): print moment too.
9460
9461         * scripts/mup2ly.py (cp_to_dir): remove 1.5.2 compat glue.  
9462         remove compatibility cruft.
9463
9464         * lily/parser.yy (score_body): \score can only begin with Music. 
9465
9466         * lily/score-scheme.cc (LY_DEFINE): rename scorify to
9467         make-score. Take music argument only. Move parser interaction to
9468         Scheme.
9469
9470         * scm/lily-library.scm (scorify-music): new function.
9471
9472         * python/lilylib.py (datadir): remove 2.1 compat kludge.
9473         (datadir): remove resource import.
9474         (print_environment): remove get_bbox()
9475         (cp_to_dir): remove pre 1.5.2 compat glue.
9476
9477 2005-07-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9478
9479         * lily/include/simple-spacer.hh (Module): idem.
9480
9481         * lily/include/spring.hh (struct Spring): store inverse
9482         strength. This prevents division by zero.
9483
9484         * VERSION: release 2.7.0
9485         
9486         * lily/include/music.hh (class Music): remove Music::duration_log()
9487
9488         * lily/stem-engraver.cc (make_stem): take duration log from event.
9489
9490         * lily/chord-tremolo-engraver.cc: don't ack note-head-interface.
9491
9492 2005-07-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9493
9494         * scm/lily.scm (ly:load): load autochange.scm
9495
9496         * Documentation/user/tutorial.itely (Running LilyPond for the
9497         first time): remove reference to DVI/TeX
9498
9499         * scm/define-markup-commands.scm (text): add \text markup command.
9500
9501         * configure.in (reloc_b): bump requirement to Python 2.2.
9502
9503         * lily/include/dots.hh (class Dots): make has_interface() static.
9504
9505         * python/convertrules.py (conv): add rule for ly:grob-default-font
9506
9507         * scm/define-grobs.scm (all-grob-descriptions): reorganize in
9508         alphabetical order.
9509
9510         * input/regression/trill-spanner-pitched.ly: new file.
9511
9512         * lily/font-interface-scheme.cc (LY_DEFINE): function
9513         ly:grob-default-font (changed from get-default-font).
9514
9515         * lily/axis-group-interface-scheme.cc (LY_DEFINE): new file.
9516
9517         * lily/note-head.cc (internal_print): if style is not a symbol,
9518         set style to 'default. 
9519         (internal_print): no style suffix if glyph-name-procedure not
9520         set. Default to quarter head.
9521
9522         * scm/define-grobs.scm (Module): new grob TrillPitchHead.
9523
9524         * scm/define-music-properties.scm (all-music-properties): add trill-pitch.
9525
9526         * ly/music-functions-init.ly: \pitchedTrill
9527
9528         * lily/pitched-trill-engraver.cc (acknowledge_grob): new file.
9529
9530         * ly/Welcome_to_LilyPond.ly: update to 2.6.0
9531
9532         * lily/trill-spanner-engraver.cc (finalize): rename req -> event
9533
9534         * scm/define-markup-commands.scm (pad-markup): pad-markup command.
9535
9536         * po/fr.po: update
9537
9538         * po/de.po: update.
9539
9540 2005-07-06  Graham Percival  <gperlist@shaw.ca>
9541
9542         * Documentation/user/changing-defaults.itely: add link
9543         to grob-iterface.
9544
9545         * Documentation/user/advanced-notation.itely: add material
9546         to Setting automatic beam behaviour.  Thanks, Joe!
9547
9548         * Documentation/user/lilypond.itely: change encoding to utf-8.
9549
9550 2005-07-01  Mats Bengtsson  <mabe@s3.kth.se>
9551
9552         * Documentation/user/advanced-notation.itely (Setting automatic
9553         beam behavior): Correct the documentation of
9554         revert-auto-beam-setting (backportme)
9555
9556 2005-07-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9557
9558         * lily/ly-module.cc (ly_make_anonymous_module): define
9559         %module-public-interface of module. 
9560
9561         * lily/lily-parser.cc (print_smob): allow printing of parser smob
9562         without lexer.
9563
9564 2005-07-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9565
9566         * input/regression/fret-diagrams.ly: stretch example.
9567
9568 2005-06-30  Jan Nieuwenhuizen  <janneke@gnu.org>
9569
9570         * cygwin/GNUmakefile ($(outdir)/%.sh): Bugfix: use TAB (Bertalan
9571         Fodor).
9572
9573 2005-06-30  Graham Percival  <gperlist@shaw.ca>
9574
9575         * Documentation/topdocs/AUTHORS.texi: update personal web address.
9576
9577         * Documentation/user/examples.itely, lilypond-book.itely:
9578         change \RequirePackage to \usepackage.
9579
9580         * Documentation/user/global.itely: document copyright and tagline.
9581
9582 2005-06-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9583
9584         * Documentation/user/basic-notation.itely (Transpose): remove link
9585         to nonexistent UntransposableMusic.
9586
9587         * scm/output-svg.scm: remove old definitions.
9588
9589         * scripts/lilypond-book.py (do_file): search for kpsewhich before
9590         invoking.
9591
9592         * python/lilylib.py (search_exe_path): new function.
9593
9594 2005-06-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9595
9596         * python/lilylib.py (mkdir_p): remove setup_environment()
9597         (backportme)
9598
9599         * buildscripts/mutopia-index.py (headertext): trim text.
9600
9601         * Documentation/topdocs/NEWS.tely (Top): refresh.
9602
9603         * scm/define-markup-commands.scm (wordwrap-string): new function:
9604         split string in paras and words.
9605         (wordwrap-markups): new function.
9606         (wordwrap-stencils): new function. 
9607         (justify): use it.
9608         (wordwrap): use it.
9609         (wordwrap-string): use it
9610         (justify-string): use it.
9611
9612         * scm/lily-library.scm (regexp-split): new function.
9613
9614         * scm/define-markup-commands.scm: remove encoded-simple. 
9615         remove font-markup.
9616         (fontsize): remove old version  of fontsize.
9617         (wordwrap): new markup function. Wrap into paragraphs.
9618
9619         * VERSION: Branch lilypond_2_6
9620         (MINOR_VERSION): go to 2.7.0
9621
9622 2005-06-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9623
9624         * po/zh_TW.po: update from translation project.
9625
9626 2005-06-28  Graham Percival  <gperlist@shaw.ca>
9627
9628         * scm/midi.scm: compile fix.
9629
9630 2005-06-28  Mats Bengtsson  <mabe@s3.kth.se>
9631
9632         * scripts/lilypond-book.py : Fix embarrassing bug in my previous
9633         patch. Now, the tempfile module is loaded too, not only used.
9634
9635 2005-06-28  Stephen Charles McCarthy  <stecmccarthy@hotpop.com>
9636
9637         * scm/midi.scm: changed midi volumes in absolute-volume-alist from
9638         0.05 - 1.00 to 0.25 - 1.00
9639
9640         * scm/midi.scm: moved the default-instrument-equalizer procedure
9641         to just under the insturment-equalizer-alist it takes as an
9642         argument.
9643
9644 2005-06-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9645
9646         * Documentation/user/advanced-notation.itely (Font selection):
9647         remove CMR note.
9648
9649         * scm/framework-ps.scm (write-preamble): ly:warning iso. ly:warn 
9650
9651 2005-06-28  Jan Nieuwenhuizen  <janneke@gnu.org>
9652
9653         * THANKS: Add UTF-8 marker.
9654
9655         * Documentation/user/point-and-click.itely (http): Update: use
9656         lilypond-invoke-editor.  Fix: instruct to use user.js.
9657
9658 2005-06-27  Graham Percival  <gperlist@shaw.ca>
9659
9660         * ly/titling-init.ly: implements printpagenumber, increases
9661         space between dedication and title (to avoid collisions with
9662         "g" and "q" in dedication), and nicer logic about copyright
9663         and instrument fields being printed on the first page.
9664         Thanks Vincent!
9665
9666         * Documentation/user/global.itely: document printpagenumber.
9667
9668 2005-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
9669
9670         * Documentation/topdocs/NEWS.tely: Update to 2.6.
9671
9672 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9673
9674         * THANKS: update to 2.6
9675
9676         * VERSION: 2.6.0 released.
9677
9678 2005-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
9679
9680         * cygwin/GNUmakefile (OUT_POSTREMOVES): Reinclude install script
9681         rule, errorneously removed probably because of misleading comment.
9682
9683 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9684
9685         * python/lilylib.py (datadir): py2exe comments.
9686
9687         * Documentation/topdocs/INSTALL.texi (Top): remove EC fonts requirement.
9688
9689         * configure.in (reloc_b): make fontconfig REQUIRED.
9690
9691 2005-06-27  Heikki Junes <hjunes@cc.hut.fi>
9692
9693         * po/fi.po: add latest translations.
9694
9695 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9696
9697         * ChangeLog: recode utf-8
9698
9699         * Documentation/pictures/lilypond.xpm (Module): edited photo as
9700         logo.
9701
9702         * Documentation/user/examples.itely (Module): 2.4.0 -> 2.6.0
9703
9704         * input/*.ly (Module): 2.4 -> 2.6 grand convert-ly s/r. 
9705
9706         * python/convertrules.py (do_conversion): don't print program_name
9707         from within a module
9708
9709         * configure.in (reloc_b): bump fontforge requirement to 20050624.
9710
9711         * python/convertrules.py (conv): add 2.6.0 dummy rule.
9712
9713 2005-06-23  Graham Percival  <gperlist@shaw.ca>
9714
9715         * Documentation/user/lilypond-book.itely,
9716         Documentation/user/examples.itely: add \RequirePackage{graphics}.
9717
9718         * ly/titling.ly: checks printfirstpagenumber, adds meter, and
9719         fixes baseline-skip.  Thanks Vincent!
9720
9721         * Documentation/user/advanced-notation.itely, global.itely:
9722         moved "Selecting font sizes" to global, since it deals with
9723         notation font size, not text fonts.
9724
9725 2005-06-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9726
9727         * buildscripts/gen-emmentaler-scripts.py (notice): add GPL notice
9728         to fonts.
9729
9730 2005-06-23  Mats Bengtsson  <mabe@s3.kth.se>
9731
9732         * scripts/lilypond-book.py (LATEX_DOCUMENT): More or less ugly
9733         workaround since /dev/stdin doesn't work on Cygwin. Using a
9734         temporary file in the current directory since latex doesn't
9735         understand the path name to the default TMP in Cygwin (at least on
9736         win XP).
9737         
9738         * Documentation/user/global.itely (Creating titles): Correct
9739         misprint in example. Thanks to Rob Vlasaty.
9740
9741 2005-06-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9742
9743         * VERSION (PATCH_LEVEL): release 2.5.32
9744
9745         * lily/lily-parser-scheme.cc (LY_DEFINE): don't set 'parser
9746         variable in lily module
9747
9748         * scm/framework-ps.scm (output-classic-framework): error message
9749         regarding the classic framework.
9750
9751         * Documentation/user/henle-flat-gray.png (Module): new file.
9752
9753         * Documentation/user/baer-flat-gray.png (Module): new file.
9754
9755         * scm/output-lib.scm (fret-number-tablature-format): vcenter and
9756         whiteout for markups.
9757
9758         * buildscripts/substitute-encoding.py (note_glyph): include _ in
9759         regex too. This fixes change clef appearance in PDF. 
9760
9761         * ttftool/include/*: remove.
9762
9763         * configure.in (reloc_b): remove TTFTOOL_ENDIAN
9764
9765         * config.make.in (WINDRES): remove TTFTOOL_ENDIAN.
9766
9767         * lily/GNUmakefile (MODULE_INCLUDES): remove ttftool
9768
9769         * ttftool/*: remove ttftool subdirectory.
9770
9771         * GNUmakefile.in (SUBDIRS): remove ttftool subdirectory.
9772
9773         * lily/ttf.cc (print_header): new file. Convert to type42, using
9774         FreeType to parse the TTF. 
9775
9776         * ttftool/parse.c (readPostTable): ugh. Kludge: nglyphs in maxp
9777         and post table may differ. Pass around post_nglyphs as well.
9778
9779 2005-06-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9780
9781         * ly/music-functions-init.ly (musicMap): new music function
9782         musicMap. 
9783         
9784 2005-06-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9785
9786         * make/mutopia-rules.make: anti-alias-factor = 2
9787
9788         * scm/ps-to-png.scm (make-ps-images): cleanup multipage vs. single
9789         page switch.
9790
9791         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): set
9792         anti-alias-factor for lilypond-book runs.
9793
9794         * scm/ps-to-png.scm (scale-down-image): new function.
9795         (my-system): new function.
9796         (make-ps-images): blow up GS resolution by anti-alias-factor,
9797         scale down image by anti-alias-factor.  This improves appearance
9798         of bitmaps
9799         (make-ps-images): remove showpage. Fixes spurious empty png at
9800         end.
9801
9802         * scm/framework-ps.scm (write-preamble): downcase filename before
9803         string-matching. Should fix .TTF files (as opposed to ttf files)  
9804
9805         * Documentation/user/tutorial.itely (Running LilyPond for the
9806         first time): separate subsections for windows, macos and unix.  
9807
9808         * Documentation/user/invoking.itely (Updating files with
9809         convert-ly): add MacOS X note.
9810
9811 2005-06-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9812
9813         * Documentation/user/introduction.itely (Engraving): don't include
9814         file optical-spacing, add directly.
9815
9816         * lily/paper-outputter.cc (file): open file in binary mode. This
9817         fixes OTF embedding on windows.
9818
9819 2005-06-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9820
9821         * scm/framework-ps.scm (write-preamble): remove debugging output.
9822
9823         * mf/aybabtu.pe.in (i): don't generate aybabtu.cff
9824
9825         * mf/GNUmakefile ($(outdir)/fonts.cache-1): create font cache for
9826         outdir.
9827         (install-fc-cache): install font cache in installation directories.
9828
9829 2005-06-17  Jan Nieuwenhuizen  <janneke@gnu.org>
9830
9831         * scm/editor.scm (editor-command-template-alist): Use char iso
9832         column, except for Emacs.
9833         (get-editor-command): Substitute char too (Bertalan Fodor).
9834
9835 2005-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
9836
9837         * scm/ps-to-png.scm (make-ps-images): Use ~S instead of single
9838         quoted ~s.  This should fix PNG output on Windows; single quotes
9839         are regular characters on Windows.
9840
9841 2005-06-16  Graham Percival  <gperlist@shaw.ca>
9842
9843         * Documentation/user/basic-notation.itely: include ChoirStaff
9844         in System start delimiters.
9845
9846         * Documentation/user/putting.itely: new doc section on
9847         fixing overlapping notation.
9848
9849 2005-06-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9850
9851         * Documentation/user/global.itely (Paper size): \paper is in
9852         \book, not \score.
9853
9854         * make/mutopia-rules.make: -ddelete-intermediate-files
9855
9856         * ly/engraver-init.ly: make Staff default child of ChoirStaff.
9857
9858 2005-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
9859
9860         * ChangeLog: Recode utf-8.
9861
9862         * python/GNUmakefile (INSTALLATION_OUT_DIR): Install .so module in
9863         datadir with .py modules.
9864
9865 2005-06-15  Heikki Junes  <hjunes@cc.hut.fi>
9866
9867         * Documentation/user/basic-notation.itely (Ties): add tieDashed.
9868
9869 2005-06-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9870
9871         * make/mutopia-rules.make: switch off ps, p&c for lilypond runs.
9872         
9873         * scm/framework-ps.scm (write-preamble): remove status check.
9874
9875         * Documentation/user/invoking.itely (Updating files with
9876         convert-ly): remove -o option.
9877
9878         * VERSION (PACKAGE_NAME): release 2.5.31
9879
9880         * scm/framework-ps.scm (write-preamble): use ly:system.
9881         (write-preamble): verbosity.
9882
9883         * scripts/convert-ly.py: cleanup. Use lilylib. Use convertrules.
9884
9885         * python/convertrules.py: new file. Store conversion rules
9886         separately.
9887
9888 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9889
9890         * scm/backend-library.scm (postprocess-output): remove debugging gobs.
9891
9892 2005-06-14  Mats Bengtsson  <mabe@s3.kth.se>
9893
9894         * Documentation/topdocs/NEWS.tely (Top): Corrected name of
9895         \musicDisplay 
9896
9897         * Documentation/user/instrument-notation.itely (More stanzas): Add
9898         reference to StanzaNumber.
9899
9900 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9901
9902         * THANKS: separate section for website translators.
9903
9904 2005-06-14  Graham Percival  <gperlist@shaw.ca>
9905
9906         * Documentation/topdocs/INSTALL.texi: update vim info;
9907         thanks Simon Bailey!
9908
9909         * Documentation/user/advanced-notation.itely: included
9910         color names.
9911
9912         * Documentation/user/advanced-notation.itely,
9913         Documentation/usr/notation-appendices.itely: moved
9914         color names into an appendix.
9915
9916 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9917         
9918         * lily/program-option.cc (LY_DEFINE): new function ly_add_option.
9919
9920         * scm/lily.scm (lambda): initialize program options from here.
9921
9922         * scm/framework-*.scm: add header info.
9923
9924         * lily/main.cc (parse_argv): only set output format to pdf if no
9925         other format specified.
9926
9927         * scm/backend-library.scm (postprocess-output): process
9928         'delete-intermediate-files after running convert-to-*. This fixes
9929         PNG generation when 'delete-intermediate-files is set.
9930         
9931 2005-06-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9932
9933         * buildscripts/mutopia-index.py (list_item): thinko. Fixes png
9934         links on website. 
9935
9936 2005-06-13  Graham Percival  <gperlist@shaw.ca>
9937
9938         * Documentation/topdocs/INSTALL.texi,
9939         Documentation/user/lilypond-book.itely: typos.
9940
9941 2005-06-12  Pal Benko  <benkop@freestart.hu>
9942
9943         * elisp/lilypond-mode.el (LilyPond-command-alist: 2PS): space
9944         added between program name and switch; -b changed to -f not
9945         to generate pdf
9946
9947 2005-06-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9948
9949         * elisp/lilypond-mode.el (LilyPond-command-alist): remove 2midi
9950         (LilyPond-command-alist): use -f ps (thanks to Pal Benko)
9951
9952         * input/sakura-sakura.ly: add \midi.
9953
9954         * buildscripts/mutopia-index.py (find): use /usr/bin/find
9955         iso. python find. 
9956
9957         * ttftool/test.c (main): cosmetics.
9958
9959         * ttftool/util.c (surely_lseek): use stdio FILE's for I/O 
9960
9961         * ttftool/test.c: new file. If compiled with -DTEST_TTFTOOL,
9962         create a ttf2ps binary.
9963
9964         * scm/ps-to-png.scm (make-ps-images): fix rename-page-1 functionality.
9965
9966         * scm/backend-library.scm (postscript->png): set rename-page-1 to
9967         true.
9968
9969 2005-06-11  Graham Percival <gperlist@shaw.ca>
9970
9971         * Documentation/user/lilypond-book.itely: add warning about
9972         the font warnings in dvips.
9973
9974 2005-06-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9975
9976         * THANKS: typo
9977
9978         * mf/GNUmakefile ($(outdir)/$(redhat-package)): Fedora-4 url.
9979
9980         * GNUmakefile.in: remove links for .map, .enc
9981         don't fail if out/ doesn't exist yet.
9982
9983 2005-06-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9984
9985         * ttftool/util.c (surely_read): return nbytes
9986
9987         * stepmake/bin/text2html.py (txt2html): add utf-8 marker. 
9988
9989         * VERSION (PACKAGE_NAME): release 2.5.30
9990
9991         * flower/string-convert.cc (precision_string): >? fix.
9992
9993         * scm/ps-to-png.scm (make-ps-images): search-gs for multipage too.
9994         (make-ps-images): add verbose -q too.
9995
9996         * lily/default-actions.cc (Module): new file. default
9997         {book,score}-print functions.
9998
9999         * scm/ly-from-scheme.scm (ly:parse-string-result): use new setup:
10000         pass results via parseStringResult, lookup via ly:parser-lookup.  
10001
10002         * lily/lily-parser.cc (Lily_parser): only clone lexer in
10003         constructors.
10004         (parse_file): encapsulate do_yyparse() in scm_set_current_module()
10005         (parse_string): idem.
10006
10007         * ly/spanners-init.ly (assertBeamQuant): don't use #{ #} in init.
10008
10009         * lily/main.cc (main_with_guile): copy be_verbose_global into
10010         ly_set_option()
10011
10012 2005-06-10  Jan Nieuwenhuizen  <janneke@gnu.org>
10013
10014         * scm/backend-library.scm (postscript->pdf):
10015         * scm/ps-to-png.scm (make-ps-images): Do not use gs -q switch in
10016         verbose mode.  Search for several names of gs executable.
10017
10018 2005-06-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10019
10020         * lily/ly-module.cc (ly_make_anonymous_module): call make-module
10021         directly. This fixes a massive memory leak, provided you use CVS
10022         GUILE.
10023
10024 2005-06-10  Erik Sandberg  <ersa9195@student.uu.se>
10025
10026         * ly/property-init.ly: Added tieDashed.
10027
10028         * THANKS: Added some bughunters for 2.5.
10029
10030 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10031
10032         * lily/program-option.cc: add debug-gc option.
10033
10034         * lily/include/lily-guile-macros.hh: don't protect exported module
10035         objects.
10036
10037         * lily/include/lily-parser.hh (class Lily_parser): remove beam_check().
10038
10039         * scm/backend-library.scm (postscript->pdf): use
10040         delete-intermediate-files iso. running-from-gui? 
10041
10042         * ttftool/util.c (surely_read): robustness. Allow read() to return
10043         less bytes than requested, as per posix standards.
10044
10045         * lily/pfb.cc (LY_DEFINE): set ttf_verbosity from ttf-verbosity
10046         program option.
10047
10048         * ttftool/include/ttftool.h ("C"): rename verbosity to
10049         ttf_verbosity. Add to public interface.
10050
10051         * scm/music-functions.scm (unfold-repeats): remove debugging display.
10052
10053         * lily/program-option.cc: rename from scm-option.cc
10054
10055         * lily/scm-option.cc (LY_DEFINE): handle no-foobar option setting.
10056         (get_help_string): Print pretty help string.
10057
10058         * scripts/lilypond-book.py (PREAMBLE_LY): add no-point-and-click
10059         to snippet preamble.
10060
10061         * lily/scm-option.cc: remove command-line-settings option. Fold
10062         all command-line options plus default settings in a generic
10063         interface. 
10064
10065         * flower/getopt-long.cc (table_string): indent 2nd lines of help
10066         texts too.
10067
10068 2005-06-09  Jan Nieuwenhuizen  <janneke@gnu.org>
10069
10070         * flower/file-name.cc: Bugfix: only append DIRSEP if BASE_
10071         or EXT_ components non-empty.
10072
10073 2005-06-08  Jan Nieuwenhuizen  <janneke@gnu.org>
10074
10075         * scm/lily.scm (running-from-gui?): Export.
10076
10077         * lily/lily-parser-scheme.cc (ly:parse-file): Use it to generate
10078         output in .ly source directory.
10079
10080 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10081
10082         * ttftool/util.c (surely_lseek): more verbosity.
10083
10084         * lily/include/lily-proto.hh: add Context_def. This fixes FC4
10085         compile.
10086
10087         * lily/parser.yy (Repeated_music): remove >? 
10088
10089         * scm/backend-library.scm (postscript->pdf): Support for
10090         -dgs-font-load=1
10091
10092         * scm/framework-ps.scm (write-preamble): make font loading
10093         switchable to GS via --define-default gs-font-load=1
10094
10095 2005-06-09  Graham Percival  <gperlist@shaw.ca>
10096
10097         * Documentation/user/global.itely: added \layout docs.
10098
10099 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10100
10101         * lily/lily-parser-scheme.cc: add unistd.h
10102
10103 2005-06-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10104
10105         * scm/editor.scm: add char argument.
10106
10107         * scripts/lilypond-invoke-editor.scm (dissect-uri): add char. 
10108
10109         * ttftool/util.c (syserror): use errno for better error reporting.
10110
10111         * lily/source-file.cc (get_counts): new function. Calc column,
10112         line and char count in one go.
10113
10114         * lily/binary-source-file.cc (quote_input): rename to quote_input
10115
10116         * lily/input.cc (set): new function.
10117
10118 2005-06-08  Jan Nieuwenhuizen  <janneke@gnu.org>
10119
10120         * flower/file-path.cc (find): Bugfix.  Append rather than prepend
10121         directory part of file name to search directory.
10122
10123         * lily/lily-parser-scheme.cc (ly:parse-file): Prepend cwd to
10124         search path and chdir to DIR if --outname=DIR used.
10125
10126         * lily/main.cc (prepend_env_path): Bugfix: Check directory
10127         existence before appending original path.
10128
10129 2005-06-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10130
10131         * ttftool/parse.c (readNamingTable): verbosity for "bad TTF
10132         file" massage.
10133
10134         * Documentation/user/GNUmakefile (TEXINPUTS): set TEXINPUTS so our
10135         texinfo.tex is always used.
10136         
10137 2005-06-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10138
10139         * flower/include/axis.hh: rename from axes.hh
10140
10141         * lily/include/text-interface.hh (Module): rename from text-item.hh
10142
10143         * VERSION (PATCH_LEVEL): release 2.5.29
10144
10145         * ttftool/parse.c (readNamingTable): handle Apple/8bit encoding too.
10146
10147         * scm/framework-ps.scm (font-file-as-ps-string): new function.
10148         (handle-macfont): new function. Call fondu for Native mac fonts.
10149
10150         * scm/define-markup-commands.scm (fill-line): handle text-widths =
10151         '() case.
10152
10153 2005-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
10154
10155         * scm/ps-to-png.scm (make-ps-images): Bugfix: `Pages: 1\n' is not
10156         multi-page.  Fix .eps regular expression.
10157
10158 2005-06-07  Graham Percival  <gperlist@shaw.ca>
10159
10160         * Documentation/user/putting.itely: add info on modifying templates.
10161
10162         * Documentation/user/lilypond.itely, converters.itely, invoking.itely:
10163         misc small changes.
10164
10165 2005-06-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10166
10167         * scm/ps-to-png.scm (make-ps-images): no paper size for multi-page.
10168
10169         * scripts/lilypond-ps2png.scm
10170
10171         * VERSION (PACKAGE_NAME): release 2.5.28
10172
10173 2005-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
10174
10175         * lily/main.cc (prepend_env_path): Do not append /, that does not
10176         work.  Localedir lives in datadir, not in prefix.
10177
10178         * scm/framework-ps.scm (write-preamble): Remove load-font-via-GS
10179         hack for windows.
10180
10181         * flower/include/file-cookie.hh: Compile fix.
10182
10183 2005-06-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10184
10185         * ly/engraver-init.ly: add \defaultchild to InnerStaffGroup. 
10186
10187         * scm/ps-to-png.scm (gulp-port): rename from read. Don't redefine
10188         system primitives.
10189         (gulp-port): using read-string!/partial. We don't want to read an
10190         entire PS file  (GUILE 1.6 limits strings to 16M) 
10191
10192         * scm/define-grobs.scm (all-grob-descriptions): remove arch-*
10193         properties. Add font-interface. 
10194
10195         * scm/define-grob-properties.scm (all-user-grob-properties):
10196         remove old bracket properties.
10197
10198         * scm/x11-color.scm: reformat. 
10199
10200         * lily/ledger-line-engraver.cc (acknowledge_grob): create new
10201         LedgerLineSpanner if new StaffSymbol is found. 
10202
10203         * lily/staff-symbol-engraver.cc (acknowledge_grob): also set
10204         staff-symbol for finishing staff. 
10205
10206         * lily/GNUmakefile (OUT_DIST_FILES): don't dist Flex output
10207
10208         * scm/output-svg.scm (setcolor): implement (re)setcolor with <g>
10209         change black to currentColor everywhere. This fixes color support
10210         in SVG.
10211
10212 2005-06-06  Carl Sorensen  <carldsorensen@comcast.net>
10213
10214         * input/regression/fret-diagrams.ly: new file to test fret diagram
10215         capability
10216
10217         * scm/output-tex.scm: remove white-dot and white-text
10218
10219         * scm/output-ps.scm: remove white-dot and white-text
10220
10221         * scm/fret-diagrams.scm (sans-serif-stencil-white): removed -- 
10222         using ly:stencil-in-color instead
10223         (draw-dots) : remove call to white-dot
10224
10225 2005-06-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10226
10227         * flower/memory-stream.cc (Memory_out_stream): remove fopencookie
10228         support.
10229
10230         * ttftool/ttfps.c: use lily_cookie functions everywhere. 
10231
10232         * flower/include/file-cookie.hh: new file. lily_cookie extension 
10233
10234         * flower/file-cookie.cc: new file. lily_cookie extension.
10235         
10236 2005-06-06  Jan Nieuwenhuizen  <janneke@gnu.org>
10237
10238         * scm/editor.scm (editor-command-template-alist): Add syn
10239         editor (Jaap [de Vos]).
10240
10241 2005-06-05  Jan Nieuwenhuizen  <janneke@gnu.org>
10242
10243         * scripts/lilypond-ps2png.scm:
10244         * scm/ps-to-png.scm: New file.
10245
10246         * scm/backend-library.scm (postscript->png): Use it.
10247
10248         * scripts/lilypond-ps-to-png.py: Remove file.
10249
10250         * python/lilylib.py (get_bbox, make_ps_images): Remove.
10251
10252 2005-06-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10253
10254         * lily/auto-beam-engraver.cc (acknowledge_grob): remove dead code.
10255
10256         * scm/auto-beam.scm (default-auto-beam-check): only forbid beam
10257         start on grace moment. Fixes autobeam-grace.ly.
10258
10259         * lily/auto-beam-engraver.cc (process_acknowledged_grobs): don't
10260         process anything unless we're at the end of a pending beam. Fixes
10261         syncopated 8ths beamed across a beat.
10262
10263 2005-06-03  Jan Nieuwenhuizen  <janneke@gnu.org>
10264
10265         * scm/editor.scm (editor-command-template-alist): Start emacs if
10266         emacslient fails.
10267
10268         * lily/main.cc (setup_localisation): Listen to LILYPOND_LOCALEDIR.
10269
10270         * flower/file-path.cc (is_file, is_dir): Export.
10271
10272         * lily/main.cc (prepend_env_path, set_env_file): Use them.
10273
10274 2005-06-02  Mats Bengtsson  <mabe@s3.kth.se>
10275
10276         * lily/easy-notation.cc: Added include cctype to correct
10277         compilation error.
10278
10279 2005-06-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10280
10281         * scm/backend-library.scm (postscript->pdf): set resolution to
10282         1200, so bitmap fonts aren't that ugly. 
10283
10284         * Documentation/topdocs/NEWS.tely (Top): add entry about font family.
10285
10286         * lily/dynamic-engraver.cc (acknowledge_grob): only center on
10287         parent if we have a notehead. Fixes incorrect offsets when
10288         Paper_column is very wide in the X direction.
10289
10290         * input/regression/font-family-override.ly (Module): new file.
10291
10292         * scm/font.scm (make-pango-font-tree): new function.
10293
10294         * lily/beam.cc (before_line_breaking): remove warning about less
10295         than 2 visible stems. We still get a warning when there is only
10296         one stem.
10297
10298 2005-06-01  Werner Lemberg  <wl@gnu.org>
10299
10300         * buildscripts/substitute-encoding.py: Handle PFAemmentaler-xx.pfa
10301         correctly.
10302
10303 2005-06-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10304
10305         * lily/slur-scoring.cc (generate_avoid_offsets): new
10306         function. Generate avoid offsets once per slur.
10307
10308         * lily/slur.cc (add_extra_encompass): add dependency to
10309         extra-encompass object. This fixes bugs/c-phrasing-slur.ly
10310
10311         * lily/stencil.cc (is_empty): check dim_ field for is_empty()
10312         too. Fixes inf error with added bass notes.
10313
10314         * scripts/lilypond-book.py (do_options): --psfonts doesn't take
10315         argument anymore.
10316
10317         * make/ly-vars.make (DVIPS_FLAGS): use .psfonts as extension.
10318
10319         * input/tutorial/lbook-latex-test.tex: add line length test.
10320
10321         * scripts/lilypond-book.py (set_default_options): new
10322         function. Call this before dissecting snippets, so linewidth
10323         settings reach the snippets.
10324
10325 2005-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
10326
10327         * scm/lily.scm (PLATFORM, slashify): Remove double slashes.
10328
10329 2005-06-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10330
10331         * input/mutopia/R.Schumann/romanze-op28-2.ly (leftb): bugfix.
10332
10333 2005-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
10334
10335         * stepmake/aclocal.m4: More autopackage friendliness.
10336
10337 2005-05-31  Graham Percival  <gperlist@shaw.ca>
10338
10339         * Documentation/index.html.in: remove link to LSR.
10340
10341         * Documentation/user/global.itely: remove duplicate
10342         "dedication" \header{} section.
10343
10344 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10345
10346         * VERSION (PACKAGE_NAME): release 2.5.27.
10347
10348         * lily/lily-parser-scheme.cc (LY_DEFINE): unprotect paper
10349         too. Plugs memory leak.
10350
10351         * make/lilypond.fedora.spec.in (Group): remove
10352         lilypond-pdfpc-helper.
10353
10354         * scripts/GNUmakefile (SEXECUTABLES): remove
10355         lilypond-pdfpc-helper. Use lilypond-invoke-editor instead.
10356
10357         * scm/font.scm (make-century-schoolbook-tree): add Mono as
10358         'typewriter family.
10359
10360         * lily/score.cc (Score): unprotect copy of Output_def. Plugs
10361         memory leak.
10362
10363         * lily/parser.yy (score_body): don't clone Score, that's done in
10364         Lily_lexer::try_special_identifiers(). This fixes a memory leak.
10365
10366         * lily/score-engraver.cc (derived_mark): new function.
10367         (initialize): unprotect Paper_score. This fixes a memory leak.
10368
10369         * lily/score-performer.cc (derived_mark): new function.
10370
10371         * lily/score-translator.cc (get_output): use SCM for get_output() call.
10372
10373         * stepmake/aclocal.m4: put FlexLexer.h test in conftest.cc. Fixes
10374         spurious warning.
10375
10376         * scm/font.scm (make-century-schoolbook-tree): use Sans for sans
10377         serif.
10378
10379 2005-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
10380
10381         * configure.in (reloc_b): Add --enable-relocation.
10382
10383 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10384
10385         * lily/pfb.cc (LY_DEFINE): show file name when loading PFB. 
10386
10387         * input/regression/alignment-order.ly: add Staff example.
10388
10389 2005-05-31  John Mandereau   <john.mandereau@free.fr>
10390
10391         * po/fr.po: update.
10392
10393 2005-05-31  Graham Percival  <gperlist@shaw.ca>
10394
10395         * Documentation/index.html.in: add link to LSR.
10396
10397 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10398
10399         * scm/define-stencil-commands.scm (Module): new file. Register all
10400         allowed stencil expression heads in a central place.
10401
10402         * lily/stencil-scheme.cc (LY_DEFINE): check is_stencil_head in
10403         ly:make-stencil
10404
10405         * lily/stencil-expression.cc (all_stencil_heads): registering
10406         stencil expressions.
10407
10408         * lily/stencil-interpret.cc: new file. Stencil expression
10409         interpreting.
10410
10411         * input/xiao-haizi-guai-guai.ly: move file back.
10412
10413 2005-05-30  Graham Percival  <gperlist@shaw.ca>
10414
10415         * Documentation/user/advanced.itely, converters.itely,
10416         instrument-notation.itely, lilypond-book.itely: misc small
10417         changes.
10418
10419 2005-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
10420
10421         * lily/lexer.ll: Skip UTF-8 BOM at BOF.
10422
10423         * make/lilypond.fedora.spec.in: Fix source url.
10424
10425         * cygwin: Update from mingw patches.
10426
10427         * scm/editor.scm (editor-command-template-alist): Use jedit
10428         -reuseview (Bertalan), add uedit (Patrick Huberts).
10429
10430         * input/xiao-hai-zi-guai-guai.ly: Rename from
10431         xiao-haizi-guai-guai.ly.
10432
10433         * input/*: Reindent, do not use TAB.
10434
10435         * Documentation/pictures/ly.xpm: Bugfix: do not anti-alias against
10436         white background.
10437
10438 2005-05-29  Jan Nieuwenhuizen  <janneke@gnu.org>
10439
10440         * scm/framework-ps.scm (dump-stencil-as-EPS): Add silly fix for
10441         numerical overflow error.
10442
10443 2005-05-29 Laura Conrad <lconrad@laymusic.org>
10444         
10445         * abc2ly.py: fix to syntax error in multi-part output.
10446
10447 2005-05-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10448
10449         * lily/span-bar.cc (print): sort bar line extents. Fixes problem
10450         with disappearing span bars when alignAboveContext is active
10451
10452         * lily/property-iterator.cc (check_grob): use is-grob?
10453         object-property. Fixes crash-key-sig-font-size.ly. 
10454
10455 2005-05-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10456
10457         * lily/bar-line.cc (print): don't round barlines; this produces
10458         odd aliasing effects in Acroread.
10459
10460         * lily/timing-engraver.cc (process_music): robustness fix.
10461
10462         * lily/context-def.cc (filter_engravers): bugfix.
10463
10464 2005-05-28  Jan Nieuwenhuizen  <janneke@gnu.org>
10465
10466         * lily/lilypond.rc.in: Add ly-icon.
10467
10468         * lily/GNUmakefile: 
10469         * Documentation/pictures/GNUmakefile (OUT_DIST_FILES): Add ly-icon
10470         rules.
10471
10472 2005-05-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10473
10474         * lily/stencil-scheme.cc (LY_DEFINE): ly:stencil-in-color
10475
10476         * ps/music-drawing-routines.ps: 
10477
10478         * scm/output-ps.scm: remove draw ez_ball.
10479
10480         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
10481         EasyNotation context definition.
10482
10483         * lily/easy-notation.cc (brew_ez_stencil): new file. Use
10484         Text_interface and color for making easy note heads.
10485
10486         * lily/stencil.cc (with_color): new function.
10487
10488         * ps/music-drawing-routines.ps: remove draw_zigzag_line
10489
10490         * lily/line-spanner.cc (zigzag_stencil): rewrite to use draw-line
10491         output routine. Zigzag now works in SVG too.
10492
10493         * scm/output-tex.scm (filledbox): idem.
10494
10495         * scm/output-svg.scm (filledbox): idem.
10496
10497         * scm/output-ps.scm (lily-def): remove horizontal-line. 
10498
10499         * lily/lookup.cc (horizontal_line): use draw-line. 
10500
10501         * lily/system-start-delimiter.cc: remove old staff bracket code.
10502
10503         * mf/feta-haak.mf: further tweaks.
10504
10505         * lily/system-start-delimiter.cc (staff_bracket): use glyphs.
10506
10507         * mf/feta-generic.mf: include feta-haak.
10508
10509         * mf/feta-haak.mf: rewrite. Make separate glyphs for the tips 
10510
10511         * scm/framework-ps.scm (write-preamble): only load fonts if their
10512         filename is a string. 
10513
10514 2005-05-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10515
10516         * scm/output-svg.scm (circle): support circle.
10517         (bracket): stub for bracket.
10518
10519         * scripts/lilypond-book.py (main): make sure --psfonts warning is
10520         correct.
10521
10522 2005-05-26  Graham Percival  <gperlist@shaw.ca>
10523
10524         * Documentation/user/lilypond.tely, advanced-notation.itely,
10525         basic-notation.itely, instrument-notation.itely, global.itely,
10526         introduction.itely, tutorial.itely: rearranging, editing,
10527         clean-up.
10528
10529         * mf/GNUmakefile: change a "make -C" to "${MAKE} -C", required
10530         for compiling on FreeBSD.
10531
10532 2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10533
10534         * lily/pfb.cc (LY_DEFINE): progress indication for opening ttf and
10535         otf files.
10536
10537         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly (lower):
10538         bugfixes.
10539
10540         * VERSION: 2.5.26 released.
10541
10542         * scm/titling.scm (marked-up-headfoot): revert Pedro's patch. 
10543
10544 2005-05-25  Pedro Kroger  <kroeger@pedrokroeger.net>
10545
10546         * scm/titling.scm (marked-up-headfoot): doesn't print pagenumbers
10547         if printpagenumber is false.
10548
10549 2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10550
10551         * lily/font-config.cc (init_fontconfig): comment out FontConfig
10552         cache warning.
10553
10554         * lily/tie.cc (print): support dotted ties.
10555         
10556 2005-05-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10557
10558         * scm/define-grobs.scm (all-grob-descriptions): switch off
10559         debugging
10560         (all-grob-descriptions): Arpeggio has Y-extent.
10561
10562         * scm/define-music-properties.scm (all-music-properties): document
10563         length-callback and start-callback as "read-only".
10564
10565         * scm/music-functions.scm (unfold-repeats): rewrite. Cannot set
10566         length-callback after creation. 
10567
10568         * scripts/convert-ly.py (conv): unfoldrepeats -> unfoldRepeats,
10569         compressmusic -> compressMusic.
10570
10571         * ly/music-functions-init.ly (oldaddlyrics): idem.
10572
10573         * lily/parser.yy: NewLyricCombineMusic ->
10574         LyricCombineMusic. LyricCombineMusic -> OldLyricCombineMusic.
10575
10576 2005-05-24  Pedro Kroger  <kroeger@pedrokroeger.net>
10577
10578         * ly/Welcome_to_LilyPond.ly: typo.
10579
10580 2005-05-24  Graham Percival  <gperlist@shaw.ca>
10581
10582         * Documentation/user/lilypond.tely: move changing-defaults to be
10583         before global issues.
10584
10585         * Documentation/user/basic-notation.itely: move Transpose section
10586         here from advanced/Other.
10587
10588         * Documentation/user/changing-defaults.itely,
10589         advanced-notation.itely: move Fonts to advanced, edit.
10590
10591 2005-05-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10592
10593         * lily/parser.yy (bare_int): remove rule.  From now on, we require
10594         # before negative integers.
10595
10596 2005-05-23  Graham Percival  <gperlist@shaw.ca>
10597
10598         * ly/property.ly: Update tieDotted to have the same form as slurDotted.
10599
10600         * Documentation/user/lilypond.tely: change Unified index to
10601         LilyPond index.
10602
10603         * Documentation/user/advanced-notation.itely,
10604         instrument-notation.itely: editing.
10605
10606 2005-05-23  Jan Nieuwenhuizen  <janneke@gnu.org>
10607
10608         * scm/lily.scm (lilypond-all): Bugfix: return failed.
10609
10610         * lily/main.cc (setup_paths)[__MINGW32__]: Normalize LILYPONDPREFIX.
10611
10612 2005-05-21  Jan Nieuwenhuizen  <janneke@gnu.org>
10613
10614         * lily/general-scheme.cc (ly:stderr-redirect): Rename from
10615         ly:port-move.  Needs to be stderr-specific on mingw.
10616         Run fixcc.
10617
10618 2005-05-20  Jan Nieuwenhuizen  <janneke@gnu.org>
10619
10620         * lily/general-scheme.cc (ly:port-move): Remove.
10621
10622         * scm/backend-library.scm (postscript->pdf): Remove -dSAFER in
10623         windows.
10624
10625         * lily/main.cc (setup_paths) [ARGV0_RELOCATION]: Reinstate GS_*
10626         variables.  This eliminates the need for a gs.bat wrapper, which
10627         opens a console.
10628
10629         * scripts/lilypond-invoke-editor.scm (running-from-gui?): 
10630         * scm/lily.scm (running-from-gui?): 
10631         * lily/main.cc[MINGW]: Remove isatty inversion, this is an
10632         artifact of not compiling with -mwindows.
10633
10634         * scm/editor.scm: Define PLATFORM.
10635
10636 2005-05-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10637
10638         * scripts/lilypond-book.py (PREAMBLE_LY): add marker, where people
10639         can start to cut & paste lilypond-book fragments.  
10640
10641         * scm/define-music-types.scm (music-descriptions): remove
10642         UntransposableMusic
10643
10644 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10645
10646         * scm/output-ps.scm (glyph-string): remove / before CIDs.
10647
10648 2005-05-20  Graham Percival  <gperlist@shaw.ca>
10649
10650         * Documentation/user/instrument-notation.itely: remove *Engraver.
10651
10652         * Documentation/user/advanced-notation.itely: edit, rearrange.
10653
10654 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10655
10656         * scm/output-ps.scm (glyph-string): take cid? argument. Use
10657         findresource iso. findfont for CID CFF fonts.
10658
10659         * VERSION (PACKAGE_NAME): release 2.5.25
10660
10661         * ly/Welcome_to_LilyPond.ly: add  \version
10662
10663 2005-05-20  Graham Percival  <gperlist@shaw.ca>
10664
10665         * Documentation/user/programming-interface.itely: move
10666         \displayMusic into its own section.
10667
10668         * Documentation/user/basic-notation.itely: finish editing.
10669
10670 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10671
10672         * flower/file-path.cc (find): don't throw away file_name.dir, but
10673         append to it. Fixes \include with directories.
10674
10675         * flower/include/file-path.hh (class File_path): don't derive from
10676         Array<String>.
10677
10678         * flower/include/file-name.hh (class File_name): remove to_str0()
10679
10680         * lily/hara-kiri-engraver.cc (acknowledge_grob): split
10681         Hara_kiri_engraver in separate file.
10682
10683         * lily/slur-configuration.cc (score_encompass): oops, <? to min()
10684         translation went wrong. Fixes vertically translated slurs.
10685
10686 2005-05-19  Graham Percival  <gperlist@shaw.ca>
10687
10688         * Documentation/user/basic-notaton.itely: editing.
10689
10690 2005-05-18  Graham Percival  <gperlist@shaw.ca>
10691
10692         * Documentation/user/macros.itexi, basic-notation.itely:
10693         add @commonprop (commonly used properties) macro.
10694
10695 2005-05-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10696
10697         * ly/Welcome_to_LilyPond.ly: talk about icon, not program.
10698
10699         * scripts/lilypond-book.py (invokes_lilypond): new function
10700         (main): only run fontextract if invokes_lilypond() is true.
10701
10702         * lily/function-documentation.cc (ly_add_function_documentation):
10703         duh, use !=
10704
10705         * Documentation/topdocs/INSTALL.texi (Top): add MacOS command.
10706
10707         * stepmake/aclocal.m4: remove kpathsea warning, change to OPTIONAL.
10708
10709         * scm/lily.scm (running-from-gui?): lowercase Darwin.
10710
10711         * lily/function-documentation.cc (ly_add_function_documentation):
10712         use scm_hash_table_p() for checking.
10713
10714 2005-05-18  Jan Nieuwenhuizen  <janneke@gnu.org>
10715
10716         * Documentation/user/advanced-notation.itely (Text scripts):
10717         Change nonexisting @internalsref{Text markup} to @ref{Text
10718         markup}.  Change @internalsref{Text script} to
10719         @internalsref{TextScript}.
10720
10721         * lily/main.cc (setup_paths): Bugfix: pangorc is not pango.modules.
10722
10723 2005-05-17  Graham Percival  <gperlist@shaw.ca>
10724
10725         * Documentation/user/tutorial.itely, basic-notation.itely,
10726         changing-defaults.itely: remove duplicate cindex entries
10727         that appear on the same page.
10728
10729         * scm/define-grobs.scm: change default padding for TextSpanner.
10730
10731         * Documentation/topdocs/AUTHORS.texi: update email address.
10732
10733         * Documentation/user/global.itely: add info about \include.
10734
10735 2005-05-17  Jan Nieuwenhuizen  <janneke@gnu.org>
10736
10737         * scm/backend-library.scm (postscript->pdf): Remove (useless) .ps
10738         when running-from-gui.
10739
10740         * scm/editor.scm (get-editor): Add platform defaults.
10741
10742         * scm/backend-library.scm (postscript->pdf): Typo.
10743
10744 2005-05-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10745
10746         * scm/lily.scm (running-from-gui?): Darwin never runs from GUI.
10747
10748         * lily/font-config.cc (init_fontconfig): add warning about cache.
10749
10750 2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
10751
10752         * lily/main.cc (setup_paths)[ARGV0_RELOCATION]: Remove GS_*.
10753
10754 2005-05-16  Mats Bengtsson  <mabe@s3.kth.se>
10755
10756         * lily/horizontal-bracket.cc (print): Take care of the direction
10757         property so brackets above the stave point downwards. 
10758
10759         * scm/define-grobs.scm (all-grob-descriptions): Set staff-padding
10760         for HorizontalBracket so it doesn't end up within the stave.
10761
10762 2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
10763
10764         * lily/GNUmakefile (default): Typo.
10765
10766         * scm/lily.scm (PLATFORM): Export.
10767
10768         * scm/framework-ps.scm (write-preamble)[MINGW]: Use
10769         load-font-via-GS, ttftool or fopencookie is broken on windows.
10770         
10771         * scm/backend-library.scm (postscript->pdf)[MINGW]: Do not use
10772         -dSAFER, that is broken on windows.
10773
10774 2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10775
10776         * lily/GNUmakefile ($(outdir)/FlexLexer.h): conditional dependency
10777         for FlexLexer.h
10778
10779         * scripts/lilypond-invoke-editor.scm: remove stray -
10780
10781 2005-05-15  Jan Nieuwenhuizen  <janneke@gnu.org>
10782
10783         * lily/lily-guile.cc (ly_scm2newstr): Use scm_i_string_length.
10784         Fixes deprecation warning.
10785
10786         * flower/include/string.icc (to_string): Only inline if
10787         -DSTRING_UTILS_INLINED.
10788
10789         * lily/pango-font.cc (pango_item_string_stencil): Normalize file
10790         name.  Remove windows comment.
10791
10792         * scm/editor.scm (slashify): New function.
10793         (get-editor-command): Use it.
10794         (get-command-template): Do not alter editor command if
10795         environment value includes `%(file)s' magic.
10796
10797         * scripts/lilypond-invoke-editor.scm (unquote-uri): New function.
10798         (dissect-uri): Use it.
10799         (unquote-uri): Bugfix.
10800
10801 2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10802
10803         * scm/framework-ps.scm (write-preamble): add TTF rule.
10804
10805         * Documentation/topdocs/README.texi (Top): remove note about
10806         xdelta.
10807
10808         * Documentation/topdocs/INSTALL.texi (Top): remove Flex
10809         requirement.
10810
10811         * stepmake/aclocal.m4: STEPMAKE_FLEXLEXER_LOCATION: new
10812         function. Figure out where FlexLexer.h lives
10813
10814         * lily/GNUmakefile (OUT_DIST_FILES): dist lexer.cc and FlexLexer.h
10815         
10816 2005-05-14  Jan Nieuwenhuizen  <janneke@gnu.org>
10817
10818         * scripts/lilypond-invoke-editor.scm (dissect-uri): Handle URIs
10819         with Windows root in file name.
10820
10821         * scm/backend-library.scm (ly:system): Only redirect output (using
10822         system and shell, ugh) if /dev/null is writable.
10823
10824         * Documentation/pictures/GNUmakefile [PLATFORM_WINDOWS]: Build
10825         windows icon.
10826
10827         * scm/lily.scm (is-absolute?): New function.  Fixes absolute files
10828         on Mingw.
10829
10830         * scm/output-ps.scm (grob-cause): Use it.  Fixes PDF point and
10831         click.
10832
10833         * flower/file-path.cc (is_dir, is_file): New function.  Actually
10834         use result of stat when available.
10835
10836         * flower/file-path.cc (find): Use it.  Refactor.  Fixes Mingw,
10837         absolute file name and root.
10838
10839         * scm/lily.scm (PLATFORM): On mingw, slashify getcwd.
10840
10841         * scm/editor.scm (get-editor-command): Typo: do not apply editor.
10842
10843         * flower/file-name.cc (slashify): Bugfix, do substitute if no
10844         slashes in file name.
10845
10846 2005-05-13  Jan Nieuwenhuizen  <janneke@gnu.org>
10847
10848         * Documentation/user/preface.itely (Preface): Run
10849         texinfo-all-menus-update.
10850
10851         * scm/editor.scm (get-editor-command): Bugfix: allow full
10852         LYEDITOR setting, partial XEDITOR setting.  With typo fix.
10853
10854         * Documentation/pictures/lilypond-48.xpm: New file.
10855
10856         * flower/file-path.cc (to_string): Bugfix: use PATHSEP.
10857
10858         * ly/Welcome_to_LilyPond.ly: New file.
10859
10860         * lily/main.cc (main): Only identify if we have a terminal.
10861
10862         * scm/backend-library.scm (postscript->png)
10863         (postscript->pdf): Fix file name quoting for GS/MINGW (ie,
10864         non-/bin/sh).
10865
10866 2005-05-13  Heikki Junes  <hjunes@cc.hut.fi>
10867
10868         * Documentation/topdocs/AUTHORS.texi: polish, update.
10869
10870 2005-05-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10871
10872         * Documentation/user/preface.itely (Notes for version 2.6): new
10873         notes for 2.6
10874
10875         * lily/dynamic-engraver.cc (stop_translation_timestep): first set
10876         finished_span_, then call typeset_all(). Fixes spurious "Hairpin
10877         is not fully contained" warnings.
10878
10879         * lily/slur-scoring.cc (get_bound_info): remove warning.
10880
10881         * lily/staff-symbol-engraver.cc (process_music): start initial
10882         spanner in process_music(). This fixes overrides of StaffSymbol
10883         properties.
10884
10885         * scm/framework-pdf.scm (Module): remove.
10886
10887         * Documentation/topdocs/AUTHORS.texi (AUTHORS): clean up, update.
10888
10889         * lily/ambitus-engraver.cc: formatting cleanups.
10890
10891         * mf/feta-solfa.mf (Module): remove.
10892
10893         * ChangeLog: more details about contributions.
10894
10895 2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10896
10897         * lily/align-interface.cc (align_elements_to_extents): warn if
10898         called too early. Fixes: disappearing-staff-lines.ly
10899
10900         * VERSION (PACKAGE_NAME): release 2.5.24
10901
10902 2005-05-12  Jan Nieuwenhuizen  <janneke@gnu.org>
10903
10904         * stepmake/aclocal.m4: Typo.
10905
10906         * flower/string.cc (substitute): Take two strings or two
10907         characters.  Update callers.
10908
10909 2005-05-11  Jan Nieuwenhuizen  <janneke@gnu.org>
10910
10911         * flower/file-name.cc (File_name): Slashify.
10912
10913         * scm/lily.scm: Use gui-main iso lilypond-main on MINGW.
10914
10915         * scripts/GNUmakefile (SEXECUTABLES): Add lilypond-invoke-editor.
10916
10917         * stepmake/aclocal.m4 (STEPMAKE_WINDOWS): New function.
10918
10919         * configure.in (gui_b): Use it.
10920
10921         * lily/lilypond.rc.in: New file.
10922
10923         * lily/GNUmakefile[PLATFROM_WINDOWS]: Compile it into executable.
10924
10925 2005-05-12  Graham Percival  <gperlist@shaw.ca>
10926
10927         * Documentation/user/advanced-notation.itely: edit of Text
10928         section; clarify text scripts vs. text markup.
10929
10930 2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10931
10932         * lily/multi-measure-rest-engraver.cc
10933         (Multi_measure_rest_engraver): init bar_seen_ to true. Notice
10934         separation items on start. Fixes mm rests in start of score.
10935
10936         * lily/slur-scoring.cc (move_away_from_staffline): robustness,
10937         don't access StaffSymbol if not there.
10938         Fixes: crash-staff-symbol-engraver.ly.
10939
10940         * lily/instrument-name-engraver.cc (class
10941         Instrument_name_engraver): data member first_. Create
10942         InstrumentName on start. 
10943
10944 2005-05-12  Graham Percival  <gperlist@shaw.ca>
10945
10946         * Documentation/user/instrument-notation.itely: add guitar
10947         position.
10948
10949         * Documentation/user/introduction.itely,
10950         Documentation/user/lilypond.tely,
10951         Documentation/user/tutorial.itely: begin pruning
10952         unused (duplicated) cindex entries and misc cleanup.
10953
10954 2005-05-12  Mats Bengtsson  <mabe@s3.kth.se>
10955
10956         * input/test/volta-chord-names.ly: Bring the explanation up to
10957         date.
10958
10959 2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
10960
10961         * Documentation/topdocs/{AUTHORS.texi,INSTALL.texi,README.texi}:
10962         Specify `@documentencoding utf-8' for html, ignore warnings.
10963
10964 2005-05-11  Erik Sandberg  <ersa9195@student.uu.se>
10965
10966         * THANKS: Added bughunters.
10967
10968 2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
10969
10970         * lily/main.cc: update help string for `lilypond -H'.
10971
10972         * po/fi.po: update.
10973         
10974 2005-05-10  Graham Percival  <gperlist@shaw.ca>
10975
10976         * Documentation/user/advanced-notation.itely: minor fixes.
10977
10978 2005-05-10  Jan Nieuwenhuizen  <janneke@gnu.org>
10979
10980         * scm/editor.scm: New module.
10981
10982         * scm/lily.scm (gui-main): Use it.
10983
10984         * scm/framework-gnome.scm (spawn-editor): Use it.
10985
10986         * scripts/lilypond-invoke-editor.scm: Use it in new script.
10987
10988 2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10989
10990         * scm/framework-ps.scm (load-font-via-GS):  new function.
10991
10992         * lily/pango-font.cc (pango_item_string_stencil): add support for
10993         CID keyed font.
10994
10995         * scm/output-ps.scm (glyph-string): add support for CID keyed font.
10996
10997 2005-05-10  Graham Percival  <gperlist@shaw.ca>
10998
10999         * Documentation/user/basic-notation.itely: add @ref.
11000
11001         * Documentation/user/advanced-notation.itely: add example
11002         of 5/8 beaming.
11003
11004 2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11005
11006         * scripts/lilypond-pdfpc-helper.py (ly_pc_editor): robustness fixes.
11007
11008         * scm/backend-library.scm (postscript->pdf): Invoke gs instead of
11009         going through ps2pdf wrappers.
11010
11011 2005-05-09  Jürgen Reuter  <reuter@ipd.uka.de>
11012
11013         * Documentation/user/instrument-notation.itely: petrucci note
11014         heads: updated docu
11015
11016         * input/regression/note-head-style.ly: updated regression test;
11017         indentation fixes
11018
11019         * ly/engraver-init.ly: MensuralVoiceContext: use petrucci note
11020         heads as default
11021
11022         * mf/parmesan-heads.mf: minor editing; use musicological names
11023         (rather than optical description) as note head names
11024
11025         * scm/output-lib.scm: complete petrucci heads
11026
11027 2005-05-09  Pal Benko  <benkop@freestart.hu>
11028
11029         * mf/parmesan-heads.mf: add petrucci heads (like neo-mensural
11030         heads, but bigger)
11031
11032 2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
11033
11034         * lily/main.cc (main_with_guile): Remove no files check.
11035
11036         * lily/main.cc (ly:usage): Export to Scheme.
11037
11038         * scm/lily.scm (no-files-handler): New function.
11039
11040         * scm/lily.scm (lilypond-main): Use it.
11041
11042         * configure.in (gui_b): Add mbrtowc checking.
11043         Resurrect [utf8/]wchar.h checking.
11044
11045 2005-05-09  Mats Bengtsson  <mabe@s3.kth.se>
11046
11047         * Documentation/user/advanced-notation.itely (Metronome marks):
11048         Add link to the program reference for MetronomeMark
11049
11050         * Documentation/user/lilypond-book.itely (An example of a
11051         musicological document): Correct the example using psfonts 
11052
11053 2005-05-09  Heikki Junes  <hjunes@cc.hut.fi>
11054
11055         * po/fi.po: update after a lesson how to update entries against
11056         source.
11057         
11058         * po/TODO: document the lesson.
11059
11060 2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11061
11062         * configure.in (gui_b): remove wcrtomb checking.
11063
11064         * lily/general-scheme.cc (LY_DEFINE): hand-convert utf8 to 32
11065         bits. Patch by Matthias Neeracher. <neeracher@mac.com>
11066
11067 2005-05-09  Mats Bengtsson  <mabe@s3.kth.se>
11068
11069         * scripts/convert-ly.py: In the conversion to version 1.9.0, 
11070         keep Scheme expressions and strings unmodified when doing the
11071         conversion to postfix notation for slurs and beams. Should
11072         hopefully solve most related conversion problems. 
11073
11074         * Documentation/user/lilypond-book.itely : Clarify and correct how
11075         to call dvips with -h psfonts.
11076
11077 2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
11078
11079         * Documentation/user/instrument-notation.itely (Entering lyrics):
11080         Typo.  Fixes build.
11081
11082 2005-05-09  Graham Percival  <gperlist@shaw.ca>
11083
11084         * Documentation/user/lilypond-book.itely: document PSFONTS file.
11085
11086         * Documentation/user/lilypond.tely, lilypond-book.itely,
11087         tutorial.itely: change references to 2.5.x to 2.6.x.
11088
11089         * Documentation/user/instrument-notation.itely: clarified \addlyrics
11090         vs \lyricmode.
11091
11092         * Documentation/user/invoking.itely: remove old info about
11093         lilypond-profile.
11094
11095         * Documentation/topdocs/INSTALL.texi: remove old info about
11096         lilypond-profile, add warning about needing international fonts
11097         to build docs.
11098
11099 2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11100
11101         * lily/include/grob-info.hh (class Grob_info): make data member
11102         private. Changes throughout.
11103
11104         * input/regression/alignment-order.ly: new file. 
11105
11106         * lily/vertical-align-engraver.cc (acknowledge_grob): read
11107         alignAboveContext and alignBelowContext
11108
11109 2005-05-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11110
11111         * lily/pfb.cc (LY_DEFINE): add cast.
11112
11113         * scm/framework-ps.scm (write-preamble): embed CFFs if file name
11114         matches .otf
11115         (write-preamble): warn about unknown fonts.
11116
11117         * lily/pfb.cc (Module): new function ly:otf->cff
11118
11119         * lily/open-type-font.cc (get_otf_table): use ::get_otf_table
11120         (get_otf_table): new function.
11121
11122 2005-05-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11123
11124         * scm/backend-library.scm (postscript->png): call lilypond-ps2png
11125         iso. ps2png.
11126
11127 2005-05-06  Heikki Junes  <hjunes@cc.hut.fi>
11128
11129         * po/fi.po: apply second round of update.
11130
11131 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11132
11133         * scm/x11-color.scm (make-x11-color-handler): don't use
11134         #\sp. Apparently doesn't work on all platforms. 
11135
11136 2005-05-06  Graham Percival  <gperlist@shaw.ca>
11137
11138         * Documentation/user/advanced-notation.itely, putting.itely,
11139         tutorial.itely, global.itely, introduction.itely: really minor fixes.
11140
11141 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11142
11143         * VERSION (PACKAGE_NAME): release 2.5.23
11144
11145 2005-05-06  Jan Nieuwenhuizen  <janneke@gnu.org>
11146
11147         * Documentation/topdocs/AUTHORS.texi: Remove texinfo @accents,
11148         convert to utf-8.
11149
11150         * THANKS: Add translators for this release, convert to utf-8.
11151
11152         * mf/GNUmakefile (MFTRACE_FLAGS):
11153         * buildscripts/substitute-encoding.py (outdir): Build fix: pass
11154         outdir as option (WAS: hardcoded).
11155
11156 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11157
11158         * lily/staff-symbol-engraver.cc (Staff_symbol_engraver): init
11159         finished_span_
11160
11161         * THANKS: add Hans Forbrich.
11162
11163         * Documentation/topdocs/NEWS.tely (Top): document new feature.
11164
11165         * Documentation/user/basic-notation.itely (Staff symbol): document
11166         start/stop staff. Reference to ossia.ly
11167
11168         * input/test/ossia.ly: new example using stop and startStaff.
11169
11170         * lily/timing-engraver.cc: remove Timing_engraver::initialize(),
11171         in other words, don't create "|" barline at start of the score.
11172         (start_translation_timestep): don't set whichBar for start of score.
11173
11174         * input/regression/staff-halfway.ly: use new functionality.
11175
11176         * lily/staff-symbol-engraver.cc (try_music): take StaffSpanEvents,
11177         start and stop staff based on events.
11178
11179         * scm/define-music-types.scm (music-descriptions): add StaffSpanEvent
11180
11181         * ly/declarations-init.ly (startStaff, stopStaff): new identifiers.
11182
11183 2005-05-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11184
11185         * Documentation/user/programming-interface.itely (How markups work
11186         internally ): remove \encoding reference.
11187
11188 2005-05-04  Mats Bengtsson  <mabe@s3.kth.se>
11189
11190         * scripts/convert-ly.py: Attempt to do a smarter update of 
11191         text markups from versions < 1.9.0 with arbitrary nesting.
11192
11193 2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
11194
11195         * po/fi.po: convert to utf-8, and update.
11196
11197 2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11198
11199         * make/lilypond.suse.spec.in: update from suse 2.4 package.
11200
11201         * lily/*.cc: more <? >? to min/max changes
11202
11203         * lily/include/interpretation-context-handle.hh: rename
11204         Interpretation_context_handle to Context_handle.
11205
11206 2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
11207
11208         * input/regression/GNUmakefile (local_delete): use `find` together 
11209         with `xargs` to avoid too long argument-lists in cmd line.
11210
11211 2005-05-04  Graham Percival  <gperlist@shaw.ca>
11212
11213         * Documentation/user/introduction.itely: updates "About this manual".
11214
11215         * Documentation/user/advanced-notation.itely,
11216         invoking.itely: minor fixes.
11217
11218 2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11219
11220         * COPYING: add font exception. Update FSF address. 
11221
11222         * lily/context-def.cc (path_to_acceptable_context): bugfix, depth
11223         should be taken without child context.
11224
11225         * ly/chord-modifiers-init.ly (blackTriangleMarkup): use it.
11226
11227         * scm/define-markup-commands.scm (triangle): new command, as
11228         robust replacement for unicode Delta/Triangle.
11229
11230 2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11231
11232         * ps/music-drawing-routines.ps: add fillp argument.
11233
11234         * lily/lookup.cc (round_filled_polygon): polygon takes filled? argument
11235
11236         * lily/font-config.cc (init_fontconfig): don't add cff/
11237
11238         * VERSION (PACKAGE_NAME): release 2.5.22
11239
11240         * mf/GNUmakefile: remove cff/cff.ps/.map install rules.
11241
11242         * lily/grace-engraver.cc (consider_change_grace_settings): use
11243         is_alias(). Fixes problem with CueVoice grace notes. 
11244
11245         * lily/simultaneous-music-iterator.cc (construct_children): call
11246         Music_iterator::quit() for iterators that start out invalid. This
11247         fixes indefinitely continuing contexts.
11248
11249         * buildscripts/substitute-encoding.py: new file
11250
11251         * Documentation/user/basic-notation.itely (Basic polyphony): fix
11252         missing @end 
11253
11254         * scripts/lilypond-book.py (write_if_updated): print file name.
11255
11256         * Documentation/user/basic-notation.itely (Explicitly
11257         instantiating voices): idem.
11258
11259         * Documentation/user/advanced-notation.itely (Text spanners):
11260         remove stray { } 
11261
11262         * lily/context.cc (default_child_context_name): the default child
11263         is now first in accepts_list_.
11264
11265         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
11266         \defaultchild to all relevant contexts.  This fixes:
11267         drums-pitch.ly.
11268
11269         (Probably also fixes similar problems with ancient
11270         transcriptions getting CueVoices instead of the desired voices.)
11271  
11272         * lily/context-def.cc (get_default_child): new function.
11273         (get_accepted): place default child in front of list.
11274
11275         * lily/parser.yy (FIXME): add DEFAULTCHILD token.
11276
11277         * lily/include/context-def.hh (struct Context_def): add
11278         default_accept_
11279
11280 2005-05-03  Graham Percival  <gperlist@shaw.ca>
11281
11282         * scm/define-grobs.scm: remove "remove-first" line, since
11283         the absent property is set to #f anyway.
11284
11285         * Documentation/user/basic-notation.itely,
11286         advanced-notation.itely, instrument-notation.itely: minor
11287         fixes.
11288
11289         * ly/property-init.ly: add textSpanner{Up,Down,Neutral}.
11290
11291         * Documentation/user/advanced-notation.itely,
11292         changing-defaults.itely: consolidate Text stuff in
11293         advanced notation.
11294
11295         * Documentation/user/global.itely: better docs for \header.
11296
11297         * Documentation/user/putting.itely: new chapter; placeholder
11298         for future expansion.
11299
11300         * Documentation/user/examples.itely: moved "suggestions for
11301         writing LP files" section into putting.itely.
11302
11303         * Documentation/user/lilypond.itely: added new chapter,
11304         fixed the short table of contents.
11305
11306 2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11307
11308         * lily/beam-quanting.cc (quanting): robustness fix, don't produce
11309         infinity for unfeasible beams.
11310
11311         * make/lilypond.fedora.spec.in (Group): idem.
11312
11313         * scripts/GNUmakefile (SEXECUTABLES): rename ps2png to lilypond-ps2png
11314
11315         * mf/GNUmakefile (ALL_GEN_FILES): remove .map
11316
11317         * scm/framework-ps.scm (write-preamble): extract CFF from OTF
11318         fonts directly.
11319
11320         * buildscripts/gen-emmentaler-scripts.py (i): idem.
11321
11322         * mf/GNUmakefile: remove all CFF rules.
11323
11324         * scm/framework-ps.scm (ps-embed-cff): reinstate.
11325
11326         * lily/open-type-font-scheme.cc (LY_DEFINE):
11327         new function ly:otf-font-table-data.
11328         (LY_DEFINE): new function otf-font?
11329
11330 2005-05-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11331
11332         * mf/GNUmakefile ($(outdir)/lilypond.map): remove rule.
11333         ($(outdir)/Fontmap.lily): idem.
11334
11335         * buildscripts/gen-emmentaler-scripts.py (i): load fetaXX encoding
11336         for PFAEmmentaler-XXX.pfa. 
11337
11338         * Documentation/user/music-glossary.tely (accidental): NL
11339         translation of accidental.
11340
11341 2005-05-02  Jan Nieuwenhuizen  <janneke@gnu.org>
11342
11343         * flower/include/international.hh: Bugfix: include "string.hh".
11344
11345         * lily/include/mingw-compatibility.hh: New file.
11346
11347         * flower/include/libc-extension.hh (memrev): Rename from strrev.
11348
11349         * configure.in: Search for mingw wcrtomb library.
11350
11351 2005-05-02  Mats Bengtsson  <mabe@s3.kth.se>
11352
11353         * scripts/convert-ly.py: Bug fix
11354
11355         * Documentation/user/changing-defaults.itely (Common tweaks):
11356         Added example where the context has to be specified explicitly
11357         (MetronomeMark). 
11358
11359 2005-05-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11360
11361         * scripts/lilypond-book.py (ly_options): set timing to #f for
11362         notime option.
11363
11364         * scripts/convert-ly.py (conv): typo.
11365
11366         * flower/*.cc: remove <? and >?
11367         
11368         * lily/*.cc: remove <? and >?
11369
11370         * lily/tweak-registration.cc (insert_tweak_from_file): Make sure
11371         that 0x0 isn't passed into scm_cons(). Fixes crash with tweak
11372         editor.
11373
11374 2005-04-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11375
11376         * lily/part-combine-engraver.cc: add space to variable list.
11377
11378 2005-04-30  Graham Percival  <gperlist@shaw.ca>
11379
11380         * scm/define-grobs.scm: changed RemoveEmptyVerticalGroup's
11381         remove-first to false (matches docs)
11382
11383         * Documentation/user/advanced-notation.itely: corrected docs
11384         concerning remove-first.
11385
11386 2005-04-29  Mats Bengtsson  <mabe@s3.kth.se>
11387
11388         * lily/part-combine-engraver.cc: make sure that the relevant
11389         properties are included in the documentation.
11390
11391 2005-04-28  Graham Percival  <gperlist@shaw.ca>
11392
11393         * Documentation/user/lilypond-book.itely: Bernard's docs
11394         for \betweenLilyPondSystem.
11395
11396 2005-04-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11397
11398         * Documentation/topdocs/INSTALL.texi (Top): remove TeX outdated
11399         remarks.
11400
11401 2005-04-28  Pal Benko  <benkop@freestart.hu>
11402
11403         * lily/mensural-ligature.cc (brew_flexa): apply thickness property
11404         only on vertical lines of flexa shape, and use a constant
11405         thickness value for horizontal lines (patch slightly modified by
11406         Jürgen Reuter)
11407
11408         * lily/include/mensural-ligature.hh: make 2 comments clearer
11409
11410 2005-04-28  Jürgen Reuter  <reuter@ipd.uka.de>
11411
11412         * lily/vaticana-ligature-engraver.cc (need_extra_space): renamed
11413         to need_extra_horizontal_space; bugfix: use class scope to avoid
11414         global namespace pollution
11415
11416         * Documentation/user/instrument-notation.itely (ligatures): added
11417         comment on possible future syntax change and how to work around
11418
11419         * lily/vaticana-ligature-engraver.cc, mf/parmesan-heads.mf
11420         (epiphonus, cephalicus): fine-tune shape of plica head for narrow
11421         intervals (fixes agnus dei example)
11422
11423         * Documentation/user/instrument-notation.itely (white mensural
11424         ligatures): selected a more illustrative example
11425
11426 2005-04-28  Heikki Junes <hjunes@cc.hut.fi>
11427
11428         * Documentation/index.html.in: specify utf-8 charset in meta content.
11429
11430 2005-04-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11431
11432         * python/lilylib.py (make_ps_images): bugfixes; GS can produce
11433         empty 2nd page for single page.
11434
11435         * scm/lily.scm: remove p&c definitions.
11436
11437         * po/zh_TW.po (Module): new translation.
11438
11439         * lily/lily-guile.cc (ly_chain_assoc): remove.
11440
11441         * lily/general-scheme.cc (LY_DEFINE): export ly:chain_assoc_get
11442         (LY_DEFINE): recurse, iso. calling ly_chain_assoc.
11443
11444 2005-04-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11445
11446         * lily/beaming-info.cc: remove infinity_i
11447
11448         * scripts/abc2ly.py (out_filename): fix thinko with \version.
11449
11450 2005-04-26  Graham Percival  <gperlist@shaw.ca>
11451
11452         * Documentation/user/basic-notation.itely,
11453         instrument-notation.itely, advanced-notation.itely,
11454         changing-defaults.itely: minor fixes.  Added docs
11455         for colors to advanced-notation.itely.
11456
11457         * Documentation/user/advanced-notation.itely: fixed compile
11458         problem and added Bernard's x11-color doc patch.
11459
11460 2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
11461
11462         * scm/output-ps.scm (grob-cause): Yet another fix, hope it's
11463         alright this time round.
11464
11465 2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11466
11467         * Documentation/topdocs/INSTALL.texi (Top): idem.
11468
11469         * Documentation/topdocs/README.texi (Top): remove clean-fonts refs.
11470
11471         * VERSION (MAJOR_VERSION): release 2.5.21
11472
11473         * scm/output-ps.scm (grob-cause): bugfix.
11474
11475 2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
11476
11477         * cygwin/*: Update.
11478
11479         * cygwin/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Remove profile
11480         stuff.
11481
11482         * scm/output-ps.scm (grob-cause): Bugfix.
11483
11484         * scm/lily.scm (ly:load): Remove x11-color.
11485
11486         * stepmake/aclocal.m4 (STEPMAKE_GET_EXECUTABLE): Bugfix: do not
11487         quote executable, fixes getting version from program --with
11488         --options.
11489         (STEPMAKE_KPATHSEA): Bugfix for Cygwin cross building: use
11490         $ac_exeect.
11491
11492         * Documentation/user/GNUmakefile: Only build music-glossary with
11493         rendered lilypond snippets during web.
11494
11495 2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11496
11497         * po/de.po: update.
11498
11499         * lily/GNUmakefile (OUT_DIST_FILES): don't dist lexer.cc
11500
11501 2005-04-22  Laura Conrad <lconrad@laymusic.org>
11502  
11503         * scripts/abc2ly:
11504         second title line append with punctuation dash character;
11505         encode abc2ly python strings in utf-8
11506        
11507 2005-04-21  Laura Conrad <lconrad@laymusic.org>
11508
11509         * scripts/abc2ly fix chords (again)
11510  
11511 2005-04-22  Bernard Hurley  <bernard@fong-hurley.org.uk>
11512
11513         * scm/x11-color.scm: new file
11514         All x11 color names can be accessed with:
11515         #(x11-color 'ColorName),
11516         #(x11-color "ColorName") or:
11517         #(x11-color "color name")
11518         If the x11 color name is not recognised then it defaults
11519         to black
11520
11521         * scm/lily.scm: amended to call scm/x11-color.scm
11522
11523 2005-04-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11524
11525         * Documentation/user/invoking.itely (Reporting bugs): comment out
11526         reference to online PNG bug repository.
11527
11528 2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
11529
11530         * lily/translator-scheme.cc (ly:translator-property): Remove.
11531         Update callers.
11532
11533         * lily/context-scheme.cc (ly:context-now): Move from translator.
11534         Update callers.
11535
11536 2005-04-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11537
11538         * input/regression/grid-lines.ly (skips): refine example.
11539
11540         * scm/define-context-properties.scm
11541         (all-user-translation-properties): doc autoBeamCheck
11542
11543         * input/regression/grid-lines.ly (Module): new file.
11544
11545         * lily/grid-point-engraver.cc (Module): new file.
11546
11547         * lily/grid-line.cc (Module): new file.
11548
11549         * lily/grid-line-span-engraver.cc (Module): new file.
11550
11551         * lily/grid-line-interface.cc (Module): new file.
11552
11553 2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
11554
11555         * scm/auto-beam.scm (revert-property-setting): Bugfixes: add
11556         missing parameter, actualy cdr through list.  Actually return a
11557         list with ENTRY removed (was '()).
11558
11559         * scripts/convert-ly.py: Update.  Print warning if file cannot be
11560         opened.
11561         (do_conversion): Fix printing of continuation comma.
11562
11563         * Documentation/user/advanced-notation.itely (Beam formatting):
11564         Remove refbugs about compound time and mixed duration.
11565
11566         * scm/auto-beam.scm (default-auto-beam-settings): Write out all
11567         modulo moments explicitely.
11568
11569         * lily/moment.cc (operator %): New function.
11570
11571         * lily/moment-scheme.cc (ly:mod-moment): Wrap it.
11572
11573         * lily/translator-scheme.cc (ly:translator-now,
11574         ly:translator-property): New function.
11575
11576         * scm/auto-beam.scm (default-auto-beam-check): New function.
11577
11578         * lily/auto-beam-engraver.cc (test_moment): Use it.
11579
11580         * flower/rational.cc (operator %): Bugfix.
11581
11582 2005-04-21  Erik Sandberg  <ersa9195@student.uu.se>
11583
11584         * scripts/abc2ly: Bugfix
11585
11586 2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11587
11588         * python/fontextract.py (write_extracted_fonts): bugfix, too many
11589         %'s on EndFont comment.
11590
11591         * lily/ledger-line-spanner.cc: some more words of explanation.
11592
11593 2005-04-20  John Williams <williams@tni.com>  
11594         
11595         * scripts/lilypond-book.py: htmlquote bugfix.
11596         Allow snippets to be given distinct filenames.
11597         Allow the default alt text to be overridden.
11598
11599 2005-04-20  Erik Sandberg  <ersa9195@student.uu.se>
11600
11601         * ly/performer-init.ly: Bugfix
11602
11603         * THANKS: Added bughunters.
11604
11605 2005-04-20  Jan Nieuwenhuizen  <janneke@gnu.org>
11606
11607         * SConstruct (test_lib): Bump mftrace requirement to 1.1.9.
11608
11609         * lily/auto-beam-engraver.cc (test_moment): Test exact measure
11610         position (was: use modulo measure length).
11611
11612         * configure.in (no gui_b): Remove optional gtk+ requirement.
11613
11614 2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11615
11616         * Documentation/user/basic-notation.itely (Pitches): add
11617         LedgerLineSpanner.
11618
11619         * lily/dynamic-engraver.cc (process_music): set right bound to
11620         script if present. Else, do not set.
11621         (acknowledge_grob): only set right bound of finished spanner to
11622         note column if no other bound is set.
11623
11624         * python/lilylib.py (make_ps_images): switch back to png16m.
11625         
11626 2005-04-19  Jan Nieuwenhuizen  <janneke@gnu.org>
11627
11628         * scripts/lilypond-book.py (write_if_updated): Bugfix for not
11629         writing up to date file.  Add dvips usage suggestion.
11630
11631         * scripts/convert-ly.py: Fix error message.
11632         Print usage if no files on command line.
11633         (usage): Add example usage.
11634
11635         * input/test/compound-time.ly: New file.
11636
11637         * input/test/circle.ly: New file.
11638
11639         * Documentation/topdocs/NEWS.tely: Use them.
11640
11641         * input/test/boxed-stencil.ly: Remove \score.
11642
11643         * buildscripts/mf-to-table.py (base): Add .log dependency.
11644
11645         * mf/GNUmakefile: Add PFAemmentaler and PFAaybabtu dependencies on
11646         pfa's.  Add .log dependency
11647
11648         * scm/define-markup-commands.scm (lower): New command.
11649
11650         * elisp/lilypond-mode.el (LilyPond-pdf-command): New command,
11651         make it default.
11652
11653 2005-04-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11654
11655         * lily/dynamic-engraver.cc (acknowledge_grob): add note-column
11656         also to finished cresc as right bound. This fixes:
11657         skip-string-decresc.ly
11658
11659         * lily/slur-scoring.cc (get_bound_info): robustness: substitute
11660         relative_coordinate if extent is empty.
11661
11662         * lily/stem.cc (width_callback): determine correct extent if flag
11663         is not there. This fixes slur-no-flag.ly
11664
11665         * lily/grace-engraver.cc (consider_change_grace_settings): new
11666         function.
11667         (initialize): also consider_change_grace_settings() on
11668         initialization. Fixes large grace notes at start of score.
11669
11670         * lily/break-align-interface.cc (do_alignment): don't translate if
11671         total_extent is empty.
11672
11673         * buildscripts/lilypond-{login,profile}.sh (Module): remove file.
11674
11675 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11676
11677         * scm/output-ps.scm (grob-cause): don't add cwd if path starts
11678         with slash.
11679
11680 2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
11681
11682         * stepmake/aclocal.m4: Remove tfm_path.
11683
11684 2005-04-18  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11685
11686         * scm/music-functions.scm (markup-expression->make-markup): fix
11687         bug with cons arguments of markup commands.
11688         (music->make-music): fix music expression property list building
11689
11690 2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
11691
11692         * aclocal.m4: Massage package names.
11693
11694         * SCons updates.
11695
11696 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11697
11698         * VERSION (PACKAGE_NAME): release 2.5.20
11699
11700         * lily/stem.cc (calc_stem_info): add minimum Y extent of
11701         stem-tremolo.  Fixes: bugs/tremolo-stem-length-beamed
11702
11703         * lily/percent-repeat-engraver.cc (try_music): add measure before
11704         next_moment to future processing moment. Fixes:
11705         percent-repeat-mm-rest.ly
11706         (process_music): don't add moment for 2nd time.
11707
11708         * input/regression/repeat-percent.ly: add mmrests as extra test.
11709
11710         * lily/axis-group-engraver.cc (acknowledge_grob): read
11711         keepAliveInterfaces to decide what to kill.
11712
11713         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add
11714         percent-repeat-interface to keepAliveInterfaces. This fixes
11715         percent-repeat-harakiri.
11716
11717 2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
11718
11719         * SCons updates.
11720
11721 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11722
11723         * config.make.in (TTFTOOL_ENDIAN): rm TFM_PATH
11724
11725         * aclocal.m4: remove --enable-tfm-path configure option
11726
11727         * input/test/ancient-font.ly (lowerStaff): clef name errors.
11728
11729         * scm/backend-library.scm (postscript->png): newline after
11730         finishing command.
11731
11732         * lily/paper-score-scheme.cc (LY_DEFINE): new file.
11733         (LY_DEFINE): ly:paper-score-paper-systems: new function 
11734
11735         * lily/score-scheme.cc (LY_DEFINE): require music argument. 
11736
11737         * lily/score.cc (default_rendering): use Music_output too.
11738
11739         * input/test/chord-names-languages.ly (Module): rename file.
11740
11741         * lily/text-spanner.cc: add bound-padding.
11742
11743         * lily/paper-book.cc (systems): accept Paper_score
11744         iso. Paper_system vector. 
11745
11746         * input/regression/line-arrows.ly: new file.
11747
11748         * lily/paper-score.cc (process): run get_paper_systems() only once.
11749
11750         * lily/line-spanner.cc (line_stencil): add arrows.
11751
11752 2005-04-18  Jonatan Liljedahl  <lijon@kymatica.com>
11753
11754         * lily/line-interface.cc (make_arrow): new function. 
11755         (arrows): idem.
11756
11757 2005-04-18  Mathieu Giraud  <magiraud@free.fr>
11758
11759         * input/test/chord-names-german.ly: update for italian/french
11760         chords.
11761         
11762         * Documentation/user/instrument-notation.itely (Printing chord
11763         names): update.
11764
11765 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11766
11767         * lily/include/paper-score.hh (class Paper_score): remove unused
11768         prototypes.
11769
11770         * lily/book.cc (process): add -COUNT to midi output.
11771
11772         * lily/score.cc (book_rendering): remove outname argument
11773         (book_rendering): return list of Music_outputs. 
11774
11775         * lily/global-context-scheme.cc (LY_DEFINE): remove outname argument.
11776
11777         * lily/book.cc (process): loop over Music_outputs returned from
11778         Score::book_rendering().
11779
11780         * lily/*.cc (width_callback): remove spurious "unused" warnings
11781         for assert (axis==[XY]_AXIS); 
11782
11783         * lily/include/music-output.hh (class Music_output): smobify class.
11784
11785         * lily/include/paper-score.hh (class Paper_score): make members
11786         private.
11787
11788         * lily/performance.cc (process): return #f iso. #<undefined>. This
11789         prevents #<undefined> leaking into GUILE-userspace.
11790
11791 2005-04-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11792
11793         * config.hh.in: remove HAVE_PANGO_FC_FONT_MAP_ADD_DECODER_FIND_FUNC.
11794
11795 2005-04-17  Mathieu Giraud  <magiraud@free.fr>
11796
11797         * scm/chord-name.scm : support for italian and french
11798         chords names.
11799
11800         * scm/chord-ignatzek-names.scm (ignatzek-chord-names): add
11801         a space defined by chordPrefixSpacer when the root name is
11802         direclty followed by a prefix.
11803
11804         * ly/engraver-init.ly : chordPrefixSpacer       
11805         * scm/define-context-properties.scm : chordPrefixSpacer
11806         * ly/property-init.ly : italianChords, frenchChords 
11807
11808 2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
11809
11810         * mf/feta-din.mf: Remove.
11811
11812         * mf/GNUmakefile (fontdir): Bugfix.
11813
11814         * mf/SConstruct: Some updates.
11815
11816         * SConstruct: Require pkg-config.
11817         (test_program): Bugfix for double digit version compares, use
11818         integer (not string-) compare.
11819         Optionally require gs 8.14.
11820
11821         * stepmake/aclocal.m4 (STEPMAKE_PANGO_FT2): Define HAVE_PANGO16 too.
11822
11823         * lily/*: s/ifdef HAVE_*/if have/.
11824
11825         * SConstruct (test_lib): New function.  Update pkg-config and some
11826         other requirements.
11827
11828         * configure.in: Require pkg-config.  Enforce REQUIRE and version for
11829         freetype, pangof2t.
11830
11831 2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
11832
11833         * po/lilypond.pot, ...: Update using bison-CVS.
11834
11835         * python/lilylib.py (make_ps_images): Fixo.
11836
11837 2005-04-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11838
11839         * python/lilylib.py (make_ps_images): typo.
11840
11841         * configure.in (gui_b): make bison optional.
11842
11843         * lily/GNUmakefile (OUT_DIST_FILES): dist parser and lexer.
11844
11845 2005-04-16  Bernard Hurley  <bernard@fong-hurley.org.uk>
11846
11847         * framework-eps.scm: code added so that a macro \betweenLilyPondSystem
11848         with one parameter can be defined in a LaTeX file when processed
11849         by lilypond-book this will be evaluated between the systems of
11850         a multi-system score. The parameter is the number of systems processed.
11851
11852 2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
11853
11854         * python/lilylib.py (make_ps_images): Escape newline.
11855
11856         * Documentation/user/music-glossary.tely: Run
11857         texinfo-all-menus-update.
11858
11859 2005-04-14  Jan Nieuwenhuizen  <janneke@gnu.org>
11860
11861         * scm/lily-library.scm (old-relative-not-used-message)
11862         (version-not-seen-message): Add input-file-name-location to message.
11863
11864         * lily/parser.yy (lilypond): Add token aliases.
11865
11866         * Documentation/user/music-glossary.tely (accidental): Fixes.  Do
11867         not confuse with alteration.
11868         (alteration): Add.
11869
11870 2005-04-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11871
11872         * python/lilylib.py (make_ps_images): use -dEPSCrop
11873
11874         * VERSION (PACKAGE_NAME): release 2.5.19 
11875
11876         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
11877         only put xrefs in info documentation.
11878
11879         * make/ly-rules.make ($(outdir)/%.html.omf): transplant .dvi ->
11880         .pdf rule to tex-rules.make.
11881
11882         * scm/framework-eps.scm (dump-stencils-as-EPSes): remove comments
11883         from -systems.* output.
11884
11885         * stepmake/stepmake/tex-rules.make ($(outdir)/%.pdf): make PDF
11886         directly, remove -$(PAGESIZE) target.
11887
11888         * input/test/embedded-postscript.ly: update.
11889
11890 2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11891
11892         * make/lysdoc-targets.make (local-WWW): remove ps.gz target.
11893
11894         * Documentation/user/changing-defaults.itely (Font selection):
11895         document font-name.
11896
11897         * input/regression/font-name.ly: show Pango fonts for
11898         font-name. Update example. 
11899
11900         * lily/pango-select.cc (properties_to_pango_description): don't
11901         convert symbol font-size to number, but use to lookup.
11902
11903         * python/fontextract.py (write_extracted_fonts): add VMusage 0.
11904
11905         * scm/framework-ps.scm (write-preamble): use (NAME . CONTENTS) and
11906         (NAME . FILE-NAME) tuples for font descriptions. 
11907         (write-preamble): display BeginFont DSC comments.
11908
11909         * python/fontextract.py (write_extracted_fonts): new file. Extract
11910         font resources from a PS file.
11911
11912         * scripts/lilypond-book.py (option_definitions): --psfonts option.
11913         (Compile_error.process_include): do_file returns chunks.
11914
11915         * make/ly-vars.make (DVIPS_FLAGS): don't load .map file.
11916
11917         * make/lysdoc-targets.make: .texi is .PRECIOUS
11918
11919         * scripts/lilypond-book.py (write_if_updated): new function.
11920
11921 2005-04-13  Jan Nieuwenhuizen  <janneke@gnu.org>
11922
11923         * scm/framework-eps.scm (dump-stencils-as-EPSes): Massage messages.
11924
11925 2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11926
11927         * scm/framework-eps.scm (dump-stencils-as-EPSes): no massages.
11928
11929         * input/regression/markup-syntax.ly: remove \score.
11930
11931         * scm/define-markup-commands.scm (draw-circle): add fill argument
11932
11933         * scm/stencil.scm (make-circle-stencil): add fill argument
11934
11935         * ps/music-drawing-routines.ps: add fill argument.
11936
11937         * ly/performer-init.ly: add CueVoice to MIDI too.
11938
11939         * ps/music-drawing-routines.ps: new routine BeginEPSF /
11940         EndEPSF.
11941
11942         * input/regression/markup-eps.ly: new file.
11943
11944         * scm/framework-ps.scm (write-preamble): change order: vars should
11945         be inited before procedures.
11946
11947         * scm/output-ps.scm (glyph-string): break lines. 255 chars is max
11948         for EPS files.
11949
11950         * scm/define-markup-commands.scm (epsfile): add epsfile command.
11951
11952 2005-04-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11953
11954         * configure.in (gui_b): add check for ghostscript 8.15
11955
11956 2005-04-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11957
11958         * lily/hairpin.cc (after_line_breaking): suicide the hairpinlet at
11959         start of line. Fixes cresc-after-newline.ly
11960
11961         * lily/source-file.cc (file_line_column_string): use get_column().
11962
11963 2005-04-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11964
11965         * lily/source-file.cc (get_column): utf-8 support for column numbers.
11966
11967 2005-04-12  Jan Nieuwenhuizen  <janneke@gnu.org>
11968
11969         * lily/*: use message () iso progress_indication () for messages.
11970         Revise/uniformise user messages.
11971
11972         * flower/warn.cc (progress_indication): New function.
11973         (message): Use it.  Fixes newline problems.
11974
11975         * config.make.in (webdir): Sort out install dirs.
11976
11977         * stepmake/stepmake/generic-targets.make (final-install): Bugfix.
11978
11979         * python/lilylib.py (command_name): Bugfix.
11980         (make_ps_images):
11981
11982 2005-04-11  Pedro Kroger  <kroeger@pedrokroeger.net>
11983
11984         * lily/main.cc: --help says what types of backends are availabe
11985
11986 2005-04-11  Jan Nieuwenhuizen  <janneke@gnu.org>
11987
11988         Fix ./VERSION dependency, and without need to reconfigure.
11989
11990         * lily/main.cc (setup_paths): Update.
11991
11992         * stepmake/bin/make-version.py (defs): Add TOPLEVEL_VERSION define..
11993
11994         * config.hh.in (LILYPOND_DATADIR): Remove TOPLEVEL_VERSION.
11995
11996         * scripts/convert-ly.py (\markup): Fix too simplistic regexps.
11997         Add \line for some simplistic cases.
11998
11999         * lily/GNUmakefile (main.o): Add missing dependency on version.hh.
12000
12001 2005-04-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
12002
12003         * elisp/lilypond-mode.el (LilyPond-lilypond-command): command used
12004         to compile LY files (useful for adding eg. "-I" args)
12005         (LilyPond-command-alist): use `LilyPond-lilypond-command'. Add a
12006         2Gnome command for gnome backend.
12007         (LilyPond-command-formatgnome): call the 2Gnome command. key
12008         binding: C-c C-g
12009
12010 2005-04-10  Jan Nieuwenhuizen  <janneke@gnu.org>
12011
12012         * Documentation/user/GNUmakefile (lilypond/index.html): Bugfix:
12013         depend on all PNG images.
12014
12015 2005-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
12016
12017         * GNUmakefile.in: Bugfix: also link .map files.
12018
12019 2005-04-09  Nicolas Sceaux  <nicolas.sceaux@free.fr>
12020
12021         * scm/music-functions.scm (music->make-music): generate 
12022         a (make-music ...) sexpr from a music expression.
12023         (display-scheme-music): use guile pretty printer to display the
12024         make-music sexpr.
12025
12026 2005-04-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12027
12028         * ly/engraver-init.ly: reindent.
12029         Add CueVoice.
12030
12031         * scm/music-functions.scm (music-pretty-string): handle moments
12032         too.
12033         (music-pretty-string): only print non-empty lists.
12034         (cue-substitute): create CueVoice context, which has smaller type.
12035
12036         * lily/moment-scheme.cc (LY_DEFINE): new methods
12037         ly:moment-grace-{numerator,denominator}
12038
12039         * lily/context-handle.cc: remove quit() method. 
12040
12041         * lily/font-config.cc (init_fontconfig): be verbose about font path.
12042         (init_fontconfig): success is 0, not !0
12043
12044 2005-04-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12045
12046         * mf/feta-nummer-code.mf (code): add plus glyph.
12047
12048         * lily/tie.cc (print): idem.
12049
12050         * lily/slur.cc (print): don't use thickness property for
12051         slur shape-thickness.
12052
12053         * lily/stencil-scheme.cc (LY_DEFINE): don't reverse the order
12054         while adding stencils.
12055
12056         * scm/define-markup-commands.scm (with-color): with-color markup
12057         command.
12058         (whiteout): new markup command 
12059         (filled-box): new markup command
12060
12061 2005-04-07  Jan Nieuwenhuizen  <janneke@gnu.org>
12062
12063         * Documentation/topdocs/NEWS.tely (Top): Make tex-able.  Handy
12064         test for PDF docs.
12065
12066         * mf/GNUmakefile (lilypond.map): Add PFAEmmentaler,
12067         PFAAybabtu-Regular.  Fixes feta font in PDFs.
12068         
12069         Notes for tetex-3.0 make web:
12070            psclean.map: s/uhv8a/uhvr8a/
12071            config.ps add:
12072                 p +psfonts_t1.map
12073                 p +psclean.map
12074                 p +typeface.map
12075
12076 2005-04-06  Nicolas Sceaux  <nicolas.sceaux@free.fr>
12077
12078         * scm/music-functions.scm (music-pretty-string): fix bug with
12079         string argument.
12080
12081 2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
12082
12083         * stepmake/bin/add-html-footer.py (i18n): Bugfix.
12084
12085 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12086
12087         * scripts/lilypond-book.py (Lilypond_snippet.__init__): 
12088         only process options if they're there.
12089         (write_file_map): add version-seen? to snippet-map.ly
12090
12091 2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
12092
12093         * scripts/lilypond-book.py (split_options): Bugfix.  Small code
12094         formatting cleanups.
12095
12096         * mf/GNUmakefile: Rewrite $addprefix, $addsuffix using % short-forms.
12097         Add PFAaybabtu.pfa dependency on aybabtu.subfonts.
12098
12099 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12100
12101         * scm/framework-ps.scm (ps-font-command): don't hash, just use
12102         name directly.
12103
12104         * lily/main.cc (setup_paths): either add mf/out to search path or 
12105         fonts/{otf,type1,etc}
12106         
12107         * lily/font-config.cc (init_fontconfig): either add mf/out to
12108         FontConfig or fonts/{otf,type1,etc}
12109
12110         * GNUmakefile.in: don't put mf/ link in share/ dir.
12111
12112         * lily/staff-spacing.cc: move same-direction-correction to
12113         note-spacing-interface
12114
12115         * scm/lily.scm (lilypond-main): use variable argument count for
12116         exception handler.
12117
12118         * lily/font-config.cc (init_fontconfig): add operator pacification
12119         message.
12120
12121         * mf/aybabtu.pe.in (i): generate PFAAybabtu.pfa
12122
12123         * buildscripts/gen-emmentaler-scripts.py (i): generate
12124         PFAEmmentaler as well.
12125
12126         * scm/framework-ps.scm (munge-lily-font-name): new function
12127         (write-preamble): hack: insert PFA equivalent of CFF into
12128         .PS. This makes LilyPond output printable on normal PS printers
12129         again.
12130
12131         * buildscripts/gen-emmentaler-scripts.py (i): generate
12132         PFAEmmentaler.pfa aswell.
12133
12134 2005-04-06  John Williams <williams@tni.com>  
12135         
12136         * scripts/lilypond-book.py: refactor the compose_ly procedure.
12137         
12138 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12139
12140         * scm/page-layout.scm (default-page-make-stencil): always combine
12141         the header stencil, even if empty. This prevents the body text to
12142         reach up to the margins.
12143
12144         * po/rw.po (Module): new file, for Kinyarwanda.
12145
12146         * input/test/spacing-optical.ly (Module): new file.
12147
12148         * lily/staff-spacing.cc: add same-direction-correction
12149
12150 2005-04-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12151
12152         * Documentation/user/introduction.itely (Engraving): Comment-out
12153         non-existent file.
12154
12155 2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12156
12157         * scm/define-grob-properties.scm (all-user-grob-properties): add
12158         same-direction-correction
12159
12160         * VERSION: release 2.5.18
12161
12162 2005-04-05  Jan Nieuwenhuizen  <janneke@gnu.org>
12163
12164         * lily/grob.cc (mark_smob): Check pscore->layout_ before
12165         dereferencing.  Fixes make web.
12166
12167         * lily/midi-stream.cc: Handle unwritable midi file.  Include
12168         errno.h.
12169
12170         * Documentation/user/: Fix links.
12171
12172 2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12173
12174         * lily/text-interface.cc (Module): rename from text-item.cc
12175
12176         * input/regression/apply-output.ly (texidoc): function naming fix.
12177
12178         * lily/time-signature-performer.cc (derived_mark): new function.
12179
12180         * lily/lily-parser-scheme.cc:  print mapped file name for progress
12181
12182         * scripts/lilypond-book.py (find_linestarts): new function.
12183         (find_toplevel_snippets): keep track of line numbers.
12184
12185         * lily/key-performer.cc (try_music): remove FIXME warning, gobble
12186         all key changes.
12187
12188         * ly/declarations-init.ly (partCombineListener): use
12189         ignoreBarChecks. Fixes: warn-partcombine-barcheck.ly
12190
12191         * lily/bar-check-iterator.cc (process): ignoreBarChecks property.
12192
12193 2005-04-04  Jan Nieuwenhuizen  <janneke@gnu.org>
12194
12195         * lily/text-item.cc: Fix link.
12196
12197         * Documentation/user/changing-defaults.itely (Changing defaults):
12198         Fix programs reference links.
12199
12200         * Documentation/user/music-glossary.tely: Convert to utf-8.
12201
12202 2005-04-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12203
12204         * make/lilypond-vars.make: remove TEXMF from variables.
12205         remove DEB_BUILD pk font variables.
12206         remove GUILE_LOAD_PATH
12207         remove TeX memory vars.
12208
12209 2005-04-04  Werner Lemberg  <wl@gnu.org>
12210
12211         * lilypond/scm-option.cc (ly_option_usage): Add final newline.
12212
12213 2005-04-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12214
12215         * ps/lilyponddefs.ps: remove reencode-font
12216
12217         * lily/simple-spacer.cc (add_columns): also compare
12218         directly. Column rank doesn't distinguish between broken and
12219         unbroken columns. This fixes large spaces before time sig changes.
12220
12221         * Documentation/user/point-and-click.itely: document ly:set-option.
12222
12223         * lily/grob.cc (get_uncached_stencil): only set grob-cause if
12224         point_and_click_global is set.
12225
12226         * lily/scm-option.cc (LY_DEFINE): add point-and-click
12227         ly:set-option argument.
12228
12229 2005-04-03  Jan Nieuwenhuizen  <janneke@gnu.org>
12230
12231         * GNUmakefile.in: Include symlinks in webball.
12232
12233         * Documentation/user/GNUmakefile (source-links): Add symlinks to
12234         source dir for split and non-split manuals.
12235
12236         * Documentation/user/*y: Fix @uref/@inputfile links for
12237         split/non-split HTML documents.
12238
12239         * Documentation/user/GNUmakefile (local-WWW): Do not generate
12240         .ps.gz.
12241         
12242 2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
12243
12244         * GNUmakefile.in: Add newline.
12245
12246 2005-04-01  Erlend Aasland  <erlenda@gmail.com>
12247
12248         * tex/lilyponddefs.tex: use color instead of xcolor
12249         * scm/output-tex.scm: minor editing
12250
12251 2005-04-02  Nicolas Sceaux  <nicolas.sceaux@free.fr>
12252
12253         * scm/music-functions.scm (display-scheme-music): pretty printer
12254         for music expressions.
12255
12256 2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
12257
12258         * buildscripts/install-info-html.sh (index_file): Fix link.
12259
12260 2005-04-01  Jan Nieuwenhuizen  <janneke@gnu.org>
12261
12262         * input/test/dynamic-extra.ly (piuf): Use utf-8 iso TeX accent.
12263
12264         * Documentation/index.html.in: Add size estimates with some big pages.
12265
12266         * Documentation/user/tutorial.itely (Running LilyPond for the
12267         first time): Add/replace some @rglos links.  TODO: add more
12268         @rglos links in tutorial, test non-intrusiveness (.css).
12269
12270         * stepmake/bin/add-html-footer.py (do_file): Remove info's
12271         annoying's indication of referencing external document.
12272
12273         * Documentation/user/GNUmakefile: Split version of glossary too.
12274         * Documentation/user/macros.itexi (@rglos): Have makeinfo produce
12275         links, not only for html.
12276
12277         * Documentation/user/introduction.itely: Fix some links for other
12278         than html, do not use `here' as link name.
12279
12280 2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
12281
12282         * scm/documentation-generate.scm (string-append): Fix @usermanref,
12283         @glossaryref.
12284
12285 2005-03-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12286
12287         * scm/page-layout.scm (default-page-make-stencil): only add header
12288         if existing and not empty. Fixes spurious programming error.
12289
12290         * lily/span-bar.cc (print): don't make rounded edges for spanbars.
12291
12292 2005-03-31  Erlend Aasland  <erlenda@gmail.com>
12293
12294         * scm/output-tex.scm: implement {re,}setcolor
12295         * tex/lilyponddefs.tex: use color package
12296
12297 2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
12298
12299         * GNUmakefile.in (local-WWW-post): Restore .htaccess and .html
12300         additions to website.
12301
12302         * Documentation/user/lilypond.tely: Remove reference to ps.gz.
12303
12304         * Documentation/user/macros.itexi: Fix @usermanref html links in
12305         split documents: use @inforef.
12306
12307 2005-03-30  Graham Percival  <gperlist@shaw.ca>
12308
12309         * Documentation/user/programming-interface.itely: minor fix.
12310
12311         * Documentation/user/advanced-notation.itely: added info to
12312         Metronome markings.
12313
12314 2005-03-30  Jan Nieuwenhuizen  <janneke@gnu.org>
12315
12316         * scm/output-lib.scm (make-stencil-boxer): Junk code duplication,
12317         use box-stencil.  Remove y-padding argument.
12318         (make-stencil-circler): New function.
12319
12320         * buildscripts/lilypond-words.py (F): 
12321         * elisp/SConscript (a): 
12322         * elisp/GNUmakefile (LILYPOND_WORDS_DEPENDS):
12323         * vim/SConscript (a): 
12324         * vim/GNUmakefile (LILYPOND_WORDS_DEPENDS): Update.
12325
12326         * lily/general-scheme.cc: Build fix.
12327
12328         * scm/markup.scm:
12329         * input/regression/markup-scheme.ly: 
12330         * input/regression/markup-syntax.ly: Drop 'new-' from name.
12331
12332         * scm/stencil.scm (make-circle-stencil): New function.
12333
12334         * scm/define-markup-commands.scm (draw-circle): Use it.  New
12335         name (was cicle).  Update callers.
12336         (circle): New markup command, similar to box.
12337
12338         * scm/stencil.scm (circle-stencil): New function.
12339
12340 2005-03-29  David Jedlinsky  <lilypond@ipnh.com>
12341
12342         * configure.in: Detect libutf8/wchar.h variant.
12343
12344         * stepmake/aclocal.m4: Modify shared size test.
12345
12346 2005-03-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12347
12348         * make/lilypond.fedora.spec.in (Group): remove texmf profile stuff.
12349
12350 2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12351
12352         * scripts/convert-ly.py (conv): add stencil-aligned-to! rule.
12353         
12354         * VERSION (PACKAGE_NAME):  release 2.5.17
12355
12356 2005-03-29  Jan Nieuwenhuizen  <janneke@gnu.org>
12357
12358         * scm/backend-library.scm (postscript->png): Fix comment and png
12359         message.
12360
12361         * GNUmakefile.in (link-tree): Fix locales.
12362
12363 2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12364
12365         * lily/stencil-scheme.cc (LY_DEFINE): change to
12366         ly:stencil-aligned-to, non mutating.
12367
12368         * scm/safe-lily.scm (lambda): remove ly:stencil-set-extent!
12369
12370         * lily/stencil-scheme.cc: remove ly:stencil-set-extent!
12371
12372         * lily/quote-iterator.cc (derived_mark): call
12373         Music_wrapper_iterator::derived_mark() too.
12374
12375         * lily/grace-engraver.cc (derived_mark): change signature, add
12376         const.
12377
12378 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12379
12380         * SConstruct (symlink): 
12381         * GNUmakefile.in (link-tree): Add scripts to prefix.
12382
12383         * lily/general-scheme.cc (ly:effective-prefix): New function.
12384
12385         * scm/backend-library.scm (postscript->png): Use it.
12386
12387 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12388
12389         * lily/paper-score.cc (process): don't delete grobs after
12390         producing stencils. 
12391
12392         * scm/part-combiner.scm (determine-split-list): switch off
12393         debugging info.
12394
12395         * scm/backend-library.scm (postscript->png): explicitly use ps2png.py
12396         if available.
12397
12398         * scm/define-context-properties.scm
12399         (all-user-translation-properties): add stringNumberOrientations.
12400
12401         * lily/new-fingering-engraver.cc (position_scripts): make generic,
12402         so fingering and string-numbers are separately controlled.
12403
12404 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12405
12406         * stepmake/aclocal.m4: Fix shared size test: add missing comma, do
12407         not use debugging.
12408
12409 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12410
12411         * GNUmakefile.in (local-WWW-post): remove UTF8 .htaccess.
12412
12413         * config.hh.in: add HAVE_FONTCONFIG.
12414
12415         * Documentation/user/instrument-notation.itely (String number
12416         indications): new node.
12417
12418         * input/regression/new-markup-syntax.ly (texidoc): add circle.
12419
12420         * lily/new-fingering-engraver.cc (add_string): new function. 
12421         (acknowledge_grob): accept string-number-event as well.
12422
12423         * scm/define-markup-commands.scm (circle): new markup command.
12424
12425         * scm/output-lib.scm (print-circled-text-callback): new function.
12426
12427         * lily/GNUmakefile: move ifeq after include stepmake.make.
12428
12429 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12430
12431         * config.make.in (HAVE_LIBKPATHSEA_SO):
12432         * stepmake/aclocal.m4: Also subst HAVE_LIBKPATHSEA_SO.
12433
12434         * lily/GNUmakefile (MODULE_LDFLAGS): Only if not HAVE_KPATHSEA_SO,
12435         add KPATHSEA_LIBS.
12436
12437         * debian/watch: 
12438         * debian/control: Update.
12439
12440 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12441
12442         * input/test/title-markup.ly (spaceTest): remove.
12443
12444         * input/test/embedded-tex.ly (Module): remove.
12445
12446         * input/test/music-box.ly: use 'name property, not ly:music-name.
12447
12448         * lily/GNUmakefile (MODULE_LDFLAGS): add KPATHSEA_LIBS.
12449
12450         * stepmake/aclocal.m4: STEPMAKE_FONTCONFIG: add.
12451
12452 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12453
12454         * Documentation/topdocs/INSTALL.texi (Top): Remove information
12455         about xdeltas.  Add information about CVS.
12456
12457         * scm/lily.scm (lilypond-main): Fix invocation of handler,
12458         gracefully handle failed files.
12459
12460         * lily/GNUmakefile (MODULE_LDFLAGS): Remove KPATHSEA_LIBS.
12461
12462         * Documentation/topdocs/INSTALL.texi (Top): Whitespace and other
12463         small fixes.
12464
12465         * scm/framework-tex.scm (convert-to-ps): Proper option spacing.
12466         No unnecessarily specific i18n messages.  Remove stray `1'.
12467
12468 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12469
12470         * buildscripts/lys-to-tely.py (strip_extension): add utf-8
12471         documentencoding
12472
12473         * scm/documentation-lib.scm (texi-file-head): set utf-8
12474         documentencoding.
12475
12476         * ly/chord-modifiers-init.ly (whiteTriangleMarkup): use the greek
12477         Delta, not the Symbol one. 
12478
12479         * mf/GNUmakefile ($(outdir)/lilypond.map): add -Regular to Aybabtu
12480         for the .map file.
12481
12482         * Documentation/topdocs/INSTALL.texi (Top): add running
12483         requirement as compilation requirement.
12484
12485 2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12486
12487         * buildscripts/mutopia-index.py (headertext): add h1 header and
12488         utf-8 charset meta field.
12489
12490         * input/GNUmakefile: prune example list.
12491
12492         * scm/framework-tex.scm (convert-to-ps): add -ofoo.ps to dvips
12493         options.
12494
12495         * lily/slur-scoring.cc (get_base_attachments): only look at stem
12496         extent for visible stems.
12497
12498         * lily/grob.cc (mark_smob): mark \layout block from Grob::mark_smob().
12499
12500 2005-03-27  Jan Nieuwenhuizen  <janneke@gnu.org>
12501
12502         * Documentation/topdocs/INSTALL.texi (Top): Updates.
12503
12504         * scripts/convert-ly.py: Python 2.2 compatibility (thanks Mats).
12505
12506 2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12507
12508         * lily/slur-scoring.cc (get_base_attachments): robustness. Don't
12509         pass inf/nan into slur scoring.
12510
12511         * ly/titling-init.ly (oddHeaderMarkup): don't show page no. on 1st
12512         page.
12513
12514         * scripts/abc2ly.py (dump_voices): use alphabet().
12515
12516 2005-03-27  Jeff Smith <whydoubt@yahoo.com>
12517         
12518         * mf/GNUmakefile (depth): use $(FONTFORGE). 
12519
12520 2005-03-27 Matthias Neeracher <neeracher@mac.com>
12521         
12522         * flower/include/virtual-methods.hh: simplify. Patch by
12523
12524 2005-03-25  John Williams <williams@tni.com>  
12525
12526         * scripts/lilypond-book.py (main): add png for HTML too, guess
12527         only if necessary. 
12528
12529 2005-03-25  Graham Percival  <gperlist@shaw.ca>
12530
12531         * Documentation/topdocs/INSTALL.texi: now recommends
12532         lexer-gcc-3.1.sh for gcc 3.1.1 or higher.
12533
12534         * Documentation/user/basic-notation.itely,
12535         Documentation/user/tutoria.itely: warn about
12536         only one (phrasing) slur at once.
12537
12538 2005-03-24  Pedro Kroger  <kroeger@pedrokroeger.net>
12539
12540         * ly/music-functions-init.ly (removeWithTag): fixed to return "music".
12541
12542 2005-03-23  Graham Percival  <gperlist@shaw.ca>
12543
12544         * Documentation/user/basic-notation.itely: fixed info about
12545         ending a (de)cresc.
12546
12547         * Documentation/user/lilypond-book.itely: fixed
12548         lilypond-book filter example and warned about not doing
12549         --filter and --process at the same time.
12550
12551 2005-03-23  Mats Bengtsson  <mabe@s3.kth.se>
12552
12553         * lily/parser.yy (bass_number),
12554         Documentation/user/instrument-notation.itely (Figured bass): 
12555         Add the possibility to use text markup in figured bass. 
12556
12557 2005-03-19  Graham Percival  <gperlist@shaw.ca>
12558
12559         * Documentation/user/global.itely: added info about naming
12560         identifiers and breakbefore.
12561
12562         * Documentation/user/invoking.itely: added info about batch
12563         processing files with convert-ly, removed references to TeX
12564         in the jail section.
12565
12566         * Documentation/user/examples.itely: possibly fixed piano
12567         dynamics.
12568
12569         * Documentation/user/advanced-notation.itely: added info
12570         about removing other types of Staff.
12571
12572         * Documentation/user/instrument-notation.itely: possibly
12573         fixed piano staff line switch.
12574
12575         * Documentation/user/changing-defaults.itely: added info
12576         about using normal font in titles.
12577
12578 2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12579
12580         * VERSION (PATCH_LEVEL): release 2.5.16
12581
12582         * make/ly-vars.make (DVIPS_FLAGS): include lilypond.map path
12583         explicitly.
12584
12585 2005-03-18  Jan Nieuwenhuizen  <janneke@gnu.org>
12586
12587         * scm/framework-tex.scm (convert-to-dvi): Barf if NAME contains
12588         whitespace.
12589
12590         * python/lilylib.py (make_ps_images):
12591         * scm/backend-library.scm (postscript->pdf, postscript->png):
12592         Quote file name.  Use format rather than string-append juggling.
12593
12594 2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12595
12596         * python/lilylib.py (make_ps_images): add x to -g argument. 
12597
12598         * lily/key-performer.cc (create_audio_elements): don't use
12599         scm_eval_string. Check for minor 3rd directly.
12600   
12601         * input/mutopia/J.S.Bach/baerenreiter-sarabande.ly
12602         (sarabandeCelloGlobal): key is D minor, not F major.
12603
12604 2005-03-17  Jan Nieuwenhuizen  <janneke@gnu.org>
12605
12606         Fix truncated --png output (Peter Danenberg).
12607         
12608         * python/lilylib.py (make_ps_images):
12609         * scripts/ps2png.py (copyright): Grok --papersize option.
12610
12611         * scm/backend-library.scm (postscript->png): Add parameter
12612         PAPERSIZE.  Update callers.
12613
12614         * scm/output-gnome.scm (music-font?): Bugfix: use "Emmentaler".
12615         Fixes symbol placement.
12616
12617         * lily/spanner.cc: 
12618         * lily/stencil.cc: Use "libc-extension.hh" (WAS:
12619         <libc-extension.hh>).
12620
12621 2005-03-16  Jan Nieuwenhuizen  <janneke@gnu.org>
12622
12623         * Nitpick run.
12624
12625         * buildscripts/fixcc.py: Update.
12626
12627         Builddir run fixes.
12628
12629         * HACKING (datadir): Add VERSION.
12630
12631         * GNUmakefile.in (linktree): Bugfix: outconfdirs are one dir
12632         higher up.
12633
12634 2005-03-15  Werner Lemberg  <wl@gnu.org>
12635
12636         * mf/feta-klef.mf (draw_gclef): Move z10' slightly so that the
12637         diagonal stem doesn't become thinner.
12638
12639 2005-03-15  Jan Nieuwenhuizen  <janneke@gnu.org>
12640
12641         * buildscripts/fixcc.py: Fixes (Werner).
12642
12643 2005-03-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12644
12645         * mf/GNUmakefile ($(outdir)/lilypond.map): capitalize
12646         Emmentaler/Aybabtu.
12647
12648         * GNUmakefile.in: fix lilypond-words path.
12649
12650         * po/tr.po: update to 2.3.21
12651
12652         * lily/new-fingering-engraver.cc (position_scripts): take priority
12653         from head position.
12654
12655         * input/regression/finger-chords-order.ly (texidoc): new file.
12656
12657 2005-03-14  Jan Nieuwenhuizen  <janneke@gnu.org>
12658
12659         * make/ly-rules.make: 
12660         * stepmake/aclocal.m4: 
12661         * Documentation/user/GNUmakefile: Remove old makeinfo compatibility.
12662
12663         * buildscripts/fixcc.py (rules): Leave space after operator.
12664
12665 2005-03-14  Werner Lemberg  <wl@gnu.org>
12666
12667         * mf/feta-klef.mf (draw_gclef): Replace `simple_serif' for
12668         top of the glyph with smooth curve.
12669
12670 2005-03-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12671
12672         * Documentation/user/global.itely (Page layout): remove
12673         printpagenumber.
12674
12675 2005-03-13  Jürgen Reuter  <reuter@ipd.uka.de>
12676
12677         * input/regression/mensural-ligatures.ly: new file (with examples
12678         compiled by Pal Benko).
12679
12680         * Documentation/user/instrument-notation.itely: Bugfix: yet some
12681         other "custodes.*-u0" -> "custodes.*.u0" renaming victims in
12682         musicglyph access.  Many small beautifications in ancient
12683         examples.
12684
12685         * input/test/divisiones.ly: fixed indentation; small
12686         beautifications
12687
12688         * ly/engraver-init.ly: added FIXME comment
12689
12690         * scripts/lilypond-book.py,
12691         Documentation/user/lilypond-book.itely: added music fragment
12692         option "packed" to lilypond-book
12693
12694         * Documentation/user/instrument-notation.itely: Bugfix: added
12695         missing LedgerLineSpanner color setting in several places.  Added
12696         music fragment option "packed" to VaticanaContext example.
12697
12698 2005-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12699
12700         * scm/define-grobs.scm (all-grob-descriptions): switch off
12701         Hyphen_spanner::set_spacing_rods 
12702
12703         * lily/lyric-hyphen.cc (print): add padding between syllable and
12704         hyphen.
12705         (print): shorten hyphen in tight situations (determine using
12706         minimum-length)
12707
12708         * scm/paper.scm (layout-set-staff-size): increase blotdiameter to
12709         0.4pt.
12710
12711 2005-03-13  Jan Nieuwenhuizen  <janneke@gnu.org>
12712
12713         * ly/titling-init.ly (bookTitleMarkup): Refinements.
12714
12715         * input/regression/page-breaks.ly (paper): Set not raggedlastbottom,
12716         header/footer markings for regression-test.
12717
12718         * scm/backend-library.scm (output-scopes, header-to-file): Move
12719         from framework-tex.scm.
12720
12721         * scm/framework-ps.scm (output-framework)
12722         (output-preview-framework):
12723         * scm/framework-eps.scm (output-classic-framework)
12724         (output-framework): Use it.  Fixes collated files.
12725
12726 2005-03-12  Jan Nieuwenhuizen  <janneke@gnu.org>
12727
12728         * input/sakura-sakura.ly: 
12729         * input/xiao-haizi-guai-guai.ly: Add from Debian package (Anthony).
12730
12731         * buildscripts/guile-gnome.sh: Update.
12732
12733         * mf/GNUmakefile (aybabtu.otf): Add dependency on .pe.
12734
12735         * mf/aybabtu.pe.in: Capitalize Aybabtu.
12736
12737 2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12738
12739         * lily/separating-group-spanner.cc (find_rods): oops. Fix the real
12740         culprit: always exit the loop if we find a rod, even if it has
12741         distance < 0. 
12742
12743         * lily/ledger-line-spanner.cc (set_spacing_rods): rewrite to O(n)
12744         algorithm.
12745
12746         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
12747         $(outdir)/%.svg $(outdir)/%.pfa): add --simplify.
12748
12749         * scm/output-svg.scm (dashed-line): new  function body.
12750         
12751         * GNUmakefile.in: create .htaccess.
12752
12753 2005-03-11  Jan Nieuwenhuizen  <janneke@gnu.org>
12754
12755         * Documentation/topdocs/NEWS.tely (Top): Fix text example.
12756
12757 2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12758
12759         * VERSION (PACKAGE_NAME): release 2.5.15
12760
12761         * scm/output-{pdf,pdftex,sketch}.scm (Module): remove bitrotted files.
12762
12763         * scm/framework-svg.scm (output-framework): put scaling in
12764         document header. Apply scaling only once.
12765         (output-framework): dump page size in px, not mm. 
12766
12767         * scm/lily-library.scm (modified-font-metric-font-scaling): rename
12768         from font-size.
12769
12770         * lily/paper-outputter-scheme.cc (LY_DEFINE):
12771         ly:outputter-output-scheme, new function.
12772
12773         * scm/output-svg.scm (pango-description-to-svg-font): new function
12774
12775 2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12776
12777         * Documentation/user/GNUmakefile (deep-symlinks): remove outimages
12778         target.
12779
12780         * input/typography-demo.ly: new file.
12781
12782 2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
12783
12784         * Documentation/user/global.itely (File structure): Add markup blocks
12785         to toplevel expressions.
12786         (Multiple movements, Creating titles): Add markup blocks.
12787
12788         * lily/stencil-scheme.cc: Use "libc-extension.hh" (WAS:
12789         <libc-extension.hh>).
12790
12791         * lily/accidental.cc (accurate_boxes): Compile fix: 1.51 was broken.
12792
12793         * flower
12794         * lily
12795         * kpath-guile: Nitpick run: buildscripts/fixcc.py.
12796
12797 2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12798
12799         * lily/accidental.cc: special bboxes for natural. 
12800
12801         * mf/feta-toevallig.mf: make stems heavier.
12802
12803         * lily/dynamic-text-spanner.cc (print): add bound padding for edge
12804         texts as well.
12805
12806         * mf/feta-klef.mf: revise. 
12807
12808         * mf/feta-schrift.mf: make thinning of accent less pronounced.
12809
12810         * mf/feta-klef.mf: add rounded curve at top. 
12811         make thinnib a little heavier.
12812
12813 2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
12814
12815         * lily/parser.yy (book_body): Oops, allow \markup in \book too.
12816
12817         * buildscripts/fixcc.py: New file.
12818
12819         * input/regression/utf8.ly: Update Debian font description.
12820
12821 2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
12822
12823         * stepmake/aclocal.m4: Fix test.
12824
12825 2005-03-09  Graham Percival  <gperlist@shaw.ca>
12826
12827         * Documentation/user/invoking.itely: added Sebastino Vigna's
12828         docs for the --jail option.
12829
12830 2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12831
12832         * lily/stem.cc (print): only produce stemlets if there are no
12833         noteheads on this stem.
12834
12835         * lily/note-spacing.cc (stem_dir_correction): robustness fix:
12836         don't crash on stemlet (visible stem without heads).
12837
12838         * scm/define-grobs.scm (all-grob-descriptions): junk LeftEdge for
12839         unbroken situations. 
12840
12841         * scm/output-lib.scm (center-invisible): new function.
12842
12843         * lily/spacing-loose-columns.cc (set_loose_columns): use spacing
12844         wishes to determine loose column space.
12845
12846         * lily/font-config.cc (init_fontconfig): add
12847         fonts/{otf,type1,cff}  to path.
12848
12849         * lily/main.cc (setup_paths): add fonts/{otf,svg,tfm,cff} to path
12850
12851         * mf/GNUmakefile (Module): install all fonts under otf/
12852
12853         * scm/framework-ps.scm (Module): read fonts from fonts/extension,
12854         replace /fonts/otf/ by /ps/ 
12855
12856         
12857 2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
12858
12859         * lily/paper-book.cc (classic_output): Reinstate header_0_ hack.
12860
12861         * lily/book.cc (process): Oops, add score_.header_.
12862
12863         * lily/paper-book.cc: Fold hearders, score and texts into scores_.
12864
12865         * lily/parser.yy: Handle toplevel and book texts as score.
12866
12867         * scm/page-layout.scm (default-page-make-stencil):
12868         Bugfix: (page-properties rename.
12869
12870         * scm/backend-library.scm (ly:system): Typo.
12871
12872 2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12873
12874         * stepmake/stepmake/executable-targets.make (installexe): don't
12875         strip installed executables
12876
12877         * lily/font-select.cc (get_font_by_design_size): revert
12878         pango_description_string as well.
12879
12880         * lily/system.cc (set_loose_columns): put loose column just left
12881         of next column.
12882
12883         * lily/include/group-interface.hh (extract_grob_array): rename
12884         from Pointer_group_interface__extract_grobs
12885
12886         * input/regression/ledger-line-minimum.ly (texidoc): new file.
12887
12888         * lily/ledger-line-spanner.cc (set_spacing_rods): new
12889         function. Keep ledgered note heads at a minimum distance.
12890         Introduce minimum-length-fraction
12891         (print): introduce length-fraction property.
12892
12893 2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12894
12895         * tex/GNUmakefile: remove latin1.enc rules.
12896
12897 2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
12898
12899         * scm/titling.scm: Typo.
12900
12901         * input/regression/score-text.ly: Really add.
12902
12903         * lily/score.cc: Bugfixes for SCM header_ and texts_ members.
12904
12905 2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12906
12907         * lily/open-type-font-scheme.cc:  new file.
12908
12909 2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
12910
12911         * scm/titling.scm (layout-extract-page-properties): Rename from
12912         page-properties.  Update callers.
12913
12914         * lily/lexer.ll (Lily_lexer):
12915         * lily/parser.yy: Junk lyric_markup state.
12916
12917         * Documentation/topdocs/NEWS.tely (Top): Mention markup text feature.
12918
12919         * scripts/lilypond-book.py (PREAMBLE_LY): toplevel-music-handler:
12920         Add texts parameter.
12921
12922 2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
12923
12924         * lily/lexer.ll (lyric_markup): New mode.
12925         (Lily_lexer::push_lyric_markup_state): New method.
12926         (MARKUPCOMMAND): Markup during lyric mode returns LYRIC_MARKUP.
12927
12928         * lily/parser.yy (book_body):
12929         (toplevel_expression): Grok \markup texts.
12930
12931         * lily/score-scheme.cc (ly:music-scorify): 
12932         * scm/lily-library.scm (collect-music-for-book): Take texts
12933         parameter.
12934
12935         * lily/score.cc (texts_): New member.
12936
12937         * lily/paper-book.cc (systems): Format score texts.
12938
12939         * score-text.ly: New file.
12940
12941         * ttftool/SConscript:
12942         * kpath-guile/SConscript: New file.
12943
12944         * lily/SConscript:
12945         * SConstruct: Update.
12946
12947 2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12948
12949         * VERSION (PACKAGE_NAME): release 2.5.14
12950
12951 2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
12952
12953         * lily/main.cc: Add dummy xgettext markers.
12954
12955 2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12956
12957         * make/lilypond.fedora.spec.in (Requires): scrap kpathsea/tex
12958         requirements
12959
12960         * stepmake/aclocal.m4: check dynamic link, by checking if kpathsea
12961         executable is < 40k
12962
12963         * lily/main.cc (setup_paths): remove tfm1 tfm2 tfm3 include path
12964         hack.
12965
12966 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12967
12968         * flower/libc-extension.cc:
12969         * flower/include/libc-extension.hh: [Open]BSD simply cast
12970         cookie/funopen declarations.
12971
12972         * stepmake/aclocal.m4: Check for libkpathsea.so.
12973
12974         * kpath-guile/kpath.c (ly_kpathsea_expand_variable): Use
12975         dl_kpse_find_file.
12976
12977 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12978
12979         * kpath-guile/kpath.c (open_library): dlopen libkpathsea.so
12980         (open_library): alternative for static library.
12981
12982 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12983
12984         * configure.in: Set TTFTOOL_ENDIAN iso global CFLAGS.
12985
12986         * ttftool/GNUmakefile (MODULE_CFLAGS): Add $(TTFTOOL_ENDIAN).
12987
12988         Drop run-time dependency on teTeX.
12989
12990         * lily/kpath.cc (initialize_kpathsea): dlopen libkpathsea.
12991
12992         * stepmake/aclocal.m4 (STEPMAKE_KPATHSEA): Do not include
12993         KPATHSEA_LIBS in LIBS.
12994         (STEPMAKE_DLOPEN): New function.
12995
12996         * lily/font-config.cc (init_fontconfig): Use dir for directory,
12997         not path.
12998
12999         * flower/file-path.cc (directories): Rename from paths, as this
13000         return an array of directories (a single path).
13001
13002 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13003
13004         * lily/GNUmakefile (MODULE_LIBS): link with kpath-guile
13005
13006         * lily/all-font-metrics.cc (kpathsea_find_file): wrapper around
13007         new ly:kpathsea-find-file
13008
13009         * kpath-guile/kpath.c: new file. Put kpath bindings in lib.
13010
13011         * kpath-guile/GNUmakefile: new file
13012
13013         * buildscripts/gen-emmentaler-scripts.py (i): generate
13014         emmentaler-X.fontname as well.
13015
13016         * buildscripts/ps-embed-cff.py: new script
13017
13018         * scm/lily-library.scm: remove ps-embed-cff.
13019
13020         * scm/framework-ps.scm (write-preamble): don't use kpathsea for
13021         font loading. 
13022
13023         * scm/font.scm (add-music-fonts): load dynamics/numbers through
13024         fontconfig as well.
13025
13026         * lily/font-config.cc (init_fontconfig): add cff/ too.
13027
13028         * ly/generate-embedded-cff.ly: capitalize.
13029
13030         * lily/pango-select.cc (select_pango_font): use ::find_pango_font,
13031         so as to register the pango font.
13032
13033         * lily/font-config.cc (init_fontconfig): add
13034         prefix/{otf,type1,mf/out} to fontconfig path.
13035
13036         * lily/main.cc: only look at one prefix directory, LILYPONDPREFIX
13037         overrides all. 
13038
13039         * configure.in (gui_b): remove ec mftrace check
13040
13041         * config.hh.in: use lilypond-Major.Minor as data directory.
13042
13043         * scm/framework-ps.scm (dump-page): use output-units for landscape.
13044
13045         * buildscripts/gen-emmentaler-scripts.py (i): lower case file
13046         name.
13047
13048 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
13049
13050         * lily/main.cc (do_chroot_jail): Small cleanups.  Avoid constant
13051         error messages.
13052
13053         * flower/libc-extension.cc:
13054         * flower/include/libc-extension.hh: [Open]BSD fixes for
13055         cookie/funopen declarations.
13056
13057 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13058
13059         * buildscripts/gen-emmentaler-scripts.py (outdir): capitalize
13060         emmentaler.
13061
13062         * lily/score-engraver.cc (initialize): remove check for ecrm10 /
13063         lcrm10.
13064
13065         * scm/define-markup-commands.scm (fontsize): new markup
13066         command. Also set baseline-skip
13067
13068 2005-03-06 Sebastiano Vigna <vigna@dsi.unimi.it>.
13069         
13070         * lily/main.cc (do_chroot_jail): paranoia security for webserver
13071         use.
13072
13073 2005-03-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13074
13075         * stepmake/bin/add-html-footer.py (do_file): make wiki link optional.
13076
13077         * lily/pdf.cc: remove PDF related files
13078
13079 2005-03-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13080
13081         * ly/deutsch.ly: add quarter tones, patch by Arno Waschk.
13082         <hamamatsu@gmx.de>
13083
13084 2005-03-05  Graham Percival  <gperlist@shaw.ca>
13085
13086         * Documentation/user/advanced-notation.itely: first draft
13087         of reorg done.
13088
13089         * Documentation/user/global.itely: fixed (sub)section
13090         bits of MIDI.
13091
13092 2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
13093
13094         * cygwin/mknetrel (extras): Bufix (Bertalan).
13095
13096         * Documentation/user/basic-notation.itely (Chords): @ref fix.
13097         * Documentation/user/instrument-notation.itely (Introducing chord
13098         names): Compile fix: must have unique name.
13099
13100 2005-03-02  Graham Percival  <gperlist@shaw.ca>
13101
13102         * Documentation/user/instrument-notation.itely: reorg.
13103
13104 2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
13105
13106         * scm/output-gnome.scm:
13107         * scm/output-svg.scm: Fix font scaling.
13108
13109 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13110
13111         * ly/titling-init.ly (tagline): Use Engraving.  Add comment about
13112         what link to use best.
13113
13114         * Documentation/user/instrument-notation.itely (Ancient accidentals): 
13115         * Documentation/user/tutorial.itely (Automatic and manual beams):
13116         Fix @ref.
13117
13118         * lily/tweak-registration.cc (replace_grob_tweak): New function.
13119         * lily/tweak-registration-scheme.cc (LY_DEFINE): Wrap it.
13120         * scm/framework-gnome.scm (tweak): Use it.
13121
13122 2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13123
13124         * Documentation/topdocs/NEWS.tely (Top): elucidate GS problem.
13125
13126         * scm/output-ps.scm (white-text): reinstate white-text
13127
13128 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13129
13130         * scm/output-ps.scm (offset-add): Remove.
13131
13132         * scm/lily-library.scm (offset-flip-y): New function.
13133         * scm/framework-gnome.scm (tweak): Use it.
13134
13135         * scm/output-gnome.scm (grob-cause): Add parameter.
13136
13137         * scm/lily.scm (ly:all-stencil-expressions): Add url-link.
13138         * scm/output-ps.scm (url-link): Move.
13139         (white-text): Warn user about brokenness.
13140
13141         * Documentation/topdocs/NEWS.tely: Be more accurate and respectful
13142         wrt ghostscript.
13143
13144 2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13145
13146         * lily/slash-repeat-engraver.cc (try_music): always make slashes
13147         if body length smaller than measure length.
13148
13149         * scm/define-markup-commands.scm (with-url): oops. use Y extent
13150         for Y.
13151
13152         * ly/titling-init.ly (tagline): put default tagline in \paper
13153
13154 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13155
13156         * lily/kpath.cc: 
13157         * lily/pdf.cc (Pdf_file): Use more generic error messages.
13158
13159         * scm/lily-library.scm (version-not-seen-message): New function.
13160         * ly/init.ly: Use it.
13161
13162         * scm/page-layout.scm (ly:optimal-page-breaks): Display page
13163         breaks as progess.
13164
13165         * scripts/lilypond-book.py (do_process_cmd): Do not lump
13166         whitespace with l10n message.
13167
13168         * scm/framework-tex.scm (convert-to-ps):
13169         (convert-to-dvi): Do not use overly specific l10n messages.
13170
13171         * ly/titling-init.ly (bookTitleMarkup): Add baseline skips from 2.4.
13172
13173         * tex/GNUmakefile $(outdir)/latin1.enc: Build fix:
13174         merge stderr with stdout.  
13175
13176 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13177
13178         * flower/libc-extension.cc: Tested BSD compile fix (Matthias
13179         Neeracher).
13180
13181 2005-02-29  Graham Percival  <gperlist@shaw.ca>
13182
13183         * Documentation/user/instrument-notation.teily: moved
13184         \arpeggio to Basic.
13185
13186         * Documentation/user/advanced-notation.itely: Articulation to
13187         Basic, a bunch of stuff from Basic moved to Advanced.
13188
13189         * Documentation/user/basic.itely: swapped various sections,
13190         reorganized Basic.
13191
13192 2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
13193
13194         * flower/memory-stream.cc: 
13195         * flower/libc-extension.cc: Remove obsolete #undefs.
13196
13197         * flower/include/libc-extension.hh: Bugfix for BSD, place #ifdef
13198         more carefully.
13199
13200 2005-02-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13201
13202         * make/lilypond.fedora.spec.in (Requires): add GS 8.15 as
13203         dependency.
13204
13205         * VERSION (PACKAGE_NAME): release 2.5.13
13206
13207         * GNUmakefile.in (web-ext): don't ship ps.gz
13208
13209         * tex/GNUmakefile ($(outdir)/latin1.enc): redirect stderr to
13210         stdout
13211
13212 2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
13213
13214         * lily/general-scheme.cc (LY_DEFINE): Compile fix for systems
13215         without libintl.  Now it compiles too.
13216
13217 2005-02-28  Graham Percival  <gperlist@shaw.ca>
13218
13219         * Documentation/user/basic-notation.itely,
13220         instument-notation.itely, advanced-notation.itely:
13221         split up contents of notation.itely.
13222
13223         * Documentation/user/notation.itely: file removed.
13224
13225         * Documentation/user/invoking.itely, converters.itely:
13226         moved convert-ly info to invoking.itely.
13227
13228         * Documentation/user/global.itely, changing-defaults.itely,
13229         sound-output.itexi: moved global settings, file layout, and
13230         sound into global.itely.
13231
13232         * Documentation/user/sound-output.itexi: file removed.
13233
13234         * Documentation/user/lilypond.tely: removed links to
13235         notation.itely and sound.itely.
13236
13237 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13238
13239         * scm/output-ps.scm (grob-cause): only do mark_URI if non-empty.
13240
13241         * scm/framework-ps.scm (write-preamble): remove pdf-viewer code.
13242  
13243         * THANKS: add sponsor.
13244
13245         * scm/define-markup-commands.scm (with-url): new markup command.
13246
13247         * scm/page-layout.scm (TAGLINE): add www.lilypond.org with URL to
13248         tagline.
13249         
13250         * scm/output-tex.scm (url-link): stub.
13251
13252         * scm/output-ps.scm (url-link): new function.
13253
13254         * lily/lily-parser-scheme.cc (LY_DEFINE): deprecate
13255         ly:set-point-and-click
13256
13257 2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
13258
13259         * ps/music-drawing-routines.ps (mark_file_line): Switch Action
13260         based on pdf-viewer setting.
13261
13262         * scm/framework-ps.scm (write-preamble): Find and set preferred
13263         pdf-viewer.
13264
13265 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13266
13267         * Documentation/user/point-and-click.itely: update for PDF point &
13268         click.
13269
13270         * scripts/lilypond-pdfpc-helper.py: new file. Invoke different
13271         editors based on EDITOR setting.
13272
13273 2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
13274
13275         * scm/*: Oops, more grand 2005 replace bits.
13276
13277 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13278
13279         * ps/music-drawing-routines.ps: new routine: insert PDF mark
13280
13281         * scm/output-ps.scm (grob-cause): point & click support for
13282         PostScript
13283
13284 2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13285
13286         * lily/input-scheme.cc (LY_DEFINE): rename to
13287         ly:input-file-line-column
13288
13289 2005-02-26  Graham Percival  <gperlist@shaw.ca>
13290
13291         * Documentation/user/examples.itely: small fix from Steve Doonan.
13292
13293         * Documentation/user/scheme-tutorial.itely: small fix from Steve Doonan.
13294
13295         * THANKS: added Yuval Harel.
13296
13297         * Documentation/user/{various}: inserted two spaces after a period.
13298
13299         * Documentation/user/lilypond.tely: added framework for reorg.
13300
13301         * Documentation/user/basic-notation.itely, instrument-notation.itely,
13302         advanced-notation.itely, global.itely: new files, placeholder for
13303         future reorg.
13304
13305 2005-02-26 Yuval Harel  <yuvalh@hotpop.com>
13306
13307         * Documentation/user/notation.itely: revamped Polyphony section
13308         
13309 2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13310
13311         * Documentation/user/lilypond-book.itely (Music fragment options):
13312         doc fontload.
13313
13314         * Documentation/user/changing-defaults.itely (Text encoding): add
13315         fontload option to utf8 include
13316
13317         * scripts/lilypond-book.py (compose_ly): add fontload option
13318
13319         * scm/framework-eps.scm (dump-stencils-as-EPSes): add
13320         force-eps-font-include option.
13321
13322         * ly/chord-modifiers-init.ly (blackTriangleMarkup): reinstate
13323         black triangle
13324
13325         * Documentation/user/invoking.itely (Editor support): remove
13326         lilypond-latex section.
13327
13328         * scripts/lilypond-latex.py (Module): remove script.
13329
13330         * cygwin/lily-wins.py (stat): write to .lylog, so as not to
13331         overwrite .log. 
13332
13333         * lily/main.cc: remove -m, --no-layout
13334
13335         * flower/include/libc-extension.hh: add ALIAS_FILE_TO_FILECOOKIE
13336         to define. We don't want to override fprintf everywhere.
13337
13338 2005-02-26  Jan Nieuwenhuizen  <janneke@gnu.org>
13339
13340         * cygwin/lilypond.hint: 
13341         * cygwin/README.in: Update dependencies.
13342
13343         * stepmake/aclocal.m4 (STEPMAKE_PANGO, STEPMAKE_PANGO_FT2):
13344         Bugfix: do not pollute CPPFLAGS, LIBS.
13345
13346         * cygwin/mknetrel (extras): Cross compile fixes.
13347
13348         * ttftool/util.c: 
13349         * ttftool/ttfps.c: 
13350         * ttftool/ps.c: #include libc-extension.hh
13351
13352         * flower/include/libc-extension.hh:
13353         * flower/libc-extension.cc (fopencookie)[!HAVE_FOPENCOOKIE]: Add
13354         wrapper using funopen.
13355         (fopencookie, handle_cookie_io_fclose, handle_cookie_io_fprintf,
13356         handle_cookie_io_fprintf): Add wrappers catching Memory_out_stream.
13357
13358         * config.hh.in:
13359         * configure.in (AC_CHECK_FUNCS): Add fopencookie, funopen.
13360         (AC_CHECK_HEADERS): Add libio.h
13361
13362         * scripts/convert-ly.py: Uniformize, internationalize.
13363         (2.5.2): Remove fatal encoding rule.
13364         (2.5.13): Handle latin1 encoding gracefully.
13365
13366 2005-02-23  Jan Nieuwenhuizen  <janneke@gnu.org>
13367
13368         * HACKING: Fix line breaks.
13369
13370 2005-02-23  Werner Lemberg  <wl@gnu.org>
13371
13372         * mf/graycx.mf, mf/graylj.mf: Removed.  Any decent TeX distribution
13373         contains those two files.
13374
13375 2005-02-21  Werner Lemberg  <wl@gnu.org>
13376
13377         * mf/feta-nummer-code.mf ("Numeral 5"): Include intersection point
13378         to improve overlap removal process.
13379
13380         * mf/feta-slag.mf (draw_trillelement): Add parameter to control
13381         left and right ending.  This ensures better overlapping.
13382         Update all callers.
13383         ("lineprall"): Don't use draw_gridline to get better overlapping.
13384
13385 2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13386
13387         * scm/lily-library.scm (ps-embed-cff): add \n after EndResource
13388
13389         * Documentation/topdocs/NEWS.tely (Top): oops.
13390
13391 2005-02-21  Pedro Kroger  <kroeger@pedrokroeger.net>
13392
13393         * HACKING: new file.
13394
13395         * input/regression/utf8.ly (portuguese): added a portuguese example
13396         to show latin1 accents.
13397
13398 2005-02-21  Pal Benko  <benkop@freestart.hu>
13399
13400         * lily/mensural-ligature-engraver.cc:
13401         * lily/mensural-ligature.cc:
13402         * lily/include/mensural-ligature.hh: new algorithm implemented
13403
13404         * scm/define-grob-properties.scm: join-left killed (add-join may
13405         be used); join-left-amount changed to join-right-amount
13406
13407 2005-02-21  Graham Percival  <gperlist@shaw.ca>
13408
13409         * Documentation/user/notation.itely: small but urgent fix.
13410
13411 2005-02-21  Jürgen Reuter  <reuter@ipd.uka.de>
13412
13413         * lily/duration-scheme.cc: bugfix: correct parameters to
13414         SCM_ASSERT_TYPE.
13415
13416         * THANKS: added Pal.
13417
13418         * Documentation/user/notation.itely: bugfix: unTeXified
13419         $\\backslash$.  Bugfix: yet another glyph renaming victim:
13420         "timesig.*x/y" -> "timesig.*xy".
13421
13422 2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13423         
13424         * VERSION (PACKAGE_NAME): release 2.5.12
13425
13426 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13427
13428         * ly/engraver-init.ly: set tieWaitForNote to #t by default
13429
13430         * configure.in (gui_b): bump GUILE requirement to 1.6.5 
13431
13432         * Documentation/topdocs/NEWS.tely: add inputfileref macro.
13433
13434         * scm/framework-ps.scm (supplies-or-needs): uniq font name list.
13435
13436 2005-02-20  Jan Nieuwenhuizen  <janneke@gnu.org>
13437
13438         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly: recode
13439         latin1..utf-8.
13440
13441         * input/regression/stanza-number.ly:
13442         * input/regression/utf8.ly (hebrew): Use addlyrics.  Update.
13443
13444         * lily/tie-engraver.cc (acknowledge_grob): Compile fix.
13445
13446 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13447
13448         * Documentation/topdocs/NEWS.tely (Top): only mention 2.5
13449         NEWS. Refer to website for older news.  
13450
13451         * stepmake/bin/add-html-footer.py (i18n): don't strip .PNG /
13452         .HTML. This should be done for specific servers only.
13453
13454         * Documentation/topdocs/NEWS.tely (Top): move to .tely. Add some
13455         .ly image examples.
13456
13457         * scm/define-grobs.scm (all-grob-descriptions): put ledger lines
13458         in layer 0 too.
13459
13460         * scm/define-context-properties.scm
13461         (all-user-translation-properties): add tieWaitForNote
13462
13463         * scm/define-grobs.scm (all-grob-descriptions): add
13464         Tie_column::before_line_breaking
13465
13466         * lily/tie.cc (get_column_rank): new function
13467
13468         * lily/tie-column.cc (before_line_breaking): new function.
13469         (werner_directions): take into account ties that start on
13470         different columns.  
13471
13472         * lily/score-engraver.cc (set_columns): move add_column() so we
13473         have column rank available.
13474
13475         * lily/tie.cc (get_column_rank): new function.
13476
13477         * input/regression/utf8.ly (japanese): add japanese lyrics.
13478
13479         * lily/pfb.cc (LY_DEFINE): ly:ttf->pfa, new function.
13480
13481         * THANKS: add Steve D
13482
13483         * ttftool/*.c: add TTF -> Type42 conversion library. Based on
13484         Public Domain work by Juliusz Chroboczek <jch@pps.jussieu.fr>
13485
13486 2005-02-20  Tatsuya Ono  <tats_ono@infoseek.jp>
13487
13488         * mf/parmesan-heads.mf: "0harmonic" -> "s0harmonic"
13489         to show harmonic notes
13490         * scm/define-markup-commands.scm: in \markup-by-number
13491         "dots-dot" -> "dots.dot" to show dotted notes
13492
13493 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13494
13495         * flower/include/memory-stream.hh (class Memory_out_stream): new file.
13496
13497         * flower/memory-stream.cc (writer): new file.
13498
13499         * configure.in: add endian test.
13500
13501 2005-02-19  Jürgen Reuter  <reuter@ipd.uka.de>
13502
13503         * Documentation/user/examples.itely: small
13504         simplification/beautification
13505
13506         * Documentation/user/notation.ietly: bugfix: fixed many artefacts
13507         from the "x-y-z"->"x.y.z" renaming of glyphs throughout the whole
13508         notation manual.
13509
13510         * lily/mensural-ligature.cc: bugfix: another few victims of the
13511         "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
13512
13513         * ly/gregorian-init.ly: commit some experimental code for hi-level
13514         ligature input language lying around here for several months.
13515
13516         * lily/mensural-ligature-engraver.cc: bugfix: another victim of
13517         the "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
13518
13519         * lily/vaticana-ligature-engraver.cc: bugfix: another few
13520         "x-y-z"->"x.y.s-z" fixes.
13521
13522 2005-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13523
13524         * scm/framework-pdf.scm (scm): new file
13525
13526         * lily/include/pdf.hh (class Pdf_file): new file.
13527
13528         * lily/pdf.cc (write_trailer): new file.
13529
13530 2005-02-18  Erlend Aasland  <erlenda@gmail.com>
13531
13532         * input/regression/color.ly: new file
13533
13534         * lily/stencil.cc (interpret_stencil_expression):
13535         when a color expression is encountered: save current color,
13536         process the rest of the expression, and restore previous color.
13537
13538         * lily/system.cc (get_line): check all grobs for color property and
13539         prepare the stencil scheme expressions for further processing.
13540         Fix layer-loop.
13541
13542         * scm/define-grob-properties.scm: introduce the color property.
13543
13544         * scm/output-lib.scm: color helper functions.
13545
13546         * scm/output-ps.scm: introduce setcolor/resetcolor.
13547
13548 2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
13549
13550         * ly/*.ly, input/regression/*.ly: Added missing \version
13551         statements in some files.
13552
13553 2005-02-15  Graham Percival  <gperlist@shaw.ca>
13554
13555         * Documentation/user/notation.itely: minor editing.
13556
13557         * Documentation/user/converters.itely: updated convert-ly bugs.
13558
13559         * Documentation/user/lilypond-book.itely: add info about using
13560         feta characters in latex.
13561
13562 2005-02-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13563
13564         * scripts/convert-ly.py: new slur dash patch by Bertalan Fodor.
13565
13566 2005-02-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13567
13568         * scm/define-grob-properties.scm (all-user-grob-properties):
13569         removed 'dashed property.
13570
13571 2005-02-13  Nicolas Sceaux  <nicolas.sceaux@free.fr>
13572
13573         * scm/lily.scm (define-safe-public): new macro for defining
13574         variables that can be used in --safe mode. Use it in *.scm
13575         instead of manually setting safe-objects in safe-lily.scm.
13576
13577 2005-02-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13578         
13579         * lily/slur.cc: Slur-dash patch by Bertalan.
13580
13581         * ly/engraver-init.ly (EasyNotation): glyph name dash -> period.
13582
13583         * stepmake/bin/add-html-footer.py (do_file): do i18n only once. 
13584
13585 2005-02-10  Jan Nieuwenhuizen  <janneke@gnu.org>
13586
13587         * stepmake/aclocal.m4: teTeX-3.0 inimf fix.  Comment-out.
13588
13589 2005-02-09  Jan Nieuwenhuizen  <janneke@gnu.org>
13590
13591         * mf/GNUmakefile: teTeX-3.0 install fix.
13592
13593         * Cygwin patch from Bertalan.
13594
13595         * stepmake/stepmake/metafont-rules.make: Remove bashism.
13596
13597 2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
13598
13599         * GNUmakefile.in: 
13600         * SConstruct (symlink): teTeX-3.0 build fix: add map symlink.
13601
13602         * tex/GNUmakefile: teTeX-3.0 fix: install .enc in fonts/enc.  Add
13603         2.0.x compatibility.
13604
13605 2005-02-08  Werner Lemberg  <wl@gnu.org>
13606
13607         * mf/feta-din-code.mf: Format; clean up code.
13608         Replace `---' with `--' plus explicit path directions.
13609         (linethickness#, stafflinethickness#): Remove.
13610         ("dynamic f"): Replace `draw' with `draw_rounded_block'.
13611         ("dynamic s"): Improve shape.
13612         ("dynamic p"): Improve shape.
13613         Replace `draw' with better outline approximation.
13614         ("dynamic r"): Improve shape.
13615         Don't call `fill' and `draw' at the same time.
13616
13617 2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
13618
13619         * SConstruct (symlink):
13620         * GNUmakefile.in ($(builddir)/share/lilypond-force): teTeX-3.0
13621         build fix: add enc symlink.
13622
13623         * lily/general-scheme.cc: Compile fixes: include wchar.h, string.h.
13624
13625         Support for DESTDIR besides prefix=/foo
13626
13627         * vim/GNUmakefile (local-install): Use $(INSTALL) -d iso mkdir.
13628
13629         * stepmake/stepmake/*.make:
13630         * */GNUmakefile:
13631         * GNUmakefile.in: Prepend $(DESTDIR) to installation directory.
13632
13633         * config.make.in (prefix): Remove broken $(DESTDIR) hack.
13634
13635         * stepmake/aclocal.m4: Use %0.f iso %d to quiet gawk < 3.1.4 and
13636         mawk in fontforge (date) test.
13637
13638 2005-02-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13639
13640         * scm/font.scm (make-century-schoolbook-tree): add NCS as
13641         font-family=roman. Add Luxi Sans as sans
13642
13643 2005-02-07  Graham Percival  <gperlist@shaw.ca>
13644
13645         * Documentation/user/notation.itely: add warning about
13646         percent repeats and Voice contexts.
13647
13648         * Documentation/user/lilypond-book.itely: clarified the
13649         necessity of dvips -u arguments.
13650
13651 2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
13652
13653         * THANKS: Added a bunch of bug hunters.
13654
13655 2005-02-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13656
13657         * scm/framework-ps.scm (output-preview-framework): bugfix.
13658
13659         * ly/chord-modifiers-init.ly (ignatzekExceptionMusic): use unicode
13660         o/ for chord modifier..
13661
13662         * lily/general-scheme.cc (LY_DEFINE): new function ly:wide-char->utf-8.
13663
13664         * lily/drum-note-performer.cc:  remove unused (thanks Michael
13665         Welsh Duggan). 
13666
13667 2005-02-06  Jan Nieuwenhuizen  <janneke@gnu.org>
13668
13669         * Documentation/user/changing-defaults.itely (Text encoding): Clarify.
13670
13671         * ly/titling-init.ly: Do not also print intstrument in header on
13672         first page.  Do not print page number on first and only page.
13673
13674 2005-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13675
13676         * input/regression/*.ly: remove old-relative everywhere
13677
13678         * lily/music-sequence.cc (simultaneous_relative_callback): do
13679         what-if analysis on copy, not on original. Fixes old-relative
13680         compatibility.
13681
13682         * scm/backend-library.scm (postscript->png): space before
13683         --verbose.
13684         
13685 2005-02-05  Werner Lemberg  <wl@gnu.org>
13686
13687         * mf/feta-autometric.mf (fet_beginchar): Check whether `feta_group'
13688         is defined.
13689
13690         * mf/feta-alphabet.mf: Define `staffsize#'.
13691         Include `feta-params.mf'.
13692         s/staffheight/design_size/.
13693
13694         * mf/feta-alphabet??.mf: s/staffheight/design_size/.
13695
13696         * mf/feta-alphabet26.mf: Fix a serious bug (design size off by 8pt).
13697
13698         * mf/feta-nummer-code.mf: Reformatted.
13699         (draw_six): Use outline intersection to avoid a self-intersecting
13700         path.
13701         ("Numeral comma"): Fix serious outline glitches.  This slightly
13702         changes the glyph shape.
13703         ("Numeral dash"): Use `draw_rounded_block'.
13704         ("Numeral dot"): Use `drawdot'.
13705         ("Numeral 1"): Assure identical tangent directions for the
13706         intersection points of paths.  The glyph shape improvement is only
13707         visible at very high magnifications.
13708         ("Numeral 2"): Use `solve' macro to make the lower right part of
13709         the glyph outline touch the x axis exactly.  This changes the
13710         glyph shape.
13711         Minor fixes for better overlap removal support.
13712         ("Numeral 4"): Make lefter corner `rounder'.
13713         ("Numeral 5"): Assure identical tangent directions for the
13714         intersection points of paths.  This improves the glyph shape at
13715         high magnifications.
13716         ("Numeral 7"): Use `solve' macro to make the upper right part of
13717         the glyph outline touch the metrics box exactly.  This changes the
13718         glyph shape.
13719         Avoid corner in the upper left part of the glyph (causing a minor
13720         shape change).
13721
13722         * mf/feta-ital-*.mf: Removed.  Unused.
13723
13724 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13725
13726         * VERSION (PATCH_LEVEL): release 2.5.11
13727
13728         * input/regression/fill-line-test.ly: new file.
13729
13730         * buildscripts/gen-emmentaler-scripts.py (i): insert dash in
13731         emmentaler name, eg. emmentaler-23. 
13732
13733 2005-02-04  Christian Hitz  <chhitz@gmx.net>
13734
13735         * scm/scm/define-markup-commands.scm (fill-line): rework for better
13736         alignment with centered texts
13737
13738         * scm/stencil.scm (stack-stencils-padding-list): new function, takes a
13739         list of paddings
13740
13741 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13742
13743         * mf/GNUmakefile ($(outdir)/lilypond.map): add aybabtu to .map file.
13744
13745         * lily/note-column.cc (translate_rests): call flush_extent_cache()
13746         of parents when translating rests. Fixes: c-chord-rest.ly 
13747
13748         * lily/include/dimension-cache.hh (struct Dimension_cache): add
13749         dimension_callback_ member.
13750
13751         * lily/grob.cc (flush_extent_cache): new function. Force recompute
13752         of extents.
13753
13754 2005-02-04  Jan Nieuwenhuizen  <janneke@gnu.org>
13755
13756         * all but lily/*: The grand 2004/2005 replace.
13757
13758 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13759
13760         * lily/*: add space after ,  
13761
13762         * scm/music-functions.scm (has-request-chord): don't use
13763         ly:music-name anywhere. Fixes <<\\>> notation. 
13764
13765         * scm/define-markup-commands.scm (box): use font-size for
13766         padding. Fixes boxed-rehearsal-marks.ly
13767
13768         * lily/parser.yy (assignment_id): allow LYRICS_STRING as
13769         identifier definition too, so foo = \lyrics { ...   } bar = #1
13770         doesn't complain about "bar" being LYRICS_STRING.
13771
13772         * lily/paper-def.cc (find_pango_font): new routine; Store
13773         pango_fonts in hash tab too. This is necessary for retrieving
13774         Pango_fonts::physical_font_tab() later on.
13775  
13776         * lily/pango-font.cc (pango_item_string_stencil): bugfix: don't
13777         crash if psname is null.
13778
13779         * lily/lily-guile.cc (ly_hash2alist): new function
13780
13781         * Documentation/user/changing-defaults.itely (Text encoding):
13782         rewrite. 
13783
13784         * lily/pango-font.cc (physical_font_tab): new member. Store PSname
13785         -> font_filename mapping.
13786
13787         * lily/pango-font-scheme.cc (LY_DEFINE): new file. New function
13788         ly_pango_font_physical_fonts
13789
13790         * scm/framework-ps.scm (supplies-or-needs): extract names from
13791         physical Pango_fonts.
13792
13793         * utf8.ly: new file.
13794
13795 2005-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13796
13797         * Documentation/user/changing-defaults.itely (Page layout): add
13798         doco about systemSeparatorMarkup.
13799
13800         * scm/page-layout.scm (default-page-make-stencil): add-to-page
13801         function.
13802         (default-page-make-stencil): insert system separators.
13803
13804         * scm/define-markup-commands.scm (hcenter): add
13805         (beam): add.
13806
13807 2005-02-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13808
13809         * scm/output-ps.scm (ez-ball): reinstate ez notation.
13810
13811 2005-02-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13812
13813         * lily/main.cc: Spell backend consistently.  Sort options.
13814
13815 2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13816
13817         * scripts/lilypond-book.py (Module): revert @include.
13818         
13819 2005-01-31  Jan Nieuwenhuizen  <janneke@gnu.org>
13820
13821         * scripts/lilypond-book.py: Resurrect HTML links to .ly source.
13822         Bugfix: @include .tex (not .texi).  Small cleanups.
13823
13824         * stepmake/bin/add-html-footer.py (i18n): New function.
13825
13826 2005-01-31  Werner Lemberg  <wl@gnu.org>
13827
13828         * mf/feta-nummer.mf: Removed.  Unused.
13829
13830 2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13831
13832         * lily/ : 2004 -> 2005 s&r
13833
13834         * scm/file-cache.scm (cached-file-contents): add file. Read each
13835         file only once.
13836
13837         * scm/font.scm (add-pango-fonts): change order. Medium weight is
13838         now default.
13839
13840         * VERSION: release 2.5.10
13841         
13842         * mf/GNUmakefile (INSTALLATION_OUT_FILES4): install cff.ps files.
13843
13844         * make/ly-rules.make ($(outdir)/%.texi): detect new EOF marker.
13845
13846         * scm/framework-ps.scm (dump-stencil-as-EPS): robustness: ensure
13847         that both X and Y extents of bbox are non-nil.
13848
13849 2005-01-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13850
13851         * scm/chord-name.scm (alteration->text-accidental-markup): change
13852         - to . 
13853
13854         * scm/output-ps.scm (utf8-string): add utf8-string for completeness.
13855
13856         * scm/framework-ps.scm (dump-stencil-as-EPS): new function
13857
13858         * Documentation/user/invoking.itely (Invoking lilypond): add note
13859         about EPS backend.
13860
13861         * scm/framework-eps.scm: new file: create per-system/per-page EPS
13862         files for inclusion in lilypond-book document.
13863
13864         * input/tutorial/lbook-latex-test.tex: rename from lilbook.tex
13865
13866         * input/tutorial/lbook-texi-test.texi: new file.
13867
13868         * scm/safe-lily.scm (safe-objects): add
13869         {begin,end}-of-line-(in)?visible as safe.
13870  
13871 2005-01-30  Graham Percival  <gperlist@shaw.ca>
13872
13873         * Documentation/user/changing-defaults.itely: fixed example
13874         of (dynamics).
13875
13876 2005-01-29  Graham Percival  <gperlist@shaw.ca>
13877
13878         * lily/main.cc: fix info about -o=FILE.
13879
13880 2005-01-29  Werner Lemberg  <wl@gnu.org>
13881
13882         * mf/feta-toevallig.mf ("Natural"): Completely changed the
13883         construction to assure smooth transition from straight to curved
13884         lines.
13885
13886 2005-01-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13887
13888         * lily/stencil.cc (moved_to_edge): don't halt on adding empty
13889         stencils.
13890
13891         * ps/lilyponddefs.ps: add start-page, start-system doesn't
13892         translate to top of page. Fixes alignment problems of
13893         lilypond-generated EPS files.
13894
13895 2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13896
13897         * scm/part-combiner.scm (analyse-spanner-states): trigger on
13898         crescendo-end as well, since Decrescendo maybe ended with Stop
13899         Crescendo.). Fixes: partcombine-diminuendo.ly
13900
13901         * scm/script.scm (default-script-alist): swap portato symbols.
13902
13903         * lily/instrument-name-engraver.cc (acknowledge_grob): typo.
13904
13905         * lily/paper-outputter-scheme.cc (LY_DEFINE):
13906         ly:outputter-port. New function.
13907
13908         * scm/framework-ps.scm (output-classic-framework): dump a
13909         -systems.texi too
13910         (output-classic-framework): dump multiple systems on an "infinite"
13911         page EPS including fonts. 
13912
13913         * scripts/lilypond-book.py (Lilypond_snippet.ly_is_outdated): use
13914         .eps files for both texi and tex formats. Use PNG coming from
13915         lilypond.
13916         
13917 2005-01-28  Graham Percival  <gperlist@shaw.ca>
13918
13919         * Docuemntation/user/invoking.itely: fix info about -o=FILE.
13920
13921         * scripts/lilypond-latex.py: fix info about -o=FILE.
13922
13923 2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13924
13925         * ly/generate-embedded-cff.ly: write .cff.ps files.
13926
13927         * mf/GNUmakefile ($(outdir)/lilypond.map): add .cff.ps to .map file.
13928
13929         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
13930         $(outdir)/%.svg $(outdir)/%.pfa): remove --simplify
13931
13932 2005-01-28  Jan Nieuwenhuizen  <janneke@gnu.org>
13933
13934         * lily/include/guile-compatibility.hh (SCM_VECTOR_P): Compile fix.
13935
13936 2005-01-28  Werner Lemberg  <wl@gnu.org>
13937
13938         * mf/feta-macros.mf (soft_start_penstroke, soft_end_penstroke): New
13939         macros.
13940         (draw_bulb): Improved.
13941
13942         * mf/feta-pendaal.mf ("Pedal asterisk"): Remove workaround for
13943         metapost bug.
13944         (draw_pedal_P): Use soft_end_penstroke.
13945         (draw_pedal_d): Use soft_start_penstroke.
13946
13947         * mf/feta-schrift.mf ("Trill (`tr')"): Remove redundant point in
13948         path.
13949         ("Varied Coda"): Move some points to avoid fontforge warnings.  This
13950         doesn't change the glyph shape.
13951
13952         * mf/feta-accordion.mf ("accOldEE"): Draw glyph differently (without
13953         changing the shape) to avoid fontforge warnings.
13954
13955         * mf/feta-klef.mf (draw_tab_T, draw_tab_A, draw_tab_B): Use
13956         soft_end_penstroke and fix glyph shape.
13957
13958 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13959
13960         * lily/*.cc: Scheme deprecation of SCM_VECTOR_* 
13961
13962 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13963
13964         * scm/define-markup-commands.scm (line): filter out empty stencils
13965         from line command.
13966
13967         * lily/stencil-scheme.cc (LY_DEFINE): only allow finite real
13968         amount.
13969
13970 2005-01-27  Graham Percival  <gperlist@shaw.ca>
13971
13972         * Documentation/user/notation.itely: added info about what
13973         \voiceFoo does.  Also rewrote warning about marks at
13974         a line break.
13975
13976         * Documentation/user/changing-defaults.itely: added info
13977         about putting dynamics in parenthesis and brackets.
13978
13979 2005-01-27  Werner Lemberg  <wl@gnu.org>
13980
13981         * mf/feta-schrift.mf ("Trill (`tr')"): Fix typo.
13982
13983 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13984
13985         * mf/feta-schrift.mf: reverse u and d portato. Fixes:
13986         portato-direction.ly
13987
13988         * lily/beam.cc (consider_auto_knees): add beam height to
13989         threshold. Fixes: knee-multiple-beam.ly
13990
13991         * lily/instrument-name-engraver.cc (acknowledge_grob): also ignore
13992         pedal line spanners. Fixes: instrument-center-pedal.ly
13993
13994         * lily/auto-beam-engraver.cc (acknowledge_grob): stop beam
13995         if encountering barline. Fixes: auto-beam-repeat.ly
13996
13997 2005-01-26  Werner Lemberg  <wl@gnu.org>
13998
13999         * mf/feta-slag.mf (draw_trillelement): Fix shape to get clean
14000         overlapping.
14001
14002         * mf/feta-toevallig.mf (draw_meta_sharp): Fix shape to avoid curves
14003         with inflections for the 1/2 sharp glyph.
14004
14005         * mf/feta-schrift.mf ("Trill (`tr')"): Fix start position of
14006         connection between `t' and `r'.
14007         Unify bulb with the rest of `r' to avoid grazing outlines which
14008         confuses the overlap removal algorithm of fontforge.
14009
14010         * mf/feta-bolletjes.mf (draw_slash): Fix shape to avoid curves with
14011         inflections.
14012         (draw_cross): Fix shape to have uniform thickness in corners.
14013
14014         * mf/feta-pendaal.mf (draw_pedal_P): Break shape into smaller pieces
14015         to avoid an uneven number of self-intersections; this confuses
14016         fontforge.
14017         Fix a slight bug in the shape at left bottom (which is visible only
14018         at high magnifications).
14019         `Center' the stem horizontally to avoid overlapping.
14020
14021 2005-01-24  Werner Lemberg  <wl@gnu.org>
14022
14023         * mf/feta-autometric.mf (fet_beginfont): Set font_coding_scheme
14024         to `asis'.
14025         (fet_begingroup): Save group name in string `feta_group'.
14026         (fet_endgroup): Updated.
14027         (fet_beginchar): Emit `glyph_name' special for mf2pt1.
14028
14029         * mf/feta-bolletjes.mf: s/p/pat/ for paths.
14030
14031         * mf/feta-pendaal.mf ("Pedal asterisk"): Add workaround for bug
14032         in metapost.
14033
14034 2005-01-24  Graham Percival  <gperlist@shaw.ca>
14035
14036         * Documentation/user/notation.itely: really minor editing.
14037
14038 2005-01-22  Graham Percival  <gperlist@shaw.ca>
14039
14040         * Documentation/user/examples.itely: minor editing.
14041
14042         * Documentation/user/changing-defaults.itely: minor editing.
14043
14044         * Documentation/user/notation.itely: clarified info on polyphony
14045         and \addlyrics.
14046
14047 2005-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
14048
14049         * scm/output-gnome.scm: 
14050         * scm/output-svg.scm:
14051         * scm/lily-library.scm (font-name-style): Update font name
14052         kludging for fontconfig use.
14053
14054 2005-01-20  Erlend Aasland  <erlenda@gmail.com>
14055
14056         * scm/define-markup-commands.scm: Document right-align and
14057         larger markup commands. Remove "TODO" from the topmost comment
14058         "each markup function should have a doc string." More consistent
14059         use of new-lines.
14060
14061 2005-01-22  Graham Percival  <gperlist@shaw.ca>
14062
14063         * Documentation/user/changing-defaults: removed info about
14064         copyright symbol, since it's likely to change soon.
14065         Added info about betweensystemspace.
14066
14067         * Documentation/user/notation.itely: minor fixes.
14068
14069         * Documentation/user/lilypond.tely,
14070         Documentation/user/music-glossary.tely: changed copyright
14071         date to 2005 instead of 2004.
14072
14073         * input/test/volta-chord-names.ly: added old example back.
14074
14075 2005-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14076
14077         * mf/feta-beugel.mf: use design size 20 (not 15).
14078
14079         * mf/aybabtu.pe.in: scale brace fonts to design sizes.
14080         change name to aybabtu completely
14081
14082 2005-01-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14083
14084         * buildscripts/gen-emmentaler-scripts.py (outdir): add
14085         design_size to fontname
14086
14087 2005-01-19  Werner Lemberg  <wl@gnu.org>
14088
14089         * mf/feta-accordion.mf, mf/feta-klef.mf, mf/feta-pendaal.mf,
14090         mf/feta-schrift.mf: s/p/pat/ if a path variable.
14091
14092         * mf/feta-autometric.mf (set_char_box): Add code which emits
14093         specials for mf2pt1 if run with metapost.
14094         (to_bp): New macro for mf2pt1.
14095
14096 2005-01-18  Graham Percival  <gperlist@shaw.ca>
14097
14098         * Documentation/user/changing-defaults: added info on
14099         creating a copyright symbol.
14100
14101 2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14102
14103         * VERSION: release 2.5.9
14104         
14105 2005-01-18  Erlend Aasland  <erlenda@gmail.com>
14106
14107         * scm/auto-beam.scm: Simplify score-override-auto-beam-setting
14108
14109         * Documentation/user/notation.itely: Document
14110         score-override-auto-beam-setting Fix documentation for
14111         revert-auto-beam-setting.
14112
14113 2005-01-18  Werner Lemberg  <wl@gnu.org>
14114
14115         * scm/framework-ps.scm (ps-embed-cff): Fix DSC comments.
14116         (procset): New function to define a procset resource.
14117         (ps-embed-pfa): New function to define a font resource.
14118         (setup): New function to define a `Setup' environment.
14119         (preamble): Use new functions.
14120
14121         * ps/lilypond.defs (init-lilypond-parameters): New function to
14122         get rid of directly executed PS code.  Used in scm/framework-ps.scm.
14123
14124 2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14125
14126         * mf/GNUmakefile (MFTRACE_FLAGS): add --no-afm to MFTRACE_FLAGS
14127
14128 2005-01-17  Erlend Aasland  <erlenda@gmail.com>
14129
14130         * scm/define-markup-commands.scm: Change number->markletter-string
14131         to take two arguments (vector number). Add number->mark-alphabet-vector
14132         and markalphabet markup command.
14133
14134         * scm/translation-functions.scm: Add format-mark-box-alphabet,
14135         format-mark-alphabet, format-mark-box-barnumbers and
14136         format-mark-barnumbers. Fix bug in format-mark-box-numbers.
14137
14138 2005-01-17  Graham Percival  <gperlist@shaw.ca>
14139
14140         * Documentation/user/examples.itely: add SATB automatic piano
14141         reduction template.
14142
14143         * Documentation/user/notation.itely: added info about changing
14144         partcombine texts.  Also adds examples of alternate lyrics.
14145
14146         * Documentation/user/changing-defaults.itely: added warning
14147         about \RemoveEmptyStaffContext overriding previous changes.
14148
14149 2005-01-17  Werner Lemberg  <wl@gnu.org>
14150
14151         * buildscripts/mf-to-table.py: Use `FetaAlphabetEncoding' for
14152         feta-alphabet*.
14153
14154 2005-01-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14155
14156         * python/lilylib.py (make_ps_images): don't do final showpage for
14157         multi-page documents.
14158         
14159         * VERSION (MY_PATCH_LEVEL): release 2.5.8
14160
14161 2005-01-16  Graham Percival  <gperlist@shaw.ca>
14162
14163         * Documentation/user/lilypond.tely: changed order of appendices;
14164         unified index should be last.
14165
14166         * Documentation/user/notation.itely: add example of key signatures
14167         and info about Staff.printKeyCancellation.
14168
14169 2005-01-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14170
14171         * lily/include/repeated-music.hh (class Repeated_music): change
14172         into "namespace" class.
14173
14174         * lily/event.cc: remove Key_change_event.
14175
14176         * lily/include/transposed-music.hh (class Transposed_music): remove.
14177
14178         * lily/transposed-music.cc: remove
14179
14180         * lily/include/relative-music.hh: remove.
14181
14182         * lily/include/music-sequence.hh (struct Music_sequence): change
14183         into "namespace" class.
14184
14185         * lily/untransposable-music.cc (Module): remove
14186
14187         * lily/include/un-relativable-music.hh (Module): remove
14188
14189         * lily/include/untransposable-music.hh (Module): remove
14190
14191         * lily/include/music-list.hh (Module): remove file
14192
14193         * lily/un-relativable-music.cc: remove file.
14194
14195 2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
14196
14197         * lily/parser.yy: Compile fix.
14198
14199 2005-01-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14200
14201         * lily/include/music.hh (class Music): unvirtualize transpose().
14202
14203         * lily/sequential-music.cc: remove file.
14204
14205         * lily/include/lyric-combine-music.hh ("music.hh"): remove file.
14206
14207         * lily/slur-scoring.cc (get_best_curve): only switch on
14208         DEBUG_SLUR_SCORING for non NDEBUG builds.
14209
14210         * lily/include/music.hh (class Music): replace Music::start_mom()
14211         by start-callback property
14212
14213         * lily/include/grace-music.hh: remove file. 
14214
14215         * lily/stem.cc (height): robustness fix.
14216
14217         * lily/time-scaled-music.cc: remove file.
14218
14219         * lily/include/music.hh (class Music): include SCM init argument.
14220         (class Music): replace Music::get_length() virtual by
14221         length-callback property everywhere.
14222
14223         * scripts/convert-ly.py (conv): add  # to \property scalar value.
14224
14225         * mf/GNUmakefile: don't install *list.ly
14226
14227 2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
14228
14229         * mf/GNUmakefile (CFF_FILES): Bugfix: only big cheeses and braces.
14230
14231 2005-01-12  Werner Lemberg  <wl@gnu.org>
14232
14233         This patch addresses the following problems in the feta sources
14234         files which contribute to the fetaXX fonts.
14235
14236         . Many fixes for rasterization at low resolutions (consistent use of
14237           `vround' and `hround', integer shift values for paths, applying
14238           `eps' for mirrored paths, use of `define_whole_pixels' and
14239           friends, etc.) -- while this probably looks like a waste of time
14240           it has revealed deficiencies in some glyph shapes.  See comment at
14241           the end of feta-params.mf how vertical symmetry is achieved.
14242
14243         . The `---' operator has been replaced everywhere with `--'; this
14244           both improves and considerably reduces the font size after
14245           conversion with mf2pt1.
14246
14247         These change aren't explicitly mentioned below since virtually all
14248         glyphs are affected.
14249
14250         Other notable differences:
14251
14252         . Glyphs from feta-accordion.mf now have charboxes around the
14253           outline.
14254
14255         . Fixed incorrect charbox for `accDot'.
14256
14257         . The `rcomma' and `lcomma' glyphs were distorted due to a typo.
14258
14259         . Fixed position of the bow in the `upprall' glyph and its siblings.
14260
14261         . The bulb size in the `2/2 meter' and `4/4 meter' glyphs is now
14262           dependent on the staff line thickness to avoid touching the middle
14263           staff line at smaller sizes.
14264
14265         . Largely extended output for feta-testXX: Where useful, glyphs
14266         are shown both between and on staff lines.
14267
14268
14269         * mf/feta-params.mf (staff_space_rounded,
14270         stafflinethickness_rounded, linethickness_rounded,
14271         ledgerlinethickness_rounded, stemthickness_rounded): New variables.
14272         Update all code which uses them where appropriate.
14273         (feta_eps, feta_shift, feta_space_shift, feta_offset, feta_fillpen):
14274         New variables used to control rasterization at low resolutions.  Set
14275         to zero if feta code is processed with metapost.
14276
14277         * mf/feta-macros.mf (draw_staff, draw_staff_outline): Updated.
14278         (draw_rounded_block, draw_square_block): Updated to use `--' only.
14279         (flare_path): Updated.
14280         Make it work with `filldraw' (but only circular pens).
14281         (hfloor, vfloor, hceiling, vceiling): New macros.
14282
14283         * mf/feta-accordion.mf ("accDiscant", "accFreebase", "accStdbase"):
14284         Use `draw' again in mf mode to have good pixel dropout control.
14285         Fix intersection points of horizontal lines with circle.
14286         ("accDot"): Fix parameters for set_char_box.
14287         ("accOldEE"): Use `draw' again in mf mode to have good pixel dropout
14288         control.
14289
14290         * mf/feta-banier.mf: Updated.
14291
14292         * mf/feta-bolletjes.mf (remember_pic): New variable, used for
14293         testing.
14294         (undraw_inside_ellipse): Remove `center' argument.  Update all
14295         callers.
14296         (draw_brevis): New macro, called by "Brevis notehead".
14297         (draw_whole_triangle_head): New macro, called by "Whole
14298         trianglehead".
14299         (draw_small_triangle_head): Use `filldraw'.
14300
14301         * mf/feta-eindelijk.mf: Remove useless global group.
14302         Updated.
14303
14304         * mf/feta-klef.mf (draw_c_clef): Correct point positions for using
14305         `filldraw'.
14306
14307         * mf/feta-pendaal.mf: Updated.
14308
14309         * mf/feta-puntje.mf: Updated.
14310
14311         * mf/feta-schrift.mf (draw_very_long_fermata): Simplified to use
14312         less points.
14313         ("Flageolet"): Use `draw' again in mf mode to have good pixel
14314         dropout control.
14315         ("Varied Coda"): Use `draw_block'.
14316         (draw_comma): Fix typo.
14317         (draw_arpeggio_arrow): Use `draw' also in mf mode to have good
14318         pixel dropout control.
14319
14320         * mf/feta-slag.mf ("upprall", "downprall", "lineprall"): Fix start
14321         position of bow.
14322
14323         * mf/feta-timesig.mf (draw_C): Reduce bulb size for smaller design
14324         sizes.
14325
14326         * mf/feta-toevallig.mf (remember_pic): New variable, used for
14327         testing.
14328         (draw_meta_sharp): Much simplified.
14329         ("Sharp", "1/2 Sharp", "3/4 Sharp"): Don't rotate but shift.
14330
14331         * mf/feta-test-generic.mf: Include all files as in feta-generic.mf.
14332
14333 2005-01-13  Mats Bengtsson  <mabe@s3.kth.se>
14334
14335         * Documentation/user/notation.itely (Ancient rests): Fix typo
14336         (thanks Anthony)
14337
14338 2005-01-13  Jan Nieuwenhuizen  <janneke@gnu.org>
14339
14340         * scm/auto-beam.scm (score-override-auto-beam-setting): New function.
14341
14342         * lily/main.cc (setup_paths): Add cff.
14343
14344         * mf/GNUmakefile (foe): Include actual target %.cff.
14345         (INSTALLATION_OUT_SUFFIXES): Install CFF and SVG fonts too.
14346
14347 2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14348
14349         * lily/include/lily-lexer.hh (class Lily_lexer): lose hungarian _b
14350         suffix for main_input_b_.
14351
14352         * scm/music-functions.scm (toplevel-music-functions):
14353         precompute music lengths for music expressions.  
14354
14355 2005-01-11  Nicolas Sceaux  <nicolas.sceaux@free.fr>
14356
14357         * lily/include/input.hh (class Input): new `end_' slot for end of
14358         input. Renamed defined_str0_ to start_.
14359
14360         * lily/input.cc (Input): Add Input::Input (Input const &) and
14361         remove Input::Input (Source_file*, char const *). Use the new
14362         slots.
14363         (set_location): method used by bison to propagate input
14364         locations (YYLLOC_DEFAULT).
14365         (end_line_number, end_column_number, step_forward): new methods
14366         
14367         * lily/input-scheme.cc (ly:input-both-locations): new function,
14368         similar to ly:input-location, but also return the end line and
14369         column.
14370
14371         * lily/include/includable-lexer.hh: 
14372         * lily/includable-lexer.cc: 
14373         * lily/include/lily-lexer.hh (class Lily_lexer): 
14374         * lily/lily-lexer.cc (add_lexed_char): Move add_lexed_char from
14375         Includable_lexer to Lily_lexer, in order to update lexloc (the
14376         yylloc), a new slot of Lily_lexer.
14377         (here_input, LexerError): simplify by using the lexloc slot (aka
14378         yylloc)
14379
14380         * lily/lexer.ll: #define yylloc to use input locations (it may
14381         be useless here?). Fixed the #embedded_scm rule (step the location
14382         forward in order to skip the sharp sign before parsing the scheme
14383         expression)
14384
14385         * lily/include/lily-parser.hh (class Lily_parser): 
14386         * lily/lily-parser.cc: Remove push_spot(), pop_spot() and
14387         here_input()
14388         (parser_error): overload for more precise locations of errors.
14389
14390         * lily/parser.yy (YYLTYPE): set location type to Input
14391         (YYLLOC_DEFAULT): use Input::set_location()
14392         (yylex): add the YYLTYPE* location parameter.
14393         Clean push_spot()/pop_spot()/here_input(), and use @$, @1, etc.
14394         Give an Input parameter to THIS->parser-error() for more accurate
14395         messages.
14396
14397 2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14398
14399         * stepmake/aclocal.m4: do NDEBUG for optimizing builds.
14400
14401         * lily/include/beam.hh (DEBUG_QUANTING): performance: only switch
14402         on BEAMQUANTING for non-NDEBUG builds.
14403
14404         * lily/stem.cc (head_count): performance: avoid String::String()
14405         inside oft called function.
14406
14407 2005-01-09  Graham Percival  <gperlist@shaw.ca>
14408
14409         * Documentation/user/examles.itely: attempted fix for broken
14410         string quartet template.
14411
14412         * Documentation/user/notation.itely: remove unnecessary broken
14413         link.
14414
14415 2005-01-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14416
14417         * VERSION (PACKAGE_NAME): release 2.5.7
14418
14419 2005-01-09  Jan Nieuwenhuizen  <janneke@gnu.org>
14420
14421         * config.make.in (METAFONT): Append -progname=mf, fixes use with
14422         mf-nowin for teTeX-3.0.  Backportme.
14423
14424         * scm/output-svg.scm (utf8-string): New function.
14425
14426         * scm/output-gnome.scm (utf8-string): New function.
14427         (otf-name-mangling): Remove.
14428
14429         * lily/pango-font.cc (Pango_font): Use font string iso font
14430         filename for utf8-text.
14431
14432         * buildscripts/gen-emmentaler-scripts.py: Remove designsize from
14433         name.
14434
14435 2005-01-08  Graham Percival  <gperlist@shaw.ca>
14436
14437         * Documentation/user/notation.itely: add info about
14438         Staff.extraNatural = ##f in Pitches section.  Also
14439         fixed some minor issues in the Vocal music section.
14440
14441 2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14442
14443         * scm/output-ps.scm (white-text): comment out Helvetica font,
14444         which is broken for my GS install.
14445
14446         * lily/pango-font.cc (pango_item_string_stencil): use ink_rect,
14447         which provides a tighter bbox.
14448
14449         * scm/define-grobs.scm (all-grob-descriptions): remove all
14450         extra-offsets from definitions.
14451
14452 2005-01-08  Erlend Aasland  <erlenda@gmail.com>
14453
14454         * scm/output-lib.scm: Rename guitar-tunings to guitar-tuning and
14455         add tuning for 4-string bass and some common 4/5-string banjo
14456         tunings.  New function (four-string-banjo) turns a 5-string tuning
14457         into a 4-string tuning.  New function
14458         (fret-number-tablature-format-banjo) computes correct fret numbers
14459         on 5-string banjos.
14460
14461         * ly/engraver-init.ly: Default stringTunings = #guitar-tuning
14462         Add beam correction to TabVoice.
14463
14464         * scm/define-grobs.scm: Adjust notehead offset. Print fret numbers
14465         using bold font; makes tabs more readable.
14466
14467 2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14468
14469         * lily/font-select.cc (get_font_by_design_size): don't make
14470         Modified_font_metric; this causes trouble, since we don't know the
14471         font magnification from inside Pango_font::text_stencil()
14472
14473         * lily/all-font-metrics.cc (find_pango_font): take magnification argument.
14474
14475         * Documentation/user/notation.itely (The Lyrics context): comment out
14476         broken {Small ensembles} link.
14477
14478         * scm/framework-svg.scm (output-framework): change calling convention.
14479
14480         * lily/object-key-dumper-scheme.cc: new file.
14481
14482         * lily/object-key-undumper-scheme.cc: new file.
14483
14484         * lily/tweak-registration-scheme.cc: new file.
14485
14486         * lily/pango-select.cc (symbol_to_pango_variant): init local variable.
14487
14488         * Documentation/user/examples.itely (String quartet): uncomment
14489         broken example.
14490
14491         * lily/font-config.cc: new file.
14492
14493 2005-01-08  Jan Nieuwenhuizen  <janneke@gnu.org>
14494
14495         * scm/output-svg.scm: 
14496         * scm/output-gnome.scm: s/bigcheese/emmentaler.
14497
14498         * lily/score-engraver.cc (MUSIC_FONT): Use emmentaler20.
14499
14500 2005-01-07  Jan Nieuwenhuizen  <janneke@gnu.org>
14501
14502         * lily/general-scheme.cc (LY_DEFINE): Use snprintf (WAS: sprintf).
14503         Add headers.
14504
14505         * lily/GNUmakefile (general-scheme.o): Add version.hh dependency.
14506
14507 2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14508
14509         * mf/GNUmakefile (debian-mirror): rename bigcheese to emmentaler.
14510
14511         * lily/include/main.hh: lose _b hungarian suffixes for global
14512         variables.
14513
14514         * lily/include/lily-guile-macros.hh: new file.
14515
14516         * lily/pango-select-scheme.cc (LY_DEFINE): new file.
14517
14518         * lily/general-scheme.cc: new file. 
14519
14520         * lily/font-select.cc (get_font_by_design_size): retrieve
14521         PangoFont for (designsize . "pango-descr") entries.
14522
14523         * lily/lily-parser-scheme.cc: new file.
14524
14525         * lily/output-def-scheme.cc: new file.
14526
14527         * lily/paper-book-scheme.cc: new file.
14528
14529         * lily/duration-scheme.cc (LY_DEFINE): new file.
14530
14531         * lily/pitch-scheme.cc:  new file.
14532
14533         * scm/font.scm (add-cmr-fonts): use real dimens in font selection.
14534
14535 2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14536
14537         * lily/dimensions.cc (LY_DEFINE): add ly:{inch,cm,mm,bp,pt}.
14538
14539 2005-01-06  Graham Percival  <gperlist@shaw.ca>
14540
14541         * Documentation/user/notation.itely: minor editing.
14542
14543         * Documentation/user/changing-defaults: minor editing.
14544
14545         * Documentation/user/examples.itely: add template for
14546         string quartet part extraction; demonstrates tag.
14547
14548 2005-01-06  Erlend Aasland  <erlenda@gmail.com>
14549
14550         * Documentation/user/notation.itely: documents
14551         format-mark-box-letters and format-mark-box-numbers
14552
14553         * scm/define-context-properties.scm: change comment.
14554
14555 2005-01-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14556
14557         * scm/framework-ps.scm (output-classic-framework): new function:
14558         dump systems as separate .eps files (without fonts) and write a
14559         single collecting .tex file.
14560
14561 2005-01-05  Mats Bengtsson  <mabe@s3.kth.se>
14562
14563         * Documentation/user/notation.itely (Setting simple songs):
14564         Correct several errors in the equivalent formulation of
14565         \addlyrics. 
14566         (The Lyrics context): Corrected link to the SATB example.
14567
14568 2005-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14569
14570         * scm/lily.scm (completize-formats): new function
14571         (postprocess-output): new function
14572
14573         * lily/paper-book.cc (classic_output): change calling
14574         convention. Give basename as first argument. 
14575         remove Paper_book::post_processing().
14576
14577         * lily/lily-guile.cc (LY_DEFINE): ly:output-backend, new function.
14578
14579 2005-01-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14580
14581         * lily/paper-outputter.cc (LY_DEFINE): new function
14582         ly:outputter-close.
14583
14584         * lily/main.cc: change --format,-f to --backend,-b
14585
14586         * lily/include/main.hh: rename format to backend.
14587
14588         * scm/translation-functions.scm (format-mark-box-numbers): add.
14589         patch by Erlend Aasland
14590
14591 2005-01-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14592
14593         * lily/pango-font.cc (text_stencil): dump string as
14594         (utf-8-string FONTDESC UTF8) for use in -f gnome, -f svg.
14595
14596 2005-01-03  Jan Nieuwenhuizen  <janneke@gnu.org>
14597
14598         * configure.in (gui_b): Remove handy developer-only
14599         PKG_CONFIG_PATH settings that cater for Jan-and-Han-Wen ~/usr/pkg/
14600         CVS source installations (but break other non-default but correct
14601         PKG_CONFIG_PATH setups), as this is no longer developer-only.
14602
14603         * SConstruct: 
14604         * ps/GNUmakefile (INSTALLATION_FILES): teTeX-3.0
14605         compatibility (backportme).
14606
14607         * GNUmakefile.in: teTeX-3.0 compatibility (backportme).
14608
14609 2005-01-03  Werner Lemberg  <wl@gnu.org>
14610
14611         Prepare glyph shapes for mf2pt1 conversion.
14612
14613         * mf/feta-accordion.mf (accreg_pen): Removed.  No longer used.
14614         (accDiscant, accFreebase, accStdbase): Replace `draw' with
14615         `penstroke'.
14616         (accDot): Use `drawdot'.
14617         (accBayanbase): Replace `draw' with `draw_gridline'.
14618         (print_penpos): Moved to feta-macros.mf.
14619         (accOldEE): Replace `filldraw' with `penstroke'.
14620         Replace `draw' with `penstroke' and `drawdot'.
14621
14622         * mf/feta-banier.mf: Code clean-up.
14623         ("grace dash (up)", "grace dash (down)"): Replace `draw' with
14624         `fill'.
14625
14626         * mf/feta-bolletjes (draw_cross): Remove call to `labels'.
14627
14628         * mf/feta-eindelijk.mf (draw_rest_bulb, draw_eigth_rest): Add
14629         paremeter to control drawing of labels.  Update all callers.
14630
14631         * mf/feta-klef.mf (draw_c_clef): Use `&' not `..' to connect paths.
14632         (new_bulb): Return a bulb as a single path.  To do that, it now
14633         takes some more parameters.  Updated all callers.
14634         (draw_gclef): Major clean-up.  `draw' has been replaced with
14635         `penstroke', unnecessary outlines have been removed.
14636         Remove (unused) gnome-canvas code.
14637
14638         * mf/feta-macros.mf (print_penpos): New macro (from
14639         feta-accordion.mf).
14640         Other minor fixes.
14641
14642         * mf/feta-pendaal.mf ("Pedal asterisk"): Use `undrawdot'.
14643         ("Pedal dot"): Use `drawdot'.
14644         (draw_pedal_P): Add parameter to control drawing of labels.  Update
14645         all callers.
14646         Fix shape at top.
14647         (draw_pedal_e): Add parameter to control drawing of labels.  Update
14648         all callers.
14649         (draw_pedal_d): Add parameter to control drawing of labels.  Update
14650         all callers.
14651         Revert drawing direction.
14652
14653         * mf/feta-schrift.mf (draw_fermata): Use single path.
14654         (draw_short_fermata): Replace `filldraw' with `fill'.
14655         (draw_long_fermata, draw_very_long_fermata): Replace calls to
14656         `draw_rounded_block' with a single path.
14657         ("Thumb"): Draw full circle instead of mirroring segments.
14658         (draw_accent): New macro.
14659         ("> accent", "espr"): Use it.
14660         (draw_marcato): Replace `filldraw' and `draw' with `fill'.
14661         ("open (unstopped)"): Draw full circle instead of mirroring
14662         segments.
14663         (draw_vee): Removed.
14664         ("Upbow"): Use `draw_accent' instead of `draw_vee'.
14665         ("Downbow"): Replace calls to `draw_rounded_block' with a single
14666         path.
14667         ("Trill (`tr')"): Replace overlapping loop drawn with `draw' with
14668         partial pieces drawn with `fill' -- these do still overlap with the
14669         stem of the `t' but just once, not multiple times so that fontforge
14670         can handle it gracefully.
14671         Change other parts of the glyph so that fontforge's overlapping
14672         algorithm reliably works.
14673         (draw_heel): Replace `draw' with `fill'.
14674         (draw_toe): Use `draw_accent' instead of `draw_vee'.
14675         ("Flageolet"): Replace `draw' with `penstroke'.
14676         ("Segno"): Replace `filldraw' with `penstroke'.
14677         Replace `draw' with `drawdot'.
14678         ("Coda"): Replace `fill' with `penstroke', using a single path.
14679         ("Varied Coda"): Use less overlapping paths.
14680         (draw_arpeggio_arrow): Replace `filldraw' with `fill', using a
14681         single path.
14682
14683         * mf/feta-slag.mf (draw_trillelement): Put `clearxy' outside of
14684         group to better control the `labels' command.
14685         Rename argument to `offset' and use it actually.  Update all
14686         callers.
14687         Replace `filldraw' with `fill'.
14688         ("mordent", "prallmordent", "upmordent", "downmordent",
14689         "lineprall"): Replace `draw' with `draw_gridline'.
14690         ("upprall", "downprall"): Replace `draw' with `fill'.
14691
14692         * mf/feta-timesig.mf: Formatting.
14693
14694         * mf feta-toevallig.mf (draw_meta_flag): Move code to draw labels
14695         to...
14696         ("Flat"): Here.
14697         (draw_paren): Move code to draw labels to...
14698         ("Right Parenthesis"): Here.
14699
14700 2005-01-02  Graham Percival <gperlist@shaw.ca>
14701
14702         * Documentation/user/notation.itely: add example of \setTextDecresc
14703         and \setTextDim.
14704
14705 2005-01-02  Tatsuya Ono <tats_ono@infoseek.jp>
14706
14707         * scm/define-markup-commands.scm :  fix glyph-strings of
14708         accidentals and \note-by-number
14709
14710 2005-01-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14711
14712         * VERSION: 2.5.6 released.
14713         
14714         * ps/lilyponddefs.ps: put mm -> pt scaling in here.
14715
14716         * input/regression/new-markup-scheme.ly: oops. font-family=music
14717         -> font-encoding fetaMusic.  
14718
14719         * lily/main.cc: put default to PS.
14720
14721         * lily/tfm.cc: idem.
14722
14723         * lily/afm.cc: idem.
14724
14725         * lily/include/modified-font-metric.hh (struct
14726         Modified_font_metric): remove coding_scheme() method.
14727
14728         * input/mutopia/F.Schubert/morgenlied.ly: convert to utf8
14729
14730         * scripts/convert-ly.py (conv): crash on encountering \encoding.
14731
14732         * input/les-nereides.ly: convert to utf8
14733
14734         * lily/modified-font-metric.cc (text_dimension): idem.
14735
14736         * lily/parser.yy (TODO): idem.
14737
14738         * lily/include/lily-lexer.hh (class Lily_lexer): idem.
14739
14740         * lily/lexer.ll: remove encoding
14741
14742         * scm/framework-ps.scm (output-variables): separately scale the
14743         page to mm 
14744
14745         * lily/pango-font.cc (Pango_font): fix scaling.
14746
14747         * lily/font-metric.cc (design_size): design_size returns a
14748         dimension now as well.
14749
14750 2004-12-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14751
14752         * mf/GNUmakefile ($(outdir)/%.otf-table): use findstring. Fixes
14753         brace generation. 
14754
14755         * lily/text-metrics.cc (LY_DEFINE): use scm_c_make_hash_table().
14756
14757 2004-12-30  Jan Nieuwenhuizen  <janneke@gnu.org>
14758
14759         * mf/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Do not try to
14760         install unbuildable Fontmap and Fontmap.lily (Simon Aridis-Lang).
14761
14762 2004-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14763
14764         * mf/GNUmakefile ($(outdir)/%.otf-table): include parmesan20.lisp
14765         in first run as well.
14766
14767         * scm/paper.scm (layout-set-staff-size): use text-font-size in
14768         dimension less points (ie. 12 = 12 point)
14769
14770         * lily/pango-select.cc (select_pango_font): use find_scaled_font().
14771
14772         * lily/all-font-metrics.cc (find_pango_font): set description_
14773
14774         * lily/pango-font.cc (text_stencil): export size as well.
14775         (text_stencil): fix scaling and extents box.
14776
14777 2004-12-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14778
14779         * Documentation/topdocs/NEWS.texi (Top): add -f texstr
14780
14781         * Documentation/user/invoking.itely (Invoking lilypond): document
14782         texstr
14783
14784         * scripts/convert-ly.py (conv): add ancient rules.
14785
14786         * scm/clef.scm (c0-pitch-alist): replace - with .
14787
14788         * scripts/lilypond-book.py (process_snippets): add texstr support.
14789
14790         * scm/framework-texstr.scm (header): change extension to .textmetrics
14791
14792         * lily/lily-parser.cc (parse_file): do try_load_text_metrics for
14793         -f tex.
14794
14795         * lily/text-metrics.cc: new file.
14796         (try_load_text_metrics): new function
14797
14798         * lily/include/text-metrics.hh: new file.
14799
14800 2004-12-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14801
14802         * lily/include/lily-guile.hh (ly_lily_module_constant): rename
14803         ly_scheme_function to ly_lily_module_constant.
14804
14805         * lily/modified-font-metric.cc (text_dimension): try
14806         lookup_tex_text_dimension() first.
14807
14808         * lily/tfm.cc: new function ly:load-text-dimensions
14809
14810 2004-12-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14811
14812         * scm/output-texstr.scm (text): use \lilygetmetrics
14813
14814         * scm/framework-texstr.scm (header): dump in new format.
14815
14816         * tex/lilypond-tex-metrics: new file.
14817         
14818 2004-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
14819
14820         * lily/pango-font.cc (text_stencil): Quick try at glyph->charcode
14821         mapping.
14822         (index_to_charcode): New method.
14823
14824         * scm/output-ps.scm (glyph-string): 
14825         * scm/output-gnome.scm (glyph-string): Add FONT parameter.
14826
14827 2004-12-26  Jan Nieuwenhuizen  <janneke@gnu.org>
14828
14829         * scm/output-gnome.scm (FIXME-glyph-string): New function.  Cannot
14830         implement fully, need FONT to get to charcode.
14831
14832         * scm/lily.scm (ly:all-stencil-expressions): Add glyph-string.
14833
14834         * scm: Cleanups.
14835
14836         * Documentation/user/changing-defaults.itely: Fix internalsrefs
14837         {Tunable context properties},
14838         {All layout objects},
14839         {Music definitions}.
14840
14841 2004-12-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14842
14843         * VERSION: release 2.5.5
14844         
14845         * lily/main.cc: use TeX as default output format.
14846
14847         * flower/file-path.cc (find): try to open directly as well, so we
14848         find absolute path files. 
14849
14850         * lily/pango-select.cc: new file.
14851
14852         * scm/framework-ps.scm: remove all encoding code. 
14853         load pfb/pfa for PangoFont too.
14854         
14855         * lily/lily-guile.cc (ly_chain_assoc_get): new function.
14856
14857 2004-12-22  Werner Lemberg  <wl@gnu.org>
14858
14859         Prepare glyph shapes for mf2pt1 conversion.
14860
14861         * mf/feta-toevallig.mf ("Double Sharp"): Minor path fix.
14862
14863         * mf/feta-bolletjes.mf (penposx): New auxiliary macro.
14864         (define_triangle_shape): Use it to replace `draw' with `fill' and
14865         `unfill'.  Update all callers.
14866         (draw_slash): Replace `filldraw' with `fill'.  Update all callers.
14867         (draw_cross): Ditto.
14868         ("X-Circled notehead"): Replace `draw' with `fill' and `unfill'.
14869         Use penrazor for better conversion with mf2pt1.
14870         (generic_draw_solfa_note_shape, draw_solfa_note_shape,
14871         draw_solfa_quarter_note_shape, triangle): Removed.  Unused.
14872         (draw_do_head, draw_re_head, draw_mi_head, draw_fa_head,
14873         draw_la_head, draw_ti_head): Replace `filldraw' with
14874         `fill'.  Update all callers.
14875
14876 2004-12-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14877
14878         * lily/paper-book.cc (output): revert: only allow a single output
14879         format.
14880
14881         * lily/include/pango-font.hh: new file.
14882
14883         * lily/pango-font.cc: new file.
14884
14885         * lily/font-metric.cc (text_stencil): new routine
14886
14887         * lily/all-font-metrics.cc (find_pango_font): new routine.
14888
14889         * lily/include/font-metric.hh (struct Font_metric): add
14890         text_stencil()
14891
14892         * configure.in (PKG_CONFIG_PATH): require PANGO_FT2
14893
14894 2004-12-22  Werner Lemberg  <wl@gnu.org>
14895
14896         Prepare glyph shapes for mf2pt1 conversion.
14897
14898         * mf/feta-macros.mf, mf_feta-eindelijk.mf: Some formatting.
14899
14900         * mf/feta-toevallig.mf: Formatting.
14901         (draw_meta_sharp): Modify path to replace `filldraw' with `fill'.
14902         ("Natural"): Fix paths to allow better postprocessing.
14903         (draw_meta_flat): Use `z3l' as additional point in path to get
14904         better conversion with mf2pt1.
14905         Other minor cleanups.
14906         ("3/4 Flat"): Add auxiliary points and modify path to replace
14907         `draw' with `fill'.
14908         ("Double Sharp"): Mirror path segments instead of picture elements
14909         to get a single outline.
14910         Modify path to replace `filldraw' with `fill'.
14911
14912 2004-12-22  Graham Percival  <gperlist@shaw.ca>
14913
14914         * input/test/unfold-all-repeats.ly: added file back.
14915
14916         * Documentation/user/notation.itely,
14917         Documentation/user/programming-interface.itely
14918         Documentation/user/changing-defaults.itely: fixed misc broken
14919         links to input/test/ files.
14920
14921 2004-12-22  Jan Nieuwenhuizen  <janneke@gnu.org>
14922
14923         * tex/texinfo.tex: Update.  We should not be distributing this,
14924         but since we do, use latest version.
14925
14926         * Documentation/user/macros.itexi: Comment-out \fetaflat,
14927         \fetasharp.  Fixes make web.  FIXME: make usable (compatible?) TeX
14928         macros for feta glyphs.
14929
14930 2004-12-22  Graham Percival  <gperlist@shaw.ca>
14931
14932         * Documentation/user/changing-defaults.itely: fix index for set.
14933
14934         * Documentation/user/converters.itely: added convert-ly bugs list
14935         from CVS.
14936
14937 2004-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
14938
14939         * python/lilylib.py (setup_environment): Set GS_FONTPATH, GS_LIB
14940         to empty.  Fixes make web, using gs-gpl-8.01.  In fact,
14941         gs-afpl-8.50 has more trouble with make web (ie, uses *a lot* more
14942         resourses; 3x MAXSIZE, 4x MAXRSS, 1.5x user).
14943
14944         * mf/GNUmakefile (pfa_warning): Use less broken check.
14945
14946         * python/lilylib.py (setup_environment): Remove cruft from
14947         GS_FONTPATH.
14948
14949         * configure.in: Bump mftrace requirement to 1.1.1.
14950
14951 2004-12-20  Jan Nieuwenhuizen  <janneke@gnu.org>
14952
14953         * scm/output-svg.scm (beam): Use polygon.
14954
14955         * scm/lily-library.scm: Bugfix.
14956
14957         * Documentation/user/invoking.itely (Invoking lilypond): Bugfix.
14958
14959         * mf/GNUmakefile (ALL_GEN_FILES): Remove unbuildable Fontmap.lily.
14960
14961 2004-12-19  Werner Lemberg  <wl@gnu.org>
14962
14963         Prepare glyph shapes for mf2pt1 conversion.
14964
14965         * mf/feta-eindelijk: Some formatting.
14966         (multi_rest_x, multi_beam_height): Removed.  Unused.
14967         ("Quarter rest"): Use `intersectiontimes' to create a single
14968         outline.
14969         (rest_crook): Removed.  Unused.
14970         (draw_rest_bulb): Return path (without filling).  Update callers.
14971         Simplified.
14972         (draw_eighth_rest, "16th rest", "32th rest", "64th rest",
14973         "128th rest"): Simplify `pat'.
14974         Create single outline.
14975
14976 2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
14977
14978         * mf/GNUmakefile (ALL_GEN_FILES):
14979         (INSTALLATION_OUT_SUFFIXES): Remove unbuildable fonts.scale.
14980
14981         * scm/output-svg.scm (polygon, draw-line, dashed-line): New
14982         function.
14983
14984 2004-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14985
14986         * scm/output-texstr.scm (placebox): add routine
14987
14988         * VERSION (PACKAGE_NAME): release 2.5.4
14989
14990         * scm/framework-texstr.scm (output-framework): new file.  
14991
14992         * scm/output-texstr.scm: new file. Collect (TEXT . ) calls for TeX
14993         processing.
14994
14995         * Documentation/user/invoking.itely (Invoking lilypond): add SVG
14996
14997         * stepmake/stepmake/metafont-rules.make: make single SVG/PFA/PFB
14998         rule.
14999
15000         * configure.in (gui_b): bump mftrace requirement to 1.1.0
15001
15002         * mf/feta-bolletjes.mf (triangle): add s to 0triangle.
15003
15004         * mf/GNUmakefile (ALL_GEN_FILES): make SVG files too.
15005
15006 2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
15007
15008         * scm/framework-svg.scm (dump-page): Implement landscape.
15009
15010 2004-12-18  Jan Nieuwenhuizen  <janneke@gnu.org>
15011
15012         * lily/main.cc (setup_paths): Add svg to search path.
15013
15014         * scm/output-svg.scm:
15015         * scm/framework-svg.scm: Add pageSet.  Update.
15016         (dump-fonts): New function.
15017         (output-framework): Use it.
15018
15019         * mf/GNUmakefile: 
15020         * buildscripts/gen-bigcheese-scripts.py: Also generate SVG font.
15021
15022 2004-12-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15023
15024         * tex/lilyponddefs.tex: comment out new ifpdf code.
15025
15026 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
15027
15028         * GNUmakefile.in: 
15029         * SConstruct (symlink): Replace afm by otf.
15030
15031         * scm/framework-gnome.scm (gnome-main): Remove invocation of
15032         ly:pango-add-afm-decoder.
15033
15034         * lily/lily-guile.cc ("ly:pango-add-afm-decoder"): Build fix: Remove.
15035
15036 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15037
15038         * scm/output-ps.scm (new-text): don't access t glyph for getting
15039         space dimension.
15040
15041         * ly/init.ly: warn about \version
15042
15043         * lily/lexer.ll: set version-seen?
15044
15045 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
15046
15047         * scm/output-svg.scm (string->entities): Update.
15048
15049 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15050
15051         * lily/main.cc (setup_paths): replace afm by otf for path. 
15052
15053         * lily/pangofc-afm-decoder.cc: remove.
15054
15055         * lily/include/pangofc-afm-decoder.hh: remove.
15056
15057         * scm/framework-scm.scm (output-framework): new file.
15058
15059         * mf/GNUmakefile: remove SAUTER_FONTS.
15060         remove SVG/sodipodi hacks.
15061
15062         * scm/lily-library.scm (stderr): move stderr.
15063
15064         * mf/GNUmakefile: remove AFM support.
15065
15066         * buildscripts/mf-to-table.py (base): remove AFM support.
15067
15068         * lily/open-type-font.cc (design_size): use design_size
15069
15070 2004-12-17  Pedro Kroger  <kroeger@pedrokroeger.net>
15071
15072         * lily/font-metric.cc (LY_DEFINE): Fix the docstring.
15073
15074 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
15075
15076         * mf/GNUmakefile: Generate combined aybabtu info.
15077         * mf/aybabtu.pe.in (i): Load it.
15078
15079         * scm/framework-tex.scm (otf-font-load-command): Bugfix: subfonts
15080         are not symbols.
15081
15082         * lily/include/open-type-font.hh (count): New method.
15083
15084         * mf/aybabtu.pe.in: Typo.
15085
15086         * Documentation/user/out/lilypond-internals.nexi (Scheme
15087         functions): Typo.
15088
15089         * lily/include/guile-compatibility.hh (SCM_HASHTABLE_P): Add compat.
15090
15091 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15092
15093         * buildscripts/gen-bigcheese-scripts.py (i): use symbols for
15094         subfonts.
15095
15096         * scm/output-tex.scm (named-glyph): new function. This fixes TeX output.
15097
15098         * scm/framework-tex.scm (otf-font-load-command): load subfonts.
15099         (tex-font-command-raw): new function.
15100
15101         * lily/include/virtual-font-metric.hh (Module): remove file
15102
15103         * lily/virtual-font-metric.cc (Module): remove file.
15104         
15105
15106         * lily/open-type-font.cc (LY_DEFINE): ly:otf-font-glyph-info
15107         (get_indexed_char): read bbox from lily table if present.
15108
15109 2004-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15110
15111         * mf/GNUmakefile ($(outdir)/aybabtu.subfonts): rule for
15112         aybabtu.subfonts
15113
15114         * mf/feta-beugel.mf (y): don't number consecutively, instead, use
15115         global glyphname. Enables more than 64 glyphs in the OTF.
15116
15117 2004-12-16  Jan Nieuwenhuizen  <janneke@gnu.org>
15118
15119         * scm/font.scm (add-music-fonts): Load aybabtu iso all separate
15120         braces.
15121
15122         * lily/open-type-font.cc (design_size): Use 12 as default for
15123         design size.
15124
15125         * mf/aybabtu.pe.in: New file.  Merge all our braces.
15126
15127         * mf/GNUmakefile: Generate aybabtu.
15128
15129         * tex/lilyponddefs.tex: teTeX 3.0 pdfetex fix.
15130
15131 2004-12-14  Jan Nieuwenhuizen  <janneke@gnu.org>
15132
15133         * scm/lily-library.scm (char->unicode-index): Remove.
15134
15135         * scm/output-gnome.scm (text): Bugfix for plain string input.
15136         Updates.
15137
15138         * scm/output-svg.scm (svg-font): Add weight to font selection.
15139
15140 2004-12-14  Mats Bengtsson  <mabe@s3.kth.se>
15141
15142         * Documentation/topdocs/INSTALL.texi (Top): Point to
15143         buildscripts/out/clean-fonts instead of
15144         buildscripts/clean-fonts.sh. 
15145
15146 2004-12-13  Graham Percival  <gperlist@shaw.ca>
15147
15148         * input/regression/figured-bass.ly: attempt to clarify text.
15149
15150         * Documentation/user/notation.tely: add cindex for tag, attempt to
15151         add figured bass example.
15152
15153         * Documentation/user/changing-defaults: basic editing.
15154
15155 2004-12-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15156
15157         * buildscripts/gen-bigcheese-scripts.py (i): load .subfonts table. 
15158
15159         * lily/open-type-font.cc (LY_DEFINE): new function
15160         ly:font-sub-fonts
15161
15162         * lily/include/font-metric.hh (struct Font_metric): new method
15163         sub_fonts()
15164
15165         * lily/vaticana-ligature-engraver.cc (transform_heads): replace
15166         . with - in add.stem.
15167         
15168 2004-12-13  Jan Nieuwenhuizen  <janneke@gnu.org>
15169
15170         * scm/encoding.scm (coding-alist): Fix encodings for fetaNumber
15171         and fetaDynamic.
15172
15173         * lily/rest.cc (glyph_name): Change - to . .
15174
15175         * scm/output-gnome.scm (text): Hello world, again.
15176
15177         * scm/output-svg.scm (named-glyph): New function.  Hello world!
15178
15179         * lily/modified-font-metric.cc (index_to_charcode): New method.
15180
15181         * lily/include/font-metric.hh (index_to_charcode): New function.
15182
15183         * lily/font-metric.cc (ly:font-glyph-name-to-charcode): Use it in
15184         new function.
15185         (ly:font-glyph-to-index): Remove.
15186
15187 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15188
15189         * lily/open-type-font.cc (make_index_to_charcode_map): new method.
15190
15191         * mf/feta-autometric.mf (code): remove tex name from fet_beginchar.
15192
15193         * lily/open-type-font.cc (load_scheme_table): new function
15194
15195         * lily/dots.cc (print): replace - 
15196
15197         * lily/open-type-font.cc (attachment_point): new function.
15198         (load_table): read LILC table
15199
15200         * buildscripts/gen-bigcheese-scripts.py (Module): new
15201         file. Generate FF scripts.
15202
15203         * mf/feta-din10.mf: idem.
15204
15205         * mf/feta-nummer10.mf: remove mf files.
15206
15207         * mf/feta-alphabet.mf (dynamic_design_size): merge din and number font.
15208
15209 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
15210
15211         * lily/lily-guile.cc: Use scm_from_locale_stringn.
15212
15213         * lily/include/guile-compatibility.hh (scm_from_locale_stringn): Add
15214         compatibility.
15215
15216 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15217
15218         * lily/open-type-font.cc (get_indexed_char): scale metrics by
15219         design-size and units_per_EM.
15220
15221         * mf/bigcheese.pe.in: set PUA codepoints before loading din & nummer.
15222
15223 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
15224
15225         * mf/bigcheese.pe.in (i): Map to 0xe000 (PUA) for testing, which
15226         does not crash fontforge.
15227
15228         * scm/lily-library.scm (char->unicode-index): Hack to map onto
15229         PUA.
15230
15231 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15232
15233         * scm/framework-ps.scm (ps-embed-cff): new function.
15234
15235         * lily/lily-guile.cc (LY_DEFINE): make ly:gulp-file binary proof.
15236
15237 2004-12-12  Werner Lemberg  <wl@gnu.org>
15238
15239         * mf/bigcheese.pe.in: Add PUA mapping.
15240         Don't create Type 42 but bare CFF font.
15241
15242 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
15243
15244         * scm/output-gnome.scm (placebox): Hackery to get bigcheese symbols
15245         within canvas boundaries.
15246
15247         * mf/merge.pe.in: Set font names, version, license GPL.
15248
15249         * make/substitute.make: Add FONTFORGE.
15250
15251         * config.make.in (FONTFORGE): Add.
15252
15253         * configure.in (gui_b): Use PATH_PROG for fontforge.
15254
15255 2004-12-11  Graham Percival  <gperlist@shaw.ca>
15256
15257         * scm/define-markup-commands.scm: add baseline-skip to info
15258         about \column.
15259
15260 2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
15261
15262         * lily/font-metric.cc (ly:font-get-glyph-index): New function.
15263
15264         * scm/output-gnome.scm (named-glyph): Use it.
15265
15266         * scm/lily.scm (ly:all-stencil-expressions): Add named-glyph.
15267
15268         * flower/string.cc (substitute_char): Rename, rewrite, modify this.
15269         (upper_string, lower_string, reverse_string): Remove.
15270
15271         * configure.in (fontforge): Reinstate version check.
15272
15273         * ly/engraver-init.ly: Fix clef glyph names.
15274
15275         * lily/time-signature.cc (special_time_signature): Fix fraction
15276         glyph names.
15277
15278 2004-12-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15279
15280         * mf/merge.pe: new file.
15281
15282         * lily/freetype.cc: new file.
15283
15284         * lily/include/open-type-font.hh (class Open_type_font): new file.
15285
15286         * lily/include/freetype.hh: new file.
15287
15288         * lily/open-type-font.cc: new file.
15289
15290         * lily/all-font-metrics.cc (find_otf): new function.
15291
15292 2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
15293
15294         * lily/time-signature.cc (special_time_signature): Fix.
15295
15296         * configure.in (PKG_CONFIG_PATH): Remove stray `i'.  Check for
15297         GTK2 before checking for pango.  Fixes -fgnome.
15298
15299         * lily/font-metric.cc (LY_DEFINE): Also rename C name to match
15300         Scheme name.
15301
15302         * scm/define-markup-commands.scm:
15303         * scm/safe-lily.scm: Bugfix: ly:font-by-name.
15304
15305         * configure.in: Require makeinfo 4.7 (needed for @ifdocbook).
15306
15307         * stepmake/aclocal.m4 (STEPMAKE_GET_VERSION): Grok fontforge-like
15308         date versions.  Fixes configure.
15309         (STEPMAKE_CHECK_VERSION): Support optional actual program version
15310         argument.
15311
15312 2004-12-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15313
15314         * buildscripts/mf-to-table.py (write_ps_encoding): write real
15315         names in .enc
15316
15317         * lily/*.cc: use '.' iso. '-' for separating glyph name elements.
15318
15319 2004-12-09  Graham Percival  <gperlist@shaw.ca>
15320
15321         * Documentation/user/changing-defaults.itely: add info about
15322         make-dynamic-script
15323
15324         * Documentation/user/notation.itely: add link in dynamics to
15325         section about make-dynamic-script.
15326
15327 2004-12-09  Christian hitz  <chhitz@gmx.net>
15328
15329         * lily/lily-guile.cc: change MACOS_X to __APPLE__
15330
15331 2004-12-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15332
15333         * buildscripts/mf-to-table.py (parse_logfile): use . for
15334         concatting name and group.
15335         (parse_logfile): use M for Minus (negative.)
15336
15337         * lily/include/type-swallow-translator.hh
15338         (DECLARE_EVENT_SWALLOWER): ENTER_DESCRIPTION -> ADD_TRANSLATOR
15339
15340         * lily/*.cc: cosmetics around = sign.
15341
15342         * lily/paper-column.cc (Paper_column): copy rank_. This fixes
15343         lyric spacing on the penultimate column.
15344
15345 2004-12-05  Christian Hitz  <chhitz@gmx.net>
15346
15347         * configure.in:
15348         * lily/accidental-placement.cc:
15349         * lily/bar-line.cc:
15350         * lily/beam-concave.cc:
15351         * lily/beam-quanting.cc:
15352         * lily/beam.cc:
15353         * lily/bezier-bow.cc:
15354         * lily/bezier.cc:
15355         * lily/break-align-interface.cc:
15356         * lily/custos.cc:
15357         * lily/dimension-cache.cc:
15358         * lily/dot-column.cc:
15359         * lily/font-metric.cc:
15360         * lily/font-select.cc:
15361         * lily/gourlay-breaking.cc:
15362         * lily/grob-property.cc:
15363         * lily/grob.cc:
15364         * lily/lily-guile.cc:
15365         * lily/line-spanner.cc:
15366         * lily/lookup.cc:
15367         * lily/lyric-extender.cc:
15368         * lily/lyric-hyphen.cc:
15369         * lily/mensural-ligature.cc:
15370         * lily/midi-def.cc:
15371         * lily/misc.cc:
15372         * lily/note-collision.cc:
15373         * lily/note-column.cc:
15374         * lily/note-head.cc:
15375         * lily/paper-outputter.cc:
15376         * lily/percent-repeat-item.cc:
15377         * lily/rest-collision.cc:
15378         * lily/side-position-interface.cc:
15379         * lily/simple-spacer.cc:
15380         * lily/slur-configuration.cc:
15381         * lily/slur-scoring.cc:
15382         * lily/slur.cc:
15383         * lily/spaceable-grob.cc:
15384         * lily/spacing-spanner.cc:
15385         * lily/spanner.cc:
15386         * lily/staff-symbol-referencer.cc:
15387         * lily/stem.cc:
15388         * lily/stencil.cc:
15389         * lily/system-start-delimiter.cc:
15390         * lily/system.cc:
15391         * lily/text-item.cc:
15392         * lily/tie.cc:
15393         * lily/tuplet-bracket.cc:
15394         * lily/vaticana-ligature.cc: Fix for MacOS X: use <math.h> instead of
15395         <cmath> beacause isinf/isnan is undefined in <cmath>
15396
15397 2004-12-03  Mats Bengtsson  <mabe@s3.kth.se>
15398
15399         * cygwin/lily-wins.py (stat): remove old flag -p when calling lilypond.
15400
15401 2004-12-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15402
15403         * VERSION: release 2.5.3
15404         
15405 2004-11-29  Arno Waschk <arno@arnowaschk.de>
15406
15407         * mf/feta-schrift.mf: added <>-like articulation mark as "espressivo"
15408
15409 2004-12-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15410
15411         * scm/music-functions.scm (cue-substitute): voice counts start at 0.
15412
15413         * lily/note-head.cc (internal_print): always try the "s" head if
15414         u/d not found.
15415
15416         * scm/titling.scm (marked-up-headfoot): reinstate default tagline.
15417
15418 2004-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15419
15420         * mf/parmesan-heads.mf (overdone_heads): typos.
15421
15422 2004-11-30  Nicolas Sceaux  <nicolas.sceaux@free.fr>
15423
15424         * lily/parser.yy (markup): in markups, { .. } without command
15425         before are also flattened, ie \line must be explicitely used.
15426
15427         * Documentation/user/changing-defaults.itely:
15428         * Documentation/user/notation.itely: 
15429         * input/wilhelmus.ly: 
15430         * input/regression/instrument-name-markup.ly: 
15431         * input/regression/markup-score.ly: 
15432         * input/regression/new-markup-scheme.ly: 
15433         * input/regression/new-markup-syntax.ly: 
15434         * input/test/coriolan-margin.ly: use \line in markups where
15435         appropriate
15436         
15437 2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
15438
15439         * scm/new-markup.scm (map-markup-command-list): helper function
15440         used in parser.yy to map markup commands on a markup list.
15441
15442         * lily/parser.yy: get rid off < > in markups by treating { } as
15443         real lists.
15444
15445         * lily/lexer.ll: remove < > from markup lexer mode.
15446
15447         * scripts/convert-ly.py (conv): add rule for converting 
15448         \markup < > to \markup { }
15449
15450         * ly/titling-init.ly: 
15451         * input/test/coriolan-margin.ly: 
15452         * input/regression/new-markup-syntax.ly: 
15453         * input/regression/new-markup-scheme.ly: 
15454         * input/regression/multi-measure-rest-text.ly: 
15455         * input/regression/markup-stack.ly: 
15456         * input/regression/markup-score.ly: 
15457         * input/regression/instrument-name-markup.ly: 
15458         * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: 
15459         * input/mutopia/R.Schumann/romanze-op28-2.ly: 
15460         * input/mutopia/J.S.Bach/wtk1-fugue2.ly: 
15461         * input/wilhelmus.ly: 
15462         * Documentation/user/notation.itely: 
15463         * Documentation/user/music-glossary.tely: 
15464         * Documentation/user/changing-defaults.itely: change < > to { } in
15465         markups
15466
15467 2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15468
15469         * lily/accidental-placement.cc (position_accidentals): shortcut if
15470         no accidentals to place.
15471
15472 2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
15473
15474         * scm/define-grob-properties.scm (all-user-grob-properties): fixed
15475         typo s/ly:dimension ?/ly:dimension?/
15476
15477         * input/regression/lily-in-scheme.ly: 
15478         * input/regression/music-function.ly: 
15479         * ly/spanners-init.ly (assertBeamSlope): 
15480         * scm/music-functions.scm (def-grace-function): add the paper
15481         argument to music function definitions.
15482
15483 2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15484
15485         * lily/moment.cc (LY_DEFINE):
15486         ly:moment-main-{denominator,numberator}, new function.
15487
15488         * lily/score-engraver.cc (typeset_all): assign to column on basis
15489         of axis-group-parent-X setting.
15490
15491         * lily/axis-group-engraver.cc (process_acknowledged_grobs): do
15492         add_element() on basis of axis-group-parent-Y setting.
15493
15494         * lily/grob.cc: add axis-group-parent-{XY} properties.
15495
15496         * input/regression/spacing-stick-out.ly: new file.
15497
15498         * lily/simple-spacer.cc (add_columns): use binary search for
15499         setting column rods. Changes O(n^2) to O(n log(n)) for
15500         constructing spacing problem from columns.
15501         (add_columns): read allow-outside-line to make sure no texts stick
15502         out.
15503         (solve): Simple_spacer::is_active() only determines
15504         satisfies_constraints_ for non-ragged typesetting.
15505
15506         * lily/simultaneous-music.cc (to_relative_octave): only set
15507         old_relative_used if return pitch actually changed.
15508
15509         * scm/define-context-properties.scm
15510         (all-user-translation-properties): change to match implementation.
15511
15512         * python/lilylib.py: Replace re.match by re.search and adds "-c
15513         showpage" to the gs command line (Johannes Schindelin)
15514
15515         * scm/framework-ps.scm (output-preview-framework): sanitize bbox
15516         before processing. Prevents crash when inf is in the extent.
15517
15518         * scm/define-markup-commands.scm (note-by-number): add "s" to
15519         "noteheads-" glyphname.
15520  
15521         * lily/parser.yy (Generic_prefix_music): supply parser argument to
15522         music function as well.
15523         
15524 2004-11-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15525
15526         * VERSION: release 2.5.2
15527
15528         * Documentation/user/changing-defaults.itely (Creating titles):
15529         add breakbefore variable.
15530
15531         * lily/paper-book.cc (set_system_penalty): new function. Set
15532         penalty_ based on breakBefore setting
15533
15534         * lily/context-specced-music-iterator.cc (construct_children):
15535         interpret special context id $uniqueContextId 
15536
15537         * lily/context.cc (create_unique_context): new method. Move
15538         creation of unique (\new) contexts into interpreting phase. This
15539         makes
15540
15541           foo= \new Staff ..
15542           << \foo \foo >>
15543
15544         produce 2 staves.
15545         
15546
15547         * scm/define-music-properties.scm (all-music-properties): add
15548         quoted-voice-direction
15549
15550         * ly/music-functions-init.ly: killCues function.
15551
15552         * scm/music-functions.scm (cue-substitute): move creation of voice
15553         contexts further to the back. 
15554
15555 2004-11-25  Werner Lemberg  <wl@gnu.org>
15556
15557         * tex/GNUmakefile ($(outdir)/latin1.enc): Replace `/minus' with
15558         `/hyphen' in encoding vector to get correct glyph name for EC fonts.
15559
15560 2004-11-24  Erik Sandberg  <ersa9195@student.uu.se>
15561
15562         * buildscripts/guile-gnome.sh: Fixed typo.
15563
15564 2004-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15565
15566         * lily/lexer.ll: add < >  to markup lexer mode (backportme)
15567
15568         * scripts/abc2ly.py (dump_slyrics): add ord(). 
15569
15570         * lily/note-heads-engraver.cc (process_music): add shapeNoteStyles
15571         to regular engraver. 
15572
15573 2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15574
15575         * mf/feta-bolletjes.mf (triangle): rewrite solfa heads.
15576
15577 2004-11-22  Jan Nieuwenhuizen  <janneke@gnu.org>
15578
15579         * scm/define-markup-commands.scm (fill-line): Typo.
15580
15581         * buildscripts/guile-gnome.sh (GGVERSION): Build update for 2.7.96
15582         and newer.
15583
15584 2004-11-22  Erik Sandberg  <ersa9195@student.uu.se>
15585
15586         * ly/dynamic-scripts-init.ly: Fixed typo.
15587
15588 2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15589
15590         * mf/feta-bolletjes.mf (overdone_heads): cleanup triangle
15591         note-head, to have different attachment points for up and down.
15592
15593         * mf/feta-bolletjes.mf: merge solfa heads into main note heads.
15594
15595         * mf/feta-generic.mf (else): remove solfa.
15596
15597         * mf/feta-bolletjes.mf (tishape): remove unicode test.
15598
15599         * scm/define-context-properties.scm
15600         (all-user-translation-properties): add shapeNoteStyles property.
15601
15602         * lily/shape-note-heads-engraver.cc (process_music): new file.
15603
15604         * lily/event.cc (transpose): call Event::transpose() for
15605         transposing the tonic.
15606
15607 2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
15608
15609         * scm/output-gnome.scm: Save some pointers about pango/fontconfig
15610         Unicode/OpenType and AFM.
15611
15612         * lily/include/guile-compatibility.hh (scm_from_bool): Add.
15613
15614 2004-11-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15615
15616         * lily/grob.cc (Grob): idem. Plugs mem leaks. 
15617
15618         * lily/context.cc (Context): unprotect key from ctor.
15619
15620         * scm/stencil.scm (stack-lines): return empty-stencil if argument
15621         is '()
15622         (stack-stencils): idem.
15623
15624         * Documentation/user/changing-defaults.itely (Creating titles):
15625         document new title layout options.
15626
15627         * lily/parser.yy (lilypond_header_body): copy previous
15628         $globalheader if present.
15629
15630         * lily/ly-module.cc (LY_DEFINE): rename ly:import-module to
15631         ly:module-copy
15632         
15633         * scm/page-layout.scm (marked-up-headfoot): remove old functions.
15634
15635         * scm/titling.scm: remove old titling functions
15636
15637         * lily/stencil.cc (translate): remove absolute dimension.
15638
15639         * ly/titling-init.ly (oddFooterMarkup): new file. Generate titles
15640         via markup.
15641
15642         * scm/page-layout.scm (marked-up-headfoot): create header/footer
15643         field from user-supplied markup
15644
15645         * scm/define-markup-commands.scm (on-the-fly): new markup
15646         command. Enter SCM markup procedure directly in Scheme.
15647         (fromproperty): new markup command. Read markup from props argument.
15648
15649         * scm/titling.scm (marked-up-title): create title via
15650         user-specified markup. 
15651
15652         * scm/define-markup-commands.scm (column): remove empty stencils
15653         from column.
15654
15655         * lily/ly-module.cc (LY_DEFINE): use ly_module_lookup(). This does
15656         not have side-effect of creating variable stub.
15657
15658         * lily/stencil-scheme.cc (LY_DEFINE): add ly:stencil-empty?
15659
15660 2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
15661
15662         * scm/encoding.scm (coding-alist): 
15663         * scm/font.scm (add-ec-fonts):
15664         * ly/paper-defaults.ly: Use actual name for EC fontencoding:
15665         Extended-TeX-Font-Encoding---Latin.
15666
15667         * lily/side-position-interface.cc (general_side_position): Add
15668         actual offset to error message (avoid constant error messages).
15669
15670         * lily/all-font-metrics.cc (find_font): Add "lm" to try-AFM-first
15671         block.
15672
15673         * lily/font-select.cc (select_encoded_font)
15674         (get_font_by_mag_step, get_font_by_design_size): 
15675         * lily/modified-font-metric.cc (Modified_font_metric): 
15676         * lily/paper-def.cc (find_scaled_font): Add font_encoding parameter.
15677
15678         * scm/encoding.scm (coding-alist): Add fetaDynamic.
15679         (read-encoding-file): Bugfix: do not require space after bracket.
15680
15681         * scm/font.scm (add-cork-lm-fonts): Remove lmbxi8 and lmbxi14,
15682         these do not exist.
15683
15684 2004-11-20  Graham Percival  <gperlist@shaw.ca>
15685
15686         * Documentation/user/notation.itely: added info about typesetting
15687         boxed bar numbers.
15688
15689 2004-11-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15690
15691         * flower/interval.cc (T_to_string): gcc4 fixes.
15692
15693         * scm/define-markup-commands.scm (fill-line): use
15694         stack-stencils. This fixes problems with putting already centered
15695         stencils in a line.
15696
15697         * VERSION: release 2.5.1
15698
15699         * lily/bar-line.cc (get_staff_bar_size): add line thickness.
15700
15701 2004-11-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15702
15703         * input/example-[1-3].ly: simplify.
15704
15705         * lily/cluster-engraver.cc (try_music): react to busy-playing-event
15706
15707         * scm/output-ps.scm (new-text): new function. Use glyphshow to
15708         show glyphs.
15709
15710         * scm/encoding.scm (decode-byte-string): new function.
15711
15712         * scripts/convert-ly.py (conv): add warning about
15713         set-global-staff-size.
15714
15715         * Doxyfile: add. 
15716
15717         * scripts/convert-ly.py (conv): add raggedlastbottom rule
15718         (conv): warn for TextSpanner split.
15719         (conv): warn for textheight.
15720
15721 2004-11-19  Jan Nieuwenhuizen  <janneke@gnu.org>
15722
15723         * GNUmakefile.in (install-WWW): Invoke install-info, so that when
15724         building the documentation, info with images are installed.
15725         (final-install): Fix description.  Mention sourcing of login
15726         scripts (instead of running).
15727
15728 2004-11-18  Jan Nieuwenhuizen  <janneke@gnu.org>
15729
15730         * Debian lmodern support.  Note that LilyPond will issue warnings
15731         
15732             no such encoding: "FontSpecific"
15733
15734           The font selection mechanism wants to get the encoding from the
15735           font itself, but the idea of lmodern is that it is usable with
15736           different encodings, ie, Lily should get the encoding from the
15737           font tree, rather than the font itself.  This would require some
15738           more work.
15739         
15740         * configure.in: Test for and accept lmodern if EC fonts not found.
15741
15742         * scm/framework-tex.scm (font-load-command): TeX font name
15743         mangling for latin1 encoded cork-lm fonts.
15744         (convert-to-ps): Load lm.map if available.
15745
15746         * ly/paper-defaults.ly: Use cork-lm encoding if ec is not
15747         available.
15748
15749         * scm/encoding.scm (coding-alist): Add cork-lm encoding.
15750
15751         * scm/font.scm: Add header.  Autoload cork-lm and ec fonts if
15752         available.
15753
15754         * lily/kpath.cc (ly_kpathsea_find_file): Rename.  Do not use
15755         path for absolute file name, that is silly.
15756
15757         * lily/score-engraver.cc (initialize): 
15758
15759         * Documentation/user/GNUmakefile (local-install-info): Invoke
15760         install-info --remove first.
15761
15762         * #include cleanup (Andreas Scherer).
15763
15764 2004-11-18  Heikki Junes  <hjunes@cc.hut.fi>
15765
15766         * input/test/script-abbreviations.ly: fix typos.
15767
15768 2004-11-17  Werner Lemberg  <wl@gnu.org>
15769
15770         * python/lilylib.py (options_help_str): Support pretty-printing of
15771         newlines in fourth element of option description.
15772
15773         * scripts/lilypond-book.py (option_definitions): Use new lilylib
15774         feature.
15775         Sort options.
15776
15777         * Documentation/user/lilypond-book.itely: Finish update.
15778
15779 2004-11-17  Jan Nieuwenhuizen  <janneke@gnu.org>
15780
15781         * Documentation/user/macros.itexi: Add comment about \command.
15782
15783         * Documentation/user/lilypond.tely:
15784         * Documentation/user/lilypond-book.itely: Fix names of lilypond
15785         and lilypond-book nodes, so that `info lilypond' visits the manual
15786         at top level, and `info lilypond-book' visits the lilypond-book
15787         section.
15788
15789         * Documentation/user/GNUmakefile (local-install-info): Fix rules
15790         and packager messages.
15791
15792         * lily/pangofc-afm-decoder.cc: Update test.
15793
15794 2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
15795
15796         * scm/lily-library.scm (char->unicode-index): New function.
15797
15798         * scm/output-gnome.scm: 
15799         * scm/output-svg.scm: Cleanup.  Map custom fonts to PUA.
15800
15801         * Proper naming of file name throughout; s/filename/file[-_]name/.
15802
15803         * lily/modified-font-metric.cc ("ly:font-encoding"): New function.
15804
15805         * lily/pangofc-afm-decoder.cc (pango_fc_afm_get_glyph): Map onto PUA.
15806
15807 2004-11-16  Werner Lemberg  <wl@gnu.org>
15808
15809         * scripts/lilypond-book.py: The Lord has commanded me to use only
15810         tabs for indentation.  Your humble servant obeys.
15811
15812 2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
15813
15814         * scm/output-svg.scm: Font fixes.  Sodipodi now groks svg
15815         including font, if LilyPond-feta font is only feta font in path.
15816
15817         * scm/output-gnome.scm (text): Revert to file name of font if font
15818         has no name.  Fixes ec font selection.
15819         (char): Bugfix: do not utf8 twice.  Fixes clefs.
15820
15821         * scm/framework-svg.scm:
15822         * scm/output-svg.scm: New file.  TODO: figure out how to
15823         do character by index in font.
15824
15825         * scm/output-sodipodi.scm: Remove.
15826
15827         * scm/output-ps.scm (stem): Remove.
15828
15829 2004-11-15  Jan Nieuwenhuizen  <janneke@gnu.org>
15830
15831         * scm/output-gnome.scm (beam): New function.
15832         (slur): Round corners.
15833         (round-filled-box): Round corners.
15834
15835 2004-11-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15836
15837         * scm/output-gnome.scm (beam): add function.
15838         (draw-line): new routine.
15839         (dashed-line): stub; call draw-line
15840         (polygon): new routine.
15841
15842 2004-11-15  Werner Lemberg  <wl@gnu.org>
15843
15844         * Documentation/user/lilypond-book.itely: Revise section on
15845         lilypond-book options.
15846         Other minor fixes.
15847
15848         * scripts/lilypond-book.py: Change indentation to 4.
15849         Minor formatting.
15850
15851 2004-11-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15852
15853         * lily/system.cc (apply_tweaks): new function. Run tweaks on all
15854         grobs that have tweaks specced.
15855         
15856 2004-11-14  Heikki Junes  <hjunes@cc.hut.fi>
15857
15858         * Documentation/user/sound-output.itexi: add code snippets for MIDI.
15859
15860 2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
15861
15862         * lily/font-metric.cc (get_indexed_char_stencil): Bugfix: get
15863         actual char #, not 0 based index.
15864
15865         * lily/system-start-delimiter.cc (staff_brace): Start at 65.
15866
15867         * mf/feta-beugel.mf: Actually start at char #65.  Add header.
15868         Warning: do make -C mf clean.
15869
15870         * lily/context-property.cc: Compile fix.
15871
15872         * scm/output-gnome.scm: Add ec-fonts-mftraced to ~/.fonts.conf.
15873         Grok ec-fonts, braces and dynamics.
15874
15875         * scm/framework-gnome.scm (gnome-main): Register braces with pango.
15876
15877 2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15878
15879         * lily/include/tweak-registration.hh: new file.
15880
15881         * lily/tweak-registration.cc: new file.
15882
15883         * scm/framework-gnome.scm (save-tweaks): use new key mechanism for
15884         saving tweaks.
15885
15886         * scm/output-gnome.scm (text): comment dribble.
15887
15888 2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
15889
15890         * lily/pangofc-afm-decoder.cc (main): Test more feta fonts.
15891
15892         * scm/output-gnome.scm (bezier-sandwich): New function.  Reset
15893         path-def before using.  Fixes muchtomany slurs in wrong places
15894         bug.
15895
15896 2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15897
15898         * lily/grob-scheme.cc (LY_DEFINE): add new function ly:grob-key.
15899
15900         * lily/include/object-key-undumper.hh (Module): new file.
15901
15902         * lily/object-key-undumper.cc (Module): New file. Deserialize
15903         keys. SCM bindings
15904
15905         * lily/object-key-dumper.cc (Object_key_dumper): idem.
15906         Provide SCM bindings.
15907
15908         * lily/include/object-key-dumper.hh (class Object_key_dumper): 
15909         new file. Serialize object keys.
15910         
15911         * lily/object-key.cc (dump): new function.
15912         (as_scheme): new virtual function
15913         (undump): new function
15914         (undumpers): new table.
15915
15916         * lily/include/global-context.hh (Context): take \score key upon init.
15917
15918         * lily/object-key-dumper.cc (serialize_key): new file.
15919
15920         * lily/include/object-key-dumper.hh (class Object_key_dumper): new file.
15921
15922         * lily/lily-lexer.cc: remove \quote.
15923
15924         * lily/lookup.cc (triangle): rewrite, obviating symmetric_x_triangle().
15925
15926         * lily/context.cc (Context): take key argument in ctor.
15927         (create_context): new function
15928
15929         * lily/grob.cc (Grob): take key argument in ctor.  
15930
15931         * lily/lilypond-key.cc (do_compare): new file.
15932
15933         * lily/object-key.cc (Object_key): new file.
15934
15935         * lily/include/object-key.hh (class Object_key): new file.
15936
15937         * lily/include/lilypond-key.hh (class Lilypond_context_key): new file.
15938
15939 2004-11-13  Graham Percival  <gperlist@shaw.ca>
15940
15941         * Documentation/user/lilypond-book.itely: add small warning about
15942         noindent default in lilypond-book.
15943
15944         * Documentation/user/converters.itely: add examples for convert-ly.
15945
15946         * Documentation/user/examples.itely: change version string in templates
15947         to 2.4.0.
15948
15949 2004-11-12  Karl Hammar  <karl@aspodata.se>
15950
15951         * GNUmakefile.in (local-WWW-post): `find ...` overflows the
15952         cmdline, use xargs instead (backportme)
15953
15954 2004-11-10  Andreas Scherer  <andreas_mutopia@freenet.de>
15955         
15956         * Documentation/user/: Numerous fixes in the user manual.
15957
15958 2004-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15959
15960         * lily/parser.yy (re_rhythmed_music): search music expression for
15961         context-id, surround by \new Voice if not found. Fixes:
15962         addlyrics-second-staff.ly
15963
15964         * VERSION: 2.5.0 released.
15965         
15966 2004-11-12  Jan Nieuwenhuizen  <janneke@gnu.org>
15967
15968         * Documentation/index.html.in: Fix url to one big page.  (backportme)
15969
15970         * Documentation/user/GNUmakefile: Separate rules for split and
15971         unsplit html documents.  Remove perl massaging.  (backportme)
15972
15973 2004-11-11  Graham Percival  <gperlist@shaw.ca>
15974
15975         * Documentation/user/lilypond-book.itely: add short warning about
15976         \lilypond{} in LaTeX docs.
15977
15978 2004-11-11  Jan Nieuwenhuizen  <janneke@gnu.org>
15979
15980         * stepmake/aclocal.m4: Barf if kpathsea/kpathsea.h is not
15981         found.  (backportme)
15982
15983         * Documentation/topdocs/INSTALL.texi (ec-fonts-mtraced): Add
15984         version requirement.  (backportme)
15985
15986         * configure.in: Be explicit about old versions of
15987         ec-fonts-mtraced.  (backportme)
15988
15989         * lily/context-selector.cc (set_tweaks): New function.
15990         * lily/grob-selector.cc (set_tweaks): (Re)set hash table.  Fixes
15991         web with -DTWEAK.
15992
15993         * Documentation/user/introduction.itely (Automated engraving):
15994         Remove fragment option.  Fixes web.
15995
15996         * lily/context-property.cc (make_item_from_properties):
15997         * lily/context.cc (add_context)[TWEAK]: Tweak registration behind
15998         #ifdef.
15999
16000         * scm/define-context-properties.scm
16001         (all-internal-translation-properties): Add tweakRank and tweakCount.
16002
16003         * lily/grob.cc: 
16004         * scm/define-grob-properties.scm (all-internal-grob-properties):
16005         Add tweak-rank and tweak-count.
16006
16007 2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
16008
16009         * scm/output-gnome.scm (string->utf8-string, char->utf8-string):
16010         New function.
16011         (text): Use them.
16012
16013         * scm/framework-gnome.scm (item-event): Add support from TLA.  Support
16014         animated/opaque grob dragging tweaks.
16015
16016         * buildscripts/guile-gnome.sh: Update.
16017
16018 2004-11-10  Mats Bengtsson  <mabe@s3.kth.se>
16019
16020         * scm/define-grobs.scm (all-grob-descriptions): Added
16021         line-interface to the LigatureBracket object.
16022
16023 2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
16024
16025         * scm/framework-gnome.scm (item-event): Support non-animated mouse
16026         dragging tweaks.
16027
16028         * lily/lily-guile.cc (ly_to_string, ly_to_symbol): New function.
16029
16030         * lily/context-selector.cc (store_context): New function.
16031
16032         * lily/grob-selector.cc (register_grob)[TWEAK]: Apply tweak.
16033         (store_grob): New function.
16034         (identify_grob): Add Moment parameter.
16035
16036         * lily/lily-parser.cc (parse_file)[TWEAK]: Read .ly.t file if it
16037         exists.
16038
16039         * scm/framework-gnome.scm (save-tweaks): Write as alist.
16040
16041 2004-11-09  Jan Nieuwenhuizen  <janneke@gnu.org>
16042
16043         * scm/framework-gnome.scm (item-event): Print grob id.
16044         (save-tweaks): New function.
16045         (tweak): New funtion.
16046         (item-event): Use it, bound to arrow keys.
16047
16048         * lily/context-property.cc (make_item_from_properties): Register grob.
16049         * lily/context.cc (add_context): Register context.
16050
16051         * lily/include/context-selector.hh:
16052         * lily/include/grob-selector.hh:
16053         * lily/context-selector.cc:
16054         * lily/grob-selector.cc: New file.
16055
16056 2004-11-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16057
16058         * lily/slur.cc: add 'positions to interface
16059
16060         * lily/main.cc: reinstate PS as standard output format. 
16061
16062         * scm/framework-tex.scm (output-preview-framework): print systems
16063         up to first non title system.
16064
16065         * lily/grace-engraver.cc (start_translation_timestep): split
16066         scm_cadddr
16067         
16068 2004-11-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16069
16070         * lily/quote-iterator.cc (Module): remove old quote-iterator
16071
16072         * scm/define-music-types.scm (music-descriptions): move
16073         NewQuoteMusic over QuoteMusic
16074
16075         * Documentation/user/notation.itely (Formatting cue notes): use
16076         \cueDuring.
16077
16078         * lily/new-quote-iterator.cc (quote_ok): new function.
16079
16080         * input/regression/quote-cue-during.ly: new file.
16081
16082         * input/regression/quote-grace.ly: new file.
16083
16084         * scm/define-context-properties.scm (Module): change definition of
16085         graceSettings
16086
16087         * lily/context-property.cc (Module): rename from
16088         translator-property.cc
16089
16090         * lily/context.cc (context_name_symbol): new function
16091
16092         * lily/grace-engraver.cc: new file. Set properties for grobs based
16093         on the grace-ness of now_moment().
16094
16095         * scm/music-functions.scm (add-grace-property): use list
16096         iso. vector for graceSettings
16097         remove set-{start,stop}-grace-properties. 
16098
16099         * lily/new-quote-iterator.cc (construct_children): set
16100         quote_outlet_ if no quoted-context-{id,type} specified.
16101
16102         * scripts/convert-ly.py (conv): \quote -> \quoteDuring.
16103
16104         * lily/parser.yy (command_element): remove \quote.
16105
16106         * ly/music-functions-init.ly (location): add quoteDuring music
16107         function. 
16108
16109         * lily/lexer.ll: allow \encoding in lyrics as well.  Remove
16110         optional semicolon. (backportme)
16111
16112 2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
16113
16114         * python/GNUmakefile (STEPMAKE_TEMPLATES): Unset USER_LDFLAGS, no
16115         need to link to GUILE et al.
16116
16117 2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16118
16119         * scm/define-music-properties.scm (all-music-properties): add
16120         quoted-context-type, quoted-context-id.
16121
16122         * scm/lily.scm (type-check-list): new function.
16123         
16124         * scm/lily-library.scm: new file. Generic library routines.
16125
16126         * lily/parser.yy (Generic_prefix_music): move typechecking out of
16127         parser.
16128
16129         * ly/music-functions-init.ly: add quoteDuring function.
16130
16131         * lily/include/music-iterator.hh (class Music_iterator): rename
16132         set_translator -> set_context
16133
16134         * lily/parser.yy (Generic_prefix_music_scm): add
16135         MUSIC_FUNCTION_SCM_SCM_MUSIC
16136
16137         * scm/lily.scm (sanitize-command-option): new function. (backportme)
16138
16139         * scm/framework-tex.scm (header): sanitize TeX paper size.
16140         (backportme)
16141
16142 2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
16143
16144         * elisp/lilypond-indent.el (LilyPond-indent-level): 2 is now standard.
16145
16146         * tex/lilyponddefs.tex: If no inputencoding use latin1.  (backportme)
16147
16148         * scm/framework-tex.scm (font-load-command): Use T1 if no
16149         font-encoding set.  (backportme)
16150
16151         * scm/lily.scm (postscript->pdf): Remove .pdf file if it
16152         exists before converting.  (backportme)
16153
16154         * scm/framework-tex.scm (convert-to-dvi): Remove .dvi file if it
16155         exists before converting.  (backportme)
16156         (convert-to-ps): Remove .ps file if it exists before
16157         converting.  (backportme)
16158
16159         * lily/lexer.ll: Remove extra progress newline, use present tense.
16160
16161         * scm/paper.scm (paper-alist): public.
16162         * scm/framework-tex.scm (convert-to-ps):
16163         * scm/lily.scm (postscript->pdf): Do not leak papersizename into
16164         command line.
16165
16166 2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16167
16168         * scm/lily.scm (ly:system): add > /dev/null 2>&1 . (backportme)
16169
16170         * lily/recording-group-engraver.cc (derived_mark): mark
16171         now_events_. (backportme)
16172
16173 2004-11-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16174
16175         * mf/GNUmakefile: use Fedora-3 in download link. (backportme.)
16176
16177         * scm/framework-tex.scm (convert-to-dvi): use ly:system for
16178         invoking latex. (backportme.)
16179
16180         * lily/stem.cc (off_callback): center stems for all rest stems.
16181
16182 2004-11-05  Werner Lemberg  <wl@gnu.org>
16183
16184         * Documentation/user/lilypond.tely: Add more guidelines for writing
16185         lilypond texinfo documents.
16186
16187 2004-11-05  Heikki Junes  <hjunes@cc.hut.fi>
16188
16189         * Documentation/index.html.in: remove <hr>.
16190
16191         * THANKS: change 2.3 to 2.4.
16192
16193 2004-11-05  Jan Nieuwenhuizen  <jannneke@gnu.org>
16194
16195         * scm/output-gnome.scm: More fontconfig comment.
16196
16197 2004-11-05  Pedro Kroger  <kroeger@pedrokroeger.net>
16198
16199         * GNUmakefile.in ($(builddir)/share/lilypond-force): create the
16200         <package> directory in $(builddir)/share according with
16201         PACKAGE_NAME defined in the VERSION file.
16202
16203 2004-11-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16204
16205         * lily/beam.cc (rest_collision_callback): use local beam
16206         multiplicity.
16207
16208         * input/regression/stem-stemlet.ly: new file.
16209
16210         * lily/stem.cc (add_head): store rests as well.
16211
16212         * scm/define-grob-properties.scm (all-user-grob-properties): add
16213         stemlet-length
16214
16215         * lily/stem.cc: store rests as well.
16216         
16217         * input/regression/new-slur.ly: mention forcing.
16218
16219 2004-11-04  Werner Lemberg  <wl@gnu.org>
16220
16221         * Documentation/user/*: A new round of layout fixes and document
16222         structure cleanup.
16223
16224 2004-11-04  Heikki Junes <hjunes@cc.hut.fi>
16225
16226         * Documentation/user/lilypond.tely: changes 2.3.x to 2.5.x.
16227
16228 2004-11-04  Jan Nieuwenhuizen  <janneke@gnu.org>
16229
16230         * Documentation/topdocs/INSTALL.texi (Top): Remove geometry.
16231
16232 2004-11-03  Jan Nieuwenhuizen  <janneke@gnu.org>
16233
16234         * Documentation/topdocs/INSTALL.texi (Top): Fix geometry url (dax).
16235
16236         * lily/lily-parser.cc (LY_DEFINE): Remove "Now " from message.
16237
16238         * lily/main.cc (main): Invoke identify.
16239
16240         * scm/lily.scm (postscript->pdf): Remove progress newline.
16241         Write progress to stderr.
16242
16243         * lily/paper-book.cc (output): Remove progress newline.
16244
16245         * scm/framework-tex.scm (convert-to-dvi, convert-to-ps): Call
16246         gettext on user messages, and remove whitespace.
16247
16248         * lily/paper-outputter.cc (get_paper_outputter): Add progress newline.
16249
16250         * scripts/lilypond-latex.py (program_name): Bugfix: use only basename of
16251         argv[0] (Thomas Scharkowski).
16252
16253         * configure.in: Bugfix: add REQUIRED parameter to STEPMAKE_TEXMF
16254         call (carlyannehorse).  Also check for mf and mf-nowin.  Add check
16255         for ec-fonts-mtraced.
16256
16257         * GNUmakefile.in (builddir-exec): Add symlink tex/out.  Fixes
16258         --srcdir build (Bertalan).
16259
16260         * stepmake/aclocal.m4 (STEPMAKE_GUILE_DEVEL): Check for guile
16261         headers and library too (Laura Conrad).
16262
16263         * Documentation/topdocs/INSTALL.texi (Top): Mention development
16264         package for guile too (Laura Conrad).
16265
16266         * lily/main.cc (usage): Typo.
16267
16268 2004-11-02  Werner Lemberg  <wl@gnu.org>
16269
16270         * Documentation/user/notation.ly: More fixes to improve appearance.
16271
16272         * tex/texinfo.tex: Updated from texinfo CVS -- this version provides
16273         better output for multicolumn tables.
16274
16275 2004-11-01  Mats Bengtsson  <mabe@s3.kth.se>
16276
16277         * lily/main.cc (dir_info): Fixed typo in the printouts.
16278
16279 2004-11-01  Werner Lemberg  <wl@gnu.org>
16280
16281         * buildscripts/mf-to-table.py (write_fontlist): Improve formatting
16282         of output.
16283         Set `per_line' to 2; replace hard-coded value with it.
16284
16285         * Documentation/user/*: Many fixes to improve appearance of
16286         printed manual.
16287
16288 2004-11-01  Werner Lemberg  <wl@gnu.org>
16289
16290         * Documentation/user/changing-defaults.itely,
16291         Documentation/user/notation.ly,
16292         Documentation/user/programming-interface.itely: Use @/.
16293         Fix formatting of some lilypond snippets and tables.
16294
16295         * scripts/lilypond-book.py (compose_ly): Provide useful default
16296         for LINEWIDTH in `override'.
16297
16298 2004-10-31  Graham Percival  <gperlist@shaw.ca>
16299
16300         * Documentation/user/invoking.itely: change "3.0" -> "2.4"
16301
16302 2004-10-31  Werner Lemberg  <wl@gnu.org>
16303
16304         Resetting @exampleindent to `5' gives ugly results with texinfo's
16305         DVI output.  Use `@format @exampleindent 0 ... @end format' instead
16306         (if not quoting) to change @exampleindent only locally.
16307
16308         * scripts/lilypond-book.py (NOQUOTE): New variable.
16309         (output) [LATEX]: Remove AFTER and BEFORE.
16310         [TEXINFO]: Remove AFTER and BEFORE.
16311         Fix QUOTE and VERBATIM pattern.
16312         Add NOQUOTE pattern.
16313         (Lilypond_snippet) [output_info, output_latex]: Don't handle AFTER
16314         and BEFORE.
16315         [output_texinfo]: Use NOQUOTE.
16316
16317 2004-10-31  Graham Percival  <gperlist@shaw.ca>
16318
16319         * Documentation/user/changing-defaults.itely: clarify paper
16320         size commands with correct info.
16321
16322         * Documentation/user/lilypond-book.itely: add more docs for
16323         filename extensions.
16324
16325 2004-10-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16326
16327         * VERSION (PATCH_LEVEL): Branch lilypond_2_4, release 2.4.0
16328         (PATCH_LEVEL): start 2.5.0.
16329
16330 #Local variables:
16331 #coding: utf-8
16332 #End:
16333