]> git.donarmstrong.com Git - lilypond.git/blob - ChangeLog
(Top): simpler, more clearer override.
[lilypond.git] / ChangeLog
1 2006-10-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
2
3         * Documentation/topdocs/NEWS.tely (Top): simpler, more clearer override.
4
5 2006-10-04  Mats Bengtsson  <mabe@drongo.s3.kth.se>
6
7         * python/lilylib.py (progress): Minor fix.
8
9 2006-10-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
10
11         * lily/note-name-engraver.cc: doc engraver.
12
13         * scm/output-lib.scm (hairpin::calc-grow-direction): new function.
14
15         * lily/dynamic-engraver.cc (process_music): don't set grow-direction.
16
17         * scm/define-grobs.scm (all-grob-descriptions): calc duration-log
18         by callback.
19
20         * lily/stem-engraver.cc (make_stem): don't set duration-log
21
22         * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
23         write snippet-names binary.
24
25         * python/lilylib.py (system): use os.system for mingw32
26
27         * scripts/lilypond-book.py (bindir): use os.pathsep for prepending
28         to $PATH.
29
30         * scm/backend-library.scm: update email address.
31
32         * Documentation/topdocs/NEWS.tely (Top): add duration-log override
33         example.
34
35         * scm/define-grobs.scm (all-grob-descriptions): use callback to
36         calc dot count.
37
38         * lily/dots-engraver.cc (class Dots_engraver): new engraver:
39         handle dot creation separately.
40
41         * lily/tab-note-heads-engraver.cc (process_music): idem.
42
43         * lily/drum-note-engraver.cc (process_music): idem.
44
45         * lily/note-heads-engraver.cc (process_music): idem.
46
47         * lily/rest-engraver.cc: don't set duration-log.
48
49         * scm/output-lib.scm (string-number::calc-text): new function.
50         (note-head::calc-duration-log): new function.
51
52         * lily/fingering-engraver.cc (make_script): remove 'text setting.
53
54         * scm/output-lib.scm (fingering::calc-text): new function.
55
56 2006-10-04  Mats Bengtsson  <mabe@drongo.s3.kth.se>
57
58         * scripts/lilypond-book.py: Fix typo gs-load-font -> gs-load-fonts
59          and include-eps-font -> include-eps-fonts
60
61 2006-10-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
62
63         * lily/multi-measure-rest-engraver.cc: use internalBarNumber
64
65         * lily/timing-translator.cc: list properties.
66         (start_translation_timestep): update internalBarNumber too.
67
68         * scm/define-context-properties.scm
69         (all-user-translation-properties): add internalBarNumber.
70
71         * input/regression/spacing-no-note.ly: new file.
72
73         * buildscripts/output-distance.py (link_file): verbosity for OSError.
74
75         * lily/book.cc: #include cleanup.
76
77         * lily/include/lily-guile-macros.hh: add assert to
78         scm_or_str2symbol(SCM).
79
80         * VERSION (PATCH_LEVEL): bump version.
81
82         * lily/spacing-spanner.cc (musical_column_spacing): handle
83         musical->nonmusical spacing case, where there is no spacing
84         wish. Fixes issue #61.
85
86         * lily/pango-font.cc (text_stencil): allow 'tight' bounds.
87         (pango_item_string_stencil): use logical rect horizontally (to
88         preserve spaces), ink_rect vertically (for time signatures).
89
90         * lily/font-metric.cc (word_stencil): new interface function
91
92         * input/regression/utf-8-mixed-text.ly: new file.
93
94         * lily/percent-repeat-engraver.cc (listen_percent): remove
95         spurious warning.
96
97         * lily/phrasing-slur-engraver.cc (acknowledge_script): only ack
98         non-dynamic scripts. Fixes #30.
99
100         * lily/slur.cc (outside_slur_callback): make offset_scm optional.
101
102         * lily/beam.cc (rest_collision_callback): make prev_offset optional.
103
104         * lily/grob-closure.cc (chain_offset_callback): don't pass 0 but
105         SCM_UNDEFINED for non-existent data.
106
107         * lily/side-position-interface.cc (general_side_position): allow
108         optional current_offset argument for chaining, so combinations of side-position
109         and outside slur callback don't add up.  Fixes issue #92.
110
111         * lily/pango-font.cc (pango_item_string_stencil): use
112         logical_rect. This prevents spaces after words from disappearing,
113         issue #72.
114         
115         * VERSION: release 2.9.20
116
117 2006-10-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
118
119         * scm/define-grob-properties.scm (all-user-grob-properties):
120         mention stencil as user settable.
121
122 2006-10-02  Joe Neeman  <joeneeman@gmail.com>
123
124         * Documentation/user/page.itely (Page formatting): 
125         document auto-first-page-number
126
127         * lily/page-breaking.cc (find_chunks_and_breaks): 
128         * lily/paper-score.cc (calc_breaking): Follow changes to the
129         Constrained_breaking interface
130
131         * lily/constrained-breaking.cc (calc_subproblem): run the main loop
132         here backwards, as an optimisation
133         (initialize): new function; move most of the code in resize () here
134         (combine_demerits): cache ragged_right_
135         (Constrained_breaking): constructor now takes the Paper_score
136
137 2006-10-02  Erik Sandberg  <mandolaerik@gmail.com>
138         
139         * lily/lexer.ll, lily/parser.yy: Add EXPECT_NO_MORE_ARGS token, to
140         avoid parser lookahead for 0-ary functions.
141
142         * lily/translator.cc: Extract event classes from
143         IMPLEMENT_TRANSLATOR_LISTENER for documentation generation.
144
145 2006-10-02  Heikki Junes  <hjunes@gmail.com>
146
147         * po/fi.po: Fix spaces, commas etc. in Finnish translation using
148         KBabel fix tool.
149
150 2006-10-01  Nicolas Sceaux  <nicolas.sceaux@free.fr>
151
152         * scm/layout-page-layout.scm (page-breaking-wrapper): new
153         function. Call the page breaking function selected in the
154         `page-breaking' \paper variable, then the post processing function
155         chosen using the `page-post-process' \paper variable.
156         (line-height): new function. Return the height of a system.
157         (line-minimum-position-on-page): new function. Return the position
158         of a system on page (using the previous line position), only
159         considering between system padding.
160         (stretchable-line?): new function. Says whether a line can be
161         stretched (ie. is not a title nor a single staff system).
162         (page-maximum-space-left): new function. Computes space left on a
163         page, when all systems are separated by their padding.
164
165         * lily/page-breaking.cc (breaking::make_pages): Move page post
166         processing function call to page breaking wrapper (common to all
167         page breakers).
168
169         * lily/paper-book.cc (book::pages): call the page breaking
170         wrapper, instead of the page breaker directly
171
172         * ly/paper-defaults.ly: Add \paper variables for page breaking
173         wrapper and page post processing function. Make
174         `write-page-layout' value depend on the 'dump-tweaks option. Add a
175         `system-maximum-stretch-procedure' variable for holding a function
176         computing the maximum stretch a system allows.
177
178         * scm/layout-page-dump.scm (write-page-breaks): computes the
179         stretch to apply to systems on a page to minimize left
180         space. Dump this stretch length.
181
182         * ly/music-functions-init.ly (spacingTweaks): implement it. Read
183         the system-stretch property of the tweak data to stretch the
184         system.
185         (includePageLayoutFile): Void function which includes the
186         generated page-layout file if it exists and if the page layout
187         dumping is not asked.
188         (scoreTweak): if the score tweak named by the argument exists,
189         return it.
190
191 2006-10-01  Joe Neeman  <joeneeman@gmail.com>
192
193         * lily/page-spacing.cc (compress_lines, uncompress_solution):
194         handle correctly the case where there are multiple \noPageBreaks
195         in a row.
196
197 2006-09-30  Laura Conrad <lconrad@laymusic.org>
198
199         * abc2ly.py adds segno (S) and Coda (O) to articulations.
200         
201         * abc2ly.py fix so that entering " -- " will translate to a -- in
202         the lilypond instead of a " - - "
203         
204 2006-09-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
205
206         * lily/align-interface.cc: fix typo
207
208         * lily/dynamic-text-spanner.cc (print): Add a special case for
209         trill spanner right sides. 
210
211         * scm/define-grobs.scm (all-grob-descriptions): set padding to 0.1
212
213         * lily/align-interface.cc (get_extents_aligned_translates): add
214         support for padding variable.
215
216         * lily/break-align-interface.cc (self_align_callback): oops: use
217         loop variable in guard.
218
219         * input/regression/repeat-percent-grace.ly: new file.
220
221         * lily/percent-repeat-engraver.cc (start_translation_timestep):
222         remember first currentCommandColumn of a grace run. Fixes issue 70.
223
224         * lily/percent-repeat-iterator.cc (class Percent_repeat_iterator):
225         move class definition to CC file.
226
227         * lily/multi-measure-rest.cc (percent): use robust_relative_extent()
228
229         * lily/slash-repeat-engraver.cc (listen_percent): don't warn for
230         measure-long  repeats.
231
232         * flower/include/international.hh: include stdarg.h
233
234 2006-09-30  Joe Neeman  <joeneeman@gmail.com>
235
236         * lily/page-turn-page-breaking.cc (calc_demerits): now that we allow
237         put_systems_on_pages to return an empty result, we need to assign
238         demerits properly in that case.
239         (put_systems_on_pages): Make the number of pages depend on the
240         evenness of page_number. Add auto-first-page-number.
241         (calc_subproblem): ensure that the page-number is even for the
242         left-hand page. Warn if the first page-turn doesn't fit onto the
243         first (right-hand) page.
244
245         * lily/page-spacing.cc (solve): bug: demerits_ would always be inf
246         (min_page_count): make this publicly accessible
247         (min_page_count): fix a bug when there are forced page breaks that
248         was introduced when I made this loop run backwards
249         (space_systems_on_n_pages, space_systems_on_n_or_one_more_pages):
250         replace space_systems_on_min_pages with these two. The logic in
251         space_systems_on_min_pages was getting too convoluted and is better
252         contained in page-turn-page-breaking.
253
254         * lily/page-turn-engraver.cc (breakable_column): remove an always-true
255         conditional
256         (breakable_column): typo
257
258         * lily/source-file.cc (get_line): fix off-by-one error
259         and clean up some of the logic
260
261 2006-09-29  Joe Neeman  <joeneeman@gmail.com>
262
263         * lily/page-breaking.cc (make_pages): honour the first-page-number
264         property
265
266 2006-09-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
267
268         * VERSION (PACKAGE_NAME): bump version.
269
270 2006-09-26  Pal Benko  <benko.pal@gmail.com>
271
272         * scm/parser-clef.scm: add petrucci-f3 and -f4 clefs
273         (the latter is the same as petrucci-f which is kept for compatibility)
274
275 2006-09-26  Erik Sandberg  <mandolaerik@gmail.com>
276         
277         * lily/part-combine-iterator.cc: solo1-event -> solo-one-event
278
279 2006-09-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
280
281         * lily/global-context.cc (run_iterator_on_me): break out of loop
282         if moment doesn't increase.
283
284         * scm/define-grob-properties.scm (all-user-grob-properties): add
285         forced property.
286
287         * lily/accidental.cc (after_line_breaking): read forced property.
288
289         * lily/accidental-engraver.cc (process_acknowledged): set 'forced
290         property.
291
292         * input/regression/accidental-forced-tie.ly:  new file.
293
294 2006-09-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
295
296         * ly/engraver-init.ly: set ignoreFiguredBassRest in Staff context.
297
298         * lily/figured-bass-engraver.cc: only listen to rest events if
299         ignoreFiguredBassRest is not set.
300
301         * scm/define-context-properties.scm
302         (all-user-translation-properties): add ignoreFiguredBassRest property
303
304 2006-09-24  Joe Neeman  <joeneeman@gmail.com>
305
306         * lily/paper-book.cc (get_system_specs):
307         (set_system_penalty): fix breakbefore.
308         We used to set a penalty on the system after the break, now we
309         set a permission on the system before the break
310
311         * lily/grob-property.cc: add scm debugging hooks into
312         property modification
313
314         * lily/context-property.cc:
315         * lily/engraver.cc:
316         rename make_foo_from_properties to internal_make_foo and
317         move it from context-property.cc to a member function of
318         Engraver.
319         
320         * lily/include/lily-guile-macros.hh:
321         overload ly_symbol2scm macro so that there is no more need
322         to use internal_foo
323
324         * lily/volta-repeat-iterator.cc:
325         * lily/tweak-engraver.cc:
326         * lily/tuplet-bracket.cc:
327         * lily/span-bar-engraver.cc:
328         * lily/script-engraver.cc:
329         * lily/prob-scheme.cc:
330         * lily/pointer-group-interface.cc:
331         * lily/parser.yy:
332         * lily/grob-scheme.cc:
333         * lily/grob-property.cc:
334         * lily/context.cc:
335         * lily/context-property.cc:
336         * lily/break-substitution.cc:
337         * lily/break-align-engraver.cc:
338         * lily/axis-group-interface.cc:
339         * lily/align-interface.cc:
340         remove calls to internal_FOO
341
342         * lily/system-start-delimiter-engraver.cc:
343         * lily/parenthesis-engraver.cc:
344         * lily/accidental-engraver.cc:
345         remove calls to make_foo_from_properties
346
347 2006-09-23  Graham Percival  <gpermus@gmail.com>
348
349         * Documentation/user/programming-iterfaces.itely: fix
350         def-music-function -> define-music... leftover.
351
352 2006-09-23  Joe Neeman  <joeneeman@gmail.com>
353
354         * lily/page-spacing.cc (min_page_count): by running the loop
355         backwards, we can calculate ragged_last properly.
356
357 2006-09-22  Mats Bengtsson  <mabe@drongo.s3.kth.se>
358
359         * ly/titling-init.ly (scoreTitleMarkup): Rename (typo!?)
360         printfirst-page-number -> print-first-page-number
361
362         * python/convertrules.py: corresponding rule.
363
364         * Documentation/user/page.itely (Page formatting): Document the
365         default values of all page layout parameters. 
366
367 2006-09-22  Erik Sandberg  <mandolaerik@gmail.com>
368
369         * lily/lexer.ll: remove limitation on music function arity. New
370         mode extratoken, which inserts extra EXPECT_* tokens after
371         MUSIC_FUNCTION token. Junk all MUSIC_FUNCTION_* tokens.
372
373         * lily/parser.yy: Change grammar for music function accordingly.
374
375         * lily/include/lily-parser.hh: New method get_state, new member
376         hidden_state. Works around a problem when parser fetches
377         MUSIC_FUNCTION token but not the following EXPECT_* token.
378
379         * lily/translator.cc, lily/context.cc:, lily/translator-group.cc:
380         remove try_music
381
382         * lily/*-engraver.cc, lily/*-performer.cc: Remove all remaining
383         references to Music; use ASSIGN_EVENT_ONCE everywhere
384
385         * lily/grob-info.cc: junk *music_cause
386
387         * lily/music.cc: copy eventified articulations to stream event
388
389         * lily/part-combine-iterator.cc: Cleanup using enums
390
391         * lily/translator-group.cc: Junk OldMusicEvent, and associated
392         methods
393
394         * lily/include/engraver.hh: Junk music.hh include
395
396         * lily/stream-event.cc: Changed constructors
397
398 2006-09-21  Graham Percival  <gpermus@gmail.com>
399
400         * Documentation/user/tweaks.itely (Fitting music onto fewer
401         pages): change settings to avoid warning messages.
402
403 2006-09-21  Mats Bengtsson  <mabe@drongo.s3.kth.se>
404
405         * Documentation/user/tweaks.itely (Fitting music onto fewer
406         pages): Add between-system-space setting. 
407
408 2006-09-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
409
410         * lily/accidental-placement.cc (calc_positioning_done): don't
411         trigger Y-extent calculation too early. Use pure_height instead.
412
413         * lily/scale.cc (LY_DEFINE): new file. 
414
415 2006-09-20  Joe Neeman  <joeneeman@gmail.com>
416
417         * lily/page-breaking.cc (find_chunks_and_breaks): ignore breaks
418         that happen at the start of a score: having a zero-length
419         chunk was messing up min_system_count calculations.
420
421         * lily/source-file.cc (get_line): lower_bound, not
422         binary_search. Fixes problem where point-and-click would
423         always point to the first line.
424
425 2006-09-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
426
427         * lily/accidental-placement.cc (calc_positioning_done): also put
428         stems into accidental support. 
429
430         * lily/tie-engraver.cc (process_music): also set tieMelismaBusy if
431         event_ detected.
432
433         * scm/script.scm (default-script-alist): avoid-slur and
434         slur-padding for portato script.
435
436         * lily/stem-tremolo.cc (translated_stencil): new function. 
437         (height): use new function. Fixes tremolos on whole notes.
438
439         * lily/slur-scoring.cc (get_best_curve): don't crash if no optimal
440         slur found.
441
442 2006-09-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
443
444         * scripts/abc2ly.py (try_parse_comment): idem.
445
446         * scripts/lilypond-book.py (find_toplevel_snippets): use 'foo' in
447         bar_string iso. string.find()
448
449         * lily/*.cc: idem.
450
451         * lily/slur.cc (get_curve): always use scm_is_pair() looping
452         scheme lists.  
453
454 2006-09-18  Graham Percival  <gpermus@gmail.com>
455
456         * Documentation/user/basic-notation.itely: add bug
457         warning about ties and octavation/clef.
458
459 2006-09-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
460
461         * VERSION (PACKAGE_NAME): release 2.9.18
462
463 2006-08-29  Milan Zamazal  <pdm@brailcom.org>
464
465         * elisp/lilypond-mode.el (LilyPond-command-alist): Don't try to
466         figure out midi file names right here.
467         
468 2006-09-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
469
470         * scm/framework-ps.scm (dump-stencil-as-EPS): naming pad-eps-boxes.
471
472         * scm/backend-library.scm: option naming:  gs-font-load*s*
473
474         * scm/framework-eps.scm (dump-stencils-as-EPSes): rename option to
475         include-eps-fonts
476
477 2006-09-17  Joe Neeman  <joeneeman@gmail.com>
478
479         * scm/define-music-types.scm (music-descriptions): remove
480         BreakEvent and fix {Page,Line}{Break,Turn}Event so
481         Music::to_event doesn't complain.
482
483         * lily/accidental-placement.cc (ape_compare):
484         * lily/semi-tie.cc (compare): 
485         * lily/note-column.cc (shift_compare): replace by XXX_less
486
487         * lily/tie-formatting-problem.cc (set_chord_outline): 
488         * lily/tie-column.cc (calc_positioning_done): 
489         * lily/system.cc (post_processing)
490         (get_paper_system): 
491         * lily/stem.cc (note_head_positions)
492         (calc_positioning_done): 
493         * lily/spanner.cc (do_break_processing)
494         (find_broken_piece): 
495         * lily/span-bar.cc (print): 
496         * lily/semi-tie-column.cc (calc_positioning_done): 
497         * lily/rest-collision.cc (calc_positioning_done): 
498         * lily/program-option.cc (get_help_string): 
499         * lily/note-collision.cc (get_clash_groups):
500         * lily/new-fingering-engraver.cc (position_scripts):
501         * lily/keyword.cc (Keyword_table):
502         * lily/hara-kiri-group-spanner.cc (request_suicide):
503         * lily/grob-pq-engraver.cc (stop_translation_timestep):
504         * lily/accidental-placement.cc (calc_positioning_done):
505         (stagger_apes):
506         * lily/beam.cc (get_beam_segments):
507         * lily/grob-array.cc (remove_duplicates):
508         use new vector_sort
509         
510         * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily:
511         ragged-last-bottom = ##f (test the new page breaker)
512
513         * flower/include/std-vector.hh (vector_sort): use STL sort stuff
514
515         * scm/define-context-properties.scm
516         (all-internal-translation-properties): remove properties that
517         were used to communicate page-turn stuff to the paper-column
518         engraver.
519
520         * lily/lily-guile.cc (robust_scm2string): new function
521
522         * lily/paper-column-engraver.cc: Clean up page turn stuff
523
524         * lily/page-turn-engraver.cc: Re-write the page turn logic here
525         instead of cluttering up paper-column-engraver.cc
526
527 2006-09-17  Nicolas Sceaux  <nicolas.sceaux@free.fr>
528
529         * scm/layout-page-dump.scm (scm): export utility function names,
530         to allow user writing cutsom dumping functions.
531
532         * scm/layout-page-layout.scm: export utility function names to
533         enable custom page breaking function writing. Tabify.
534         (line-next-space): use ?-suffix only for predicates
535         (page-maximum-space-to-fill): new function. Return the space
536         between first and bottom system of a page, to give to
537         space-systems.
538         (space-systems): use a space-to-fill argument (for instance as
539         computed by page-maximum-space-to-fill) instead of computing
540         internaly this space with the page height. That way, the caller
541         can adjust the space to use.
542         (make-page-from-systems, walk-paths): compute space to fill before
543         calling space-systems.
544
545 2006-09-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
546
547         * scm/script.scm (default-script-alist): set paddings for every
548         type here, increase for portato mark.
549
550         * scm/lily.scm (define-scheme-options): typo: add s, so it is 
551         -dinclude-eps-fonts
552
553 2006-09-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
554
555         * scm/define-grobs.scm (all-grob-descriptions): oops, typo:
556         use spanner::set-spacing-rods
557
558         * lily/note-column.cc: reformat.
559
560         * lily/rest-collision.cc (calc_positioning_done): fix whole/half
561         step positioning for note/rest combinations.
562
563         * input/regression/rest-note-collision.ly: new file.
564
565         * scm/define-grobs.scm (all-grob-descriptions): add
566         springs-and-rods
567
568         * flower/include/std-vector.hh: switch off again.
569
570         * VERSION (PATCH_LEVEL): bump to 2.9.18
571
572         * flower/include/std-string.hh: idem.
573
574         * flower/include/std-vector.hh (_GLIBCXX_DEBUG): set if NDEBUG not set.
575
576 2006-09-15  Mats Bengtsson  <mabe@drongo.s3.kth.se>
577
578         * ly/engraver-init.ly: Make FiguredBass accepted in GrandStaff and
579         PianoStaff. 
580
581 2006-09-08  Joe Neeman  <joeneeman@gmail.com>
582
583         * Documentation/user/page.itely: update page breaking documentation
584
585 2006-09-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
586
587         * lily/note-collision.cc (calc_positioning_done): only access
588         first head if available.
589
590         * lily/tuplet-engraver.cc: add tupletFullLengthNote to description.
591
592         * scm/framework-ps.scm (output-preview-framework): use new name.
593
594         * lily/program-option.cc (internal_set_option): use new names.
595
596         * Documentation/user/SConscript (lilypond_book_flags): update -d
597         variable names.
598
599         * Documentation/user/lilypond-book.itely (Inserting LilyPond
600         output into other programs): new variable names.
601
602         * scm/lily.scm (define-scheme-options): uniformize var names.
603
604         * lily/tuplet-engraver.cc (listen_tuplet_span): verify that
605         tuplets_ is non-empty before popping.
606
607 2006-09-07  Joe Neeman  <joeneeman@gmail.com>
608
609         * lily/spanner.cc (find_broken_piece): 
610         * lily/spacing-spanner.cc (get_columns): 
611         * lily/source-file.cc (get_line): 
612         * lily/simple-spacer.cc (get_column_description): 
613         * lily/keyword.cc (lookup): 
614         use the new binary search.
615
616         * flower/include/std-vector.hh: replace binary_search with
617         a more STL-like version
618
619 2006-09-04  Michael Welsh Duggan  <md5i@cs.cmu.edu>
620
621         * lily/tie-performer.cc: remove unused last_event_ property.
622         (class Tie_performer): add now_tied_heads_ property for
623         partially-tied heads.
624         (acknowledge_audio_element): when adding an Audio_note, put the
625         note in now_tied_heads_ if the audio note is partially tied.
626         (stop_translation_timestep): always include entries in
627         now_tied_heads_ in heads_to_tie_.
628
629         * lily/drum-note-performer.cc (process_music): look for tie-events
630         in the articulations; pass to Audio_note constructor.
631
632         * lily/note-performer.cc (process_music): look for tie-events in
633         the articulations; pass to Audio_note constructor.
634
635         * lily/audio-item.cc (Audio_note): Initialize tie_event_ in
636         constructor.
637
638         * lily/include/audio-item.hh (class Audio_note): add tie_event_.
639         include initializer in constructor.
640
641 2006-09-02  Joe Neeman  <joeneeman@gmail.com>
642
643         * lily/simple-spacer.cc (get_line_forces): Ignore loose columns
644         unless they are breakable. This fixes discrepancies between the forces
645         calculated here and the forces calculated in get_line_configuration.
646
647         * lily/grob.cc (pure_relative_y_coordinate): fix some
648         mis-estimation that was happening with piano staves.
649
650         * lily/constrained-breaking.cc (resize): don't choke if we get a
651         measure that won't fit on a line.
652         (combine_demerits): don't consider uniformity when ragged
653
654         * lily/page-spacing.cc (solve): why the f* were there two of these?
655         (calc_subproblem): properly handle the case where a system is taller
656         than the page.
657
658         * lily/system.cc (get_paper_system): ensure that all the permissions
659         and penalties are passed to the paper systems.
660
661         * lily/page-breaking.cc (create_system_list): support system-count.
662
663         * scm/define-grobs.scm (pure-print-callbacks): add
664         ly:script-interface::print
665
666         * lily/page-spacing.cc (min_page_count): fix calculation of min
667         pages if we are ragged and there are non-zero springs.
668
669         * scm/layout-page-layout.scm: if the pure-height estimates are under
670         the real height, allow space-systems to ignore padding if it is
671         needed in order to fit the systems on one page
672
673         * lily/optimal-page-breaking.cc (try_page_spacing): fix reading
674         ragged properties
675         (solve): fix performance problem. Make sure we always get at least
676         one solution
677
678         * lily/page-breaking.cc (make_pages): include write-page-breaks
679         and page-stencil
680
681         * lily/paper-score.cc (calc_breaking): remove Gourlay breaker
682
683         * scm/define-grobs.scm: add the new slur-callback
684         fix pure-relevant to not exclude grobs whose extent is already
685         calculated
686
687         * ly/paper-defaults.ly: make ly:optimal-breaking the new default
688         page breaker
689
690         * lily/slur.cc (pure_height): new callback to estimate the height
691         of a slur
692
693 2006-09-02  Graham Percival  <gpermus@gmail.com>
694
695         * Documentation/user/invoking.itely: small update on
696         MacOS X notes; thanks Trevor!
697
698 2006-09-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
699
700         * VERSION (MY_PATCH_LEVEL): release 2.9.17
701
702         * lily/lexer.ll: accept EOF in all states.
703
704         * lily/tempo-performer.cc (Tempo_performer): initialize last_tempo_.
705
706         * lily/source-file.cc (Source_file): always 0-terminate character
707         array, to prevent Flex from barfing.
708
709         * lily/global-context.cc (get_output): robustness: don't crash if
710         no Score context found.
711
712         * lily/include/book.hh (class Book): idem.
713
714         * lily/include/context-def.hh (struct Context_def): idem.
715
716         * lily/include/score.hh (class Score): don't derive from Input.
717
718         * lily/book.cc (Book): add a copy ctor. 
719
720         * buildscripts/output-distance.py (FileLink.calc_distance): count
721         orphans in distance too.
722
723         * python/midi.c (midi_parse_track): robustness: don't read past
724         end of string.
725
726         * ly/performer-init.ly: add Control_track_performer, move
727         Tempo_performer and Time_signature_performer to Score.        
728
729         * lily/score-performer.cc (acknowledge_audio_elements): override
730         from base class: add to audio-columns
731
732         * lily/control-track-performer.cc (add_text): new file: generate
733         the control track.
734
735         * lily/performance.cc: move output_header_track to
736         Control_track_performer ()
737
738         * lily/midi-walker.cc (Midi_walker): get channel in constructor.
739
740         * lily/include/midi-item.hh (class Midi_channel_item): insert
741         class into hierarchy, for items that can have a channel setting. Dehungarify.
742
743         * lily/include/performer.hh (class Performer): remove
744         play_element();  move functionality into announce/acknowledge.
745
746         * lily/audio-staff.cc (output): remove channel_ from Midi_track.
747
748         * lily/tie-engraver.cc (stop_translation_timestep): only wipe
749         heads_to_tie_ if there are new heads to tie.  Fixes polyphony in ties.
750
751 2006-08-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
752
753         * lily/tie-engraver.cc (stop_translation_timestep): robustness for
754         ambituses.
755
756         * lily/all-font-metrics.cc: remove TFM support.
757
758         * lily/include/tfm.hh: remove TFM support, TFM reader.
759
760         * lily/include/binary-source-file.hh: remove Binary_source_file.
761
762 2006-08-27  Graham Percival  <gpermus@gmail.com>
763
764         * Documentation/topdocs/NEWS.itely: add @c marker for
765         stuff I've processed.
766
767         * Documentation/user/ various: info from NEWS.
768
769 2006-08-27  Joe Neeman  <joeneeman@gmail.com>
770
771         * lily/paper-column-engraver.cc (finalize): Oops, this change
772         should have gone in on 2006-08-23
773
774 2006-08-26  Mats Bengtsson  <mabe@s3.kth.se>
775
776         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use double
777         quotes to quote arguments. Fixes Windows problem.
778
779         * python/lilylib.py (progress): idem
780
781 2006-08-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
782
783         * scripts/musicxml2ly.py: fix for importing
784         minor key signatures from MusicXML.  (Phillip Kirlin)
785
786 2006-08-24  Phillip Kirlin  <pkirlin@acm.org>
787
788         * python/musicxml.py: 
789         (Attributes.get_key_signature): now correctly retrieves mode from 
790         MusicXML. 
791
792 2006-08-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
793
794         * lily/parser.yy (output_def_body): take ownership of identifier
795         back to C++.
796
797         * Documentation/user/advanced-notation.itely (Metronome marks):
798         update use of \tempo in \midi.
799
800         * VERSION: release 2.9.16
801         
802 2006-08-24  Erik Sandberg  <mandolaerik@gmail.com>
803
804         * input/mutopia/*: upgrade to new midi tempo syntax (repairs make
805         web partially)
806
807 2006-08-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
808
809         * input/regression/tie-chord-partial.ly: clarify example.
810
811         * scm/define-music-properties.scm (all-music-properties): remove
812         untied.
813
814         * ly/music-functions-init.ly: remove \untied.
815
816         * lily/tie-engraver.cc (struct Head_event_tuple): store both
817         stream events and music events.
818         (stop_translation_timestep): search acknowledged heads for
819         tie-event.
820
821         * input/regression/tie-chord-partial.ly: new file.
822
823         * scm/define-markup-commands.scm (char): use ly:wide-char->utf-8
824         for \char markup command.
825
826         * scm/define-event-classes.scm (unlistened-music-event-classes): idem.
827
828         * scm/define-music-types.scm (music-descriptions): consistency:
829         Use solo-{one,two}-event iso. solo-[12]-event.
830
831         * lily/part-combine-engraver.cc (process_music):
832         Use solo-{one,two}-event iso. solo-[12]-event.
833
834         * ly/declarations-init.ly (partCombineListener): add Timing as
835         alias
836
837         * flower/std-string.cc (string_copy): use copy ()
838
839         * lily/source-file.cc (Source_file): use copy(). Remove contents_str0()
840
841 2006-08-24  Graham Percival  <gpermus@gmail.com>
842
843         * Documentation/user/changing-defaults.itely, global.itely,
844         lilypond-book.itely, page.itely: minor changes from mailist.
845
846 2006-08-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
847
848         * buildscripts/mutopia-index.py (allfiles): filter lily-XXX and
849         snippet-map
850
851         * scm/define-context-properties.scm
852         (translator-property-description): robustness: detect type errors
853         in property definitions.
854
855         * lily/parser.yy (score_body): protect SCORE_IDENTIFIER result
856         after getting it from SCM. 
857
858         * lily/smobs.cc (protect_smob): switch off fancy smob protection
859         for now. 
860
861         * lily/include/performer.hh (class Performer): strip get_tempo()
862         method.
863
864         * lily/midi-def.cc: strip file.
865
866         * lily/lexer.ll (Lily_lexer): don't protect hash key separately.
867
868         * lily/include/context-def.hh (struct Context_def): use
869         VIRTUAL_COPY_CONSTRUCTOR().
870
871         * lily/source-file.cc: smobification.
872
873         * lily/include/source-file.hh (class Source_file): smobify
874         Source_file. Trim redundant members.
875
876         * lily/parser.yy (Lily_lexer::try_special_identifiers): unprotect
877         clones after creation. This plugs a huge memory leak.
878
879         * python/convertrules.py (FatalConversionError.sub_tempo):
880         complete rule for \midi{ \tempo }
881
882         * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): idem.
883
884         * input/mutopia/F.Schubert/morgenlied.ly (pianoLH): update tempo.
885
886 2006-08-23  Joe Neeman  <joeneeman@gmail.com>
887
888         * input/regression/optimal-page-breaking-hstretch.ly: test for
889         ragged-last-bottom also
890
891         * lily/paper-column-engraver.cc (finalize): make the end of a score
892         breakable by default. This is to balance out a change in behaviour
893         of the page-turn-breaker which no longer makes the end of a score
894         breakable.
895
896         * lily/paper-book.cc (pages): set the systems_ once the pages are
897         broken
898
899         * lily/page-turn-page-breaking.cc (calc_subproblem): use the new
900         Page_breaking interface.
901
902         * lily/page-breaking.cc (class Page_breaking): make the interface
903         more consistent and provide abstractions for dealing with
904         Line_divisions.
905
906         * lily/optimal-page-breaking.cc (solve): use a more straightforward
907         algorithm. Use the new interface to Page_breaking.
908
909         * lily/page-spacing.cc: better support for ragged-bottom and
910         ragged-last-bottom
911
912 2006-08-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
913
914         * python/convertrules.py (conv): warning on \tempo{}
915
916         * ly/performer-init.ly: set tempoWholesPerMinute.
917
918         * ly/midi-init.ly: remove \midi
919
920         * lily/tempo-performer.cc: look at tempoWholesPerMinute to set
921         MIDI tempo.
922
923         * lily/metronome-engraver.cc (process_music): use tempoUnitCount
924         tempoUnitDuration for determining what to print.
925
926         * lily/lyric-extender.cc: typo.
927
928         * lily/parser.yy (output_def_body): disallow \tempo in \midi{}
929
930         * lily/duration-scheme.cc (LY_DEFINE): ly:duration-length: new
931         function.
932
933         * scm/lily.scm (define-scheme-options): alphabetize, add eps-pad-boxes.
934
935         * scm/framework-ps.scm (dump-stencil-as-EPS): only pad boxes if
936         eps-pad-boxes is set.
937
938         * scripts/lilypond-book.py (main): use -deps-pad-boxes.
939
940         * THANKS: update sponsors.
941
942         * ly/english.ly: quarter tone naming (thanks, Trevor Baca)
943
944         * Documentation/topdocs/NEWS.tely (Top): doc new feature.
945
946         * input/regression/tie-chord-untied.ly: new file.
947
948         * lily/tie-engraver.cc (acknowledge_note_head): check 'untied property.
949
950         * scm/define-music-properties.scm (all-music-properties): add
951         'untied property.
952
953         * buildscripts/mutopia-index.py (allfiles): look for .ly rather
954         than .ly.txt.
955         (headertext_nopics): sanitize no-examples text.
956
957         * scm/page.scm (make-page-stencil): don't rely on extents of
958         page-stencil. This fixes spurious space around .EPS files produced
959         with the EPS backend.
960
961 2006-08-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
962
963         * lily/stencil-scheme.cc (LY_DEFINE): make extent arguments optional.
964
965         * lily/hara-kiri-engraver.cc (process_music): remember
966         keepAliveInterfaces after processing \set
967
968         * lily/lyric-extender.cc (print): support left/right-padding for
969         extenders.
970
971         * scm/documentation-generate.scm (string-append): revert lilypond/
972         path, doc why.
973
974 2006-08-20  Graham Percival  <gpermus@gmail.com>
975
976         * Documentation/user/lilypond.tely: clarification to
977         license presentation (not to actual license).
978
979         * Documentation/user/basic-notation.itely,
980         instrument-notation.itely: minor changes.
981
982         * input/ {regression, test}/+.ly: clarification to
983         text (you can click on examples).  Thanks, Mats!
984
985         * input/manual/bar-lines.ly: adds ||: repeats.
986
987 2006-08-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
988
989         * make/ly-vars.make (OMF_FILES): strip ps.gz from OMF_FILES 
990
991         * scm/documentation-lib.scm (texi-file-head): category LilyPond.
992
993         * Documentation/user/lilypond.tely: strip lilypond/ from info
994         links, rename to category LilyPond
995
996         * lily/pango-font.cc (description_string): new function.
997
998         * VERSION: release 2.9.15
999
1000         * lily/spacing-engraver.cc (stop_translation_timestep): use
1001         Dscho's fix for spacing spanner. 
1002
1003         * scm/define-music-types.scm (music-descriptions): use
1004         apply-output-event for ApplyOutputEvent
1005
1006         * lily/output-property-engraver.cc (listen_apply_output): rename
1007         from listen_layout_instruction.
1008
1009         * lily/piano-pedal-engraver.cc (struct Pedal_type_info): new
1010         function protect()
1011
1012 2006-08-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
1013
1014         * scm/lily.scm (lilypond-all): option read-file-list: substitute
1015         commandline args with contains, split by \n.
1016
1017         * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
1018         write snippet-names file, call with -dread-file-list. Fixes
1019         command limitations on 64-bit systems.
1020
1021         * input/regression/stencil-color-rotation.ly: new file.
1022
1023         * lily/include/translator.hh (struct Acknowledge_information):
1024         revert: don't use Protected_scm in global objects, as GUILE can't
1025         handle gc_unprotect from automated destructors on MacOS X.
1026  
1027         * lily/grob.cc (get_print_stencil): use retval.expr() as base for
1028         color, not the original stencil. Fixes combinations of
1029         color/transparency/rotation. 
1030
1031         * scripts/lilypond-book.py (main): add --formats=eps for
1032         texinfo/latex.
1033
1034         * lily/spacing-engraver.cc (stop_translation_timestep): don't
1035         crash if spacing_ is nonexistent.
1036
1037 2006-08-14  Mats Bengtsson  <mabe@s3.kth.se>
1038
1039         * scripts/lilypond-book.py (output): Remove obsolete(!?)
1040         \catcode`\@=12 in the LaTeX output.
1041
1042 2006-08-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
1043
1044         * scm/define-music-types.scm (music-descriptions):
1045         use sustain-event iso. sustain-pedal-event.
1046
1047 2006-08-11  Joe Neeman  <joeneeman@gmail.com>
1048
1049         * scripts/convert-ly.py: honour the -n command-line switch
1050
1051 2006-08-10  Han-Wen Nienhuys  <hanwen@lilypond.org>
1052
1053         * scm/output-lib.scm (bar-line::calc-glyph-name): add dashed liine
1054         break specification.
1055
1056 2006-08-10  Joe Neeman  <joeneeman@gmail.com>
1057
1058         * Documentation/user: convert-ly the user manual
1059
1060 2006-08-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
1061
1062         * stepmake/aclocal.m4: version check patch (thanks MWD)
1063
1064         * ly/music-functions-init.ly: robustness. Don't crash if
1065         currentBarNumber is not a number.
1066
1067         * VERSION (PATCH_LEVEL): bump.
1068
1069 2006-08-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
1070
1071         * stepmake/aclocal.m4: better version check; handle fooX.Y
1072         binaries too.
1073
1074         * ly/performer-init.ly: instrument name fixup.
1075
1076         * input/manual/chord-names-jazz.ly (banterProperties):
1077         instrumentName update
1078
1079         * scm/define-event-classes.scm (lambda): use ly:is-listened-event-class
1080
1081         * lily/ly-module.cc (ly_module_symbols): use ly_hash_table_keys
1082
1083         * lily/translator.cc (LY_DEFINE): ly:is-listened-event-class: new
1084         function. Use hash tables to check membership.
1085
1086         * lily/general-scheme.cc (LY_DEFINE): new function.
1087
1088         * lily/piano-pedal-engraver.cc (struct Pedal_type_info): idem
1089
1090         * lily/include/translator.hh (struct Acknowledge_information): add
1091         Protected_scm
1092
1093         * ly/music-functions-init.ly: change name to BreathingEvent
1094
1095         * input/regression/*.ly: apply it.
1096
1097         * python/convertrules.py (conv): better instrumentName conversion
1098         rule.
1099
1100         * scm/define-music-types.scm (music-descriptions): add
1101         line-break-event to LineBreakEvent music
1102
1103         * lily/music.cc (to_event): don't crash if music type not set.
1104
1105         * lily/spacing-loose-columns.cc (set_loose_columns): don't barf if
1106         spacing not set.
1107
1108         * lily/spacing-engraver.cc (stop_translation_timestep): set
1109         spacing for proportional notation too.
1110
1111         * scm/translation-functions.scm (format-bass-figure): inspect
1112         stream-event.
1113
1114         * scripts/lilypond-book.py (bindir): add bindir to $PATH.
1115
1116 2006-08-08  Joe Neeman  <joeneeman@gmail.com>
1117
1118         * lily/include/constrained-breaking.hh: add Line_details (Prob*)
1119
1120         * scm/page.scm (make-page): make it friendlier to call (esp. from C++)
1121
1122         * scm/layout-page-layout.scm (make-page-from-systems): new function
1123         (optimal-page-breaks): use the new page-breaking calling convention
1124
1125         * scm/define-context-properties.scm (all-user-translation-properties):
1126         add revokePageTurns
1127
1128         * lily/paper-column-engraver.cc (stop_translation_timestep): add
1129         revokePageTurns  functionality. If there is a special barline within
1130         the breakable region, break there instead of at the end of the region.
1131
1132         * lily/paper-book.cc (pages): use the new page-breaking calling
1133         convention
1134
1135 2006-08-07  Erik Sandberg  <mandolaerik@gmail.com>
1136
1137         * lily/lexer.ll, lily/source-file.cc: Add \sourcefileline command
1138
1139         * scripts/lilypond-book.py: insert \sourcefileline command in
1140         output, so lilypond error messages refer to the spot in the
1141         original .lytex / .itely sourcefile.
1142
1143 2006-08-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
1144
1145         * lily/spacing-loose-columns.cc (set_loose_columns): oops: use
1146         space to next column for distance to fixed col.
1147
1148         * VERSION (PACKAGE_NAME): release 2.9.14
1149
1150         * lily/pitched-trill-engraver.cc (make_trill): do set_parent also
1151         if no accidental.
1152
1153         * lily/accidental-engraver.cc (process_acknowledged): don't create
1154         accidental for trill span event. This fixes spurious accidentals
1155         on trills.
1156
1157 2006-08-04  Mats Bengtsson  <mabe@s3.kth.se>
1158
1159         * scm/define-grob-properties.scm (all-user-grob-properties):
1160         Clarify documentation of side-axis and direction. Thanks to Paul
1161         for the inspiration.
1162
1163         * lily/bar-line.cc: Add documentation for "||:" also in the
1164         interface documentation.
1165
1166 2006-08-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
1167
1168         * lily/spacing-loose-columns.cc (set_loose_columns): bugfix.
1169
1170         * lily/paper-column.cc (set_system): new function.
1171
1172         * lily/spacing-engraver.cc (stop_translation_timestep): store
1173         SpacingSpanner refs in Paper_column.
1174
1175         * lily/spacing-loose-columns.cc (set_loose_columns): rewrite
1176         compute loose clique spacing using GraceSpacing/SpacingSpanner.
1177
1178 2006-08-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
1179
1180         * lily/beam-engraver.cc (listen_beam): add method for
1181         Grace_beam_engraver too.
1182
1183 2006-08-03  Mats Bengtsson  <mabe@s3.kth.se>
1184
1185         * python/convertrules.py: Fix indentation bug that broke
1186         conversion of files older than 1.3.117.
1187         Fix escape error in the description for 2.9.6.
1188
1189 2006-08-02  Erik Sandberg  <mandolaerik@gmail.com>
1190
1191         * lily/*-engraver.cc: convert all try_music functions to listen_*
1192         functions.
1193
1194         * lily/piano-pedal-engraver.cc: some additional cleanups: use
1195         enums to represent pedal types, and calculate more data statically.
1196
1197         * scm/part-combiner.scm (recording-group-emulate): create a
1198         softcoded substitute for recording-group-engraver.cc.
1199
1200         * lily/music.cc: make a common transpose function for events and
1201         music
1202
1203         * ly/declarations-init.ly: change melisma/melismaEnd. Eliminates
1204         ManualMelismaEvent, and obsoletes Melisma_translator.
1205
1206 2006-08-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
1207
1208         * input/test/instrument-name-align.ly: update version.
1209
1210 2006-08-02  Mats Bengtsson  <mabe@s3.kth.se>
1211
1212         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
1213         Doc the --pdf flag to lilypond-book.
1214
1215 2006-07-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
1216
1217         * Documentation/topdocs/NEWS.tely (Top): add description.
1218
1219         * input/regression/tuplet-full-length-note.ly: add file.
1220
1221         * lily/instrument-name-engraver.cc (acknowledge_axis_group):
1222         always store axis group.
1223
1224 2006-07-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
1225
1226         * input/regression/instrument-switch.ly: new file.
1227
1228         * lily/instrument-switch-engraver.cc (process_music): new file.
1229
1230         * ly/engraver-init.ly: add Instrument_switch_engraver
1231
1232         * ly/music-functions-init.ly: \instrumentSwitch
1233
1234         * scm/define-context-properties.scm
1235         (all-user-translation-properties): add instrumentCueName
1236
1237         * scm/define-grobs.scm (all-grob-descriptions): add InstrumentSwitch
1238
1239 2006-07-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
1240
1241         * ly/music-functions-init.ly: music function \transposition.
1242
1243         * lily/parser.yy (command_element): softcode \transposition.
1244
1245         * lily/fall-engraver.cc (process_music): delta-pitch -> delta-step.
1246         (process_music): oops.
1247
1248         * lily/instrument-name-engraver.cc (start_spanner): new
1249         function. Create spanner when property changes.
1250         (stop_spanner): new function.
1251
1252         * python/convertrules.py (conv): add rule.
1253
1254         * lily/instrument-name-engraver.cc: shortVocalName iso. vocNam,
1255         shortInstrumentName iso. instr.
1256
1257         * scm/output-ps.scm (dashed-line): add phase argument to
1258         dashed-line.
1259
1260         * lily/bar-line.cc (dashed_bar_line): new function.
1261         (compound_barline): support \bar "dashed". 
1262
1263         * lily/lily-parser-scheme.cc (LY_DEFINE): only write
1264         --output=DIR to DIR/BASE if it is a dir. 
1265
1266         * flower/file-name.cc (file_part): new function
1267         (dir_part): new function
1268
1269         * lily/lily-parser-scheme.cc (LY_DEFINE): 
1270
1271         * DEDICATION: update
1272
1273 2006-07-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
1274
1275         * lily/instrument-name-engraver.cc: formatting.
1276
1277         * python/convertrules.py (conv): bugfix for \epsfile.
1278
1279 2006-07-25  Joe Neeman  <joeneeman@gmail.com>
1280
1281         * lily/grob.cc:
1282         
1283         * lily/gourlay-breaking.cc: Oops, these should have been included
1284         in my last commit
1285
1286 2006-07-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
1287
1288         * scripts/*.py (program_name): cleanup relocation snippets.
1289
1290         * scripts/convert-ly.py (datadir): remove LILYPONDPREFIX support.
1291
1292 2006-07-24  Joe Neeman  <joeneeman@gmail.com>
1293
1294         * scm/define-grobs.scm (all-grob-descriptions): make NonMusicalPaperColumn
1295         page-breakable by default
1296
1297         * scm/layout-page-layout.scm (space-systems): fix bug where the force isn't
1298         correctly calculated for a single-system page
1299
1300         * scm/lily-library.scm (interval-sane?): also check that the first number is no
1301         bigger than the second number
1302
1303         * lily/simple-spacer.cc (solve): allow compression even when ragged (but we
1304         acknowledge that we aren't satisfying constraints)
1305
1306         * lily/hara-kiri-group-spanner.cc (request_suicide): give equal treatment to
1307         non-Items
1308
1309         * lily/grob.cc (pure_height): add minimum-Y-extent
1310
1311         * lily/gourlay-breaking.cc (solve): don't ignore a compression force, even if we're
1312         ragged
1313
1314         * lily/constrained-breaking.cc: convert code to use new Matrix class
1315         (get_best_solution): new function
1316
1317         * scm/page.scm (make-page-stencil): don't crash if we annotate-layout when there
1318         is a page with no systems
1319
1320 2006-07-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
1321
1322         * VERSION (PACKAGE_NAME): release 2.9.13
1323
1324         * scm/define-grobs.scm (all-grob-descriptions): remove stray
1325         assignment.
1326
1327 2006-07-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
1328
1329         * Documentation/topdocs/NEWS.tely (Top): doc new features.
1330
1331         * scm/output-lib.scm (grace-spacing::calc-shortest-duration): new
1332         function.
1333
1334         * scm/define-grob-properties.scm (all-user-grob-properties):
1335         remove grace-space-factor.
1336
1337         * scm/define-grob-interfaces.scm (grace-spacing-interface): add
1338         grace-spacing-interface
1339         (spacing-options-interface): add.
1340
1341         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add Grace_spacing_engraver
1342
1343         * lily/spacing-options.cc (get_duration_space): move function from spacing-basic.cc
1344
1345         * lily/spacing-basic.cc (note_spacing): do init_from_grob on
1346         GraceSpacing object.
1347
1348         * lily/note-spacing.cc: fix prop list formatting
1349
1350         * lily/beaming-pattern.cc (de_grace): new function. Sensible
1351         beaming for grace notes too.
1352
1353         * input/regression/spacing-grace.ly: update.
1354
1355         * lily/grace-spacing-engraver.cc: new file.
1356
1357         * lily/spacing-spanner.cc: add strict-grace-spacing.
1358
1359 2006-07-20  Graham Percival  <gpermus@gmail.com>
1360
1361         * lily/parser.yy: compile fix.
1362
1363 2006-07-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
1364
1365         * scm/define-grobs.scm (all-grob-descriptions): typo.
1366
1367         * scm/framework-eps.scm (dump-stencils-as-EPSes): just strip
1368         .eps extension from includegraphics.
1369
1370         * scripts/lilypond-book.py (main): add support for --pdf. 
1371
1372         * lily/spacing-spanner.cc (calc_common_shortest_duration): use
1373         callback to compute common shortest duration.
1374         (set_springs): typo.
1375
1376         * scm/define-grob-properties.scm (all-user-grob-properties): add
1377         strict-grace-spacing.
1378
1379         * lily/spacing-determine-loose-columns.cc (is_loose_column):
1380         support float_grace_columns_.
1381
1382         * lily/spacing-options.cc (init_from_grob): new file.
1383
1384         * Documentation/topdocs/NEWS.tely (Top): doc tupletFullLengthNote.
1385
1386         * input/regression/spacing-loose-grace.ly: new file.
1387
1388         * Documentation/topdocs/NEWS.tely (Top): document new feature.
1389
1390         * lily/tuplet-engraver.cc (struct Tuplet_description): read
1391         tupletFullLengthNote too. Choose right bound depending on value.
1392
1393         * input/regression/tuplet-full-length-note.ly: new file.
1394
1395 2006-07-19  Erik Sandberg  <mandolaerik@gmail.com>
1396
1397         * lily/*-performer.cc: Converted try_music to listen_*
1398
1399         * lily/grob-info.cc, lily/engraver.cc: represent the cause of grob
1400         as a stream-event internally. Introduce event_cause (), deprecate
1401         music_cause ().
1402
1403         * scm/define-music-types.scm: Removed BusyPlayingEvent
1404         
1405 2006-07-19  Mats Bengtsson  <mabe@s3.kth.se>
1406
1407         * Documentation/user/advanced-notation.itely (Font selection):
1408         Document how to get a list of available fonts using 'lilypond
1409         -dshow-available-fonts blabla'.
1410
1411 2006-07-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
1412
1413         * GNUmakefile.in: filter lily-XXX.pdf files.
1414
1415         * scm/define-grob-interfaces.scm (bend-after-interface): add thickness.
1416
1417         * scm/define-grob-properties.scm (all-internal-grob-properties):
1418         remove delta-pitch. Use delta-position everywhere.
1419
1420         * scm/output-lib.scm (fall::print): use new order.
1421
1422         * scm/output-ps.scm (path): reorder arguments.
1423
1424         * scm/output-svg.scm (path): support for path primitive.
1425
1426         * input/regression/bend-after.ly: new file.
1427
1428         * Documentation/user/GNUmakefile ($(outdir)/%.pdf): foolproof
1429         recipe for eps -> pdf conversion.
1430
1431 2006-07-19  Erik Sandberg  <mandolaerik@gmail.com>
1432
1433         * lily/parser.yy, lily/lexer.ll: added some simplifications by
1434         Angelo Contardi.
1435
1436 2006-07-19  Graham Percival  <gpermus@gmail.com>
1437
1438         * input/manual/screech-boink.ly: moved to here.
1439
1440         * input/screech-boink.ly: deleted.
1441
1442         * scm/define-grob-properties.scm: clarify doc string.
1443
1444 2006-07-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
1445
1446         * Documentation/topdocs/NEWS.tely (Top): doc new feature.
1447
1448         * scm/output-ps.scm (path): define path.
1449
1450         * scm/define-stencil-commands.scm
1451         (ly:register-stencil-expression): add path.
1452
1453         * scm/define-music-properties.scm (all-music-properties): add delta-pitch.
1454
1455         * ly/engraver-init.ly: add Fall_engraver
1456
1457         * lily/parser.yy (music_function_event): allow musicfunction
1458         without music arg as music_function_event.
1459
1460         * lily/grob-scheme.cc (LY_DEFINE):
1461         ly:grob-robust-relative-extent. New function.
1462
1463         * scm/define-grobs.scm (all-grob-descriptions): add BendAfter
1464
1465         * scm/define-music-types.scm (music-descriptions): add BendAfterEvent.
1466
1467         * scm/output-lib.scm (fall::print): new function
1468
1469         * lily/fall-engraver.cc (stop_fall): new file.
1470
1471         * ly/music-functions-init.ly: alphabetise.
1472
1473         * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): pdf iso. eps as
1474         base.
1475
1476 2006-07-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
1477
1478         * VERSION (PATCH_LEVEL): bump version. Release 2.9.12
1479
1480         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
1481         doc pdftex usage.
1482
1483         * lily/translator-group.cc (connect_to_context): non const error message.
1484
1485         * Documentation/user/GNUmakefile ($(outdir)/%.pdf): update to use PDF
1486
1487         * scm/paper.scm (internal-set-paper-size): define landscape to #f
1488         if unset.
1489
1490         * scm/framework-ps.scm (convert-to-pdf): swap h and w in case of landscape. 
1491
1492         * stepmake/stepmake/texinfo-rules.make: strip DVI support.
1493
1494         * scm/framework-eps.scm (dump-stencils-as-EPSes): generate
1495         systems.pdftex too.
1496
1497         * scm/backend-library.scm (postscript->pdf): use -dEPSCrop for PDF.
1498
1499         * make/lilypond-vars.make (TEXINPUTS): add pdf output format.
1500
1501         * Documentation/topdocs/NEWS.tely (Top): add pdftex note.
1502
1503         * scm/output-ps.scm (resetrotation): use gsave/grestore for rotation.
1504
1505         * lily/main.cc (parse_argv): don't overwrite previous --formats string.
1506
1507         * scm/backend-library.scm (postscript->pdf): strip .eps too. 
1508
1509 2006-07-14  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1510
1511         * scm/layout-page-layout.scm: Define module, tidy code, use more
1512         functions iso. a single big one.
1513
1514         * scm/layout-page-dump.scm: move page dump functions used in two
1515         pass spacing to this file. Define module.
1516
1517         * scm/lily.scm (ly:load): don't load layout-page-layout.scm
1518          (separate module)
1519
1520         * ly/paper-defaults.ly: use module layout-page-layout.
1521
1522 2006-07-14  Erik Sandberg  <mandolaerik@gmail.com>
1523
1524         * lily/music.cc: Revised MusicEvent event class. It now contains
1525         event data directly instead of encapsulating it in music. The
1526         previously used class is renamed to OldMusicEvent.
1527
1528         * lily/stream-event.cc: Stream events are now probs.
1529         
1530         * lily/translator-group.cc, lily/translator.cc: Translators can
1531         now listen directly to stream events, by using macros
1532         [DECLARE,IMPLEMENT]_TRANSLATOR_LISTENER.
1533
1534         * lily/arpeggio-engraver.cc: Converted to use new event system
1535
1536         * THANKS: Corrected spelling mistake.
1537
1538 2006-07-12  Graham Percival  <gpermus@gmail.com>
1539
1540         * Documentation/user/SConscript, make/lilypond-vars.make,
1541         input/GNUmakefile: doc build looks in input/manual instead
1542         of input/test/
1543
1544         * input/manual/ GNUmakefile, SConscript: build files for
1545         input/manual/
1546
1547         * input/test/ various: some files moved to input/manual/ 
1548
1549         * Documentation/user/basic-notation.itely: small updates;
1550         thanks Kieren and Charles!
1551
1552 2006-07-12  Han-Wen Nienhuys  <hanwen@lilypond.org>
1553
1554         * VERSION (PACKAGE_NAME): release 2.9.11
1555
1556         * Documentation/topdocs/NEWS.tely (Top): update prop value 
1557
1558         * Documentation/user/basic-notation.itely (Tuplets): new property
1559         value.
1560
1561 2006-07-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
1562
1563         * python/convertrules.py (conv): tweaks. 
1564
1565         * VERSION (PATCH_LEVEL): bump version.
1566
1567         * python/convertrules.py (conv): add rule for
1568         tupletNumberFormatFunction.
1569
1570         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
1571         tupletNumberFormatFunction.
1572
1573         * scm/define-grobs.scm (all-grob-descriptions): calc TupletNumber
1574         text through 'text callback.
1575
1576         * lily/time-scaled-music-iterator.cc (construct_children): copy
1577         tweaks generated events.
1578
1579         * scm/define-context-properties.scm
1580         (all-user-translation-properties): remove tupletNumberFormatFunction
1581
1582         * lily/tuplet-engraver.cc (process_music): don't read
1583         tupletNumberFormatFunction
1584
1585         * scm/output-lib.scm (tuplet-number::calc-fraction-text): new
1586         function.
1587
1588 2006-07-11  Erik Sandberg  <mandolaerik@gmail.com>
1589
1590         * lily/global-context-scheme.cc: Separated ly:run-translator into
1591         smaller pieces.
1592
1593         * lily/score-engraver.cc, lily/score-performer.cc,
1594         scm/define-context-properties.scm: Make paper/midi output
1595         accessable as a context property.
1596
1597         * lily/score-translator.cc, lily/score-context.cc: Removed.
1598
1599 2006-07-07  Guido Amoruso  <guidonte@katamail.com>
1600
1601         * scm/ps-to-png.scm (Module): 
1602         * scm/framework-tex.scm (Module): 
1603         * scm/framework-ps.scm (Module): 
1604         * scm/backend-library.scm (Module): 
1605         * scm/framework-ps.scm: invoke gs with "-dDEVICEWIDTHPOINTS" and
1606         "dDEVICEHEIGHTPOINTS".
1607
1608 2006-07-04  Graham Percival  <gpermus@gmail.com>
1609
1610         * Documentation/user/ various: general improvements to
1611         "working with lilypond files" section.
1612
1613 2006-07-03  Erik Sandberg  <mandolaerik@gmail.com>
1614
1615         * lily/sequential-iterator.cc: Change the default get_music_list
1616         to read elements-callback music property
1617
1618         * scm/define-music-types.scm, scm/music-functions.scm: Cleaner
1619         processing of multimeasure rests. Softcoded
1620         sequential-music-iterator.
1621
1622         * lily/sequential-music-iterator.cc: Removed.
1623
1624 2006-06-28  Graham Percival  <gpermus@gmail.com>
1625
1626         * Documentation/user/basic-notation.itely: clarify \repeatTie.
1627
1628 2006-06-27  Erik Sandberg  <mandolaerik@gmail.com>
1629
1630         * lily/parser.yy: Wrap non-post-events in EventChords before
1631         assigning them to identifiers.
1632
1633 2006-06-27  Mats Bengtsson  <mabe@s3.kth.se>
1634
1635         * lily/bar-line.cc (compound_barline): Fix parenthesis error,
1636         gives correct vertical placement of \bar ":" in all staff
1637         sizes. Thanks Martial!
1638
1639 2006-06-26  Graham Percival  <gpermus@gmail.com>
1640
1641         * Documentation/user/invoking.itely : minor update from mailist.
1642
1643 2006-06-26  Erik Sandberg  <mandolaerik@gmail.com>
1644
1645         * lily/ various: Introduce stream events of types Prepare,
1646         OneTimeStep, CreateContext, AnnounceNewContext, RemoveContext,
1647         ChangeContext, SetProperty, RevertProperty, Override and Revert.
1648
1649         * lily/global-context*.cc: Time is now -inf before iteration
1650         starts.
1651
1652         * lily/include/context.hh: Removed unique_, init_
1653
1654         * Documentation/topdocs/NEWS: Make the feathered beam example
1655         avoid triggering a bug.
1656
1657 2006-06-24  Graham Percival  <gpermus@gmail.com>
1658
1659         * Documentation/user/ various: small additions from mailist.
1660
1661 2006-06-22  Mats Bengtsson  <mabe@s3.kth.se>
1662
1663         * ly/performer-init.ly: Add some missing links in the context
1664         hierarchy for MIDI output. There are probably some more missing!
1665
1666 2006-06-21  Graham Percival  <gpermus@gmail.com>
1667
1668         * Documentation/user/ various: minor spelling fixes;
1669         thanks Dave Luttinen!
1670
1671         * Documentation/user/ various: small clarifications;
1672         thanks Anthony Youngman!
1673
1674 2006-06-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
1675
1676         * po/fr.po: add \n appropriately.
1677
1678         * lily/lexer.ll: remove ? from version-seen?  
1679
1680 2006-06-19  John Mandereau  <john.mandereau@free.fr>
1681
1682         * po/fr.po; update translation, by Jean-Charles Malahieude and
1683         John Mandereau.
1684
1685 2006-06-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
1686
1687         * THANKS: add Markus Schneider.
1688
1689         * lily/tab-staff-symbol-engraver.cc: derive from Engraver, not
1690         Staff_symbol_engraver
1691
1692         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): don't
1693         replace staff_engraver
1694
1695         * lily/staff-symbol-engraver.cc (stop_spanner): announce end of
1696         spanner.
1697
1698         * lily/staff-collecting-engraver.cc
1699         (acknowledge_end_staff_symbol): new function
1700
1701         * lily/volta-engraver.cc (acknowledge_end_staff_symbol): new function. 
1702
1703         * lily/staff-collecting-engraver.cc
1704         (acknowledge_end_staff_symbol): new function.
1705
1706         * lily/main.cc: switch on relocation by default.
1707
1708 2006-06-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
1709
1710         * lily/spacing-spanner.cc (musical_column_spacing): set
1711         compound_fixed_note_space to 0.0. Document why.
1712
1713         * lily/simple-spacer.cc (is_sane): also have a kludge for numeric
1714         range of inverse_hooke_
1715         (Simple_spacer): init completely.
1716         (fits): const
1717         (get_line_configuration): don't use cols.resize(); it introduces
1718         initialized data.
1719
1720         * scm/framework-ps.scm (dump-page): add setstrokeadjust. 
1721
1722         * ps/music-drawing-routines.ps: remove selectfont L1 hack.
1723
1724         * lily/beaming-pattern.cc (best_splitpoint_index): urg, 2nd
1725         try. Divide by beatlength.
1726
1727         * input/regression/beaming-ternary-metrum.ly: update doc.
1728         add beatLength hack.
1729
1730         * scm/music-functions.scm (make-time-signature-set): add
1731         standard-beat-grouping. 
1732
1733 2006-06-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
1734
1735         * input/regression/tie-whole.ly: new file.
1736
1737         * lily/tie-formatting-problem.cc (set_column_chord_outline): don't
1738         cross center of note head in case of invisible stem. 
1739
1740 2006-06-16  Graham Percival  <gpermus@gmail.com>
1741
1742         * Documentation/user/ various: small fixes from mailist.
1743
1744 2006-06-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
1745
1746         * lily/breathing-sign.cc (offset_callback): idem.
1747
1748         * lily/align-interface.cc (align_to_fixed_distance): remove
1749         hungarian suffix.
1750
1751         * lily/beaming-pattern.cc (count_factor_twos): oops. We want
1752         x%2==0.
1753
1754 2006-06-15  Han-Wen Nienhuys  <hanwen@lilypond.org>
1755
1756         * VERSION (PACKAGE_NAME): release 2.9.9
1757
1758         * ly/lilypond-book-preamble.ly: add \version
1759
1760 2006-06-14  Han-Wen Nienhuys  <hanwen@lilypond.org>
1761
1762         * scripts/lilypond-book.py (PREAMBLE_LY): include
1763         lilypond-book-preamble.ly
1764
1765         * lily/stem.cc (get_beaming): return max of 0 and
1766         scm_ilength. Fixes slurring from/to beams.
1767
1768         * ly/lilypond-book-preamble.ly: new file.
1769
1770         * lily/slur.cc: add inspect-index feature.
1771
1772 2006-06-13  Graham Percival  <gpermus@gmail.com>
1773
1774         * Documentation/user/tutorial.itely: trivial fix.
1775
1776 2006-06-13  Erik Sandberg  <mandolaerik@gmail.com>
1777
1778         * lily/parser.yy, scm/ly-syntax-constructors.scm: Produce almost
1779         all non-event music in the parser via MAKE_SYNTAX.
1780
1781         * lily/parser-scheme.cc: Add ly:parser-error function
1782
1783         * scm/paper.scm: fix typo
1784
1785 2006-06-13  Han-Wen Nienhuys  <hanwen@lilypond.org>
1786
1787         * THANKS: add RT.
1788
1789         * lily/font-config.cc (init_fontconfig): add warning if cache_file
1790         is null.
1791
1792         * buildscripts/output-distance.py (test_compare_signatures):
1793         timing routines.
1794         (read_signature_file): use new signature format.
1795
1796         * scm/stencil.scm (write-system-signature): simpler signature
1797         format.
1798
1799         * lily/stem.cc (calc_stem_end_position): calc quantized-positions
1800         for beamed case. 
1801
1802         * lily/note-spacing.cc (stem_dir_correction): don't inspect
1803         stem_end_position, but estimate instead. 
1804
1805         * lily/tuplet-bracket.cc (calc_positions): look at
1806         stem-end-position for tuplet bracket slope. Fixes sloped tuplet
1807         brackets narrower than beams. 
1808
1809         * lily/lexer.ll: set version-seen? even if version is
1810         INVALID. 
1811
1812         * lily/rest.cc (y_offset_callback): bugfix: decide position
1813         override based on scm_is_number(). Fixes \rest on center staff
1814         line. 
1815
1816         * lily/beaming-pattern.cc (best_splitpoint_index): fix beaming
1817         patterns for 16th triplets.
1818
1819 2006-06-10  Graham Percival  <gpermus@gmail.com>
1820
1821         * Documentation/user/ page.itely, global.itely: editing
1822         and reorg.
1823
1824         * Documentation/user/ various: findex -> funindex.
1825
1826 2006-06-10  Erik Sandberg  <mandolaerik@gmail.com>
1827
1828         * lily/time-scaled-music-iterator.cc: Use tupletSpannerDuration to
1829         insert extra tuplet events.
1830
1831 2006-06-10  Graham Percival  <gpermus@gmail.com>
1832
1833         * Documentation/user/programming-interfaces.itely: add
1834         info from NEWS.
1835
1836         * python/convertrules.py: add annotatefoo -> annotate-foo
1837         rules.
1838
1839         * Documentation/user/global.itely: start editing.
1840
1841         * Documentation/user/page.itely: major editing, new spacing
1842         docs.
1843
1844 2006-06-10  Han-Wen Nienhuys  <hanwen@lilypond.org>
1845
1846         * scm/define-markup-commands.scm (wordwrap-markups): use
1847         output-def 'line-width if undefined.
1848
1849         * HACKING: trim outdated info.
1850
1851 2006-06-09  Mats Bengtsson  <mabe@s3.kth.se>
1852
1853         * scm/define-grobs.scm (all-grob-descriptions): Add
1854         line-spanner-interface to all grobs that already have
1855         text-spanner-interface or dynamic-text-spanner-interface
1856
1857         * scm/page.scm: Rename annotate{headers,systems,page}->
1858         annotate-*
1859
1860         * input/regression/page-spacing.ly,
1861         input/regression/page-layout-manual-position.ly: idem
1862
1863 2006-06-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
1864
1865         * lily/line-spanner.cc: cleanup property list.
1866
1867         * scripts/lilypond-book.py (find_toplevel_snippets): don't use
1868         generator expressions (2.3 compat). 
1869
1870 2006-06-09  Mats Bengtsson  <mabe@s3.kth.se>
1871
1872         * lily/vertical-align-engraver.cc: Make sure that the
1873         align{Above,Below}Context properties are included in the automatic
1874         documentation.
1875
1876 2006-06-08  Joe Neeman  <joeneeman@gmail.com>
1877
1878         * scm/paper-system.scm (paper-system-annotate): also annotate the
1879         estimated pure-Y-extent
1880
1881         * scm/define-grobs.scm: add pure-Y-extent and pure-Y-offset functions
1882
1883         * lily/system.cc (break_into_pieces): set the estimated height
1884         of each child system
1885
1886         * lily/stem.cc (pure_height): new pure-Y-extent callback
1887
1888         * lily/staff-symbol-referencer.cc (callback): don't destroy
1889         the staff-position property
1890
1891         * lily/hara-kiri-group-spanner.cc (request_suicide): split
1892         consider_suicide into two functions
1893
1894         * lily/constrained-breaking.cc (resize): use the new pure
1895         callbacks to estimate the height of a system
1896
1897         * lily/axis-group-interface.cc (pure_group_height): new
1898         side-effect-free VerticalAxisGroup height-callback
1899
1900         * lily/align-interface.cc (get_extents_aligned_translates):
1901         split align_elements_to_extents into two functions
1902         (get_pure_child_y_translation): new function
1903
1904         * lily/grob.cc: new functions for pure-Y-extent and pure-Y-offset
1905
1906         * lily/item.cc: new functions pure_is_visible and spanned_rank_iv
1907
1908         * lily/paper-score.cc: cache break_indices and columns
1909
1910         * lily/side-position-interface.cc: new pure-Y-extent callbacks
1911         
1912 2006-06-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
1913
1914         * lily/font-config.cc (init_fontconfig): do the init if
1915         cache_file, but don't look at cache_file.
1916
1917         * input/regression/quote-tie.ly: new file.
1918
1919         * lily/tie-engraver.cc (struct Head_event_tuple): add end_moment_
1920         to Head_event_tuple, so we deal gracefully with ties on
1921         cue-endings.
1922
1923         * lily/pango-font.cc (pango_item_string_stencil): type correctness
1924         for FcChar8*
1925
1926 2006-06-08  Graham Percival  <gpermus@gmail.com>
1927
1928         * input/test/ smart-transpose.ly, reverse-music.ly:
1929         \applyMusic to music functions update, thanks Michael!
1930
1931 2006-06-07  Graham Percival  <gpermus@gmail.com>
1932
1933         * input/test/ add-staccato.ly, add-text-script.ly,
1934         unfold-all-repeats.ly, music-box.ly: \applyMusic to
1935         music functions update, thanks to Michael Meixner.
1936
1937         * Documentation/user/music-glossary.tely: small fix
1938         from Francisco.
1939
1940         * Documentation/user/ various: minor additions from mailist.
1941
1942         * Documentation/user/lilypond.tely, basic-notation.itely:
1943         small test of @funindex.  (works here)
1944
1945         * input/test/font-table.ly: reduce size to partially
1946         de-ugly version in manual.
1947
1948         * Documentation/user/page.itely: new file (split former
1949         "global issues" into "page settings" and "non-musical
1950         output".
1951
1952         * Documentation/user/ various: fix @ref{}s to match
1953         new chapter names (above).
1954
1955 2006-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
1956
1957         * SConstruct (LILYPONDPREFIX): Bootstrap fix.
1958
1959 2006-06-06  Graham Percival  <gpermus@gmail.com>
1960
1961         * Documentation/user/advanced-notation.itely: add example
1962         for segno/coda on barline.
1963
1964         * tex/texinfo.tex: merge from upstream.
1965
1966 2006-06-06  Jan Nieuwenhuizen  <janneke@gnu.org>
1967
1968         * scripts/lilypond-book.py (process_snippets): Argument fix.
1969
1970         * SConstruct:
1971         * buildscripts/builder.py:
1972         * lily/SConscript: 
1973         * mf/SConscript: 
1974         * Documentation/user/SConscript:  More SCons fixes.
1975
1976 2006-06-03  Jan Nieuwenhuizen  <janneke@gnu.org>
1977
1978         * lily/font-config.cc (init_fontconfig): Only initialize if
1979         global cache_file is found.
1980
1981 2006-06-06  Erik Sandberg  <mandolaerik@gmail.com>
1982
1983         * ly/music-functions-init.ly: Updated \overrideProperty to use the
1984         new \applyOutput.
1985
1986 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
1987
1988         * VERSION (PACKAGE_NAME): release 2.9.8
1989
1990         * lily/ledger-line-engraver.cc (stop_translation_timestep): new
1991         function. Delay ledger modifying ledgered grobs to
1992         stop_translation_timestep(), to ensure that we're ledgering
1993         according to the new spanner.
1994         (acknowledge_staff_symbol): don't check for non-NULL
1995         staff_sym->get_bound()
1996
1997         * lily/staff-symbol-engraver.cc (start_spanner): set left bound on
1998         creation.
1999
2000         * Documentation/pictures/GNUmakefile (XPM_FILES): src-wildcard for
2001         pictures too.
2002
2003         * GNUmakefile.in (dist-toplevel-txt-files): dist aclocal.m4
2004         directly from srcdir/stepmake/aclocal.m4
2005         
2006         * Documentation/misc/GNUmakefile (TEXTS): use src-wildcard for
2007         disting MISC files.
2008
2009         * lily/simple-spacer.cc (get_column_desc): desc -> description.
2010
2011 2006-06-06  Joe Neeman  <joeneeman@gmail.com>
2012
2013         * lily/simple-spacer.cc (get_line_configuration): add
2014         keep-inside-line rods
2015         (struct Column_desc): add constructor
2016         (struct Rod_desc): add constructor
2017         (get_line_forces): check for forced page breaks here too
2018
2019         * lily/instrument-name-engraver.cc (acknowledge_axis_group): prevent
2020         support/elements cycles between InstrumentNames and AxisGroups
2021
2022 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
2023
2024         * config.make.in (METAFONT): remove MAKEINFO_VERSION
2025
2026         * stepmake/stepmake/topdocs-targets.make (make-txt-files): define
2027         make-txt-files target.
2028
2029         * stepmake/stepmake/toplevel-targets.make (do-top-doc): use
2030         make-txt-files target.
2031
2032         * configure.in (LINK_GXX_STATICALLY): $srcdir for readlink.py
2033
2034         * stepmake/stepmake/generic-vars.make (distdir): create dist in
2035         top-build-dir.
2036
2037 2006-06-06  Jürgen Reuter  <reuter@ipd.uka.de>
2038
2039         * Documentation/user/instrument-notation.itely,
2040         input/regression/breathing-sign-ancient.ly,
2041         input/test/divisiones.ly: Removed redundant property settings for
2042         vaticana contexts.
2043
2044         * ly/gregorian-init.ly: Rewrote \versus and \responsum in order to
2045         fix lyrics alignment problems.  They are implemented now as scheme
2046         functions that add the appropriate unicode char to the first lyric
2047         event rather than adding a separate lyric event.  Minor edit of
2048         comments.
2049
2050 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
2051
2052         * GNUmakefile.in (dist-toplevel-txt-files): new target. Don't
2053         pollute src dir with built .txt files, but install directly from
2054         Documentation/topdocs/out/
2055
2056         * buildscripts/output-distance.py
2057         (ComparisonData.create_html_result_page): put version/directories
2058         in table header.
2059
2060         * Documentation/topdocs/NEWS.tely (Top): document spacing section
2061         feature.
2062
2063         * configure.in (LINK_GXX_STATICALLY): use readlink.py to resolve links.
2064         Patch by Karl Hammar
2065         
2066         * buildscripts/readlink.py: add  file.
2067         Patch by Karl Hammar
2068
2069 2006-06-06  Joe Neeman  <joeneeman@gmail.com>
2070
2071         * lily/tuplet-number.cc (print): prevent stencil from being
2072         garbage collected.
2073
2074 2006-06-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
2075
2076         * scm/stencil.scm (write-system-signature): explicitly 
2077         -well, superfluously- close output port.
2078
2079         * buildscripts/output-distance.py (main): oops. Add extra argument.
2080
2081 2006-06-05  Graham Percival  <gpermus@gmail.com>
2082
2083         * Documentation/user/music-glossary.tely: clarified example
2084         from Francisco Vila, thanks!
2085
2086 2006-06-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
2087
2088         * input/regression/spacing-section.ly: new file.
2089
2090         * lily/input.cc (programming_error): new function.
2091
2092         * lily/spacing-engraver.cc (try_music): new function. Accept
2093         spacing-section-event
2094
2095         * lily/spacing-spanner.cc (set_springs): take slices of all
2096         columns for spacing.
2097
2098         * lily/include/paper-column.hh (class Paper_column): add
2099         Paper_column::compare.
2100
2101         * ly/spanners-init.ly (newSpacingSection): add newSpacingSection.
2102
2103         * scm/define-music-types.scm (music-descriptions): add
2104         SpacingSectionEvent
2105
2106         * lily/music-iterator.cc (report_event): use programming_error for
2107         sending non-event error.
2108
2109         * lily/input.cc (programming_error): new function
2110
2111         * buildscripts/output-distance.py (main): use compare-XXX for
2112         compare files.
2113         (main): --threshold option, default at 0.30
2114
2115         * output-distance.py (main): add --threshold option.
2116
2117 2006-06-04  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2118
2119         * scm/paper-system.scm (paper-system-annotate): fix problem when
2120         annotating an empty system
2121
2122 2006-06-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
2123
2124         * GNUmakefile.in: reinstate old web tar/copying.
2125
2126 2006-06-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
2127
2128         * lily/lyric-combine-music-iterator.cc (find_voice): return 0 if
2129         nothing changes. (Erik S) 
2130
2131         * lily/percent-repeat-iterator.cc (get_music_list): fix repeat
2132         count. (Erik S)
2133
2134 2006-05-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2135
2136         * scm/define-markup-commands.scm (whiteout): do not force
2137         foreground color of argument markup to black.
2138
2139         * scm/stencil.scm (annotate-y-interval): put arrow dimension at
2140         the left of the arrow, instead of below the arrow name, so that,
2141         when two little arrows are vertically stacked, their dimensions
2142         and name should not overlap. Add a color key parameter.
2143
2144         * scm/paper-system.scm (paper-system-annotate): Annotate
2145         next-space+next-padding instead of next-space. Annotate space
2146         between next-padding and next-space+padding, respectively, and
2147         following system extent and refpoint-Y-extent. Use colors.
2148
2149         * scm/page.scm (annotate-page): translate annotations slightly to
2150         the right.
2151
2152 2006-06-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
2153
2154         * lily/figured-bass-position-engraver.cc (acknowledge_end_slur):
2155         fix for x-staff slurs. Thanks Joe!
2156
2157         * buildscripts/output-distance.py
2158         (SystemLink.output_expression_change_count): keep track of changed
2159         details, and dump in details html page.
2160  
2161         * input/regression/figured-bass-staff.ly: add note about setting
2162         properties in Staff context.
2163
2164         * lily/figured-bass-position-engraver.cc (acknowledge_slur):
2165         add slurs and ties to support too.
2166
2167         * buildscripts/output-distance.py (main): set dest_dir
2168         argument. Add --max-count option.
2169
2170 2006-06-02  Jürgen Reuter  <reuter@ipd.uka.de>
2171
2172         * ly/gregorian-init.ly: Converted to utf-8.  Added memorable
2173         shortcuts for special unicode chars that are useful in chant
2174         notation.  Revised exisiting and added new comments.
2175
2176 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
2177
2178         * make/mutopia-rules.make: remove duplicate recipe.
2179
2180 2006-06-02  Werner Lemberg  <wl@gnu.org>
2181
2182         * tex/texinfo.cnf: Fix typo (\euro -> \minus).
2183         Add support for U+0132 (IJ) and U+0133 (ij).
2184
2185 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
2186
2187         * buildscripts/output-distance.py (FileLink): new class. collect
2188         info systems from one .ly file. 
2189         (FileLink.link_files_for_html): further tweaks.
2190
2191 2006-06-02  Graham Percival  <gpermus@gmail.com>
2192
2193         * tex/texinfo.tex: partial fix for @funindex.
2194
2195         * Documentation/user/macros.tely: uncomment @funindex (doesn't
2196         break anything).
2197
2198 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
2199
2200         * make/mutopia-vars.make (ly_examples): replace .ly.txt with .ly
2201
2202         * tex/texinfo.tex (sectionheading, q.v.): call \quoteexpand for
2203         @example too. Backportme.
2204
2205 2006-06-02  Graham Percival  <gpermus@gmail.com>
2206
2207         * tex/texinfo.cnf: added UTF-8 support for texinfo; patch
2208         from Werner Lemberg.
2209
2210 2006-06-02  Paco (Francisco Vila)  <fravd@ya.com>
2211
2212         * Documentation/user/music-glossary.tely: additional spanish
2213         updates and a lyrics fix in an example.
2214
2215 2006-06-02  Jürgen Reuter  <reuter@ipd.uka.de>
2216
2217         * scm/define-grob-properties.scm: Previous patch contained
2218         spurious line from another patch not yet committed.  Fixed.
2219
2220         * scm/define-grob-properties.scm: Add missing doc strings for
2221         ancient notation.
2222
2223 2006-06-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
2224
2225         * buildscripts/output-distance.py
2226         (ComparisonData.write_text_result_page): separate the scores, sort
2227         by geo_score.
2228
2229         * scm/framework-eps.scm (output-classic-framework): start at 1 for
2230         system signatures.
2231
2232         * buildscripts/output-distance.py (me_path): use argv[0] for
2233         sys.path extension
2234         (ComparisonData.img_cell): use colored borders.
2235
2236         * scm/stencil.scm (write-system-signature): escape newlines too.
2237         (write-system-signature): use (1,-1) interval for empty interval
2238
2239 2006-01-01  Graham Percival  <gpermus@gmail.com>
2240
2241         * Documentation/user/music-glossary.tely: Spanish updates
2242         from Francisco Vila.
2243
2244         * Documentation/user/lilypond-book.itely: addition from
2245         Vaclav Smilauer.
2246
2247         * Documentation/user/ various: edits, small additions
2248         from mailist, etc.
2249
2250 2006-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
2251
2252         * GNUmakefile.in (tree-lib-prefix-current):
2253         (tree-share-prefix-current): Use version number in tree, add
2254         `current' symlinks.
2255
2256 2006-06-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
2257
2258         * GNUmakefile.in: write VERSION, again.
2259
2260         * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
2261         $(outdir)/%.ly $(outdir)/%.ps): dump sigs for normal files too.
2262
2263         * stepmake/aclocal.m4: robuster version detection.
2264
2265         * buildscripts/output-distance.py
2266         (ComparisonData.create_html_result_page): copy only if file
2267         exists, fixup src paths.
2268
2269         * stepmake/bin/add-html-footer.py (built): junk gulp_file()
2270
2271 2006-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
2272
2273         * stepmake/aclocal.m4: Robustification for (gcc) version detection.
2274         Another datarootdir reto.
2275
2276         * cygwin/postinstall-lilypond.sh: Do not fail if info docs aren't
2277         available.  This should be moved to postinstall-lilypond-doc.
2278
2279 2006-05-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
2280
2281         * GNUmakefile.in: simplify local-WWW-post. 
2282         remove -type l from find.
2283
2284         * buildscripts/output-distance.py (ComparisonData.compare_trees):
2285         fixes. Don't follow symlinks.
2286         (ComparisonData.create_html_result_page): remove previous results.
2287         insert ../python in path.
2288
2289         * scripts/lilypond-book.py (PREAMBLE_LY): spacing fixes.
2290
2291 2006-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
2292
2293         * config.make.in (datadir): Add datarootdir to silence autoconf.
2294
2295         * stepmake/aclocal.m4: Update for autoconf-2.59d.
2296
2297 2006-05-31  Erlend Aasland  <erlenda@gmail.com>
2298
2299         * dynamic-engraver.cc: fix bug (dynamics collide with accidentals)
2300
2301         * scm/output-ps.scm (repeat-slash): fix a bug that made repeat
2302         slash beams too wide.
2303
2304 2006-05-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
2305
2306         * VERSION: release 2.9.7
2307         
2308 2006-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
2309
2310         * lily/relocate.cc (read_relocation_dir): Do not blindly
2311         dereference DIR.
2312
2313 2006-05-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
2314
2315         * lily/parser.yy: replace THIS by PARSER
2316
2317         * Documentation/index.html.in: add link to test-results.html page.
2318
2319         * Documentation/topdocs/NEWS.tely (Top): update NEWS entry.
2320
2321         * scm/translation-functions.scm (format-bass-figure): translate
2322         digits over 10 to the left
2323
2324         * scm/define-markup-commands.scm (translate-scaled): new markup.
2325
2326         * mf/feta-nummer-code.mf (code): overshoot the topright tip of the
2327         7 glyph. 
2328
2329         * ly/engraver-init.ly: add Figured_bass_engraver
2330
2331         * lily/engraver-group.cc (acknowledge_grobs): use start/stop drul.
2332
2333         * lily/figured-bass-engraver.cc (clear_spanners): use everywhere.
2334
2335         * lily/score-engraver.cc (announce_grob): only note START announces.
2336
2337         * lily/include/engraver-group.hh (Translator_group):
2338         acknowledge_hash_table_ is now drul.
2339
2340         * lily/engraver.cc (announce_end_grob): new method.
2341
2342         * lily/include/grob-info.hh (class Grob_info): add start_end_ member.
2343
2344         * lily/translator-dispatch-list.cc (create): take start_end argument.
2345
2346         * lily/include/translator.hh (TRANSLATOR_DECLARATIONS): change
2347         acknowledge_static_array_ to drul
2348
2349         * lily/include/translator.icc (ADD_END_ACKNOWLEDGER): new macro.
2350
2351         * scm/define-grob-interfaces.scm
2352         (bass-figure-alignment-interface): add bass-figure-alignment-interface
2353
2354         * scm/define-grobs.scm (all-grob-descriptions): add
2355         BassFigureAlignmentPositioning
2356
2357         * ly/Welcome-to-LilyPond-MacOS.ly: include in LilyPond, so version
2358         number stays up to date. Backportme.
2359
2360 2006-05-30  Mats Bengtsson  <mabe@s3.kth.se>
2361
2362         * Documentation/user/basic-notation.itely (Bar lines): Document
2363         the "||:" bar type. 
2364
2365 2006-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
2366
2367         * buildscripts/builder.py: Remove --ly option/target from mf-to-table.
2368
2369         * scripts/lilypond-book.py: Bugfix: do not blindly attempt
2370         .../current hack if LILYPONDPREFIX is fine.  Fixes `scons doc'
2371         build.
2372
2373         * Resurrect `scons lily' build.
2374
2375         * SConstruct (symlink_tree): Bugfix: link
2376         music-drawing-routines.ps to file iso directory.
2377
2378         * lily/SConscript: Remove kpath-guile from LIBS.
2379
2380         * SConstruct (libdir_package_version): Typo.
2381         (configure): Comment-out fontforge for lack of fontforge.pc .
2382         Also add libdir* to environment.
2383
2384 2006-05-30  Graham Percival  <gpermus@gmail.com>
2385
2386         * Documentation/user/ various: minor additions from mailist and
2387         editing.
2388
2389 2006-05-30  Paco <fravd@ya.com>
2390
2391         * Documentation/user/music-glossary.tely: numerous corrections and
2392         some new translations.
2393
2394 2006-05-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
2395
2396         * BackportmeStart.
2397         
2398         * buildscripts/output-distance.py
2399         (ComparisonData.create_html_result_page): new routine: summarise
2400         results in HTML page with images. 
2401         (ComparisonData.create_text_result_page): create summary text files too.
2402
2403         * GNUmakefile.in (web-ext): package .signature files too. They
2404         compress well. 
2405
2406         * scm/stencil.scm (write-system-signature): typo.
2407
2408         * GNUmakefile.in: create web-root/VERSION to help upload scripts.
2409
2410         * scm/stencil.scm (write-system-signature): better escaping.
2411         only write signature for music systems, not for markup systems.
2412
2413         * scm/framework-ps.scm (output-framework): dump-signatures support
2414         for plain output.
2415
2416         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): add -ddump-signatures.
2417
2418         * scm/framework-ps.scm (write-preamble): redefine mark_URI to nop
2419         for -dno-point-and-click
2420
2421         * lily/grob.cc (get_print_stencil): don't read
2422         point_and_click_global to determine whether to set grob-cause.
2423
2424 2006-05-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
2425
2426         * buildscripts/output-distance.py (main): new function.
2427         (ComparisonData): new class.
2428
2429         * lily/ledger-line-engraver.cc (acknowledge_staff_symbol): be more
2430         careful with generating new LedgerLineSpanners.
2431
2432         * lily/ledger-line-spanner.cc (set_spacing_rods): suicide if no staff.
2433
2434         * ly/engraver-init.ly: remove Ledger_line_engraver from Voice
2435         context. This fixes double ledger lines in output. 
2436
2437         * lily/system.cc (get_paper_system): remove 3 layer limit.
2438
2439         * buildscripts/output-distance.py (SystemLink.distance): new
2440         file. Compare signatures.
2441
2442         * python/safeeval.py (SafeEval.visitUnarySub): new file.
2443
2444         * lily/grob-array.cc (remove_duplicates): rename from
2445         uniq(). Sort before calling uniq() so it actually works.
2446
2447 2006-05-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
2448
2449         * scripts/lilypond-book.py (Lilypond_file_snippet.ly): strip
2450         \version from lilypond file snippet.
2451         (Lilypond_file_snippet.ly): oops. typo.
2452         (find_toplevel_snippets): urgh. again.
2453
2454         * lily/system.cc (get_paper_systems): uniq all_elements_ , to
2455         prevent duplicated broken items in output.
2456
2457         * scm/framework-eps.scm (output-classic-framework): only dump if
2458         dump-signatures is set.
2459
2460         * scm/lily.scm (define-scheme-options): add dump-signatures option.
2461
2462         * scm/stencil.scm (write-system-signature): new routine: write
2463         python parseable signature of a separate paper system.
2464         BackportmeEnd.
2465         
2466 2006-05-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
2467
2468         * lily/stanza-number-engraver.cc (process_music): use is_markup()
2469         iso is_string().
2470         include header.
2471
2472 2006-05-25  Erik Sandberg  <mandolaerik@gmail.com>
2473
2474         * translator-group.cc: send music events to engravers in
2475         non-bottom contexts.
2476
2477         * tuplet-engraver.cc: process tuplet brackets in correct order.
2478
2479 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
2480
2481         * stepmake/aclocal.m4: STEPMAKE_PYTHON(): clear cached value since
2482         arg 2 might point us to a new binary (patch by Karl Hammar)
2483         
2484 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
2485
2486         * VERSION (PACKAGE_NAME): release 2.9.6
2487
2488         * Documentation/topdocs/NEWS.tely (Top): trim explanation. 
2489
2490         * Documentation/user/*.itely: 2nd
2491         attempt: replace funindex -> findex globally.
2492
2493 2006-05-24  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2494
2495         * input/no-notation/display-lily-tests.ly: fix \applyOutput
2496         test. Add \break, \pageBreak, \pageTurn, etc, tests.
2497
2498         * scm/define-music-display-methods.scm: display methods for
2499         breaks. Fix \applyOutput.
2500
2501 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
2502
2503         * Documentation/user/macros.itexi: comment out funindex expansion. 
2504
2505         * Documentation/user/music-glossary.tely: junk \oldaddlyrics
2506         everywhere.
2507
2508         * GNUmakefile.in: fix wildcarding for scrips/out/ links. Thanks
2509         Karl Hammar. Backportme.
2510  
2511         * Documentation/user/advanced-notation.itely (Balloon help): idem.
2512
2513         * Documentation/user/changing-defaults.itely (Creating contexts): idem.
2514
2515         * Documentation/user/programming-interface.itely (Running a
2516         function on all layout objects): idem.
2517
2518         * Documentation/user/introduction.itely (Automated engraving):
2519         update \applyOutput syntax
2520
2521         * lily/lyric-combine-music-iterator.cc (start_new_syllable):
2522         remove debugging hook.
2523
2524         * configure.in (LINK_GXX_STATICALLY): use "" to allow $
2525         expansion. 
2526
2527         * Documentation/user/GNUmakefile (TEXI2DVI_FLAGS): add -E.
2528
2529         * stepmake/stepmake/texinfo-rules.make ($(outdir)/%.dvi): add
2530         TEXI2DVI_FLAGS to texi2dvi invocation. 
2531
2532 2006-05-24  Erik Sandberg  <mandolaerik@gmail.com>
2533
2534         * lily/chord-tremolo-*.cc: Reworked how \repeat "tremolo"
2535         works. More work is done by iterator now, and engraver has been
2536         very much simplified.
2537
2538         * lily/translator-group.cc: try_music is now invoked through a
2539         listener
2540
2541         * lily/*-iterator.cc: Massive cleanups. Junked
2542         try_music_in_children globally. Renamed try_music to report_event,
2543         and made that method descend to a bottom context automatically.
2544
2545         * lily/event-iterator.cc: New file.
2546
2547         * lily/output-property-iterator.cc,
2548         lily/old-lyric-combine-music-iterator.cc: Removed.
2549
2550         * python/convert-rules.py: Modified the syntax for \applyOutput.
2551
2552 2006-05-23  Graham Percival  <gpermus@gmail.com>
2553
2554         * stepmake/stepmake/texinfo-rules.make: added -E, allows pdf doc
2555         creation.
2556
2557         * Documentation/user/ various: stuff that might have helped
2558         to fix the pdf creation, plus some minor doc additions.
2559
2560         * Documentation/user/changing-defaults.itely: remove @b from
2561         @b{ @internasref{foo}}; this breaks texi2dvi -E.
2562
2563 2006-05-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
2564
2565         * lily/beaming-pattern.cc (beamify): deal with negative start
2566         moments for beaming patterns.
2567
2568 2006-05-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
2569
2570         * lily/beaming-info.cc (beamify): new function: read beatLength
2571         and beatGrouping from context. 
2572
2573         * input/regression/beam-beat-grouping.ly (Module): new file.
2574
2575         * input/regression/beam-unconnected-beamlets.ly (Module): new file.
2576
2577         * lily/beam.cc (get_beam_segments): generate events for
2578         max_connect_ case too.
2579         (get_beam_segments): read Stem::max-beam-connect.
2580
2581         * input/regression/beam-single-stem.ly: new file.
2582
2583         * lily/stem.cc (set_beaming): use #f as signaling value for
2584         beamcount 0.
2585
2586         * lily/beam-engraver.cc (typeset_beam): set right bound if unset.
2587
2588         * lily/beam.cc (set_beaming): read clip-edges property.
2589         (calc_direction): don't suicide for single stem.
2590
2591         * lily/beaming-info.cc (best_splitpoint_index): take bool*
2592         argument, remove 1<<15 hack. Remove clip_edges() 
2593
2594         * lily/hairpin.cc (print): only do padding for nonmusical bounds
2595
2596 2006-05-21  Graham Percival  <gpermus@gmail.com>
2597
2598         * Documentation/user/basic-notation.itely: reorg.
2599
2600         * Documentation/user/ various: minor fixes.
2601
2602 2006-05-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
2603
2604         * lily/stencil-expression.cc (register_stencil_head): opps, append
2605         to cdr of static SCM object.
2606
2607 2006-05-19  Graham Percival  <gpermus@gmail.com>
2608
2609         * Documentation/user/README.txt, lilypond.tely, macros.itexi:
2610         update framework for command index.  DOC WRITERS: use @funindex
2611         instead of @cindex @code{}.
2612
2613         * Documentation/user/ various: replace @cindex @code{} => @funindex
2614
2615 2006-05-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
2616
2617         * lily/beam.cc (set_stem_lengths): trigger 'beaming callback, in
2618         case positions is set manually. 
2619
2620 2006-05-18  Erik Sandberg  <mandolaerik@gmail.com>
2621         
2622         * scm/ly-syntax-constructors.scm: New file. Converted a few syntax
2623         rules to Scheme.
2624
2625 2006-05-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
2626
2627         * Documentation/user/changing-defaults.itely (Contexts explained):
2628         use absolute dimension for @image.
2629
2630         * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): generate PNG
2631         out image for illustration too.
2632         ($(outdir)/%.png): add more png <-> eps rules. 
2633
2634 2006-05-17  Graham Percival  <gpermus@gmail.com>
2635
2636         * Documentation/user/ various: remove trailing whitespace, cosmetic
2637         change to reduce changes produced by diff.
2638
2639 2006-05-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
2640
2641         * lily/main.cc (do_chroot_jail): correctness tweak.
2642
2643         * python/lilylib.py (system): import subprocess in system () only.
2644
2645         * scripts/*.py: use TARGET_PYTHON iso PYTHON. Backportme.
2646
2647         * make/substitute.make (ATVARIABLES): add TARGET_PYTHON as subst
2648         variable. Backportme.
2649
2650 2006-05-17  Erik Sandberg  <mandolaerik@gmail.com>
2651         
2652         * lily/parser.yy: Change all syntax rules of type Music to SCM type
2653
2654 2006-05-17  Werner Lemberg  <wl@gnu.org>
2655
2656         * lily/lexer.ll (init_signature_has_table): Add
2657         `scm-scm-music-music'.
2658
2659         * lily/parser.yy (MUSIC_FUNCTION_SCM_SCM_MUSIC_MUSIC): New token.
2660         (Generic_prefix_music_scm): Add rule for it.
2661
2662         * lily/quote-iterator.cc (Quote_iterator::process): Handle
2663         `quoted-transposition' property.
2664
2665         * ly/music-functions-init.ly (transposedCueDuring): New function.
2666
2667         * scm/define-music-properties.scm (all-music-properties): Updated.
2668
2669         * Documenation/topdocs/NEWS.itely: Document it.
2670
2671 2006-05-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
2672
2673         * python/lilylib.py (system): move import subprocess to system()
2674         definition. 
2675
2676         * python/convertrules.py (conv): fix convert-ly rules for 2.9.4
2677
2678         * VERSION (PATCH_LEVEL): release 2.9.5
2679         
2680         * Documentation/topdocs/INSTALL.texi (Top): update versions and
2681         build instructions. 
2682
2683         * ly/engraver-init.ly: switch on hairpinToBarline by default.
2684
2685 2006-05-16  Graham Percival  <gpermus@gmail.com>
2686
2687         * Documentation/user/basic-notation.itely: editing from Dave, thanks!
2688
2689         * Documentation/user/ various: minor fixes.
2690
2691 2006-05-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
2692
2693         * Documentation/topdocs/NEWS.tely (Top): add hairpinToBarline feature.
2694
2695 2006-05-16  Mats Bengtsson  <mabe@s3.kth.se>
2696
2697         * Documentation/user/advanced-notation.itely (Instrument names):
2698         Modified obsolete instruction on how to move instrument names away
2699         from the staves. Hmm, at second thought the bug probably has been
2700         solved, so the full bug description should probably be removed.
2701
2702 2006-05-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
2703
2704         * lily/dynamic-engraver.cc (typeset_all): hang ending on
2705         currentCommandColumn. 
2706
2707         * lily/hairpin.cc (print): also add padding for non-neighbor
2708         hairpin bounds.
2709
2710         * scm/define-context-properties.scm
2711         (all-user-translation-properties): add hairpinToBarline
2712
2713         * input/regression/hairpin-to-barline.ly: new file.
2714
2715         * lily/context.cc (internal_send_stream_event): thinko fix.
2716
2717         * lily/tie.cc (set_default_control_points): robustness fix.
2718
2719         * python/musicxml.py (Part.interpret): don't complain about
2720         incomplete measures.
2721
2722         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): only add
2723         new music if last_event_chord() returned None.
2724
2725         * python/musicxml.py (Part.interpret): skip back over chord notes.
2726
2727 2006-05-16  Erik Sandberg  <mandolaerik@gmail.com>
2728         
2729         * lily/percent-repeat-engraver.cc, lily/parser.yy,
2730         lily/define-music-types.cc, lily/percent-repeat-iterator.cc,
2731         lily/slash-repeat-engraver.cc,
2732         lily/include/percent-repeat-iterator.hh: Rework percent repeats:
2733         iterator sends PercentEvents
2734
2735         * lily/time-scaled-music-iterator.cc, lily/tuplet-engraver.cc:
2736         rework tuplets: send start/stop events to engraver
2737
2738         * lily/context.cc, lily/music.cc, lily/context-scheme.cc: Add
2739         dispatchers event-source and events-below to Context
2740         
2741 2006-05-15  Graham Percival  <gpermus@gmail.com>
2742
2743         * Documentation/user/README.txt: update info for doc writers.
2744
2745         * Documentation/user/programming-interface.itely: integrate
2746         Nicolas' fixes for chapter rewrite.
2747
2748         * Documentation/user/ various: minor fixes.
2749
2750 2006-05-15  Han-Wen Nienhuys  <hanwen@lilypond.org>
2751
2752         * lily/clef-engraver.cc: cleanup.
2753
2754         * Documentation/user/GNUmakefile: dist context-example.eps too.
2755
2756         * lily/key-engraver.cc (create_key): use
2757         explicitKeySignatureVisibility for cancellation too. 
2758
2759         * lily/font-config.cc (init_fontconfig): don't close file if
2760         f==NULL. 
2761
2762 2006-05-15  Erlend Aasland  <erlenda@gmail.com>
2763
2764         * Documentation/topdocs/NEWS.tely: niente and rotation news
2765
2766 2006-05-14  Erlend Aasland  <erlenda@gmail.com>
2767
2768         * lily/include/stencil.hh
2769         * lily/stencil.cc (rotate): new function. Makes it possible
2770         to rotate a stencil around a given offset.
2771
2772         * lily/grob.cc (get_print_stencil): add rotation support
2773
2774         * lily/stencil-interpret.cc (interpret_stencil_expression):
2775         add rotation support
2776
2777         * lily/stencil-scheme.cc (ly:stencil-rotate): new function
2778
2779         * scm/define-grob-properties.scm: add 'rotation property
2780
2781         * scm/define-markup-commands.scm: add rotate markup command
2782         
2783         * scm/output-ps.scm: add rotation support in PostScript backend
2784
2785         * scm/output-svg.scm: add rotation support in SVG backend
2786
2787 2006-05-13  Graham Percival  <gpermus@gmail.com>
2788
2789         * Documentation/user/music-glossary.itely: French correction.
2790
2791         * Documentation/user/programming-interface.itely: major
2792         new docs, some reorg, some info from Nicolas.
2793
2794         * Documentation/user/ various: small fixes.
2795
2796 2006-05-12  Mats Bengtsson  <mabe@s3.kth.se>
2797
2798         * Documentation/user/programming-interface.itely (Markup
2799         programmer interface): Remove duplicate text.
2800
2801 2006-05-12  Graham Percival  <gpermus@gmail.com>
2802
2803         * Documentation/user/context-example.eps: new file.
2804
2805         * Documentation/user/changing-defaults.itely: set up file to
2806         use eps image.
2807
2808         * Documentation/user/programming-interface.itely: changes
2809         from mailist.
2810
2811 2006-05-12  Han-Wen Nienhuys  <hanwen@lilypond.org>
2812
2813         * configure.in (LINK_GXX_STATICALLY): python 2.4 req.
2814
2815 2006-05-11  Graham Percival  <gpermus@gmail.com>
2816
2817         * Documentation/user/programming-interface.itely: first round of
2818         editing and merging emails from Nicolas.
2819
2820         * Documentation/user/scheme-tutorial: minor edit.
2821
2822 2006-05-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
2823
2824         * python/musicxml.py (Xml_node.__init__): _attribute_dict stores
2825         XML attributes.
2826         (Xml_node.message): use it.
2827
2828         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): 
2829         oops. Add duration argument.
2830
2831 2006-05-10  Joe Neeman  <joeneeman@gmail.com>
2832
2833         * lily/paper-column-engraver.cc (make_columns):
2834         * scm/define-grobs.scm: Revert my previous change and set the default
2835         in define-grobs.scm instead.
2836
2837 2006-05-09  Graham Percival  <gpermus@gmail.com>
2838         
2839         * Documentation/user/changing-defaults.itely: general editing,
2840         info about \set and \override.
2841
2842         * Documentation/user/tweaking.itely, advanced-notation.itely:
2843         fixes from Dave Luttinen, thanks!
2844
2845 2006-05-09  Joe Neeman  <joeneeman@gmail.com>
2846
2847         * lily/paper-column-engraver.cc (make_columns): By default, a column
2848         needs to be breakable.
2849
2850 2006-05-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
2851
2852         * scripts/musicxml2ly.py (musicxml_clef_to_lily): use new
2853         Attributes methods
2854         (musicxml_time_to_lily): idem
2855         (musicxml_key_to_lily): idem
2856         (instrument_drumtype_dict): dict for supported drumtypes.
2857         (LilyPondVoiceBuilder.__init__): new class: sanely keep track of
2858         moments and pending mm rests
2859         (musicxml_voice_to_lily_voice): rewrite to use LilyPondVoiceBuilder
2860         (musicxml_voice_to_lily_voice): strip KeyChangeEvents for drums.
2861         (musicxml_voice_to_lily_voice): add mode change.
2862         (option_parser): lxml.etree (http://codespeak.net/lxml/) for more
2863         speed and less memory usage (factor 5 to 10).
2864         (convert): write -defs.ly  and driver file separately so people
2865         can script their own part extraction.
2866
2867         * python/musicxml.py (minidom_demarshal_node): new function:
2868         separate minidom handling.
2869         (lxml_demarshal_node): new function: support lxml.etree too.
2870         (Xml_node.message): new function: verbose error message, with XML
2871         path to offending node.
2872         (Attributes.get_measure_length): sane interface to MusicXML attributes.
2873         (Part_list.generate_id_instrument_dict): new method: collect
2874         instrument names, to be able to set drum_type.
2875         (Part.interpret): handle underfull measures
2876         (Part.interpret): assign instrument names.
2877
2878         * python/musicexp.py (Output_printer.close): new method
2879         (MusicWrapper.print_ly): new class: support other modes,
2880         eg. \drummode
2881         (BarCheck.print_ly): new class. Support bar checks, with comments
2882         and fancy barchecks. 
2883         (NoteEvent.__init__): also set drum_type for drum notes.
2884         (MultiMeasureRest.lisp_expression): dump mm rests.
2885
2886         * lily/paper-column-engraver.cc (stop_translation_timestep): set
2887         line-break-permission if forbidBreak is not set.
2888
2889 2006-05-09  Joe Neeman  <joeneeman@gmail.com>
2890
2891         * scm/define-context-properties.scm:
2892         * scm/define-grob-properties.scm:
2893         * scm/define-grobs.scm:
2894         * scm/define-music-display-methods.scm:
2895         * scm/define-music-properties.scm:
2896         * scm/define-music-types.scm:
2897         * scm/music-functions.scm:
2898         * ly/declarations-init.ly:
2899         * lily/include/constrained-breaking.hh:
2900         * lily/system.cc:
2901         * lily/spaceable-grob.cc:
2902         * lily/simple-spacer.cc:
2903         * lily/paper-score.cc:
2904         * lily/paper-column.cc:
2905         * lily/paper-column-engraver.cc:
2906         * lily/item.cc:
2907         * lily/gourlay-breaking.cc:
2908         * lily/constrained-breaking.cc:
2909         * python/convertrules.py:
2910         Change "penalty", "page-penalty" and "breakable" to "line-break-penalty",
2911         "page-break-penalty" and "line-break-permission".
2912         Add "page-break-permission", "page-turn-permission" and "page-turn-penalty".
2913         Replace BreakEvent with LineBreakEvent, PageBreakEvent and PageTurnEvent.
2914
2915         * lily/bar-engraver.cc:
2916         * lily/beam-engraver.cc:
2917         * lily/forbid-break-engraver.cc:
2918         * lily/ligature-engraver.cc:
2919         * lily/paper-column-engraver.cc:
2920         * lily/percent-repeat-engraver.cc:
2921         * lily/score-engraver.cc:
2922         * lily/score-engraver.hh:
2923         * lily/paper-column-engraver.hh:
2924         Inter-engraver communication regarding line breaks is done through context
2925         properties (Score.forbidBreak) instead of function calls.
2926
2927 2006-05-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
2928
2929         * VERSION (PACKAGE_NAME): release 2.9.4
2930
2931 2006-05-08  Graham Percival  <gpermus@gmail.com>
2932
2933         * Documentation/user/working.itely: proofreading from Dave
2934         Luttinen, thanks.
2935
2936         * Doucmentation/user/README.txt: updated with manual style info.
2937
2938         * Documentation/user/ various: trim linewidth to 78 chars.
2939
2940 2006-05-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
2941
2942         * scm/define-grob-properties.scm (all-internal-grob-properties):
2943         remove chord-tremolo property.
2944
2945         * lily/beam.cc (get_beam_segments): don't use stem position as
2946         base for broken ends.
2947
2948 2006-05-06  Graham Percival  <gpermus@gmail.com>
2949
2950         * Documentation/user/putting.itely: proofreading from Dave
2951         Luttinen, thanks!
2952
2953         * Documentation/user/ various: more reorg and clarifications.
2954
2955 2006-05-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
2956
2957         * scm/lily.scm (TEX_STRING_HASHLIMIT): move from framework-texstr.scm.
2958
2959         * ly/music-functions-init.ly: new function featherDurations
2960
2961         * lily/beam.cc: read grow-direction for feathered beaming.
2962
2963         * Documentation/topdocs/NEWS.tely (Top): typo.
2964
2965 2006-05-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
2966
2967         * lily/include/beam.hh (struct Beam_stem_segment): add gapped_ for
2968         tremolo beams.
2969
2970 2006-05-05  Erik Sandberg  <mandolaerik@gmail.com>
2971         * lily/context.cc, lily/global-context.cc: Added 'unique' member,
2972         used by music streams.
2973
2974         * lily/dispatcher.cc, lily/dispatcher-scheme.cc,
2975         lily/stream-event.cc, lily/stream-event-scheme.cc,
2976         lily/listener.cc, lily/scheme-listener.cc,
2977         lily/scheme-listener-scheme.cc, lily/include/dispatcher.hh,
2978         lily/include/stream-event.hh, lily/include/listener.hh,
2979         lily/include/scheme-listener.hh, scm/define-event-classes.scm:
2980         Created data structures for music streams.
2981         
2982 2006-05-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
2983
2984         * lily/beam.cc (get_beam_segments): new function. Reorganise the
2985         construction of a beam. 
2986         (print): rewrite. 
2987
2988         * flower/include/std-vector.hh (default_compare): use only one comparison.
2989
2990         * scm/define-markup-commands.scm (note-by-number): remove debug display.
2991         (note-by-number): further attachment fixes.
2992
2993         * scm/lily-library.scm (ordered-cons): new function.
2994         (interval-index): new function
2995
2996         * lily/note-head-scheme.cc (LY_DEFINE): new file.
2997
2998         * lily/note-head.cc (get_stem_attachment): new function.
2999
3000         * scm/define-markup-commands.scm (note-by-number): read 'style
3001         property. 
3002
3003         * input/regression/markup-note.ly: show note-head style option.
3004
3005         * mf/feta-bolletjes.mf (overdone_heads): fix attachment points for
3006         triangle head.
3007
3008 2006-05-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
3009
3010         * mf/GNUmakefile (NCSB_OTFS): remove old ncsb detection further.
3011
3012         * configure.in (LINK_GXX_STATICALLY): fix for ncsb detection.
3013
3014         * lily/include/constrained-breaking.hh: GCC 4 fix.
3015
3016 2006-05-04  Joe Neeman  <joeneeman@gmail.com>
3017
3018         * lily/simple-spacer.cc: Remove class Simple_spacer_wrapper.
3019         Replace it with functions get_line_forces and get_line_configuration.
3020         (class Simple_spacer): Make data private.
3021         Rewrite compression algorithm to be faster and simpler.
3022
3023         * lily/simple-spacer-scheme.cc (ly_solve_rod_and_spring_problem):
3024         * lily/gourlay-breaking.cc (solve):
3025         * lily/constrained_breaking.cc (space_line):
3026         Change it to the new simple-spacer code.
3027
3028         * lily/paper-score.cc (get_paper_systems):
3029         (Paper_score):
3030         (process):
3031         Delay breaking the systems until they are requested.
3032         (find_break_indices):
3033         Use vsize for indices.
3034         (calc_breaking):
3035         Move the "Calculating line breaks" message here.
3036
3037         * lily/system.cc (pre_processing):
3038         Move the "Calculating line breaks" message away from here.
3039         (break_into_pieces):
3040         Allow multiple calls to this function in sequence (with touching-but-
3041         not-overlapping breakpoints).
3042
3043         * lily/constrained-breaking.cc:
3044         Replace most of the get_XXXX functions with get_line_details.
3045         Only calculate the force for each line. Calculate configurations only
3046         for the lines we will actually use.
3047         Replace cols_ with lines_.
3048
3049 2006-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3050
3051         * mf/GNUmakefile (depth): remove FC_FIND.
3052
3053         * config.make.in (NCSB_SOURCE_FILES): subst NCSB_SOURCE_FILES
3054
3055         * configure.in (LINK_GXX_STATICALLY): call fc-match from within configure.
3056
3057         * scm/framework-ps.scm (write-preamble): new function.
3058         (write-preamble): load mac fonts via fondu, even if gs-font-load
3059         is set.
3060
3061 2006-05-03  Werner Lemberg  <wl@gnu.org>
3062
3063         * mf/GNUmakefile (FC_FIND): Fix typo.
3064
3065 2006-05-03  Erlend Aasland  <erlenda@gmail.com>
3066
3067         * stepmake/stepmake/generic-targets.make (cvs-clean): also remove out-www dirs.
3068
3069 2006-05-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
3070
3071         * stepmake/aclocal.m4: run python-config for crosscompiling
3072         flags. 
3073
3074         * scripts/lilypond-book.py (Lilypond_file_snippet.my_system): add
3075         -f png for HTML, TEXINFO formats. 
3076
3077         * input/tutorial/lbook-html-test.html: new file.
3078
3079         * lily/include/tie-formatting-problem.hh (class
3080         Tie_formatting_problem): index Chord_outline_map by Tuple2 for
3081         [column, direction]. This fixes laissez vibrer ties.
3082  
3083         * flower/include/tuple.hh (struct Tuple2): new file.
3084
3085         * mf/GNUmakefile (FC_FIND): new function. Find ncsb using
3086         $(FCMATCH), only if $(NCSB_DIR) not set. 
3087
3088         * configure.in (LINK_GXX_STATICALLY): only warn if $NCSB_DIR set.
3089
3090         * config.make.in (DOCUMENTATION): set FCMATCH.  
3091
3092         * autogen.sh (srcdir): don't set --with-ncsb-dir. 
3093
3094 2006-05-03  Graham Percival  <gpermus@gmail.com>
3095
3096         * Documentation/user/ various: final round of reorg.
3097
3098         * Documentation/user/instrument-notation.itely: some more
3099         fixes from Eduardo, thanks!
3100
3101 2006-05-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
3102
3103         * VERSION (PACKAGE_NAME): release 2.9.3
3104
3105         * flower/file-path.cc (is_dir): canonicalize file name before stat'ing.
3106
3107         * lily/relocate.cc (framework_relocation): remove old relocation stuff.
3108
3109 2006-05-01  Mats Bengtsson  <mabe@s3.kth.se>
3110
3111         * scm/define-grob-properties.scm (all-user-grob-properties):
3112         Correct typo, thanks to Eduardo.
3113
3114 2006-05-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
3115
3116         * scripts/GNUmakefile (SEXECUTABLES): remove lilypond-ps2png.scm
3117
3118         * buildscripts/lilypond-words.py (F): indent fix.
3119
3120         * input/regression/tie-arpeggio-collision.ly: new file.
3121
3122         * lily/tie-formatting-problem.cc (set_column_chord_outline): new
3123         function: store outlines per column rank.
3124
3125         * lily/include/tie-configuration.hh (class Tie_configuration): add
3126         column_ranks_ to specification and configuration, to distinguish
3127         between ties for different heads in arpegiated chords.
3128
3129         * lily/relocate.cc (framework_relocation): use INSTALLER_PREFIX.
3130
3131         * *.py: more 4 space indents.
3132
3133         * autogen.sh (conf_flags): set sensible default for with-ncsb-dir
3134
3135 2006-05-01  Joe Neeman  <joeneeman@gmail.com>
3136
3137         * scm/lily-library.scm: Fix guile 1.6 compatibility in inf? and nan?
3138
3139 2006-05-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
3140
3141         * buildscripts/pfx2ttf.fontforge (err): create OTF files.
3142
3143         * scripts/abc2ly.py (dump_score): indent of 4 for python code. 
3144
3145         * configure.in (LINK_GXX_STATICALLY): remove locate() call.
3146
3147 2006-04-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3148
3149         * python/convertrules.py (conv): indent 4 for python files.
3150
3151 2006-04-29  Mats Bengtsson  <mabe@s3.kth.se>
3152
3153         * Documentation/user/changing-defaults.itely (Creating contexts):
3154         Clarify \new semantics.
3155
3156 2006-04-28  Graham Percival  <gpermus@gmail.com>
3157
3158         * Documentation/user/ various: major new sections in the
3159         Learning manual, slight reorg elsewhere.
3160
3161 2006-04-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
3162
3163         * mf/GNUmakefile (MFTRACE_FLAGS): add $(outdir) to $(ENCODING_FILE) 
3164
3165         * scm/framework-ps.scm (output-framework): remove PageMedia
3166
3167 2006-04-27  Graham Percival  <gpermus@gmail.com>
3168
3169         * Documentation/user/ tweaks.itely, working.itely: new
3170         files, being more advanced "learning manual" chapters.
3171
3172         * Documentation/user/ tutorial, putting, lilypond: reorg.
3173
3174 2006-04-26  Graham Percival  <gpermus@gmail.com>
3175
3176         * input/regression/lyric-combine-polyphonic.ly: fixed test
3177         (no more "can't find context `one'" error).
3178
3179 2006-04-25  Joe Neeman <joeneeman@gmail.com>
3180
3181         * lily/stem-tremolo.cc (print): fix whole note tremolo placement
3182
3183         * input/regression/stem-tremolo.ly: add 2 more whole note examples
3184         
3185 2006-04-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3186
3187         * lily/relocate.cc (read_relocation_dir): new function.
3188
3189 2006-04-26  Graham Percival  <gpermus@gmail.com>
3190
3191         * Documentation/user/instrument-notation.itely: a few more fixes
3192         from Eduardo, thanks!
3193
3194         * Documentation/user/README.txt: new file; contains info on
3195         style that used to be in lilypond.tely.
3196
3197         * Documentation/user/ various: first round of doc reorg.
3198
3199         * Documentation/user/baer-flat-bw.png: remove alpha bit from
3200         graphic; this probably causes problems on some pdf
3201         viewers, notably Adobe Acrobat.
3202
3203 2006-04-24  Graham Percival  <gpermus@gmail.com>
3204
3205         * Documentation/user/instrument-notation.itely: many alterations
3206         to Vocal music, from Eduardo Viera.
3207
3208 2006-04-23  Graham Percival  <gpermus@gmail.com>
3209
3210         * Documentation/user/instrument-notation.itely: fix \new
3211         instead of \context problem.
3212
3213 2006-04-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3214
3215         * lily/relocate.cc (expand_environment_variables): new function.
3216         (read_line): id.
3217         (read_relocation_file): id.
3218
3219         * scm/stencil.scm (eps-file->stencil): fix EPS PS embedding code 
3220
3221 2006-04-21  Erlend Aasland  <erlenda@gmail.com>
3222
3223         * ly/engraver-init.ly: remove old comments from TabVoice
3224
3225 2006-04-20  Graham Percival  <gpermus@gmail.com>
3226
3227         * Documentation/user/instrument-notation.itely: added Erlend's
3228         latest doc patch, thanks!
3229
3230 2006-04-19  Erlend Aasland <erlenda@gmail.com>
3231
3232         * lily/include/slur.hh:
3233         * lily/slur.cc:
3234         * lily/phrasing-slur-engraver.cc:
3235         * lily/slur-engraver.cc: Fix 'cut & paste' code by merging
3236         acknowledge_extra_object () from Phrasing_slur_engraver:: and
3237         Slur_engraver:: and putting it in
3238         Slur::auxiliary_acknowledge_extra_object ().
3239
3240         * ps/music-drawing-routines.ps (draw_dashed_slur): fix another bug
3241
3242         * lily/note-collision.cc: fix a comment
3243
3244 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
3245
3246         * stepmake/bin/add-html-footer.py: fix footer position in
3247         generated html files: before </body> and </html> tags.
3248
3249 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
3250
3251         * scripts/GNUmakefile: revert last "fix", which rather broke make.
3252         Earlier successive `make' commands finally compiled ok.
3253
3254         * Documentation/topdocs/INSTALL.texi: require mftrace 1.1.19.
3255
3256 2006-04-18  Erlend Aasland <erlenda@gmail.com>
3257
3258         * lily/include/stem-tremolo.hh:
3259         * lily/stem-tremolo.cc: move rotated_box () to Lookup:: and update
3260         callers.
3261
3262         * lily/lookup.cc:
3263         * lily/include/lookup.hh: add rotated_box ()
3264
3265 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
3266
3267         * scripts/GNUmakefile: bugfix: run help2man only after scripts have 
3268         been generated. Fixes "can't get `--help'" bug after make clean.
3269
3270         * THANKS: alphabetize contributors.
3271
3272 2006-04-17  Graham Percival  <gpermus@gmail.com>
3273
3274         * Documentation/user/instrument-notation.itely: added Erlend's
3275         tabs and banjo doc patch.  Thanks!
3276
3277 2006-04-17  Erlend Aasland  <erlenda@gmail.com>
3278
3279         * scm/define-grobs.scm: fix stem-attachment for tablature note heads.
3280
3281         * ps/music-drawing-routines.ps (draw_dashed_line): fix dash pattern bug.
3282
3283         * scm/output-lib.scm: add some more predefined string tunings.
3284
3285         * Documentation/user/instrument-notation.itely: and doc them.
3286
3287 2006-04-16  Jürgen Reuter  <reuter@ipd.uka.de>
3288
3289         * ly/engraver.ly: Remove obsolete comments.
3290
3291         * ly/gregorian-init.ly: Define default layout block.
3292
3293         * input/puer-fragment.ly: Updated and extended.
3294
3295 2006-04-15  Jan Nieuwenhuizen  <janneke@gnu.org>
3296
3297         * lily/lily-parser-scheme.cc: Use them to fix --output=DIR/BASE
3298         pdf conversion behaviour.
3299
3300         * flower/file-name.cc (dir_name)
3301         (get_working_directory): Move from relocate.cc.
3302
3303         * lily/relocate.cc (setup_paths): Remove rogue stat calls.
3304         
3305         * lily/relocate.cc: Encapsulate sys/stat.h in
3306         HAVE_STAT_H.
3307
3308 2006-04-14  Graham Percival  <gpermus@gmail.com>
3309
3310         * Documentation/user/ various: small updates from Cameron
3311         and Juergen, thanks!
3312
3313         * Documentation/user/ various: small updates of my own.
3314
3315         * THANKS: 2.7 -> 2.8.
3316
3317 2006-04-11  Graham Percival  <gpermus@gmail.com>
3318
3319         * scm/define-context-properties.scm: typo.
3320
3321         * Documentation/user/ : many more small updates.
3322
3323 2006-04-13  Jürgen Reuter  <reuter@ipd.uka.de>
3324
3325         * scm/define-music-types.scm: disposed "docme".
3326
3327 2006-04-11  Erlend Aasland  <erlenda@gmail.com>
3328
3329         * lily/hairpin.cc: make niente circles a bit smaller.
3330
3331 2006-04-10  Erlend Aasland  <erlenda@gmail.com>
3332
3333         * mf/GNUmakefile: remove redundant mftrace check. Also remove
3334         get-pfa and get-*-fonts targets.
3335
3336 2006-04-10  Graham Percival  <gpermus@gmail.com>
3337
3338         * THANKS, Documentation/user/ basic-notation, advanced-notation,
3339         music-glossary, programming-interface: more minor fixes
3340         from mailist.
3341
3342         * scm/define-grob-properties.scm: clarified direction, thanks Mats!
3343
3344         * scm/define-context-properties.scm: another old \property update.
3345         This time tested for compiling!
3346
3347 2006-04-10  Erlend Aasland  <erlenda@gmail.com>
3348
3349         * mf/GNUmakefile: fix for mftrace version >= 1.2.0
3350
3351 2006-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
3352
3353         * scm/define-context-properties.scm (all-user-translation-properties): 
3354         * Documentation/user/global.itely (Page formatting): Compile fix.
3355
3356 2006-04-09  Mats Bengtsson  <mabe@s3.kth.se>
3357
3358         * Documentation/user/advanced-notation.itely (Polymetric
3359         notation): Update the example to use the "+" symbol and add link
3360         to input/test/compound-time.ly.
3361
3362 2006-04-08  Graham Percival  <gpermus@gmail.com>
3363
3364         * scm/define-grob-properties.scm: clarify docs for #'direction.
3365
3366         * scm/define-context-properties.scm: update old \property override.
3367
3368         * Documentation/user/ advanced-notation, global, lilypond-book:
3369         more minor doc updates.
3370
3371 2006-04-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
3372
3373         * lily/parser.yy (Generic_prefix_music_scm): append lists, not objects.
3374
3375         * scm/backend-library.scm (search-gs): oops.
3376
3377 2006-04-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
3378
3379         * scripts/lilypond-book.py (output): use base, not filename for href.
3380
3381         * scm/backend-library.scm: only look for gs.
3382
3383         * scripts/lilypond-book.py (output): fix printfilename.
3384
3385         * lily/parser.yy (music_function_musicless_prefix): fold together
3386         definitions of signature (SCM*) (Music|post_event|chord_body_element)
3387
3388         * lily/slur.cc (print): only set font-size if not set yet.
3389
3390         * lily/slur-configuration.cc (add_score): improved layout of debug
3391         scoring output.
3392
3393 2006-04-05  David Feuer  <David.Feuer@gmail.com>
3394
3395         * music-drawing-routines.ps (draw_round_box): removed testing artifact.
3396         (draw_circle): Hopefully fixed regression.
3397         Improved documentation for several procedures.
3398         
3399 2006-03-04  Werner Lemberg  <wl@gnu.org>
3400
3401         * ly/engraver-init.ly (\Score): Add beam-event to quotedEventTypes.
3402
3403 2006-04-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
3404
3405         * scripts/musicxml2ly.py (bindir): add dynamic
3406         relocation. 
3407
3408 2006-04-04  Graham Percival  <gpermus@gmail.com>
3409
3410         * Documentation/user/ basic-notation, advanced-notation, putting,
3411         instrument-notation, invoking, lilypond, THANKS: another ream of small
3412         fixes from the Doc Helpers.
3413
3414 2006-04-03  David Feuer  <David.Feuer@gmail.com>
3415
3416         * music-drawing-routines.ps: remove superfluous gsave/grestore pairs.
3417
3418         * lilyponddefs.ps (set-ps-scale-to-lily-scale): Fixed code duplication.
3419
3420         * Cleaned up interfaces between PostScript and Scheme, and moved
3421         computations from PostScript to Scheme:
3422
3423         * music-drawing-routines.ps
3424         (*SF, stroke_and_fill): new procedures.  Replaced stroke and fill
3425         with stroke_and_fill throughout.
3426         (euclidean_length, print_letter, draw_box): Deleted unused
3427         procedures.  If someone needs draw_box, implement it using
3428         draw_round_box; don't duplicate code.
3429         (print_glyphs, draw_round_box, draw_polygon, draw_repeat_slash):
3430         Refactored/cleaned up interfaces.
3431         (mark_URI): Moved.
3432
3433         * output-ps.scm: reordered arguments to PostScript functions to
3434         match new interfaces
3435         (glyph-string): Rewrote glyph-string.
3436         (grob-cause): Replaced string-append with format.
3437         (repeat-slash): Rewrote to do computation here.
3438         (round-filled-box): Rewrote to do computation here.
3439
3440 2006-04-04  Erlend Aasland  <erlenda@gmail.com>
3441
3442         * stepmake/stepmake/generic-targets.make: add cvs-clean target
3443
3444         * stepmake/stepmake/toplevel- targets.make: print help info about
3445         cvs-clean
3446
3447 2006-04-03  Erlend Aasland  <erlenda@gmail.com>
3448
3449         * input/regression/hairpin-circled.ly: new file
3450
3451 2006-04-03  Erlend Aasland  <erlenda@gmail.com>
3452
3453         * lily/hairpin.cc (print): add support for circled tip
3454
3455         * scm/define-grob-properties.scm: add circled-tip parameter
3456
3457         * scm/define-grobs.scm: init circled-tip to false
3458         
3459 2006-04-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
3460
3461         * scm/music-functions.scm (quote-substitute): set
3462         iterators-ctor. 
3463
3464 2006-03-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
3465
3466         * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): set
3467         BSTINPUTS. 
3468
3469         * Documentation/topdocs/AUTHORS.texi (Top): add David Feuer.
3470
3471         * scm/output-ps.scm (glyph-string): revert cid selectfont.
3472
3473 2006-03-31  David Feuer  <david.feuer@gmail.com>
3474         
3475         * scm/framework-ps.scm:
3476         
3477         * scm/output-ps.scm: glyph-string now produces smaller, more
3478         readable, and probably faster PostScript.  Several findfont
3479         scalefont setfont instances changed to selectfont
3480         Hacked-up string-appends changed to formats.
3481
3482         * ps/music-drawing-routines.ps: add print_letter, print_glyphs.
3483         
3484 2006-03-30  Graham Percival  <gpermus@gmail.com>
3485
3486         * scm/lily-library.scm: make "no version" warning message more polite.
3487
3488         * lily/music.cc: add double quotes to failed octave check.
3489
3490         * Documentation/user/ advanced-notation, changing-defaults,
3491         instrument-notation, invoking, music-glossary: whole bunch of minor
3492         fixes from mailist.
3493
3494 2006-03-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
3495
3496         * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): use
3497         $(buildscriptdir) iso. depth.
3498
3499         * VERSION (PACKAGE_NAME): release 2.9.1
3500
3501 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
3502
3503         * lily/pango-font.cc (pango_item_string_stencil): more robustness.
3504
3505         * VERSION (PATCH_LEVEL): bump version number.
3506
3507         * flower/include/guile-compatibility.hh (scm_from_uint32): add
3508         scm_from_uint32 ()
3509
3510         * lily/pango-font.cc (pango_item_string_stencil): use
3511         scm_from_uint32 ()
3512
3513         * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
3514         $(outdir)/emmentaler-%.svg): remove canary.
3515
3516         * lily/pango-font.cc (pango_item_string_stencil): only use uXXX
3517         glyphnames if we have a ttf font.
3518
3519 2006-03-30  Mats Bengtsson  <mabe@s3.kth.se>
3520
3521         * Documentation/user/advanced-notation.itely (Font selection):
3522         Corrected reference to the font-family-override.ly example.
3523
3524 2006-03-30  Joe Neeman  <joeneeman@gmail.com>
3525         
3526         * lily/chord-tremolo-engraver.cc (acknowledge_stem): set the
3527         stem-tremolo object in the stem (or else the stem might not be
3528         long enough).
3529
3530 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
3531
3532         * lily/ttf.cc (print_trailer): only print existing glyphs.
3533
3534 2006-03-30  Joe Neeman  <joeneeman@gmail.com>
3535
3536         * lily/stem-tremolo.cc (print): for whole notes (and breves, etc.)
3537         position the tremolo based on the position of the notehead.
3538
3539         * input/regression/stem-tremolo.ly: add example of unbeamed eighth
3540         notes and update the texidoc line with the new positioning rules.
3541         
3542 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
3543
3544         * lily/ttf.cc (print_trailer): don't always use uXXX glyphname.
3545
3546         * scripts/lilypond-book.py (Module): set default for linewidth if
3547         preamble not found.
3548
3549 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
3550
3551         * VERSION (PACKAGE_NAME): release 2.9.0.
3552
3553         * input/regression/stem-tremolo-position.ly: new file.
3554
3555         * lily/stem-tremolo.cc: remove Stem_tremolo::dim_callback
3556
3557 2006-03-28  Joe Neeman  <joeneeman@gmail.com>
3558
3559         * lily/stem-tremolo.cc (print): position
3560         the tremolo depending only on the end of the stem
3561         and not on the notehead
3562         (raw_stencil): center, on the middle staff line, the
3563         flag that is closest to the end of the stem (previously
3564         the bottom flag)
3565         (calc_width): add this callback to shorten a tremolo when
3566         it is beamed or it is stemup with a flag
3567         (style): add this callback to make a tremolo rectangular when
3568         it is beamed or it is stemup with a flag
3569         (rotated_box): this is like Lookup::beam but makes a rotated
3570         rectangle instead of a parallelogram
3571
3572         * lily/stem.cc (calc_stem_info): make sure the stem
3573         is long enough to fit the tremolo
3574         (calc-length): reduce the length of tremolo stems since the
3575         tremolo code is now capable of better positioning
3576
3577         * scm/define-grobs.scm: make calc_width the default beam-width
3578         callback for stem-tremolo and add the style callback
3579                 
3580 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
3581
3582         * lily/tuplet-bracket.cc (calc_control_points): handle suicide
3583         case. 
3584
3585 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
3586
3587         * lily/ttf.cc (make_index_to_charcode_map): restore old
3588         cmap. 
3589
3590 2006-03-28  Werner Lemberg  <wl@gnu.org>
3591
3592         * lily/pango-font.cc (get_unicode_name): Fix `uXXXXX' glyph names.
3593
3594 2006-03-28  Graham Percival  <gpermus@gmail.com>
3595
3596         * THANKS: update for 2.9, add section for Documentation helpers.
3597
3598         * Documentation/topdocs/NEWS.tely: compile fix.
3599
3600         * Documentation/user/ basic-notation, global, advanced-notation,
3601         examples.itely: minor fixes from mailist.
3602
3603 2006-03-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
3604
3605         * mf/feta-bolletjes.mf: match width of solfa notes with normal
3606         note heads. 
3607
3608         * lily/ttf.cc (print_trailer): use it.
3609
3610         * lily/pango-font.cc (get_unicode_name): new function.
3611
3612         * lily/ttf.cc (make_index_to_charcode_map): move function from
3613         open-type-font.cc
3614         (print_trailer): substitute uniXXXX name if applicable. 
3615
3616         * lily/pango-font.cc (get_index_to_charcode_map): new function.
3617         (pango_item_string_stencil): use it to generate uniXXXX names.
3618
3619         * mf/feta-bolletjes.mf (overdone_heads): add small style (ugly)
3620         note heads, for uniform widths in shape note output.
3621         (overdone_heads): hmm. remove them again.
3622
3623         * scripts/lilypond-book.py (output): add links to filenames.
3624
3625         * Documentation/topdocs/INSTALL.texi (Top): update versions.
3626
3627         * lily/note-collision.cc (get_clash_groups): only consider when
3628         Note_column::dir <> CENTER. 
3629
3630         * scripts/lilypond-book.py (get_option_parser): init output_name
3631         to ''. 
3632
3633 2006-03-24  Graham Percival  <gpermus@gmail.com>
3634
3635         * Documentation/topdocs/NEWS.tely: add @end itemize
3636
3637         * Documentation/user/ global, advanced-notation: minor
3638         stuff from mailist.
3639
3640 2006-03-23  Graham Percival  <gpermus@gmail.com>
3641
3642         * Documentation/user/ lilypond.tely, music-glossary,
3643         preface: housekeeping; 2005->2006, remove "notes for 2.6"
3644
3645 2006-03-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
3646
3647         * mf/GNUmakefile: don't install .enc files.
3648
3649         * Documentation/topdocs/NEWS.tely: clear for 2.9 cycle.
3650
3651         * VERSION (PATCH_LEVEL): bump to 2.9.0
3652
3653 2006-03-22  Graham Percival  <gpermus@gmail.com>
3654
3655         * Documentation/user/advanced-notation.itely: minor fixes
3656         from mailist.
3657
3658 2006-03-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
3659
3660         * Documentation/topdocs/AUTHORS.texi (Top): add Joe Neeman.
3661
3662         * branch lilypond_2_8
3663
3664 2006-03-22  Han-Wen Nienhuys  <lilydev@localhost.localdomain>
3665
3666         * scripts/lilypond-book.py (samefile): new function, for windoze
3667         compatibility.
3668
3669 2006-03-21  Graham Percival  <gpermus@gmail.com>
3670
3671         * ly/engraver-init.ly: add info about StaffGroup.
3672
3673 2006-03-21  Han-Wen Nienhuys  <lilydev@localhost.localdomain>
3674
3675         * input/regression/stem-direction-context.ly: idem.
3676
3677         * Documentation/topdocs/NEWS.tely (Top): fix interpolation example.
3678
3679         * THANKS: add Mats.
3680
3681         * input/regression/page-layout-twopass.ly: comment out \markup so
3682         tweak-file is left.
3683
3684         * lily/instrument-name-engraver.cc (finalize): add to instrument
3685         name global System. This also fixes chopped instrument names, but
3686         doesn't crash when there are slurs/beams.
3687
3688         * lily/slur-configuration.cc (add_score): disallow negative slur
3689         scores.
3690         
3691 2006-03-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3692
3693         * scm/framework-ps.scm (dump-stencil-as-EPS): remove debugging code.
3694
3695         * lily/instrument-name-engraver.cc (process_music): kludge: add
3696         InstrumentName spanner to axis group of left bound. Fixes chopped
3697         off instrument names in EPS images.
3698
3699         * input/regression/lyric-hyphen-retain.ly: elaborate explanation.
3700
3701         * scripts/abc2ly.py (option_parser): update to 2.7.40
3702
3703 2006-03-20  Graham Percival  <gpermus@gmail.com>
3704
3705         * THANKS: move small doc contributors to SUGGESTIONS.
3706
3707         * Documentation/user/ basic-notation, advanced-notation,
3708         global: small changes from mailist.
3709
3710 2006-03-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3711
3712         * Documentation/user/advanced-notation.itely (Text marks): update
3713         for new rehearsalMarkAlignSymbol convention.
3714
3715         * VERSION (PATCH_LEVEL): bump version.
3716
3717         * input/test/instrument-name-align.ly: new file.
3718
3719         * scm/define-markup-commands.scm (hcenter-in): add hcenter-in.
3720
3721         * input/test/instrument-name-align.ly: new file. Document how to
3722         align instrument names.
3723
3724         * lily/mark-engraver.cc: remove properties.
3725
3726         * scm/define-context-properties.scm
3727         (all-user-translation-properties): remove align symbol properties
3728         for barnumber/reh. mark.
3729
3730         * lily/break-align-interface.cc (self_align_callback): new
3731         interface, new function. Look at complete alignment. This handles
3732         tunable break alignments in case break-align-symbols are missing.
3733
3734         * lily/bar-number-engraver.cc (acknowledge_break_alignment): new function
3735
3736         * lily/mark-engraver.cc (acknowledge_break_alignment): new function.
3737
3738         * python/convertrules.py (conv): mark/bar number alignment rule.
3739
3740         * lily/break-align-interface.cc (calc_positioning_done): also
3741         store offset from last visible break-alignment to its
3742         neighbor. This makes alignment on non-visible objects more reliable.
3743
3744         * po/lilypond.pot (Module): ran po-replace.
3745
3746         * input/regression/tie-single-manual.ly (Module): new file.
3747
3748         * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
3749         look at has_manual_position_.
3750         (from_ties): set has_manual_position_ if tie has staff-position set.
3751
3752         * lily/tuplet-bracket.cc (calc_positions): idem.
3753
3754         * lily/tuplet-number.cc (print): don't print tupletnumber if it
3755         doesn't span time.
3756
3757 2006-03-19  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3758
3759         * scm/define-markup-commands.scm (smallCaps): new markup command
3760         for turning a text to small caps using smaller font size and upper
3761         casing.
3762
3763 2006-03-17  Graham Percival  <gpermus@gmail.com>
3764
3765         * Documentation/user/ examples, instrument-notation,
3766         advnaced-notation: minor fixes from mailist.
3767
3768 2006-03-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3769
3770         * Documentation/user/tutorial.itely (First steps): change example
3771         to verbatim.  
3772
3773 2006-03-17  Graham Percival  <gpermus@gmail.com>
3774
3775         * Documentation/user/ examples, advanced: minor changes from mailist.
3776
3777         * THANKS: add Geoff Horton, for documentation stuff.
3778
3779 2006-03-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3780
3781         * python/lilylib.py (system): revert have_select kludge.
3782
3783         * Documentation/user/tutorial.itely (Commenting input files):
3784         update version numbers in doc. 
3785
3786         * scm/define-grob-interfaces.scm (multi-measure-interface): add
3787         bound-padding to multi-measure-interface
3788
3789 2006-03-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3790
3791         * input/test/engraver-example.ily: update version number.
3792
3793         * VERSION (PACKAGE_NAME): release 2.7.39
3794
3795         * lily/note-spacing.cc (get_spacing): heighten threshold where
3796         accidentals/arpeggios influence previous spacing fully.
3797
3798         * lily/rest.cc (y_offset_callback): only use direction if
3799         staff-position wasn't set before.
3800
3801         * lily/bar-number-engraver.cc: add support for
3802         barNumberAlignSymbol. 
3803         add ADD_ACKNOWLEDGER() call for break_aligned. Fixes bar-number-breathe
3804
3805         * lily/pointer-group-interface.cc (set_ordered): new function. 
3806         (add_unordered_grob): new function.
3807
3808         * lily/grob-array.cc (Grob_array): grob-arrays are always assumed
3809         to ordered, unless the opposite has been proved.  This fixes
3810         random reordering of large object groups across linebreaks,
3811         eg. beams.
3812
3813         * lily/main.cc (do_chroot_jail): printf format fix.
3814
3815         * lily/tie-formatting-problem.cc (generate_configuration):
3816         multiply y-shift for dot with direction.
3817  
3818         * scm/define-markup-commands.scm (note-by-number): put (magstep
3819         size) in y-attach too.
3820
3821         * Documentation/topdocs/NEWS.tely (Top): show override.
3822
3823         * scm/define-grobs.scm (all-grob-descriptions): reinstate neutral
3824         direction for stems.
3825         
3826 2006-03-15  Graham Percival  <gpermus@gmail.com>
3827
3828         * Documentation/user/ changing-defaults, global: minor
3829         fixes from mailist.
3830
3831 2006-03-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3832
3833         * lily/lexer.ll (Lily_lexer): bump required version to 2.7.38
3834
3835         * lily/spacing-spanner.cc (musical_column_spacing): crude fix for
3836         breakable items after uniformly stretched notes.
3837
3838         * lily/tie-formatting-problem.cc (set_chord_outline): initialize
3839         outline with outer edge of note heads. This prevents infinity
3840         problems with tied whole notes.
3841
3842         * scripts/lilypond-book.py (do_file): use os.popen
3843
3844         * python/convertrules.py (conv): add rule for Stem #'beamed-*
3845
3846 2006-03-14 Erik Sandberg  <mandolaerik@gmail.com>
3847
3848         * Documentation/user/invoking.itely: Add ragged-right to bug report
3849         guidelines.
3850
3851 2006-03-14  Graham Percival  <gpermus@gmail.com>
3852
3853         * Documentation/user/global.itely: small fix from mailist.
3854
3855 2006-03-14  Mats Bengtsson  <mabe@s3.kth.se>
3856
3857         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use the
3858         file descriptor returned by tempfile.mkstemp() when writing
3859         to tmpfile and closing it. Solves problem with unlink(tmpfile)
3860         on mingw.
3861
3862 2006-03-14  Jan Nieuwenhuizen  <janneke@gnu.org>
3863
3864         * po/fi.po: newline bugfix.
3865
3866 2006-03-12  Jan Nieuwenhuizen  <janneke@gnu.org>
3867
3868         * scm/paper.scm (paper-alist): Rounding fixes.
3869
3870 2006-03-13  Graham Percival  <gpermus@gmail.com>
3871
3872         * Documentation/user/ changing-defaults, instrument-notation,
3873         tutorial: small fixes from mailist, mostly from Mats.  Thanks!
3874
3875 2006-03-13 Heikki Junes  <hjunes@cc.hut.fi>
3876
3877         * po/fi.po: update.
3878
3879 2006-03-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3880
3881         * stepmake/bin/add-html-footer.py (mail_address_url): don't add
3882         mailto: to http:// 
3883
3884         * python/lilylib.py (print_environment): move ps_page_count to
3885         lilypond-book.py
3886
3887 2006-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3888
3889         * Documentation/user/music-glossary.tely (G clef): fix clef alignments.
3890
3891         * scm/framework-ps.scm (embed-document): new function. Use to
3892         embed PFA files.
3893
3894         * ly/engraver-init.ly: init rehearsalMarkAlignSymbol to staff-bar.
3895
3896 2006-03-12  Mats Bengtsson  <mabe@s3.kth.se>
3897
3898         * Documentation/user/instrument-notation.itely (Setting simple
3899         songs): Added \book{...} around the full example, so the separate
3900         markups are included in the printed example. 
3901
3902 2006-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3903
3904         * scripts/lilypond-book.py (get_latex_textwidth): explicitly close
3905         tmphandle.
3906
3907         * python/lilylib.py (system): rewrite system() using
3908         subprocess. Remove >& redirection trickery.
3909
3910 2006-03-11  Graham Percival  <gpermus@gmail.com>
3911
3912         * Documentation/user/ changing-defaults, global, scheme-tutorial,
3913         notation-appendices.itely: minor fixes from mailist.
3914
3915 2006-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3916
3917         * Documentation/user/GNUmakefile ($(outdir)/lilypond.html):
3918         unsplit man also needs images.
3919
3920         * tex/texinfo.tex (sectionheading, q.v.): relax after \char'15.
3921
3922         * VERSION (PACKAGE_NAME): 2.7.38 released.
3923
3924 2006-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3925
3926         * scripts/lilypond-book.py (get_latex_textwidth): look for latex
3927         log in output dir.
3928
3929 2006-03-08  Johannes Schindelin  <Johannes.Schindelin@gmx.de>
3930
3931         * lily/audio-column.cc, lily/score-performer.cc: MIDI output now
3932         respects the Score.skipTypesetting property.
3933         
3934 2006-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3935
3936         * scm/framework-ps.scm (ps-embed-cff): no Setup section in
3937         Prolog. No %%EOF after CFF file.
3938
3939 2006-03-08  Joe Neeman  <joeneeman@gmail.com>
3940         
3941         * lily/constrained-breaking.cc (get_max_systems): used to return a
3942         much too big value
3943         (combine_demerits): use pointers to reduce copying data
3944         (calc_subproblem): idem
3945         (get_page_penalty): add page turn penalties
3946         
3947 2006-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3948
3949         * Documentation/user/invoking.itely (Invoking lilypond): better
3950         explanation of -e usage.
3951
3952         * lily/main.cc (main_with_guile): don't append to
3953         init_scheme_code_string
3954
3955         * tex/texinfo.tex (sectionheading, q.v.): don't center @image.
3956
3957         * Documentation/user/invoking.itely: add note about MacOS X scripts.
3958
3959         * scripts/convert-ly.py (do_options): don't print help for
3960         --show-rules rule.
3961
3962         * tex/texinfo.tex: patch texinfo.tex to leave single quotes in
3963         @code and @example. Update from texinfo.tex from CVS.
3964
3965 2006-03-08  Graham Percival  <gpermus@gmail.com>
3966
3967         * Documentation/user/scheme-tutorial.itely: clarifies distances
3968         measured in staff-spaces.
3969
3970 2006-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3971
3972         * lily/slur.cc (outside_slur_callback): only calculate offsets if
3973         consider[k] is true.
3974
3975         * scm/output-ps.scm (grob-cause): put numbers to ~$ (Thanks Johannes!)
3976
3977         * lily/spacing-basic.cc (standard_breakable_column_spacing): also
3978         consider columns that have originals.  Unifies spacing for mm
3979         rests around line breaks.
3980
3981         * lily/multi-measure-rest.cc (set_spacing_rods): read bound-padding.
3982         (set_text_rods): idem.
3983         (calculate_spacing_rods): new function: share code between
3984         set_text_rods and set_spacing_rods.
3985         (set_text_rods): take extents of bounds into account.  
3986
3987 2006-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3988
3989         * Documentation/user/basic-notation.itely (Writing music in
3990         parallel): don't use relative.
3991
3992 2006-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3993
3994         * ly/music-functions-init.ly (Module): add shiftDurations
3995
3996         * ly/drumpitch-init.ly (drumPitchNames): add tamtam.
3997
3998         * scm/paper.scm (paper-alist): no decimals for Ax paper sizes. 
3999
4000         * ly/engraver-init.ly: init vocalName to nil.
4001
4002 2006-03-05 Erik Sandberg  <mandolaerik@gmail.com>
4003
4004         * scm/music-functions.scm (music->make-music): bugfix,
4005         KeyChangeEvents are now handled correctly.
4006
4007         * scripts/lilypond-book.py: Add --debug option.
4008
4009 2006-03-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4010
4011         * python/lilylib.py: add tempfile.
4012
4013 2006-03-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4014
4015         * VERSION (PACKAGE_NAME): release 2.7.37
4016
4017         * python/lilylib.py (ps_page_count): remove make_ps_images().
4018         (ps_page_count): remove mkdir_p
4019         (system): remove cleanup_temp.
4020         (exit): remove lilypond_version_(check)
4021         (error_log): remove pseudo_filter_p
4022         remove read_pipe
4023         remove cp_to_dir
4024         remove identify
4025
4026         * scripts/lilypond-book.py (Lilypond_snippet.compose_ly): don't
4027         use __main__
4028
4029         * lily/accidental-engraver.cc (make_standard_accidental): only add
4030         support for side-axis is X_AXIS. Fixes text-spacing-accidental.ly
4031
4032         * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
4033         $(outdir)/emmentaler-%.svg): rewrite without functions; too many
4034         Make incompatibilities.
4035
4036         * scm/output-ps.scm (grob-cause): replace backslashes by /
4037         (glyph-string): use ~$ for less decimals for glyph-string and grob-cause.
4038
4039 2006-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
4040
4041         * cygwin/GNUmakefile: Install fixes.
4042
4043         * scripts/GNUmakefile (SEXECUTABLES): Install fix: remove mup2ly.
4044
4045         * lily/note-head.cc (head::get_balltype): Compile fix.
4046
4047         * flower/file-name.cc (dos_to_posix): Flower string fix.
4048
4049 2006-03-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4050
4051         * python/lilylib.py: pychecker cleanups.
4052
4053         * scripts/lilypond-book.py
4054         (Lilypond_snippet.output_print_filename): pychecker cleanups
4055
4056         * scripts/midi2ly.py (Key.dump): pychecker cleanups.
4057
4058         * python/lilylib.py (underscore): remove identify() , warranty()
4059
4060         * ps/music-drawing-routines.ps: change Border routine for GSView
4061         compatibility.
4062
4063         * lily/stem.cc (height): use quantize-positions.  This triggers
4064         set_stem_lengths, so scripts on beamed stems are handled correctly.
4065
4066         * lily/side-position-interface.cc (aligned_side): check if edges
4067         of script are inside staff. Fixes accent of edge of the staff.
4068
4069         * input/regression/staccato-pos.ly: more examples.
4070
4071         * stepmake/aclocal.m4 (depth): fix bashism.
4072
4073         * lily/lyric-combine-music-iterator.cc: move from
4074         new-lyric-combine-iterator.cc
4075         (process): add pending_grace_lyric_ member to delay lyrics on
4076         grace notes.
4077
4078         * lily/system-start-text.cc (print): suicide if we don't have any
4079         elements. Fixes hara kiri'd instrument names.
4080
4081         * scripts/mup2ly.py (Module): remove.
4082
4083 2006-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4084
4085         * Documentation/user/global.itely (A single music expression):
4086         close @lilypond properly
4087
4088         * lily/volta-bracket.cc (modify_edge_height): change from
4089         after_line_breaking_callback. Suicide last bracket if appropriate.
4090  
4091         * python/lilylib.py: strip getopt support
4092
4093         * scripts/etf2ly.py (do_options): use optparse
4094
4095         * scripts/midi2ly.py: optparse, strip lilylib copy. 
4096
4097         * scripts/abc2ly.py (voices): use optparse.
4098
4099         * stepmake/stepmake/generic-vars.make: new function absdir.
4100
4101         * scripts/convert-ly.py (bindir): use optparse, argv[0] relocation.
4102
4103         * scripts/lilypond-book.py (find_file): use global_options for
4104         include path
4105
4106         * scm/ps-to-png.scm (ps-page-count): prevent null characters
4107         entering C code.
4108
4109 2006-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4110
4111         * python/lilylib.py (get_global_option): ughness for extracting
4112         global options from lilylib.
4113         (NonDentedHeadingFormatter.format_heading): move from musicxml2ly
4114
4115         * scripts/lilypond-book.py (get_option_parser): use optparse for
4116         option handling.  Put options in global_options variable.
4117
4118 2006-02-28  Heikki Junes  <hjunes@cc.hut.fi>
4119
4120         * Documentation/index.html.in: clarify.
4121
4122 2006-02-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4123
4124         * scm/layout-page-layout.scm (write-page-breaks): add a
4125         music-system-heights property to the page layout output.
4126
4127         * scm/page.scm (make-page-stencil): take footer into account when
4128         computing the 'space-left page property
4129         (annotate-space-left): take footer into account when annonating
4130         space left.
4131
4132 2006-02-28  Graham Percival  <gpermus@gmail.com>
4133
4134         * Documentation/user/ advanced-notation, global: more (final)
4135         docs for music expressions, removed special fermatas.
4136
4137 2006-02-27  Graham Percival  <gpermus@gmail.com>
4138
4139         * Documentation/user/ basic-notation, global: minor changes
4140         from mailist.
4141
4142 2006-02-26  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4143
4144         * scm/framework-ps.scm:         
4145         * scm/lily-library.scm (nan?, inf?): Move guile 1.6 compatibility
4146         layer for inf? and nan? from framework-ps to lily-library.
4147
4148 2006-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4149
4150         * mf/GNUmakefile ($(outdir)/emmentaler-$(1).otf
4151         $(outdir)/emmentaler-$(1).svg): remove backslashes from define endef.
4152
4153         * buildscripts/substitute-encoding.py (Module): remove file.
4154
4155         * mf/GNUmakefile: more PFA strippage.
4156
4157         * mf/aybabtu.pe.in (i): remove PFAaybabtu generation
4158
4159         * buildscripts/gen-emmentaler-scripts.py (i): remove PFAemmentaler
4160         generation
4161
4162         * scm/framework-ps.scm: remove font name munging.
4163
4164         * Documentation/topdocs/INSTALL.texi (Top): bump GS requirement.
4165
4166 2006-02-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4167
4168         * scm/markup.scm (define-markup-command): change
4169         def-markup-command to define-markup-command
4170
4171         * scm/music-functions.scm (define-music-function): change
4172         def-music-function to define-music-function.
4173
4174         * python/convertrules.py (conv): rules for def-music-function
4175         and def-markup-commands
4176
4177         * Documentation/user/programming-interface.itely,
4178         input/no-notation/display-lily-tests.ly,
4179         input/regression/lily-in-scheme.ly,
4180         input/regression/markup-user.ly,
4181         input/regression/music-function.ly, input/regression/tie-chord.ly,
4182         scm/fret-diagrams.scm, ly/music-functions-init.ly,
4183         ly/gregorian-init.ly: use new macro names (define-music-function,
4184         define-markup-command).
4185
4186 2006-02-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4187
4188         * scripts/lilypond-book.py (main): write Makefile dependencies file. 
4189         (output): add comments to lp-book latex output.
4190
4191         * GNUmakefile.in (footifymail): use gmane address for webpage bug
4192         address.
4193
4194 2006-02-23  Graham Percival  <gpermus@gmail.com>
4195
4196         * Documentation/user/ tutorial, global: minor changes.
4197
4198 2006-02-23  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4199
4200         * mf/GNUmakefile: add '\' in multi-line "define ... endef"
4201         blocks (for make 3.80)
4202
4203         * scm/parser-ly-from-scheme.scm (ly:parse-string-result): add
4204         \notemode so that user should not have to explicitely type it.
4205
4206         * scm/define-music-display-methods.scm: various
4207         fixes (ApplyOutputEvent, ApplyContext; \new, \context and derived
4208         constructs)
4209
4210         * input/no-notation/display-lily-tests.ly: new tests for
4211         \applyOutput and \applyContext
4212
4213 2006-02-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4214
4215         * lily/constrained-breaking.cc: patch by Joe Neeman: "I have
4216         changed it slightly so that the number of systems returned by
4217         solve () will be the same as the last value passed to resize
4218         (). I've also added more documentation, removed casts, fixed style
4219         problems and put in some recovery if constraints aren't satisfied."
4220
4221 2006-02-23  Jan Nieuwenhuizen  <janneke@gnu.org>
4222
4223         * elisp/lilypond-mode.el (count-matches-as-number): New funtion
4224         for emacs < 22 compatibility.
4225         (count-rexp): Use it.
4226         (LilyPond-string-current-midi, LilyPond-string-all-midi): Remove
4227         substring juggling (Milan Zamazal).
4228
4229 2006-02-23  Graham Percival  <gpermus@gmail.com>
4230
4231         * Documentation/user/ basic-notation, advanced-notation,
4232         global.itely, invoking.itely, tutorial,itely:
4233         minor fixes from mailist.
4234
4235         * scm/define-markup-commands.scm: improve docs of \filled-box.
4236
4237 2006-02-23  Heikki Junes  <hjunes@cc.hut.fi>
4238
4239         * Documentation/index.html.in: changes concern the previous release.
4240
4241         * input/regression/+.ly: cultivate typographical terminology.
4242
4243 2006-02-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4244
4245         * scm/define-grob-interfaces.scm (parentheses-interface): add
4246         padding to parentheses-interface.
4247
4248         * Documentation/user/GNUmakefile: remove $(CROSS) support from
4249         Documentation/user/GNUmakefile. Use --disable-documentation for that.
4250
4251         * VERSION (PATCH_LEVEL): release 2.7.36
4252
4253         * lily/slur.cc: add avoid-slur (ugh.)
4254         
4255         * lily/slur-configuration.cc (fit_factor): oops, skip point if
4256         intersection gets smaller. This fixes slurs over extreme points.
4257
4258         * lily/melody-engraver.cc (stop_translation_timestep): ignore
4259         stems with neutral-direction set.
4260
4261         * lily/piano-pedal-engraver.cc (create_text_grobs): idem.
4262
4263         * lily/open-type-font.cc (load_table): format error.
4264
4265         * lily/change-iterator.cc (process): format fix.
4266
4267         * flower/include/international.hh (_f): idem.
4268
4269         * flower/include/std-string.hh: add format printf attribute.
4270
4271         * scm/define-grobs.scm (all-grob-descriptions): height of all
4272         PedalLineSpanner is Y-extent property. Fixes pedal-ped.ly
4273
4274         * lily/ambitus-engraver.cc (finalize): use grob_array. This fixes
4275         ambitus lines.
4276
4277         * input/regression/beam-cross-staff-slope.ly: remove decrescendo.
4278
4279 2006-02-22 Erik Sandberg  <mandolaerik@gmail.com>
4280
4281         * input/regression/: upgraded syntax for some files.
4282
4283         * THANKS: Add bughunters.
4284
4285 2006-02-22  Graham Percival  <gpermus@gmail.com>
4286
4287         * Documentation/user/ invoking.itely, advanced-notation.itely,
4288         global.itely: long-awaited "let's make chapter 10 not suck"
4289         update.  Rearrange chapter 10; now called "global issues",
4290         addresses file structure, etc.  Some info from other files
4291         moved into global.itely.
4292
4293 2006-02-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4294
4295         * lily/accidental-engraver.cc (acknowledge_rhythmic_head): also
4296         catch trill-span-event notes.
4297
4298         * Documentation/user/examples.itely (Ancient notation templates): typo.
4299         (Jazz combo): typo.
4300
4301         * scripts/lilypond-book.py (main): scrap invokes_lilypond(). 
4302
4303         * Documentation/user/basic-notation.itely (Ties): document \repeatTie.
4304
4305         * Documentation/topdocs/NEWS.tely (Top): document \repeatTie.
4306
4307         * scm/define-music-types.scm (music-descriptions): add RepeatTieEvent
4308
4309         * lily/repeat-tie-engraver.cc (acknowledge_note_head): new file. cut & paste
4310         froum Laissez_vibrer_engraver.
4311
4312         * ly/declarations-init.ly (repeatTie): add \repeatTie
4313
4314         * scm/define-grobs.scm (all-grob-descriptions): add RepeatTie, RepeatTieColumn
4315
4316         * scm/define-grob-properties.scm (all-user-grob-properties): add
4317         head-direction property.
4318
4319         * lily/tie-formatting-problem.cc (from_semi_ties): rename from
4320         from_lv_ties. Take head direction argument.
4321
4322         * lily/semi-tie-column.cc: rename from
4323         laissez-vibrer-tie-column.cc. Rename class too.
4324
4325         * lily/semi-tie.cc: rename from laissez-vibrer-tie.cc. Rename
4326         class too.
4327
4328         * lily/paper-score.cc (find_break_indices): move from Break_algorithm.
4329
4330         * lily/break-algorithm.cc (find_break_indices): remove linewidth <
4331         0 case.
4332         (find_breaks): idem.
4333
4334 2006-02-21  Graham Percival  <gpermus@gmail.com>
4335
4336         * Documentation/user/advanced-notation.itely: fixed make-moment]
4337         example.
4338
4339         * Documentation/user/basic-notation.itely: more clarification to
4340         transpose.
4341
4342 2006-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4343
4344         * lily/include/constrained-breaking.hh (class
4345         Constrained_breaking): new file.
4346
4347         * lily/constrained-breaking.cc (resize): new file.
4348
4349         * lily/gourlay-breaking.cc (do_solve): ragged-last iso raggedlast
4350
4351         * Documentation/user/advanced-notation.itely (Clusters): insert
4352         end ignore too.
4353
4354         * lily/tie-column.cc (calc_positioning_done): support for
4355         tie-score debugging
4356
4357         * lily/tie-formatting-problem.cc
4358         (generate_extremal_tie_variations): factor out.
4359         (score_ties_configuration): annotate all tie 
4360         (print_ties_configuration): new routine.
4361         (generate_configuration): nudge extremal ties outside of the head
4362         Y extents.
4363         (score_ties_configuration): oops. convert to staff-space before
4364         determining position symmetry.
4365
4366 2006-02-20  Graham Percival  <gpermus@gmail.com>
4367
4368         * Documentation/user/*-notation.itely: misc minor editing,
4369         shifting doc sections around.
4370
4371         * Documentation/user/*-notation-itely, global.itely,
4372         changing-defaults.itely: added new stuff from NEWS.
4373
4374 2006-02-20  Heikki Junes  <hjunes@cc.hut.fi>
4375
4376         * po/fi.po: update.
4377
4378 2006-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4379
4380         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): don't run
4381         lilypond --verbose for lp-book.
4382
4383         * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
4384         $(outdir)/%.ly $(outdir)/%.ps): use $(srcdir) iso $(shell pwd).
4385
4386         * make/lysdoc-rules.make ($(outdir)/collated-files.tely): use
4387         $(buildscript-dir) iso. absolute depth.
4388
4389         * buildscripts/genicon.py (dir): thinko.
4390
4391         * Documentation/pictures/GNUmakefile ($(outdir)/%.ico): typo.
4392
4393 2006-02-19 Erik Sandberg  <mandolaerik@gmail.com>
4394
4395         * scm/output-lib.scm: swap darkcyan/darkyellow
4396
4397         * THANKS: Add bughunters.
4398
4399 2006-02-19  Graham Percival  <gpermus@gmail.com>
4400
4401         * Documentation/user/programming-interfaces.itely: fixed example.
4402
4403         * Documentation/user/instrument-notation.itely: fix @{ @}.
4404
4405         * scm/script.scm: add avoid-slur for \open.
4406
4407 2006-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4408
4409         * lily/tie-formatting-problem.cc (score_configuration): use
4410         sliding score for min-length. 
4411
4412         * Documentation/pictures/GNUmakefile (local-dist): loose the rule
4413         spaghetti for icons.
4414
4415         * buildscripts/genicon.py (program_name): new file.
4416
4417         * lily/tie-formatting-problem.cc (set_chord_outline): put dots
4418         in outline too.  
4419         (generate_configuration): for small ties, also look for collisions
4420         at Y + DIR*h + DELTA_Y.
4421         (get_variations): consider variation for dot positions too.
4422
4423         * lily/side-position-interface.cc (aligned_side): take abs for
4424         quantized rounded position. Fixes tenuto below staff.
4425
4426         * scm/stencil.scm (annotate-y-interval): robustify: print nan/inf
4427         markers when necessary.
4428
4429         * lily/program-option.cc (internal_set_option): add
4430         strict_infinity_checking option.
4431
4432         * scm/output-lib.scm (cyan): swap yellow and cyan.
4433
4434 2006-02-19  Graham Percival  <gpermus@gmail.com>
4435
4436         * darwin.patch: trivial linenumber update.
4437
4438         * Documentation/user/ {various}: `\context foo = named' changed
4439         to `\new foo = "name"' in docs.
4440
4441 2006-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4442
4443         * scm/stencil.scm (annotate-y-interval): use it.
4444
4445         * scm/lily-library.scm (interval-sane?): new function.
4446
4447         * buildscripts/mf-to-table.py (Char_metric.__init__): remove
4448         tfm_checksum stuff.
4449
4450         * lily/tie-formatting-problem.cc (from_lv_ties): add heads for
4451         common refpoint.
4452
4453         * flower/include/std-vector.hh (iterof): add iterof macro.
4454
4455         * lily/enclosing-bracket.cc (width): new function.
4456
4457         * lily/align-interface.cc (align_elements_to_extents): reinstate
4458         warning.
4459
4460 2006-02-18  Heikki Junes  <hjunes@cc.hut.fi>
4461
4462         * Documentation/index.html.in: fix spelling: thankyous.
4463
4464 2006-02-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4465
4466         * lily/lyric-hyphen.cc: typo.
4467
4468 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4469
4470         * stepmake/stepmake/c++-rules.make ($(outdir)/%.cc
4471         $(outdir)/%.hh): generate h and c in one rule; otherwise -jX
4472         builds don't work. 
4473
4474         * VERSION: release 2.7.35
4475
4476         * lily/beam.cc (get_default_dir): oops. Take abs () for
4477         extremes[DOWN].
4478         (get_default_dir): use extreme position criterion only in absence
4479         of forced stem directions.
4480
4481         * VERSION (PATCH_LEVEL): bump VERSION.
4482
4483         * mf/GNUmakefile: explicit rules for emmentaler/aybabtu
4484         dependencies. Necessary for -jX builds.  
4485
4486 2006-02-17  Jan Nieuwenhuizen  <janneke@gnu.org>
4487
4488         * lily/relocate.cc (setup_paths): Yet another const fix.
4489
4490 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4491
4492         * configure.in (HOST_ARCH): determine HOST_ARCH in configure.
4493
4494         * lily/relocate.cc (setup_paths): oops.
4495
4496 2006-02-17  Heikki Junes  <hjunes@cc.hut.fi>
4497
4498         * Documentation/index.html.in: order links: html before PDF.
4499
4500 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4501
4502         * lily/tie-column-format.cc (Module): remove.
4503
4504         * lily/relocate.cc (setup_paths): GCC 4.2 fixes: const correctness.
4505
4506         * lily/text-spanner.cc (print): idem.
4507
4508         * lily/dynamic-text-spanner.cc (print): only print line if longer
4509         than dash-period.
4510
4511         * lily/auto-change-iterator.cc (change_to): formatting.
4512
4513         * lily/beam.cc (get_default_dir): take extreme note head as input
4514         for stem direction.
4515
4516         * lily/tie.cc (get_default_dir): only look directions for visible
4517         stems. 
4518
4519         * lily/side-position-interface.cc (aligned_side): oops. Don't
4520         mutiply with direction. This fixes quantized (staccato, tenuto)
4521         scripts below notes.
4522
4523         * lily/lyric-hyphen.cc (set_spacing_rods): oops. Multiply with
4524         direction. Fixes c-lyrics-center-align.ly
4525
4526 2006-02-16  Jan Nieuwenhuizen  <janneke@gnu.org>
4527
4528         * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Add copy
4529         constructor.
4530
4531         * lily/std-string.cc:
4532         * lily/include/std-vector.hh (split_string): Move and rename from
4533         lily/include/misc.hh, lily/misc.cc.  Update callers.
4534
4535 2006-02-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4536
4537         * lily/include/pango-font.hh: HAVE_PANGO_FT2 iso. HAVE_PANGO_16
4538
4539 2006-02-16  Jan Nieuwenhuizen  <janneke@gnu.org>
4540
4541         * flower/test-file.cc: New file.
4542
4543         * stepmake/stepmake/test-vars.make (TEST_MODULE_LIBES): Fixes for
4544         libraries.
4545
4546         * flower/GNUmakefile (TEST_MODULE_LIBS): Link to flower lib.
4547
4548 2006-02-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4549
4550         * flower/include/file-storage.hh: remove file.
4551
4552         * lily/include/midi-item.hh (class Midi_track): idem.
4553
4554         * lily/include/source.hh (class Sources): idem.
4555
4556         * lily/include/performance.hh (class Performance): use vector
4557         iso. Cons<>
4558
4559         * flower/include/cons.hh (class Cons): remove file.
4560
4561         * flower/include/flower-proto.hh: remove template cruft.
4562
4563         * lily/include/font-metric.hh: use size_t not vsize for indices.
4564
4565         * flower/include/flower-proto.hh (Module): remove std-vector.hh
4566         from proto.
4567
4568         * lily/include/all-font-metrics.hh: use HAVE_PANGO_FT2
4569
4570         * lily/include/paper-book.hh (class Paper_book):
4571         make get_system_specs() public.
4572
4573         * scm/layout-page-layout.scm (optimal-page-breaks): only consider
4574         the force=10000 case if we don't have a current-best. 
4575
4576         * lily/tuplet-bracket.cc (get_bounds): don't do (size() - 1) for
4577         vsize 
4578
4579         * flower/include/flower-proto.hh: remove outdated templates.
4580
4581         * scm/page.scm: use annotate-spacing
4582
4583 2006-02-15  Graham Percival  <gpermus@gmail.com>
4584
4585         * scm/translation-functions.scm: circle patch from Erlend, thanks!
4586
4587         * THANKS: moved Erlend Aasland to contributors.
4588
4589 2006-02-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4590
4591         * config.hh.in: remove HAVE_PANGO_16
4592
4593         * lily/tuplet-bracket.cc (calc_positions): multiply with
4594         staff-space for beam case. This fixes tuplets+beams on scaled
4595         staves.
4596
4597         * config.hh.in: remove all Kpathsea related defines.
4598
4599         * lily/dot-column.cc (side_position): reach stem via dots->
4600         head->stem. Inspect all stems for dot collisions. 
4601
4602         * lily/dot-column-engraver.cc (class Dot_column_engraver): excise
4603         stem handling.
4604
4605         * lily/bar-number-engraver.cc (process_music): document function
4606         of whichBar.
4607
4608         * lily/score.cc (default_rendering): add pscore, not systems
4609         themselves.
4610
4611         * lily/paper-book.cc (get_system_specs): separate generation of
4612         titles and systems.
4613
4614         * flower/include/std-vector.hh: don't include config.hh
4615
4616 2006-02-15  Jan Nieuwenhuizen  <janneke@gnu.org>
4617
4618         * flower/include/std-vector.hh: Better wrapper compatibility with
4619         std::vector.
4620
4621         * flower/include/flower-proto.hh: Remove cheap forward declaration
4622         attempts.
4623
4624         * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): Bugfix.
4625
4626 2006-02-14  Graham Percival  <gpermus@gmail.com>
4627
4628         * Documentation/user/invoking.itely: add warning about command line.
4629
4630 2006-02-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4631
4632         * lily/include/lily-proto.hh: add Prob, rm Page.
4633
4634         * flower/include/std-vector.hh (VPOS): use 64 bit-proof version.
4635
4636         * VERSION: release 2.7.34
4637
4638         * lily/relocate.cc (framework_relocation): show canary if
4639         GHOSTSCRIPT_VERSION undefined.
4640
4641         * GNUmakefile.in: remove $(VERSION) symlink.
4642
4643         * lily/relocate.cc (setup_paths): add + 
4644
4645 2006-02-13  Heikki Junes  <hjunes@cc.hut.fi>
4646
4647         * Documentation/index.html.in: specify sizes for all big HTML pages.
4648
4649 2006-02-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4650
4651         * config.hh.in: remove @FRAMEWORKDIR@
4652
4653         * lily/system-start-text.cc (get_stencil): new file: separate out
4654         system-start-delimiter text support.
4655
4656         * input/**ly: replace \context with \new where appropriate.
4657         
4658         * THANKS: add Don.
4659
4660         * lily/slur-scoring.cc (get_base_attachments): use
4661         robust_relative_extent. This fixes problems with empty paper-columns. 
4662
4663 2006-02-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4664
4665         * Documentation/topdocs/NEWS.tely (Top): document \new syntax.
4666
4667         * scm/define-music-properties.scm (all-music-properties):
4668         create-new property.
4669
4670         * lily/context-specced-music-iterator.cc (construct_children):
4671         inspect 'create-new property iso. magical $uniqueContextId context
4672         id.
4673
4674         * lily/parser.yy (optional_id): allow \new "Bar" = "foo" too.
4675
4676         * lily/context-key-manager.cc (Module): new file. Encapsulate
4677         object key generation.
4678
4679         * lily/include/context-key-manager.hh (Module): new file.
4680
4681 2006-02-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4682
4683         * scm/define-grobs.scm (all-grob-descriptions): center instrument
4684         names vertically
4685
4686         * configure.in (LINK_GXX_STATICALLY): strip -DSTRING_UTILS_INLINED
4687         options.
4688         (reloc_b): excise --enable-framework-dir
4689
4690         * lily/relocate.cc (framework_relocation): use getenv
4691         LILYPOND_GS_VERSION or -DGHOSTSCRIPT_VERSION to set GS version.
4692
4693 2006-02-11  Jan Nieuwenhuizen  <janneke@gnu.org>
4694
4695         * flower/include/std-string.hh: 
4696         * flower/include/std-vector.hh: Finish std:: conversion; move
4697         flower extensions from std:: namespace.  Update users.
4698
4699         * lily/include/lily-proto.hh: Replace Link_array__*_ macros by
4700         their expansion to vector<*>.  Update users.
4701
4702 2006-02-10  Graham Percival  <gpermus@gmail.com>
4703
4704         * Documentation/user/invoking.itely: add example to File structure.
4705
4706         * Documentation/user/ instrument-notation.itely, cheatsheet.itely,
4707         examples.itely, putting.itely: {\new|\context} Lyrics \lyricsto.
4708
4709 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4710
4711         * ly/paper-defaults.ly: typo.
4712
4713         * lily/parenthesis-engraver.cc (acknowledge_grob): don't do
4714         set_parent() for parentheses. This will make it show up in bbox
4715         calculations.
4716
4717         * scm/output-lib.scm (parentheses-item::print): rewrite, using
4718         ly:grob-common* functions.
4719
4720         * lily/grob-scheme.cc (LY_DEFINE):
4721         ly:grob-common-refpoint-of-array: new function 
4722         ly:grob-common-refpoint: new function 
4723         ly:grob-relative-coordinate: new function 
4724
4725         * lily/instrument-name-engraver.cc (process_music): use
4726         Text_interface::is_markup(). This fixes \markup on instrument names.  
4727
4728         * scm/define-grobs.scm (all-grob-descriptions): set line-thickness
4729         for ties and slurs.
4730
4731         * lily/slur.cc (print): idem.
4732
4733         * lily/tie.cc: add line-thickness for ties. 
4734
4735 2006-02-10  Jan Nieuwenhuizen  <janneke@gnu.org>
4736
4737         * scm/output-svg.scm: Document diversion from GNU coding standards
4738         as a workaround for a bug in Microsoft Internet Explorer.
4739
4740 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4741
4742         * lily/instrument-name-engraver.cc (process_music): use
4743         is_markup() iso. is_string()
4744
4745         * Documentation/user/changing-defaults.itely (Module): add menu entry.
4746
4747         * lily/percent-repeat-engraver.cc (process_music): only look at
4748         main_part_ for % repeats.
4749
4750         * lily/stem-tremolo.cc (get_beam_translation): new function.
4751         (calc_slope): new function.
4752         (height): don't use real slope.
4753
4754 2006-02-10  Jürgen Reuter  <reuter@ipd.uka.de>
4755
4756         * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: add
4757         new connect-to-neighbor, control-points and staff-padding
4758         properties to make ligature brackets showing up again.
4759
4760 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4761
4762         * VERSION: release 2.7.33
4763
4764         * lily/relocate.cc (prefix_relocation): oops. One TOPLEVEL_VERSION
4765         too many.
4766
4767         * Documentation/user/changing-defaults.itely (Difficult tweaks):
4768         remove applyOutput example.
4769         (Objects connected to the input): document \tweak, \parenthesize
4770
4771         * lily/relocate.cc (prefix_relocation): allow "current"
4772         iso. TOPLEVEL_VERSION for share/lilypond/ suffix. This makes
4773         changing VERSION in a lily tree less painful.
4774
4775         * input/regression/parenthesize.ly: new file. 
4776
4777         * scm/output-lib.scm (parenthesize-element): new function.
4778
4779         * scm/define-grobs.scm (all-grob-descriptions): add ParenthesesItem.
4780
4781         * lily/parenthesis-engraver.cc (acknowledge_grob): new file.
4782
4783         * lily/accidental-engraver.cc (make_standard_accidental): reroute
4784         cause: accidentals are caused by note heads, not note events. 
4785
4786 2006-02-08  Graham Percival  <gpermus@gmail.com>
4787
4788         * darwin.patch: small patch from Erlend, thanks!
4789
4790         * Documentation/user/basic-notation.itely: add stem-neutral example.
4791
4792         * Documentation/user/putting.itely: clarifications.
4793
4794 2006-02-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4795
4796         * Documentation/topdocs/NEWS.tely (Top): remove internal cleanup
4797         note, add more guidelines to what should go into NEWS.
4798
4799         * input/sakura-sakura.ly: document how to override font.
4800
4801         * input/regression/font-family-override.ly:  doc -dshow-available-fonts
4802
4803 2006-02-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4804
4805         * lily/midi-item.cc (to_string): truncate time sig at 255 beats.
4806
4807 2006-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
4808
4809         * scripts/convert-ly.py (lilypond_version_re_str): Move from
4810         convertrules.  Add explicit grouping, needed for python2.2.
4811
4812 2006-02-07  Jan Nieuwenhuizen  <janneke@gnu.org>
4813
4814         * Documentation/topdocs/NEWS.tely (Top): Mention code cleanup.
4815
4816 2006-02-07  Graham Percival  <gpermus@gmail.com>
4817
4818         * Documentation/user/global.itely: fix line-width in (text) docs.
4819
4820         * Documentation/user/lilypond-book.itely: same.
4821
4822 2006-02-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4823
4824         * VERSION (PACKAGE_NAME): release 2.7.32
4825
4826         * Documentation/topdocs/NEWS.tely (Top): document new variable
4827         naming.
4828
4829         * flower/include/array.icc (Message): remove file.
4830
4831         * flower/include/std-vector.hh: make sure vsize and VPOS are
4832         defined for binary_search_bounds().
4833
4834         * flower/std-string.cc (std): add to_string(long unsigned).
4835
4836         * configure.in (gui_b): excise std_string option.
4837         (gui_b): excise std_vector option.
4838
4839         * flower/string.cc (Module): excise flower array & string
4840
4841         * flower/include/std-string.hh: excise flower string.
4842
4843         * {ly,lily,scm}/*: use dashes in \paper and \layout variables
4844
4845         * python/convertrules.py (lilypond_version_re_str): require
4846         only numbers and dots in \version string.
4847
4848 2006-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4849
4850         * lily/system-start-delimiter.cc (print): allow style = text too.
4851
4852         * lily/system-start-delimiter-engraver.cc
4853         (acknowledge_system_start_text): new function, also add add to
4854         support of system-start-text (instrument names). This fixes
4855         instrument names on piano staves.
4856
4857         * lily/instrument-name-engraver.cc: rewrite. Use
4858         system-start-delimiter approach. This save memory and cpu.
4859
4860         * scm/define-grobs.scm (all-grob-descriptions): remove
4861         instrument-name from break-alignment.
4862
4863         * mf/GNUmakefile ($(NCSB_TTFS)): depend on pfx2ttf script too.
4864
4865 2006-02-05  Jan Nieuwenhuizen  <janneke@gnu.org>
4866
4867         * stepmake/stepmake/generic-vars.make (LOOP): Add PLUS to keep -j
4868         jobserver going.
4869
4870         * configure.in (std_vector): On by default.
4871
4872         * lily/include/font-metric.hh:
4873         * lily/include/tfm-reader.hh: 
4874         * lily/include/spanner.hh: Use unsigned for indices and sizes.
4875         Update users.
4876
4877         * Documentation/user/changing-defaults.itely: Fix link v2.5, out-www.
4878
4879 2006-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4880
4881         * VERSION (PACKAGE_NAME): 2.7.31
4882
4883         * scm/framework-ps.scm (dump-stencil-as-EPS): don't hardcode left
4884         EPS edge at 0, but take minimum with left-overshoot. This fixes
4885         cut off system start delims. 
4886
4887         * lily/instrument-name-engraver.cc (stop_translation_timestep):
4888         hack: add to axis group if not added yet. This fixes hara kiri'd
4889         piano staves.
4890
4891         * lily/hara-kiri-group-spanner.cc
4892         (force_hara_kiri_in_y_parent_callback): fix signatures.
4893
4894         * lily/hairpin.cc (print): check next hairpin to see whether or
4895         not to be continuing.
4896
4897 2006-02-04  Jan Nieuwenhuizen  <janneke@gnu.org>
4898
4899         * Remove trailing whitespace from makefiles.
4900         
4901         * flower/include/std-vector.hh: Add binary_search_bounds workaround
4902         for earlier gcc.
4903
4904         * .cvsignore: Add out*, out-www, config-*.  Remove lots of cruft.
4905
4906         * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Workaround.
4907
4908         * config.hh.in (HAVE_STL_DATA_METHOD): Add.
4909
4910         * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): New function.
4911
4912         * configure.in: Use it.
4913
4914 2006-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4915
4916         * scm/music-functions.scm (pitch-of-note): new function.
4917
4918         * ly/music-functions-init.ly: add \octave and \addquote
4919
4920         * lily/parser.yy (music_function_chord_body): softcode \octave.
4921         (lilypond_header): softcode \addquote
4922
4923 2006-02-03  Jan Nieuwenhuizen  <janneke@gnu.org>
4924
4925         * flower/include/std-vector.hh[STD_VECTOR]: Do not include
4926         array.hh, parray.hh at all.  Getting ready to flip the
4927         configure default.
4928
4929         * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
4930
4931         * lily/source-file.cc (file::get_line): Help binary_search_bounds
4932         a bit.
4933
4934         * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
4935
4936 2006-02-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4937
4938         * flower/include/array.hh: typo. 
4939
4940 2006-02-02  Graham Percival  <gpermus@gmail.com>
4941
4942         * Documentation/user/advanced-notation.itely: doc "\#" in text.
4943
4944 2006-02-03  Jan Nieuwenhuizen  <janneke@gnu.org>
4945
4946         * flower/include/pqueue.hh: Derive from std::vector.
4947
4948         * flower/include/parray.hh: Conform to std::vector interface.
4949         Update users.
4950
4951 2006-02-02  Graham Percival  <gpermus@gmail.com>
4952
4953         * Documentation/topdocs/NEWS.itely: grammar fix from Laura.
4954
4955 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4956
4957         * flower/file-path.cc (is_file): remove if 0 section.
4958
4959         * buildscripts/pfx2ttf.fontforge (err): robustness fix for
4960         selecting afii61352.
4961
4962 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
4963
4964         * flower/include/std-vector.hh (boundary): Oops, reverse.
4965
4966         * flower/string-convert.cc (convert::unsigned_string): Bugfix:
4967         remove superfluous `d'.
4968
4969         * flower/include/std-vector.hh (boundary, top): Detach from class.
4970         Remove empty vector shell.
4971
4972         * flower/include/array.hh (reverse, swap): Detach from class.
4973         Update users.
4974         
4975         * flower/include/std-vector.hh
4976         * flower/include/array.hh (concat): Globally change to insert ().
4977
4978         
4979         * flower/include/std-vector.hh
4980         * flower/include/parray.hh
4981         * flower/include/array.hh (elem, elem_ref): Globally replace by
4982         at ().
4983
4984 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4985
4986         * Documentation/topdocs/NEWS.tely (Top): use ly: prefix for members.
4987
4988         * python/convertrules.py (FatalConversionError.sub_cxx_id):
4989         anticipate on identifier substitutions.
4990
4991 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
4992
4993         * flower/include/std-vector.hh (insert): Remove, replace by
4994         std::vector interface.  Update callers.
4995
4996         * flower/include/array.icc (insert): Change signature to
4997         match std::vector interface.
4998         
4999         * flower/include/array.icc (vector_sort): Bugfix.
5000
5001 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5002
5003         * lily/parser.yy (output_def_head_with_mode_switch): new
5004         production. Result: dashes and underscores may be used in the
5005         \paper block.
5006
5007         * lily/lexer.ll: add DASHED_WORD.  Accept in INITIAL mode.
5008
5009         * python/convertrules.py (conv): oops. One slash too much.
5010
5011 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
5012
5013         * flower/include/std-vector.hh (sort): Remove, replace by
5014         ::vector_sort.  Update callers.
5015
5016         * flower/include/std-vector.hh (slice): Remove.  Update callers.
5017         (sort): Bugfix.
5018
5019         * flower/test-std.cc (vector_sort): New test.
5020
5021 2006-02-01  Graham Percival  <gpermus@gmail.com>
5022
5023         * Documentation/user/putting.itely: fixes from Erik.
5024
5025 2006-02-01  Jan Nieuwenhuizen  <janneke@gnu.org>
5026
5027         * flower/test-std.cc: Add simple unit test for vector migration.
5028
5029         * stepmake/stepmake/test*: Unit test support.
5030
5031         * flower/include/std-vector.hh (del): Remove.  Use erase (),
5032         update callers.
5033
5034         * flower/include/array.hh (begin, end): Add.
5035         (del, get): Remove.
5036
5037 2006-02-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5038
5039         * lily/include/lily-guile-macros.hh (MAKE_SCHEME_CALLBACK): use
5040         std::string not String. 
5041
5042         * lily/context-def.cc (path_to_acceptable_context): use INT_MAX
5043         iso UINT_MAX.
5044
5045         * lily/prob.cc (Prob): copy type_ too.
5046
5047         * lily/lily-guile.cc (mangle_cxx_identifier): new
5048         function. Class_bla::foo_bar_[px] ->
5049         ly:class-bla::foo-bar[?!]. Changes throughout
5050
5051 2006-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5052
5053         * flower/include/guile-compatibility.hh (scm_from_unsigned): add scm_from_unsigned().
5054
5055         * lily/beam.cc (calc_direction): take dir from visible stem in
5056         degenerate case.
5057
5058 2006-01-31  Jan Nieuwenhuizen  <janneke@gnu.org>
5059
5060         * lily/melody-spanner.cc (spanner::calc_neutral_stem_direction):
5061         Fix -1, >=0 boundary checks for unsigned vsize.
5062
5063         * lily/separating-group-spanner.cc (spanner::find_rods): Fix >=0
5064         loop for unsigned vsize.
5065
5066         * configure.in (--enable-std-vector): New option.
5067         (--enable-std-string): On by default.
5068
5069         * flower/include/std-vector.hh: New file.  Enable switch to
5070         std::vector, update client code.
5071
5072 2006-01-30  Graham Percival  <gpermus@gmail.com>
5073
5074         * scm/document-translation.scm: clarify "this context is also
5075         known as".  Thanks, Werner!
5076
5077         * Documentation/user/putting.itely: small fixes from Don Blaheta.
5078
5079         * Documentation/user/invoking.itely: small fix from Don.
5080
5081 2006-01-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5082
5083         * scm/lily.scm (define-scheme-options): rename option
5084         preview-include-book-title to book-title-preview
5085         (define-scheme-options): move force-eps-font-include (from paper
5086         block) to eps-font-include -d option.
5087
5088         * VERSION (PATCH_LEVEL): release 2.7.30
5089
5090         * input/bach-schenker.ly (staffPiano): new file.
5091
5092         * buildscripts/pfx2ttf.fontforge: remove No. glyph from TTF file.
5093
5094         * Documentation/topdocs/NEWS.tely (Top): simplify NEWS entry, add
5095         credits to Nicolas.
5096
5097         * scm/define-markup-commands.scm (epsfile): add scaling to \epsfile.
5098
5099         * ps/lilyponddefs.ps: remove start-system, stop-system,
5100         start-page fluff. This saves putting { } code on the stack, fixing
5101         stack overflows when including EPS files.
5102
5103 2006-01-29  Graham Percival  <gpermus@gmail.com>
5104
5105         * Documentation/user/putting.itely: minor fixes (comments on -devel).
5106
5107 2006-01-29  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5108
5109         * Documentation/topdocs/NEWS.tely (Top): add \parallelMusic news.
5110
5111 2006-01-28  Graham Percival  <gpermus@gmail.com>
5112
5113         * Documentation/user/putting.itely: minor fixes (mostly tab->space).
5114
5115 2006-01-28  Jan Nieuwenhuizen  <janneke@gnu.org>
5116
5117         * input/mutopia/claop.py: Update.
5118
5119 2006-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5120
5121         * input/regression/completion-heads.ly (texidoc): fix.
5122
5123         * lily/staff-symbol-referencer.cc (on_staff_line): idem.
5124
5125         * lily/tie-formatting-problem.cc
5126         (set_ties_config_standard_directions): use abs iso fabs for ints.
5127
5128         * Documentation/topdocs/INSTALL.texi (Top): document ncsb requirement.
5129
5130         * mf/feta-bolletjes.mf (overdone_heads): solfa_noteheight, a
5131         little less than noteheight, to prevent overlaps in chords.
5132
5133         * lily/note-collision.cc (check_meshing_chords): wipe upper FA
5134         head, and fudge stem-attachment.
5135
5136         * scm/lily-library.scm (not): define hash-for-each for guile 1.6
5137
5138         * lily/slur-scoring.cc (get_best_curve): handle opt_idx < 0 case.
5139
5140 2006-01-27  Jan Nieuwenhuizen  <janneke@gnu.org>
5141
5142         * lily/main.cc (main): Debugging aid: catch exceptions.
5143
5144         * flower/std-string.cc (to_string): Robustification.  Fixes midi
5145         output with std::string.
5146
5147 2006-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5148
5149         * Documentation/topdocs/INSTALL.texi (Top): remove libkpathsea notes.
5150
5151 2006-01-26  Jan Nieuwenhuizen  <janneke@gnu.org>
5152
5153         * Fix -DSTRING_UTILS_INLINED.
5154
5155 2006-01-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5156
5157         * VERSION (PATCH_LEVEL): release 2.7.29
5158
5159         * lily/relocate.cc (setup_paths): mingw uses std string too.
5160
5161         * lily/*.cc: various fixes for substr(ARG).
5162
5163         * lily/sustain-pedal.cc (print): 
5164
5165         * flower/file-name.cc (slashify): use std strings.
5166
5167         * flower/string-convert.cc: remove publib.h
5168
5169         * scm/define-markup-commands.scm (verbatim-file): new markup
5170         command \verbatim-file
5171
5172         * Documentation/topdocs/NEWS.tely: fixup URLs
5173
5174         * input/regression/alignment-vertical-manual-setting.ly (Module):
5175         new file.
5176
5177         * lily/align-interface.cc (align_elements_to_extents): overwrite
5178         translations with numbers in alignment-offsets from left bound
5179
5180         * scm/page.scm (make-page-stencil): read X-offset from paper-system.
5181         (page-translate-systems): new function: take into account Y-offset.
5182
5183         * Documentation/topdocs/NEWS.tely (Top): document new features.
5184
5185         * input/regression/page-layout-manual-position.ly (Module): new
5186         file.
5187
5188 2006-01-26  Jan Nieuwenhuizen  <janneke@gnu.org>
5189
5190         * flower/file-path.cc (path::parse_path): Oops.
5191
5192         * Finish std::string interface.  For now, use std:: marker
5193         throughout for easy s/r.
5194
5195 2006-01-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5196
5197         * Documentation/user/putting.itely (Score is a single musical
5198         expression): typo.
5199         (Score is a single musical expression): more typos.
5200
5201         * scm/page.scm (annotate-space-left): thinko.
5202         (annotate-page): more thinkos.
5203
5204 2006-01-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5205
5206         * scm/layout-page-layout.scm (write-page-breaks): record tweaks
5207         for different \score blocks separately.
5208         (post-process-pages): put write-page-layout into paper block.
5209
5210         * lily/output-def.cc (get_parser): new file.
5211
5212         * lily/output-def-scheme.cc (LY_DEFINE): ly:output-def-parser, new
5213         file.
5214
5215         * lily/include/output-def.hh (class Output_def): add parser_ member.
5216
5217         * input/regression/page-layout-twopass.ly (Module): new file.
5218
5219         * scm/lily.scm: remove cpp hack.
5220
5221         * lily/lyric-engraver.cc (get_voice_to_lyrics): use NPOS everywhere.
5222
5223 2006-01-25  Jan Nieuwenhuizen  <janneke@gnu.org>
5224
5225         * GNUmakefile.in (c-clean): New target.
5226
5227         * flower/include/std-string.hh: String/std::string compatibility:
5228         Use NPOS for `not found' (iso -1), use ssize for length () and pos
5229         type.
5230
5231         * flower/rational.cc: 
5232         * flower/include/rational.hh: 
5233
5234         * flower/offset.cc: 
5235         * flower/include/offset.hh: 
5236
5237         * flower/interval.cc: 
5238         * flower/include/interval.hh: 
5239
5240         * flower/string-convert.cc: 
5241         * flower/include/string-convert.hh: Use std::string [interface].
5242         Update callers.
5243
5244 2006-01-25  Heikki Junes  <hjunes@cc.hut.fi>
5245
5246         * Documentation/index.html.in: clean up.
5247
5248 2006-01-25  Graham Percival  <gpermus@gmail.com>
5249
5250         * Documentation/user/putting.itely: another new untested doc section.
5251
5252 2006-01-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5253
5254         * scm/layout-page-layout.scm (write-page-breaks): write
5255         \spacingTweaks #ALIST. Handle grace timing.
5256
5257         * scm/: more imports.
5258
5259         * scm/page.scm (make-page): add footer/header.
5260         (annotate-space-left): revise: only take page argument.
5261         (layout->page-init): new function.
5262
5263         * scm/layout-page-layout.scm (write-page-breaks): preliminary
5264         version of the system/spacing/linebreak hack writing to the output
5265
5266         * lily/prob-scheme.cc (LY_DEFINE): take optional 'key val args in
5267         ly:make-prob.
5268
5269         * lily/grob-scheme.cc (LY_DEFINE): ly:spanner-get-bound ->
5270         ly:spanner-bound
5271
5272 2006-01-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5273
5274         * scm/stencil.scm (annotate-y-interval): move from layout-page-layout.scm
5275
5276         * scm/paper-system.scm (paper-system-annotate): new file. Handle paper-system.
5277
5278         * scm/layout-page-layout.scm (optimal-page-breaks): move all page
5279         handling to page.scm
5280
5281         * lily/prob-scheme.cc (LY_DEFINE): new file.
5282         (LY_DEFINE): functions ly:make-prob , ly:prob-type? , ly:prob-(set-)property(!)
5283
5284         * lily/music-scheme.cc (LY_DEFINE): rewrite get/set property using
5285         prob functions.
5286
5287         * lily/music.cc (derived_mark): derive Music from Prob.
5288
5289         * lily/paper-system.cc (LY_DEFINE): derive from Prob.
5290
5291         * lily/prob.cc (Module): Implement Prob (Property Object), object
5292         with shared and r/w property alists.  
5293
5294         * lily/include/prob.hh (Module): new file. Declare Prob.
5295
5296         * flower/string.cc: remove is_empty().
5297
5298         * flower/include/string.hh (class String): remove String:: qualifier.
5299
5300         * buildscripts/analyse-cxx-log.py: new file. Read compile log to
5301         substitute appropriate functions.
5302
5303         * flower/include/string.hh (class String): remove to_str0 and
5304         is_empty(). S&R everywhere.
5305
5306 2006-01-23  Graham Percival  <gpermus@gmail.com>
5307
5308         * Documentation/user/basic-notation.itely: add hairpin
5309         after-linebreak tweak to commonprop.
5310
5311         * Documentation/user/putting.itely: added two new sections.
5312
5313 2006-01-23  Jan Nieuwenhuizen  <janneke@gnu.org>
5314
5315         * flower/international.cc: 
5316         * flower/include/international.hh: 
5317
5318         * flower/getopt-long.cc: 
5319         * flower/include/getopt-long.hh: Use std::string [interface].
5320         Update callers.
5321
5322         * flower/include/std-string.hh: Oops, bugfix for --disable-std-string.
5323
5324         * stepmake/stepmake/executable-rules.make: Add dependency on
5325         module libraries.
5326
5327 2006-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
5328
5329         * flower/file-path.cc: 
5330         * flower/include/file-path.hh: Use std::string [interface].
5331         Update callers.
5332
5333         * flower/direction.cc: 
5334         * flower/axis.cc: Unused.  Remove.
5335
5336         * configure.in (--enable-std-string): New option.
5337
5338         * flower/std-string.cc: 
5339         * flower/include/std-string.hh: New file.
5340
5341         * flower/file-name.cc[STD_STRING]:
5342         * flower/include/file-name.hh[STD_STRING]: Use it.  Update callers.
5343
5344 2006-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5345
5346         * scm/output-svg.scm (placebox): no GNU coding standards in SVG output. 
5347
5348         * scm/define-markup-commands.scm (with-dimensions):
5349         with-dimensions markup command.
5350
5351         * input/test/font-table.ly: use it.
5352
5353         * lily/open-type-font.cc (glyph_list): new function.
5354
5355         * lily/open-type-font-scheme.cc (LY_DEFINE): ly:otf-glyph-list function.
5356
5357         * lily/ttf.cc: remove ly:font-glyph-list scheme function
5358
5359 2006-01-22  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5360
5361         * ly/music-functions-init.ly (parallelMusic): new music function
5362         for parallel music entry.
5363
5364         * scm/define-music-properties.scm (all-music-properties): new
5365         'void music property
5366
5367         * scm/music-functions.scm (ly:music-message): make public, to be
5368         used in music function definitions
5369
5370         * scm/lily-library.scm (collect-music-for-book): discard music
5371         when the 'void property is set.
5372
5373 2006-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5374
5375         * lily/ttf.cc (LY_DEFINE): store name before destroying face.
5376
5377         * mf/GNUmakefile: idem.
5378
5379         * buildscripts/mf-to-table.py (help): excise fetaXXlist.ly support.
5380
5381         * stepmake/bin/install.py (dest): Only chmod/chown just created directories
5382
5383         * Documentation/user/notation-appendices.itely (The Feta font):
5384         use it.
5385
5386         * input/test/font-table.ly: new file. Generate font table within lily.
5387
5388         * Documentation/user/notation-appendices.itely (The Feta font):
5389         use new font-table.ly file. 
5390
5391         * stepmake/stepmake/install-out-targets.make
5392         (local-install-outfiles): only create directory if
5393         $(INSTALLATION_OUT_DIR) is defined. This fixes install on Gentoo.
5394
5395 2006-01-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5396
5397         * lily/ttf.cc (LY_DEFINE): new function ly:font-glyph-list.
5398
5399         * VERSION (PACKAGE_NAME): release 2.7.28
5400
5401         * scm/framework-ps.scm (write-preamble): use it to pick exactly
5402         the right font from a Mac dfont.
5403         (write-preamble): don't forget directory, only look at files.
5404
5405         This fixes problems with TTF files in dfonts that don't match
5406         their PostScript names.
5407          
5408         * lily/ttf.cc (LY_DEFINE): ly:ttf-ps-name: new routine to extract
5409         PS name from TTF font.
5410
5411         * input/regression/tie-manual.ly: document new feature.
5412
5413         * Documentation/topdocs/NEWS.tely (Top): add tie NEWS.
5414
5415         * VERSION (MY_PATCH_LEVEL): bump to .28
5416
5417         * Documentation/user/basic-notation.itely (Ties): add tie examples
5418         refs.
5419
5420         * lily/tie-formatting-problem.cc (score_ties_configuration):
5421         symmetry penalties for outer ties.
5422
5423 2006-01-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5424
5425         * lily/tie-formatting-problem.cc (generate_configuration) 
5426         (set_manual_tie_configuration): skip non-pair manual
5427         tie-configuration, so you can set individual ties as
5428
5429           #'tie-configuration = #'((7 . 1) #t (-3 . 1))
5430
5431         * input/regression/tie-chord.ly: use generateTiePattern to
5432         simplify file.
5433
5434         * lily/tie-formatting-problem.cc (peak_around): new function.
5435         (score_configuration): use sliding criterion for staff line collisions. 
5436         (score_configuration): idem for dot collisions.
5437         (generate_configuration): use separate stem_gap for gap to stem.
5438
5439         * lily/include/tie-formatting-problem.hh (struct Tie_details):
5440         separate penalty factors for x and y distance.
5441         (struct Tie_details): separate penalties for tip and center line collisions.
5442
5443 2006-01-19 Han-Wen Nienhuys  <hanwen@xs4all.nl>
5444
5445         * lily/tie-formatting-problem.cc (generate_configuration): make
5446         large ties avoid stafflines in the horizontal section.
5447         (score_configuration): use softcoded penalties
5448         (score_aptitude): idem.
5449
5450         * lily/tie-helper.cc (from_grob): softcode tie details
5451
5452         * lily/staff-symbol-referencer.cc (on_staff_line): new function
5453
5454         * lily/staff-symbol-referencer.cc (on_line): rename from
5455         on_staffline 
5456
5457 2006-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5458
5459         * ly/music-functions-init.ly: remove duplicate tag.
5460
5461         * lily/include/*.hh: GCC 4.1 fixes.
5462
5463 006-01-16  Erlend Aasland  <erlenda@gmail.com>
5464
5465         * Documentation/user/global.itely: fix typos; @bugs -> @refbugs
5466
5467         * scm/define-music-types.scm: fix bug in desc. string
5468         for OverrideProperty
5469
5470 2006-01-15 Erik Sandberg  <mandolaerik@gmail.com>
5471
5472         * scripts/lilypond-book.py: bugfix
5473
5474         * scm/define-music-types.scm: fix typos.
5475
5476 2006-01-14  Graham Percival  <gpermus@gmail.com>
5477
5478         * Documentation/user/ basic-notation.itely, global.itely,
5479         advanced-notation.itely, instrument-notation.itely: small
5480         additions (bugs and commonly tweaked properties).
5481
5482 2006-01-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5483
5484         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): generic
5485         detection of mingw build.
5486         (MINGW_BUILD): opps.
5487
5488 2006-01-12  Jan Nieuwenhuizen  <janneke@gnu.org>
5489
5490         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Add
5491         i686-mingw32.
5492
5493 2006-01-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5494
5495         * scm/music-functions.scm (skip->rest): add skip->rest
5496
5497 2006-01-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5498
5499         * lily/font-config.cc (init_fontconfig): call FcConfigBuildFonts()
5500         explicitly.
5501
5502         * lily/font-config-scheme.cc (LY_DEFINE): also display font and
5503         config dirs. Aids debugging. 
5504         (display_config): also display config files.
5505
5506 2006-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5507
5508         * VERSION: release 2.7.27
5509
5510         * lily/bar-line.cc (calc_bar_size): inspect staff->extent (Y_AXIS)
5511         for determining bar size.
5512
5513         * lily/staff-symbol.cc (print): place lines at distance line-positions
5514
5515         * scm/define-grob-properties.scm (all-user-grob-properties): add
5516         line-positions.
5517
5518         * lily/staff-symbol.cc (height): new function.
5519
5520         * input/regression/staff-line-positions.ly:  new file.
5521
5522 2006-01-06  Graham Percival  <gpermus@gmail.com>
5523
5524         * input/test/add-staccato.ly: remove reference to old file.
5525
5526 2006-01-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5527
5528         * scripts/lilypond-book.py (invokes_lilypond): allow . in path to
5529         lilypond binary too.
5530
5531 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5532
5533         * make/mutopia-rules.make (Module): use LILYPOND_BINARY
5534
5535 2006-01-06  Jan Nieuwenhuizen  <janneke@gnu.org>
5536
5537         * scripts/midi2ly.py: Bugfix: Declare datadir.
5538
5539         * make/ly-rules.make:
5540         * make/mutopia-rules.make: Use LILYPOND_BINARY (WAS: LILYPOND, but
5541         that seems to be gone). Fixes make web.
5542
5543         * The grand 2005-2006 replace.
5544
5545         * VERSION (MY_PATCH_LEVEL): Stay on .26 for now.
5546
5547 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5548
5549         * make/lilypond-vars.make: set LILYPOND_BINARY variable
5550         (LILYPOND_BOOK_LILYPOND_FLAGS): new variable
5551         LILYPOND_BOOK_LILYPOND_FLAGS to hold system dependent settings,
5552         like -dgs-font-load.
5553
5554         * Documentation/user/GNUmakefile ($(outdir)/interfaces.itexi):
5555         remove absolute path to lilypond binary.
5556         
5557 2006-01-05 Pedro Kroeger    <kroeger@pedrokroeger.net>
5558
5559         * configure.in (NCSB_DIR): fix --with-ncsb-dir option.
5560
5561 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5562
5563         * make/lilypond-vars.make: support LILYPOND_EXTERNAL_BINARY variable.
5564
5565         * mf/GNUmakefile: remove broken dvips map symlink.
5566
5567 2006-01-04  Jan Nieuwenhuizen  <janneke@gnu.org>
5568
5569         * lily/main.cc: 
5570         * configure.in: Cosmetic fixes.
5571
5572 2006-01-04  Mats Bengtsson  <mabe@s3.kth.se>
5573
5574         * Documentation/user/music-glossary.tely (Pitch names): Added
5575         Spanish pitch names and durations, thanks to Ernesto Gancedo
5576
5577 2006-01-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5578
5579         * scm/lily.scm (define-scheme-options): use quasi-quote for option
5580         init. Fixes verbose printing of .scm files.
5581
5582         * stepmake/aclocal.m4: add spaces before - options.
5583         
5584 2006-01-03  Jan Nieuwenhuizen  <janneke@gnu.org>
5585
5586         * lily/relocate.cc (setup_paths): Bugfix: do not store result
5587         of path search in local block variable.
5588
5589 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5590
5591         * configure.in (NCSB_DIR): --enable-ncsb-dir
5592         (LINK_GXX_STATICALLY): denko.
5593
5594         * mf/GNUmakefile ($(NCSB_TTFS)): NCSB_DIR iso. NCSB_PATH. 
5595
5596         * configure.in (LINK_GXX_STATICALLY): --enable-ncsb-path option. 
5597         use locate to find c059033l.pfb. 
5598         
5599 2006-01-02  Jan Nieuwenhuizen  <janneke@gnu.org>
5600
5601         * lily/tie-formatting-problem.cc
5602         (problem::generate_base_chord_configuration): Use my_round (was
5603         round).
5604
5605         * lily/source-file.cc (file::get_counts)[!HAVE_MBRTOWC]: Bugfix,
5606         do not invoke mbrtowc.
5607
5608         * lily/relocate.cc (setup_paths): Add more debugging verbosity.
5609
5610 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5611
5612         * scm/lily.scm (lilypond-all): oops. remove debugging hack.
5613
5614 2005-01-02  Heikki Junes  <hjunes@cc.hut.fi>
5615
5616         * Documentation/user/invoking.itely (svg): revise.
5617
5618 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5619
5620         * lily/lexer.ll: use sourcefilename iso. renameinput.
5621
5622 2006-01-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5623
5624         * mf/GNUmakefile ($(NCSB_TTFS)): revise rule. Create
5625         <PostScriptName>.ttf instead of c059XXXttf.
5626
5627         * lily/program-option.cc (LY_DEFINE): special support for
5628         --verbose, so it works before option init too.
5629  
5630         * mf/GNUmakefile (local-install): oops.
5631
5632         * lily/lyric-hyphen.cc (print): oops.
5633
5634         * buildscripts/pfx2ttf.fontforge: new file.
5635         
5636         * mf/GNUmakefile (NCSB_PATH): add vars for NCSB.
5637         ($(outdir)/%.ttf): new rule. 
5638
5639         * scm/define-grobs.scm (all-grob-descriptions): add font-interface
5640         to LyricHyphen.
5641
5642         * lily/lyric-hyphen.cc (print): multiply hyphen height by
5643         font-size
5644
5645 2005-12-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5646
5647         * VERSION: release 2.7.26
5648         
5649         * mf/GNUmakefile (install-fc-cache): remove old font.cache-1 files.
5650
5651 2005-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5652
5653         * lily/font-config.cc (init_fontconfig): verbosity.
5654
5655         * THANKS: add Muziekacademie Lede. 
5656
5657         * scripts/musicxml2ly.py (print_voice_definitions): new function 
5658         (print_score_setup): new function
5659         (convert): read part definition to output staves properly.
5660
5661         * python/musicxml.py (Measure.get_notes): new class. Wrap lists of
5662         Music_xml notes.
5663
5664         * python/musicexp.py (Output_printer.__init__): use _ in data
5665         members.
5666         (Output_printer.unformatted_output): new function: no formatting,
5667         but count braces.
5668         (Duration.get_length): remove isinstance() checks for
5669         Output_printer everywhere.
5670
5671         * input/regression/lyrics-bar.ly (texidoc): add
5672         Separating_line_group_engraver.
5673
5674 2005-12-29  Jan Nieuwenhuizen  <janneke@gnu.org>
5675
5676         * lily/relocate.cc (framework_relocation): New function,
5677         factored from set_relocation ().
5678         (prefix_relocation): Rename from set_relocation ().
5679         (setup_paths): Use it.
5680
5681 2005-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5682
5683         * scm/*.scm: use LEFT/RIGHT/UP/DOWN etc. iso. magical
5684         numbers. Patch by Erlend Aasland.
5685
5686 2005-12-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5687
5688         * lily/font-config.cc (init_fontconfig): print warning if cache
5689         file is not existant.
5690
5691         * lily/main.cc: don't use #ifdef but #if
5692
5693 2005-12-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5694
5695         * lily/grob-property.cc (internal_set_property): don't abort on
5696         calculation-in-progress.
5697
5698         * lily/beam.cc (get_default_dir): robustness: don't divide by zero.
5699
5700         * lily/tuplet-bracket.cc (calc_control_points): oops: typo. Read
5701         connect-to-neighbor property not connect-to-other
5702
5703         * lily/program-option.cc (LY_DEFINE): remove Protected_scm global variable.
5704         (LY_DEFINE): oops. don't forget protection.
5705
5706         * flower/parse-afm.cc (Module): strip AFM handling completely.
5707
5708         * lily/stencil-expression.cc: idem.
5709
5710         * lily/grob-interface-scheme.cc (LY_DEFINE): idem.
5711
5712         * lily/function-documentation.cc (ly_add_function_documentation):
5713         use static member iso. Protected_scm
5714
5715         * lily/main.cc: use ifdef ARGV0_RELOCATION iso. MINGW
5716
5717         * config.make.in (prefix): remove HAVE_KPATHSEA_SO
5718
5719 2005-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
5720
5721         * lily/relocate.cc (set_env_dir): New function.
5722         (set_relocation): Use it to fix setting PANGO_PREFIX.
5723
5724 2005-12-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5725
5726         * input/regression/stem-direction-context.ly: remove rest.
5727
5728         * lily/melody-engraver.cc (process_music): restart for bar lines.
5729         (acknowledge_slur): restart for slurs.
5730
5731 2005-12-27  Heikki Junes  <hjunes@cc.hut.fi>
5732
5733         * Documentation/user/invoking.itely: describe how to view SVG 
5734         output using Inkscape which replace embedded fonts with OTF fonts.
5735
5736 2005-12-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5737
5738         * lily/relocate.cc (set_relocation): set PANGO_PREFIX
5739
5740 2005-12-23  Jan Nieuwenhuizen  <janneke@gnu.org>
5741
5742         * lily/melody-engraver.cc (class Melody_engraver): Remove lying
5743         comment.
5744
5745 2005-12-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5746
5747         * VERSION (PACKAGE_NAME): release 2.7.25
5748
5749         * Documentation/topdocs/NEWS.tely (Top): document new feature.
5750
5751         * input/regression/stem-direction-context.ly: new file.
5752
5753         * lily/relocate.cc (set_relocation): add PANGO_PREFIX
5754
5755         * lily/melody-engraver.cc (acknowledge_stem): restart MelodyItem
5756         on rest.
5757
5758         * ly/engraver-init.ly: add Melody_engraver
5759
5760         * lily/beam.cc (calc_direction): use default-direction
5761         iso. get_default_direction()
5762
5763         * scm/define-grob-properties.scm (all-user-grob-properties): add
5764         default-direction property.
5765
5766         * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem.
5767
5768         * lily/stem.cc (calc_default_direction): remove
5769         Stem::get_default_direction, use default-direction with callback
5770         instead.
5771
5772         * lily/melody-spanner.cc (calc_neutral_stem_direction): 
5773
5774         * lily/melody-engraver.cc: new file. Acknowledge stems for
5775         interpolated stem directions. 
5776
5777         * lily/melody-spanner.cc: new file. Interpolate stem directions.
5778
5779         * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem
5780
5781         * lily/slur-configuration.cc (fit_factor): more robust check for
5782         point in curve X-extent.
5783
5784         * lily/slur.cc (outside_slur_callback): return offset_scm, not 0.
5785         (outside_slur_callback): check for 'outside avoidance.
5786
5787         * lily/slur-configuration.cc (score_extra_encompass): don't use
5788         bound->column() == avoid->column() for checking extents, as this
5789         doesn't work for accidentals. 
5790
5791         * lily/slur-engraver.cc (acknowledge_extra_object): remove
5792         DynamicText hardcoding.
5793
5794         * lily/slur-scoring.cc (enumerate_attachments): robustness: don't
5795         crash if bound stem is NULL
5796
5797         * lily/piano-pedal-performer.cc: patch by MWD for enabling piano
5798         pedals.
5799
5800 2005-12-22  Graham Percival  <gpermus@gmail.com>
5801
5802         * scm/define-markup-commands.scm: typo.  @code{\raise}
5803         => @code{\\raise}.
5804
5805         * darwin.patch: now used again, includes a
5806         required patch from fink.
5807
5808 2005-12-21  Heikki Junes  <hjunes@cc.hut.fi>
5809
5810         * po/TODO: mention gtranslator along with kbabel.
5811         * po/fi.po: update translations.
5812
5813 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
5814
5815         * lily/relocate.cc (setup_paths): Bugfix.
5816
5817 2005-12-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5818
5819         * lily/slur-configuration.cc (score_extra_encompass): don't use
5820         "avoid" choice for avoid-slur.
5821
5822         * stepmake/bin/install.py (dest): don't create existing dir.
5823
5824 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
5825
5826         * stepmake/bin/install.py: Remove file before copying.
5827
5828         * config.make.in: 
5829         * stepmake/aclocal.m4: Do not substitute INSTALL.
5830
5831 2005-12-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5832
5833         * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
5834         depend on link-tree.
5835
5836         * lily/relocate.cc (setup_paths): only check path for non-absolute
5837         dir without directory part.
5838
5839         * flower/file-name.cc (is_absolute):  new method.
5840         (is_absolute): check root_ too.
5841
5842 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
5843
5844         * lily/relocate.cc (setup_paths) [__MINGW32__]: Comment-out broken
5845         relocation code.  Oops, don't comment out too much.
5846
5847         * stepmake/stepmake/generic-vars.make (INSTALL): Assign INSTALL_PY
5848         iso itself.
5849
5850         * lily/relocate.cc [HAVE_GETTEXT]: Include libintl.h.  Fixes mingw
5851         compile.
5852
5853 2005-12-20  Jan Nieuwenhuizen  <janneke@gnu.org>
5854
5855         * .cvsignore: Add install-sh.
5856
5857         * autogen.sh (srcdir): Typo.
5858
5859 2005-12-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5860
5861         * autogen.sh (srcdir): urg. Touch install-sh.
5862
5863         * stepmake/bin/install-sh (Module): remove.
5864
5865         * stepmake/stepmake/generic-vars.make (INSTALL): add $(INSTALL).
5866
5867         * lily/include/relocate.hh: new file.
5868
5869         * lily/relocate.cc: new file. Contain relocation logic.
5870
5871         * lily/main.cc (setup_paths): fix: LILYPOND_RELOCATE_PREFIX.
5872         (main): read LILYPOND_VERBOSE as the first thing.
5873
5874         * stepmake/aclocal.m4: remove INSTALL variable.
5875
5876         * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
5877         separate target for making font symlinks.
5878         (documentation-dir): use $(if $(findstring )) for switching off
5879         Documentation.
5880
5881         * stepmake/stepmake/help2man-vars.make (OUT_DIST_FILES): only do
5882         something if DOCUMENTATION is no.
5883
5884 2005-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5885
5886         * VERSION: release 2.7.24
5887
5888         * lily/script-column-engraver.cc (stop_translation_timestep):
5889         delay adding to script-column.
5890
5891         * lily/tuplet-bracket.cc (print): suicide if no control-points. 
5892
5893         * python/convertrules.py (conv): rule for number-visibility
5894
5895         * lily/slur-configuration.cc (score_extra_encompass): different
5896         distance measure for avoid and inside avoidance.
5897         (score_extra_encompass): use 1/(distance+eps) as penalty.
5898
5899         * lily/slur-scoring.cc (generate_avoid_offsets): use 'inside
5900         encompass objects for generating slur curves.
5901
5902         * lily/slur.cc: use details iso. slur-details property.
5903
5904         * input/regression/slur-tuplet.ly: new file.
5905
5906         * lily/slur-engraver.cc (acknowledge_tuplet_number): new function.  
5907
5908         * flower/include/offset.hh (class Offset): new operator /=
5909
5910         * lily/tuplet-number.cc (print): new file, new interface.
5911
5912         * scm/define-grob-properties.scm (all-user-grob-properties):
5913         remove number-visibility property.
5914
5915         * lily/tuplet-bracket.cc (calc_control_points): new function
5916         (calc_connect_to_neighbors): new function.
5917         (print): remove text handling for tuplet numberdef.
5918
5919         * lily/tuplet-engraver.cc (struct Tuplet_description): create
5920         TupletNumbers too. 
5921
5922         * lily/lily-guile.cc (robust_scm2booldrul): new function
5923
5924         * scm/define-grobs.scm (all-grob-descriptions): new grob TupletNumber
5925
5926         * lily/tuplet-bracket.cc (calc_position_and_height): use
5927         staff-padding to control whether tuplet brackets are over staves.
5928
5929         * lily/grob.cc (suicide): clear dim_caches_.
5930
5931         * lily/dimension-cache.cc (clear): new function.
5932
5933         * lily/grob.cc (extent): swap order of min-extent and extent
5934         calculations. This fixes hara kiri staves. 
5935
5936 2005-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
5937
5938         * lily/main.cc: Nitpick: relocation is not based on path, but on
5939         directory (location).
5940
5941 2005-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5942
5943         * lily/main.cc (setup_paths): read LILYPOND_RELOCATE_PREFIX
5944
5945         * stepmake/stepmake/install-targets.make (local-uninstall): idem.
5946
5947         * stepmake/stepmake/install-out-targets.make (local-install-outfiles): idem.
5948
5949         * stepmake/stepmake/help2man-targets.make (install-help2man): idem.
5950
5951         * stepmake/stepmake/generic-vars.make (Module): idem.
5952
5953         * stepmake/stepmake/executable-targets.make (default): use it.
5954
5955         * stepmake/bin/install.py (create_dir): new file. Replace install-sh.
5956
5957         * make/GNUmakefile: don't install make rules.
5958
5959         * lily/main.cc (setup_paths): don't inspect $PATH for argv0 with
5960         slashes.
5961         (prepend_env_path): more verbosity.
5962
5963 2005-12-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5964
5965         * GNUmakefile.in: add dir argument for find command.
5966
5967         * lily/parser.yy (bass_figure): set_spot() for bass figures. This
5968         fixes weird line numbers for point & click.
5969
5970         * lily/source-file.cc (get_counts): init line/column/char counts.
5971
5972 2005-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5973
5974         * lily/main.cc: remove ARGV0_RELOCATION, instead use --relocate.
5975
5976 2005-12-16  Graham Percival  <gpermus@gmail.com>
5977
5978         * Documentation/user/basic-notation.itely, advanced-notation.itely:
5979         minor fixes from Fredric.  Thanks!
5980
5981 2005-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5982
5983         * ly/music-functions-init.ly: add \bar and \clef music function 
5984
5985         * lily/lily-lexer.cc: idem.
5986
5987         * lily/parser.yy (FIXME): remove BAR and CLEF.
5988
5989 2005-12-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5990
5991         * Documentation/topdocs/NEWS.tely (Top): doc string argument change.
5992
5993         * lily/parser.yy (Generic_prefix_music_scm): allow strings as
5994         function arguments too
5995
5996         * lily/main.cc (set_relocation): new function.
5997
5998         * scripts/musicxml2ly.py (convert): add \version
5999
6000         * lily/tie.cc: remove get_default_attachments()
6001
6002         * VERSION (PACKAGE_NAME): release 2.7.23
6003         
6004         * lily/chord-tremolo-engraver.cc (acknowledge_stem): use
6005         ultimate_music_cause(). This fixes core dumps in unfold-all-repeats.ly
6006
6007         * Documentation/topdocs/NEWS.tely (Top): document new feature.
6008
6009         * lily/tie-formatting-problem.cc (score_ties): new function
6010         (get_variations): new function. Try flipping dirs for collisions.
6011         (generate_optimal_chord_configuration): new function. 1-opt search
6012         for better configuration.
6013
6014         * lily/tie-configuration.cc: new file.
6015
6016         * lily/tie.cc: junk Tie::get_configuration()
6017
6018         * lily/tie-formatting-problem.cc (score_ties_aptitude): new function.
6019         (score_ties_configuration): new function.
6020         (generate_ties_configuration): new function.
6021         (generate_base_chord_configuration): new function.
6022         (set_ties_config_standard_directions): Move body from tie-column-format.cc 
6023         (set_manual_tie_configuration): Move body from tie-column-format.cc 
6024
6025         * input/regression/tie-dot.ly: new file.
6026
6027         * lily/tie-formatting-problem.cc (score_configuration): score
6028         tie/dot collisions.
6029
6030         * lily/tie-helper.cc (get_transformed_bezier): new function
6031
6032         * Documentation/topdocs/NEWS.tely (Top): strip out-www.
6033
6034         * stepmake/stepmake/python-module-vars.make (SHARED_FLAGS): use
6035         -undefined suppress iso. -framework Python 
6036
6037         * scm/define-grobs.scm (all-grob-descriptions): set
6038         springs-and-rods (thanks Joe Neeman!)
6039
6040 2005-12-12  Nicolas Sceaux  <nicolas.sceaux@free.fr>
6041
6042         * input/no-notation/display-lily-tests.ly (test): 
6043         * scm/display-lily.scm (tag->lily-string): the syntax for tags has
6044         changed from \tag #'(a b) to \tag #'a \tag #'b
6045
6046 2005-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6047
6048         * Documentation/topdocs/NEWS.tely: strip out-www.
6049
6050         * lily/include/grob-interface.hh: include lily-guile.hh not libguile.h
6051
6052         * config.make.in (AR): add AR and RANLIB
6053
6054         * flower/libc-extension.cc: include cassert
6055
6056         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): more robust
6057         darwin check.
6058
6059 2005-12-11  Graham Percival  <gpermus@gmail.com>
6060
6061         * stepmake/stepmake/generic-vars.make: define DARWIN_BUILD.
6062
6063         * stepmake/stepmake/python-modules-vars.make: define
6064         SHARED_FLAGS for OSX.  Thanks Johannes Schindelin!
6065
6066         * THANKS: added Johannes Schindelin.
6067
6068 2005-12-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6069
6070         * python/midi.c (pymidi_parse): use memcmp() iso. strcmp().
6071
6072         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
6073         Span_arpeggio_engraver, add Tweak_engraver to Score context. 
6074
6075         * lily/parser.yy: reorganize file layout.
6076
6077         * ly/music-functions-init.ly: add tweak music function.
6078
6079         * lily/grob-info.cc (ultimate_music_cause): new function:
6080         recursively lookup causes. 
6081
6082         * lily/parser.yy (chord_body_element): allow music functions for
6083         post-events, allow music functions for chord elements. 
6084  
6085         * lily/font-config-scheme.cc (display_fontset): add cast.
6086
6087         * python/convertrules.py (FatalConversionError.sub_syms): \tag
6088         #'(a b) -> \tag #'a \tag #'b rule.
6089
6090         * python/musicexp.py (Output_printer.dump_version): new function
6091
6092 2005-12-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6093
6094         * lily/parser.yy (FIXME): remove \tag
6095         (FIXME): remove tag_music() function.
6096
6097         * lily/lily-lexer.cc: remove \tag
6098
6099         * ly/music-functions-init.ly: define music-function "tag"
6100
6101         * lily/parser.yy (chord_body_element): allow tags in chord bodies.
6102
6103 2005-12-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6104
6105         * VERSION (PATCH_LEVEL): release 2.7.22
6106
6107         * input/regression/lyric-hyphen-retain.ly: renew.
6108
6109         * scm/define-grobs.scm (all-grob-descriptions): add LyricSpace
6110         grob
6111
6112         * lily/lyric-hyphen.cc (set_spacing_rods): use minimum-distance
6113         iso. minimum-length property for rods.
6114
6115         * lily/hyphen-engraver.cc (acknowledge_lyric_syllable): create
6116         LyricSpace item to keep lyrics spaced apart.
6117
6118         * ly/engraver-init.ly: remove Separating_line_group_engraver
6119
6120         * Documentation/user/music-glossary.tely: do setfilename before
6121         music-glossary.
6122
6123 2005-12-07  Heikki Junes  <hjunes@cc.hut.fi>
6124
6125         * Documentation/user/lilypond-book.itely: use `,´ after xref:
6126         See xref documentation, for example.
6127
6128 2005-12-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6129
6130         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): use
6131         pending_skip iso. ly_voice[-1]
6132         (main): add if __main__ for debugging.
6133
6134         * python/musicxml.py (Accidental.__init__): new class.
6135
6136         * scripts/musicxml2ly.py (progress): new function
6137         (musicxml_key_to_lily): don't barf on modeless keys.
6138         (create_skip_music): new function.
6139         (musicxml_spanner_to_lily_event): new function. Handle beams too.
6140         (musicxml_note_to_lily_main_event): new function.
6141
6142         * python/musicexp.py (Music.__init__): add comment field.
6143         (NestedMusic.append): new routine.
6144         (SequentialMusic.print_ly): print comment.
6145         (ArpeggioEvent.ly_expression): new class
6146         (BeamEvent.ly_expression): new class
6147         (NoteEvent.__init__): support for cautionary/forced accs.
6148
6149         * lily/lookup.cc (slur): normal order for array loop.
6150
6151         * scm/framework-ps.scm (dump-stencil-as-EPS): set left X of bbox
6152         to 0.0.
6153
6154         * ly/engraver-init.ly: set bar-size, so bar-lines aren't
6155         collapsed.
6156
6157 2005-12-06 Erik Sandberg  <mandolaerik@gmail.com>
6158
6159         * scm/music-functions.scm: Make phrasing slurs follow voice direction
6160
6161         * scripts/lilypond-book.py: Introduce option
6162             --preserve-line-breaks, for usage with srcltx
6163
6164 2005-12-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6165
6166         * scm/output-lib.scm (print-circled-text-callback): draw circle
6167         around text using make-circle-markup.
6168
6169         * Documentation/user/*: strip out-www from file names.
6170
6171 2005-12-05  Heikki Junes  <hjunes@cc.hut.fi>
6172
6173         * Documentation/user/lilypond.tely (direntry): remove empty lines;
6174         fixes invalid info entry issue with makeinfo 4.8 in debian sid.
6175
6176 2005-12-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6177
6178         * Documentation/user/GNUmakefile: idem.
6179
6180         * Documentation/user/macros.itexi: strip out-www
6181
6182         * python/rational.py: python 2.3 compat.
6183
6184         * VERSION (PATCH_LEVEL): release 2.7.21
6185
6186         * scripts/musicxml2ly.py (NonDentedHeadingFormatter.format_headi):
6187         option formatting, lilypond style.
6188
6189         * python/musicexp.py: grab from Ikebana: a library for composing
6190         ly music expressions. 
6191         (Output_printer): class for advanced .ly printing.
6192         (eg. tupletting) 
6193
6194         * python/musicxml.py: new file. Read MusicXML MiniDOM tree, and
6195         convert to pythonesque structure.
6196
6197         * python/rational.py: PD rational number class.
6198
6199         * Documentation/user/converters.itely (Invoking musicxml2ly):  new node.
6200
6201 2005-12-04  Erik Sandberg  <mandolaerik@gmail.com>
6202
6203         * lily/part-combine-iterator.cc: Minor bugfix
6204         
6205         * THANKS: Update bughunters
6206
6207 2005-12-02  Werner Lemberg  <wl@gnu.org>
6208
6209         * mf/README: Document process for proper mf2pt1 conversion.
6210
6211         * mf/feta-beugel.mf (draw_brace): Fix path to assure clean
6212         overlapping.
6213
6214         * mf/feta-harmonica.mf: Removed.  Unused.
6215
6216 2005-12-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6217
6218         * scripts/lilypond-book.py (do_file): fix thinkos.
6219
6220 2005-12-01  Jan Nieuwenhuizen  <janneke@gnu.org>
6221
6222         * lily/GNUmakefile ($(outdir)/FlexLexer.h):
6223         ($(outdir)/parser.cc): 
6224         ($(outdir)/lexer.cc): Bugfix: depend on config.h.
6225
6226 2005-11-30  Pedro Kröger  <kroeger@pedrokroeger.net>
6227
6228         * ly/titling-init.ly (tagline): it should be a space between
6229         "Music engraving by LilyPond" and the version number.
6230
6231 2005-12-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6232
6233         * VERSION (PACKAGE_NAME): release 2.7.20
6234
6235 2005-11-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6236
6237         * scm/define-markup-commands.scm (pad-to-box): new markup command.
6238
6239         * scm/define-grobs.scm (all-grob-descriptions): set thickness to
6240         1.0.
6241         (all-grob-descriptions): don't shift RehearsalMark arbitrarily.
6242
6243 2005-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6244
6245         * configure.in (LINK_GXX_STATICALLY): remove kpathsea checks.
6246
6247         * kpath-guile/: remove directory
6248
6249         * scm/kpathsea.scm (ly:kpathsea-expand-variable): new
6250         file. Encapsulate kpathsea using commandline tools.
6251
6252         * lily/all-font-metrics.cc (kpathsea_find_file): use (scm
6253         kpathsea) module.
6254
6255 2005-11-29  Mats Bengtsson  <mabe@s3.kth.se>
6256
6257         * Documentation/user/advanced-notation.itely (Setting automatic
6258         beam behavior): Correct a few typos. Thanks to David Bobroff.
6259
6260         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use
6261         \usepackage instead of \RequirePackage. Thanks to Bernard Hurley.
6262
6263 2005-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6264
6265         * scripts/*.py: gmane address for bugs.
6266
6267 2005-11-28 Pal Benko <benkop@freestart.hu>
6268         
6269         * make/ly-rules.make: add -f switch to mv
6270
6271         * scm/output-libs.scm: add new bar symbol "." for punctus divisionis
6272
6273         * lily/bar-line.cc: interpret it
6274
6275 2005-11-28  Jan Nieuwenhuizen  <janneke@gnu.org>
6276
6277         * configure.in (--disable-documentation): New switch.
6278
6279         * GNUmakefile.in: Use it.
6280
6281         * stepmake/aclocal.m4: Use AC_ARG_ENABLE for kpatsea.
6282
6283 2005-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6284
6285         * scripts/lilypond-book.py (do_file): search chunks for
6286         \\begin{document}
6287
6288         * GNUmakefile.in: add copy step in between so we can lose the
6289         out-www directories.
6290
6291 2005-11-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6292
6293         * lily/pango-font.cc (pango_item_string_stencil): put
6294         geometry.width into glyph-string too.
6295
6296 2005-11-26  Nicolas Sceaux  <nicolas.sceaux@free.fr>
6297
6298         * scm/define-music-display-methods.scm (RevertProperty):
6299         (OverrideProperty): Use grob-property-path property, a list of
6300         symbols, instead of grob-property, which used to be a single
6301         symbol.
6302         (BassFigureEvent): a figure can be a plain number, not necessarily a
6303         markup.
6304
6305 2005-11-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6306
6307         * VERSION: release 2.7.19
6308         
6309         * lily/figured-bass-engraver.cc (process_music): check
6310         figuredBassCenterContinuations first.
6311
6312         * scm/translation-functions.scm (format-bass-figure): make double
6313         sharp larger. 
6314
6315         * lily/mark-engraver.cc: read rehearsalMarkAlignSymbol to
6316         determine X-parent.
6317
6318         * lily/system-start-delimiter-engraver.cc: move from
6319         Nested_system_start_delimiter_engraver, rename
6320         Nested_system_start_delimiter_engraver ->
6321         System_start_delimiter_engraver.
6322
6323         * lily/nested-system-start-delimiter-engraver.cc (from_list): read
6324         bracket type from hierarchy.
6325
6326 2005-11-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6327
6328         * lily/rest.cc (y_offset_callback): read staff-position.
6329
6330         * scm/define-grob-properties.scm (all-user-grob-properties): don't
6331         mark after-line-breaking-callback as internal.
6332
6333         * lily/self-aligment-interface.cc: remove self-[XY]-offset.
6334
6335 2005-11-25  Werner Lemberg  <wl@gnu.org>
6336
6337         * mf/feta-banier.mf ("d3"): Make `flare' equal to `staff_space'.
6338
6339 2005-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6340
6341         * stepmake/bin/add-html-footer.py (do_file): add google
6342
6343         * lily/staff-symbol-engraver.cc (process_music): bugfix: stop
6344         staff if first_start_ is true.
6345
6346 2005-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6347
6348         * scripts/midi2ly.py (split_track): add __repr__ members.
6349         (track_first_item): only return Item if not None. This fixes a
6350         problem when dumping a track that starts with an empty channel.
6351
6352         * python/midi.c: doc module.
6353
6354 2005-11-22  Mats Bengtsson  <mabe@s3.kth.se>
6355
6356         * Documentation/user/global.itely (Creating MIDI files): Fix
6357         compilation problem.
6358
6359 2005-11-22  Graham Percival  <gpermus@gmail.com>
6360
6361         * Documentation/user/basic-notation.itely: clarify dynamic
6362         padding text.
6363
6364         * Documentation/user/advanced-notation.itely: add unicode
6365         escape control example, whatever that is.  :)
6366
6367         * Documentation/user/global.itely: added "removing dynamics
6368         from MIDI" code.
6369
6370 2005-11-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6371
6372         * VERSION (PATCH_LEVEL): release 2.7.18
6373
6374         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): replace
6375         System_start_delimiter_engraver by
6376         Nested_system_start_delimiter_engraver.
6377
6378         * lily/nested-system-start-delimiter-engraver.cc (struct
6379         Bracket_nesting_node): new class.
6380         (struct Bracket_nesting_group): new class
6381         (struct Bracket_nesting_staff): new class.
6382         (process_music): create hierarchy of grobs. This allows separate
6383         tuning of different SSDs. 
6384
6385         * scm/define-grobs.scm (all-grob-descriptions): new Grob SystemStartSquare
6386         (all-grob-descriptions): remove old NestedSystemStartDelimiter.
6387
6388 2005-11-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6389
6390         * lily/side-position-interface.cc (aligned_side): multiply
6391         staff_radius by 2.
6392
6393         * lily/script-engraver.cc (make_script_from_event): allow setting
6394         values to '()
6395
6396 2005-11-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6397
6398         * lily/system-start-delimiter.cc (line_bracket): don't shorten height.
6399
6400         * scm/define-grobs.scm (all-grob-descriptions): new grob
6401         NestedSystemStartDelimiter.
6402
6403         * input/regression/system-start-heavy-bar.ly: new file.
6404
6405         * lily/nested-system-start-delimiter-engraver.cc: new file.
6406
6407         * lily/nested-system-start-delimiter.cc: new file.
6408
6409         * input/regression/system-start-nesting.ly: new file.
6410
6411         * scm/define-grobs.scm (all-grob-descriptions): use X side
6412         positioning for positioning braces for nested contexts.
6413
6414         * lily/system-start-delimiter.cc (print): don't divide extent by
6415         staff_space.
6416         (print): use style iso. glyph.
6417         (staff_bracket): translate glyph inside routine already.
6418
6419 2005-11-18  Michael Welsh Duggan <md5i@cs.cmu.edu>
6420
6421         * lily/vaticana-ligature-engraver.cc: fixed 2 typos in glyph
6422         names.
6423
6424 2005-11-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6425
6426         * scm/define-context-properties.scm
6427         (all-user-translation-properties): rename figuredBassFormatter
6428         from newFiguredBassFormatter.
6429
6430         * scm/define-grobs.scm (all-grob-descriptions): move from NewBassFigure
6431
6432         * lily/figured-bass-engraver.cc: move from new-figured-bass-engraver.cc
6433
6434         * lily/stem.cc (calc_stem_info): trigger beaming calculation.
6435
6436         * lily/beam.cc (calc_beaming): new function.
6437         (calc_shorten): new function.
6438
6439         * THANKS: add Edward Neeman.
6440
6441         * input/regression/accidental-clef-change.ly: new file.
6442
6443         * lily/note-collision.cc (check_meshing_chords): don't merge fa heads.
6444
6445         * scm/define-grobs.scm (all-grob-descriptions): add Y-offset property.
6446
6447         * lily/clef-engraver.cc (inspect_clef_properties): reset
6448         localKeySignature for clef changes.
6449
6450 2005-11-17  Mats Bengtsson  <mabe@s3.kth.se>
6451
6452         * python/midi.c: PyMIDINIT_FUNC isn't defined in Python < 2.3 
6453         add dummy definition that works in Linux and add information in
6454         INSTALL.texi on the specific Python requirements for Cygwin/Mingw.
6455
6456         * Documentation/user/changing-defaults.itely (Modifying context
6457         plug-ins): Add index for \with.
6458
6459         * Documentation/user/music-glossary.tely (dal segno): Updated
6460         example to version >=2.6.
6461
6462 2005-11-16  Mats Bengtsson  <mabe@s3.kth.se>
6463
6464         * Documentation/user/instrument-notation.itely (Printing chord
6465         names): Reorder \chordmode and \repeat in one example.
6466
6467 2005-11-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6468
6469         * VERSION: release 2.7.17
6470         
6471         * Documentation/topdocs/NEWS.tely (Top): add note about
6472         refactoring.
6473
6474         * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
6475         new function. Search region of 3 positions for best tie.
6476         (score_configuration): new function.
6477         (score_aptitude): new function.
6478         (generate_configuration): new function.
6479         (get_configuration): new function.
6480         (Tie_formatting_problem): new function
6481
6482         * input/regression/page-top-space.ly: a6 for page-top-space demo. 
6483
6484         * stepmake/aclocal.m4: use $(if ) for config-FOOF.make
6485
6486         * THANKS: add Eduardo Vieira & Ralph Little
6487
6488         * mf/feta-bolletjes.mf (solfa_quarter_width): make solfa heads
6489         narrower.
6490
6491         * lily/include/tie-formatting-problem.hh (class
6492         Tie_formatting_problem): add Tie_details to
6493         Tie_formatting_problem. Update calling conventions.
6494
6495         * stepmake/aclocal.m4: oops. Include $CONFIGFILE.make, not
6496         config.make.
6497
6498         * Documentation/user/lilypond.tely: remove musedata2ly entry.
6499
6500 2005-11-16  Jürgen Reuter  <reuter@ipd.uka.de>
6501
6502         * lily/ligature-engraver.cc, lily/include/ligature-engraver.hh,
6503         scm/define-context-properties.scm: Maintenance bugfix: make
6504         ligature brackets work again by removing obsolete ligature
6505         primitive callback push/pop.
6506
6507         * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: do
6508         not call Tuplet_bracket::calc_direction.  Removed obsolete gap
6509         value.
6510
6511 2005-11-15  Jan Nieuwenhuizen  <janneke@gnu.org>
6512
6513         * stepmake/aclocal.m4 (depth): Explain why absolute directory is
6514         used and do not call it a path.
6515         (FLEXLEXER_FILE): Rename from FLEXLEXER_PATH and add file name.
6516
6517 2005-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6518
6519         * lily/include/tie-formatting-problem.hh (class
6520         Tie_formatting_problem): new file.
6521
6522         * lily/tie-formatting-problem.cc (common_x_refpoint): new file.
6523
6524         * Documentation/misc/ChangeLog-2.3:  new file.
6525
6526         * lily/audio-staff.cc (output): degarianize.
6527
6528 2005-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
6529
6530         * stepmake/stepmake/python-module-rules.make ($(outdir)/%.pyc):
6531         Unset PYTHONOPTIMIZE.  Fixes install if set.
6532
6533 2005-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6534
6535         * python/convertrules.py (conv): add warning about drums. 
6536
6537         * make/stepmake.make: include toplevel-version.make after config.make.
6538
6539         * stepmake/aclocal.m4 (depth): make sure $srcdir is absolute.
6540         also allow python2.4
6541
6542         * config.make.in (configure-srcdir): remove GXX GCC vars.
6543
6544         * stepmake/aclocal.m4: don't do non-srcdir build with
6545         symlinks. Use inclusion, so the src directory name can be changed.
6546
6547 2005-11-13  Jan Nieuwenhuizen  <janneke@gnu.org>
6548
6549         * make/mutopia-vars.make:
6550         * make/ly-vars.make: Use src-wildcard iso wildcard for source
6551         files.
6552
6553 2005-11-13  Werner Lemberg  <wl@gnu.org>
6554
6555         * mf/feta-arrow.mf: For all glyphs, don't mirror `currentpicture'
6556         but the affected path.  This ensures that the (overlapping) outlines
6557         have the same direction, which is a necessary prerequisite for
6558         FontForge's algorithm to remove overlaps.
6559         Formatting.
6560
6561         * mf/feta-haak.mf: Formatting.
6562         (draw_bracket): Slightly modify outline to avoid an unnecessary
6563         corner.
6564         Don't use ad-hoc values for `leave_angle' and `tip_angle' but derive
6565         them from the affected paths.
6566
6567 2005-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6568
6569         * mf/README: remove xpm / accordion notes.
6570
6571         * lily/tie-column-format.cc (set_chord_outline): add dots into
6572         skyline extents. This fixes tie formatting if the left head has dots.
6573
6574         * lily/tie.cc (get_configuration): only shift tie by a whole staff
6575         space inside the staff.
6576         (get_configuration): shift another position if necessary in case
6577         of left head tie  
6578
6579 2005-11-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6580
6581         * stepmake/stepmake/texinfo-vars.make (GENERATE_OMF): use
6582         buildscript-dir iso. $(depth)/buildscripts.
6583
6584         * tex/GNUmakefile (local-uninstall): remove
6585         music-drawing-routines.ps juggling.
6586
6587         * stepmake/stepmake/install-targets.make (local-install-files):
6588         prepend src-dir to install targets.
6589
6590         * lily/system-start-delimiter-engraver.cc
6591         (acknowledge_system_start_delimiter): use
6592         add_offset_callback(). This fixes translation of nested
6593         staffgroups.
6594
6595         * lily/grob-closure.cc (add_offset_callback): only encaps in
6596         simple_closure if it's a procedure.
6597         
6598         * lily/span-bar.cc (calc_glyph_name): read glyph-name, not glyph
6599         from bar-line.
6600
6601         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
6602         remove-empty where pertinent.
6603
6604 2005-11-12  Graham Percival  <gpermus@gmail.com>
6605
6606         * Documentation/user/instrument-notation.itely: added
6607         Cameron Horsburgh's multiple stanzas docs.  Thanks!
6608
6609 2005-11-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6610
6611         * lily/GNUmakefile
6612         ($(top-build-dir)/Documentation/pictures/$(outbase)/lilypond.ico):
6613         make picture in builddir, not srcdir.
6614
6615 2005-11-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6616
6617         * VERSION: release 2.7.16
6618         
6619         * scripts/lilypond-book.py (main): use commands.mkarg () to quote
6620         shell arguments. 
6621
6622 2005-11-10  Mats Bengtsson  <mabe@s3.kth.se>
6623
6624         * Documentation/user/examples.itely (Piano templates): Minor
6625         modification to the Piano centered lyrics example.
6626
6627 2005-11-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6628
6629         * scripts/lilypond-invoke-editor.scm (run-browser): look at
6630         $BROWSER.
6631
6632         * Documentation/user/point-and-click.itely: simplify p&c
6633         instruction: don't configure firefox. Put lilypond-invoke-editor
6634         in front of the browser.
6635
6636         * scripts/lilypond-invoke-editor.scm (run-editor): new function.
6637         (run-browser): new function.
6638
6639         * lily/parser.yy (Lily_lexer): recognize Book
6640
6641         * lily/book.cc (clone): new function
6642
6643         * lily/parser.yy (book_body): allow BOOK_IDENTIFIER.
6644
6645 2005-11-10  Jürgen Reuter  <reuter@ipd.uka.de>
6646
6647         * lily/vaticana-ligature.cc, lily/vaticana-ligature-engraver.cc:
6648         Maintenance bugfix: reduce number of font related warnings by
6649         updating naming conventions for glyph-name.
6650
6651 2005-11-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6652
6653         * scm/define-grobs.scm (all-grob-descriptions): add
6654         rhythmic-grob-interface to TabNoteHead.
6655
6656         * scm/layout-beam.scm (check-quant-callbacks): remove
6657         set_stem_lengths()
6658
6659 2005-11-08  Jürgen Reuter  <reuter@ipd.uka.de>
6660
6661         * ly/gregorian-init.ly (divisiones): Maintenance bugfix: vertical
6662         alignment of centered divisiones.
6663
6664         * scm/scripts.scm (articulations): Maintenance bugfix:
6665         follow-into-staff -> quantize-position.
6666
6667         * lily/vaticana-ligature-engraver.cc (transform_heads): Bugfix:
6668         plica head in porrectus deminutus.
6669
6670 2005-11-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6671
6672         * make/lilypond.fedora.spec.in (Group): add %clean section.
6673
6674         * lily/tuplet-bracket.cc (print): change check: remove bracket if
6675         less then 1/5th of total length.  
6676         (print): use gap too.  Fixes tupletUp-single-bracket.ly
6677
6678         * scm/music-functions.scm (glue-mm-rest-texts): also put other
6679         events into EventChord. This fixes textspanners on mm rests. Fixes
6680         spanner-rest.ly
6681
6682         * lily/side-position-interface.cc (get_axis): read side-axis
6683         (set_axis): set side-axis.
6684
6685         * scm/define-grobs.scm (all-grob-descriptions): add side-axis
6686         properties everywhere.
6687
6688         * lily/spacing-spanner.cc (breakable_column_spacing): add
6689         average-spacing-wishes. Take maximum if not set.
6690         (musical_column_spacing): idem. Fixes: spacing-keysig-note.ly
6691
6692         * scm/define-grobs.scm (all-grob-descriptions): add
6693         average-spacing-wishes.
6694
6695         * lily/grob-closure.cc (add_offset_callback): bugfix: properly add
6696         offset callbacks. This fixes alignment for Fingering objects.
6697
6698         * scm/define-grobs.scm (all-grob-descriptions): tiny bit less
6699         space for key - timesig combination. 
6700
6701         * input/regression/script-stem-tremolo.ly (Module): new file.
6702
6703         * scm/define-grobs.scm (all-grob-descriptions): decrease distance
6704         to key sig.
6705
6706         * lily/dynamic-engraver.cc (acknowledge_stem_tremolo): new function.
6707         Fixes: c-tremolo-script.ly.
6708         
6709         * lily/text-engraver.cc (acknowledge_stem_tremolo): new function.
6710
6711         * lily/script-engraver.cc (acknowledge_stem_tremolo): new function.
6712         
6713         * scm/define-grobs.scm (all-grob-descriptions): remove
6714         self-X-offset. Fixes alignment of octavate-8.
6715
6716         * scripts/lilypond-book.py (datadir): look in
6717         LILYPONDPREFIX/share/lilypond/current/
6718
6719         * GNUmakefile.in: symlink current to <VERSION>. 
6720
6721 2005-11-07  Pedro Kroger  <kroeger@pedrokroeger.net>
6722
6723         * lily/main.cc: eps listed as a backend.
6724
6725 2005-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6726
6727         * scm/lily-library.scm (print-music-as-book): quote $defaultpaper.
6728
6729 2005-11-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6730
6731         * lily/include/score.hh (class Score): remove texts_ member.
6732
6733         * lily/beam.cc (set_stem_lengths): force direction callback.
6734         (print): read quantized-positions, so we can force
6735         Beam::set_stem_lengths to occur.
6736         (rest_collision_callback): use common X parent. 
6737
6738 2005-11-03  Jan Nieuwenhuizen  <janneke@gnu.org>
6739
6740         * flower/file-path.cc (find): Bugfix: Return name of file found.
6741
6742         * lily/main.cc (setup_paths): Bugfix for argv0 logic.
6743         (setup_paths)[__CYGWIN__ || __MINGW32__]: Normalize argv0.
6744         (setup_paths)[__MINGW32__]: Also look for argv0 + .exe.
6745
6746 2005-11-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6747
6748         * flower/offset.cc: idem.
6749
6750         * mf/*.mf: update email address.
6751
6752         * lily/font-config-scheme.cc:  new file.
6753
6754         * GNUmakefile.in (SUBDIRS): remove debian/ directory.
6755
6756         * lily/*:  cs.uu.nl -> xs4all.nl
6757
6758         * VERSION (PATCH_LEVEL): release 2.7.15
6759
6760         * make/lilypond.mandrake.spec.in (Module): remove Mandrake & Suse
6761         spec files.
6762
6763         * make/lilypond.fedora.spec.in: add %{libdir}/lilypond/
6764
6765 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6766
6767         * GNUmakefile.in: bugfix: encapsulate mkdir && cd in parens.   
6768
6769         * lily/staff-performer.cc (process_music): add audio
6770         elements. This makes MIDI instrument changes work once again.
6771
6772         * lily/main.cc (LY_DEFINE): add gmane address.
6773
6774         * lily/beam.cc: remove calc_positions()
6775
6776         * lily/include/grob.hh (class Grob): move pscore, dim_cache_,
6777         original_ in private scope.
6778         (class Grob): drop pscore_ pointer, change to output_def pointer.
6779         (class Grob): cleanup class definition.
6780
6781         * ly/spanners-init.ly (assertBeamQuant): use make-simple-closure.
6782
6783 2005-11-02  Jan Nieuwenhuizen  <janneke@gnu.org>
6784
6785         * lily/main.cc (setup_paths)[__MINGW32__]: Do not assume argv0 is
6786         absolute.  Better diagnostics.
6787
6788         * GNUmakefile.in: Add bin/ to tree and populate with some links.
6789         This makes lilypond run from the build directory using argv0
6790         relocation (without any --prefix or LILYPONDPREFIX setting).
6791
6792 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6793
6794         * Documentation/topdocs/NEWS.tely (Top): document new backend design.
6795
6796         * scm/define-grobs.scm: purge self-[XY]-offset variables, replace
6797         with simple-closure.
6798
6799         * lily/self-aligment-interface.cc (set_align_self): new function
6800         (set_center_parent): new function.
6801
6802         * lily/side-position-interface.cc (set_axis): new function.
6803
6804         * lily/new-fingering-engraver.cc (position_scripts): use drul for
6805         generic code. 
6806
6807         * scm/define-grob-properties.scm (all-user-grob-properties):
6808         remove [XY]-offset-callbacks add [YX]-offset
6809         
6810 2005-11-02  Mats Bengtsson  <mabe@s3.kth.se>
6811
6812         * scm/define-grobs.scm (all-grob-descriptions): Added space-alist
6813         entry for time signatures after breathing signs. Bug report by
6814         Scott Russell.
6815
6816 2005-11-01  Jan Nieuwenhuizen  <janneke@gnu.org>
6817
6818         * lily/main.cc (setup_paths)[!__MINGW32__]: Bugfix: if argv0 is
6819         not absolute, make it absolute using PATH.
6820
6821 2005-10-28  Jan Nieuwenhuizen  <janneke@gnu.org>
6822
6823         * python/midi.c (initmidi): Fix type for mingw.
6824
6825 2005-10-27  Jan Nieuwenhuizen  <janneke@gnu.org>
6826
6827         * stepmake/stepmake/compile-vars.make (SHARED_FLAGS): Support mingw.
6828
6829         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Detect mingw
6830         cross compiling.
6831
6832         * stepmake/aclocal.m4: Support python cross compiling.
6833
6834         * stepmake/stepmake/python-module-vars.make (SHARED_MODULE_SUFFIX):
6835         Add mingw section.
6836
6837 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6838
6839         * scm/output-lib.scm (chain-grob-member-functions): replace
6840         chained-callback.cc
6841
6842         * lily/chained-callback.cc (Module): remove file.
6843
6844         * lily/rest-collision.cc (force_shift_callback_rest): change to
6845         chained callback.
6846
6847         * lily/rest.cc (y_offset_callback): merge function of 3 callbacks. 
6848
6849         * lily/grob.cc (y_parent_positioning): remove axis argument from
6850         parent_positioning callbacks.
6851         (Grob): junk init code
6852         (get_offset): use generic property callbacks for
6853         X-offset, Y-offset. Remove Grob::{add,has}_offset_callback.
6854         (axis_parent_positioning): new function
6855         (axis_offset_symbol): new function
6856         (chain_offset_callback): new function
6857         (add_offset_callback): new function
6858
6859         * lily/beam.cc (rest_collision_callback): change signature; this
6860         is now a chained callback.
6861
6862         * lily/include/dimension-cache.hh (class Dimension_cache): remove
6863         callback administration.
6864
6865         * lily/simple-closure.cc: new file. Smob type that allows "grob
6866         member functions",
6867
6868             (ly:make-simple-closure FUNC A B)
6869
6870         is evaluated as (FUNC grob A B). This allows chaining of callbacks
6871         in various ways.
6872
6873         * lily/slur-engraver.cc (acknowledge_extra_object): use chained
6874         callbacks.
6875
6876         * lily/slur.cc (outside_slur_callback): take 2 arguments.
6877
6878         * lily/rest.cc (polyphonic_offset_callback): remove.
6879
6880         * lily/script-engraver.cc (try_music): remove bool* argument.
6881
6882         * scm/script.scm (default-script-alist): set quantize-position
6883         appropriately.
6884
6885         * lily/script-engraver.cc: remove follow_into_staff_ special coding. 
6886
6887         * lily/side-position-interface.cc (aligned_side): move staff
6888         position quantization from
6889         Side_position_interface::quantised_position().
6890         (quantised_position): remove
6891         
6892 2005-10-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6893
6894         * input/regression/beam-quant-standard.ly: reindent, set
6895         debug-beam-quanting to #t.
6896
6897         * lily/beam-concave.cc (calc_concaveness): set concaveness to
6898         10000 if this is a "hard" concave beam.
6899
6900         * lily/beam.cc (calc_least_squares_positions): change from
6901         calc_least_squares_dy
6902         (set_stem_lengths): this is now a chained callback.
6903
6904         * lily/context-property.cc (execute_general_pushpop_property):
6905         bugfix override with procedure should have effect.
6906
6907         * scm/define-grob-properties.scm (all-internal-grob-properties):
6908         remove position-callbacks.
6909
6910         * scm/define-grobs.scm (all-grob-descriptions): use
6911         ly:make-callback-chain for positions property.
6912
6913         * scm/layout-beam.scm (check-quant-callbacks): return list of
6914         chained callbacks.
6915
6916         * scm/lily.scm (type-p-name-alist): add callback-chain
6917
6918         * lily/lily-guile.cc (type_check_assignment): type check failure
6919         is warning not message.
6920
6921         * lily/grob-property.cc (try_callback): walk callback chain if
6922         appropriate.
6923
6924         * lily/chained-callback.cc: new file. new smob type.
6925
6926         * lily/lily-guile.cc (procedure_arity): new function.
6927
6928 2005-10-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6929
6930         * Documentation/topdocs/INSTALL.texi (Top): add perl flex bison.
6931
6932 2005-10-25  John Mandereau  <john.mandereau@free.fr>
6933  
6934         * Documentation/user/instrument-notation.itely (Figured bass):
6935         describe new features
6936
6937 2005-10-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6938
6939         * lily/beam.cc (calc_least_squares_dy): use property callback.
6940
6941         * lily/beam-concave.cc (calc_concaveness): use property callback.
6942
6943         * ly/paper-defaults.ly: move fixed dimensions from paper.scm 
6944
6945 2005-10-25  Jan Nieuwenhuizen  <janneke@gnu.org>
6946
6947         * HACKING: Update.
6948
6949 2005-10-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6950
6951         * scm/layout-page-layout.scm (page-headfoot): annotate
6952         pagetopspace too.
6953
6954         * scm/stencil.scm (dimension-arrows): shorten arrowed lines a bit. 
6955
6956         * scm/layout-page-layout.scm (annotate-y-interval): y-annotation
6957         doesn't take y-space.
6958
6959         * scm/paper.scm (paper-alist): fix A7 dimensions. 
6960
6961 2005-10-24  Jan Nieuwenhuizen  <janneke@gnu.org>
6962
6963         * stepmake/stepmake/generic-vars.make (DIST_FILES): Fix
6964         src-wildcard, remove $(wildcard).
6965
6966         * po/GNUmakefile (PO_FILES): 
6967         * ps/GNUmakefile (PS_FILES): 
6968         * tex/GNUmakefile (TEX_FILES): 
6969         * cygwin/GNUmakefile (POSTINSTALLS):
6970         * vim/GNUmakefile (EXTRA_DIST_FILES): Bugfix: [etags sr?] missed
6971         some wildcard calls.
6972
6973 2005-10-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6974
6975         * THANKS: add Thomas Bushnell.
6976
6977 2005-10-23  Jan Nieuwenhuizen  <janneke@gnu.org>
6978
6979         * scm/lily.scm: Remove horrendous running-from-gui? kludge.
6980         (lilypond-main): Redirect to gui-main if 'gui is set.
6981
6982         * scripts/midi2ly.py (datadir): Add libdir iso datadir to path,
6983         for alternative installations kludging s/share/lib/g
6984         LILYPONDPREFIX. 
6985
6986         * SConstruct (libdir_package_version): Define.
6987
6988         * python/SConscript: 
6989         * python/GNUmakefile (INSTALLATION_OUT_DIR): Install binary .so
6990         module in libdir.  
6991
6992 2005-10-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6993
6994         * lily/main.cc: clarify --safe.
6995
6996 2005-10-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6997
6998         * VERSION: release 2.7.14
6999         
7000         * Documentation/user/*.itely: remove minimumVerticalExtent.
7001
7002         * scm/define-grobs.scm (all-grob-descriptions): remove
7003         RemoveEmptyVerticalGroup
7004
7005         * lily/hara-kiri-engraver.cc (get_spanner): create VerticalAxisGroup.
7006
7007         * lily/include/lily-guile.hh (GUILE_ELLIPSIS): define to get clean
7008         compile on MOSX
7009
7010         * python/convertrules.py (conv): add rules.
7011
7012         * lily/grob.cc: remove is_empty()
7013
7014         * lily/grob-property.cc: remove add_to_list_property().
7015
7016         * scripts/convert-ly.py (datadir): add prefix switching hack to
7017         .py too.
7018
7019         * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily (cresc): remove
7020         space-function tweak.
7021
7022         * lily/grob.cc: remove X-extent-callback / Y-extent-callback.
7023
7024         * scm/define-grob-properties.scm (all-user-grob-properties):
7025         remove callback property.
7026
7027         * lily/include/grob.hh (class Grob): remove property_callbacks_
7028         member. Properties of procedure type are assumed to be callbacks.
7029
7030         * lily/ligature-engraver.cc (override_stencil_callback):
7031         rewrite. Use noteHeadLigaturePrimitive as source.
7032
7033         * scm/define-grob-properties.scm (all-internal-grob-properties):
7034         remove ligature-primitive-callback
7035
7036         * lily/include/dimension-cache.hh (class Dimension_cache): make
7037         class, with Grob as friend.
7038
7039         * lily/grob.cc: remove set_extent_callback(), set_extent() and
7040         has_extent_callback()
7041
7042         * scm/translation-functions.scm (format-new-bass-figure): read
7043         figuredBassPlusDirection
7044
7045         * scm/define-context-properties.scm
7046         (all-user-translation-properties): add figuredBassPlusDirection.
7047
7048         * lily/staff-spacing.cc (next_notes_correction): oops. Init wishes.
7049
7050         * lily/align-interface.cc (set_ordered): new function.
7051
7052         * lily/grob.cc (flush_extent_cache): rewrite.
7053
7054         * lily/dimension-cache.cc (Dimension_cache): cache extent as
7055         Interval pointer directly.
7056
7057         * lily/main.cc (setup_paths): insert extra / .
7058         (setup_paths): junk cff entry.
7059
7060         * lily/font-config.cc (init_fontconfig): only add type1 / otf
7061         directories.
7062
7063         * lily/axis-group-engraver.cc (finalize): remove
7064         extraVerticalExtent, minimumVerticalExtent verticalExtent.
7065
7066         * lily/grob.cc (Grob): don't set extent from ctor.
7067         (extent): use property callbacks. 
7068
7069         * lily/axis-group-interface.cc: remove set_axes() function.
7070
7071         * lily/grob-property.cc (del_property): new function.
7072
7073 2005-10-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7074
7075         * lily/font-config.cc (init_fontconfig): resurrect mf/out/ check.
7076         
7077 2005-10-20  Jan Nieuwenhuizen  <janneke@gnu.org>
7078
7079         * stepmake/stepmake/script-vars.make (PYTHON_SCRIPTS_IN): Oops.  Add.
7080
7081 2005-10-19  Jan Nieuwenhuizen  <janneke@gnu.org>
7082
7083         * mf/SConscript: Updates.
7084
7085         * lily/GNUmakefile (OUT_DIST_FILES): Bugfix.
7086
7087         * stepmake/stepmake/*:
7088         * */GNUmakefile:
7089         * config.make.in:
7090         * GNUmakefile.in:
7091         * stepmake/aclocal.m4: Friendlier --srcdir build, allowing `make'
7092         from any directory in build-dir.  Cleanups.
7093
7094         * make/srcdir.make.in: Remove.
7095
7096         * lily/main.cc (setup_paths): Fix and document build-dir hack.
7097
7098         * SConstruct (CheckYYCurrentBuffer): Use TryCompile (there is no
7099         main).
7100
7101         * lily/SConscript: Remove ttftools.
7102
7103         * SConstruct: Resurrect.
7104
7105 2005-10-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7106
7107         * lily/tuplet-bracket.cc (print): use dy iso. positions[RIGHT] for
7108         Y coordinate. 
7109
7110         * lily/paper-book.cc (add_score_title): put Paper_score title into
7111         systems_ list.
7112
7113         * scm/translation-functions.scm (format-new-bass-figure): also
7114         allow plus in combination with _
7115
7116 2005-10-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7117
7118         * VERSION: 2.7.13 released.
7119
7120         * lily/note-collision.cc (check_meshing_chords): don't wipe
7121         stencil, merely set transparent.
7122
7123         * Documentation/topdocs/NEWS.tely (Top): mention John Mandereau. 
7124         (Top): document #'callbacks.
7125         (Top): document nested \override.
7126
7127         * input/regression/figured-bass.ly: update for slash and pluses.
7128
7129         * input/regression/figured-bass-continuation-forbid.ly (Module):
7130         new file.
7131
7132         * scm/translation-functions.scm (format-new-bass-figure): use
7133         slashed-digit if diminished is set.
7134         (format-new-bass-figure): add + if 'augmented is set.
7135
7136         * scm/define-markup-commands.scm (slashed-digit): new command slashed-digit.
7137
7138         * input/test/piano-staff-distance.ly: remove file.
7139
7140         * Documentation/user/advanced-notation.itely (Formatting cue
7141         notes): use length-fraction for making stems/beams smaller.
7142
7143         * lily/parser.yy (bass_figure): accept \+ \! and / as figured bass
7144         modifications.
7145
7146         * lily/new-figured-bass-engraver.cc: new property
7147         centerFiguredBassContinuations
7148
7149         * Documentation/user/changing-defaults.itely (Difficult tweaks):
7150         use callbacks.
7151
7152         * lily/context-property.cc (execute_general_pushpop_property):
7153         robustness checks.
7154
7155         * input/regression/override-nest.ly: new file.
7156
7157         * python/convertrules.py (FatalConversionError.subber): conversion
7158         rule for #'callbacks
7159
7160         * input/regression/override-nest.ly: new function.
7161
7162         * lily/parser.yy (music_property_def): allow \override #'a #'b =
7163         #c too. 
7164
7165         * lily/context-property.cc (lookup_nested_property): new function.
7166         (evict_from_alist): new function.
7167         (general_pushpop_property): new function.
7168         (execute_general_pushpop_property): rewrite. Support nested
7169         properties too.
7170
7171 2005-10-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7172
7173         * lily/beam.cc: use length-fraction too.
7174
7175         * scm/define-grob-properties.scm (all-user-grob-properties):
7176         remove property flag-width-function
7177         (all-user-grob-properties): remove space-function.
7178
7179         * scm/layout-beam.scm: remove flag-width-function.
7180
7181         * lily/beam.cc: remove flag-width-function
7182
7183         * scm/layout-beam.scm: remove beam dir functions.
7184
7185         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): use length-fraction.
7186
7187         * lily/stem.cc (calc_length): multiply with length_fraction. Makes
7188         for easier grace tweaks.
7189
7190         * lily/beam.cc: remove dir-function.
7191
7192         * lily/system.cc (pre_processing): use callback to trigger spacing procedures.
7193
7194         * lily/grob.cc: remove spacing-procedure.
7195
7196         * lily/note-head.cc (calc_stem_attachment): new function.
7197         (internal_print): use callback to get glyph-name.
7198
7199         * lily/grob-property.cc (get_interfaces): new function.
7200
7201         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-interfaces
7202
7203         * lily/stem.cc (calc_stem_end_position): new function.
7204         (calc_length): new function.
7205         document details for stem.
7206         remove Stem::get_direction()
7207
7208         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-set-callback! 
7209
7210         * lily/grob-property.cc (set_callback): new function.
7211
7212         * lily/script-engraver.cc (make_script_from_event): don't trigger callback.
7213
7214         * lily/item-scheme.cc: new file.
7215
7216         * lily/bar-line.cc (before_line_breaking): remove function.
7217         remove bar-size-procedure, break-glyph-function
7218
7219         * lily/clef-engraver.cc (set_glyph): use glyph iso. glyph-name
7220
7221         * lily/clef.cc (before_line_breaking): change to calc_glyph_name.
7222
7223         * lily/system-start-delimiter.cc (print): suicide from
7224         here. Remove after_line_breaking_callback.
7225
7226         * lily/script-interface.cc (calc_direction): use callback for direction.
7227
7228         * lily/side-position-interface.cc (aligned_side): don't use
7229         Side_position_interface::get_direction directly. Use callback. 
7230
7231         * lily/grob.cc (get_stencil): simplify: use callback mechanism to
7232         calculate stencil.
7233         (get_print_stencil): rename from get_stencil: create stencil with
7234         transparency, color and cause. 
7235
7236         * scm/define-grobs.scm: change print-function to stencil callback everywhere.
7237
7238         * python/convertrules.py (conv): insert temporary warning rule.
7239
7240         * lily/multi-measure-rest.cc (set_text_rods): use stencil directly.
7241
7242         * lily/grob-property.cc (try_callback): remove marker if applicable.
7243
7244         * lily/grob.cc: elucidate doc about after/before-line-breaking
7245
7246         * lily/slur-scoring.cc (enumerate_attachments): robustness fix.
7247
7248         * lily/stem.cc (height): idem.
7249
7250         * lily/stem-tremolo.cc: idem.
7251
7252         * lily/slur.cc (height): don't use get_uncached_stencil()
7253
7254         * lily/rest.cc (y_offset_callback): use offset callback
7255         iso. after-line-breaking callback.
7256
7257         * lily/grob.cc: change after/before-line-breaking-callback to
7258         after/before-line-breaking dummy properties.
7259
7260         * lily/include/grob.hh: remove Grob_status.
7261
7262         * scm/define-context-properties.scm
7263         (all-user-translation-properties): remove verticalAlignmentChildCallback
7264
7265         * lily/tuplet-bracket.cc: use positions property iso. left,right-position.
7266         (calc_direction): use callback
7267         (calc_positions): use callback.
7268
7269         * lily/tie.cc (calc_direction): use callback. Only call parent
7270         positioning for more than one tie.
7271
7272         * lily/tie-column.cc (calc_positioning_done): use callback
7273
7274         * lily/slur-scoring.cc (calc_control_points): use callback
7275
7276         * lily/slur.cc (calc_direction): use callback.
7277
7278         * lily/note-collision.cc (force_shift_callback): remove.
7279
7280         * lily/dot-column.cc (force_shift_callback): remove. Use
7281         other_axis_parent_positioning.
7282
7283         * lily/grob.cc (other_axis_parent_positioning): new function.
7284         (same_axis_parent_positioning): new function
7285
7286         * lily/align-interface.cc (alignment_callback): remove function.
7287
7288         * lily/note-collision.cc (calc_positioning_done): use callback.
7289
7290         * lily/laissez-vibrer-tie.cc (calc_control_points): use callback.
7291         (calc_direction): idem.
7292         remove print function.
7293
7294         * lily/laissez-vibrer-tie-column.cc (calc_positioning_done): use callback.
7295
7296         * lily/dot-column.cc (calc_positioning_done): use callback.
7297
7298         * lily/break-align-interface.cc (calc_positioning_done): use callback.
7299
7300         * lily/beam.cc (calc_direction): use pseudo-property for beam
7301         direction callback.
7302         (calc_positions): use callback 
7303
7304         * lily/align-interface.cc (calc_positioning_done): use
7305         callback. Fold fixed  distance and normal alignment in one function.
7306
7307         * lily/stem.cc (calc_stem_end_position): use callback.
7308         (calc_positioning_done): idem.
7309         (calc_direction): idem.
7310         (calc_stem_end_position): idem
7311         (calc_stem_info): idem.
7312
7313         * lily/grob-property.cc (get_property_data): new function: 
7314         (try_callback): new function.
7315
7316         * scm/define-grob-properties.scm (all-user-grob-properties): doc
7317         callbacks property.
7318
7319         * lily/break-align-interface.cc: remove Break_align_interface::alignment_callback.
7320
7321 2005-10-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7322
7323         * lily/tie.cc (get_position): robustness fix. Don't crash if a
7324         tie
7325         has no heads.
7326         
7327         * lily/include/*.hh (Module): compile fixes.
7328
7329 2005-10-14  Heikki Junes <hjunes@cc.hut.fi>
7330
7331         * elisp/lilypond-font-lock.el, elisp/lilypond-indent.el: Avoid nil 
7332         as an argument for char-syntax: use (char-syntax (or nil 0)) 
7333         instead of (char-syntax nil), thanks to Milan Zamazal.
7334
7335 2005-10-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7336
7337         * make/lilypond.fedora.spec.in (Group): add lilypond-internals to
7338         dist.
7339
7340         * lily/tuplet-bracket.cc: check columns of bounds, not bounds
7341         themselves.
7342
7343 2005-10-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7344
7345         * flower/include/virtual-methods.hh (VIRTUAL_COPY_CONSTRUCTOR):
7346         add class_name() method.
7347
7348         * lily/music-scheme.cc: remove ly:music-name.
7349
7350 2005-10-11  Jan Nieuwenhuizen  <janneke@gnu.org>
7351
7352         * cygwin/postinstall-lilypond.sh: Remove cruft.
7353
7354         * cygwin/postremove-lilypond.sh: Remove.
7355
7356         * cygwin/GNUmakefile (default): Remove postremove rules.
7357
7358 2005-10-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7359
7360         * ly/titling-init.ly (evenHeaderMarkup): use space in header on
7361         even header too.
7362         
7363         * scm/define-markup-commands.scm (wordwrap-string): bugfix for
7364         MacOS 9 users.
7365
7366         * lily/hara-kiri-group-spanner.cc (consider_suicide): only
7367         consider break index for broken spanner.
7368
7369         * scm/define-markup-commands.scm (wordwrap-string): remove \r
7370         characters from string before splitting.
7371
7372 2005-10-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7373
7374         * scm/framework-ps.scm (output-preview-framework): use
7375         is-book-title to determine whether to chop off the booktitle.
7376
7377         * lily/paper-book.cc (systems): init from book-title-properties
7378         (add_score_title): init score-title-properties.
7379
7380         * ly/paper-defaults.ly: add {score,book}-title-properties.
7381
7382         * scm/document-backend.scm (lookup-interface): error message if
7383         using unknown interface.
7384
7385         * lily/volta-bracket.cc (after_line_breaking): new function. Set
7386         edge-height.
7387
7388         * lily/horizontal-bracket.cc (make_enclosing_bracket): rename from
7389         make_bracket.
7390         (make_bracket): new function.
7391
7392         * scm/lily.scm (define-scheme-options): add paper-size option.
7393
7394         * ly/declarations-init.ly (laissezVibrer): get paper size from
7395         -dpaper-size
7396
7397         * scm/translation-functions.scm: use \fontsize for changing the
7398         fontsize.
7399
7400         * scm/define-grobs.scm (all-grob-descriptions): set
7401         between-length-limit to 1.0
7402
7403         * lily/tie-helper.cc: add between_length_limit_ detail property.
7404
7405         * mf/feta-bolletjes.mf: typos.
7406
7407         * lily/note-head.cc (internal_print): don't shadow idx
7408         parameter. This fixes wrong attachment for do shape heads.
7409
7410 2005-10-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7411
7412         * scm/parser-ly-from-scheme.scm: rename from ly-from-scheme.scm
7413
7414         * scm/parser-clef.scm (supported-clefs): rename from clef.scm
7415
7416         * scm/layout-slur.scm: rename from slur.scm
7417
7418         * scm/layout-page-layout.scm: rename from page-layout.scm
7419
7420         * scm/layout-beam.scm: rename from beam.scm
7421
7422         * scm/define-grob-interfaces.scm (bass-figure-interface): add
7423         bass-figure-interface
7424
7425         * lily/new-figured-bass-engraver.cc (process_music): add
7426         implicitBassFigures property.
7427         
7428         * scm/define-markup-commands.scm (pad-x): new markup.
7429
7430         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set
7431         minimumVerticalExtent on FiguredBass context.
7432
7433         * lily/figured-bass-continuation.cc (center_on_figures): kludge in
7434         case the continuation crosses a line break.
7435
7436 2005-10-09  Jan Nieuwenhuizen  <janneke@gnu.org>
7437
7438         * flower/file-name.cc (dos_to_posix)[__CYGWIN__]: Return
7439         unconverted value if cygwin_conv_to_posix_path () fails.  Fixes
7440         absolute file name bug.  
7441
7442 2005-10-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7443
7444         * VERSION (PACKAGE_NAME): release 2.7.12
7445
7446         * input/regression/figured-bass-continuation-center.ly: new file.
7447
7448         * input/regression/beam-outside-beamlets.ly: new file.
7449
7450         * lily/beam.cc (set_beaming): don't clip edges.
7451         (connect_beams): don't clip edges.
7452
7453         * lily/beaming-info.cc (clip_edges): new function.
7454
7455         * lily/enclosing-bracket.cc (struct Enclosing_bracket): new file.
7456
7457         * Documentation/user/instrument-notation.itely (Figured bass):
7458         demonstrate extenders, update seealso links.
7459
7460         * scm/titling.scm (marked-up-headfoot): change tagline
7461         handling. tagline = ##f will blank the tagline as well.
7462
7463 2005-10-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7464
7465         * Documentation/topdocs/NEWS.tely: add entry for Figured bass.
7466
7467         * lily/new-figured-bass-engraver.cc (struct
7468         New_figured_bass_engraver): add new_music_found_ member.
7469
7470         * lily/lilypond-version.cc (Lilypond_version): deal with
7471         incorrectly formatted version strings. 
7472
7473         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): switch on
7474         New_figured_bass_engraver by default.
7475
7476         * lily/ttf.cc (print_trailer): only define glyph names when
7477         FT_Face has FT_FACE_FLAG_GLYPH_NAMES
7478
7479 2005-10-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7480
7481         * lily/horizontal-bracket.cc (make_bracket): new function.
7482
7483         * scm/define-grobs.scm (all-grob-descriptions): new grobs
7484         NewBassFigure, BassFigureBracket, BassFigureContinuation,
7485         BassFigureLine, BassFigureAlignment
7486
7487         * lily/new-figured-bass-engraver.cc (process_music): new file.
7488
7489         * lily/figured-bass-continuation.cc: new file.
7490
7491         * lily/include/horizontal-bracket.hh (struct Horizontal_bracket):
7492         new file.
7493
7494 2005-10-04  Mats Bengtsson  <mabe@s3.kth.se>
7495
7496         * scripts/lilypond-book.py: Bug fix, put the quote around the
7497         actual score for LaTeX documents.
7498
7499         * scm/define-grobs.scm (all-grob-descriptions): Change
7500         collapse-height of the SystemStartBracket grob to 5.0, 
7501         so the bracket disappears for single stave score lines (similarly
7502         to SystemStartBraces). 
7503
7504         * Documentation/user/advanced-notation.itely (Polymetric
7505         notation): Clarify the use of compressMusic.
7506
7507         * Documentation/user/basic-notation.itely (Grace notes): Clarify
7508         that the grace spacer note in other staves need the same duration
7509         and document the stroke-style property.
7510
7511 2005-10-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7512
7513         * Documentation/user/global.itely (Vertical spacing): document
7514         alignment-extra-space and fixed-alignment-extra-space.
7515
7516         * Documentation/topdocs/NEWS.tely (Top): add entry.
7517
7518         * input/regression/alignment-vertical-spacing.ly: new file.
7519
7520         * python/convertrules.py (conv): add rule.
7521
7522         * ly/music-functions-init.ly: rename outputProperty to overrideProperty
7523
7524         * lily/align-interface.cc (stretch_after_break): new
7525         function. Read fixed-alignment-extra-space property.
7526         (align_elements_to_extents): read alignment-extra-space property.
7527
7528         * lily/lily-guile.cc (robust_scm2dir): new function.
7529
7530         * scm/page-layout.scm (page-headfoot): annotate headsep and footsep.
7531         (annotate-space-left): new function. Annotate space left on page. 
7532         (annotate-y-interval): new function.
7533         (paper-system-annotate-last): new function. Annotate bottom-space.
7534
7535         * mf/feta-beugel.mf (y): 
7536
7537 2005-10-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7538
7539         * VERSION (PACKAGE_NAME):  release 2.7.11
7540
7541         * scm/lily-library.scm (interval-translate): new function
7542         (interval-center): new function. 
7543
7544         * scm/page-layout.scm (paper-system-annotate): new function. Add
7545         arrows for dimensions.
7546  
7547         * scm/stencil.scm (dimension-arrows): new function.
7548
7549         * Documentation/user/global.itely (Vertical spacing): mention annotatespacing
7550
7551         * input/regression/page-spacing.ly: add annotatespacing
7552
7553         * lily/paper-system-scheme.cc (LY_DEFINE): remove ly:paper-system-{extent,stencil}
7554         (LY_DEFINE): new function ly:paper-system-set-property!
7555
7556         * Documentation/user/global.itely (Paper size): explain how to add
7557         sizes.
7558
7559         * scm/paper.scm (paper-alist): rename tabloid paper to 11x17 to
7560         correspond to GS's definition.
7561
7562         * lily/tuplet-bracket.cc (after_line_breaking): suicide empty
7563         tuplet bracket.
7564         (print): only connect to next bracket if the next one is alive.
7565         (print): set padding to 0.0 if the bound is a breakable
7566         column. This makes tupletFullLength brackets reach up to the staff
7567         line if it doesn't connect to the next line.
7568
7569 2005-09-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7570
7571         * lily/bar-number-engraver.cc: correct docs.
7572
7573         * scm/output-lib.scm (first-bar-number-invisible): rename from
7574         default-bar-number-visibility
7575
7576 2005-09-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7577
7578         * scm/define-music-properties.scm (all-music-properties): remove
7579         predicate property.
7580
7581 2005-09-28  Heikki Junes  <hjunes@cc.hut.fi>
7582
7583         * po/fi.po: refresh.
7584
7585 2005-09-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7586
7587         * input/regression/hara-kiri-pianostaff.ly (disappear): remove
7588         superfluous s1.
7589         (disappear): bugfix.
7590
7591         * lily/stem-tremolo.cc (raw_stencil): read slope property.
7592
7593         * lily/include/paper-system.hh (class Paper_system): remove
7594         staff_extents_ member.
7595
7596         * lily/paper-system-scheme.cc (LY_DEFINE): remove.
7597
7598         * lily/include/paper-system.hh (class Paper_system): remove
7599         number_ variable. Remove is_title_. Remove break_before_penalty_
7600
7601         * lily/paper-book.cc (systems): use 'number property iso. number_
7602         member.
7603
7604         * lily/paper-system-scheme.cc: remove ly:paper-system-break-before-penalty
7605         remove ly:paper-system-number.
7606
7607         * scm/lily-library.scm (paper-system-title?): new function.
7608
7609         * lily/book.cc (process): bugfix: flip ?: cases. 
7610
7611         * Documentation/user/changing-defaults.itely (Difficult tweaks):
7612         add outputProperty.
7613
7614         * ly/music-functions-init.ly: add outputProperty music function.
7615
7616         * scm/paper.scm (set-paper-dimension-variables): add pagetopspace
7617
7618         * scm/page-layout.scm (ly:optimal-page-breaks): read next-space
7619         and next-padding.
7620         (optimal-page-breaks): rename from ly:optimal-page-breaks.
7621
7622         * lily/paper-system-scheme.cc (LY_DEFINE): new function.
7623
7624         * lily/paper-system.cc (internal_get_property): new function.
7625
7626         * Documentation/user/global.itely (Vertical spacing): refer to
7627         page-spacing.ly
7628
7629         * scm/page-layout.scm (ly:optimal-page-breaks): add support for
7630         pagetopspace
7631
7632         * input/regression/page-spacing.ly: new file.
7633
7634         * input/regression/page-top-space.ly: new file.
7635
7636         * lily/spacing-spanner.cc: cmath -> math.h
7637
7638         * lily/paper-system.cc (read_left_bound): new function. Read
7639         line-break-system-details from left bound to determine extents.
7640  
7641         * Documentation/user/programming-interface.itely (Using LilyPond
7642         syntax inside Scheme): change applyxxx -> applyXxx.
7643
7644         * ly/music-functions-init.ly: add outputProperty music function.
7645
7646         * lily/parser.yy (Generic_prefix_music_scm): add scm-scm-scm signature.
7647
7648         * lily/grob-scheme.cc (LY_DEFINE): add ! to ly:grob-suicide! name.
7649
7650         * python/convertrules.py (conv): rule
7651
7652         * ly/music-functions-init.ly: applyxxx -> applyXxx
7653
7654         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): alias
7655         TabVoice to Voice.
7656
7657 2005-09-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7658
7659         * flower/include/real.hh: include <math.h> iso. <cmath>
7660
7661         * flower/include/offset.hh: include real.hh
7662
7663 2005-09-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7664
7665         * Documentation/user/changing-defaults.itely (Difficult tweaks):
7666         fix example, now that 'interfaces is no longer directly available.
7667
7668         * lily/book.cc (process): don't crash if paper == NULL.
7669
7670         * po/fr.po: update.
7671
7672 2005-09-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7673
7674         * scm/define-music-types.scm (music-descriptions): set length and
7675         start-callback for QuoteMusic
7676
7677 2005-09-15  Mats Bengtsson  <mabe@s3.kth.se>
7678
7679         * lily/tie.cc (get_configuration): Replace fabs -> abs for integer
7680         arguments. Fixes compilation error with gcc 3.3.
7681
7682 2005-09-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7683
7684         * VERSION: release 2.7.10
7685
7686         * stepmake/stepmake/python-module-rules.make
7687         ($(outdir)/%$(SHARED_MODULE_SUFFIX)): SHARED_FLAGS at the end.  
7688
7689         * lily/*.cc: remove <cmath> everywhere. <cmath> is included from
7690         real.hh
7691
7692 2005-09-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7693
7694         * stepmake/stepmake/c++-vars.make (#EXTRA_CXXFLAGS): don't add
7695         -Werror. Otherwise GCC barfs over various optimizations.
7696
7697         * scm/define-grob-properties.scm (all-internal-grob-properties):
7698         add note-head property
7699
7700         * Documentation/user/instrument-notation.itely (Laissez vibrer
7701         ties): new node.
7702
7703         * input/regression/laissez-vibrer-ties.ly: new file.
7704
7705         * lily/laissez-vibrer-engraver.cc: new file.    
7706
7707         * lily/include/tie-column-format.hh: new file.
7708
7709         * lily/tie-column-format.cc: new file. 
7710
7711         * lily/tie-column.cc (set_manual_tie_configuration): new function.
7712
7713         * lily/laissez-vibrer-tie.cc: new file.
7714
7715         * lily/include/laissez-vibrer-tie.hh: new file.
7716
7717         * ly/engraver-init.ly: add Laissez_vibrer_engraver
7718
7719         * ly/declarations-init.ly (laissezVibrer): add \laissezVibrer
7720
7721         * scm/define-grobs.scm (all-grob-descriptions): add
7722         LaissezVibrerTie, LaissezVibrerTieColumn
7723
7724         * lily/tie-column.cc (set_tie_config_directions): new function
7725         (final_shape_adjustment): new function.
7726         (shift_small_ties): new function.
7727
7728         * scm/define-music-types.scm (music-descriptions): add LaissezVibrerEvent
7729
7730         * lily/include/tie.hh (struct Tie_details): add x_gap_
7731         (struct Tie_configuration): add head_position_
7732
7733         * lily/tie-column.cc (set_chord_outline): new function.
7734
7735         * mf/cmr.enc.in:  remove file.
7736
7737 2005-09-11  Graham Percival  <gpermus@gmail.com>
7738
7739         * Documentation/user/examples.itely: typo fix.  Thanks, Matevž
7740
7741 2005-09-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7742
7743         * mf/feta-banier.mf: make vertical stem 1/2 stemthickness wide to
7744         reduce aliasing effects.
7745
7746         * lily/tie-column.cc (set_chord_outlines): bugfix: insert complete
7747         box in skyline.
7748
7749 2005-09-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7750
7751         * lily/tie.cc (get_configuration): don't crash if left_dot is NULL.
7752
7753         * flower/include/real.hh: std::fabs too.
7754
7755 2005-09-08  Jan Nieuwenhuizen  <janneke@gnu.org>
7756
7757         * Documentation/user/lilypond.tely: Spell Baßtuba in UTF-8 (Werner). 
7758
7759         * lily, flower: Include C++ iso C headers.  Import namespace std
7760         throughout.
7761
7762         * lily/side-position-interface.cc: 
7763         * lily/scm-hash.cc: 
7764         * lily/note-head.cc: 
7765         * lily/include/includable-lexer.hh: 
7766         * flower/include/string-data.icc: Remove using std::*.
7767
7768         * lily, flower: Include C++ iso C headers.  Import namespace std
7769         throughout.
7770
7771         * lily/side-position-interface.cc: 
7772         * lily/scm-hash.cc: 
7773         * lily/note-head.cc: 
7774         * lily/include/includable-lexer.hh: 
7775         * flower/include/string-data.icc: Remove using std::*.
7776
7777         * Documentation/user/instrument-notation.itely (Entering lyrics):
7778         Multiple latin-1->utf-8 conversion fix.
7779
7780         * Documentation/user/*tely: Update Emacs cookie to utf-8.
7781
7782 2005-09-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7783
7784         * lily/tie.cc (get_configuration): also avoid dots for non-space
7785         situations.
7786
7787 2005-09-07  Jan Nieuwenhuizen  <janneke@gnu.org>
7788
7789         * Documentation/user/instrument-notation.itely: Bugfix.
7790
7791 2005-09-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7792
7793         * tex/GNUmakefile: don't install texinfo.tex
7794
7795         * tex/ : cleanup: remove unused files.
7796
7797         * lily/general-scheme.cc: remove my_{isinf,isnan}.
7798
7799         * flower/include/real.hh: using std::{isnan,isinf}
7800         
7801         * VERSION (PATCH_LEVEL): release 2.7.9
7802
7803 2005-09-05  Graham Percival  <gpermus@gmail.com>
7804
7805         * Documentation/user/ instrument-notation.itely,
7806         advanced-notation.itely: minor tweaks.
7807
7808         * input/test/script-chart.ly: add item padding.
7809
7810 2005-09-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7811
7812         * flower/offset.cc: use math.h iso. <cmath>
7813
7814         * scm/ps-to-png.scm (make-ps-images): use png16m again, for sake
7815         of IE users.
7816
7817         * scm/framework-eps.scm (dump-stencils-as-EPSes): cleanup.
7818         (widen-left-stencil-edges): new function. Fix alignment problems
7819         with LaTeX includegraphics.
7820
7821         * lily/text-interface.cc (interpret_markup): use abort().
7822
7823 2005-09-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7824
7825         * input/regression/tie-chord.ly (testLong): add a chord in 4ths
7826
7827         * lily/tie.cc (get_configuration): update bezier shape as we
7828         change Y positions.
7829         (get_configuration): don't move large ties if we're outside of the
7830         staff.
7831
7832 2005-09-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7833
7834         * scm/define-markup-commands.scm (strut): swap X and Y dims.
7835         
7836 2005-09-03  Jan Nieuwenhuizen  <janneke@gnu.org>
7837
7838         * .cvsignore: Add auto-generated configure files and then some.
7839
7840 2005-09-02  Jan Nieuwenhuizen  <janneke@gnu.org>
7841
7842         * scm/define-grobs.scm (DynamicLineSpanner): Add
7843         X-extent-callback.  Fixes hairpin-slur collision.
7844
7845 2005-08-31  Graham Percival  <gpermus@gmail.com>
7846
7847         * Documentation/user/advanced-notation.itely,
7848         basic-notation.itely: minor changes.
7849
7850 2005-08-31  Mats Bengtsson  <mabe@s3.kth.se>
7851
7852         * scm/framework-eps.scm (dump-stencils-as-EPSes): Insert a
7853         \linebreak between each .eps file if \betweenLilyPondSystem is
7854         undefined. 
7855
7856         * Documentation/user/lilypond-book.itely (Integrating LaTeX and
7857         music): Document the \linebreak
7858
7859         * Documentation/user/lilypond-book.itely,
7860         input/tutorial/lbook-latex-test.tex,
7861         Documentation/user/examples.itely: Remove \usepackage{graphics}
7862
7863 2005-08-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7864
7865         * mf/aybabtu.pe.in (i): don't merge alphabet into aybabtu.
7866
7867         * lily/ly-module.cc (make_stand_in_procs_weak): 1.6.4 and earlier
7868         compat bugfix.
7869
7870         * scripts/lilypond-book.py (PREAMBLE_LY): define
7871         inside-lilypond-book
7872         (modify_preamble): new function. Insert \RequirePackage{graphics}
7873         when no {graphics found in preamble.  
7874
7875 2005-08030  Graham Percival  <gpermus@gmail.com>
7876
7877         * Documentation/user/basic-notation.itely, global.itely,
7878         tutorial.itely: misc small changes.
7879
7880 2005-08-30  Jan Nieuwenhuizen  <janneke@gnu.org>
7881
7882         * stepmake/aclocal.m4: Include MY_PATCH_LEVEL in config.make's
7883         VERSION.
7884
7885 2005-08-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7886
7887         * lily/tie-column.cc (new_directions): put Tie down on center
7888         staff line. 
7889
7890         * lily/script-interface.cc (before_line_breaking): use
7891         Grob::programming_error
7892
7893         * scm/ps-to-png.scm (make-ps-images): use pngalpha device.
7894
7895         * scripts/lilypond-book.py (get_latex_textwidth): oops. Take [0]
7896         of splitext.
7897
7898 2005-08-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7899
7900         * VERSION (PACKAGE_NAME): VERSION release 2.7.8
7901
7902 2005-08-29  Werner Lemberg  <wl@gnu.org>
7903
7904         * mf/GNUmakefile: Add `-f' flag to `rm' command while removing
7905         the `*.scale.pfa' files to avoid warnings.
7906
7907 2005-08-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7908
7909         * lily/tempo-performer.cc (process_music): idem.
7910
7911         * lily/midi-def.cc (get_tempo): Rational to int conversion bug.
7912
7913 2005-08-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7914
7915         * Documentation/user/advanced-notation.itely (Text markup): not a
7916         fragment.
7917
7918         * lily/midi-item.cc (to_string): use to_int() iso. int cast.
7919
7920         * lily/staff-performer.cc (initialize): add tempo/name to
7921         audio_staff_
7922
7923
7924 2005-08-26  Graham Percival  <gpermus@gmail.com>
7925
7926         * Documentation/user/advanced.itely: add text-only example.
7927
7928         * Documentation/user/invoking.itely: add index entries for
7929         convert-ly.
7930
7931         * Documentation/user/ tutorial.itely, basic-notation.itely:
7932         small fixes suggested by Steve D.  Thanks!
7933
7934 2005-08-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7935
7936         * input/regression/markup-bidi-pango.ly: new file.
7937
7938         * lily/pango-font.cc (pango_item_string_stencil): make Mingw code
7939         standard. Remove #ifdef. Remove memleak.
7940         (text_stencil): use text_dir to decide how to composite items.
7941         (text_stencil): determine uniform text direction for the entire
7942         string.
7943
7944         * scripts/lilypond-book.py (output_name): remove
7945         latex_filter_cmd. Non-portable to non-Unix systems. 
7946         (get_latex_textwidth): use File.write and os.unlink() instead.
7947
7948         * THANKS: add Vicente & Trevor.
7949
7950         * lily/grob.cc (discretionary_processing): look up origin for
7951         programming_error too. 
7952
7953         * input/regression/tie-broken.ly: new file.
7954
7955         * lily/tie-column.cc (set_chord_outlines): set outline for line
7956         break case too.
7957         
7958 2005-08-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7959
7960         * lily/pango-font.cc (text_stencil): don't translate glyphs in
7961         unscaled transform, just translate stencils.
7962
7963         * ly/performer-init.ly: init timing to #t.  Fixes bar checks in
7964         MIDI.
7965
7966         * scm/define-markup-commands.scm (wordwrap-string): use
7967         text-direction
7968         (wordwrap-stencils): idem.
7969         (line): idem.
7970         (fill-line): idem.
7971         (wordwrap-stencils): translate last line to right for
7972         text-direction = LEFT.
7973
7974         * scm/define-grob-properties.scm (all-user-grob-properties): add
7975         text-direction.
7976
7977 2005-08-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
7978
7979         * lily/lily-parser.cc (Lily_parser): also copy output_basename_
7980         when copying a Lily_parser object.
7981
7982 2005-08-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7983
7984         * scm/define-markup-commands.scm (null): add null markup.
7985
7986 2005-08-25  Mats Bengtsson  <mabe@s3.kth.se>
7987
7988         * lily/item.cc: Add documentation of center-invisible
7989
7990 2005-08-24  Graham Percival  <gpermus@gmail.com>
7991
7992         * Documentation/user/advanced-notation.itely: add info about
7993         raising text.
7994
7995         * Documentation/user/programming-interface.itely: fix example
7996         involving raised text.
7997
7998 2005-08-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7999
8000         * lily/beam.cc (print): fix X start/end points of isolated
8001         beamlets.
8002
8003         * scm/output-ps.scm (grob-cause): escape spaces in URLs.
8004
8005         * lily/multi-measure-rest.cc (set_text_rods): new function.
8006
8007         * lily/vertical-align-engraver.cc (process_music): call
8008         Align_interface::set_axis(). This forces #'elements to be ordered,
8009         preventing random vertical reordering of staves.
8010
8011         * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
8012         add avoid-slur property. 
8013
8014         * Documentation/user/basic-notation.itely (Measure repeats): add
8015         countPercentRepeats example.
8016
8017         * Documentation/user/advanced-notation.itely (Other text markup
8018         issues): remove remark about normal-font.  We have \normal-text
8019
8020         * input/regression/tie-chord.ly: add note about remaining bugs.
8021
8022         * lily/tie.cc (print): try Tie_column::set_directions () if
8023         control-points not yet defined.
8024
8025 2005-08-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8026
8027         * lily/system-start-delimiter.cc (staff_brace): don't remove brace
8028         extent. This fixes braces falling out of the EPS bbox.
8029
8030         * mf/feta-beugel.mf (braces_per_font): make brace glyph align
8031         exactly to bbox.
8032
8033 2005-08-23  Graham Percival  <gpermus@gmail.com>
8034
8035         * {various} : change #up->#UP and #down->#DOWN.
8036
8037         * ly/titling-init.ly: Spacing fix when using printallheaders=##t.
8038
8039         * Documentation/user/advanced-notation.itely: clarify
8040         what objects handles text on a multimeasure rest.
8041
8042 2005-08-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8043
8044         * VERSION (PATCH_LEVEL): release 2.7.7
8045
8046 2005-08-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8047
8048         * make/lilypond-vars.make: set -dgs-font-load for "make web" 
8049
8050         * Documentation/topdocs/INSTALL.texi (Top): add GS bugfix requirement.
8051
8052         * input/regression/*.ly: formatting clean-up. Default layout
8053         before music expression.
8054
8055         * input/mutopia/R.Schumann/GNUmakefile (examples): switch off
8056         romanze28-2 example.
8057
8058         * scm/ps-to-png.scm: remove dir-re function.
8059         (make-ps-images): generate page names, instead of globbing them.
8060         This brings down LilyPond memory usage for make web by a factor
8061         10. 
8062
8063         * scripts/lilypond-book.py (Lilypond_snippet.png_is_outdated):
8064         don't use glob. With 3000 files, globbing
8065         Documentation/user/out-www/ can take too much time. 
8066         
8067         * lily/lily-guile.cc (gulp_file_to_string): take size argument.
8068
8069         * lily/general-scheme.cc (LY_DEFINE): take optional size argument.
8070
8071         * input/regression/tie-manual.ly: new file
8072
8073         * input/regression/tie-chord.ly: update.
8074
8075         * flower/include/interval.hh (struct Interval_t): 
8076
8077         * lily/tie.cc (distance): new function 
8078         (height): new function.
8079         (init): new function
8080         (Tie_details): new struct.
8081
8082         * lily/skyline.cc (skyline_height): new function.
8083
8084         * lily/tie-column.cc (set_chord_outlines): new function.
8085         (new_directions): read tie-configuration
8086
8087         * lily/skyline.cc: fix ASCII art.
8088         
8089 2005-08-22  Mats Bengtsson  <mabe@s3.kth.se>
8090
8091         * python/convertrules.py (string_or_scheme): Fix spelling error
8092
8093 2005-08-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8094         
8095         * lily/tie-column.cc (set_directions): set directions only once.
8096         (add_configuration): new function.
8097
8098         * lily/tie.cc (set_control_points): new function
8099
8100         * lily/tie-column.cc (new_directions): new function.
8101
8102         * ly/music-functions-init.ly: set 'pitch property
8103         iso. trill-pitch. This makes \relative work with \pitchedTrill
8104
8105         * lily/tie.cc (get_configuration): new function. Don't generate
8106         control points, rather, generate configuration.
8107         remove head-pair property.
8108
8109         * lily/include/tie.hh (struct Tie_configuration): new struct.
8110
8111 2005-08-22  Heikki Junes  <hjunes@cc.hut.fi>
8112
8113         * Documentation/topdocs/NEWS.tely: clarify.
8114
8115 2005-08-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8116
8117         * lily/tie.cc: remove minimum-length
8118
8119         * scm/define-grob-properties.scm (all-user-grob-properties):
8120         remove staffline-clearance, y-offset 
8121
8122         * input/regression/tie-dots.ly (Module): remove.
8123
8124         * lily/tie.cc (get_control_points): rewrite. Put short ties in
8125         staff-spaces, make long ties cross staff lines. Avoid flags and dots.
8126
8127         * input/regression/tie-single.ly: new file.
8128
8129 2005-08-21  Graham Percival  <gpermus@gmail.com>
8130
8131         * ly/bagpipe.ly: fix compile problem.
8132
8133 2005-08-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8134
8135         * lily/midi-item.cc (name): new method.
8136
8137         * lily/staff-performer.cc (acknowledge_audio_element): use
8138         signature of baseclass.
8139
8140         * lily/engraver-group.cc (do_announces): move recursion call out
8141         of while loop. 
8142
8143         * lily/drum-note-performer.cc (class Drum_note_performer): use
8144         process_music everywhere.
8145
8146         * ly/performer-init.ly: add default children everywhere.
8147
8148         * lily/paper-book.cc (output): call paper-book-write-midis
8149         directly: always write MIDI, even if no \layout {} block. 
8150
8151 2005-08-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8152
8153         * VERSION (PACKAGE_NAME): release 2.7.6
8154
8155         * lily/percent-repeat-engraver.cc (try_music): don't print warning
8156         about not being able to handle repeat.
8157
8158 2005-08-19  Jan Nieuwenhuizen  <janneke@gnu.org>
8159
8160         * Documentation/user/examples.itely (Piano templates):
8161         * lily/include/performer-group.hh: Remove last traces of
8162         Performer_group_performer.  Fixes make web.
8163
8164 2005-08-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8165
8166         * Documentation/user/examples.itely (Piano templates): change
8167         Engraver_group_engraver -> Engraver_group
8168
8169         * lily/ly-module.cc (make_stand_in_procs_weak): only kludge if
8170         scm_stand_in_procs is not weak_any.
8171
8172         * lily/volta-bracket.cc (print): don't use strcmp().
8173
8174         * lily/volta-engraver.cc (process_music): use
8175         Text_interface::is_markup() for setting the 'text property of the
8176         volta bracket.
8177
8178         * input/mutopia/claop.py (accents): update syntax to 2.6
8179
8180         * scm/define-context-properties.scm
8181         (all-user-translation-properties): add countPercentRepeats.
8182
8183         * Documentation/user/basic-notation.itely (Measure repeats): add
8184         isolated percent example.
8185
8186 2005-08-18  Graham Percival  <gpermus@gmail.com>
8187
8188         * input/ {various}: change direction #1, #-1 to
8189         #up/#down or \fooUp, \fooDown.
8190
8191         * Documentation/user/music-glossary.tely: #-1 to #down.
8192
8193         * ly/bagpipe.ly, engraver-init.ly, property-init.ly: #1
8194         to #up, #-1 to #down.
8195
8196 2005-08-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8197
8198         * lily/include/engraver-group.hh: rename.
8199
8200         * lily/include/performer-group.hh: rename.
8201
8202 2005-08-18  Mats Bengtsson  <mabe@s3.kth.se>
8203
8204         * input/test/script-abbreviations.ly: Removed some old LaTeX
8205         left overs.
8206
8207 2005-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
8208
8209         * python/convertrules.py (conv): inside-slur -> avoid-slur.
8210         Remove functions.  Remove if 1: constructs, reindent.
8211
8212         * scripts/convert-ly.py (add_version): Add functions from
8213         convertrules.py
8214
8215         * scm/script.scm (default-script-alist):
8216         s/priority/script-priority.  Fixes script stacking.  Backportme.
8217         (Fermata): Very low priority.
8218
8219 2005-08-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8220
8221         * input/regression/*.ly: remove superfluous \score blocks. Reindent.
8222
8223         * input/regression/slur-script.ly: remove padding tweaks. Add
8224         comment strings.
8225
8226         * lily/note-spacing.cc (get_spacing): remove kludge for EOL wide
8227         time sigs and related stuff.
8228
8229         * scm/define-grob-properties.scm (all-user-grob-properties): add
8230         @code{} tags to property description.
8231
8232         * lily/include/line-group-group-engraver.hh (Module): remove file.
8233
8234         * python/convertrules.py (conv): add rule for
8235         Engraver_group_engraver -> Engraver_group.
8236
8237         * lily/include/performer-group-performer.hh: analogous.
8238
8239         * lily/include/engraver-group-engraver.hh: rename to Engraver_group.
8240
8241         * lily/context-def.cc (instantiate): check for
8242         Engraver_group_engraver and Performer_group_performer not
8243         Engraver/Performer. Fixes crashes when doing \with { \consists .. }
8244  
8245 2005-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
8246
8247         * input/les-nereides.ly: Remove three fingering tweaks, update
8248         remaining one.
8249
8250         * input/regression/slur-script-inside.ly: Update, fix doc.
8251
8252         * scm/script.scm: Update to avoid-slur.
8253
8254         * scm/define-grob-properties.scm (avoid-slur): New property.
8255
8256         * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
8257         * lily/slur-engraver.cc (acknowledge_extra_object): Invoke
8258         outside_slur_callback if avoid-slur != #'inside.
8259
8260         * scm/define-grobs.scm (Fingering, Textscript): No
8261         inside-slur/outside-slur preference.
8262         (DynamicLineSpanner): Always outside slur.
8263
8264         * input/regression/slur-script.ly: More tests.
8265
8266 2005-08-17  Graham Percival  <gpermus@gmail.com>
8267
8268         * Documentation/user/lilypond-book: fix notime entry.
8269
8270         * Documentation/user/advanced-notation.itely: add info on
8271         getting an I rehearsal mark.
8272
8273         * Documentation/user/putting.itely: reinstate "I", re-enforce
8274         the fact that \override numbers are the result of
8275         experimentation and personal taste.
8276
8277         * Documentation/user/invoking.itely: update convert-ly bugs.
8278
8279 2005-08-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8280
8281         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set timing
8282         to #t.
8283
8284         * lily/timing-translator.cc (initialize): don't initialize timing.
8285
8286         * input/regression/stem-spacing.ly (Module): remove file.
8287
8288         * input/regression/spacing-stick-out.ly: specify Score context for
8289         \override
8290
8291         * input/regression/clefs.ly: remove spurious {}s 
8292
8293 2005-08-17  Heikki Junes  <hjunes@cc.hut.fi>
8294
8295         * Documentation/topdocs/NEWS.tely,
8296         input/regression/repeat-percent-count.ly: clarify a bit.
8297
8298 2005-08-16  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8299
8300         * input/no-notation/display-lily-tests.ly: delete
8301         display-lily-init call.
8302
8303         * ly/music-functions-init.ly (displayLilyMusic): move
8304         display-lily-init call at top level, so that the user should not
8305         have to call it.
8306
8307         * scm/define-music-display-methods.scm (note-name->lily-string):
8308         retrieve note names directly from pitchnames using new function `rassoc'.
8309         (display-lily-init): note names list construction removed.
8310
8311 2005-08-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8312
8313         * THANKS: spello.
8314
8315         * lily/lily-parser.cc (get_header): copy module, instead of
8316         returning it.
8317
8318         * Documentation/topdocs/NEWS.tely (Top): add entry for percent
8319         counters.
8320
8321         * Documentation/user/basic-notation.itely (Measure repeats): add
8322         links to Counter grobs.
8323
8324         * scm/define-grobs.scm (all-grob-descriptions): add
8325         DoublePercentRepeatCounter
8326         (all-grob-descriptions): add PercentRepeatCounter
8327
8328         * lily/percent-repeat-engraver.cc (class Percent_repeat_engraver):
8329         also create counter grobs.
8330
8331         * lily/separation-item.cc (extremal_break_aligned_grob): don't
8332         return grob without space-alist.
8333
8334         * input/proportional.ly: tune staff-padding.
8335
8336         * input/regression/repeat-percent-count.ly: new file. 
8337
8338 2005-08-16  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8339
8340         * input/no-notation/display-lily-tests.ly: moved from
8341         input/regression/ to input/no-notation. Be sure to call
8342         `display-lily-init' before trying to use the display function.
8343
8344 2005-08-16  Mats Bengtsson  <mabe@s3.kth.se>
8345
8346         * scripts/lilypond-book.py (option_definitions): Don't localize
8347         the empty string. Fixes bug when --psfonts was used with
8348         non-English locale.
8349
8350 2005-08-15  Graham Percival  <gpermus@gmail.com>
8351
8352         * lily/tuplet-bracket.cc: simple build fix.
8353
8354         * Documentation/user/putting.itely: use "we" instead of "I".
8355
8356         * Documentation/user/basic-notation.itely: cautionary accidentals
8357         work with naturals, too.
8358
8359 2005-08-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8360
8361         * lily/tuplet-bracket.cc (calc_position_and_height): add
8362         staff-padding support.
8363
8364         * input/proportional.ly: set staff-padding.
8365         
8366         * VERSION (PATCH_LEVEL): release 2.7.5
8367
8368         * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): text formatting
8369         fixes. Remove tweaks.
8370
8371         * input/regression/tuplet-slope.ly: add a test case.
8372
8373         * lily/tuplet-bracket.cc (calc_position_and_height): revert
8374         erroneous fix. Add spanner bounds to offset array with relative X
8375         positions.
8376
8377         * ly/engraver-init.ly: add Rest_engraver only once.
8378
8379         * scm/define-music-display-methods.scm (KeyChangeEvent): only do
8380         (*parser*) lookup if (*parser*) != #f.
8381
8382 2005-08-15  Jan Nieuwenhuizen  <janneke@gnu.org>
8383
8384         * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
8385         Cut-and paste update.
8386
8387         * input/regression/slur-script.ly: Add example of reverting
8388         inside-slur for fingering.
8389
8390         * scm/define-grobs.scm (DynamicLineSpanner, Fingering,
8391         TextScript): Explicitly set inside-slur #f, forcing these out of slur.
8392
8393         * lily/slur-engraver.cc (acknowledge_extra_object): Only invoke
8394         outside_slur_callback if inside-slur == #f (as opposed to unset).
8395
8396 2005-08-14  Jan Nieuwenhuizen  <janneke@gnu.org>
8397
8398         * tex/GNUmakefile (INSTALLATION_FILES): Remove enc symlink setup,
8399         encoding files are already removed.
8400
8401 2005-08-15  Mats Bengtsson  <mabe@s3.kth.se>
8402
8403         * Documentation/user/advanced-notation.itely (Instrument names):
8404         Document a workaround for instrument names that collide with
8405         system start braces/brackets.
8406
8407 2005-08-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8408
8409         * lily/rest-collision.cc (do_shift): spello.
8410
8411         * input/proportional.ly: use #'used property. Set break-overshoot
8412         property.
8413
8414         * mf/feta-arrow.mf: center on arrow tip center, iso. tip edge.
8415
8416         * lily/paper-column.cc: add #'used property
8417
8418         * lily/mark-engraver.cc (stop_translation_timestep): set grob
8419         array for staves found.
8420
8421         * lily/metronome-engraver.cc (stop_translation_timestep): set grob
8422         array for stavesFound.
8423
8424         * lily/staff-spacing.cc (next_note_correction): add fixed and
8425         space to calling convention. This fixes spacing of accidentals
8426         after barlines.
8427
8428         * input/regression/spacing-accidental-stretch.ly: add barline -
8429         accidental case.
8430
8431         * scm/framework-ps.scm (page-header): add version number to
8432         creator
8433         (eps-header): idem.
8434
8435         * mf/feta-bolletjes.mf: swap d0 and u0 fa heads.
8436         
8437 2005-08-13  Graham Percival  <gpermus@gmail.com>
8438
8439         * Documentation/user/global.itely: add "fit as much as
8440         possible onto this page" example (Vertical spacing).
8441
8442 2005-08-13  Jan Nieuwenhuizen  <janneke@gnu.org>
8443
8444         * *: Nitpick run.
8445
8446         * buildscripts/fixcc.py: Fixes.
8447
8448 2005-08-12  Graham Percival  <gpermus@gmail.com>
8449
8450         * Documentation/user/advanced-notation.itely: add markup
8451         example to Text spanners.
8452
8453 2005-08-12  Mats Bengtsson  <mabe@s3.kth.se>
8454
8455         * Documentation/user/basic-notation.itely (Ties): Add example of
8456         tying a tremolo to a chord. Thanks to Steve Doonan. 
8457
8458         * lily/tie-engraver.cc: Add tieWaitForNote to the list of read
8459         properties and move tieMelismaBusy to the list of written
8460         properties. 
8461
8462 2005-08-12  Heikki Junes  <hjunes@cc.hut.fi>
8463
8464         * po/TODO: suggest to use a dedicated tool like kbabel.
8465
8466         * po/fi.po: update using kbabel.
8467
8468 2005-08-12  Jan Nieuwenhuizen  <janneke@gnu.org>
8469
8470         * *: Remove obsolete files.  Nitpick run.
8471
8472         * lily/lily-guile.cc (parse_symbol_list): Bugfix.
8473
8474 2005-08-11  Jan Nieuwenhuizen  <janneke@gnu.org>
8475
8476         * mf/GNUmakefile (get-*-fonts): Rename from get-*-pfa.  Copy SVG
8477         too.
8478
8479         * Documentation/topdocs/NEWS.tely (Top): Add slur script feature.
8480
8481         * lily/lily-guile.cc (parse_symbol_list): Rewrite.  Grok multiple
8482         whitespace as symbol separator.
8483
8484         * lily/side-position-interface.cc: Add slur-padding.
8485
8486         * input/regression/slur-script.ly: Fixed.  Backportme?  This is
8487         quite a large fix, and it never worked in a stable release; so not
8488         really a regression.
8489
8490         * lily/phrasing-slur-engraver.cc (class Phrasing_slur_engraver):
8491         Update cut and paste code from Slur_engraver.
8492
8493         * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
8494         Add.
8495
8496         * scm/define-grobs.scm (DynamicLineSpanner): Add
8497         dynamic-line-spanner-interface.
8498         (DynamicLineSpanner, TextScript, Fingering): Add slur-padding.
8499
8500 2005-08-09  Jan Nieuwenhuizen  <janneke@gnu.org>
8501
8502         * lily/slur-engraver.cc (acknowledge_extra_object): Bugfix: use
8503         to_boolean () so that non-set 'inside-slur means false.
8504
8505         * lily/slur.cc (outside_slur_callback): Bugfixes: make sure that
8506         slur has control-points.  Skip script without direction.  Always
8507         do_shift if script inside slur, even if slur not contained in
8508         script y-extent.  Increment k in loop.
8509
8510 2005-08-11  Mats Bengtsson  <mabe@s3.kth.se>
8511
8512         * scm/define-markup-commands.scm: Improved regexp to search for
8513         EPS bounding boxes and corrected call to ly:warning.
8514
8515 2005-08-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8516
8517         * Documentation/user/programming-interface.itely (Displaying music
8518         expressions): doc for \displayLilyMusic. Also some precisions in
8519         "Markup construction in Scheme"
8520
8521 2005-08-10  Mats Bengtsson  <mabe@s3.kth.se>
8522
8523         * scm/define-markup-commands.scm (normal-text): Added 2 new
8524         markup commands, \normal-text and \medium (the latter thanks to
8525         Bruce Fairchild). 
8526
8527 2005-08-08  Graham Percival  <gpermus@gmail.com>
8528
8529         * Documentation/user/programming-interface.itely: fix @{ @}.
8530
8531         * scm/define-markup-commands.scm: add linewidth info to
8532         \justify and \wordwrap, add "upright is the opposite of italic".
8533
8534         * Documentation/user/advanced-notation.itely: shaped->shape,
8535         add (cons (markup "foo")) type of example to text markup,
8536         reword multi-measure rests section.
8537
8538         * lily/note-heads-engraver.cc: changed Shaped->Shape in a
8539         comment.  No actual code was touched.
8540
8541         * Documentation/user/invoking.itely: add more info about
8542         \include.  Thanks, Bruce!
8543
8544         * THANKS: add Bruce Fairchild, alphabetise.
8545
8546         * Documentation/user/global.itely: document \score{\header{}}
8547         behavior.
8548
8549         * Documentation/user/basic-notation.itely: reword multi-measure
8550         rest discussion in Rests.
8551
8552 2005-08-08  Mats Bengtsson  <mabe@s3.kth.se>
8553
8554         * Documentation/user/programming-interface.itely (Markup
8555         construction in Scheme): Corrected example and tried to clarify
8556         the implicit \line in the table.
8557
8558 2005-08-07  Graham Percival  <gpermus@gmail.com>
8559
8560         * Documentation/user/instrument-notation.itely: moved
8561         some bagpipe info back into the bagpipe section.  Somehow
8562         it ended up in the "other vocal issues" section?!  :o_O
8563
8564 2005-08-07  Jan Nieuwenhuizen  <janneke@gnu.org>
8565
8566         * scm/framework-ps.scm (dir-join): Rename from path-join (joins
8567         directories, not paths).
8568
8569 2005-08-06  Jan Nieuwenhuizen  <janneke@gnu.org>
8570
8571         * scm/framework-ps.scm (munge-lily-font-name): Bugfix: Munge only
8572         plain emmentaler/aybabtu.  Backportme.
8573
8574         * lily/tuplet-bracket.cc (calc_position_and_height): Bugfix:
8575         missing dir correction.
8576
8577 2005-08-05  Graham Percival  <gperlist@shaw.ca>
8578
8579         * scm/define-markup-commands: fix reversed justify/wordwrap
8580         doc strings.
8581
8582 2005-08-05  Jürgen Reuter  <reuter@ipd.uka.de>
8583
8584         * lily/ligature-engaver.cc, lily/coherent-ligature-engaver.cc,
8585         lily/gregorian-ligature-engaver.cc,
8586         lily/include/ligature-engraver.hh,
8587         lily/include/coherent-ligature-engraver.hh,
8588         lily/include/gregorian-ligature-engraver.hh: make these classes
8589         truely abstract.  This should fix some internal oddities such as
8590         duplicate as well as dead translator/property declarations, and
8591         also some dead code.
8592
8593         * lily/ligature-bracket-engraver.cc, lily/ligature-engraver.cc:
8594         bugfix: avoid message "junking empty ligature" on ligature
8595         brackets by collecting dummy grobs.
8596
8597 2005-08-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8598
8599         * lily/tuplet-bracket.cc (print): default right overshoot to 0.0
8600
8601         * input/proportional.ly (staffKind): bugfix.
8602         (staffKind): updates by Trevor Baca.
8603
8604         * scm/define-grobs.scm (all-grob-descriptions): remove arrows as
8605         default layout. 
8606
8607         * lily/tuplet-bracket.cc (print): check whether edge-text is a
8608         pair.
8609
8610         * lily/beam.cc (rest_collision_callback): call position_beam() if
8611         necessary.
8612
8613         * VERSION: release 2.7.4
8614
8615         * input/regression/spacing-uniform-stretching.ly: new file.
8616
8617         * lily/spacing-loose-columns.cc (set_loose_columns): use robust_relative_extent().
8618
8619         * Documentation/topdocs/NEWS.tely (Top): add Nicolas as
8620         contributor.
8621
8622         * lily/include/ly-module.hh: define MODULE_GC_KLUDGE globally.
8623
8624         * input/proportional.ly: new file.
8625
8626         * lily/tuplet-bracket.cc (after_line_breaking): don't suicide if
8627         columns is empty
8628
8629         * lily/tuplet-engraver.cc (finalize): new function. Reset right
8630         bounds to currentCommandColumn for the last step.
8631         (start_translation_timestep): if tupletFullLength is set, set
8632         bound to Paper Column
8633
8634         * input/regression/tuplet-full-length.ly (indent): new file.
8635
8636         * lily/spacing-loose-columns.cc (set_loose_columns): space a whole
8637         clique of loose columns, eg. a set of grace notes in strict
8638         notespacing.
8639
8640         * input/regression/spacing-strict-spacing-grace.ly: new file.
8641
8642         * lily/key-signature-interface.cc: change property name to
8643         alteration-alist
8644
8645         * lily/key-engraver.cc (read_event): read keyAlterationOrder, not
8646         keyAccidentalOrder
8647
8648         * python/convertrules.py (conv): keyAccidentalOrder ->
8649         keyAlterationOrder
8650
8651         * lily/key-engraver.cc (create_key): always print a cancellation
8652         for going to C-major/A-minor, regardless of printKeyCancellation.
8653         (create_key): remove typecheck for visibility. This fixes key
8654         signature not being printed.
8655
8656         * lily/spacing-determine-loose-columns.cc: new file.
8657
8658         * input/regression/spacing-strict-notespacing.ly: new file.
8659
8660         * lily/spacing-spanner.cc (generate_springs): rename from
8661         do_measure. 
8662         (generate_pair_spacing): new function.
8663         (init, generate_pair_spacing): set between-cols for floating
8664         nonmusical columns.
8665
8666         * lily/spaceable-grob.cc (get_spring): new function. 
8667
8668         * lily/tuplet-bracket.cc (print): on the left, the overshoot is
8669         relative to the right edge of the prefatory matter.
8670
8671         * lily/beam.cc (print): read break-overshoot to determine where to
8672         stop/start broken beams.
8673
8674         * input/regression/spanner-break-overshoot.ly: new file.
8675
8676 2005-08-04  Graham Percival  <gperlist@shaw.ca>
8677
8678         * ly/bagpipe.ly: updated.
8679
8680         * Documentat/user/instrument.itely: un-comment out bagpipe example.
8681
8682 2005-08-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8683
8684         * lily/dynamic-engraver.cc (acknowledge_slur): add slur to
8685         support: now (de)crescs avoid slurs as well.
8686
8687         * Documentation/user/instrument-notation.itely (Bagpipe example):
8688         comment out non-functioning bagpipe example.
8689         (Bagpipe definitions): idem.
8690
8691         * Documentation/topdocs/NEWS.tely (Top): add uniform-stretching example.
8692         (Top): add proportionalNotationDuration example.
8693
8694         * input/regression/spacing-proportional.ly: new file.
8695
8696         * lily/tuplet-bracket.cc (parallel_beam): broken bracket never is
8697         synched to a beam.
8698
8699         * lily/beam.cc (shift_region_to_valid): divide by zero fix. This
8700         fixes beams with a single stem (eg. beams across linebreaks.)
8701
8702         * lily/parser.yy (simple_string): allow \new STRING_IDENTIFIER.
8703
8704         * flower/rational.cc (operator +): prevent overflow. This fixes
8705         heavily nested tuplets.
8706
8707         * lily/auto-beam-engraver.cc (derived_mark): new method. Yes. We
8708         have to protect even those unlikely to be corrupted data members.  
8709
8710 2005-08-04  Graham Percival  <gperlist@shaw.ca>
8711
8712         * ly/bagpipe.ly: new file.
8713
8714         * THANKS: added Sven Axelsson.
8715
8716 2005-08-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8717
8718         * lily/spacing-engraver.cc (stop_translation_timestep): directly
8719         copy proportionalNotationDuration into currentMusicalColumn if
8720         set.
8721
8722         * lily/spacing-spanner.cc (musical_column_spacing): if
8723         uniform-stretching set, fixed space is 0.0
8724
8725         * input/regression/spacing-multi-tuplet.ly: show
8726         uniform-stretching property.
8727
8728         * lily/spacing-spanner.cc (effective_shortest_duration): new function.
8729
8730         * lily/include/spacing-spanner.hh (class Spacing_spanner): new file.
8731         (struct Spacing_options): new struct.
8732
8733         * lily/spacing-basic.cc: new file.
8734
8735         * lily/spacing-spanner.cc (note_spacing): remove outdated code:
8736         delta_t doesn't have to be smaller than shortest_playing_len
8737
8738 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8739
8740         * input/regression/markup-arrows.ly:  new file.
8741
8742         * lily/tuplet-bracket.cc: document new behavior.
8743
8744         * input/regression/tuplet-broken.ly: new file. Demonstrate tuplets
8745         with line breaks.
8746
8747         * scm/define-markup-commands.scm (arrow-head): arrow-head markup command.
8748
8749         * scm/define-grobs.scm (all-grob-descriptions): set arrows as
8750         default 
8751
8752         * lily/tuplet-bracket.cc: add edge-text property.
8753         add break-overshoot.
8754         (print): read break-overshoot.
8755         (print): read edge-text, add stencils.
8756
8757         * mf/feta-arrow.mf: new file.
8758
8759         * mf/feta-generic.mf: add feta-arrow.
8760
8761 2005-08-03  Mats Bengtsson  <mabe@s3.kth.se>
8762
8763         * Documentation/user/lilypond-book.itely (An example of a
8764         musicological document): Added flag -o to dvips for people who use
8765         the default setting in teTeX where output is sent to the printer. 
8766
8767         * Documentation/user/global.itely (Vertical spacing): Added
8768         reference to the Axis_group_engraver which documents the *Extent
8769         properties.
8770
8771 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8772
8773         * Documentation/user/basic-notation.itely (Tuplets): add note
8774         about nested tuplets. Remove BUG. 
8775
8776         * input/regression/tuplet-nest.ly: update: remove manual hack. 
8777
8778         * lily/tuplet-bracket.cc (print): use robust_scm2drul
8779         (print): manually call print() for subtuplets.
8780         (calc_position_and_height): add subtuplets to the
8781         support. Vertically shift outer tuplet 
8782
8783         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): set
8784         remove-first for Lyrics, ChordNames and FiguredBass
8785
8786         * scm/define-grob-properties.scm (all-internal-grob-properties):
8787         use ly:grob-array? iso. grob-list?
8788         (all-internal-grob-properties): add tuplets grob-array.
8789
8790         * lily/tuplet-bracket.cc (add_tuplet_bracket):
8791         new function
8792
8793 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8794
8795         * input/test/time-signature-staff.ly: new file.
8796
8797         * ly/declarations-init.ly (center): escape to Scheme. Fixes
8798         spurious #<Music FingerEvent> errors. Backportme.
8799
8800 2005-08-03  Mats Bengtsson  <mabe@s3.kth.se>
8801
8802         * Documentation/user/programming-interface.itely (Markup
8803         construction in Scheme): Corrected markup syntax in the
8804         translation table.
8805
8806 2005-08-03  Graham Percival  <gperlist@shaw.ca>
8807
8808         * Documentation/user/instrument-notation.itely: small update
8809         to bagpipe notation docs; thanks Sven!
8810
8811         * Documentation/user/basic-notation.itely: add link about trills.
8812
8813 2005-08-02  Graham Percival  <gperlist@shaw.ca>
8814
8815         * Documentation/user/music-glossary: remove accidentally committed
8816         fink patch.
8817
8818 2005-08-02  Yoshinobu Ishizaki  <isizaki@mte.biglobe.ne.jp>
8819
8820         * lily/lily-parser.cc (get_header): new function. Enable multiple
8821         \header definitions.
8822
8823         * lily/parser.yy (lilypond_header_body): use get_header.
8824
8825         * ly/init.ly:
8826         * scm/lily-library.scm (print-score-with-defaults): renamed
8827         $globalheader to $defaultheader
8828             
8829         * Documentation/user/global.itely (Creating titles): added short
8830         explanation that multiple headers are useable.
8831
8832
8833 2005-08-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8834
8835         * lily/module-scheme.cc (LY_DEFINE): new file. 
8836
8837         * Documentation/user/advanced-notation.itely (Font selection): add
8838         doco for make-pango-font-tree.
8839
8840 2005-07-31  Graham Percival  <gperlist@shaw.ca>
8841
8842         * Documentation/user/music-glossary: more languages
8843         for tenuto.
8844
8845         * Docuemntation/user/instrument-notation.itely: minor
8846         update for bagpipe example.
8847
8848 2005-07-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8849
8850         * input/regression/+.ly (TODO): add some text.
8851
8852 2005-07-28  Graham Percival  <gperlist@shaw.ca>
8853
8854         * Documentation/user/invoking.itely: \score begins with music.
8855
8856         * Documentation/user/ basic-notation.itely,
8857         instrument-notation.itely: minor changes.
8858
8859         * Documentation/user/music-glossary.itely: began tenuto entry.
8860
8861 2005-07-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8862
8863         * scm/output-socket.scm (bezier-sandwich): add bezier-sandwich
8864
8865         * mf/feta-bolletjes.mf: swap up and down for aiken heads.
8866
8867 2005-07-27  Graham Percival  <gperlist@shaw.ca>
8868
8869         * Documentation/user/examples.itely: remove bagpipe template.
8870
8871         * Documentation/user/instrument-notation.itely: add bagpipe
8872         section, maybe fix quotes in lyrics.  I hate text encoding.
8873         Clarify chord durations, more bagpipe stuff.
8874
8875 2005-07-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8876  
8877         * lily/accidental-engraver.cc: formatting fixes.
8878
8879         * lily/spacing-spanner.cc (prune_loose_columns): right-items is a
8880         grob-array.
8881
8882         * lily/arpeggio.cc (print): suicide arpeggio for single notehead.
8883
8884         * lily/note-column.cc (arpeggio): new function.
8885
8886         * lily/note-spacing.cc (get_spacing): also take arpeggio into
8887         account for spacing.
8888
8889 2005-07-25  Jan Nieuwenhuizen  <janneke@gnu.org>
8890
8891         * lily/main.cc (sane_setenv)[!ARGV0_RELOCATION]: Also define.
8892         (setup_guile_env): Use it instead of nonstandard setenv.  Fixes
8893         mingw build.
8894         
8895 2005-07-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8896
8897         * scm/lily.scm (lilypond-all): clear anonymous modules after
8898         processing files.
8899
8900 2005-07-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8901
8902         * flower/include/guile-compatibility.hh (SCM_I_CONSP): add
8903         SCM_I_CONSP
8904
8905         * VERSION: 2.7.3 released
8906
8907         * Documentation/user/invoking.itely (Invoking lilypond): add
8908         LILYPOND_GC_YIELD documentation.
8909
8910         * lily/*: cleanups: use scm_from_int iso. scm_int2num. Idem for
8911         scm_from_real / scm_make_real.
8912
8913         * lily/main.cc (setup_guile_env): new function. Set GC min_yields
8914         higher. This increases memory footprint, but provides overall
8915         speedup of 15 to 20%. 
8916
8917         * lily/include/translator.hh (class Translator): remove
8918         PRECOMPUTED_VIRTUAL everywhere.
8919
8920         * lily/include/lily-guile.hh: inline scm_c[ad]r, scm_is_pair.
8921
8922         * lily/context.cc (now_mom): non-recursive now_mom() 
8923
8924         * lily/include/profile.hh: new file.
8925
8926         * lily/profile.cc: new file.
8927
8928         * lily/grob.cc (Grob::Grob): look properties up directly.
8929
8930         * lily/open-type-font.cc (get_indexed_char): cache index -> bbox
8931         lookups.
8932
8933         * lily/include/box.hh (class Box): smob Box type.
8934
8935         * lily/smobs.cc (protect_smob): O(1) GC (un)protection.
8936
8937         * lily/include/smobs.hh (DECLARE_BASE_SMOBS): add methods
8938         protect() and unprotect(). Use throughout.
8939
8940 2005-07-24  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8941
8942         * Documentation/topdocs/NEWS.tely: new item for \displayLilyMusic
8943
8944         * scm/define-music-display-methods.scm (markup->lily-string):
8945         markup elements can also be strings (without simple-markup
8946         appended)
8947
8948 2005-07-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8949
8950         * lily/context.cc (where_defined): also assign value in
8951         where_defined().
8952
8953         * lily/bezier.cc (get_other_coordinate): use curve_coordinate
8954         (curve_coordinate): new function
8955
8956         * lily/simple-spacer.cc (add_columns): only add rods between
8957         column i and begin/end if keep-inside-line is set (this repleces
8958         allow-outside-line as default)
8959
8960 2005-07-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8961
8962         * lily/tuplet-engraver.cc (start_translation_timestep): only read
8963         tupletSpannerDuration if applicable.
8964
8965         * lily/font-size-engraver.cc (process_music): read fontSize only
8966         once per timestep.
8967
8968         * lily/engraver*cc: use throughout.
8969         
8970         * lily/include/translator.icc (ADD_ACKNOWLEDGER): new macro.
8971
8972         * lily/translator.cc (add_acknowledger): new file. Directly jump
8973         into an Engraver::acknowledge_xxx () method based on a grobs
8974         interface-list.
8975
8976         * lily/include/translator-dispatch-list.hh (class
8977         Engraver_dispatch_list): new struct, new file.
8978
8979         * scm/define-context-properties.scm
8980         (all-internal-translation-properties): remove acceptHashTable,
8981         acknowledgeHashTable
8982
8983         * lily/translator-group.cc (mark_smob): idem for acceptHashTable.
8984
8985         * lily/engraver-group-engraver.cc (Engraver_group_engraver):
8986         change acknowledgeHashTable to C++ member. 
8987
8988         * lily/rest-collision.cc (do_shift): use extract_grob_set().
8989
8990 2005-07-22  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8991
8992         * scm/display-lily.scm: new file. Define a `display-lily-music'
8993         function, that displays the music expression given as an argument,
8994         using LilyPond notation.
8995
8996         * scm/define-music-display-methods.scm: new file. Implementation
8997         of display methods for each music type.
8998
8999         * ly/music-functions-init.ly (displayLilyMusic): new function for
9000         displaying music with LilyPond notation.
9001
9002         * input/regression/display-lily-tests.ly: new regression test file
9003         for `display-lily-music'.
9004
9005         * scm/markup.scm: remove obsolete debugging code (for printing
9006         markups with LilyPond notation).
9007
9008         * scm/define-music-types.scm (music-name-to-property-table):
9009         * scm/clef.scm (supported-clefs): export, in order to be accessible
9010         from the (scm display-lily) module.
9011
9012 2005-07-22  Jan Nieuwenhuizen  <janneke@gnu.org>
9013
9014         * Documentation/topdocs/NEWS.tely (Top): Typo.
9015
9016 2005-07-22  Heikki Junes  <hjunes@cc.hut.fi>
9017
9018         * Documentation/index.html.in, Documentation/texinfo.css,
9019           stepmake/bin/text2html.py, buildscripts/mutopia-index.py,
9020           Documentation/bibliography/index.html.in,
9021           Documentation/bibliography/html-long.bst: revert css-width patch,
9022           it does not work with IE6.
9023
9024 2005-07-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9025
9026         * Documentation/texinfo.css: revert 760px hack. 
9027
9028         * VERSION: release 2.7.2
9029
9030         * Documentation/topdocs/NEWS.tely (Top): mention barNumberCheck
9031
9032         * Documentation/user/basic-notation.itely (Barnumber check): add
9033         section.
9034
9035         * scm/music-functions.scm (skip-to-last): new function. Show only
9036         last showLastLength part of the \score.
9037
9038         * lily/moment-scheme.cc (LY_DEFINE): new function ly:moment-sub
9039
9040         * python/convertrules.py (conv): add ly:x-moment rule
9041
9042         * lily/moment-scheme.cc (LY_DEFINE): rename ly:X-moment  -> ly:moment-X
9043
9044         * Documentation/topdocs/NEWS.tely (Top): add new feature.
9045
9046         * Documentation/user/instrument-notation.itely (Flexibility in
9047         alignment): options in subsections.
9048
9049         * lily/lyric-engraver.cc (process_music): don't typeset text for _
9050         syllable text. Instead, assume that the previous lyric text is a
9051         melismated text.
9052
9053         * Documentation/index.html.in: revert 800x600 change.
9054
9055 2005-07-19  Jan Nieuwenhuizen  <janneke@gnu.org>
9056
9057         * lily/main.cc (main): Remove invalid handle kludge.
9058
9059         * scm/lily.scm (running-from-gui?): WINDOWS: check -dgui.
9060         (lambda): add gui define.
9061
9062 2005-07-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9063
9064         * Documentation/topdocs/NEWS.tely (Top): add note about Musica ficta.
9065
9066         * Documentation/user/instrument-notation.itely (Musica ficta
9067         accidentals): add section Musica ficta accidentals
9068
9069         * lily/accidental-engraver.cc (make_suggested_accidental): new
9070         function.
9071         (make_standard_accidental): move into new function.
9072         (create_accidental): new function.
9073
9074         * scm/define-grobs.scm (all-grob-descriptions): new Grob
9075         AccidentalSuggestion
9076
9077         * lily/output-def-scheme.cc (LY_DEFINE): take default  argument.
9078
9079         * lily/output-def.cc (lookup_variable): return SCM_UNDEFINED if
9080         undefined.
9081
9082         * Documentation/user/global.itely (Page formatting): document
9083         horizontalshift.
9084
9085         * scm/page-layout.scm (default-page-music-height):
9086         horizontalshift: new variable, shift all systems by
9087         horizontalshift to the right, to make space for instrument names.
9088
9089         * scm/paper.scm (set-paper-dimension-variables): add horizontalshift
9090
9091         * lily/input-scheme.cc (LY_DEFINE): take format commands.
9092
9093 2005-07-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9094
9095         * lily/note-column.cc (dir): idem.
9096
9097         * lily/spacing-spanner.cc (Module): idem.
9098
9099         * lily/script-column.cc (before_line_breaking): use extract_grob_set()
9100
9101         * lily/include/paper-column.hh (class Paper_column): add
9102         non-static get_rank() member.
9103
9104         * VERSION: release 2.7.1
9105         
9106         * scm/framework-null.scm: new file, used for benchmarking.
9107
9108 2005-07-20  Heikki Junes  <hjunes@cc.hut.fi>
9109
9110         * Documentation/topdocs/INSTALL.texi, configure.in: fix
9111         version dependencies for fontforge and gs.
9112
9113         * Documentation/index.html.in, Documentation/texinfo.css,
9114         stepmake/bin/text2html.py, buildscripts/mutopia-index.py,
9115         Documentation/bibliography/index.html.in, 
9116         Documentation/bibliography/html-long.bst: optimize width of
9117         html for a 800x600 screen (width:760), increases printability
9118         when 'fit to page' is not set and readability in wide screens.
9119
9120         * stepmake/bin/add-html-footer.py: add missing </p>.
9121
9122 2005-07-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9123
9124         * scm/define-markup-commands.scm (beam): use polygon in beam
9125         command.
9126
9127         * lily/grob-pq-engraver.cc (stop_translation_timestep): save up
9128         all acknowledged grobs, and do potentially expensive merge and
9129         write in one go.
9130
9131         * buildscripts/mf-to-table.py (write_fontlist): enforce noBreak.
9132
9133         * configure.in (reloc_b): add --enable-static-gxx to statically
9134         link to libstdc++
9135
9136         * lily/GNUmakefile (static-gxx-libs): new target
9137         static-gxx-libs. Create symlink to libstdc++.a
9138
9139         * lily/new-lyric-combine-music-iterator.cc: rename to
9140         Lyric_combine_music_iterator
9141
9142         * lily/lyric-combine-music-iterator.cc
9143         (Old_lyric_combine_music_iterator): rename to
9144         Old_lyric_combine_music_iterator
9145
9146         * lily/*-engraver.cc (various): remove double use of
9147         PRECOMPUTED_VIRTUAL function: only use
9148         start_translation_timestep() and stop_translation_timestep(), not
9149         both.
9150
9151         * lily/break-substitution.cc (fast_substitute_grob_array): do
9152         fast_substitute_grob_array for all unordered grob_arrays.
9153         (substitute_grob): return Grob *. Saves packing/unpacking SCMs.
9154         (substitute_grob_array): optimize.
9155
9156         * lily/align-interface.cc (set_axis): set ordered_ for 'elements
9157
9158         * lily/include/grob-array.hh (class Grob_array): ordered_ member.
9159
9160         * lily/parser.yy: revert $globalheader patch.
9161         
9162         * lily/include/translator.icc
9163         (IMPLEMENT_FETCH_PRECOMPUTABLE_METHODS): directly jump into
9164         Translator methods, without _static helper.
9165  
9166         * lily/grob-smob.cc (derived_mark): rename from
9167         do_derived_mark(). Return void.
9168
9169         * scm/define-context-properties.scm
9170         (all-internal-translation-properties): remove tweakCount/tweakRank.
9171
9172         * scm/output-lib.scm (begin-of-line-invisible): use vectors for
9173         predefined break-visibilities.
9174
9175         * lily/item.cc (handle_prebroken_dependencies): use a vector of 3
9176         booleans for break-visibility.
9177
9178         * Documentation/topdocs/NEWS.tely (Top): add note about engravers.
9179
9180         * python/convertrules.py (conv): rule for Timing_translator. 
9181
9182         * lily/include/translator.icc: new file. 
9183
9184         * lily/paper-column-engraver.cc (process_music): new
9185         file. Separate Paper_column factory from Score_engraver.
9186
9187         * lily/vertically-spaced-context-engraver.cc: administer
9188         spaceable-staves property of System.
9189
9190         * lily/translator-group-ctors.cc: new file.
9191
9192         * lily/context-property.cc (make_grob_from_properties): construct
9193         the right Grob class programmatically, looking at the class entry
9194         for the meta property.
9195
9196         * lily/break-align-engraver.cc (stop_translation_timestep): call
9197         Break_align_interface::add_element() directly.
9198
9199         * lily/context.cc (measure_position): measure_position() is now a
9200         normal function.
9201
9202         * lily/include/translator.hh (class Translator): rename
9203         process_acknowledged_grobs() to process_acknowledged() and move to
9204         Translator.
9205
9206         * scm/define-grobs.scm (all-grob-descriptions): add a 'class meta
9207         field for each grob description.
9208
9209         * lily/include/translator-group.hh (class Translator_group):
9210         change to base class. Separate class from Translator. This gets
9211         rid of virtual inheritance for Engravers/Performers.
9212
9213         * lily/staff-performer.cc (class Staff_performer): derive
9214         Staff_performer from Performer, not Performer_group_performer 
9215
9216         * Lily/translator-group.cc (precomputed_recurse_over_translators):
9217         new function.
9218         (precompute_method_bindings): new function. Precompute lists of
9219         Translators, so we only call methods (process_music,
9220         start_translation_timestep, etc.) for Translators needing
9221         it. Also: dispose of pointer-to-member-function calls.
9222
9223         * lily/engraver-group-engraver.cc: remove engraver_each,
9224         recurse_down_engravers ()
9225
9226         * lily/note-head.cc (internal_print): only call
9227         glyph-name-procedure if style != default. 
9228
9229 2005-07-16  Graham Percival  <gperlist@shaw.ca>
9230
9231         * ly/titling-init.ly: add printallheaders option.
9232
9233         * Documentation/user/global.itely: document printallheaders.
9234
9235 2005-07-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9236
9237         * lily/system.cc (do_derived_mark): don't mark from object_alist_
9238         anymore, but do it centrally.  
9239
9240         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
9241         hammer hack.
9242
9243         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-object
9244
9245         * scm/output-lib.scm: remove hammer-print-function.
9246
9247         * lily/include/pointer-group-interface.hh (extract_grob_set): new
9248         macro. Declare a Link_array<Grob> and fill it from a grob.
9249         (extract_item_set): idem for item.
9250
9251         * lily/break-substitution.cc: add header.
9252         (fast_substitute_grob_array): rewrite for Grob_arrays.
9253         (substitute_grob_array): idem.
9254
9255         * lily/group-interface.cc (add_thing): remove file.
9256
9257         * flower/include/parray.hh (class Link_array): slice() is const.
9258
9259         * lily/include/grob-array.hh: new file.
9260
9261         * lily/grob-array.cc (spanner): new file.
9262
9263         * lily/beam-quanting.cc (fill): read details property from beam.
9264
9265         * lily/beam.cc: support details property.
9266
9267         * total speedups below: approx 10%.
9268
9269         * lily/include/beam.hh: new struct, softcode beam quanting parameters
9270
9271         * lily/include/grob.hh (class Grob): add interfaces_ member.
9272
9273         * lily/bezier.cc (init_polynomial_cache): new function: cache
9274         binom(3,j) t^j (1-t)^{3-j}
9275         (curve_point): opps, actually use the cache for t^j , (1-t)^j! 
9276
9277         * lily/*.cc: substitution throughout.
9278
9279         * lily/grob-property.cc (internal_get_object): new routine.
9280         (internal_set_object): idem. Store grob refrences in separate
9281         alist. This saves processing time, since properties aren't
9282         break-substituted, and the per grob namespace is smaller, both for
9283         grobs and non-grob properties.
9284
9285         * scm/define-grob-properties.scm (all-internal-grob-properties):
9286         remove center-element.
9287
9288         * lily/grob.cc: remove tweak-count, tweak-rank.
9289
9290 2005-07-15  Graham Percival  <gperlist@shaw.ca>
9291
9292         * Documentation/user/lilypond-book.itely: fixes example.
9293
9294 2005-07-15  Nicolas Sceaux  <nicolas.sceaux@free.fr>
9295
9296         * Documentation/user/global.itely (Creating titles):    
9297         * Documentation/user/examples.itely (All headers): change the
9298         place of \header in \score blocks (after music block) to make
9299         examples compile (cf. changes on parser.yy on 2005-07-10)
9300
9301 2005-07-13  Graham Percival  <gperlist@shaw.ca>
9302
9303         * python/convertrules.py: add exc -> ecc rule.
9304
9305         * scripts/convert-ly.py: add location of convertrules.py
9306         in a comment.
9307
9308         * Documentation/user/changing-defaults.itely: fix language.
9309
9310 2005-07-12  Jan Nieuwenhuizen  <janneke@gnu.org>
9311
9312         * lily/lily-parser-scheme.cc (LY_DEFINE): Guile 1.6 fix.
9313
9314 2005-07-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9315
9316         * scm/output-socket.scm (grob-bbox): don't use inf? 
9317
9318         * flower/include/rational.hh: add operator bool() 
9319
9320         * scm/define-music-types.scm (music-descriptions): remove
9321         internal-class-name properties.
9322
9323         * lily/include/event.hh: remove file.
9324
9325         * lily/include/music-constructor.hh: remove file.
9326
9327         * lily/parser.yy (Lily_lexer): check EVENT_IDENTIFIER using 'event
9328         in 'types property.
9329
9330         * lily/music.cc (duration_length_callback): new function.
9331
9332         * lily/event.cc: remove file.
9333
9334         * lily/music-constructor.cc: remove file.
9335
9336         * lily/music-scheme.cc (LY_DEFINE): rename to ly:make-music
9337
9338         * lily/context.cc (get_grob_key): nop if use_object_keys not set.
9339         (get_context_key): idem.
9340
9341         * scm/lily.scm (lambda): new option object-keys (default to #f)
9342
9343         * scm/output-svg.scm (utf-8-string): rename  from utf8-string.
9344
9345         * scm/output-gnome.scm: remove beam routine.
9346
9347         * scm/output-ps.scm (scm): idem.
9348
9349         * scm/output-svg.scm: remove beam.
9350
9351         * ps/music-drawing-routines.ps: remove draw_beam.
9352
9353         * lily/lookup.cc (beam): use round_filled_polygon() for beam.
9354
9355         * flower/include/guile-compatibility.hh (scm_from_locale_string):
9356         add scm_from_locale_string compatibility glue. 
9357
9358 2005-07-13  Yoshinobu Ishizaki  <isizaki@mte.biglobe.ne.jp>
9359
9360         * scripts/lilypond-book.py: Prevent occuring error when
9361         'lilypond-book --output=foo/ somefile.ly' is executed multiple
9362         times and target file shoud be overwritten.  (Error message said
9363         'input file and output file is same'.)
9364
9365 2005-07-13  Graham Percival  <gperlist@shaw.ca>
9366
9367         * input/regression/slur-extreme.ly,
9368         input/regression/slur-scoring.ly, lily/slur-configuration.cc,
9369         lily/slur.cc, mf/feta-din-code.mf, mf/feta-timesig.mf,
9370         mf/parmesan-heads.mf, scm/define-grob-properties.scm: Change
9371         "excentricity" to "eccentricity".
9372
9373         * Documentation/user/converters.itely: fix URL for Noteedit and
9374         Rosegarden.
9375
9376         * THANKS: added Yoshinobu Ishizaki.
9377
9378 2005-07-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9379
9380         * scm/define-markup-commands.scm (justify-field): add. 
9381
9382         * scm/define-grobs.scm (all-grob-descriptions): decrease font size.
9383
9384 2005-07-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9385
9386         * lily/lookup.cc (filled_box): express filled_box with
9387         round_filled_box
9388
9389         * scm/midi.scm (paper-book-write-midis): new function. Write all
9390         performances in numbered MIDI files.
9391
9392         * lily/performance-scheme.cc (LY_DEFINE): new file.
9393         (LY_DEFINE): new function ly:performance-write.
9394
9395         * lily/lily-parser-scheme.cc (LY_DEFINE): ly:parser-output-name:
9396         new function.
9397         (LY_DEFINE): change name ly:parser-define -> ly:parser-define!
9398
9399         * scm/framework-*.scm: use port arguments throughout.
9400
9401         * lily/include/lily-guile.hh: rename ly_c_X_p -> ly_is_X
9402
9403         * lily/paper-outputter.cc (Paper_outputter): take port argument.
9404
9405         * lily/paper-outputter-scheme.cc (LY_DEFINE): take port argument.
9406
9407         * scm/framework-texstr.scm (output-framework): 
9408
9409         * input/regression/repeat-fold.ly (texidoc): remove TeX strings.
9410
9411         * scm/output-lib.scm (tablature-stem-attachment-function):
9412         tablature stem attachment fix. 
9413
9414 2005-07-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9415
9416         * lily/bezier.cc: hardcode binomial coefficients of order 3.
9417
9418         * lily/include/music-wrapper.hh: remove Music_wrapper as Music subtype.
9419
9420         * scm/define-music-types.scm (music-descriptions): don't use
9421         Music_wrapper type.
9422
9423         * lily/paper-column.cc (print): print moment too.
9424
9425         * scripts/mup2ly.py (cp_to_dir): remove 1.5.2 compat glue.  
9426         remove compatibility cruft.
9427
9428         * lily/parser.yy (score_body): \score can only begin with Music. 
9429
9430         * lily/score-scheme.cc (LY_DEFINE): rename scorify to
9431         make-score. Take music argument only. Move parser interaction to
9432         Scheme.
9433
9434         * scm/lily-library.scm (scorify-music): new function.
9435
9436         * python/lilylib.py (datadir): remove 2.1 compat kludge.
9437         (datadir): remove resource import.
9438         (print_environment): remove get_bbox()
9439         (cp_to_dir): remove pre 1.5.2 compat glue.
9440
9441 2005-07-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9442
9443         * lily/include/simple-spacer.hh (Module): idem.
9444
9445         * lily/include/spring.hh (struct Spring): store inverse
9446         strength. This prevents division by zero.
9447
9448         * VERSION: release 2.7.0
9449         
9450         * lily/include/music.hh (class Music): remove Music::duration_log()
9451
9452         * lily/stem-engraver.cc (make_stem): take duration log from event.
9453
9454         * lily/chord-tremolo-engraver.cc: don't ack note-head-interface.
9455
9456 2005-07-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9457
9458         * scm/lily.scm (ly:load): load autochange.scm
9459
9460         * Documentation/user/tutorial.itely (Running LilyPond for the
9461         first time): remove reference to DVI/TeX
9462
9463         * scm/define-markup-commands.scm (text): add \text markup command.
9464
9465         * configure.in (reloc_b): bump requirement to Python 2.2.
9466
9467         * lily/include/dots.hh (class Dots): make has_interface() static.
9468
9469         * python/convertrules.py (conv): add rule for ly:grob-default-font
9470
9471         * scm/define-grobs.scm (all-grob-descriptions): reorganize in
9472         alphabetical order.
9473
9474         * input/regression/trill-spanner-pitched.ly: new file.
9475
9476         * lily/font-interface-scheme.cc (LY_DEFINE): function
9477         ly:grob-default-font (changed from get-default-font).
9478
9479         * lily/axis-group-interface-scheme.cc (LY_DEFINE): new file.
9480
9481         * lily/note-head.cc (internal_print): if style is not a symbol,
9482         set style to 'default. 
9483         (internal_print): no style suffix if glyph-name-procedure not
9484         set. Default to quarter head.
9485
9486         * scm/define-grobs.scm (Module): new grob TrillPitchHead.
9487
9488         * scm/define-music-properties.scm (all-music-properties): add trill-pitch.
9489
9490         * ly/music-functions-init.ly: \pitchedTrill
9491
9492         * lily/pitched-trill-engraver.cc (acknowledge_grob): new file.
9493
9494         * ly/Welcome_to_LilyPond.ly: update to 2.6.0
9495
9496         * lily/trill-spanner-engraver.cc (finalize): rename req -> event
9497
9498         * scm/define-markup-commands.scm (pad-markup): pad-markup command.
9499
9500         * po/fr.po: update
9501
9502         * po/de.po: update.
9503
9504 2005-07-06  Graham Percival  <gperlist@shaw.ca>
9505
9506         * Documentation/user/changing-defaults.itely: add link
9507         to grob-iterface.
9508
9509         * Documentation/user/advanced-notation.itely: add material
9510         to Setting automatic beam behaviour.  Thanks, Joe!
9511
9512         * Documentation/user/lilypond.itely: change encoding to utf-8.
9513
9514 2005-07-01  Mats Bengtsson  <mabe@s3.kth.se>
9515
9516         * Documentation/user/advanced-notation.itely (Setting automatic
9517         beam behavior): Correct the documentation of
9518         revert-auto-beam-setting (backportme)
9519
9520 2005-07-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9521
9522         * lily/ly-module.cc (ly_make_anonymous_module): define
9523         %module-public-interface of module. 
9524
9525         * lily/lily-parser.cc (print_smob): allow printing of parser smob
9526         without lexer.
9527
9528 2005-07-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9529
9530         * input/regression/fret-diagrams.ly: stretch example.
9531
9532 2005-06-30  Jan Nieuwenhuizen  <janneke@gnu.org>
9533
9534         * cygwin/GNUmakefile ($(outdir)/%.sh): Bugfix: use TAB (Bertalan
9535         Fodor).
9536
9537 2005-06-30  Graham Percival  <gperlist@shaw.ca>
9538
9539         * Documentation/topdocs/AUTHORS.texi: update personal web address.
9540
9541         * Documentation/user/examples.itely, lilypond-book.itely:
9542         change \RequirePackage to \usepackage.
9543
9544         * Documentation/user/global.itely: document copyright and tagline.
9545
9546 2005-06-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9547
9548         * Documentation/user/basic-notation.itely (Transpose): remove link
9549         to nonexistent UntransposableMusic.
9550
9551         * scm/output-svg.scm: remove old definitions.
9552
9553         * scripts/lilypond-book.py (do_file): search for kpsewhich before
9554         invoking.
9555
9556         * python/lilylib.py (search_exe_path): new function.
9557
9558 2005-06-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9559
9560         * python/lilylib.py (mkdir_p): remove setup_environment()
9561         (backportme)
9562
9563         * buildscripts/mutopia-index.py (headertext): trim text.
9564
9565         * Documentation/topdocs/NEWS.tely (Top): refresh.
9566
9567         * scm/define-markup-commands.scm (wordwrap-string): new function:
9568         split string in paras and words.
9569         (wordwrap-markups): new function.
9570         (wordwrap-stencils): new function. 
9571         (justify): use it.
9572         (wordwrap): use it.
9573         (wordwrap-string): use it
9574         (justify-string): use it.
9575
9576         * scm/lily-library.scm (regexp-split): new function.
9577
9578         * scm/define-markup-commands.scm: remove encoded-simple. 
9579         remove font-markup.
9580         (fontsize): remove old version  of fontsize.
9581         (wordwrap): new markup function. Wrap into paragraphs.
9582
9583         * VERSION: Branch lilypond_2_6
9584         (MINOR_VERSION): go to 2.7.0
9585
9586 2005-06-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9587
9588         * po/zh_TW.po: update from translation project.
9589
9590 2005-06-28  Graham Percival  <gperlist@shaw.ca>
9591
9592         * scm/midi.scm: compile fix.
9593
9594 2005-06-28  Mats Bengtsson  <mabe@s3.kth.se>
9595
9596         * scripts/lilypond-book.py : Fix embarrassing bug in my previous
9597         patch. Now, the tempfile module is loaded too, not only used.
9598
9599 2005-06-28  Stephen Charles McCarthy  <stecmccarthy@hotpop.com>
9600
9601         * scm/midi.scm: changed midi volumes in absolute-volume-alist from
9602         0.05 - 1.00 to 0.25 - 1.00
9603
9604         * scm/midi.scm: moved the default-instrument-equalizer procedure
9605         to just under the insturment-equalizer-alist it takes as an
9606         argument.
9607
9608 2005-06-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9609
9610         * Documentation/user/advanced-notation.itely (Font selection):
9611         remove CMR note.
9612
9613         * scm/framework-ps.scm (write-preamble): ly:warning iso. ly:warn 
9614
9615 2005-06-28  Jan Nieuwenhuizen  <janneke@gnu.org>
9616
9617         * THANKS: Add UTF-8 marker.
9618
9619         * Documentation/user/point-and-click.itely (http): Update: use
9620         lilypond-invoke-editor.  Fix: instruct to use user.js.
9621
9622 2005-06-27  Graham Percival  <gperlist@shaw.ca>
9623
9624         * ly/titling-init.ly: implements printpagenumber, increases
9625         space between dedication and title (to avoid collisions with
9626         "g" and "q" in dedication), and nicer logic about copyright
9627         and instrument fields being printed on the first page.
9628         Thanks Vincent!
9629
9630         * Documentation/user/global.itely: document printpagenumber.
9631
9632 2005-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
9633
9634         * Documentation/topdocs/NEWS.tely: Update to 2.6.
9635
9636 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9637
9638         * THANKS: update to 2.6
9639
9640         * VERSION: 2.6.0 released.
9641
9642 2005-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
9643
9644         * cygwin/GNUmakefile (OUT_POSTREMOVES): Reinclude install script
9645         rule, errorneously removed probably because of misleading comment.
9646
9647 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9648
9649         * python/lilylib.py (datadir): py2exe comments.
9650
9651         * Documentation/topdocs/INSTALL.texi (Top): remove EC fonts requirement.
9652
9653         * configure.in (reloc_b): make fontconfig REQUIRED.
9654
9655 2005-06-27  Heikki Junes <hjunes@cc.hut.fi>
9656
9657         * po/fi.po: add latest translations.
9658
9659 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9660
9661         * ChangeLog: recode utf-8
9662
9663         * Documentation/pictures/lilypond.xpm (Module): edited photo as
9664         logo.
9665
9666         * Documentation/user/examples.itely (Module): 2.4.0 -> 2.6.0
9667
9668         * input/*.ly (Module): 2.4 -> 2.6 grand convert-ly s/r. 
9669
9670         * python/convertrules.py (do_conversion): don't print program_name
9671         from within a module
9672
9673         * configure.in (reloc_b): bump fontforge requirement to 20050624.
9674
9675         * python/convertrules.py (conv): add 2.6.0 dummy rule.
9676
9677 2005-06-23  Graham Percival  <gperlist@shaw.ca>
9678
9679         * Documentation/user/lilypond-book.itely,
9680         Documentation/user/examples.itely: add \RequirePackage{graphics}.
9681
9682         * ly/titling.ly: checks printfirstpagenumber, adds meter, and
9683         fixes baseline-skip.  Thanks Vincent!
9684
9685         * Documentation/user/advanced-notation.itely, global.itely:
9686         moved "Selecting font sizes" to global, since it deals with
9687         notation font size, not text fonts.
9688
9689 2005-06-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9690
9691         * buildscripts/gen-emmentaler-scripts.py (notice): add GPL notice
9692         to fonts.
9693
9694 2005-06-23  Mats Bengtsson  <mabe@s3.kth.se>
9695
9696         * scripts/lilypond-book.py (LATEX_DOCUMENT): More or less ugly
9697         workaround since /dev/stdin doesn't work on Cygwin. Using a
9698         temporary file in the current directory since latex doesn't
9699         understand the path name to the default TMP in Cygwin (at least on
9700         win XP).
9701         
9702         * Documentation/user/global.itely (Creating titles): Correct
9703         misprint in example. Thanks to Rob Vlasaty.
9704
9705 2005-06-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9706
9707         * VERSION (PATCH_LEVEL): release 2.5.32
9708
9709         * lily/lily-parser-scheme.cc (LY_DEFINE): don't set 'parser
9710         variable in lily module
9711
9712         * scm/framework-ps.scm (output-classic-framework): error message
9713         regarding the classic framework.
9714
9715         * Documentation/user/henle-flat-gray.png (Module): new file.
9716
9717         * Documentation/user/baer-flat-gray.png (Module): new file.
9718
9719         * scm/output-lib.scm (fret-number-tablature-format): vcenter and
9720         whiteout for markups.
9721
9722         * buildscripts/substitute-encoding.py (note_glyph): include _ in
9723         regex too. This fixes change clef appearance in PDF. 
9724
9725         * ttftool/include/*: remove.
9726
9727         * configure.in (reloc_b): remove TTFTOOL_ENDIAN
9728
9729         * config.make.in (WINDRES): remove TTFTOOL_ENDIAN.
9730
9731         * lily/GNUmakefile (MODULE_INCLUDES): remove ttftool
9732
9733         * ttftool/*: remove ttftool subdirectory.
9734
9735         * GNUmakefile.in (SUBDIRS): remove ttftool subdirectory.
9736
9737         * lily/ttf.cc (print_header): new file. Convert to type42, using
9738         FreeType to parse the TTF. 
9739
9740         * ttftool/parse.c (readPostTable): ugh. Kludge: nglyphs in maxp
9741         and post table may differ. Pass around post_nglyphs as well.
9742
9743 2005-06-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9744
9745         * ly/music-functions-init.ly (musicMap): new music function
9746         musicMap. 
9747         
9748 2005-06-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9749
9750         * make/mutopia-rules.make: anti-alias-factor = 2
9751
9752         * scm/ps-to-png.scm (make-ps-images): cleanup multipage vs. single
9753         page switch.
9754
9755         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): set
9756         anti-alias-factor for lilypond-book runs.
9757
9758         * scm/ps-to-png.scm (scale-down-image): new function.
9759         (my-system): new function.
9760         (make-ps-images): blow up GS resolution by anti-alias-factor,
9761         scale down image by anti-alias-factor.  This improves appearance
9762         of bitmaps
9763         (make-ps-images): remove showpage. Fixes spurious empty png at
9764         end.
9765
9766         * scm/framework-ps.scm (write-preamble): downcase filename before
9767         string-matching. Should fix .TTF files (as opposed to ttf files)  
9768
9769         * Documentation/user/tutorial.itely (Running LilyPond for the
9770         first time): separate subsections for windows, macos and unix.  
9771
9772         * Documentation/user/invoking.itely (Updating files with
9773         convert-ly): add MacOS X note.
9774
9775 2005-06-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9776
9777         * Documentation/user/introduction.itely (Engraving): don't include
9778         file optical-spacing, add directly.
9779
9780         * lily/paper-outputter.cc (file): open file in binary mode. This
9781         fixes OTF embedding on windows.
9782
9783 2005-06-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9784
9785         * scm/framework-ps.scm (write-preamble): remove debugging output.
9786
9787         * mf/aybabtu.pe.in (i): don't generate aybabtu.cff
9788
9789         * mf/GNUmakefile ($(outdir)/fonts.cache-1): create font cache for
9790         outdir.
9791         (install-fc-cache): install font cache in installation directories.
9792
9793 2005-06-17  Jan Nieuwenhuizen  <janneke@gnu.org>
9794
9795         * scm/editor.scm (editor-command-template-alist): Use char iso
9796         column, except for Emacs.
9797         (get-editor-command): Substitute char too (Bertalan Fodor).
9798
9799 2005-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
9800
9801         * scm/ps-to-png.scm (make-ps-images): Use ~S instead of single
9802         quoted ~s.  This should fix PNG output on Windows; single quotes
9803         are regular characters on Windows.
9804
9805 2005-06-16  Graham Percival  <gperlist@shaw.ca>
9806
9807         * Documentation/user/basic-notation.itely: include ChoirStaff
9808         in System start delimiters.
9809
9810         * Documentation/user/putting.itely: new doc section on
9811         fixing overlapping notation.
9812
9813 2005-06-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9814
9815         * Documentation/user/global.itely (Paper size): \paper is in
9816         \book, not \score.
9817
9818         * make/mutopia-rules.make: -ddelete-intermediate-files
9819
9820         * ly/engraver-init.ly: make Staff default child of ChoirStaff.
9821
9822 2005-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
9823
9824         * ChangeLog: Recode utf-8.
9825
9826         * python/GNUmakefile (INSTALLATION_OUT_DIR): Install .so module in
9827         datadir with .py modules.
9828
9829 2005-06-15  Heikki Junes  <hjunes@cc.hut.fi>
9830
9831         * Documentation/user/basic-notation.itely (Ties): add tieDashed.
9832
9833 2005-06-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9834
9835         * make/mutopia-rules.make: switch off ps, p&c for lilypond runs.
9836         
9837         * scm/framework-ps.scm (write-preamble): remove status check.
9838
9839         * Documentation/user/invoking.itely (Updating files with
9840         convert-ly): remove -o option.
9841
9842         * VERSION (PACKAGE_NAME): release 2.5.31
9843
9844         * scm/framework-ps.scm (write-preamble): use ly:system.
9845         (write-preamble): verbosity.
9846
9847         * scripts/convert-ly.py: cleanup. Use lilylib. Use convertrules.
9848
9849         * python/convertrules.py: new file. Store conversion rules
9850         separately.
9851
9852 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9853
9854         * scm/backend-library.scm (postprocess-output): remove debugging gobs.
9855
9856 2005-06-14  Mats Bengtsson  <mabe@s3.kth.se>
9857
9858         * Documentation/topdocs/NEWS.tely (Top): Corrected name of
9859         \musicDisplay 
9860
9861         * Documentation/user/instrument-notation.itely (More stanzas): Add
9862         reference to StanzaNumber.
9863
9864 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9865
9866         * THANKS: separate section for website translators.
9867
9868 2005-06-14  Graham Percival  <gperlist@shaw.ca>
9869
9870         * Documentation/topdocs/INSTALL.texi: update vim info;
9871         thanks Simon Bailey!
9872
9873         * Documentation/user/advanced-notation.itely: included
9874         color names.
9875
9876         * Documentation/user/advanced-notation.itely,
9877         Documentation/usr/notation-appendices.itely: moved
9878         color names into an appendix.
9879
9880 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9881         
9882         * lily/program-option.cc (LY_DEFINE): new function ly_add_option.
9883
9884         * scm/lily.scm (lambda): initialize program options from here.
9885
9886         * scm/framework-*.scm: add header info.
9887
9888         * lily/main.cc (parse_argv): only set output format to pdf if no
9889         other format specified.
9890
9891         * scm/backend-library.scm (postprocess-output): process
9892         'delete-intermediate-files after running convert-to-*. This fixes
9893         PNG generation when 'delete-intermediate-files is set.
9894         
9895 2005-06-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9896
9897         * buildscripts/mutopia-index.py (list_item): thinko. Fixes png
9898         links on website. 
9899
9900 2005-06-13  Graham Percival  <gperlist@shaw.ca>
9901
9902         * Documentation/topdocs/INSTALL.texi,
9903         Documentation/user/lilypond-book.itely: typos.
9904
9905 2005-06-12  Pal Benko  <benkop@freestart.hu>
9906
9907         * elisp/lilypond-mode.el (LilyPond-command-alist: 2PS): space
9908         added between program name and switch; -b changed to -f not
9909         to generate pdf
9910
9911 2005-06-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9912
9913         * elisp/lilypond-mode.el (LilyPond-command-alist): remove 2midi
9914         (LilyPond-command-alist): use -f ps (thanks to Pal Benko)
9915
9916         * input/sakura-sakura.ly: add \midi.
9917
9918         * buildscripts/mutopia-index.py (find): use /usr/bin/find
9919         iso. python find. 
9920
9921         * ttftool/test.c (main): cosmetics.
9922
9923         * ttftool/util.c (surely_lseek): use stdio FILE's for I/O 
9924
9925         * ttftool/test.c: new file. If compiled with -DTEST_TTFTOOL,
9926         create a ttf2ps binary.
9927
9928         * scm/ps-to-png.scm (make-ps-images): fix rename-page-1 functionality.
9929
9930         * scm/backend-library.scm (postscript->png): set rename-page-1 to
9931         true.
9932
9933 2005-06-11  Graham Percival <gperlist@shaw.ca>
9934
9935         * Documentation/user/lilypond-book.itely: add warning about
9936         the font warnings in dvips.
9937
9938 2005-06-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9939
9940         * THANKS: typo
9941
9942         * mf/GNUmakefile ($(outdir)/$(redhat-package)): Fedora-4 url.
9943
9944         * GNUmakefile.in: remove links for .map, .enc
9945         don't fail if out/ doesn't exist yet.
9946
9947 2005-06-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9948
9949         * ttftool/util.c (surely_read): return nbytes
9950
9951         * stepmake/bin/text2html.py (txt2html): add utf-8 marker. 
9952
9953         * VERSION (PACKAGE_NAME): release 2.5.30
9954
9955         * flower/string-convert.cc (precision_string): >? fix.
9956
9957         * scm/ps-to-png.scm (make-ps-images): search-gs for multipage too.
9958         (make-ps-images): add verbose -q too.
9959
9960         * lily/default-actions.cc (Module): new file. default
9961         {book,score}-print functions.
9962
9963         * scm/ly-from-scheme.scm (ly:parse-string-result): use new setup:
9964         pass results via parseStringResult, lookup via ly:parser-lookup.  
9965
9966         * lily/lily-parser.cc (Lily_parser): only clone lexer in
9967         constructors.
9968         (parse_file): encapsulate do_yyparse() in scm_set_current_module()
9969         (parse_string): idem.
9970
9971         * ly/spanners-init.ly (assertBeamQuant): don't use #{ #} in init.
9972
9973         * lily/main.cc (main_with_guile): copy be_verbose_global into
9974         ly_set_option()
9975
9976 2005-06-10  Jan Nieuwenhuizen  <janneke@gnu.org>
9977
9978         * scm/backend-library.scm (postscript->pdf):
9979         * scm/ps-to-png.scm (make-ps-images): Do not use gs -q switch in
9980         verbose mode.  Search for several names of gs executable.
9981
9982 2005-06-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9983
9984         * lily/ly-module.cc (ly_make_anonymous_module): call make-module
9985         directly. This fixes a massive memory leak, provided you use CVS
9986         GUILE.
9987
9988 2005-06-10  Erik Sandberg  <ersa9195@student.uu.se>
9989
9990         * ly/property-init.ly: Added tieDashed.
9991
9992         * THANKS: Added some bughunters for 2.5.
9993
9994 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9995
9996         * lily/program-option.cc: add debug-gc option.
9997
9998         * lily/include/lily-guile-macros.hh: don't protect exported module
9999         objects.
10000
10001         * lily/include/lily-parser.hh (class Lily_parser): remove beam_check().
10002
10003         * scm/backend-library.scm (postscript->pdf): use
10004         delete-intermediate-files iso. running-from-gui? 
10005
10006         * ttftool/util.c (surely_read): robustness. Allow read() to return
10007         less bytes than requested, as per posix standards.
10008
10009         * lily/pfb.cc (LY_DEFINE): set ttf_verbosity from ttf-verbosity
10010         program option.
10011
10012         * ttftool/include/ttftool.h ("C"): rename verbosity to
10013         ttf_verbosity. Add to public interface.
10014
10015         * scm/music-functions.scm (unfold-repeats): remove debugging display.
10016
10017         * lily/program-option.cc: rename from scm-option.cc
10018
10019         * lily/scm-option.cc (LY_DEFINE): handle no-foobar option setting.
10020         (get_help_string): Print pretty help string.
10021
10022         * scripts/lilypond-book.py (PREAMBLE_LY): add no-point-and-click
10023         to snippet preamble.
10024
10025         * lily/scm-option.cc: remove command-line-settings option. Fold
10026         all command-line options plus default settings in a generic
10027         interface. 
10028
10029         * flower/getopt-long.cc (table_string): indent 2nd lines of help
10030         texts too.
10031
10032 2005-06-09  Jan Nieuwenhuizen  <janneke@gnu.org>
10033
10034         * flower/file-name.cc: Bugfix: only append DIRSEP if BASE_
10035         or EXT_ components non-empty.
10036
10037 2005-06-08  Jan Nieuwenhuizen  <janneke@gnu.org>
10038
10039         * scm/lily.scm (running-from-gui?): Export.
10040
10041         * lily/lily-parser-scheme.cc (ly:parse-file): Use it to generate
10042         output in .ly source directory.
10043
10044 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10045
10046         * ttftool/util.c (surely_lseek): more verbosity.
10047
10048         * lily/include/lily-proto.hh: add Context_def. This fixes FC4
10049         compile.
10050
10051         * lily/parser.yy (Repeated_music): remove >? 
10052
10053         * scm/backend-library.scm (postscript->pdf): Support for
10054         -dgs-font-load=1
10055
10056         * scm/framework-ps.scm (write-preamble): make font loading
10057         switchable to GS via --define-default gs-font-load=1
10058
10059 2005-06-09  Graham Percival  <gperlist@shaw.ca>
10060
10061         * Documentation/user/global.itely: added \layout docs.
10062
10063 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10064
10065         * lily/lily-parser-scheme.cc: add unistd.h
10066
10067 2005-06-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10068
10069         * scm/editor.scm: add char argument.
10070
10071         * scripts/lilypond-invoke-editor.scm (dissect-uri): add char. 
10072
10073         * ttftool/util.c (syserror): use errno for better error reporting.
10074
10075         * lily/source-file.cc (get_counts): new function. Calc column,
10076         line and char count in one go.
10077
10078         * lily/binary-source-file.cc (quote_input): rename to quote_input
10079
10080         * lily/input.cc (set): new function.
10081
10082 2005-06-08  Jan Nieuwenhuizen  <janneke@gnu.org>
10083
10084         * flower/file-path.cc (find): Bugfix.  Append rather than prepend
10085         directory part of file name to search directory.
10086
10087         * lily/lily-parser-scheme.cc (ly:parse-file): Prepend cwd to
10088         search path and chdir to DIR if --outname=DIR used.
10089
10090         * lily/main.cc (prepend_env_path): Bugfix: Check directory
10091         existence before appending original path.
10092
10093 2005-06-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10094
10095         * ttftool/parse.c (readNamingTable): verbosity for "bad TTF
10096         file" massage.
10097
10098         * Documentation/user/GNUmakefile (TEXINPUTS): set TEXINPUTS so our
10099         texinfo.tex is always used.
10100         
10101 2005-06-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10102
10103         * flower/include/axis.hh: rename from axes.hh
10104
10105         * lily/include/text-interface.hh (Module): rename from text-item.hh
10106
10107         * VERSION (PATCH_LEVEL): release 2.5.29
10108
10109         * ttftool/parse.c (readNamingTable): handle Apple/8bit encoding too.
10110
10111         * scm/framework-ps.scm (font-file-as-ps-string): new function.
10112         (handle-macfont): new function. Call fondu for Native mac fonts.
10113
10114         * scm/define-markup-commands.scm (fill-line): handle text-widths =
10115         '() case.
10116
10117 2005-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
10118
10119         * scm/ps-to-png.scm (make-ps-images): Bugfix: `Pages: 1\n' is not
10120         multi-page.  Fix .eps regular expression.
10121
10122 2005-06-07  Graham Percival  <gperlist@shaw.ca>
10123
10124         * Documentation/user/putting.itely: add info on modifying templates.
10125
10126         * Documentation/user/lilypond.itely, converters.itely, invoking.itely:
10127         misc small changes.
10128
10129 2005-06-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10130
10131         * scm/ps-to-png.scm (make-ps-images): no paper size for multi-page.
10132
10133         * scripts/lilypond-ps2png.scm
10134
10135         * VERSION (PACKAGE_NAME): release 2.5.28
10136
10137 2005-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
10138
10139         * lily/main.cc (prepend_env_path): Do not append /, that does not
10140         work.  Localedir lives in datadir, not in prefix.
10141
10142         * scm/framework-ps.scm (write-preamble): Remove load-font-via-GS
10143         hack for windows.
10144
10145         * flower/include/file-cookie.hh: Compile fix.
10146
10147 2005-06-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10148
10149         * ly/engraver-init.ly: add \defaultchild to InnerStaffGroup. 
10150
10151         * scm/ps-to-png.scm (gulp-port): rename from read. Don't redefine
10152         system primitives.
10153         (gulp-port): using read-string!/partial. We don't want to read an
10154         entire PS file  (GUILE 1.6 limits strings to 16M) 
10155
10156         * scm/define-grobs.scm (all-grob-descriptions): remove arch-*
10157         properties. Add font-interface. 
10158
10159         * scm/define-grob-properties.scm (all-user-grob-properties):
10160         remove old bracket properties.
10161
10162         * scm/x11-color.scm: reformat. 
10163
10164         * lily/ledger-line-engraver.cc (acknowledge_grob): create new
10165         LedgerLineSpanner if new StaffSymbol is found. 
10166
10167         * lily/staff-symbol-engraver.cc (acknowledge_grob): also set
10168         staff-symbol for finishing staff. 
10169
10170         * lily/GNUmakefile (OUT_DIST_FILES): don't dist Flex output
10171
10172         * scm/output-svg.scm (setcolor): implement (re)setcolor with <g>
10173         change black to currentColor everywhere. This fixes color support
10174         in SVG.
10175
10176 2005-06-06  Carl Sorensen  <carldsorensen@comcast.net>
10177
10178         * input/regression/fret-diagrams.ly: new file to test fret diagram
10179         capability
10180
10181         * scm/output-tex.scm: remove white-dot and white-text
10182
10183         * scm/output-ps.scm: remove white-dot and white-text
10184
10185         * scm/fret-diagrams.scm (sans-serif-stencil-white): removed -- 
10186         using ly:stencil-in-color instead
10187         (draw-dots) : remove call to white-dot
10188
10189 2005-06-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10190
10191         * flower/memory-stream.cc (Memory_out_stream): remove fopencookie
10192         support.
10193
10194         * ttftool/ttfps.c: use lily_cookie functions everywhere. 
10195
10196         * flower/include/file-cookie.hh: new file. lily_cookie extension 
10197
10198         * flower/file-cookie.cc: new file. lily_cookie extension.
10199         
10200 2005-06-06  Jan Nieuwenhuizen  <janneke@gnu.org>
10201
10202         * scm/editor.scm (editor-command-template-alist): Add syn
10203         editor (Jaap [de Vos]).
10204
10205 2005-06-05  Jan Nieuwenhuizen  <janneke@gnu.org>
10206
10207         * scripts/lilypond-ps2png.scm:
10208         * scm/ps-to-png.scm: New file.
10209
10210         * scm/backend-library.scm (postscript->png): Use it.
10211
10212         * scripts/lilypond-ps-to-png.py: Remove file.
10213
10214         * python/lilylib.py (get_bbox, make_ps_images): Remove.
10215
10216 2005-06-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10217
10218         * lily/auto-beam-engraver.cc (acknowledge_grob): remove dead code.
10219
10220         * scm/auto-beam.scm (default-auto-beam-check): only forbid beam
10221         start on grace moment. Fixes autobeam-grace.ly.
10222
10223         * lily/auto-beam-engraver.cc (process_acknowledged_grobs): don't
10224         process anything unless we're at the end of a pending beam. Fixes
10225         syncopated 8ths beamed across a beat.
10226
10227 2005-06-03  Jan Nieuwenhuizen  <janneke@gnu.org>
10228
10229         * scm/editor.scm (editor-command-template-alist): Start emacs if
10230         emacslient fails.
10231
10232         * lily/main.cc (setup_localisation): Listen to LILYPOND_LOCALEDIR.
10233
10234         * flower/file-path.cc (is_file, is_dir): Export.
10235
10236         * lily/main.cc (prepend_env_path, set_env_file): Use them.
10237
10238 2005-06-02  Mats Bengtsson  <mabe@s3.kth.se>
10239
10240         * lily/easy-notation.cc: Added include cctype to correct
10241         compilation error.
10242
10243 2005-06-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10244
10245         * scm/backend-library.scm (postscript->pdf): set resolution to
10246         1200, so bitmap fonts aren't that ugly. 
10247
10248         * Documentation/topdocs/NEWS.tely (Top): add entry about font family.
10249
10250         * lily/dynamic-engraver.cc (acknowledge_grob): only center on
10251         parent if we have a notehead. Fixes incorrect offsets when
10252         Paper_column is very wide in the X direction.
10253
10254         * input/regression/font-family-override.ly (Module): new file.
10255
10256         * scm/font.scm (make-pango-font-tree): new function.
10257
10258         * lily/beam.cc (before_line_breaking): remove warning about less
10259         than 2 visible stems. We still get a warning when there is only
10260         one stem.
10261
10262 2005-06-01  Werner Lemberg  <wl@gnu.org>
10263
10264         * buildscripts/substitute-encoding.py: Handle PFAemmentaler-xx.pfa
10265         correctly.
10266
10267 2005-06-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10268
10269         * lily/slur-scoring.cc (generate_avoid_offsets): new
10270         function. Generate avoid offsets once per slur.
10271
10272         * lily/slur.cc (add_extra_encompass): add dependency to
10273         extra-encompass object. This fixes bugs/c-phrasing-slur.ly
10274
10275         * lily/stencil.cc (is_empty): check dim_ field for is_empty()
10276         too. Fixes inf error with added bass notes.
10277
10278         * scripts/lilypond-book.py (do_options): --psfonts doesn't take
10279         argument anymore.
10280
10281         * make/ly-vars.make (DVIPS_FLAGS): use .psfonts as extension.
10282
10283         * input/tutorial/lbook-latex-test.tex: add line length test.
10284
10285         * scripts/lilypond-book.py (set_default_options): new
10286         function. Call this before dissecting snippets, so linewidth
10287         settings reach the snippets.
10288
10289 2005-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
10290
10291         * scm/lily.scm (PLATFORM, slashify): Remove double slashes.
10292
10293 2005-06-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10294
10295         * input/mutopia/R.Schumann/romanze-op28-2.ly (leftb): bugfix.
10296
10297 2005-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
10298
10299         * stepmake/aclocal.m4: More autopackage friendliness.
10300
10301 2005-05-31  Graham Percival  <gperlist@shaw.ca>
10302
10303         * Documentation/index.html.in: remove link to LSR.
10304
10305         * Documentation/user/global.itely: remove duplicate
10306         "dedication" \header{} section.
10307
10308 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10309
10310         * VERSION (PACKAGE_NAME): release 2.5.27.
10311
10312         * lily/lily-parser-scheme.cc (LY_DEFINE): unprotect paper
10313         too. Plugs memory leak.
10314
10315         * make/lilypond.fedora.spec.in (Group): remove
10316         lilypond-pdfpc-helper.
10317
10318         * scripts/GNUmakefile (SEXECUTABLES): remove
10319         lilypond-pdfpc-helper. Use lilypond-invoke-editor instead.
10320
10321         * scm/font.scm (make-century-schoolbook-tree): add Mono as
10322         'typewriter family.
10323
10324         * lily/score.cc (Score): unprotect copy of Output_def. Plugs
10325         memory leak.
10326
10327         * lily/parser.yy (score_body): don't clone Score, that's done in
10328         Lily_lexer::try_special_identifiers(). This fixes a memory leak.
10329
10330         * lily/score-engraver.cc (derived_mark): new function.
10331         (initialize): unprotect Paper_score. This fixes a memory leak.
10332
10333         * lily/score-performer.cc (derived_mark): new function.
10334
10335         * lily/score-translator.cc (get_output): use SCM for get_output() call.
10336
10337         * stepmake/aclocal.m4: put FlexLexer.h test in conftest.cc. Fixes
10338         spurious warning.
10339
10340         * scm/font.scm (make-century-schoolbook-tree): use Sans for sans
10341         serif.
10342
10343 2005-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
10344
10345         * configure.in (reloc_b): Add --enable-relocation.
10346
10347 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10348
10349         * lily/pfb.cc (LY_DEFINE): show file name when loading PFB. 
10350
10351         * input/regression/alignment-order.ly: add Staff example.
10352
10353 2005-05-31  John Mandereau   <john.mandereau@free.fr>
10354
10355         * po/fr.po: update.
10356
10357 2005-05-31  Graham Percival  <gperlist@shaw.ca>
10358
10359         * Documentation/index.html.in: add link to LSR.
10360
10361 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10362
10363         * scm/define-stencil-commands.scm (Module): new file. Register all
10364         allowed stencil expression heads in a central place.
10365
10366         * lily/stencil-scheme.cc (LY_DEFINE): check is_stencil_head in
10367         ly:make-stencil
10368
10369         * lily/stencil-expression.cc (all_stencil_heads): registering
10370         stencil expressions.
10371
10372         * lily/stencil-interpret.cc: new file. Stencil expression
10373         interpreting.
10374
10375         * input/xiao-haizi-guai-guai.ly: move file back.
10376
10377 2005-05-30  Graham Percival  <gperlist@shaw.ca>
10378
10379         * Documentation/user/advanced.itely, converters.itely,
10380         instrument-notation.itely, lilypond-book.itely: misc small
10381         changes.
10382
10383 2005-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
10384
10385         * lily/lexer.ll: Skip UTF-8 BOM at BOF.
10386
10387         * make/lilypond.fedora.spec.in: Fix source url.
10388
10389         * cygwin: Update from mingw patches.
10390
10391         * scm/editor.scm (editor-command-template-alist): Use jedit
10392         -reuseview (Bertalan), add uedit (Patrick Huberts).
10393
10394         * input/xiao-hai-zi-guai-guai.ly: Rename from
10395         xiao-haizi-guai-guai.ly.
10396
10397         * input/*: Reindent, do not use TAB.
10398
10399         * Documentation/pictures/ly.xpm: Bugfix: do not anti-alias against
10400         white background.
10401
10402 2005-05-29  Jan Nieuwenhuizen  <janneke@gnu.org>
10403
10404         * scm/framework-ps.scm (dump-stencil-as-EPS): Add silly fix for
10405         numerical overflow error.
10406
10407 2005-05-29 Laura Conrad <lconrad@laymusic.org>
10408         
10409         * abc2ly.py: fix to syntax error in multi-part output.
10410
10411 2005-05-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10412
10413         * lily/span-bar.cc (print): sort bar line extents. Fixes problem
10414         with disappearing span bars when alignAboveContext is active
10415
10416         * lily/property-iterator.cc (check_grob): use is-grob?
10417         object-property. Fixes crash-key-sig-font-size.ly. 
10418
10419 2005-05-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10420
10421         * lily/bar-line.cc (print): don't round barlines; this produces
10422         odd aliasing effects in Acroread.
10423
10424         * lily/timing-engraver.cc (process_music): robustness fix.
10425
10426         * lily/context-def.cc (filter_engravers): bugfix.
10427
10428 2005-05-28  Jan Nieuwenhuizen  <janneke@gnu.org>
10429
10430         * lily/lilypond.rc.in: Add ly-icon.
10431
10432         * lily/GNUmakefile: 
10433         * Documentation/pictures/GNUmakefile (OUT_DIST_FILES): Add ly-icon
10434         rules.
10435
10436 2005-05-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10437
10438         * lily/stencil-scheme.cc (LY_DEFINE): ly:stencil-in-color
10439
10440         * ps/music-drawing-routines.ps: 
10441
10442         * scm/output-ps.scm: remove draw ez_ball.
10443
10444         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
10445         EasyNotation context definition.
10446
10447         * lily/easy-notation.cc (brew_ez_stencil): new file. Use
10448         Text_interface and color for making easy note heads.
10449
10450         * lily/stencil.cc (with_color): new function.
10451
10452         * ps/music-drawing-routines.ps: remove draw_zigzag_line
10453
10454         * lily/line-spanner.cc (zigzag_stencil): rewrite to use draw-line
10455         output routine. Zigzag now works in SVG too.
10456
10457         * scm/output-tex.scm (filledbox): idem.
10458
10459         * scm/output-svg.scm (filledbox): idem.
10460
10461         * scm/output-ps.scm (lily-def): remove horizontal-line. 
10462
10463         * lily/lookup.cc (horizontal_line): use draw-line. 
10464
10465         * lily/system-start-delimiter.cc: remove old staff bracket code.
10466
10467         * mf/feta-haak.mf: further tweaks.
10468
10469         * lily/system-start-delimiter.cc (staff_bracket): use glyphs.
10470
10471         * mf/feta-generic.mf: include feta-haak.
10472
10473         * mf/feta-haak.mf: rewrite. Make separate glyphs for the tips 
10474
10475         * scm/framework-ps.scm (write-preamble): only load fonts if their
10476         filename is a string. 
10477
10478 2005-05-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10479
10480         * scm/output-svg.scm (circle): support circle.
10481         (bracket): stub for bracket.
10482
10483         * scripts/lilypond-book.py (main): make sure --psfonts warning is
10484         correct.
10485
10486 2005-05-26  Graham Percival  <gperlist@shaw.ca>
10487
10488         * Documentation/user/lilypond.tely, advanced-notation.itely,
10489         basic-notation.itely, instrument-notation.itely, global.itely,
10490         introduction.itely, tutorial.itely: rearranging, editing,
10491         clean-up.
10492
10493         * mf/GNUmakefile: change a "make -C" to "${MAKE} -C", required
10494         for compiling on FreeBSD.
10495
10496 2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10497
10498         * lily/pfb.cc (LY_DEFINE): progress indication for opening ttf and
10499         otf files.
10500
10501         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly (lower):
10502         bugfixes.
10503
10504         * VERSION: 2.5.26 released.
10505
10506         * scm/titling.scm (marked-up-headfoot): revert Pedro's patch. 
10507
10508 2005-05-25  Pedro Kroger  <kroeger@pedrokroeger.net>
10509
10510         * scm/titling.scm (marked-up-headfoot): doesn't print pagenumbers
10511         if printpagenumber is false.
10512
10513 2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10514
10515         * lily/font-config.cc (init_fontconfig): comment out FontConfig
10516         cache warning.
10517
10518         * lily/tie.cc (print): support dotted ties.
10519         
10520 2005-05-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10521
10522         * scm/define-grobs.scm (all-grob-descriptions): switch off
10523         debugging
10524         (all-grob-descriptions): Arpeggio has Y-extent.
10525
10526         * scm/define-music-properties.scm (all-music-properties): document
10527         length-callback and start-callback as "read-only".
10528
10529         * scm/music-functions.scm (unfold-repeats): rewrite. Cannot set
10530         length-callback after creation. 
10531
10532         * scripts/convert-ly.py (conv): unfoldrepeats -> unfoldRepeats,
10533         compressmusic -> compressMusic.
10534
10535         * ly/music-functions-init.ly (oldaddlyrics): idem.
10536
10537         * lily/parser.yy: NewLyricCombineMusic ->
10538         LyricCombineMusic. LyricCombineMusic -> OldLyricCombineMusic.
10539
10540 2005-05-24  Pedro Kroger  <kroeger@pedrokroeger.net>
10541
10542         * ly/Welcome_to_LilyPond.ly: typo.
10543
10544 2005-05-24  Graham Percival  <gperlist@shaw.ca>
10545
10546         * Documentation/user/lilypond.tely: move changing-defaults to be
10547         before global issues.
10548
10549         * Documentation/user/basic-notation.itely: move Transpose section
10550         here from advanced/Other.
10551
10552         * Documentation/user/changing-defaults.itely,
10553         advanced-notation.itely: move Fonts to advanced, edit.
10554
10555 2005-05-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10556
10557         * lily/parser.yy (bare_int): remove rule.  From now on, we require
10558         # before negative integers.
10559
10560 2005-05-23  Graham Percival  <gperlist@shaw.ca>
10561
10562         * ly/property.ly: Update tieDotted to have the same form as slurDotted.
10563
10564         * Documentation/user/lilypond.tely: change Unified index to
10565         LilyPond index.
10566
10567         * Documentation/user/advanced-notation.itely,
10568         instrument-notation.itely: editing.
10569
10570 2005-05-23  Jan Nieuwenhuizen  <janneke@gnu.org>
10571
10572         * scm/lily.scm (lilypond-all): Bugfix: return failed.
10573
10574         * lily/main.cc (setup_paths)[__MINGW32__]: Normalize LILYPONDPREFIX.
10575
10576 2005-05-21  Jan Nieuwenhuizen  <janneke@gnu.org>
10577
10578         * lily/general-scheme.cc (ly:stderr-redirect): Rename from
10579         ly:port-move.  Needs to be stderr-specific on mingw.
10580         Run fixcc.
10581
10582 2005-05-20  Jan Nieuwenhuizen  <janneke@gnu.org>
10583
10584         * lily/general-scheme.cc (ly:port-move): Remove.
10585
10586         * scm/backend-library.scm (postscript->pdf): Remove -dSAFER in
10587         windows.
10588
10589         * lily/main.cc (setup_paths) [ARGV0_RELOCATION]: Reinstate GS_*
10590         variables.  This eliminates the need for a gs.bat wrapper, which
10591         opens a console.
10592
10593         * scripts/lilypond-invoke-editor.scm (running-from-gui?): 
10594         * scm/lily.scm (running-from-gui?): 
10595         * lily/main.cc[MINGW]: Remove isatty inversion, this is an
10596         artifact of not compiling with -mwindows.
10597
10598         * scm/editor.scm: Define PLATFORM.
10599
10600 2005-05-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10601
10602         * scripts/lilypond-book.py (PREAMBLE_LY): add marker, where people
10603         can start to cut & paste lilypond-book fragments.  
10604
10605         * scm/define-music-types.scm (music-descriptions): remove
10606         UntransposableMusic
10607
10608 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10609
10610         * scm/output-ps.scm (glyph-string): remove / before CIDs.
10611
10612 2005-05-20  Graham Percival  <gperlist@shaw.ca>
10613
10614         * Documentation/user/instrument-notation.itely: remove *Engraver.
10615
10616         * Documentation/user/advanced-notation.itely: edit, rearrange.
10617
10618 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10619
10620         * scm/output-ps.scm (glyph-string): take cid? argument. Use
10621         findresource iso. findfont for CID CFF fonts.
10622
10623         * VERSION (PACKAGE_NAME): release 2.5.25
10624
10625         * ly/Welcome_to_LilyPond.ly: add  \version
10626
10627 2005-05-20  Graham Percival  <gperlist@shaw.ca>
10628
10629         * Documentation/user/programming-interface.itely: move
10630         \displayMusic into its own section.
10631
10632         * Documentation/user/basic-notation.itely: finish editing.
10633
10634 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10635
10636         * flower/file-path.cc (find): don't throw away file_name.dir, but
10637         append to it. Fixes \include with directories.
10638
10639         * flower/include/file-path.hh (class File_path): don't derive from
10640         Array<String>.
10641
10642         * flower/include/file-name.hh (class File_name): remove to_str0()
10643
10644         * lily/hara-kiri-engraver.cc (acknowledge_grob): split
10645         Hara_kiri_engraver in separate file.
10646
10647         * lily/slur-configuration.cc (score_encompass): oops, <? to min()
10648         translation went wrong. Fixes vertically translated slurs.
10649
10650 2005-05-19  Graham Percival  <gperlist@shaw.ca>
10651
10652         * Documentation/user/basic-notaton.itely: editing.
10653
10654 2005-05-18  Graham Percival  <gperlist@shaw.ca>
10655
10656         * Documentation/user/macros.itexi, basic-notation.itely:
10657         add @commonprop (commonly used properties) macro.
10658
10659 2005-05-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10660
10661         * ly/Welcome_to_LilyPond.ly: talk about icon, not program.
10662
10663         * scripts/lilypond-book.py (invokes_lilypond): new function
10664         (main): only run fontextract if invokes_lilypond() is true.
10665
10666         * lily/function-documentation.cc (ly_add_function_documentation):
10667         duh, use !=
10668
10669         * Documentation/topdocs/INSTALL.texi (Top): add MacOS command.
10670
10671         * stepmake/aclocal.m4: remove kpathsea warning, change to OPTIONAL.
10672
10673         * scm/lily.scm (running-from-gui?): lowercase Darwin.
10674
10675         * lily/function-documentation.cc (ly_add_function_documentation):
10676         use scm_hash_table_p() for checking.
10677
10678 2005-05-18  Jan Nieuwenhuizen  <janneke@gnu.org>
10679
10680         * Documentation/user/advanced-notation.itely (Text scripts):
10681         Change nonexisting @internalsref{Text markup} to @ref{Text
10682         markup}.  Change @internalsref{Text script} to
10683         @internalsref{TextScript}.
10684
10685         * lily/main.cc (setup_paths): Bugfix: pangorc is not pango.modules.
10686
10687 2005-05-17  Graham Percival  <gperlist@shaw.ca>
10688
10689         * Documentation/user/tutorial.itely, basic-notation.itely,
10690         changing-defaults.itely: remove duplicate cindex entries
10691         that appear on the same page.
10692
10693         * scm/define-grobs.scm: change default padding for TextSpanner.
10694
10695         * Documentation/topdocs/AUTHORS.texi: update email address.
10696
10697         * Documentation/user/global.itely: add info about \include.
10698
10699 2005-05-17  Jan Nieuwenhuizen  <janneke@gnu.org>
10700
10701         * scm/backend-library.scm (postscript->pdf): Remove (useless) .ps
10702         when running-from-gui.
10703
10704         * scm/editor.scm (get-editor): Add platform defaults.
10705
10706         * scm/backend-library.scm (postscript->pdf): Typo.
10707
10708 2005-05-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10709
10710         * scm/lily.scm (running-from-gui?): Darwin never runs from GUI.
10711
10712         * lily/font-config.cc (init_fontconfig): add warning about cache.
10713
10714 2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
10715
10716         * lily/main.cc (setup_paths)[ARGV0_RELOCATION]: Remove GS_*.
10717
10718 2005-05-16  Mats Bengtsson  <mabe@s3.kth.se>
10719
10720         * lily/horizontal-bracket.cc (print): Take care of the direction
10721         property so brackets above the stave point downwards. 
10722
10723         * scm/define-grobs.scm (all-grob-descriptions): Set staff-padding
10724         for HorizontalBracket so it doesn't end up within the stave.
10725
10726 2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
10727
10728         * lily/GNUmakefile (default): Typo.
10729
10730         * scm/lily.scm (PLATFORM): Export.
10731
10732         * scm/framework-ps.scm (write-preamble)[MINGW]: Use
10733         load-font-via-GS, ttftool or fopencookie is broken on windows.
10734         
10735         * scm/backend-library.scm (postscript->pdf)[MINGW]: Do not use
10736         -dSAFER, that is broken on windows.
10737
10738 2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10739
10740         * lily/GNUmakefile ($(outdir)/FlexLexer.h): conditional dependency
10741         for FlexLexer.h
10742
10743         * scripts/lilypond-invoke-editor.scm: remove stray -
10744
10745 2005-05-15  Jan Nieuwenhuizen  <janneke@gnu.org>
10746
10747         * lily/lily-guile.cc (ly_scm2newstr): Use scm_i_string_length.
10748         Fixes deprecation warning.
10749
10750         * flower/include/string.icc (to_string): Only inline if
10751         -DSTRING_UTILS_INLINED.
10752
10753         * lily/pango-font.cc (pango_item_string_stencil): Normalize file
10754         name.  Remove windows comment.
10755
10756         * scm/editor.scm (slashify): New function.
10757         (get-editor-command): Use it.
10758         (get-command-template): Do not alter editor command if
10759         environment value includes `%(file)s' magic.
10760
10761         * scripts/lilypond-invoke-editor.scm (unquote-uri): New function.
10762         (dissect-uri): Use it.
10763         (unquote-uri): Bugfix.
10764
10765 2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10766
10767         * scm/framework-ps.scm (write-preamble): add TTF rule.
10768
10769         * Documentation/topdocs/README.texi (Top): remove note about
10770         xdelta.
10771
10772         * Documentation/topdocs/INSTALL.texi (Top): remove Flex
10773         requirement.
10774
10775         * stepmake/aclocal.m4: STEPMAKE_FLEXLEXER_LOCATION: new
10776         function. Figure out where FlexLexer.h lives
10777
10778         * lily/GNUmakefile (OUT_DIST_FILES): dist lexer.cc and FlexLexer.h
10779         
10780 2005-05-14  Jan Nieuwenhuizen  <janneke@gnu.org>
10781
10782         * scripts/lilypond-invoke-editor.scm (dissect-uri): Handle URIs
10783         with Windows root in file name.
10784
10785         * scm/backend-library.scm (ly:system): Only redirect output (using
10786         system and shell, ugh) if /dev/null is writable.
10787
10788         * Documentation/pictures/GNUmakefile [PLATFORM_WINDOWS]: Build
10789         windows icon.
10790
10791         * scm/lily.scm (is-absolute?): New function.  Fixes absolute files
10792         on Mingw.
10793
10794         * scm/output-ps.scm (grob-cause): Use it.  Fixes PDF point and
10795         click.
10796
10797         * flower/file-path.cc (is_dir, is_file): New function.  Actually
10798         use result of stat when available.
10799
10800         * flower/file-path.cc (find): Use it.  Refactor.  Fixes Mingw,
10801         absolute file name and root.
10802
10803         * scm/lily.scm (PLATFORM): On mingw, slashify getcwd.
10804
10805         * scm/editor.scm (get-editor-command): Typo: do not apply editor.
10806
10807         * flower/file-name.cc (slashify): Bugfix, do substitute if no
10808         slashes in file name.
10809
10810 2005-05-13  Jan Nieuwenhuizen  <janneke@gnu.org>
10811
10812         * Documentation/user/preface.itely (Preface): Run
10813         texinfo-all-menus-update.
10814
10815         * scm/editor.scm (get-editor-command): Bugfix: allow full
10816         LYEDITOR setting, partial XEDITOR setting.  With typo fix.
10817
10818         * Documentation/pictures/lilypond-48.xpm: New file.
10819
10820         * flower/file-path.cc (to_string): Bugfix: use PATHSEP.
10821
10822         * ly/Welcome_to_LilyPond.ly: New file.
10823
10824         * lily/main.cc (main): Only identify if we have a terminal.
10825
10826         * scm/backend-library.scm (postscript->png)
10827         (postscript->pdf): Fix file name quoting for GS/MINGW (ie,
10828         non-/bin/sh).
10829
10830 2005-05-13  Heikki Junes  <hjunes@cc.hut.fi>
10831
10832         * Documentation/topdocs/AUTHORS.texi: polish, update.
10833
10834 2005-05-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10835
10836         * Documentation/user/preface.itely (Notes for version 2.6): new
10837         notes for 2.6
10838
10839         * lily/dynamic-engraver.cc (stop_translation_timestep): first set
10840         finished_span_, then call typeset_all(). Fixes spurious "Hairpin
10841         is not fully contained" warnings.
10842
10843         * lily/slur-scoring.cc (get_bound_info): remove warning.
10844
10845         * lily/staff-symbol-engraver.cc (process_music): start initial
10846         spanner in process_music(). This fixes overrides of StaffSymbol
10847         properties.
10848
10849         * scm/framework-pdf.scm (Module): remove.
10850
10851         * Documentation/topdocs/AUTHORS.texi (AUTHORS): clean up, update.
10852
10853         * lily/ambitus-engraver.cc: formatting cleanups.
10854
10855         * mf/feta-solfa.mf (Module): remove.
10856
10857         * ChangeLog: more details about contributions.
10858
10859 2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10860
10861         * lily/align-interface.cc (align_elements_to_extents): warn if
10862         called too early. Fixes: disappearing-staff-lines.ly
10863
10864         * VERSION (PACKAGE_NAME): release 2.5.24
10865
10866 2005-05-12  Jan Nieuwenhuizen  <janneke@gnu.org>
10867
10868         * stepmake/aclocal.m4: Typo.
10869
10870         * flower/string.cc (substitute): Take two strings or two
10871         characters.  Update callers.
10872
10873 2005-05-11  Jan Nieuwenhuizen  <janneke@gnu.org>
10874
10875         * flower/file-name.cc (File_name): Slashify.
10876
10877         * scm/lily.scm: Use gui-main iso lilypond-main on MINGW.
10878
10879         * scripts/GNUmakefile (SEXECUTABLES): Add lilypond-invoke-editor.
10880
10881         * stepmake/aclocal.m4 (STEPMAKE_WINDOWS): New function.
10882
10883         * configure.in (gui_b): Use it.
10884
10885         * lily/lilypond.rc.in: New file.
10886
10887         * lily/GNUmakefile[PLATFROM_WINDOWS]: Compile it into executable.
10888
10889 2005-05-12  Graham Percival  <gperlist@shaw.ca>
10890
10891         * Documentation/user/advanced-notation.itely: edit of Text
10892         section; clarify text scripts vs. text markup.
10893
10894 2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10895
10896         * lily/multi-measure-rest-engraver.cc
10897         (Multi_measure_rest_engraver): init bar_seen_ to true. Notice
10898         separation items on start. Fixes mm rests in start of score.
10899
10900         * lily/slur-scoring.cc (move_away_from_staffline): robustness,
10901         don't access StaffSymbol if not there.
10902         Fixes: crash-staff-symbol-engraver.ly.
10903
10904         * lily/instrument-name-engraver.cc (class
10905         Instrument_name_engraver): data member first_. Create
10906         InstrumentName on start. 
10907
10908 2005-05-12  Graham Percival  <gperlist@shaw.ca>
10909
10910         * Documentation/user/instrument-notation.itely: add guitar
10911         position.
10912
10913         * Documentation/user/introduction.itely,
10914         Documentation/user/lilypond.tely,
10915         Documentation/user/tutorial.itely: begin pruning
10916         unused (duplicated) cindex entries and misc cleanup.
10917
10918 2005-05-12  Mats Bengtsson  <mabe@s3.kth.se>
10919
10920         * input/test/volta-chord-names.ly: Bring the explanation up to
10921         date.
10922
10923 2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
10924
10925         * Documentation/topdocs/{AUTHORS.texi,INSTALL.texi,README.texi}:
10926         Specify `@documentencoding utf-8' for html, ignore warnings.
10927
10928 2005-05-11  Erik Sandberg  <ersa9195@student.uu.se>
10929
10930         * THANKS: Added bughunters.
10931
10932 2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
10933
10934         * lily/main.cc: update help string for `lilypond -H'.
10935
10936         * po/fi.po: update.
10937         
10938 2005-05-10  Graham Percival  <gperlist@shaw.ca>
10939
10940         * Documentation/user/advanced-notation.itely: minor fixes.
10941
10942 2005-05-10  Jan Nieuwenhuizen  <janneke@gnu.org>
10943
10944         * scm/editor.scm: New module.
10945
10946         * scm/lily.scm (gui-main): Use it.
10947
10948         * scm/framework-gnome.scm (spawn-editor): Use it.
10949
10950         * scripts/lilypond-invoke-editor.scm: Use it in new script.
10951
10952 2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10953
10954         * scm/framework-ps.scm (load-font-via-GS):  new function.
10955
10956         * lily/pango-font.cc (pango_item_string_stencil): add support for
10957         CID keyed font.
10958
10959         * scm/output-ps.scm (glyph-string): add support for CID keyed font.
10960
10961 2005-05-10  Graham Percival  <gperlist@shaw.ca>
10962
10963         * Documentation/user/basic-notation.itely: add @ref.
10964
10965         * Documentation/user/advanced-notation.itely: add example
10966         of 5/8 beaming.
10967
10968 2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10969
10970         * scripts/lilypond-pdfpc-helper.py (ly_pc_editor): robustness fixes.
10971
10972         * scm/backend-library.scm (postscript->pdf): Invoke gs instead of
10973         going through ps2pdf wrappers.
10974
10975 2005-05-09  Jürgen Reuter  <reuter@ipd.uka.de>
10976
10977         * Documentation/user/instrument-notation.itely: petrucci note
10978         heads: updated docu
10979
10980         * input/regression/note-head-style.ly: updated regression test;
10981         indentation fixes
10982
10983         * ly/engraver-init.ly: MensuralVoiceContext: use petrucci note
10984         heads as default
10985
10986         * mf/parmesan-heads.mf: minor editing; use musicological names
10987         (rather than optical description) as note head names
10988
10989         * scm/output-lib.scm: complete petrucci heads
10990
10991 2005-05-09  Pal Benko  <benkop@freestart.hu>
10992
10993         * mf/parmesan-heads.mf: add petrucci heads (like neo-mensural
10994         heads, but bigger)
10995
10996 2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
10997
10998         * lily/main.cc (main_with_guile): Remove no files check.
10999
11000         * lily/main.cc (ly:usage): Export to Scheme.
11001
11002         * scm/lily.scm (no-files-handler): New function.
11003
11004         * scm/lily.scm (lilypond-main): Use it.
11005
11006         * configure.in (gui_b): Add mbrtowc checking.
11007         Resurrect [utf8/]wchar.h checking.
11008
11009 2005-05-09  Mats Bengtsson  <mabe@s3.kth.se>
11010
11011         * Documentation/user/advanced-notation.itely (Metronome marks):
11012         Add link to the program reference for MetronomeMark
11013
11014         * Documentation/user/lilypond-book.itely (An example of a
11015         musicological document): Correct the example using psfonts 
11016
11017 2005-05-09  Heikki Junes  <hjunes@cc.hut.fi>
11018
11019         * po/fi.po: update after a lesson how to update entries against
11020         source.
11021         
11022         * po/TODO: document the lesson.
11023
11024 2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11025
11026         * configure.in (gui_b): remove wcrtomb checking.
11027
11028         * lily/general-scheme.cc (LY_DEFINE): hand-convert utf8 to 32
11029         bits. Patch by Matthias Neeracher. <neeracher@mac.com>
11030
11031 2005-05-09  Mats Bengtsson  <mabe@s3.kth.se>
11032
11033         * scripts/convert-ly.py: In the conversion to version 1.9.0, 
11034         keep Scheme expressions and strings unmodified when doing the
11035         conversion to postfix notation for slurs and beams. Should
11036         hopefully solve most related conversion problems. 
11037
11038         * Documentation/user/lilypond-book.itely : Clarify and correct how
11039         to call dvips with -h psfonts.
11040
11041 2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
11042
11043         * Documentation/user/instrument-notation.itely (Entering lyrics):
11044         Typo.  Fixes build.
11045
11046 2005-05-09  Graham Percival  <gperlist@shaw.ca>
11047
11048         * Documentation/user/lilypond-book.itely: document PSFONTS file.
11049
11050         * Documentation/user/lilypond.tely, lilypond-book.itely,
11051         tutorial.itely: change references to 2.5.x to 2.6.x.
11052
11053         * Documentation/user/instrument-notation.itely: clarified \addlyrics
11054         vs \lyricmode.
11055
11056         * Documentation/user/invoking.itely: remove old info about
11057         lilypond-profile.
11058
11059         * Documentation/topdocs/INSTALL.texi: remove old info about
11060         lilypond-profile, add warning about needing international fonts
11061         to build docs.
11062
11063 2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11064
11065         * lily/include/grob-info.hh (class Grob_info): make data member
11066         private. Changes throughout.
11067
11068         * input/regression/alignment-order.ly: new file. 
11069
11070         * lily/vertical-align-engraver.cc (acknowledge_grob): read
11071         alignAboveContext and alignBelowContext
11072
11073 2005-05-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11074
11075         * lily/pfb.cc (LY_DEFINE): add cast.
11076
11077         * scm/framework-ps.scm (write-preamble): embed CFFs if file name
11078         matches .otf
11079         (write-preamble): warn about unknown fonts.
11080
11081         * lily/pfb.cc (Module): new function ly:otf->cff
11082
11083         * lily/open-type-font.cc (get_otf_table): use ::get_otf_table
11084         (get_otf_table): new function.
11085
11086 2005-05-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11087
11088         * scm/backend-library.scm (postscript->png): call lilypond-ps2png
11089         iso. ps2png.
11090
11091 2005-05-06  Heikki Junes  <hjunes@cc.hut.fi>
11092
11093         * po/fi.po: apply second round of update.
11094
11095 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11096
11097         * scm/x11-color.scm (make-x11-color-handler): don't use
11098         #\sp. Apparently doesn't work on all platforms. 
11099
11100 2005-05-06  Graham Percival  <gperlist@shaw.ca>
11101
11102         * Documentation/user/advanced-notation.itely, putting.itely,
11103         tutorial.itely, global.itely, introduction.itely: really minor fixes.
11104
11105 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11106
11107         * VERSION (PACKAGE_NAME): release 2.5.23
11108
11109 2005-05-06  Jan Nieuwenhuizen  <janneke@gnu.org>
11110
11111         * Documentation/topdocs/AUTHORS.texi: Remove texinfo @accents,
11112         convert to utf-8.
11113
11114         * THANKS: Add translators for this release, convert to utf-8.
11115
11116         * mf/GNUmakefile (MFTRACE_FLAGS):
11117         * buildscripts/substitute-encoding.py (outdir): Build fix: pass
11118         outdir as option (WAS: hardcoded).
11119
11120 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11121
11122         * lily/staff-symbol-engraver.cc (Staff_symbol_engraver): init
11123         finished_span_
11124
11125         * THANKS: add Hans Forbrich.
11126
11127         * Documentation/topdocs/NEWS.tely (Top): document new feature.
11128
11129         * Documentation/user/basic-notation.itely (Staff symbol): document
11130         start/stop staff. Reference to ossia.ly
11131
11132         * input/test/ossia.ly: new example using stop and startStaff.
11133
11134         * lily/timing-engraver.cc: remove Timing_engraver::initialize(),
11135         in other words, don't create "|" barline at start of the score.
11136         (start_translation_timestep): don't set whichBar for start of score.
11137
11138         * input/regression/staff-halfway.ly: use new functionality.
11139
11140         * lily/staff-symbol-engraver.cc (try_music): take StaffSpanEvents,
11141         start and stop staff based on events.
11142
11143         * scm/define-music-types.scm (music-descriptions): add StaffSpanEvent
11144
11145         * ly/declarations-init.ly (startStaff, stopStaff): new identifiers.
11146
11147 2005-05-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11148
11149         * Documentation/user/programming-interface.itely (How markups work
11150         internally ): remove \encoding reference.
11151
11152 2005-05-04  Mats Bengtsson  <mabe@s3.kth.se>
11153
11154         * scripts/convert-ly.py: Attempt to do a smarter update of 
11155         text markups from versions < 1.9.0 with arbitrary nesting.
11156
11157 2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
11158
11159         * po/fi.po: convert to utf-8, and update.
11160
11161 2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11162
11163         * make/lilypond.suse.spec.in: update from suse 2.4 package.
11164
11165         * lily/*.cc: more <? >? to min/max changes
11166
11167         * lily/include/interpretation-context-handle.hh: rename
11168         Interpretation_context_handle to Context_handle.
11169
11170 2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
11171
11172         * input/regression/GNUmakefile (local_delete): use `find` together 
11173         with `xargs` to avoid too long argument-lists in cmd line.
11174
11175 2005-05-04  Graham Percival  <gperlist@shaw.ca>
11176
11177         * Documentation/user/introduction.itely: updates "About this manual".
11178
11179         * Documentation/user/advanced-notation.itely,
11180         invoking.itely: minor fixes.
11181
11182 2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11183
11184         * COPYING: add font exception. Update FSF address. 
11185
11186         * lily/context-def.cc (path_to_acceptable_context): bugfix, depth
11187         should be taken without child context.
11188
11189         * ly/chord-modifiers-init.ly (blackTriangleMarkup): use it.
11190
11191         * scm/define-markup-commands.scm (triangle): new command, as
11192         robust replacement for unicode Delta/Triangle.
11193
11194 2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11195
11196         * ps/music-drawing-routines.ps: add fillp argument.
11197
11198         * lily/lookup.cc (round_filled_polygon): polygon takes filled? argument
11199
11200         * lily/font-config.cc (init_fontconfig): don't add cff/
11201
11202         * VERSION (PACKAGE_NAME): release 2.5.22
11203
11204         * mf/GNUmakefile: remove cff/cff.ps/.map install rules.
11205
11206         * lily/grace-engraver.cc (consider_change_grace_settings): use
11207         is_alias(). Fixes problem with CueVoice grace notes. 
11208
11209         * lily/simultaneous-music-iterator.cc (construct_children): call
11210         Music_iterator::quit() for iterators that start out invalid. This
11211         fixes indefinitely continuing contexts.
11212
11213         * buildscripts/substitute-encoding.py: new file
11214
11215         * Documentation/user/basic-notation.itely (Basic polyphony): fix
11216         missing @end 
11217
11218         * scripts/lilypond-book.py (write_if_updated): print file name.
11219
11220         * Documentation/user/basic-notation.itely (Explicitly
11221         instantiating voices): idem.
11222
11223         * Documentation/user/advanced-notation.itely (Text spanners):
11224         remove stray { } 
11225
11226         * lily/context.cc (default_child_context_name): the default child
11227         is now first in accepts_list_.
11228
11229         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
11230         \defaultchild to all relevant contexts.  This fixes:
11231         drums-pitch.ly.
11232
11233         (Probably also fixes similar problems with ancient
11234         transcriptions getting CueVoices instead of the desired voices.)
11235  
11236         * lily/context-def.cc (get_default_child): new function.
11237         (get_accepted): place default child in front of list.
11238
11239         * lily/parser.yy (FIXME): add DEFAULTCHILD token.
11240
11241         * lily/include/context-def.hh (struct Context_def): add
11242         default_accept_
11243
11244 2005-05-03  Graham Percival  <gperlist@shaw.ca>
11245
11246         * scm/define-grobs.scm: remove "remove-first" line, since
11247         the absent property is set to #f anyway.
11248
11249         * Documentation/user/basic-notation.itely,
11250         advanced-notation.itely, instrument-notation.itely: minor
11251         fixes.
11252
11253         * ly/property-init.ly: add textSpanner{Up,Down,Neutral}.
11254
11255         * Documentation/user/advanced-notation.itely,
11256         changing-defaults.itely: consolidate Text stuff in
11257         advanced notation.
11258
11259         * Documentation/user/global.itely: better docs for \header.
11260
11261         * Documentation/user/putting.itely: new chapter; placeholder
11262         for future expansion.
11263
11264         * Documentation/user/examples.itely: moved "suggestions for
11265         writing LP files" section into putting.itely.
11266
11267         * Documentation/user/lilypond.itely: added new chapter,
11268         fixed the short table of contents.
11269
11270 2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11271
11272         * lily/beam-quanting.cc (quanting): robustness fix, don't produce
11273         infinity for unfeasible beams.
11274
11275         * make/lilypond.fedora.spec.in (Group): idem.
11276
11277         * scripts/GNUmakefile (SEXECUTABLES): rename ps2png to lilypond-ps2png
11278
11279         * mf/GNUmakefile (ALL_GEN_FILES): remove .map
11280
11281         * scm/framework-ps.scm (write-preamble): extract CFF from OTF
11282         fonts directly.
11283
11284         * buildscripts/gen-emmentaler-scripts.py (i): idem.
11285
11286         * mf/GNUmakefile: remove all CFF rules.
11287
11288         * scm/framework-ps.scm (ps-embed-cff): reinstate.
11289
11290         * lily/open-type-font-scheme.cc (LY_DEFINE):
11291         new function ly:otf-font-table-data.
11292         (LY_DEFINE): new function otf-font?
11293
11294 2005-05-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11295
11296         * mf/GNUmakefile ($(outdir)/lilypond.map): remove rule.
11297         ($(outdir)/Fontmap.lily): idem.
11298
11299         * buildscripts/gen-emmentaler-scripts.py (i): load fetaXX encoding
11300         for PFAEmmentaler-XXX.pfa. 
11301
11302         * Documentation/user/music-glossary.tely (accidental): NL
11303         translation of accidental.
11304
11305 2005-05-02  Jan Nieuwenhuizen  <janneke@gnu.org>
11306
11307         * flower/include/international.hh: Bugfix: include "string.hh".
11308
11309         * lily/include/mingw-compatibility.hh: New file.
11310
11311         * flower/include/libc-extension.hh (memrev): Rename from strrev.
11312
11313         * configure.in: Search for mingw wcrtomb library.
11314
11315 2005-05-02  Mats Bengtsson  <mabe@s3.kth.se>
11316
11317         * scripts/convert-ly.py: Bug fix
11318
11319         * Documentation/user/changing-defaults.itely (Common tweaks):
11320         Added example where the context has to be specified explicitly
11321         (MetronomeMark). 
11322
11323 2005-05-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11324
11325         * scripts/lilypond-book.py (ly_options): set timing to #f for
11326         notime option.
11327
11328         * scripts/convert-ly.py (conv): typo.
11329
11330         * flower/*.cc: remove <? and >?
11331         
11332         * lily/*.cc: remove <? and >?
11333
11334         * lily/tweak-registration.cc (insert_tweak_from_file): Make sure
11335         that 0x0 isn't passed into scm_cons(). Fixes crash with tweak
11336         editor.
11337
11338 2005-04-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11339
11340         * lily/part-combine-engraver.cc: add space to variable list.
11341
11342 2005-04-30  Graham Percival  <gperlist@shaw.ca>
11343
11344         * scm/define-grobs.scm: changed RemoveEmptyVerticalGroup's
11345         remove-first to false (matches docs)
11346
11347         * Documentation/user/advanced-notation.itely: corrected docs
11348         concerning remove-first.
11349
11350 2005-04-29  Mats Bengtsson  <mabe@s3.kth.se>
11351
11352         * lily/part-combine-engraver.cc: make sure that the relevant
11353         properties are included in the documentation.
11354
11355 2005-04-28  Graham Percival  <gperlist@shaw.ca>
11356
11357         * Documentation/user/lilypond-book.itely: Bernard's docs
11358         for \betweenLilyPondSystem.
11359
11360 2005-04-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11361
11362         * Documentation/topdocs/INSTALL.texi (Top): remove TeX outdated
11363         remarks.
11364
11365 2005-04-28  Pal Benko  <benkop@freestart.hu>
11366
11367         * lily/mensural-ligature.cc (brew_flexa): apply thickness property
11368         only on vertical lines of flexa shape, and use a constant
11369         thickness value for horizontal lines (patch slightly modified by
11370         Jürgen Reuter)
11371
11372         * lily/include/mensural-ligature.hh: make 2 comments clearer
11373
11374 2005-04-28  Jürgen Reuter  <reuter@ipd.uka.de>
11375
11376         * lily/vaticana-ligature-engraver.cc (need_extra_space): renamed
11377         to need_extra_horizontal_space; bugfix: use class scope to avoid
11378         global namespace pollution
11379
11380         * Documentation/user/instrument-notation.itely (ligatures): added
11381         comment on possible future syntax change and how to work around
11382
11383         * lily/vaticana-ligature-engraver.cc, mf/parmesan-heads.mf
11384         (epiphonus, cephalicus): fine-tune shape of plica head for narrow
11385         intervals (fixes agnus dei example)
11386
11387         * Documentation/user/instrument-notation.itely (white mensural
11388         ligatures): selected a more illustrative example
11389
11390 2005-04-28  Heikki Junes <hjunes@cc.hut.fi>
11391
11392         * Documentation/index.html.in: specify utf-8 charset in meta content.
11393
11394 2005-04-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11395
11396         * python/lilylib.py (make_ps_images): bugfixes; GS can produce
11397         empty 2nd page for single page.
11398
11399         * scm/lily.scm: remove p&c definitions.
11400
11401         * po/zh_TW.po (Module): new translation.
11402
11403         * lily/lily-guile.cc (ly_chain_assoc): remove.
11404
11405         * lily/general-scheme.cc (LY_DEFINE): export ly:chain_assoc_get
11406         (LY_DEFINE): recurse, iso. calling ly_chain_assoc.
11407
11408 2005-04-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11409
11410         * lily/beaming-info.cc: remove infinity_i
11411
11412         * scripts/abc2ly.py (out_filename): fix thinko with \version.
11413
11414 2005-04-26  Graham Percival  <gperlist@shaw.ca>
11415
11416         * Documentation/user/basic-notation.itely,
11417         instrument-notation.itely, advanced-notation.itely,
11418         changing-defaults.itely: minor fixes.  Added docs
11419         for colors to advanced-notation.itely.
11420
11421         * Documentation/user/advanced-notation.itely: fixed compile
11422         problem and added Bernard's x11-color doc patch.
11423
11424 2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
11425
11426         * scm/output-ps.scm (grob-cause): Yet another fix, hope it's
11427         alright this time round.
11428
11429 2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11430
11431         * Documentation/topdocs/INSTALL.texi (Top): idem.
11432
11433         * Documentation/topdocs/README.texi (Top): remove clean-fonts refs.
11434
11435         * VERSION (MAJOR_VERSION): release 2.5.21
11436
11437         * scm/output-ps.scm (grob-cause): bugfix.
11438
11439 2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
11440
11441         * cygwin/*: Update.
11442
11443         * cygwin/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Remove profile
11444         stuff.
11445
11446         * scm/output-ps.scm (grob-cause): Bugfix.
11447
11448         * scm/lily.scm (ly:load): Remove x11-color.
11449
11450         * stepmake/aclocal.m4 (STEPMAKE_GET_EXECUTABLE): Bugfix: do not
11451         quote executable, fixes getting version from program --with
11452         --options.
11453         (STEPMAKE_KPATHSEA): Bugfix for Cygwin cross building: use
11454         $ac_exeect.
11455
11456         * Documentation/user/GNUmakefile: Only build music-glossary with
11457         rendered lilypond snippets during web.
11458
11459 2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11460
11461         * po/de.po: update.
11462
11463         * lily/GNUmakefile (OUT_DIST_FILES): don't dist lexer.cc
11464
11465 2005-04-22  Laura Conrad <lconrad@laymusic.org>
11466  
11467         * scripts/abc2ly:
11468         second title line append with punctuation dash character;
11469         encode abc2ly python strings in utf-8
11470        
11471 2005-04-21  Laura Conrad <lconrad@laymusic.org>
11472
11473         * scripts/abc2ly fix chords (again)
11474  
11475 2005-04-22  Bernard Hurley  <bernard@fong-hurley.org.uk>
11476
11477         * scm/x11-color.scm: new file
11478         All x11 color names can be accessed with:
11479         #(x11-color 'ColorName),
11480         #(x11-color "ColorName") or:
11481         #(x11-color "color name")
11482         If the x11 color name is not recognised then it defaults
11483         to black
11484
11485         * scm/lily.scm: amended to call scm/x11-color.scm
11486
11487 2005-04-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11488
11489         * Documentation/user/invoking.itely (Reporting bugs): comment out
11490         reference to online PNG bug repository.
11491
11492 2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
11493
11494         * lily/translator-scheme.cc (ly:translator-property): Remove.
11495         Update callers.
11496
11497         * lily/context-scheme.cc (ly:context-now): Move from translator.
11498         Update callers.
11499
11500 2005-04-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11501
11502         * input/regression/grid-lines.ly (skips): refine example.
11503
11504         * scm/define-context-properties.scm
11505         (all-user-translation-properties): doc autoBeamCheck
11506
11507         * input/regression/grid-lines.ly (Module): new file.
11508
11509         * lily/grid-point-engraver.cc (Module): new file.
11510
11511         * lily/grid-line.cc (Module): new file.
11512
11513         * lily/grid-line-span-engraver.cc (Module): new file.
11514
11515         * lily/grid-line-interface.cc (Module): new file.
11516
11517 2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
11518
11519         * scm/auto-beam.scm (revert-property-setting): Bugfixes: add
11520         missing parameter, actualy cdr through list.  Actually return a
11521         list with ENTRY removed (was '()).
11522
11523         * scripts/convert-ly.py: Update.  Print warning if file cannot be
11524         opened.
11525         (do_conversion): Fix printing of continuation comma.
11526
11527         * Documentation/user/advanced-notation.itely (Beam formatting):
11528         Remove refbugs about compound time and mixed duration.
11529
11530         * scm/auto-beam.scm (default-auto-beam-settings): Write out all
11531         modulo moments explicitely.
11532
11533         * lily/moment.cc (operator %): New function.
11534
11535         * lily/moment-scheme.cc (ly:mod-moment): Wrap it.
11536
11537         * lily/translator-scheme.cc (ly:translator-now,
11538         ly:translator-property): New function.
11539
11540         * scm/auto-beam.scm (default-auto-beam-check): New function.
11541
11542         * lily/auto-beam-engraver.cc (test_moment): Use it.
11543
11544         * flower/rational.cc (operator %): Bugfix.
11545
11546 2005-04-21  Erik Sandberg  <ersa9195@student.uu.se>
11547
11548         * scripts/abc2ly: Bugfix
11549
11550 2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11551
11552         * python/fontextract.py (write_extracted_fonts): bugfix, too many
11553         %'s on EndFont comment.
11554
11555         * lily/ledger-line-spanner.cc: some more words of explanation.
11556
11557 2005-04-20  John Williams <williams@tni.com>  
11558         
11559         * scripts/lilypond-book.py: htmlquote bugfix.
11560         Allow snippets to be given distinct filenames.
11561         Allow the default alt text to be overridden.
11562
11563 2005-04-20  Erik Sandberg  <ersa9195@student.uu.se>
11564
11565         * ly/performer-init.ly: Bugfix
11566
11567         * THANKS: Added bughunters.
11568
11569 2005-04-20  Jan Nieuwenhuizen  <janneke@gnu.org>
11570
11571         * SConstruct (test_lib): Bump mftrace requirement to 1.1.9.
11572
11573         * lily/auto-beam-engraver.cc (test_moment): Test exact measure
11574         position (was: use modulo measure length).
11575
11576         * configure.in (no gui_b): Remove optional gtk+ requirement.
11577
11578 2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11579
11580         * Documentation/user/basic-notation.itely (Pitches): add
11581         LedgerLineSpanner.
11582
11583         * lily/dynamic-engraver.cc (process_music): set right bound to
11584         script if present. Else, do not set.
11585         (acknowledge_grob): only set right bound of finished spanner to
11586         note column if no other bound is set.
11587
11588         * python/lilylib.py (make_ps_images): switch back to png16m.
11589         
11590 2005-04-19  Jan Nieuwenhuizen  <janneke@gnu.org>
11591
11592         * scripts/lilypond-book.py (write_if_updated): Bugfix for not
11593         writing up to date file.  Add dvips usage suggestion.
11594
11595         * scripts/convert-ly.py: Fix error message.
11596         Print usage if no files on command line.
11597         (usage): Add example usage.
11598
11599         * input/test/compound-time.ly: New file.
11600
11601         * input/test/circle.ly: New file.
11602
11603         * Documentation/topdocs/NEWS.tely: Use them.
11604
11605         * input/test/boxed-stencil.ly: Remove \score.
11606
11607         * buildscripts/mf-to-table.py (base): Add .log dependency.
11608
11609         * mf/GNUmakefile: Add PFAemmentaler and PFAaybabtu dependencies on
11610         pfa's.  Add .log dependency
11611
11612         * scm/define-markup-commands.scm (lower): New command.
11613
11614         * elisp/lilypond-mode.el (LilyPond-pdf-command): New command,
11615         make it default.
11616
11617 2005-04-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11618
11619         * lily/dynamic-engraver.cc (acknowledge_grob): add note-column
11620         also to finished cresc as right bound. This fixes:
11621         skip-string-decresc.ly
11622
11623         * lily/slur-scoring.cc (get_bound_info): robustness: substitute
11624         relative_coordinate if extent is empty.
11625
11626         * lily/stem.cc (width_callback): determine correct extent if flag
11627         is not there. This fixes slur-no-flag.ly
11628
11629         * lily/grace-engraver.cc (consider_change_grace_settings): new
11630         function.
11631         (initialize): also consider_change_grace_settings() on
11632         initialization. Fixes large grace notes at start of score.
11633
11634         * lily/break-align-interface.cc (do_alignment): don't translate if
11635         total_extent is empty.
11636
11637         * buildscripts/lilypond-{login,profile}.sh (Module): remove file.
11638
11639 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11640
11641         * scm/output-ps.scm (grob-cause): don't add cwd if path starts
11642         with slash.
11643
11644 2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
11645
11646         * stepmake/aclocal.m4: Remove tfm_path.
11647
11648 2005-04-18  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11649
11650         * scm/music-functions.scm (markup-expression->make-markup): fix
11651         bug with cons arguments of markup commands.
11652         (music->make-music): fix music expression property list building
11653
11654 2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
11655
11656         * aclocal.m4: Massage package names.
11657
11658         * SCons updates.
11659
11660 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11661
11662         * VERSION (PACKAGE_NAME): release 2.5.20
11663
11664         * lily/stem.cc (calc_stem_info): add minimum Y extent of
11665         stem-tremolo.  Fixes: bugs/tremolo-stem-length-beamed
11666
11667         * lily/percent-repeat-engraver.cc (try_music): add measure before
11668         next_moment to future processing moment. Fixes:
11669         percent-repeat-mm-rest.ly
11670         (process_music): don't add moment for 2nd time.
11671
11672         * input/regression/repeat-percent.ly: add mmrests as extra test.
11673
11674         * lily/axis-group-engraver.cc (acknowledge_grob): read
11675         keepAliveInterfaces to decide what to kill.
11676
11677         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add
11678         percent-repeat-interface to keepAliveInterfaces. This fixes
11679         percent-repeat-harakiri.
11680
11681 2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
11682
11683         * SCons updates.
11684
11685 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11686
11687         * config.make.in (TTFTOOL_ENDIAN): rm TFM_PATH
11688
11689         * aclocal.m4: remove --enable-tfm-path configure option
11690
11691         * input/test/ancient-font.ly (lowerStaff): clef name errors.
11692
11693         * scm/backend-library.scm (postscript->png): newline after
11694         finishing command.
11695
11696         * lily/paper-score-scheme.cc (LY_DEFINE): new file.
11697         (LY_DEFINE): ly:paper-score-paper-systems: new function 
11698
11699         * lily/score-scheme.cc (LY_DEFINE): require music argument. 
11700
11701         * lily/score.cc (default_rendering): use Music_output too.
11702
11703         * input/test/chord-names-languages.ly (Module): rename file.
11704
11705         * lily/text-spanner.cc: add bound-padding.
11706
11707         * lily/paper-book.cc (systems): accept Paper_score
11708         iso. Paper_system vector. 
11709
11710         * input/regression/line-arrows.ly: new file.
11711
11712         * lily/paper-score.cc (process): run get_paper_systems() only once.
11713
11714         * lily/line-spanner.cc (line_stencil): add arrows.
11715
11716 2005-04-18  Jonatan Liljedahl  <lijon@kymatica.com>
11717
11718         * lily/line-interface.cc (make_arrow): new function. 
11719         (arrows): idem.
11720
11721 2005-04-18  Mathieu Giraud  <magiraud@free.fr>
11722
11723         * input/test/chord-names-german.ly: update for italian/french
11724         chords.
11725         
11726         * Documentation/user/instrument-notation.itely (Printing chord
11727         names): update.
11728
11729 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11730
11731         * lily/include/paper-score.hh (class Paper_score): remove unused
11732         prototypes.
11733
11734         * lily/book.cc (process): add -COUNT to midi output.
11735
11736         * lily/score.cc (book_rendering): remove outname argument
11737         (book_rendering): return list of Music_outputs. 
11738
11739         * lily/global-context-scheme.cc (LY_DEFINE): remove outname argument.
11740
11741         * lily/book.cc (process): loop over Music_outputs returned from
11742         Score::book_rendering().
11743
11744         * lily/*.cc (width_callback): remove spurious "unused" warnings
11745         for assert (axis==[XY]_AXIS); 
11746
11747         * lily/include/music-output.hh (class Music_output): smobify class.
11748
11749         * lily/include/paper-score.hh (class Paper_score): make members
11750         private.
11751
11752         * lily/performance.cc (process): return #f iso. #<undefined>. This
11753         prevents #<undefined> leaking into GUILE-userspace.
11754
11755 2005-04-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11756
11757         * config.hh.in: remove HAVE_PANGO_FC_FONT_MAP_ADD_DECODER_FIND_FUNC.
11758
11759 2005-04-17  Mathieu Giraud  <magiraud@free.fr>
11760
11761         * scm/chord-name.scm : support for italian and french
11762         chords names.
11763
11764         * scm/chord-ignatzek-names.scm (ignatzek-chord-names): add
11765         a space defined by chordPrefixSpacer when the root name is
11766         direclty followed by a prefix.
11767
11768         * ly/engraver-init.ly : chordPrefixSpacer       
11769         * scm/define-context-properties.scm : chordPrefixSpacer
11770         * ly/property-init.ly : italianChords, frenchChords 
11771
11772 2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
11773
11774         * mf/feta-din.mf: Remove.
11775
11776         * mf/GNUmakefile (fontdir): Bugfix.
11777
11778         * mf/SConstruct: Some updates.
11779
11780         * SConstruct: Require pkg-config.
11781         (test_program): Bugfix for double digit version compares, use
11782         integer (not string-) compare.
11783         Optionally require gs 8.14.
11784
11785         * stepmake/aclocal.m4 (STEPMAKE_PANGO_FT2): Define HAVE_PANGO16 too.
11786
11787         * lily/*: s/ifdef HAVE_*/if have/.
11788
11789         * SConstruct (test_lib): New function.  Update pkg-config and some
11790         other requirements.
11791
11792         * configure.in: Require pkg-config.  Enforce REQUIRE and version for
11793         freetype, pangof2t.
11794
11795 2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
11796
11797         * po/lilypond.pot, ...: Update using bison-CVS.
11798
11799         * python/lilylib.py (make_ps_images): Fixo.
11800
11801 2005-04-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11802
11803         * python/lilylib.py (make_ps_images): typo.
11804
11805         * configure.in (gui_b): make bison optional.
11806
11807         * lily/GNUmakefile (OUT_DIST_FILES): dist parser and lexer.
11808
11809 2005-04-16  Bernard Hurley  <bernard@fong-hurley.org.uk>
11810
11811         * framework-eps.scm: code added so that a macro \betweenLilyPondSystem
11812         with one parameter can be defined in a LaTeX file when processed
11813         by lilypond-book this will be evaluated between the systems of
11814         a multi-system score. The parameter is the number of systems processed.
11815
11816 2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
11817
11818         * python/lilylib.py (make_ps_images): Escape newline.
11819
11820         * Documentation/user/music-glossary.tely: Run
11821         texinfo-all-menus-update.
11822
11823 2005-04-14  Jan Nieuwenhuizen  <janneke@gnu.org>
11824
11825         * scm/lily-library.scm (old-relative-not-used-message)
11826         (version-not-seen-message): Add input-file-name-location to message.
11827
11828         * lily/parser.yy (lilypond): Add token aliases.
11829
11830         * Documentation/user/music-glossary.tely (accidental): Fixes.  Do
11831         not confuse with alteration.
11832         (alteration): Add.
11833
11834 2005-04-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11835
11836         * python/lilylib.py (make_ps_images): use -dEPSCrop
11837
11838         * VERSION (PACKAGE_NAME): release 2.5.19 
11839
11840         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
11841         only put xrefs in info documentation.
11842
11843         * make/ly-rules.make ($(outdir)/%.html.omf): transplant .dvi ->
11844         .pdf rule to tex-rules.make.
11845
11846         * scm/framework-eps.scm (dump-stencils-as-EPSes): remove comments
11847         from -systems.* output.
11848
11849         * stepmake/stepmake/tex-rules.make ($(outdir)/%.pdf): make PDF
11850         directly, remove -$(PAGESIZE) target.
11851
11852         * input/test/embedded-postscript.ly: update.
11853
11854 2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11855
11856         * make/lysdoc-targets.make (local-WWW): remove ps.gz target.
11857
11858         * Documentation/user/changing-defaults.itely (Font selection):
11859         document font-name.
11860
11861         * input/regression/font-name.ly: show Pango fonts for
11862         font-name. Update example. 
11863
11864         * lily/pango-select.cc (properties_to_pango_description): don't
11865         convert symbol font-size to number, but use to lookup.
11866
11867         * python/fontextract.py (write_extracted_fonts): add VMusage 0.
11868
11869         * scm/framework-ps.scm (write-preamble): use (NAME . CONTENTS) and
11870         (NAME . FILE-NAME) tuples for font descriptions. 
11871         (write-preamble): display BeginFont DSC comments.
11872
11873         * python/fontextract.py (write_extracted_fonts): new file. Extract
11874         font resources from a PS file.
11875
11876         * scripts/lilypond-book.py (option_definitions): --psfonts option.
11877         (Compile_error.process_include): do_file returns chunks.
11878
11879         * make/ly-vars.make (DVIPS_FLAGS): don't load .map file.
11880
11881         * make/lysdoc-targets.make: .texi is .PRECIOUS
11882
11883         * scripts/lilypond-book.py (write_if_updated): new function.
11884
11885 2005-04-13  Jan Nieuwenhuizen  <janneke@gnu.org>
11886
11887         * scm/framework-eps.scm (dump-stencils-as-EPSes): Massage messages.
11888
11889 2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11890
11891         * scm/framework-eps.scm (dump-stencils-as-EPSes): no massages.
11892
11893         * input/regression/markup-syntax.ly: remove \score.
11894
11895         * scm/define-markup-commands.scm (draw-circle): add fill argument
11896
11897         * scm/stencil.scm (make-circle-stencil): add fill argument
11898
11899         * ps/music-drawing-routines.ps: add fill argument.
11900
11901         * ly/performer-init.ly: add CueVoice to MIDI too.
11902
11903         * ps/music-drawing-routines.ps: new routine BeginEPSF /
11904         EndEPSF.
11905
11906         * input/regression/markup-eps.ly: new file.
11907
11908         * scm/framework-ps.scm (write-preamble): change order: vars should
11909         be inited before procedures.
11910
11911         * scm/output-ps.scm (glyph-string): break lines. 255 chars is max
11912         for EPS files.
11913
11914         * scm/define-markup-commands.scm (epsfile): add epsfile command.
11915
11916 2005-04-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11917
11918         * configure.in (gui_b): add check for ghostscript 8.15
11919
11920 2005-04-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11921
11922         * lily/hairpin.cc (after_line_breaking): suicide the hairpinlet at
11923         start of line. Fixes cresc-after-newline.ly
11924
11925         * lily/source-file.cc (file_line_column_string): use get_column().
11926
11927 2005-04-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11928
11929         * lily/source-file.cc (get_column): utf-8 support for column numbers.
11930
11931 2005-04-12  Jan Nieuwenhuizen  <janneke@gnu.org>
11932
11933         * lily/*: use message () iso progress_indication () for messages.
11934         Revise/uniformise user messages.
11935
11936         * flower/warn.cc (progress_indication): New function.
11937         (message): Use it.  Fixes newline problems.
11938
11939         * config.make.in (webdir): Sort out install dirs.
11940
11941         * stepmake/stepmake/generic-targets.make (final-install): Bugfix.
11942
11943         * python/lilylib.py (command_name): Bugfix.
11944         (make_ps_images):
11945
11946 2005-04-11  Pedro Kroger  <kroeger@pedrokroeger.net>
11947
11948         * lily/main.cc: --help says what types of backends are availabe
11949
11950 2005-04-11  Jan Nieuwenhuizen  <janneke@gnu.org>
11951
11952         Fix ./VERSION dependency, and without need to reconfigure.
11953
11954         * lily/main.cc (setup_paths): Update.
11955
11956         * stepmake/bin/make-version.py (defs): Add TOPLEVEL_VERSION define..
11957
11958         * config.hh.in (LILYPOND_DATADIR): Remove TOPLEVEL_VERSION.
11959
11960         * scripts/convert-ly.py (\markup): Fix too simplistic regexps.
11961         Add \line for some simplistic cases.
11962
11963         * lily/GNUmakefile (main.o): Add missing dependency on version.hh.
11964
11965 2005-04-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11966
11967         * elisp/lilypond-mode.el (LilyPond-lilypond-command): command used
11968         to compile LY files (useful for adding eg. "-I" args)
11969         (LilyPond-command-alist): use `LilyPond-lilypond-command'. Add a
11970         2Gnome command for gnome backend.
11971         (LilyPond-command-formatgnome): call the 2Gnome command. key
11972         binding: C-c C-g
11973
11974 2005-04-10  Jan Nieuwenhuizen  <janneke@gnu.org>
11975
11976         * Documentation/user/GNUmakefile (lilypond/index.html): Bugfix:
11977         depend on all PNG images.
11978
11979 2005-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
11980
11981         * GNUmakefile.in: Bugfix: also link .map files.
11982
11983 2005-04-09  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11984
11985         * scm/music-functions.scm (music->make-music): generate 
11986         a (make-music ...) sexpr from a music expression.
11987         (display-scheme-music): use guile pretty printer to display the
11988         make-music sexpr.
11989
11990 2005-04-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11991
11992         * ly/engraver-init.ly: reindent.
11993         Add CueVoice.
11994
11995         * scm/music-functions.scm (music-pretty-string): handle moments
11996         too.
11997         (music-pretty-string): only print non-empty lists.
11998         (cue-substitute): create CueVoice context, which has smaller type.
11999
12000         * lily/moment-scheme.cc (LY_DEFINE): new methods
12001         ly:moment-grace-{numerator,denominator}
12002
12003         * lily/context-handle.cc: remove quit() method. 
12004
12005         * lily/font-config.cc (init_fontconfig): be verbose about font path.
12006         (init_fontconfig): success is 0, not !0
12007
12008 2005-04-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12009
12010         * mf/feta-nummer-code.mf (code): add plus glyph.
12011
12012         * lily/tie.cc (print): idem.
12013
12014         * lily/slur.cc (print): don't use thickness property for
12015         slur shape-thickness.
12016
12017         * lily/stencil-scheme.cc (LY_DEFINE): don't reverse the order
12018         while adding stencils.
12019
12020         * scm/define-markup-commands.scm (with-color): with-color markup
12021         command.
12022         (whiteout): new markup command 
12023         (filled-box): new markup command
12024
12025 2005-04-07  Jan Nieuwenhuizen  <janneke@gnu.org>
12026
12027         * Documentation/topdocs/NEWS.tely (Top): Make tex-able.  Handy
12028         test for PDF docs.
12029
12030         * mf/GNUmakefile (lilypond.map): Add PFAEmmentaler,
12031         PFAAybabtu-Regular.  Fixes feta font in PDFs.
12032         
12033         Notes for tetex-3.0 make web:
12034            psclean.map: s/uhv8a/uhvr8a/
12035            config.ps add:
12036                 p +psfonts_t1.map
12037                 p +psclean.map
12038                 p +typeface.map
12039
12040 2005-04-06  Nicolas Sceaux  <nicolas.sceaux@free.fr>
12041
12042         * scm/music-functions.scm (music-pretty-string): fix bug with
12043         string argument.
12044
12045 2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
12046
12047         * stepmake/bin/add-html-footer.py (i18n): Bugfix.
12048
12049 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12050
12051         * scripts/lilypond-book.py (Lilypond_snippet.__init__): 
12052         only process options if they're there.
12053         (write_file_map): add version-seen? to snippet-map.ly
12054
12055 2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
12056
12057         * scripts/lilypond-book.py (split_options): Bugfix.  Small code
12058         formatting cleanups.
12059
12060         * mf/GNUmakefile: Rewrite $addprefix, $addsuffix using % short-forms.
12061         Add PFAaybabtu.pfa dependency on aybabtu.subfonts.
12062
12063 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12064
12065         * scm/framework-ps.scm (ps-font-command): don't hash, just use
12066         name directly.
12067
12068         * lily/main.cc (setup_paths): either add mf/out to search path or 
12069         fonts/{otf,type1,etc}
12070         
12071         * lily/font-config.cc (init_fontconfig): either add mf/out to
12072         FontConfig or fonts/{otf,type1,etc}
12073
12074         * GNUmakefile.in: don't put mf/ link in share/ dir.
12075
12076         * lily/staff-spacing.cc: move same-direction-correction to
12077         note-spacing-interface
12078
12079         * scm/lily.scm (lilypond-main): use variable argument count for
12080         exception handler.
12081
12082         * lily/font-config.cc (init_fontconfig): add operator pacification
12083         message.
12084
12085         * mf/aybabtu.pe.in (i): generate PFAAybabtu.pfa
12086
12087         * buildscripts/gen-emmentaler-scripts.py (i): generate
12088         PFAEmmentaler as well.
12089
12090         * scm/framework-ps.scm (munge-lily-font-name): new function
12091         (write-preamble): hack: insert PFA equivalent of CFF into
12092         .PS. This makes LilyPond output printable on normal PS printers
12093         again.
12094
12095         * buildscripts/gen-emmentaler-scripts.py (i): generate
12096         PFAEmmentaler.pfa aswell.
12097
12098 2005-04-06  John Williams <williams@tni.com>  
12099         
12100         * scripts/lilypond-book.py: refactor the compose_ly procedure.
12101         
12102 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12103
12104         * scm/page-layout.scm (default-page-make-stencil): always combine
12105         the header stencil, even if empty. This prevents the body text to
12106         reach up to the margins.
12107
12108         * po/rw.po (Module): new file, for Kinyarwanda.
12109
12110         * input/test/spacing-optical.ly (Module): new file.
12111
12112         * lily/staff-spacing.cc: add same-direction-correction
12113
12114 2005-04-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12115
12116         * Documentation/user/introduction.itely (Engraving): Comment-out
12117         non-existent file.
12118
12119 2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12120
12121         * scm/define-grob-properties.scm (all-user-grob-properties): add
12122         same-direction-correction
12123
12124         * VERSION: release 2.5.18
12125
12126 2005-04-05  Jan Nieuwenhuizen  <janneke@gnu.org>
12127
12128         * lily/grob.cc (mark_smob): Check pscore->layout_ before
12129         dereferencing.  Fixes make web.
12130
12131         * lily/midi-stream.cc: Handle unwritable midi file.  Include
12132         errno.h.
12133
12134         * Documentation/user/: Fix links.
12135
12136 2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12137
12138         * lily/text-interface.cc (Module): rename from text-item.cc
12139
12140         * input/regression/apply-output.ly (texidoc): function naming fix.
12141
12142         * lily/time-signature-performer.cc (derived_mark): new function.
12143
12144         * lily/lily-parser-scheme.cc:  print mapped file name for progress
12145
12146         * scripts/lilypond-book.py (find_linestarts): new function.
12147         (find_toplevel_snippets): keep track of line numbers.
12148
12149         * lily/key-performer.cc (try_music): remove FIXME warning, gobble
12150         all key changes.
12151
12152         * ly/declarations-init.ly (partCombineListener): use
12153         ignoreBarChecks. Fixes: warn-partcombine-barcheck.ly
12154
12155         * lily/bar-check-iterator.cc (process): ignoreBarChecks property.
12156
12157 2005-04-04  Jan Nieuwenhuizen  <janneke@gnu.org>
12158
12159         * lily/text-item.cc: Fix link.
12160
12161         * Documentation/user/changing-defaults.itely (Changing defaults):
12162         Fix programs reference links.
12163
12164         * Documentation/user/music-glossary.tely: Convert to utf-8.
12165
12166 2005-04-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12167
12168         * make/lilypond-vars.make: remove TEXMF from variables.
12169         remove DEB_BUILD pk font variables.
12170         remove GUILE_LOAD_PATH
12171         remove TeX memory vars.
12172
12173 2005-04-04  Werner Lemberg  <wl@gnu.org>
12174
12175         * lilypond/scm-option.cc (ly_option_usage): Add final newline.
12176
12177 2005-04-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12178
12179         * ps/lilyponddefs.ps: remove reencode-font
12180
12181         * lily/simple-spacer.cc (add_columns): also compare
12182         directly. Column rank doesn't distinguish between broken and
12183         unbroken columns. This fixes large spaces before time sig changes.
12184
12185         * Documentation/user/point-and-click.itely: document ly:set-option.
12186
12187         * lily/grob.cc (get_uncached_stencil): only set grob-cause if
12188         point_and_click_global is set.
12189
12190         * lily/scm-option.cc (LY_DEFINE): add point-and-click
12191         ly:set-option argument.
12192
12193 2005-04-03  Jan Nieuwenhuizen  <janneke@gnu.org>
12194
12195         * GNUmakefile.in: Include symlinks in webball.
12196
12197         * Documentation/user/GNUmakefile (source-links): Add symlinks to
12198         source dir for split and non-split manuals.
12199
12200         * Documentation/user/*y: Fix @uref/@inputfile links for
12201         split/non-split HTML documents.
12202
12203         * Documentation/user/GNUmakefile (local-WWW): Do not generate
12204         .ps.gz.
12205         
12206 2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
12207
12208         * GNUmakefile.in: Add newline.
12209
12210 2005-04-01  Erlend Aasland  <erlenda@gmail.com>
12211
12212         * tex/lilyponddefs.tex: use color instead of xcolor
12213         * scm/output-tex.scm: minor editing
12214
12215 2005-04-02  Nicolas Sceaux  <nicolas.sceaux@free.fr>
12216
12217         * scm/music-functions.scm (display-scheme-music): pretty printer
12218         for music expressions.
12219
12220 2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
12221
12222         * buildscripts/install-info-html.sh (index_file): Fix link.
12223
12224 2005-04-01  Jan Nieuwenhuizen  <janneke@gnu.org>
12225
12226         * input/test/dynamic-extra.ly (piuf): Use utf-8 iso TeX accent.
12227
12228         * Documentation/index.html.in: Add size estimates with some big pages.
12229
12230         * Documentation/user/tutorial.itely (Running LilyPond for the
12231         first time): Add/replace some @rglos links.  TODO: add more
12232         @rglos links in tutorial, test non-intrusiveness (.css).
12233
12234         * stepmake/bin/add-html-footer.py (do_file): Remove info's
12235         annoying's indication of referencing external document.
12236
12237         * Documentation/user/GNUmakefile: Split version of glossary too.
12238         * Documentation/user/macros.itexi (@rglos): Have makeinfo produce
12239         links, not only for html.
12240
12241         * Documentation/user/introduction.itely: Fix some links for other
12242         than html, do not use `here' as link name.
12243
12244 2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
12245
12246         * scm/documentation-generate.scm (string-append): Fix @usermanref,
12247         @glossaryref.
12248
12249 2005-03-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12250
12251         * scm/page-layout.scm (default-page-make-stencil): only add header
12252         if existing and not empty. Fixes spurious programming error.
12253
12254         * lily/span-bar.cc (print): don't make rounded edges for spanbars.
12255
12256 2005-03-31  Erlend Aasland  <erlenda@gmail.com>
12257
12258         * scm/output-tex.scm: implement {re,}setcolor
12259         * tex/lilyponddefs.tex: use color package
12260
12261 2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
12262
12263         * GNUmakefile.in (local-WWW-post): Restore .htaccess and .html
12264         additions to website.
12265
12266         * Documentation/user/lilypond.tely: Remove reference to ps.gz.
12267
12268         * Documentation/user/macros.itexi: Fix @usermanref html links in
12269         split documents: use @inforef.
12270
12271 2005-03-30  Graham Percival  <gperlist@shaw.ca>
12272
12273         * Documentation/user/programming-interface.itely: minor fix.
12274
12275         * Documentation/user/advanced-notation.itely: added info to
12276         Metronome markings.
12277
12278 2005-03-30  Jan Nieuwenhuizen  <janneke@gnu.org>
12279
12280         * scm/output-lib.scm (make-stencil-boxer): Junk code duplication,
12281         use box-stencil.  Remove y-padding argument.
12282         (make-stencil-circler): New function.
12283
12284         * buildscripts/lilypond-words.py (F): 
12285         * elisp/SConscript (a): 
12286         * elisp/GNUmakefile (LILYPOND_WORDS_DEPENDS):
12287         * vim/SConscript (a): 
12288         * vim/GNUmakefile (LILYPOND_WORDS_DEPENDS): Update.
12289
12290         * lily/general-scheme.cc: Build fix.
12291
12292         * scm/markup.scm:
12293         * input/regression/markup-scheme.ly: 
12294         * input/regression/markup-syntax.ly: Drop 'new-' from name.
12295
12296         * scm/stencil.scm (make-circle-stencil): New function.
12297
12298         * scm/define-markup-commands.scm (draw-circle): Use it.  New
12299         name (was cicle).  Update callers.
12300         (circle): New markup command, similar to box.
12301
12302         * scm/stencil.scm (circle-stencil): New function.
12303
12304 2005-03-29  David Jedlinsky  <lilypond@ipnh.com>
12305
12306         * configure.in: Detect libutf8/wchar.h variant.
12307
12308         * stepmake/aclocal.m4: Modify shared size test.
12309
12310 2005-03-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12311
12312         * make/lilypond.fedora.spec.in (Group): remove texmf profile stuff.
12313
12314 2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12315
12316         * scripts/convert-ly.py (conv): add stencil-aligned-to! rule.
12317         
12318         * VERSION (PACKAGE_NAME):  release 2.5.17
12319
12320 2005-03-29  Jan Nieuwenhuizen  <janneke@gnu.org>
12321
12322         * scm/backend-library.scm (postscript->png): Fix comment and png
12323         message.
12324
12325         * GNUmakefile.in (link-tree): Fix locales.
12326
12327 2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12328
12329         * lily/stencil-scheme.cc (LY_DEFINE): change to
12330         ly:stencil-aligned-to, non mutating.
12331
12332         * scm/safe-lily.scm (lambda): remove ly:stencil-set-extent!
12333
12334         * lily/stencil-scheme.cc: remove ly:stencil-set-extent!
12335
12336         * lily/quote-iterator.cc (derived_mark): call
12337         Music_wrapper_iterator::derived_mark() too.
12338
12339         * lily/grace-engraver.cc (derived_mark): change signature, add
12340         const.
12341
12342 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12343
12344         * SConstruct (symlink): 
12345         * GNUmakefile.in (link-tree): Add scripts to prefix.
12346
12347         * lily/general-scheme.cc (ly:effective-prefix): New function.
12348
12349         * scm/backend-library.scm (postscript->png): Use it.
12350
12351 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12352
12353         * lily/paper-score.cc (process): don't delete grobs after
12354         producing stencils. 
12355
12356         * scm/part-combiner.scm (determine-split-list): switch off
12357         debugging info.
12358
12359         * scm/backend-library.scm (postscript->png): explicitly use ps2png.py
12360         if available.
12361
12362         * scm/define-context-properties.scm
12363         (all-user-translation-properties): add stringNumberOrientations.
12364
12365         * lily/new-fingering-engraver.cc (position_scripts): make generic,
12366         so fingering and string-numbers are separately controlled.
12367
12368 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12369
12370         * stepmake/aclocal.m4: Fix shared size test: add missing comma, do
12371         not use debugging.
12372
12373 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12374
12375         * GNUmakefile.in (local-WWW-post): remove UTF8 .htaccess.
12376
12377         * config.hh.in: add HAVE_FONTCONFIG.
12378
12379         * Documentation/user/instrument-notation.itely (String number
12380         indications): new node.
12381
12382         * input/regression/new-markup-syntax.ly (texidoc): add circle.
12383
12384         * lily/new-fingering-engraver.cc (add_string): new function. 
12385         (acknowledge_grob): accept string-number-event as well.
12386
12387         * scm/define-markup-commands.scm (circle): new markup command.
12388
12389         * scm/output-lib.scm (print-circled-text-callback): new function.
12390
12391         * lily/GNUmakefile: move ifeq after include stepmake.make.
12392
12393 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12394
12395         * config.make.in (HAVE_LIBKPATHSEA_SO):
12396         * stepmake/aclocal.m4: Also subst HAVE_LIBKPATHSEA_SO.
12397
12398         * lily/GNUmakefile (MODULE_LDFLAGS): Only if not HAVE_KPATHSEA_SO,
12399         add KPATHSEA_LIBS.
12400
12401         * debian/watch: 
12402         * debian/control: Update.
12403
12404 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12405
12406         * input/test/title-markup.ly (spaceTest): remove.
12407
12408         * input/test/embedded-tex.ly (Module): remove.
12409
12410         * input/test/music-box.ly: use 'name property, not ly:music-name.
12411
12412         * lily/GNUmakefile (MODULE_LDFLAGS): add KPATHSEA_LIBS.
12413
12414         * stepmake/aclocal.m4: STEPMAKE_FONTCONFIG: add.
12415
12416 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12417
12418         * Documentation/topdocs/INSTALL.texi (Top): Remove information
12419         about xdeltas.  Add information about CVS.
12420
12421         * scm/lily.scm (lilypond-main): Fix invocation of handler,
12422         gracefully handle failed files.
12423
12424         * lily/GNUmakefile (MODULE_LDFLAGS): Remove KPATHSEA_LIBS.
12425
12426         * Documentation/topdocs/INSTALL.texi (Top): Whitespace and other
12427         small fixes.
12428
12429         * scm/framework-tex.scm (convert-to-ps): Proper option spacing.
12430         No unnecessarily specific i18n messages.  Remove stray `1'.
12431
12432 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12433
12434         * buildscripts/lys-to-tely.py (strip_extension): add utf-8
12435         documentencoding
12436
12437         * scm/documentation-lib.scm (texi-file-head): set utf-8
12438         documentencoding.
12439
12440         * ly/chord-modifiers-init.ly (whiteTriangleMarkup): use the greek
12441         Delta, not the Symbol one. 
12442
12443         * mf/GNUmakefile ($(outdir)/lilypond.map): add -Regular to Aybabtu
12444         for the .map file.
12445
12446         * Documentation/topdocs/INSTALL.texi (Top): add running
12447         requirement as compilation requirement.
12448
12449 2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12450
12451         * buildscripts/mutopia-index.py (headertext): add h1 header and
12452         utf-8 charset meta field.
12453
12454         * input/GNUmakefile: prune example list.
12455
12456         * scm/framework-tex.scm (convert-to-ps): add -ofoo.ps to dvips
12457         options.
12458
12459         * lily/slur-scoring.cc (get_base_attachments): only look at stem
12460         extent for visible stems.
12461
12462         * lily/grob.cc (mark_smob): mark \layout block from Grob::mark_smob().
12463
12464 2005-03-27  Jan Nieuwenhuizen  <janneke@gnu.org>
12465
12466         * Documentation/topdocs/INSTALL.texi (Top): Updates.
12467
12468         * scripts/convert-ly.py: Python 2.2 compatibility (thanks Mats).
12469
12470 2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12471
12472         * lily/slur-scoring.cc (get_base_attachments): robustness. Don't
12473         pass inf/nan into slur scoring.
12474
12475         * ly/titling-init.ly (oddHeaderMarkup): don't show page no. on 1st
12476         page.
12477
12478         * scripts/abc2ly.py (dump_voices): use alphabet().
12479
12480 2005-03-27  Jeff Smith <whydoubt@yahoo.com>
12481         
12482         * mf/GNUmakefile (depth): use $(FONTFORGE). 
12483
12484 2005-03-27 Matthias Neeracher <neeracher@mac.com>
12485         
12486         * flower/include/virtual-methods.hh: simplify. Patch by
12487
12488 2005-03-25  John Williams <williams@tni.com>  
12489
12490         * scripts/lilypond-book.py (main): add png for HTML too, guess
12491         only if necessary. 
12492
12493 2005-03-25  Graham Percival  <gperlist@shaw.ca>
12494
12495         * Documentation/topdocs/INSTALL.texi: now recommends
12496         lexer-gcc-3.1.sh for gcc 3.1.1 or higher.
12497
12498         * Documentation/user/basic-notation.itely,
12499         Documentation/user/tutoria.itely: warn about
12500         only one (phrasing) slur at once.
12501
12502 2005-03-24  Pedro Kroger  <kroeger@pedrokroeger.net>
12503
12504         * ly/music-functions-init.ly (removeWithTag): fixed to return "music".
12505
12506 2005-03-23  Graham Percival  <gperlist@shaw.ca>
12507
12508         * Documentation/user/basic-notation.itely: fixed info about
12509         ending a (de)cresc.
12510
12511         * Documentation/user/lilypond-book.itely: fixed
12512         lilypond-book filter example and warned about not doing
12513         --filter and --process at the same time.
12514
12515 2005-03-23  Mats Bengtsson  <mabe@s3.kth.se>
12516
12517         * lily/parser.yy (bass_number),
12518         Documentation/user/instrument-notation.itely (Figured bass): 
12519         Add the possibility to use text markup in figured bass. 
12520
12521 2005-03-19  Graham Percival  <gperlist@shaw.ca>
12522
12523         * Documentation/user/global.itely: added info about naming
12524         identifiers and breakbefore.
12525
12526         * Documentation/user/invoking.itely: added info about batch
12527         processing files with convert-ly, removed references to TeX
12528         in the jail section.
12529
12530         * Documentation/user/examples.itely: possibly fixed piano
12531         dynamics.
12532
12533         * Documentation/user/advanced-notation.itely: added info
12534         about removing other types of Staff.
12535
12536         * Documentation/user/instrument-notation.itely: possibly
12537         fixed piano staff line switch.
12538
12539         * Documentation/user/changing-defaults.itely: added info
12540         about using normal font in titles.
12541
12542 2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12543
12544         * VERSION (PATCH_LEVEL): release 2.5.16
12545
12546         * make/ly-vars.make (DVIPS_FLAGS): include lilypond.map path
12547         explicitly.
12548
12549 2005-03-18  Jan Nieuwenhuizen  <janneke@gnu.org>
12550
12551         * scm/framework-tex.scm (convert-to-dvi): Barf if NAME contains
12552         whitespace.
12553
12554         * python/lilylib.py (make_ps_images):
12555         * scm/backend-library.scm (postscript->pdf, postscript->png):
12556         Quote file name.  Use format rather than string-append juggling.
12557
12558 2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12559
12560         * python/lilylib.py (make_ps_images): add x to -g argument. 
12561
12562         * lily/key-performer.cc (create_audio_elements): don't use
12563         scm_eval_string. Check for minor 3rd directly.
12564   
12565         * input/mutopia/J.S.Bach/baerenreiter-sarabande.ly
12566         (sarabandeCelloGlobal): key is D minor, not F major.
12567
12568 2005-03-17  Jan Nieuwenhuizen  <janneke@gnu.org>
12569
12570         Fix truncated --png output (Peter Danenberg).
12571         
12572         * python/lilylib.py (make_ps_images):
12573         * scripts/ps2png.py (copyright): Grok --papersize option.
12574
12575         * scm/backend-library.scm (postscript->png): Add parameter
12576         PAPERSIZE.  Update callers.
12577
12578         * scm/output-gnome.scm (music-font?): Bugfix: use "Emmentaler".
12579         Fixes symbol placement.
12580
12581         * lily/spanner.cc: 
12582         * lily/stencil.cc: Use "libc-extension.hh" (WAS:
12583         <libc-extension.hh>).
12584
12585 2005-03-16  Jan Nieuwenhuizen  <janneke@gnu.org>
12586
12587         * Nitpick run.
12588
12589         * buildscripts/fixcc.py: Update.
12590
12591         Builddir run fixes.
12592
12593         * HACKING (datadir): Add VERSION.
12594
12595         * GNUmakefile.in (linktree): Bugfix: outconfdirs are one dir
12596         higher up.
12597
12598 2005-03-15  Werner Lemberg  <wl@gnu.org>
12599
12600         * mf/feta-klef.mf (draw_gclef): Move z10' slightly so that the
12601         diagonal stem doesn't become thinner.
12602
12603 2005-03-15  Jan Nieuwenhuizen  <janneke@gnu.org>
12604
12605         * buildscripts/fixcc.py: Fixes (Werner).
12606
12607 2005-03-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12608
12609         * mf/GNUmakefile ($(outdir)/lilypond.map): capitalize
12610         Emmentaler/Aybabtu.
12611
12612         * GNUmakefile.in: fix lilypond-words path.
12613
12614         * po/tr.po: update to 2.3.21
12615
12616         * lily/new-fingering-engraver.cc (position_scripts): take priority
12617         from head position.
12618
12619         * input/regression/finger-chords-order.ly (texidoc): new file.
12620
12621 2005-03-14  Jan Nieuwenhuizen  <janneke@gnu.org>
12622
12623         * make/ly-rules.make: 
12624         * stepmake/aclocal.m4: 
12625         * Documentation/user/GNUmakefile: Remove old makeinfo compatibility.
12626
12627         * buildscripts/fixcc.py (rules): Leave space after operator.
12628
12629 2005-03-14  Werner Lemberg  <wl@gnu.org>
12630
12631         * mf/feta-klef.mf (draw_gclef): Replace `simple_serif' for
12632         top of the glyph with smooth curve.
12633
12634 2005-03-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12635
12636         * Documentation/user/global.itely (Page layout): remove
12637         printpagenumber.
12638
12639 2005-03-13  Jürgen Reuter  <reuter@ipd.uka.de>
12640
12641         * input/regression/mensural-ligatures.ly: new file (with examples
12642         compiled by Pal Benko).
12643
12644         * Documentation/user/instrument-notation.itely: Bugfix: yet some
12645         other "custodes.*-u0" -> "custodes.*.u0" renaming victims in
12646         musicglyph access.  Many small beautifications in ancient
12647         examples.
12648
12649         * input/test/divisiones.ly: fixed indentation; small
12650         beautifications
12651
12652         * ly/engraver-init.ly: added FIXME comment
12653
12654         * scripts/lilypond-book.py,
12655         Documentation/user/lilypond-book.itely: added music fragment
12656         option "packed" to lilypond-book
12657
12658         * Documentation/user/instrument-notation.itely: Bugfix: added
12659         missing LedgerLineSpanner color setting in several places.  Added
12660         music fragment option "packed" to VaticanaContext example.
12661
12662 2005-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12663
12664         * scm/define-grobs.scm (all-grob-descriptions): switch off
12665         Hyphen_spanner::set_spacing_rods 
12666
12667         * lily/lyric-hyphen.cc (print): add padding between syllable and
12668         hyphen.
12669         (print): shorten hyphen in tight situations (determine using
12670         minimum-length)
12671
12672         * scm/paper.scm (layout-set-staff-size): increase blotdiameter to
12673         0.4pt.
12674
12675 2005-03-13  Jan Nieuwenhuizen  <janneke@gnu.org>
12676
12677         * ly/titling-init.ly (bookTitleMarkup): Refinements.
12678
12679         * input/regression/page-breaks.ly (paper): Set not raggedlastbottom,
12680         header/footer markings for regression-test.
12681
12682         * scm/backend-library.scm (output-scopes, header-to-file): Move
12683         from framework-tex.scm.
12684
12685         * scm/framework-ps.scm (output-framework)
12686         (output-preview-framework):
12687         * scm/framework-eps.scm (output-classic-framework)
12688         (output-framework): Use it.  Fixes collated files.
12689
12690 2005-03-12  Jan Nieuwenhuizen  <janneke@gnu.org>
12691
12692         * input/sakura-sakura.ly: 
12693         * input/xiao-haizi-guai-guai.ly: Add from Debian package (Anthony).
12694
12695         * buildscripts/guile-gnome.sh: Update.
12696
12697         * mf/GNUmakefile (aybabtu.otf): Add dependency on .pe.
12698
12699         * mf/aybabtu.pe.in: Capitalize Aybabtu.
12700
12701 2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12702
12703         * lily/separating-group-spanner.cc (find_rods): oops. Fix the real
12704         culprit: always exit the loop if we find a rod, even if it has
12705         distance < 0. 
12706
12707         * lily/ledger-line-spanner.cc (set_spacing_rods): rewrite to O(n)
12708         algorithm.
12709
12710         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
12711         $(outdir)/%.svg $(outdir)/%.pfa): add --simplify.
12712
12713         * scm/output-svg.scm (dashed-line): new  function body.
12714         
12715         * GNUmakefile.in: create .htaccess.
12716
12717 2005-03-11  Jan Nieuwenhuizen  <janneke@gnu.org>
12718
12719         * Documentation/topdocs/NEWS.tely (Top): Fix text example.
12720
12721 2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12722
12723         * VERSION (PACKAGE_NAME): release 2.5.15
12724
12725         * scm/output-{pdf,pdftex,sketch}.scm (Module): remove bitrotted files.
12726
12727         * scm/framework-svg.scm (output-framework): put scaling in
12728         document header. Apply scaling only once.
12729         (output-framework): dump page size in px, not mm. 
12730
12731         * scm/lily-library.scm (modified-font-metric-font-scaling): rename
12732         from font-size.
12733
12734         * lily/paper-outputter-scheme.cc (LY_DEFINE):
12735         ly:outputter-output-scheme, new function.
12736
12737         * scm/output-svg.scm (pango-description-to-svg-font): new function
12738
12739 2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12740
12741         * Documentation/user/GNUmakefile (deep-symlinks): remove outimages
12742         target.
12743
12744         * input/typography-demo.ly: new file.
12745
12746 2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
12747
12748         * Documentation/user/global.itely (File structure): Add markup blocks
12749         to toplevel expressions.
12750         (Multiple movements, Creating titles): Add markup blocks.
12751
12752         * lily/stencil-scheme.cc: Use "libc-extension.hh" (WAS:
12753         <libc-extension.hh>).
12754
12755         * lily/accidental.cc (accurate_boxes): Compile fix: 1.51 was broken.
12756
12757         * flower
12758         * lily
12759         * kpath-guile: Nitpick run: buildscripts/fixcc.py.
12760
12761 2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12762
12763         * lily/accidental.cc: special bboxes for natural. 
12764
12765         * mf/feta-toevallig.mf: make stems heavier.
12766
12767         * lily/dynamic-text-spanner.cc (print): add bound padding for edge
12768         texts as well.
12769
12770         * mf/feta-klef.mf: revise. 
12771
12772         * mf/feta-schrift.mf: make thinning of accent less pronounced.
12773
12774         * mf/feta-klef.mf: add rounded curve at top. 
12775         make thinnib a little heavier.
12776
12777 2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
12778
12779         * lily/parser.yy (book_body): Oops, allow \markup in \book too.
12780
12781         * buildscripts/fixcc.py: New file.
12782
12783         * input/regression/utf8.ly: Update Debian font description.
12784
12785 2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
12786
12787         * stepmake/aclocal.m4: Fix test.
12788
12789 2005-03-09  Graham Percival  <gperlist@shaw.ca>
12790
12791         * Documentation/user/invoking.itely: added Sebastino Vigna's
12792         docs for the --jail option.
12793
12794 2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12795
12796         * lily/stem.cc (print): only produce stemlets if there are no
12797         noteheads on this stem.
12798
12799         * lily/note-spacing.cc (stem_dir_correction): robustness fix:
12800         don't crash on stemlet (visible stem without heads).
12801
12802         * scm/define-grobs.scm (all-grob-descriptions): junk LeftEdge for
12803         unbroken situations. 
12804
12805         * scm/output-lib.scm (center-invisible): new function.
12806
12807         * lily/spacing-loose-columns.cc (set_loose_columns): use spacing
12808         wishes to determine loose column space.
12809
12810         * lily/font-config.cc (init_fontconfig): add
12811         fonts/{otf,type1,cff}  to path.
12812
12813         * lily/main.cc (setup_paths): add fonts/{otf,svg,tfm,cff} to path
12814
12815         * mf/GNUmakefile (Module): install all fonts under otf/
12816
12817         * scm/framework-ps.scm (Module): read fonts from fonts/extension,
12818         replace /fonts/otf/ by /ps/ 
12819
12820         
12821 2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
12822
12823         * lily/paper-book.cc (classic_output): Reinstate header_0_ hack.
12824
12825         * lily/book.cc (process): Oops, add score_.header_.
12826
12827         * lily/paper-book.cc: Fold hearders, score and texts into scores_.
12828
12829         * lily/parser.yy: Handle toplevel and book texts as score.
12830
12831         * scm/page-layout.scm (default-page-make-stencil):
12832         Bugfix: (page-properties rename.
12833
12834         * scm/backend-library.scm (ly:system): Typo.
12835
12836 2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12837
12838         * stepmake/stepmake/executable-targets.make (installexe): don't
12839         strip installed executables
12840
12841         * lily/font-select.cc (get_font_by_design_size): revert
12842         pango_description_string as well.
12843
12844         * lily/system.cc (set_loose_columns): put loose column just left
12845         of next column.
12846
12847         * lily/include/group-interface.hh (extract_grob_array): rename
12848         from Pointer_group_interface__extract_grobs
12849
12850         * input/regression/ledger-line-minimum.ly (texidoc): new file.
12851
12852         * lily/ledger-line-spanner.cc (set_spacing_rods): new
12853         function. Keep ledgered note heads at a minimum distance.
12854         Introduce minimum-length-fraction
12855         (print): introduce length-fraction property.
12856
12857 2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12858
12859         * tex/GNUmakefile: remove latin1.enc rules.
12860
12861 2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
12862
12863         * scm/titling.scm: Typo.
12864
12865         * input/regression/score-text.ly: Really add.
12866
12867         * lily/score.cc: Bugfixes for SCM header_ and texts_ members.
12868
12869 2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12870
12871         * lily/open-type-font-scheme.cc:  new file.
12872
12873 2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
12874
12875         * scm/titling.scm (layout-extract-page-properties): Rename from
12876         page-properties.  Update callers.
12877
12878         * lily/lexer.ll (Lily_lexer):
12879         * lily/parser.yy: Junk lyric_markup state.
12880
12881         * Documentation/topdocs/NEWS.tely (Top): Mention markup text feature.
12882
12883         * scripts/lilypond-book.py (PREAMBLE_LY): toplevel-music-handler:
12884         Add texts parameter.
12885
12886 2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
12887
12888         * lily/lexer.ll (lyric_markup): New mode.
12889         (Lily_lexer::push_lyric_markup_state): New method.
12890         (MARKUPCOMMAND): Markup during lyric mode returns LYRIC_MARKUP.
12891
12892         * lily/parser.yy (book_body):
12893         (toplevel_expression): Grok \markup texts.
12894
12895         * lily/score-scheme.cc (ly:music-scorify): 
12896         * scm/lily-library.scm (collect-music-for-book): Take texts
12897         parameter.
12898
12899         * lily/score.cc (texts_): New member.
12900
12901         * lily/paper-book.cc (systems): Format score texts.
12902
12903         * score-text.ly: New file.
12904
12905         * ttftool/SConscript:
12906         * kpath-guile/SConscript: New file.
12907
12908         * lily/SConscript:
12909         * SConstruct: Update.
12910
12911 2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12912
12913         * VERSION (PACKAGE_NAME): release 2.5.14
12914
12915 2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
12916
12917         * lily/main.cc: Add dummy xgettext markers.
12918
12919 2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12920
12921         * make/lilypond.fedora.spec.in (Requires): scrap kpathsea/tex
12922         requirements
12923
12924         * stepmake/aclocal.m4: check dynamic link, by checking if kpathsea
12925         executable is < 40k
12926
12927         * lily/main.cc (setup_paths): remove tfm1 tfm2 tfm3 include path
12928         hack.
12929
12930 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12931
12932         * flower/libc-extension.cc:
12933         * flower/include/libc-extension.hh: [Open]BSD simply cast
12934         cookie/funopen declarations.
12935
12936         * stepmake/aclocal.m4: Check for libkpathsea.so.
12937
12938         * kpath-guile/kpath.c (ly_kpathsea_expand_variable): Use
12939         dl_kpse_find_file.
12940
12941 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12942
12943         * kpath-guile/kpath.c (open_library): dlopen libkpathsea.so
12944         (open_library): alternative for static library.
12945
12946 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12947
12948         * configure.in: Set TTFTOOL_ENDIAN iso global CFLAGS.
12949
12950         * ttftool/GNUmakefile (MODULE_CFLAGS): Add $(TTFTOOL_ENDIAN).
12951
12952         Drop run-time dependency on teTeX.
12953
12954         * lily/kpath.cc (initialize_kpathsea): dlopen libkpathsea.
12955
12956         * stepmake/aclocal.m4 (STEPMAKE_KPATHSEA): Do not include
12957         KPATHSEA_LIBS in LIBS.
12958         (STEPMAKE_DLOPEN): New function.
12959
12960         * lily/font-config.cc (init_fontconfig): Use dir for directory,
12961         not path.
12962
12963         * flower/file-path.cc (directories): Rename from paths, as this
12964         return an array of directories (a single path).
12965
12966 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12967
12968         * lily/GNUmakefile (MODULE_LIBS): link with kpath-guile
12969
12970         * lily/all-font-metrics.cc (kpathsea_find_file): wrapper around
12971         new ly:kpathsea-find-file
12972
12973         * kpath-guile/kpath.c: new file. Put kpath bindings in lib.
12974
12975         * kpath-guile/GNUmakefile: new file
12976
12977         * buildscripts/gen-emmentaler-scripts.py (i): generate
12978         emmentaler-X.fontname as well.
12979
12980         * buildscripts/ps-embed-cff.py: new script
12981
12982         * scm/lily-library.scm: remove ps-embed-cff.
12983
12984         * scm/framework-ps.scm (write-preamble): don't use kpathsea for
12985         font loading. 
12986
12987         * scm/font.scm (add-music-fonts): load dynamics/numbers through
12988         fontconfig as well.
12989
12990         * lily/font-config.cc (init_fontconfig): add cff/ too.
12991
12992         * ly/generate-embedded-cff.ly: capitalize.
12993
12994         * lily/pango-select.cc (select_pango_font): use ::find_pango_font,
12995         so as to register the pango font.
12996
12997         * lily/font-config.cc (init_fontconfig): add
12998         prefix/{otf,type1,mf/out} to fontconfig path.
12999
13000         * lily/main.cc: only look at one prefix directory, LILYPONDPREFIX
13001         overrides all. 
13002
13003         * configure.in (gui_b): remove ec mftrace check
13004
13005         * config.hh.in: use lilypond-Major.Minor as data directory.
13006
13007         * scm/framework-ps.scm (dump-page): use output-units for landscape.
13008
13009         * buildscripts/gen-emmentaler-scripts.py (i): lower case file
13010         name.
13011
13012 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
13013
13014         * lily/main.cc (do_chroot_jail): Small cleanups.  Avoid constant
13015         error messages.
13016
13017         * flower/libc-extension.cc:
13018         * flower/include/libc-extension.hh: [Open]BSD fixes for
13019         cookie/funopen declarations.
13020
13021 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13022
13023         * buildscripts/gen-emmentaler-scripts.py (outdir): capitalize
13024         emmentaler.
13025
13026         * lily/score-engraver.cc (initialize): remove check for ecrm10 /
13027         lcrm10.
13028
13029         * scm/define-markup-commands.scm (fontsize): new markup
13030         command. Also set baseline-skip
13031
13032 2005-03-06 Sebastiano Vigna <vigna@dsi.unimi.it>.
13033         
13034         * lily/main.cc (do_chroot_jail): paranoia security for webserver
13035         use.
13036
13037 2005-03-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13038
13039         * stepmake/bin/add-html-footer.py (do_file): make wiki link optional.
13040
13041         * lily/pdf.cc: remove PDF related files
13042
13043 2005-03-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13044
13045         * ly/deutsch.ly: add quarter tones, patch by Arno Waschk.
13046         <hamamatsu@gmx.de>
13047
13048 2005-03-05  Graham Percival  <gperlist@shaw.ca>
13049
13050         * Documentation/user/advanced-notation.itely: first draft
13051         of reorg done.
13052
13053         * Documentation/user/global.itely: fixed (sub)section
13054         bits of MIDI.
13055
13056 2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
13057
13058         * cygwin/mknetrel (extras): Bufix (Bertalan).
13059
13060         * Documentation/user/basic-notation.itely (Chords): @ref fix.
13061         * Documentation/user/instrument-notation.itely (Introducing chord
13062         names): Compile fix: must have unique name.
13063
13064 2005-03-02  Graham Percival  <gperlist@shaw.ca>
13065
13066         * Documentation/user/instrument-notation.itely: reorg.
13067
13068 2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
13069
13070         * scm/output-gnome.scm:
13071         * scm/output-svg.scm: Fix font scaling.
13072
13073 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13074
13075         * ly/titling-init.ly (tagline): Use Engraving.  Add comment about
13076         what link to use best.
13077
13078         * Documentation/user/instrument-notation.itely (Ancient accidentals): 
13079         * Documentation/user/tutorial.itely (Automatic and manual beams):
13080         Fix @ref.
13081
13082         * lily/tweak-registration.cc (replace_grob_tweak): New function.
13083         * lily/tweak-registration-scheme.cc (LY_DEFINE): Wrap it.
13084         * scm/framework-gnome.scm (tweak): Use it.
13085
13086 2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13087
13088         * Documentation/topdocs/NEWS.tely (Top): elucidate GS problem.
13089
13090         * scm/output-ps.scm (white-text): reinstate white-text
13091
13092 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13093
13094         * scm/output-ps.scm (offset-add): Remove.
13095
13096         * scm/lily-library.scm (offset-flip-y): New function.
13097         * scm/framework-gnome.scm (tweak): Use it.
13098
13099         * scm/output-gnome.scm (grob-cause): Add parameter.
13100
13101         * scm/lily.scm (ly:all-stencil-expressions): Add url-link.
13102         * scm/output-ps.scm (url-link): Move.
13103         (white-text): Warn user about brokenness.
13104
13105         * Documentation/topdocs/NEWS.tely: Be more accurate and respectful
13106         wrt ghostscript.
13107
13108 2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13109
13110         * lily/slash-repeat-engraver.cc (try_music): always make slashes
13111         if body length smaller than measure length.
13112
13113         * scm/define-markup-commands.scm (with-url): oops. use Y extent
13114         for Y.
13115
13116         * ly/titling-init.ly (tagline): put default tagline in \paper
13117
13118 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13119
13120         * lily/kpath.cc: 
13121         * lily/pdf.cc (Pdf_file): Use more generic error messages.
13122
13123         * scm/lily-library.scm (version-not-seen-message): New function.
13124         * ly/init.ly: Use it.
13125
13126         * scm/page-layout.scm (ly:optimal-page-breaks): Display page
13127         breaks as progess.
13128
13129         * scripts/lilypond-book.py (do_process_cmd): Do not lump
13130         whitespace with l10n message.
13131
13132         * scm/framework-tex.scm (convert-to-ps):
13133         (convert-to-dvi): Do not use overly specific l10n messages.
13134
13135         * ly/titling-init.ly (bookTitleMarkup): Add baseline skips from 2.4.
13136
13137         * tex/GNUmakefile $(outdir)/latin1.enc: Build fix:
13138         merge stderr with stdout.  
13139
13140 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13141
13142         * flower/libc-extension.cc: Tested BSD compile fix (Matthias
13143         Neeracher).
13144
13145 2005-02-29  Graham Percival  <gperlist@shaw.ca>
13146
13147         * Documentation/user/instrument-notation.teily: moved
13148         \arpeggio to Basic.
13149
13150         * Documentation/user/advanced-notation.itely: Articulation to
13151         Basic, a bunch of stuff from Basic moved to Advanced.
13152
13153         * Documentation/user/basic.itely: swapped various sections,
13154         reorganized Basic.
13155
13156 2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
13157
13158         * flower/memory-stream.cc: 
13159         * flower/libc-extension.cc: Remove obsolete #undefs.
13160
13161         * flower/include/libc-extension.hh: Bugfix for BSD, place #ifdef
13162         more carefully.
13163
13164 2005-02-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13165
13166         * make/lilypond.fedora.spec.in (Requires): add GS 8.15 as
13167         dependency.
13168
13169         * VERSION (PACKAGE_NAME): release 2.5.13
13170
13171         * GNUmakefile.in (web-ext): don't ship ps.gz
13172
13173         * tex/GNUmakefile ($(outdir)/latin1.enc): redirect stderr to
13174         stdout
13175
13176 2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
13177
13178         * lily/general-scheme.cc (LY_DEFINE): Compile fix for systems
13179         without libintl.  Now it compiles too.
13180
13181 2005-02-28  Graham Percival  <gperlist@shaw.ca>
13182
13183         * Documentation/user/basic-notation.itely,
13184         instument-notation.itely, advanced-notation.itely:
13185         split up contents of notation.itely.
13186
13187         * Documentation/user/notation.itely: file removed.
13188
13189         * Documentation/user/invoking.itely, converters.itely:
13190         moved convert-ly info to invoking.itely.
13191
13192         * Documentation/user/global.itely, changing-defaults.itely,
13193         sound-output.itexi: moved global settings, file layout, and
13194         sound into global.itely.
13195
13196         * Documentation/user/sound-output.itexi: file removed.
13197
13198         * Documentation/user/lilypond.tely: removed links to
13199         notation.itely and sound.itely.
13200
13201 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13202
13203         * scm/output-ps.scm (grob-cause): only do mark_URI if non-empty.
13204
13205         * scm/framework-ps.scm (write-preamble): remove pdf-viewer code.
13206  
13207         * THANKS: add sponsor.
13208
13209         * scm/define-markup-commands.scm (with-url): new markup command.
13210
13211         * scm/page-layout.scm (TAGLINE): add www.lilypond.org with URL to
13212         tagline.
13213         
13214         * scm/output-tex.scm (url-link): stub.
13215
13216         * scm/output-ps.scm (url-link): new function.
13217
13218         * lily/lily-parser-scheme.cc (LY_DEFINE): deprecate
13219         ly:set-point-and-click
13220
13221 2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
13222
13223         * ps/music-drawing-routines.ps (mark_file_line): Switch Action
13224         based on pdf-viewer setting.
13225
13226         * scm/framework-ps.scm (write-preamble): Find and set preferred
13227         pdf-viewer.
13228
13229 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13230
13231         * Documentation/user/point-and-click.itely: update for PDF point &
13232         click.
13233
13234         * scripts/lilypond-pdfpc-helper.py: new file. Invoke different
13235         editors based on EDITOR setting.
13236
13237 2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
13238
13239         * scm/*: Oops, more grand 2005 replace bits.
13240
13241 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13242
13243         * ps/music-drawing-routines.ps: new routine: insert PDF mark
13244
13245         * scm/output-ps.scm (grob-cause): point & click support for
13246         PostScript
13247
13248 2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13249
13250         * lily/input-scheme.cc (LY_DEFINE): rename to
13251         ly:input-file-line-column
13252
13253 2005-02-26  Graham Percival  <gperlist@shaw.ca>
13254
13255         * Documentation/user/examples.itely: small fix from Steve Doonan.
13256
13257         * Documentation/user/scheme-tutorial.itely: small fix from Steve Doonan.
13258
13259         * THANKS: added Yuval Harel.
13260
13261         * Documentation/user/{various}: inserted two spaces after a period.
13262
13263         * Documentation/user/lilypond.tely: added framework for reorg.
13264
13265         * Documentation/user/basic-notation.itely, instrument-notation.itely,
13266         advanced-notation.itely, global.itely: new files, placeholder for
13267         future reorg.
13268
13269 2005-02-26 Yuval Harel  <yuvalh@hotpop.com>
13270
13271         * Documentation/user/notation.itely: revamped Polyphony section
13272         
13273 2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13274
13275         * Documentation/user/lilypond-book.itely (Music fragment options):
13276         doc fontload.
13277
13278         * Documentation/user/changing-defaults.itely (Text encoding): add
13279         fontload option to utf8 include
13280
13281         * scripts/lilypond-book.py (compose_ly): add fontload option
13282
13283         * scm/framework-eps.scm (dump-stencils-as-EPSes): add
13284         force-eps-font-include option.
13285
13286         * ly/chord-modifiers-init.ly (blackTriangleMarkup): reinstate
13287         black triangle
13288
13289         * Documentation/user/invoking.itely (Editor support): remove
13290         lilypond-latex section.
13291
13292         * scripts/lilypond-latex.py (Module): remove script.
13293
13294         * cygwin/lily-wins.py (stat): write to .lylog, so as not to
13295         overwrite .log. 
13296
13297         * lily/main.cc: remove -m, --no-layout
13298
13299         * flower/include/libc-extension.hh: add ALIAS_FILE_TO_FILECOOKIE
13300         to define. We don't want to override fprintf everywhere.
13301
13302 2005-02-26  Jan Nieuwenhuizen  <janneke@gnu.org>
13303
13304         * cygwin/lilypond.hint: 
13305         * cygwin/README.in: Update dependencies.
13306
13307         * stepmake/aclocal.m4 (STEPMAKE_PANGO, STEPMAKE_PANGO_FT2):
13308         Bugfix: do not pollute CPPFLAGS, LIBS.
13309
13310         * cygwin/mknetrel (extras): Cross compile fixes.
13311
13312         * ttftool/util.c: 
13313         * ttftool/ttfps.c: 
13314         * ttftool/ps.c: #include libc-extension.hh
13315
13316         * flower/include/libc-extension.hh:
13317         * flower/libc-extension.cc (fopencookie)[!HAVE_FOPENCOOKIE]: Add
13318         wrapper using funopen.
13319         (fopencookie, handle_cookie_io_fclose, handle_cookie_io_fprintf,
13320         handle_cookie_io_fprintf): Add wrappers catching Memory_out_stream.
13321
13322         * config.hh.in:
13323         * configure.in (AC_CHECK_FUNCS): Add fopencookie, funopen.
13324         (AC_CHECK_HEADERS): Add libio.h
13325
13326         * scripts/convert-ly.py: Uniformize, internationalize.
13327         (2.5.2): Remove fatal encoding rule.
13328         (2.5.13): Handle latin1 encoding gracefully.
13329
13330 2005-02-23  Jan Nieuwenhuizen  <janneke@gnu.org>
13331
13332         * HACKING: Fix line breaks.
13333
13334 2005-02-23  Werner Lemberg  <wl@gnu.org>
13335
13336         * mf/graycx.mf, mf/graylj.mf: Removed.  Any decent TeX distribution
13337         contains those two files.
13338
13339 2005-02-21  Werner Lemberg  <wl@gnu.org>
13340
13341         * mf/feta-nummer-code.mf ("Numeral 5"): Include intersection point
13342         to improve overlap removal process.
13343
13344         * mf/feta-slag.mf (draw_trillelement): Add parameter to control
13345         left and right ending.  This ensures better overlapping.
13346         Update all callers.
13347         ("lineprall"): Don't use draw_gridline to get better overlapping.
13348
13349 2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13350
13351         * scm/lily-library.scm (ps-embed-cff): add \n after EndResource
13352
13353         * Documentation/topdocs/NEWS.tely (Top): oops.
13354
13355 2005-02-21  Pedro Kroger  <kroeger@pedrokroeger.net>
13356
13357         * HACKING: new file.
13358
13359         * input/regression/utf8.ly (portuguese): added a portuguese example
13360         to show latin1 accents.
13361
13362 2005-02-21  Pal Benko  <benkop@freestart.hu>
13363
13364         * lily/mensural-ligature-engraver.cc:
13365         * lily/mensural-ligature.cc:
13366         * lily/include/mensural-ligature.hh: new algorithm implemented
13367
13368         * scm/define-grob-properties.scm: join-left killed (add-join may
13369         be used); join-left-amount changed to join-right-amount
13370
13371 2005-02-21  Graham Percival  <gperlist@shaw.ca>
13372
13373         * Documentation/user/notation.itely: small but urgent fix.
13374
13375 2005-02-21  Jürgen Reuter  <reuter@ipd.uka.de>
13376
13377         * lily/duration-scheme.cc: bugfix: correct parameters to
13378         SCM_ASSERT_TYPE.
13379
13380         * THANKS: added Pal.
13381
13382         * Documentation/user/notation.itely: bugfix: unTeXified
13383         $\\backslash$.  Bugfix: yet another glyph renaming victim:
13384         "timesig.*x/y" -> "timesig.*xy".
13385
13386 2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13387         
13388         * VERSION (PACKAGE_NAME): release 2.5.12
13389
13390 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13391
13392         * ly/engraver-init.ly: set tieWaitForNote to #t by default
13393
13394         * configure.in (gui_b): bump GUILE requirement to 1.6.5 
13395
13396         * Documentation/topdocs/NEWS.tely: add inputfileref macro.
13397
13398         * scm/framework-ps.scm (supplies-or-needs): uniq font name list.
13399
13400 2005-02-20  Jan Nieuwenhuizen  <janneke@gnu.org>
13401
13402         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly: recode
13403         latin1..utf-8.
13404
13405         * input/regression/stanza-number.ly:
13406         * input/regression/utf8.ly (hebrew): Use addlyrics.  Update.
13407
13408         * lily/tie-engraver.cc (acknowledge_grob): Compile fix.
13409
13410 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13411
13412         * Documentation/topdocs/NEWS.tely (Top): only mention 2.5
13413         NEWS. Refer to website for older news.  
13414
13415         * stepmake/bin/add-html-footer.py (i18n): don't strip .PNG /
13416         .HTML. This should be done for specific servers only.
13417
13418         * Documentation/topdocs/NEWS.tely (Top): move to .tely. Add some
13419         .ly image examples.
13420
13421         * scm/define-grobs.scm (all-grob-descriptions): put ledger lines
13422         in layer 0 too.
13423
13424         * scm/define-context-properties.scm
13425         (all-user-translation-properties): add tieWaitForNote
13426
13427         * scm/define-grobs.scm (all-grob-descriptions): add
13428         Tie_column::before_line_breaking
13429
13430         * lily/tie.cc (get_column_rank): new function
13431
13432         * lily/tie-column.cc (before_line_breaking): new function.
13433         (werner_directions): take into account ties that start on
13434         different columns.  
13435
13436         * lily/score-engraver.cc (set_columns): move add_column() so we
13437         have column rank available.
13438
13439         * lily/tie.cc (get_column_rank): new function.
13440
13441         * input/regression/utf8.ly (japanese): add japanese lyrics.
13442
13443         * lily/pfb.cc (LY_DEFINE): ly:ttf->pfa, new function.
13444
13445         * THANKS: add Steve D
13446
13447         * ttftool/*.c: add TTF -> Type42 conversion library. Based on
13448         Public Domain work by Juliusz Chroboczek <jch@pps.jussieu.fr>
13449
13450 2005-02-20  Tatsuya Ono  <tats_ono@infoseek.jp>
13451
13452         * mf/parmesan-heads.mf: "0harmonic" -> "s0harmonic"
13453         to show harmonic notes
13454         * scm/define-markup-commands.scm: in \markup-by-number
13455         "dots-dot" -> "dots.dot" to show dotted notes
13456
13457 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13458
13459         * flower/include/memory-stream.hh (class Memory_out_stream): new file.
13460
13461         * flower/memory-stream.cc (writer): new file.
13462
13463         * configure.in: add endian test.
13464
13465 2005-02-19  Jürgen Reuter  <reuter@ipd.uka.de>
13466
13467         * Documentation/user/examples.itely: small
13468         simplification/beautification
13469
13470         * Documentation/user/notation.ietly: bugfix: fixed many artefacts
13471         from the "x-y-z"->"x.y.z" renaming of glyphs throughout the whole
13472         notation manual.
13473
13474         * lily/mensural-ligature.cc: bugfix: another few victims of the
13475         "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
13476
13477         * ly/gregorian-init.ly: commit some experimental code for hi-level
13478         ligature input language lying around here for several months.
13479
13480         * lily/mensural-ligature-engraver.cc: bugfix: another victim of
13481         the "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
13482
13483         * lily/vaticana-ligature-engraver.cc: bugfix: another few
13484         "x-y-z"->"x.y.s-z" fixes.
13485
13486 2005-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13487
13488         * scm/framework-pdf.scm (scm): new file
13489
13490         * lily/include/pdf.hh (class Pdf_file): new file.
13491
13492         * lily/pdf.cc (write_trailer): new file.
13493
13494 2005-02-18  Erlend Aasland  <erlenda@gmail.com>
13495
13496         * input/regression/color.ly: new file
13497
13498         * lily/stencil.cc (interpret_stencil_expression):
13499         when a color expression is encountered: save current color,
13500         process the rest of the expression, and restore previous color.
13501
13502         * lily/system.cc (get_line): check all grobs for color property and
13503         prepare the stencil scheme expressions for further processing.
13504         Fix layer-loop.
13505
13506         * scm/define-grob-properties.scm: introduce the color property.
13507
13508         * scm/output-lib.scm: color helper functions.
13509
13510         * scm/output-ps.scm: introduce setcolor/resetcolor.
13511
13512 2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
13513
13514         * ly/*.ly, input/regression/*.ly: Added missing \version
13515         statements in some files.
13516
13517 2005-02-15  Graham Percival  <gperlist@shaw.ca>
13518
13519         * Documentation/user/notation.itely: minor editing.
13520
13521         * Documentation/user/converters.itely: updated convert-ly bugs.
13522
13523         * Documentation/user/lilypond-book.itely: add info about using
13524         feta characters in latex.
13525
13526 2005-02-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13527
13528         * scripts/convert-ly.py: new slur dash patch by Bertalan Fodor.
13529
13530 2005-02-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13531
13532         * scm/define-grob-properties.scm (all-user-grob-properties):
13533         removed 'dashed property.
13534
13535 2005-02-13  Nicolas Sceaux  <nicolas.sceaux@free.fr>
13536
13537         * scm/lily.scm (define-safe-public): new macro for defining
13538         variables that can be used in --safe mode. Use it in *.scm
13539         instead of manually setting safe-objects in safe-lily.scm.
13540
13541 2005-02-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13542         
13543         * lily/slur.cc: Slur-dash patch by Bertalan.
13544
13545         * ly/engraver-init.ly (EasyNotation): glyph name dash -> period.
13546
13547         * stepmake/bin/add-html-footer.py (do_file): do i18n only once. 
13548
13549 2005-02-10  Jan Nieuwenhuizen  <janneke@gnu.org>
13550
13551         * stepmake/aclocal.m4: teTeX-3.0 inimf fix.  Comment-out.
13552
13553 2005-02-09  Jan Nieuwenhuizen  <janneke@gnu.org>
13554
13555         * mf/GNUmakefile: teTeX-3.0 install fix.
13556
13557         * Cygwin patch from Bertalan.
13558
13559         * stepmake/stepmake/metafont-rules.make: Remove bashism.
13560
13561 2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
13562
13563         * GNUmakefile.in: 
13564         * SConstruct (symlink): teTeX-3.0 build fix: add map symlink.
13565
13566         * tex/GNUmakefile: teTeX-3.0 fix: install .enc in fonts/enc.  Add
13567         2.0.x compatibility.
13568
13569 2005-02-08  Werner Lemberg  <wl@gnu.org>
13570
13571         * mf/feta-din-code.mf: Format; clean up code.
13572         Replace `---' with `--' plus explicit path directions.
13573         (linethickness#, stafflinethickness#): Remove.
13574         ("dynamic f"): Replace `draw' with `draw_rounded_block'.
13575         ("dynamic s"): Improve shape.
13576         ("dynamic p"): Improve shape.
13577         Replace `draw' with better outline approximation.
13578         ("dynamic r"): Improve shape.
13579         Don't call `fill' and `draw' at the same time.
13580
13581 2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
13582
13583         * SConstruct (symlink):
13584         * GNUmakefile.in ($(builddir)/share/lilypond-force): teTeX-3.0
13585         build fix: add enc symlink.
13586
13587         * lily/general-scheme.cc: Compile fixes: include wchar.h, string.h.
13588
13589         Support for DESTDIR besides prefix=/foo
13590
13591         * vim/GNUmakefile (local-install): Use $(INSTALL) -d iso mkdir.
13592
13593         * stepmake/stepmake/*.make:
13594         * */GNUmakefile:
13595         * GNUmakefile.in: Prepend $(DESTDIR) to installation directory.
13596
13597         * config.make.in (prefix): Remove broken $(DESTDIR) hack.
13598
13599         * stepmake/aclocal.m4: Use %0.f iso %d to quiet gawk < 3.1.4 and
13600         mawk in fontforge (date) test.
13601
13602 2005-02-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13603
13604         * scm/font.scm (make-century-schoolbook-tree): add NCS as
13605         font-family=roman. Add Luxi Sans as sans
13606
13607 2005-02-07  Graham Percival  <gperlist@shaw.ca>
13608
13609         * Documentation/user/notation.itely: add warning about
13610         percent repeats and Voice contexts.
13611
13612         * Documentation/user/lilypond-book.itely: clarified the
13613         necessity of dvips -u arguments.
13614
13615 2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
13616
13617         * THANKS: Added a bunch of bug hunters.
13618
13619 2005-02-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13620
13621         * scm/framework-ps.scm (output-preview-framework): bugfix.
13622
13623         * ly/chord-modifiers-init.ly (ignatzekExceptionMusic): use unicode
13624         o/ for chord modifier..
13625
13626         * lily/general-scheme.cc (LY_DEFINE): new function ly:wide-char->utf-8.
13627
13628         * lily/drum-note-performer.cc:  remove unused (thanks Michael
13629         Welsh Duggan). 
13630
13631 2005-02-06  Jan Nieuwenhuizen  <janneke@gnu.org>
13632
13633         * Documentation/user/changing-defaults.itely (Text encoding): Clarify.
13634
13635         * ly/titling-init.ly: Do not also print intstrument in header on
13636         first page.  Do not print page number on first and only page.
13637
13638 2005-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13639
13640         * input/regression/*.ly: remove old-relative everywhere
13641
13642         * lily/music-sequence.cc (simultaneous_relative_callback): do
13643         what-if analysis on copy, not on original. Fixes old-relative
13644         compatibility.
13645
13646         * scm/backend-library.scm (postscript->png): space before
13647         --verbose.
13648         
13649 2005-02-05  Werner Lemberg  <wl@gnu.org>
13650
13651         * mf/feta-autometric.mf (fet_beginchar): Check whether `feta_group'
13652         is defined.
13653
13654         * mf/feta-alphabet.mf: Define `staffsize#'.
13655         Include `feta-params.mf'.
13656         s/staffheight/design_size/.
13657
13658         * mf/feta-alphabet??.mf: s/staffheight/design_size/.
13659
13660         * mf/feta-alphabet26.mf: Fix a serious bug (design size off by 8pt).
13661
13662         * mf/feta-nummer-code.mf: Reformatted.
13663         (draw_six): Use outline intersection to avoid a self-intersecting
13664         path.
13665         ("Numeral comma"): Fix serious outline glitches.  This slightly
13666         changes the glyph shape.
13667         ("Numeral dash"): Use `draw_rounded_block'.
13668         ("Numeral dot"): Use `drawdot'.
13669         ("Numeral 1"): Assure identical tangent directions for the
13670         intersection points of paths.  The glyph shape improvement is only
13671         visible at very high magnifications.
13672         ("Numeral 2"): Use `solve' macro to make the lower right part of
13673         the glyph outline touch the x axis exactly.  This changes the
13674         glyph shape.
13675         Minor fixes for better overlap removal support.
13676         ("Numeral 4"): Make lefter corner `rounder'.
13677         ("Numeral 5"): Assure identical tangent directions for the
13678         intersection points of paths.  This improves the glyph shape at
13679         high magnifications.
13680         ("Numeral 7"): Use `solve' macro to make the upper right part of
13681         the glyph outline touch the metrics box exactly.  This changes the
13682         glyph shape.
13683         Avoid corner in the upper left part of the glyph (causing a minor
13684         shape change).
13685
13686         * mf/feta-ital-*.mf: Removed.  Unused.
13687
13688 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13689
13690         * VERSION (PATCH_LEVEL): release 2.5.11
13691
13692         * input/regression/fill-line-test.ly: new file.
13693
13694         * buildscripts/gen-emmentaler-scripts.py (i): insert dash in
13695         emmentaler name, eg. emmentaler-23. 
13696
13697 2005-02-04  Christian Hitz  <chhitz@gmx.net>
13698
13699         * scm/scm/define-markup-commands.scm (fill-line): rework for better
13700         alignment with centered texts
13701
13702         * scm/stencil.scm (stack-stencils-padding-list): new function, takes a
13703         list of paddings
13704
13705 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13706
13707         * mf/GNUmakefile ($(outdir)/lilypond.map): add aybabtu to .map file.
13708
13709         * lily/note-column.cc (translate_rests): call flush_extent_cache()
13710         of parents when translating rests. Fixes: c-chord-rest.ly 
13711
13712         * lily/include/dimension-cache.hh (struct Dimension_cache): add
13713         dimension_callback_ member.
13714
13715         * lily/grob.cc (flush_extent_cache): new function. Force recompute
13716         of extents.
13717
13718 2005-02-04  Jan Nieuwenhuizen  <janneke@gnu.org>
13719
13720         * all but lily/*: The grand 2004/2005 replace.
13721
13722 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13723
13724         * lily/*: add space after ,  
13725
13726         * scm/music-functions.scm (has-request-chord): don't use
13727         ly:music-name anywhere. Fixes <<\\>> notation. 
13728
13729         * scm/define-markup-commands.scm (box): use font-size for
13730         padding. Fixes boxed-rehearsal-marks.ly
13731
13732         * lily/parser.yy (assignment_id): allow LYRICS_STRING as
13733         identifier definition too, so foo = \lyrics { ...   } bar = #1
13734         doesn't complain about "bar" being LYRICS_STRING.
13735
13736         * lily/paper-def.cc (find_pango_font): new routine; Store
13737         pango_fonts in hash tab too. This is necessary for retrieving
13738         Pango_fonts::physical_font_tab() later on.
13739  
13740         * lily/pango-font.cc (pango_item_string_stencil): bugfix: don't
13741         crash if psname is null.
13742
13743         * lily/lily-guile.cc (ly_hash2alist): new function
13744
13745         * Documentation/user/changing-defaults.itely (Text encoding):
13746         rewrite. 
13747
13748         * lily/pango-font.cc (physical_font_tab): new member. Store PSname
13749         -> font_filename mapping.
13750
13751         * lily/pango-font-scheme.cc (LY_DEFINE): new file. New function
13752         ly_pango_font_physical_fonts
13753
13754         * scm/framework-ps.scm (supplies-or-needs): extract names from
13755         physical Pango_fonts.
13756
13757         * utf8.ly: new file.
13758
13759 2005-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13760
13761         * Documentation/user/changing-defaults.itely (Page layout): add
13762         doco about systemSeparatorMarkup.
13763
13764         * scm/page-layout.scm (default-page-make-stencil): add-to-page
13765         function.
13766         (default-page-make-stencil): insert system separators.
13767
13768         * scm/define-markup-commands.scm (hcenter): add
13769         (beam): add.
13770
13771 2005-02-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13772
13773         * scm/output-ps.scm (ez-ball): reinstate ez notation.
13774
13775 2005-02-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13776
13777         * lily/main.cc: Spell backend consistently.  Sort options.
13778
13779 2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13780
13781         * scripts/lilypond-book.py (Module): revert @include.
13782         
13783 2005-01-31  Jan Nieuwenhuizen  <janneke@gnu.org>
13784
13785         * scripts/lilypond-book.py: Resurrect HTML links to .ly source.
13786         Bugfix: @include .tex (not .texi).  Small cleanups.
13787
13788         * stepmake/bin/add-html-footer.py (i18n): New function.
13789
13790 2005-01-31  Werner Lemberg  <wl@gnu.org>
13791
13792         * mf/feta-nummer.mf: Removed.  Unused.
13793
13794 2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13795
13796         * lily/ : 2004 -> 2005 s&r
13797
13798         * scm/file-cache.scm (cached-file-contents): add file. Read each
13799         file only once.
13800
13801         * scm/font.scm (add-pango-fonts): change order. Medium weight is
13802         now default.
13803
13804         * VERSION: release 2.5.10
13805         
13806         * mf/GNUmakefile (INSTALLATION_OUT_FILES4): install cff.ps files.
13807
13808         * make/ly-rules.make ($(outdir)/%.texi): detect new EOF marker.
13809
13810         * scm/framework-ps.scm (dump-stencil-as-EPS): robustness: ensure
13811         that both X and Y extents of bbox are non-nil.
13812
13813 2005-01-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13814
13815         * scm/chord-name.scm (alteration->text-accidental-markup): change
13816         - to . 
13817
13818         * scm/output-ps.scm (utf8-string): add utf8-string for completeness.
13819
13820         * scm/framework-ps.scm (dump-stencil-as-EPS): new function
13821
13822         * Documentation/user/invoking.itely (Invoking lilypond): add note
13823         about EPS backend.
13824
13825         * scm/framework-eps.scm: new file: create per-system/per-page EPS
13826         files for inclusion in lilypond-book document.
13827
13828         * input/tutorial/lbook-latex-test.tex: rename from lilbook.tex
13829
13830         * input/tutorial/lbook-texi-test.texi: new file.
13831
13832         * scm/safe-lily.scm (safe-objects): add
13833         {begin,end}-of-line-(in)?visible as safe.
13834  
13835 2005-01-30  Graham Percival  <gperlist@shaw.ca>
13836
13837         * Documentation/user/changing-defaults.itely: fixed example
13838         of (dynamics).
13839
13840 2005-01-29  Graham Percival  <gperlist@shaw.ca>
13841
13842         * lily/main.cc: fix info about -o=FILE.
13843
13844 2005-01-29  Werner Lemberg  <wl@gnu.org>
13845
13846         * mf/feta-toevallig.mf ("Natural"): Completely changed the
13847         construction to assure smooth transition from straight to curved
13848         lines.
13849
13850 2005-01-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13851
13852         * lily/stencil.cc (moved_to_edge): don't halt on adding empty
13853         stencils.
13854
13855         * ps/lilyponddefs.ps: add start-page, start-system doesn't
13856         translate to top of page. Fixes alignment problems of
13857         lilypond-generated EPS files.
13858
13859 2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13860
13861         * scm/part-combiner.scm (analyse-spanner-states): trigger on
13862         crescendo-end as well, since Decrescendo maybe ended with Stop
13863         Crescendo.). Fixes: partcombine-diminuendo.ly
13864
13865         * scm/script.scm (default-script-alist): swap portato symbols.
13866
13867         * lily/instrument-name-engraver.cc (acknowledge_grob): typo.
13868
13869         * lily/paper-outputter-scheme.cc (LY_DEFINE):
13870         ly:outputter-port. New function.
13871
13872         * scm/framework-ps.scm (output-classic-framework): dump a
13873         -systems.texi too
13874         (output-classic-framework): dump multiple systems on an "infinite"
13875         page EPS including fonts. 
13876
13877         * scripts/lilypond-book.py (Lilypond_snippet.ly_is_outdated): use
13878         .eps files for both texi and tex formats. Use PNG coming from
13879         lilypond.
13880         
13881 2005-01-28  Graham Percival  <gperlist@shaw.ca>
13882
13883         * Docuemntation/user/invoking.itely: fix info about -o=FILE.
13884
13885         * scripts/lilypond-latex.py: fix info about -o=FILE.
13886
13887 2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13888
13889         * ly/generate-embedded-cff.ly: write .cff.ps files.
13890
13891         * mf/GNUmakefile ($(outdir)/lilypond.map): add .cff.ps to .map file.
13892
13893         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
13894         $(outdir)/%.svg $(outdir)/%.pfa): remove --simplify
13895
13896 2005-01-28  Jan Nieuwenhuizen  <janneke@gnu.org>
13897
13898         * lily/include/guile-compatibility.hh (SCM_VECTOR_P): Compile fix.
13899
13900 2005-01-28  Werner Lemberg  <wl@gnu.org>
13901
13902         * mf/feta-macros.mf (soft_start_penstroke, soft_end_penstroke): New
13903         macros.
13904         (draw_bulb): Improved.
13905
13906         * mf/feta-pendaal.mf ("Pedal asterisk"): Remove workaround for
13907         metapost bug.
13908         (draw_pedal_P): Use soft_end_penstroke.
13909         (draw_pedal_d): Use soft_start_penstroke.
13910
13911         * mf/feta-schrift.mf ("Trill (`tr')"): Remove redundant point in
13912         path.
13913         ("Varied Coda"): Move some points to avoid fontforge warnings.  This
13914         doesn't change the glyph shape.
13915
13916         * mf/feta-accordion.mf ("accOldEE"): Draw glyph differently (without
13917         changing the shape) to avoid fontforge warnings.
13918
13919         * mf/feta-klef.mf (draw_tab_T, draw_tab_A, draw_tab_B): Use
13920         soft_end_penstroke and fix glyph shape.
13921
13922 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13923
13924         * lily/*.cc: Scheme deprecation of SCM_VECTOR_* 
13925
13926 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13927
13928         * scm/define-markup-commands.scm (line): filter out empty stencils
13929         from line command.
13930
13931         * lily/stencil-scheme.cc (LY_DEFINE): only allow finite real
13932         amount.
13933
13934 2005-01-27  Graham Percival  <gperlist@shaw.ca>
13935
13936         * Documentation/user/notation.itely: added info about what
13937         \voiceFoo does.  Also rewrote warning about marks at
13938         a line break.
13939
13940         * Documentation/user/changing-defaults.itely: added info
13941         about putting dynamics in parenthesis and brackets.
13942
13943 2005-01-27  Werner Lemberg  <wl@gnu.org>
13944
13945         * mf/feta-schrift.mf ("Trill (`tr')"): Fix typo.
13946
13947 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13948
13949         * mf/feta-schrift.mf: reverse u and d portato. Fixes:
13950         portato-direction.ly
13951
13952         * lily/beam.cc (consider_auto_knees): add beam height to
13953         threshold. Fixes: knee-multiple-beam.ly
13954
13955         * lily/instrument-name-engraver.cc (acknowledge_grob): also ignore
13956         pedal line spanners. Fixes: instrument-center-pedal.ly
13957
13958         * lily/auto-beam-engraver.cc (acknowledge_grob): stop beam
13959         if encountering barline. Fixes: auto-beam-repeat.ly
13960
13961 2005-01-26  Werner Lemberg  <wl@gnu.org>
13962
13963         * mf/feta-slag.mf (draw_trillelement): Fix shape to get clean
13964         overlapping.
13965
13966         * mf/feta-toevallig.mf (draw_meta_sharp): Fix shape to avoid curves
13967         with inflections for the 1/2 sharp glyph.
13968
13969         * mf/feta-schrift.mf ("Trill (`tr')"): Fix start position of
13970         connection between `t' and `r'.
13971         Unify bulb with the rest of `r' to avoid grazing outlines which
13972         confuses the overlap removal algorithm of fontforge.
13973
13974         * mf/feta-bolletjes.mf (draw_slash): Fix shape to avoid curves with
13975         inflections.
13976         (draw_cross): Fix shape to have uniform thickness in corners.
13977
13978         * mf/feta-pendaal.mf (draw_pedal_P): Break shape into smaller pieces
13979         to avoid an uneven number of self-intersections; this confuses
13980         fontforge.
13981         Fix a slight bug in the shape at left bottom (which is visible only
13982         at high magnifications).
13983         `Center' the stem horizontally to avoid overlapping.
13984
13985 2005-01-24  Werner Lemberg  <wl@gnu.org>
13986
13987         * mf/feta-autometric.mf (fet_beginfont): Set font_coding_scheme
13988         to `asis'.
13989         (fet_begingroup): Save group name in string `feta_group'.
13990         (fet_endgroup): Updated.
13991         (fet_beginchar): Emit `glyph_name' special for mf2pt1.
13992
13993         * mf/feta-bolletjes.mf: s/p/pat/ for paths.
13994
13995         * mf/feta-pendaal.mf ("Pedal asterisk"): Add workaround for bug
13996         in metapost.
13997
13998 2005-01-24  Graham Percival  <gperlist@shaw.ca>
13999
14000         * Documentation/user/notation.itely: really minor editing.
14001
14002 2005-01-22  Graham Percival  <gperlist@shaw.ca>
14003
14004         * Documentation/user/examples.itely: minor editing.
14005
14006         * Documentation/user/changing-defaults.itely: minor editing.
14007
14008         * Documentation/user/notation.itely: clarified info on polyphony
14009         and \addlyrics.
14010
14011 2005-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
14012
14013         * scm/output-gnome.scm: 
14014         * scm/output-svg.scm:
14015         * scm/lily-library.scm (font-name-style): Update font name
14016         kludging for fontconfig use.
14017
14018 2005-01-20  Erlend Aasland  <erlenda@gmail.com>
14019
14020         * scm/define-markup-commands.scm: Document right-align and
14021         larger markup commands. Remove "TODO" from the topmost comment
14022         "each markup function should have a doc string." More consistent
14023         use of new-lines.
14024
14025 2005-01-22  Graham Percival  <gperlist@shaw.ca>
14026
14027         * Documentation/user/changing-defaults: removed info about
14028         copyright symbol, since it's likely to change soon.
14029         Added info about betweensystemspace.
14030
14031         * Documentation/user/notation.itely: minor fixes.
14032
14033         * Documentation/user/lilypond.tely,
14034         Documentation/user/music-glossary.tely: changed copyright
14035         date to 2005 instead of 2004.
14036
14037         * input/test/volta-chord-names.ly: added old example back.
14038
14039 2005-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14040
14041         * mf/feta-beugel.mf: use design size 20 (not 15).
14042
14043         * mf/aybabtu.pe.in: scale brace fonts to design sizes.
14044         change name to aybabtu completely
14045
14046 2005-01-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14047
14048         * buildscripts/gen-emmentaler-scripts.py (outdir): add
14049         design_size to fontname
14050
14051 2005-01-19  Werner Lemberg  <wl@gnu.org>
14052
14053         * mf/feta-accordion.mf, mf/feta-klef.mf, mf/feta-pendaal.mf,
14054         mf/feta-schrift.mf: s/p/pat/ if a path variable.
14055
14056         * mf/feta-autometric.mf (set_char_box): Add code which emits
14057         specials for mf2pt1 if run with metapost.
14058         (to_bp): New macro for mf2pt1.
14059
14060 2005-01-18  Graham Percival  <gperlist@shaw.ca>
14061
14062         * Documentation/user/changing-defaults: added info on
14063         creating a copyright symbol.
14064
14065 2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14066
14067         * VERSION: release 2.5.9
14068         
14069 2005-01-18  Erlend Aasland  <erlenda@gmail.com>
14070
14071         * scm/auto-beam.scm: Simplify score-override-auto-beam-setting
14072
14073         * Documentation/user/notation.itely: Document
14074         score-override-auto-beam-setting Fix documentation for
14075         revert-auto-beam-setting.
14076
14077 2005-01-18  Werner Lemberg  <wl@gnu.org>
14078
14079         * scm/framework-ps.scm (ps-embed-cff): Fix DSC comments.
14080         (procset): New function to define a procset resource.
14081         (ps-embed-pfa): New function to define a font resource.
14082         (setup): New function to define a `Setup' environment.
14083         (preamble): Use new functions.
14084
14085         * ps/lilypond.defs (init-lilypond-parameters): New function to
14086         get rid of directly executed PS code.  Used in scm/framework-ps.scm.
14087
14088 2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14089
14090         * mf/GNUmakefile (MFTRACE_FLAGS): add --no-afm to MFTRACE_FLAGS
14091
14092 2005-01-17  Erlend Aasland  <erlenda@gmail.com>
14093
14094         * scm/define-markup-commands.scm: Change number->markletter-string
14095         to take two arguments (vector number). Add number->mark-alphabet-vector
14096         and markalphabet markup command.
14097
14098         * scm/translation-functions.scm: Add format-mark-box-alphabet,
14099         format-mark-alphabet, format-mark-box-barnumbers and
14100         format-mark-barnumbers. Fix bug in format-mark-box-numbers.
14101
14102 2005-01-17  Graham Percival  <gperlist@shaw.ca>
14103
14104         * Documentation/user/examples.itely: add SATB automatic piano
14105         reduction template.
14106
14107         * Documentation/user/notation.itely: added info about changing
14108         partcombine texts.  Also adds examples of alternate lyrics.
14109
14110         * Documentation/user/changing-defaults.itely: added warning
14111         about \RemoveEmptyStaffContext overriding previous changes.
14112
14113 2005-01-17  Werner Lemberg  <wl@gnu.org>
14114
14115         * buildscripts/mf-to-table.py: Use `FetaAlphabetEncoding' for
14116         feta-alphabet*.
14117
14118 2005-01-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14119
14120         * python/lilylib.py (make_ps_images): don't do final showpage for
14121         multi-page documents.
14122         
14123         * VERSION (MY_PATCH_LEVEL): release 2.5.8
14124
14125 2005-01-16  Graham Percival  <gperlist@shaw.ca>
14126
14127         * Documentation/user/lilypond.tely: changed order of appendices;
14128         unified index should be last.
14129
14130         * Documentation/user/notation.itely: add example of key signatures
14131         and info about Staff.printKeyCancellation.
14132
14133 2005-01-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14134
14135         * lily/include/repeated-music.hh (class Repeated_music): change
14136         into "namespace" class.
14137
14138         * lily/event.cc: remove Key_change_event.
14139
14140         * lily/include/transposed-music.hh (class Transposed_music): remove.
14141
14142         * lily/transposed-music.cc: remove
14143
14144         * lily/include/relative-music.hh: remove.
14145
14146         * lily/include/music-sequence.hh (struct Music_sequence): change
14147         into "namespace" class.
14148
14149         * lily/untransposable-music.cc (Module): remove
14150
14151         * lily/include/un-relativable-music.hh (Module): remove
14152
14153         * lily/include/untransposable-music.hh (Module): remove
14154
14155         * lily/include/music-list.hh (Module): remove file
14156
14157         * lily/un-relativable-music.cc: remove file.
14158
14159 2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
14160
14161         * lily/parser.yy: Compile fix.
14162
14163 2005-01-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14164
14165         * lily/include/music.hh (class Music): unvirtualize transpose().
14166
14167         * lily/sequential-music.cc: remove file.
14168
14169         * lily/include/lyric-combine-music.hh ("music.hh"): remove file.
14170
14171         * lily/slur-scoring.cc (get_best_curve): only switch on
14172         DEBUG_SLUR_SCORING for non NDEBUG builds.
14173
14174         * lily/include/music.hh (class Music): replace Music::start_mom()
14175         by start-callback property
14176
14177         * lily/include/grace-music.hh: remove file. 
14178
14179         * lily/stem.cc (height): robustness fix.
14180
14181         * lily/time-scaled-music.cc: remove file.
14182
14183         * lily/include/music.hh (class Music): include SCM init argument.
14184         (class Music): replace Music::get_length() virtual by
14185         length-callback property everywhere.
14186
14187         * scripts/convert-ly.py (conv): add  # to \property scalar value.
14188
14189         * mf/GNUmakefile: don't install *list.ly
14190
14191 2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
14192
14193         * mf/GNUmakefile (CFF_FILES): Bugfix: only big cheeses and braces.
14194
14195 2005-01-12  Werner Lemberg  <wl@gnu.org>
14196
14197         This patch addresses the following problems in the feta sources
14198         files which contribute to the fetaXX fonts.
14199
14200         . Many fixes for rasterization at low resolutions (consistent use of
14201           `vround' and `hround', integer shift values for paths, applying
14202           `eps' for mirrored paths, use of `define_whole_pixels' and
14203           friends, etc.) -- while this probably looks like a waste of time
14204           it has revealed deficiencies in some glyph shapes.  See comment at
14205           the end of feta-params.mf how vertical symmetry is achieved.
14206
14207         . The `---' operator has been replaced everywhere with `--'; this
14208           both improves and considerably reduces the font size after
14209           conversion with mf2pt1.
14210
14211         These change aren't explicitly mentioned below since virtually all
14212         glyphs are affected.
14213
14214         Other notable differences:
14215
14216         . Glyphs from feta-accordion.mf now have charboxes around the
14217           outline.
14218
14219         . Fixed incorrect charbox for `accDot'.
14220
14221         . The `rcomma' and `lcomma' glyphs were distorted due to a typo.
14222
14223         . Fixed position of the bow in the `upprall' glyph and its siblings.
14224
14225         . The bulb size in the `2/2 meter' and `4/4 meter' glyphs is now
14226           dependent on the staff line thickness to avoid touching the middle
14227           staff line at smaller sizes.
14228
14229         . Largely extended output for feta-testXX: Where useful, glyphs
14230         are shown both between and on staff lines.
14231
14232
14233         * mf/feta-params.mf (staff_space_rounded,
14234         stafflinethickness_rounded, linethickness_rounded,
14235         ledgerlinethickness_rounded, stemthickness_rounded): New variables.
14236         Update all code which uses them where appropriate.
14237         (feta_eps, feta_shift, feta_space_shift, feta_offset, feta_fillpen):
14238         New variables used to control rasterization at low resolutions.  Set
14239         to zero if feta code is processed with metapost.
14240
14241         * mf/feta-macros.mf (draw_staff, draw_staff_outline): Updated.
14242         (draw_rounded_block, draw_square_block): Updated to use `--' only.
14243         (flare_path): Updated.
14244         Make it work with `filldraw' (but only circular pens).
14245         (hfloor, vfloor, hceiling, vceiling): New macros.
14246
14247         * mf/feta-accordion.mf ("accDiscant", "accFreebase", "accStdbase"):
14248         Use `draw' again in mf mode to have good pixel dropout control.
14249         Fix intersection points of horizontal lines with circle.
14250         ("accDot"): Fix parameters for set_char_box.
14251         ("accOldEE"): Use `draw' again in mf mode to have good pixel dropout
14252         control.
14253
14254         * mf/feta-banier.mf: Updated.
14255
14256         * mf/feta-bolletjes.mf (remember_pic): New variable, used for
14257         testing.
14258         (undraw_inside_ellipse): Remove `center' argument.  Update all
14259         callers.
14260         (draw_brevis): New macro, called by "Brevis notehead".
14261         (draw_whole_triangle_head): New macro, called by "Whole
14262         trianglehead".
14263         (draw_small_triangle_head): Use `filldraw'.
14264
14265         * mf/feta-eindelijk.mf: Remove useless global group.
14266         Updated.
14267
14268         * mf/feta-klef.mf (draw_c_clef): Correct point positions for using
14269         `filldraw'.
14270
14271         * mf/feta-pendaal.mf: Updated.
14272
14273         * mf/feta-puntje.mf: Updated.
14274
14275         * mf/feta-schrift.mf (draw_very_long_fermata): Simplified to use
14276         less points.
14277         ("Flageolet"): Use `draw' again in mf mode to have good pixel
14278         dropout control.
14279         ("Varied Coda"): Use `draw_block'.
14280         (draw_comma): Fix typo.
14281         (draw_arpeggio_arrow): Use `draw' also in mf mode to have good
14282         pixel dropout control.
14283
14284         * mf/feta-slag.mf ("upprall", "downprall", "lineprall"): Fix start
14285         position of bow.
14286
14287         * mf/feta-timesig.mf (draw_C): Reduce bulb size for smaller design
14288         sizes.
14289
14290         * mf/feta-toevallig.mf (remember_pic): New variable, used for
14291         testing.
14292         (draw_meta_sharp): Much simplified.
14293         ("Sharp", "1/2 Sharp", "3/4 Sharp"): Don't rotate but shift.
14294
14295         * mf/feta-test-generic.mf: Include all files as in feta-generic.mf.
14296
14297 2005-01-13  Mats Bengtsson  <mabe@s3.kth.se>
14298
14299         * Documentation/user/notation.itely (Ancient rests): Fix typo
14300         (thanks Anthony)
14301
14302 2005-01-13  Jan Nieuwenhuizen  <janneke@gnu.org>
14303
14304         * scm/auto-beam.scm (score-override-auto-beam-setting): New function.
14305
14306         * lily/main.cc (setup_paths): Add cff.
14307
14308         * mf/GNUmakefile (foe): Include actual target %.cff.
14309         (INSTALLATION_OUT_SUFFIXES): Install CFF and SVG fonts too.
14310
14311 2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14312
14313         * lily/include/lily-lexer.hh (class Lily_lexer): lose hungarian _b
14314         suffix for main_input_b_.
14315
14316         * scm/music-functions.scm (toplevel-music-functions):
14317         precompute music lengths for music expressions.  
14318
14319 2005-01-11  Nicolas Sceaux  <nicolas.sceaux@free.fr>
14320
14321         * lily/include/input.hh (class Input): new `end_' slot for end of
14322         input. Renamed defined_str0_ to start_.
14323
14324         * lily/input.cc (Input): Add Input::Input (Input const &) and
14325         remove Input::Input (Source_file*, char const *). Use the new
14326         slots.
14327         (set_location): method used by bison to propagate input
14328         locations (YYLLOC_DEFAULT).
14329         (end_line_number, end_column_number, step_forward): new methods
14330         
14331         * lily/input-scheme.cc (ly:input-both-locations): new function,
14332         similar to ly:input-location, but also return the end line and
14333         column.
14334
14335         * lily/include/includable-lexer.hh: 
14336         * lily/includable-lexer.cc: 
14337         * lily/include/lily-lexer.hh (class Lily_lexer): 
14338         * lily/lily-lexer.cc (add_lexed_char): Move add_lexed_char from
14339         Includable_lexer to Lily_lexer, in order to update lexloc (the
14340         yylloc), a new slot of Lily_lexer.
14341         (here_input, LexerError): simplify by using the lexloc slot (aka
14342         yylloc)
14343
14344         * lily/lexer.ll: #define yylloc to use input locations (it may
14345         be useless here?). Fixed the #embedded_scm rule (step the location
14346         forward in order to skip the sharp sign before parsing the scheme
14347         expression)
14348
14349         * lily/include/lily-parser.hh (class Lily_parser): 
14350         * lily/lily-parser.cc: Remove push_spot(), pop_spot() and
14351         here_input()
14352         (parser_error): overload for more precise locations of errors.
14353
14354         * lily/parser.yy (YYLTYPE): set location type to Input
14355         (YYLLOC_DEFAULT): use Input::set_location()
14356         (yylex): add the YYLTYPE* location parameter.
14357         Clean push_spot()/pop_spot()/here_input(), and use @$, @1, etc.
14358         Give an Input parameter to THIS->parser-error() for more accurate
14359         messages.
14360
14361 2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14362
14363         * stepmake/aclocal.m4: do NDEBUG for optimizing builds.
14364
14365         * lily/include/beam.hh (DEBUG_QUANTING): performance: only switch
14366         on BEAMQUANTING for non-NDEBUG builds.
14367
14368         * lily/stem.cc (head_count): performance: avoid String::String()
14369         inside oft called function.
14370
14371 2005-01-09  Graham Percival  <gperlist@shaw.ca>
14372
14373         * Documentation/user/examles.itely: attempted fix for broken
14374         string quartet template.
14375
14376         * Documentation/user/notation.itely: remove unnecessary broken
14377         link.
14378
14379 2005-01-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14380
14381         * VERSION (PACKAGE_NAME): release 2.5.7
14382
14383 2005-01-09  Jan Nieuwenhuizen  <janneke@gnu.org>
14384
14385         * config.make.in (METAFONT): Append -progname=mf, fixes use with
14386         mf-nowin for teTeX-3.0.  Backportme.
14387
14388         * scm/output-svg.scm (utf8-string): New function.
14389
14390         * scm/output-gnome.scm (utf8-string): New function.
14391         (otf-name-mangling): Remove.
14392
14393         * lily/pango-font.cc (Pango_font): Use font string iso font
14394         filename for utf8-text.
14395
14396         * buildscripts/gen-emmentaler-scripts.py: Remove designsize from
14397         name.
14398
14399 2005-01-08  Graham Percival  <gperlist@shaw.ca>
14400
14401         * Documentation/user/notation.itely: add info about
14402         Staff.extraNatural = ##f in Pitches section.  Also
14403         fixed some minor issues in the Vocal music section.
14404
14405 2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14406
14407         * scm/output-ps.scm (white-text): comment out Helvetica font,
14408         which is broken for my GS install.
14409
14410         * lily/pango-font.cc (pango_item_string_stencil): use ink_rect,
14411         which provides a tighter bbox.
14412
14413         * scm/define-grobs.scm (all-grob-descriptions): remove all
14414         extra-offsets from definitions.
14415
14416 2005-01-08  Erlend Aasland  <erlenda@gmail.com>
14417
14418         * scm/output-lib.scm: Rename guitar-tunings to guitar-tuning and
14419         add tuning for 4-string bass and some common 4/5-string banjo
14420         tunings.  New function (four-string-banjo) turns a 5-string tuning
14421         into a 4-string tuning.  New function
14422         (fret-number-tablature-format-banjo) computes correct fret numbers
14423         on 5-string banjos.
14424
14425         * ly/engraver-init.ly: Default stringTunings = #guitar-tuning
14426         Add beam correction to TabVoice.
14427
14428         * scm/define-grobs.scm: Adjust notehead offset. Print fret numbers
14429         using bold font; makes tabs more readable.
14430
14431 2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14432
14433         * lily/font-select.cc (get_font_by_design_size): don't make
14434         Modified_font_metric; this causes trouble, since we don't know the
14435         font magnification from inside Pango_font::text_stencil()
14436
14437         * lily/all-font-metrics.cc (find_pango_font): take magnification argument.
14438
14439         * Documentation/user/notation.itely (The Lyrics context): comment out
14440         broken {Small ensembles} link.
14441
14442         * scm/framework-svg.scm (output-framework): change calling convention.
14443
14444         * lily/object-key-dumper-scheme.cc: new file.
14445
14446         * lily/object-key-undumper-scheme.cc: new file.
14447
14448         * lily/tweak-registration-scheme.cc: new file.
14449
14450         * lily/pango-select.cc (symbol_to_pango_variant): init local variable.
14451
14452         * Documentation/user/examples.itely (String quartet): uncomment
14453         broken example.
14454
14455         * lily/font-config.cc: new file.
14456
14457 2005-01-08  Jan Nieuwenhuizen  <janneke@gnu.org>
14458
14459         * scm/output-svg.scm: 
14460         * scm/output-gnome.scm: s/bigcheese/emmentaler.
14461
14462         * lily/score-engraver.cc (MUSIC_FONT): Use emmentaler20.
14463
14464 2005-01-07  Jan Nieuwenhuizen  <janneke@gnu.org>
14465
14466         * lily/general-scheme.cc (LY_DEFINE): Use snprintf (WAS: sprintf).
14467         Add headers.
14468
14469         * lily/GNUmakefile (general-scheme.o): Add version.hh dependency.
14470
14471 2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14472
14473         * mf/GNUmakefile (debian-mirror): rename bigcheese to emmentaler.
14474
14475         * lily/include/main.hh: lose _b hungarian suffixes for global
14476         variables.
14477
14478         * lily/include/lily-guile-macros.hh: new file.
14479
14480         * lily/pango-select-scheme.cc (LY_DEFINE): new file.
14481
14482         * lily/general-scheme.cc: new file. 
14483
14484         * lily/font-select.cc (get_font_by_design_size): retrieve
14485         PangoFont for (designsize . "pango-descr") entries.
14486
14487         * lily/lily-parser-scheme.cc: new file.
14488
14489         * lily/output-def-scheme.cc: new file.
14490
14491         * lily/paper-book-scheme.cc: new file.
14492
14493         * lily/duration-scheme.cc (LY_DEFINE): new file.
14494
14495         * lily/pitch-scheme.cc:  new file.
14496
14497         * scm/font.scm (add-cmr-fonts): use real dimens in font selection.
14498
14499 2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14500
14501         * lily/dimensions.cc (LY_DEFINE): add ly:{inch,cm,mm,bp,pt}.
14502
14503 2005-01-06  Graham Percival  <gperlist@shaw.ca>
14504
14505         * Documentation/user/notation.itely: minor editing.
14506
14507         * Documentation/user/changing-defaults: minor editing.
14508
14509         * Documentation/user/examples.itely: add template for
14510         string quartet part extraction; demonstrates tag.
14511
14512 2005-01-06  Erlend Aasland  <erlenda@gmail.com>
14513
14514         * Documentation/user/notation.itely: documents
14515         format-mark-box-letters and format-mark-box-numbers
14516
14517         * scm/define-context-properties.scm: change comment.
14518
14519 2005-01-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14520
14521         * scm/framework-ps.scm (output-classic-framework): new function:
14522         dump systems as separate .eps files (without fonts) and write a
14523         single collecting .tex file.
14524
14525 2005-01-05  Mats Bengtsson  <mabe@s3.kth.se>
14526
14527         * Documentation/user/notation.itely (Setting simple songs):
14528         Correct several errors in the equivalent formulation of
14529         \addlyrics. 
14530         (The Lyrics context): Corrected link to the SATB example.
14531
14532 2005-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14533
14534         * scm/lily.scm (completize-formats): new function
14535         (postprocess-output): new function
14536
14537         * lily/paper-book.cc (classic_output): change calling
14538         convention. Give basename as first argument. 
14539         remove Paper_book::post_processing().
14540
14541         * lily/lily-guile.cc (LY_DEFINE): ly:output-backend, new function.
14542
14543 2005-01-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14544
14545         * lily/paper-outputter.cc (LY_DEFINE): new function
14546         ly:outputter-close.
14547
14548         * lily/main.cc: change --format,-f to --backend,-b
14549
14550         * lily/include/main.hh: rename format to backend.
14551
14552         * scm/translation-functions.scm (format-mark-box-numbers): add.
14553         patch by Erlend Aasland
14554
14555 2005-01-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14556
14557         * lily/pango-font.cc (text_stencil): dump string as
14558         (utf-8-string FONTDESC UTF8) for use in -f gnome, -f svg.
14559
14560 2005-01-03  Jan Nieuwenhuizen  <janneke@gnu.org>
14561
14562         * configure.in (gui_b): Remove handy developer-only
14563         PKG_CONFIG_PATH settings that cater for Jan-and-Han-Wen ~/usr/pkg/
14564         CVS source installations (but break other non-default but correct
14565         PKG_CONFIG_PATH setups), as this is no longer developer-only.
14566
14567         * SConstruct: 
14568         * ps/GNUmakefile (INSTALLATION_FILES): teTeX-3.0
14569         compatibility (backportme).
14570
14571         * GNUmakefile.in: teTeX-3.0 compatibility (backportme).
14572
14573 2005-01-03  Werner Lemberg  <wl@gnu.org>
14574
14575         Prepare glyph shapes for mf2pt1 conversion.
14576
14577         * mf/feta-accordion.mf (accreg_pen): Removed.  No longer used.
14578         (accDiscant, accFreebase, accStdbase): Replace `draw' with
14579         `penstroke'.
14580         (accDot): Use `drawdot'.
14581         (accBayanbase): Replace `draw' with `draw_gridline'.
14582         (print_penpos): Moved to feta-macros.mf.
14583         (accOldEE): Replace `filldraw' with `penstroke'.
14584         Replace `draw' with `penstroke' and `drawdot'.
14585
14586         * mf/feta-banier.mf: Code clean-up.
14587         ("grace dash (up)", "grace dash (down)"): Replace `draw' with
14588         `fill'.
14589
14590         * mf/feta-bolletjes (draw_cross): Remove call to `labels'.
14591
14592         * mf/feta-eindelijk.mf (draw_rest_bulb, draw_eigth_rest): Add
14593         paremeter to control drawing of labels.  Update all callers.
14594
14595         * mf/feta-klef.mf (draw_c_clef): Use `&' not `..' to connect paths.
14596         (new_bulb): Return a bulb as a single path.  To do that, it now
14597         takes some more parameters.  Updated all callers.
14598         (draw_gclef): Major clean-up.  `draw' has been replaced with
14599         `penstroke', unnecessary outlines have been removed.
14600         Remove (unused) gnome-canvas code.
14601
14602         * mf/feta-macros.mf (print_penpos): New macro (from
14603         feta-accordion.mf).
14604         Other minor fixes.
14605
14606         * mf/feta-pendaal.mf ("Pedal asterisk"): Use `undrawdot'.
14607         ("Pedal dot"): Use `drawdot'.
14608         (draw_pedal_P): Add parameter to control drawing of labels.  Update
14609         all callers.
14610         Fix shape at top.
14611         (draw_pedal_e): Add parameter to control drawing of labels.  Update
14612         all callers.
14613         (draw_pedal_d): Add parameter to control drawing of labels.  Update
14614         all callers.
14615         Revert drawing direction.
14616
14617         * mf/feta-schrift.mf (draw_fermata): Use single path.
14618         (draw_short_fermata): Replace `filldraw' with `fill'.
14619         (draw_long_fermata, draw_very_long_fermata): Replace calls to
14620         `draw_rounded_block' with a single path.
14621         ("Thumb"): Draw full circle instead of mirroring segments.
14622         (draw_accent): New macro.
14623         ("> accent", "espr"): Use it.
14624         (draw_marcato): Replace `filldraw' and `draw' with `fill'.
14625         ("open (unstopped)"): Draw full circle instead of mirroring
14626         segments.
14627         (draw_vee): Removed.
14628         ("Upbow"): Use `draw_accent' instead of `draw_vee'.
14629         ("Downbow"): Replace calls to `draw_rounded_block' with a single
14630         path.
14631         ("Trill (`tr')"): Replace overlapping loop drawn with `draw' with
14632         partial pieces drawn with `fill' -- these do still overlap with the
14633         stem of the `t' but just once, not multiple times so that fontforge
14634         can handle it gracefully.
14635         Change other parts of the glyph so that fontforge's overlapping
14636         algorithm reliably works.
14637         (draw_heel): Replace `draw' with `fill'.
14638         (draw_toe): Use `draw_accent' instead of `draw_vee'.
14639         ("Flageolet"): Replace `draw' with `penstroke'.
14640         ("Segno"): Replace `filldraw' with `penstroke'.
14641         Replace `draw' with `drawdot'.
14642         ("Coda"): Replace `fill' with `penstroke', using a single path.
14643         ("Varied Coda"): Use less overlapping paths.
14644         (draw_arpeggio_arrow): Replace `filldraw' with `fill', using a
14645         single path.
14646
14647         * mf/feta-slag.mf (draw_trillelement): Put `clearxy' outside of
14648         group to better control the `labels' command.
14649         Rename argument to `offset' and use it actually.  Update all
14650         callers.
14651         Replace `filldraw' with `fill'.
14652         ("mordent", "prallmordent", "upmordent", "downmordent",
14653         "lineprall"): Replace `draw' with `draw_gridline'.
14654         ("upprall", "downprall"): Replace `draw' with `fill'.
14655
14656         * mf/feta-timesig.mf: Formatting.
14657
14658         * mf feta-toevallig.mf (draw_meta_flag): Move code to draw labels
14659         to...
14660         ("Flat"): Here.
14661         (draw_paren): Move code to draw labels to...
14662         ("Right Parenthesis"): Here.
14663
14664 2005-01-02  Graham Percival <gperlist@shaw.ca>
14665
14666         * Documentation/user/notation.itely: add example of \setTextDecresc
14667         and \setTextDim.
14668
14669 2005-01-02  Tatsuya Ono <tats_ono@infoseek.jp>
14670
14671         * scm/define-markup-commands.scm :  fix glyph-strings of
14672         accidentals and \note-by-number
14673
14674 2005-01-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14675
14676         * VERSION: 2.5.6 released.
14677         
14678         * ps/lilyponddefs.ps: put mm -> pt scaling in here.
14679
14680         * input/regression/new-markup-scheme.ly: oops. font-family=music
14681         -> font-encoding fetaMusic.  
14682
14683         * lily/main.cc: put default to PS.
14684
14685         * lily/tfm.cc: idem.
14686
14687         * lily/afm.cc: idem.
14688
14689         * lily/include/modified-font-metric.hh (struct
14690         Modified_font_metric): remove coding_scheme() method.
14691
14692         * input/mutopia/F.Schubert/morgenlied.ly: convert to utf8
14693
14694         * scripts/convert-ly.py (conv): crash on encountering \encoding.
14695
14696         * input/les-nereides.ly: convert to utf8
14697
14698         * lily/modified-font-metric.cc (text_dimension): idem.
14699
14700         * lily/parser.yy (TODO): idem.
14701
14702         * lily/include/lily-lexer.hh (class Lily_lexer): idem.
14703
14704         * lily/lexer.ll: remove encoding
14705
14706         * scm/framework-ps.scm (output-variables): separately scale the
14707         page to mm 
14708
14709         * lily/pango-font.cc (Pango_font): fix scaling.
14710
14711         * lily/font-metric.cc (design_size): design_size returns a
14712         dimension now as well.
14713
14714 2004-12-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14715
14716         * mf/GNUmakefile ($(outdir)/%.otf-table): use findstring. Fixes
14717         brace generation. 
14718
14719         * lily/text-metrics.cc (LY_DEFINE): use scm_c_make_hash_table().
14720
14721 2004-12-30  Jan Nieuwenhuizen  <janneke@gnu.org>
14722
14723         * mf/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Do not try to
14724         install unbuildable Fontmap and Fontmap.lily (Simon Aridis-Lang).
14725
14726 2004-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14727
14728         * mf/GNUmakefile ($(outdir)/%.otf-table): include parmesan20.lisp
14729         in first run as well.
14730
14731         * scm/paper.scm (layout-set-staff-size): use text-font-size in
14732         dimension less points (ie. 12 = 12 point)
14733
14734         * lily/pango-select.cc (select_pango_font): use find_scaled_font().
14735
14736         * lily/all-font-metrics.cc (find_pango_font): set description_
14737
14738         * lily/pango-font.cc (text_stencil): export size as well.
14739         (text_stencil): fix scaling and extents box.
14740
14741 2004-12-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14742
14743         * Documentation/topdocs/NEWS.texi (Top): add -f texstr
14744
14745         * Documentation/user/invoking.itely (Invoking lilypond): document
14746         texstr
14747
14748         * scripts/convert-ly.py (conv): add ancient rules.
14749
14750         * scm/clef.scm (c0-pitch-alist): replace - with .
14751
14752         * scripts/lilypond-book.py (process_snippets): add texstr support.
14753
14754         * scm/framework-texstr.scm (header): change extension to .textmetrics
14755
14756         * lily/lily-parser.cc (parse_file): do try_load_text_metrics for
14757         -f tex.
14758
14759         * lily/text-metrics.cc: new file.
14760         (try_load_text_metrics): new function
14761
14762         * lily/include/text-metrics.hh: new file.
14763
14764 2004-12-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14765
14766         * lily/include/lily-guile.hh (ly_lily_module_constant): rename
14767         ly_scheme_function to ly_lily_module_constant.
14768
14769         * lily/modified-font-metric.cc (text_dimension): try
14770         lookup_tex_text_dimension() first.
14771
14772         * lily/tfm.cc: new function ly:load-text-dimensions
14773
14774 2004-12-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14775
14776         * scm/output-texstr.scm (text): use \lilygetmetrics
14777
14778         * scm/framework-texstr.scm (header): dump in new format.
14779
14780         * tex/lilypond-tex-metrics: new file.
14781         
14782 2004-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
14783
14784         * lily/pango-font.cc (text_stencil): Quick try at glyph->charcode
14785         mapping.
14786         (index_to_charcode): New method.
14787
14788         * scm/output-ps.scm (glyph-string): 
14789         * scm/output-gnome.scm (glyph-string): Add FONT parameter.
14790
14791 2004-12-26  Jan Nieuwenhuizen  <janneke@gnu.org>
14792
14793         * scm/output-gnome.scm (FIXME-glyph-string): New function.  Cannot
14794         implement fully, need FONT to get to charcode.
14795
14796         * scm/lily.scm (ly:all-stencil-expressions): Add glyph-string.
14797
14798         * scm: Cleanups.
14799
14800         * Documentation/user/changing-defaults.itely: Fix internalsrefs
14801         {Tunable context properties},
14802         {All layout objects},
14803         {Music definitions}.
14804
14805 2004-12-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14806
14807         * VERSION: release 2.5.5
14808         
14809         * lily/main.cc: use TeX as default output format.
14810
14811         * flower/file-path.cc (find): try to open directly as well, so we
14812         find absolute path files. 
14813
14814         * lily/pango-select.cc: new file.
14815
14816         * scm/framework-ps.scm: remove all encoding code. 
14817         load pfb/pfa for PangoFont too.
14818         
14819         * lily/lily-guile.cc (ly_chain_assoc_get): new function.
14820
14821 2004-12-22  Werner Lemberg  <wl@gnu.org>
14822
14823         Prepare glyph shapes for mf2pt1 conversion.
14824
14825         * mf/feta-toevallig.mf ("Double Sharp"): Minor path fix.
14826
14827         * mf/feta-bolletjes.mf (penposx): New auxiliary macro.
14828         (define_triangle_shape): Use it to replace `draw' with `fill' and
14829         `unfill'.  Update all callers.
14830         (draw_slash): Replace `filldraw' with `fill'.  Update all callers.
14831         (draw_cross): Ditto.
14832         ("X-Circled notehead"): Replace `draw' with `fill' and `unfill'.
14833         Use penrazor for better conversion with mf2pt1.
14834         (generic_draw_solfa_note_shape, draw_solfa_note_shape,
14835         draw_solfa_quarter_note_shape, triangle): Removed.  Unused.
14836         (draw_do_head, draw_re_head, draw_mi_head, draw_fa_head,
14837         draw_la_head, draw_ti_head): Replace `filldraw' with
14838         `fill'.  Update all callers.
14839
14840 2004-12-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14841
14842         * lily/paper-book.cc (output): revert: only allow a single output
14843         format.
14844
14845         * lily/include/pango-font.hh: new file.
14846
14847         * lily/pango-font.cc: new file.
14848
14849         * lily/font-metric.cc (text_stencil): new routine
14850
14851         * lily/all-font-metrics.cc (find_pango_font): new routine.
14852
14853         * lily/include/font-metric.hh (struct Font_metric): add
14854         text_stencil()
14855
14856         * configure.in (PKG_CONFIG_PATH): require PANGO_FT2
14857
14858 2004-12-22  Werner Lemberg  <wl@gnu.org>
14859
14860         Prepare glyph shapes for mf2pt1 conversion.
14861
14862         * mf/feta-macros.mf, mf_feta-eindelijk.mf: Some formatting.
14863
14864         * mf/feta-toevallig.mf: Formatting.
14865         (draw_meta_sharp): Modify path to replace `filldraw' with `fill'.
14866         ("Natural"): Fix paths to allow better postprocessing.
14867         (draw_meta_flat): Use `z3l' as additional point in path to get
14868         better conversion with mf2pt1.
14869         Other minor cleanups.
14870         ("3/4 Flat"): Add auxiliary points and modify path to replace
14871         `draw' with `fill'.
14872         ("Double Sharp"): Mirror path segments instead of picture elements
14873         to get a single outline.
14874         Modify path to replace `filldraw' with `fill'.
14875
14876 2004-12-22  Graham Percival  <gperlist@shaw.ca>
14877
14878         * input/test/unfold-all-repeats.ly: added file back.
14879
14880         * Documentation/user/notation.itely,
14881         Documentation/user/programming-interface.itely
14882         Documentation/user/changing-defaults.itely: fixed misc broken
14883         links to input/test/ files.
14884
14885 2004-12-22  Jan Nieuwenhuizen  <janneke@gnu.org>
14886
14887         * tex/texinfo.tex: Update.  We should not be distributing this,
14888         but since we do, use latest version.
14889
14890         * Documentation/user/macros.itexi: Comment-out \fetaflat,
14891         \fetasharp.  Fixes make web.  FIXME: make usable (compatible?) TeX
14892         macros for feta glyphs.
14893
14894 2004-12-22  Graham Percival  <gperlist@shaw.ca>
14895
14896         * Documentation/user/changing-defaults.itely: fix index for set.
14897
14898         * Documentation/user/converters.itely: added convert-ly bugs list
14899         from CVS.
14900
14901 2004-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
14902
14903         * python/lilylib.py (setup_environment): Set GS_FONTPATH, GS_LIB
14904         to empty.  Fixes make web, using gs-gpl-8.01.  In fact,
14905         gs-afpl-8.50 has more trouble with make web (ie, uses *a lot* more
14906         resourses; 3x MAXSIZE, 4x MAXRSS, 1.5x user).
14907
14908         * mf/GNUmakefile (pfa_warning): Use less broken check.
14909
14910         * python/lilylib.py (setup_environment): Remove cruft from
14911         GS_FONTPATH.
14912
14913         * configure.in: Bump mftrace requirement to 1.1.1.
14914
14915 2004-12-20  Jan Nieuwenhuizen  <janneke@gnu.org>
14916
14917         * scm/output-svg.scm (beam): Use polygon.
14918
14919         * scm/lily-library.scm: Bugfix.
14920
14921         * Documentation/user/invoking.itely (Invoking lilypond): Bugfix.
14922
14923         * mf/GNUmakefile (ALL_GEN_FILES): Remove unbuildable Fontmap.lily.
14924
14925 2004-12-19  Werner Lemberg  <wl@gnu.org>
14926
14927         Prepare glyph shapes for mf2pt1 conversion.
14928
14929         * mf/feta-eindelijk: Some formatting.
14930         (multi_rest_x, multi_beam_height): Removed.  Unused.
14931         ("Quarter rest"): Use `intersectiontimes' to create a single
14932         outline.
14933         (rest_crook): Removed.  Unused.
14934         (draw_rest_bulb): Return path (without filling).  Update callers.
14935         Simplified.
14936         (draw_eighth_rest, "16th rest", "32th rest", "64th rest",
14937         "128th rest"): Simplify `pat'.
14938         Create single outline.
14939
14940 2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
14941
14942         * mf/GNUmakefile (ALL_GEN_FILES):
14943         (INSTALLATION_OUT_SUFFIXES): Remove unbuildable fonts.scale.
14944
14945         * scm/output-svg.scm (polygon, draw-line, dashed-line): New
14946         function.
14947
14948 2004-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14949
14950         * scm/output-texstr.scm (placebox): add routine
14951
14952         * VERSION (PACKAGE_NAME): release 2.5.4
14953
14954         * scm/framework-texstr.scm (output-framework): new file.  
14955
14956         * scm/output-texstr.scm: new file. Collect (TEXT . ) calls for TeX
14957         processing.
14958
14959         * Documentation/user/invoking.itely (Invoking lilypond): add SVG
14960
14961         * stepmake/stepmake/metafont-rules.make: make single SVG/PFA/PFB
14962         rule.
14963
14964         * configure.in (gui_b): bump mftrace requirement to 1.1.0
14965
14966         * mf/feta-bolletjes.mf (triangle): add s to 0triangle.
14967
14968         * mf/GNUmakefile (ALL_GEN_FILES): make SVG files too.
14969
14970 2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
14971
14972         * scm/framework-svg.scm (dump-page): Implement landscape.
14973
14974 2004-12-18  Jan Nieuwenhuizen  <janneke@gnu.org>
14975
14976         * lily/main.cc (setup_paths): Add svg to search path.
14977
14978         * scm/output-svg.scm:
14979         * scm/framework-svg.scm: Add pageSet.  Update.
14980         (dump-fonts): New function.
14981         (output-framework): Use it.
14982
14983         * mf/GNUmakefile: 
14984         * buildscripts/gen-bigcheese-scripts.py: Also generate SVG font.
14985
14986 2004-12-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14987
14988         * tex/lilyponddefs.tex: comment out new ifpdf code.
14989
14990 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
14991
14992         * GNUmakefile.in: 
14993         * SConstruct (symlink): Replace afm by otf.
14994
14995         * scm/framework-gnome.scm (gnome-main): Remove invocation of
14996         ly:pango-add-afm-decoder.
14997
14998         * lily/lily-guile.cc ("ly:pango-add-afm-decoder"): Build fix: Remove.
14999
15000 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15001
15002         * scm/output-ps.scm (new-text): don't access t glyph for getting
15003         space dimension.
15004
15005         * ly/init.ly: warn about \version
15006
15007         * lily/lexer.ll: set version-seen?
15008
15009 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
15010
15011         * scm/output-svg.scm (string->entities): Update.
15012
15013 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15014
15015         * lily/main.cc (setup_paths): replace afm by otf for path. 
15016
15017         * lily/pangofc-afm-decoder.cc: remove.
15018
15019         * lily/include/pangofc-afm-decoder.hh: remove.
15020
15021         * scm/framework-scm.scm (output-framework): new file.
15022
15023         * mf/GNUmakefile: remove SAUTER_FONTS.
15024         remove SVG/sodipodi hacks.
15025
15026         * scm/lily-library.scm (stderr): move stderr.
15027
15028         * mf/GNUmakefile: remove AFM support.
15029
15030         * buildscripts/mf-to-table.py (base): remove AFM support.
15031
15032         * lily/open-type-font.cc (design_size): use design_size
15033
15034 2004-12-17  Pedro Kroger  <kroeger@pedrokroeger.net>
15035
15036         * lily/font-metric.cc (LY_DEFINE): Fix the docstring.
15037
15038 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
15039
15040         * mf/GNUmakefile: Generate combined aybabtu info.
15041         * mf/aybabtu.pe.in (i): Load it.
15042
15043         * scm/framework-tex.scm (otf-font-load-command): Bugfix: subfonts
15044         are not symbols.
15045
15046         * lily/include/open-type-font.hh (count): New method.
15047
15048         * mf/aybabtu.pe.in: Typo.
15049
15050         * Documentation/user/out/lilypond-internals.nexi (Scheme
15051         functions): Typo.
15052
15053         * lily/include/guile-compatibility.hh (SCM_HASHTABLE_P): Add compat.
15054
15055 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15056
15057         * buildscripts/gen-bigcheese-scripts.py (i): use symbols for
15058         subfonts.
15059
15060         * scm/output-tex.scm (named-glyph): new function. This fixes TeX output.
15061
15062         * scm/framework-tex.scm (otf-font-load-command): load subfonts.
15063         (tex-font-command-raw): new function.
15064
15065         * lily/include/virtual-font-metric.hh (Module): remove file
15066
15067         * lily/virtual-font-metric.cc (Module): remove file.
15068         
15069
15070         * lily/open-type-font.cc (LY_DEFINE): ly:otf-font-glyph-info
15071         (get_indexed_char): read bbox from lily table if present.
15072
15073 2004-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15074
15075         * mf/GNUmakefile ($(outdir)/aybabtu.subfonts): rule for
15076         aybabtu.subfonts
15077
15078         * mf/feta-beugel.mf (y): don't number consecutively, instead, use
15079         global glyphname. Enables more than 64 glyphs in the OTF.
15080
15081 2004-12-16  Jan Nieuwenhuizen  <janneke@gnu.org>
15082
15083         * scm/font.scm (add-music-fonts): Load aybabtu iso all separate
15084         braces.
15085
15086         * lily/open-type-font.cc (design_size): Use 12 as default for
15087         design size.
15088
15089         * mf/aybabtu.pe.in: New file.  Merge all our braces.
15090
15091         * mf/GNUmakefile: Generate aybabtu.
15092
15093         * tex/lilyponddefs.tex: teTeX 3.0 pdfetex fix.
15094
15095 2004-12-14  Jan Nieuwenhuizen  <janneke@gnu.org>
15096
15097         * scm/lily-library.scm (char->unicode-index): Remove.
15098
15099         * scm/output-gnome.scm (text): Bugfix for plain string input.
15100         Updates.
15101
15102         * scm/output-svg.scm (svg-font): Add weight to font selection.
15103
15104 2004-12-14  Mats Bengtsson  <mabe@s3.kth.se>
15105
15106         * Documentation/topdocs/INSTALL.texi (Top): Point to
15107         buildscripts/out/clean-fonts instead of
15108         buildscripts/clean-fonts.sh. 
15109
15110 2004-12-13  Graham Percival  <gperlist@shaw.ca>
15111
15112         * input/regression/figured-bass.ly: attempt to clarify text.
15113
15114         * Documentation/user/notation.tely: add cindex for tag, attempt to
15115         add figured bass example.
15116
15117         * Documentation/user/changing-defaults: basic editing.
15118
15119 2004-12-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15120
15121         * buildscripts/gen-bigcheese-scripts.py (i): load .subfonts table. 
15122
15123         * lily/open-type-font.cc (LY_DEFINE): new function
15124         ly:font-sub-fonts
15125
15126         * lily/include/font-metric.hh (struct Font_metric): new method
15127         sub_fonts()
15128
15129         * lily/vaticana-ligature-engraver.cc (transform_heads): replace
15130         . with - in add.stem.
15131         
15132 2004-12-13  Jan Nieuwenhuizen  <janneke@gnu.org>
15133
15134         * scm/encoding.scm (coding-alist): Fix encodings for fetaNumber
15135         and fetaDynamic.
15136
15137         * lily/rest.cc (glyph_name): Change - to . .
15138
15139         * scm/output-gnome.scm (text): Hello world, again.
15140
15141         * scm/output-svg.scm (named-glyph): New function.  Hello world!
15142
15143         * lily/modified-font-metric.cc (index_to_charcode): New method.
15144
15145         * lily/include/font-metric.hh (index_to_charcode): New function.
15146
15147         * lily/font-metric.cc (ly:font-glyph-name-to-charcode): Use it in
15148         new function.
15149         (ly:font-glyph-to-index): Remove.
15150
15151 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15152
15153         * lily/open-type-font.cc (make_index_to_charcode_map): new method.
15154
15155         * mf/feta-autometric.mf (code): remove tex name from fet_beginchar.
15156
15157         * lily/open-type-font.cc (load_scheme_table): new function
15158
15159         * lily/dots.cc (print): replace - 
15160
15161         * lily/open-type-font.cc (attachment_point): new function.
15162         (load_table): read LILC table
15163
15164         * buildscripts/gen-bigcheese-scripts.py (Module): new
15165         file. Generate FF scripts.
15166
15167         * mf/feta-din10.mf: idem.
15168
15169         * mf/feta-nummer10.mf: remove mf files.
15170
15171         * mf/feta-alphabet.mf (dynamic_design_size): merge din and number font.
15172
15173 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
15174
15175         * lily/lily-guile.cc: Use scm_from_locale_stringn.
15176
15177         * lily/include/guile-compatibility.hh (scm_from_locale_stringn): Add
15178         compatibility.
15179
15180 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15181
15182         * lily/open-type-font.cc (get_indexed_char): scale metrics by
15183         design-size and units_per_EM.
15184
15185         * mf/bigcheese.pe.in: set PUA codepoints before loading din & nummer.
15186
15187 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
15188
15189         * mf/bigcheese.pe.in (i): Map to 0xe000 (PUA) for testing, which
15190         does not crash fontforge.
15191
15192         * scm/lily-library.scm (char->unicode-index): Hack to map onto
15193         PUA.
15194
15195 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15196
15197         * scm/framework-ps.scm (ps-embed-cff): new function.
15198
15199         * lily/lily-guile.cc (LY_DEFINE): make ly:gulp-file binary proof.
15200
15201 2004-12-12  Werner Lemberg  <wl@gnu.org>
15202
15203         * mf/bigcheese.pe.in: Add PUA mapping.
15204         Don't create Type 42 but bare CFF font.
15205
15206 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
15207
15208         * scm/output-gnome.scm (placebox): Hackery to get bigcheese symbols
15209         within canvas boundaries.
15210
15211         * mf/merge.pe.in: Set font names, version, license GPL.
15212
15213         * make/substitute.make: Add FONTFORGE.
15214
15215         * config.make.in (FONTFORGE): Add.
15216
15217         * configure.in (gui_b): Use PATH_PROG for fontforge.
15218
15219 2004-12-11  Graham Percival  <gperlist@shaw.ca>
15220
15221         * scm/define-markup-commands.scm: add baseline-skip to info
15222         about \column.
15223
15224 2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
15225
15226         * lily/font-metric.cc (ly:font-get-glyph-index): New function.
15227
15228         * scm/output-gnome.scm (named-glyph): Use it.
15229
15230         * scm/lily.scm (ly:all-stencil-expressions): Add named-glyph.
15231
15232         * flower/string.cc (substitute_char): Rename, rewrite, modify this.
15233         (upper_string, lower_string, reverse_string): Remove.
15234
15235         * configure.in (fontforge): Reinstate version check.
15236
15237         * ly/engraver-init.ly: Fix clef glyph names.
15238
15239         * lily/time-signature.cc (special_time_signature): Fix fraction
15240         glyph names.
15241
15242 2004-12-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15243
15244         * mf/merge.pe: new file.
15245
15246         * lily/freetype.cc: new file.
15247
15248         * lily/include/open-type-font.hh (class Open_type_font): new file.
15249
15250         * lily/include/freetype.hh: new file.
15251
15252         * lily/open-type-font.cc: new file.
15253
15254         * lily/all-font-metrics.cc (find_otf): new function.
15255
15256 2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
15257
15258         * lily/time-signature.cc (special_time_signature): Fix.
15259
15260         * configure.in (PKG_CONFIG_PATH): Remove stray `i'.  Check for
15261         GTK2 before checking for pango.  Fixes -fgnome.
15262
15263         * lily/font-metric.cc (LY_DEFINE): Also rename C name to match
15264         Scheme name.
15265
15266         * scm/define-markup-commands.scm:
15267         * scm/safe-lily.scm: Bugfix: ly:font-by-name.
15268
15269         * configure.in: Require makeinfo 4.7 (needed for @ifdocbook).
15270
15271         * stepmake/aclocal.m4 (STEPMAKE_GET_VERSION): Grok fontforge-like
15272         date versions.  Fixes configure.
15273         (STEPMAKE_CHECK_VERSION): Support optional actual program version
15274         argument.
15275
15276 2004-12-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15277
15278         * buildscripts/mf-to-table.py (write_ps_encoding): write real
15279         names in .enc
15280
15281         * lily/*.cc: use '.' iso. '-' for separating glyph name elements.
15282
15283 2004-12-09  Graham Percival  <gperlist@shaw.ca>
15284
15285         * Documentation/user/changing-defaults.itely: add info about
15286         make-dynamic-script
15287
15288         * Documentation/user/notation.itely: add link in dynamics to
15289         section about make-dynamic-script.
15290
15291 2004-12-09  Christian hitz  <chhitz@gmx.net>
15292
15293         * lily/lily-guile.cc: change MACOS_X to __APPLE__
15294
15295 2004-12-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15296
15297         * buildscripts/mf-to-table.py (parse_logfile): use . for
15298         concatting name and group.
15299         (parse_logfile): use M for Minus (negative.)
15300
15301         * lily/include/type-swallow-translator.hh
15302         (DECLARE_EVENT_SWALLOWER): ENTER_DESCRIPTION -> ADD_TRANSLATOR
15303
15304         * lily/*.cc: cosmetics around = sign.
15305
15306         * lily/paper-column.cc (Paper_column): copy rank_. This fixes
15307         lyric spacing on the penultimate column.
15308
15309 2004-12-05  Christian Hitz  <chhitz@gmx.net>
15310
15311         * configure.in:
15312         * lily/accidental-placement.cc:
15313         * lily/bar-line.cc:
15314         * lily/beam-concave.cc:
15315         * lily/beam-quanting.cc:
15316         * lily/beam.cc:
15317         * lily/bezier-bow.cc:
15318         * lily/bezier.cc:
15319         * lily/break-align-interface.cc:
15320         * lily/custos.cc:
15321         * lily/dimension-cache.cc:
15322         * lily/dot-column.cc:
15323         * lily/font-metric.cc:
15324         * lily/font-select.cc:
15325         * lily/gourlay-breaking.cc:
15326         * lily/grob-property.cc:
15327         * lily/grob.cc:
15328         * lily/lily-guile.cc:
15329         * lily/line-spanner.cc:
15330         * lily/lookup.cc:
15331         * lily/lyric-extender.cc:
15332         * lily/lyric-hyphen.cc:
15333         * lily/mensural-ligature.cc:
15334         * lily/midi-def.cc:
15335         * lily/misc.cc:
15336         * lily/note-collision.cc:
15337         * lily/note-column.cc:
15338         * lily/note-head.cc:
15339         * lily/paper-outputter.cc:
15340         * lily/percent-repeat-item.cc:
15341         * lily/rest-collision.cc:
15342         * lily/side-position-interface.cc:
15343         * lily/simple-spacer.cc:
15344         * lily/slur-configuration.cc:
15345         * lily/slur-scoring.cc:
15346         * lily/slur.cc:
15347         * lily/spaceable-grob.cc:
15348         * lily/spacing-spanner.cc:
15349         * lily/spanner.cc:
15350         * lily/staff-symbol-referencer.cc:
15351         * lily/stem.cc:
15352         * lily/stencil.cc:
15353         * lily/system-start-delimiter.cc:
15354         * lily/system.cc:
15355         * lily/text-item.cc:
15356         * lily/tie.cc:
15357         * lily/tuplet-bracket.cc:
15358         * lily/vaticana-ligature.cc: Fix for MacOS X: use <math.h> instead of
15359         <cmath> beacause isinf/isnan is undefined in <cmath>
15360
15361 2004-12-03  Mats Bengtsson  <mabe@s3.kth.se>
15362
15363         * cygwin/lily-wins.py (stat): remove old flag -p when calling lilypond.
15364
15365 2004-12-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15366
15367         * VERSION: release 2.5.3
15368         
15369 2004-11-29  Arno Waschk <arno@arnowaschk.de>
15370
15371         * mf/feta-schrift.mf: added <>-like articulation mark as "espressivo"
15372
15373 2004-12-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15374
15375         * scm/music-functions.scm (cue-substitute): voice counts start at 0.
15376
15377         * lily/note-head.cc (internal_print): always try the "s" head if
15378         u/d not found.
15379
15380         * scm/titling.scm (marked-up-headfoot): reinstate default tagline.
15381
15382 2004-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15383
15384         * mf/parmesan-heads.mf (overdone_heads): typos.
15385
15386 2004-11-30  Nicolas Sceaux  <nicolas.sceaux@free.fr>
15387
15388         * lily/parser.yy (markup): in markups, { .. } without command
15389         before are also flattened, ie \line must be explicitely used.
15390
15391         * Documentation/user/changing-defaults.itely:
15392         * Documentation/user/notation.itely: 
15393         * input/wilhelmus.ly: 
15394         * input/regression/instrument-name-markup.ly: 
15395         * input/regression/markup-score.ly: 
15396         * input/regression/new-markup-scheme.ly: 
15397         * input/regression/new-markup-syntax.ly: 
15398         * input/test/coriolan-margin.ly: use \line in markups where
15399         appropriate
15400         
15401 2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
15402
15403         * scm/new-markup.scm (map-markup-command-list): helper function
15404         used in parser.yy to map markup commands on a markup list.
15405
15406         * lily/parser.yy: get rid off < > in markups by treating { } as
15407         real lists.
15408
15409         * lily/lexer.ll: remove < > from markup lexer mode.
15410
15411         * scripts/convert-ly.py (conv): add rule for converting 
15412         \markup < > to \markup { }
15413
15414         * ly/titling-init.ly: 
15415         * input/test/coriolan-margin.ly: 
15416         * input/regression/new-markup-syntax.ly: 
15417         * input/regression/new-markup-scheme.ly: 
15418         * input/regression/multi-measure-rest-text.ly: 
15419         * input/regression/markup-stack.ly: 
15420         * input/regression/markup-score.ly: 
15421         * input/regression/instrument-name-markup.ly: 
15422         * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: 
15423         * input/mutopia/R.Schumann/romanze-op28-2.ly: 
15424         * input/mutopia/J.S.Bach/wtk1-fugue2.ly: 
15425         * input/wilhelmus.ly: 
15426         * Documentation/user/notation.itely: 
15427         * Documentation/user/music-glossary.tely: 
15428         * Documentation/user/changing-defaults.itely: change < > to { } in
15429         markups
15430
15431 2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15432
15433         * lily/accidental-placement.cc (position_accidentals): shortcut if
15434         no accidentals to place.
15435
15436 2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
15437
15438         * scm/define-grob-properties.scm (all-user-grob-properties): fixed
15439         typo s/ly:dimension ?/ly:dimension?/
15440
15441         * input/regression/lily-in-scheme.ly: 
15442         * input/regression/music-function.ly: 
15443         * ly/spanners-init.ly (assertBeamSlope): 
15444         * scm/music-functions.scm (def-grace-function): add the paper
15445         argument to music function definitions.
15446
15447 2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15448
15449         * lily/moment.cc (LY_DEFINE):
15450         ly:moment-main-{denominator,numberator}, new function.
15451
15452         * lily/score-engraver.cc (typeset_all): assign to column on basis
15453         of axis-group-parent-X setting.
15454
15455         * lily/axis-group-engraver.cc (process_acknowledged_grobs): do
15456         add_element() on basis of axis-group-parent-Y setting.
15457
15458         * lily/grob.cc: add axis-group-parent-{XY} properties.
15459
15460         * input/regression/spacing-stick-out.ly: new file.
15461
15462         * lily/simple-spacer.cc (add_columns): use binary search for
15463         setting column rods. Changes O(n^2) to O(n log(n)) for
15464         constructing spacing problem from columns.
15465         (add_columns): read allow-outside-line to make sure no texts stick
15466         out.
15467         (solve): Simple_spacer::is_active() only determines
15468         satisfies_constraints_ for non-ragged typesetting.
15469
15470         * lily/simultaneous-music.cc (to_relative_octave): only set
15471         old_relative_used if return pitch actually changed.
15472
15473         * scm/define-context-properties.scm
15474         (all-user-translation-properties): change to match implementation.
15475
15476         * python/lilylib.py: Replace re.match by re.search and adds "-c
15477         showpage" to the gs command line (Johannes Schindelin)
15478
15479         * scm/framework-ps.scm (output-preview-framework): sanitize bbox
15480         before processing. Prevents crash when inf is in the extent.
15481
15482         * scm/define-markup-commands.scm (note-by-number): add "s" to
15483         "noteheads-" glyphname.
15484  
15485         * lily/parser.yy (Generic_prefix_music): supply parser argument to
15486         music function as well.
15487         
15488 2004-11-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15489
15490         * VERSION: release 2.5.2
15491
15492         * Documentation/user/changing-defaults.itely (Creating titles):
15493         add breakbefore variable.
15494
15495         * lily/paper-book.cc (set_system_penalty): new function. Set
15496         penalty_ based on breakBefore setting
15497
15498         * lily/context-specced-music-iterator.cc (construct_children):
15499         interpret special context id $uniqueContextId 
15500
15501         * lily/context.cc (create_unique_context): new method. Move
15502         creation of unique (\new) contexts into interpreting phase. This
15503         makes
15504
15505           foo= \new Staff ..
15506           << \foo \foo >>
15507
15508         produce 2 staves.
15509         
15510
15511         * scm/define-music-properties.scm (all-music-properties): add
15512         quoted-voice-direction
15513
15514         * ly/music-functions-init.ly: killCues function.
15515
15516         * scm/music-functions.scm (cue-substitute): move creation of voice
15517         contexts further to the back. 
15518
15519 2004-11-25  Werner Lemberg  <wl@gnu.org>
15520
15521         * tex/GNUmakefile ($(outdir)/latin1.enc): Replace `/minus' with
15522         `/hyphen' in encoding vector to get correct glyph name for EC fonts.
15523
15524 2004-11-24  Erik Sandberg  <ersa9195@student.uu.se>
15525
15526         * buildscripts/guile-gnome.sh: Fixed typo.
15527
15528 2004-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15529
15530         * lily/lexer.ll: add < >  to markup lexer mode (backportme)
15531
15532         * scripts/abc2ly.py (dump_slyrics): add ord(). 
15533
15534         * lily/note-heads-engraver.cc (process_music): add shapeNoteStyles
15535         to regular engraver. 
15536
15537 2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15538
15539         * mf/feta-bolletjes.mf (triangle): rewrite solfa heads.
15540
15541 2004-11-22  Jan Nieuwenhuizen  <janneke@gnu.org>
15542
15543         * scm/define-markup-commands.scm (fill-line): Typo.
15544
15545         * buildscripts/guile-gnome.sh (GGVERSION): Build update for 2.7.96
15546         and newer.
15547
15548 2004-11-22  Erik Sandberg  <ersa9195@student.uu.se>
15549
15550         * ly/dynamic-scripts-init.ly: Fixed typo.
15551
15552 2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15553
15554         * mf/feta-bolletjes.mf (overdone_heads): cleanup triangle
15555         note-head, to have different attachment points for up and down.
15556
15557         * mf/feta-bolletjes.mf: merge solfa heads into main note heads.
15558
15559         * mf/feta-generic.mf (else): remove solfa.
15560
15561         * mf/feta-bolletjes.mf (tishape): remove unicode test.
15562
15563         * scm/define-context-properties.scm
15564         (all-user-translation-properties): add shapeNoteStyles property.
15565
15566         * lily/shape-note-heads-engraver.cc (process_music): new file.
15567
15568         * lily/event.cc (transpose): call Event::transpose() for
15569         transposing the tonic.
15570
15571 2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
15572
15573         * scm/output-gnome.scm: Save some pointers about pango/fontconfig
15574         Unicode/OpenType and AFM.
15575
15576         * lily/include/guile-compatibility.hh (scm_from_bool): Add.
15577
15578 2004-11-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15579
15580         * lily/grob.cc (Grob): idem. Plugs mem leaks. 
15581
15582         * lily/context.cc (Context): unprotect key from ctor.
15583
15584         * scm/stencil.scm (stack-lines): return empty-stencil if argument
15585         is '()
15586         (stack-stencils): idem.
15587
15588         * Documentation/user/changing-defaults.itely (Creating titles):
15589         document new title layout options.
15590
15591         * lily/parser.yy (lilypond_header_body): copy previous
15592         $globalheader if present.
15593
15594         * lily/ly-module.cc (LY_DEFINE): rename ly:import-module to
15595         ly:module-copy
15596         
15597         * scm/page-layout.scm (marked-up-headfoot): remove old functions.
15598
15599         * scm/titling.scm: remove old titling functions
15600
15601         * lily/stencil.cc (translate): remove absolute dimension.
15602
15603         * ly/titling-init.ly (oddFooterMarkup): new file. Generate titles
15604         via markup.
15605
15606         * scm/page-layout.scm (marked-up-headfoot): create header/footer
15607         field from user-supplied markup
15608
15609         * scm/define-markup-commands.scm (on-the-fly): new markup
15610         command. Enter SCM markup procedure directly in Scheme.
15611         (fromproperty): new markup command. Read markup from props argument.
15612
15613         * scm/titling.scm (marked-up-title): create title via
15614         user-specified markup. 
15615
15616         * scm/define-markup-commands.scm (column): remove empty stencils
15617         from column.
15618
15619         * lily/ly-module.cc (LY_DEFINE): use ly_module_lookup(). This does
15620         not have side-effect of creating variable stub.
15621
15622         * lily/stencil-scheme.cc (LY_DEFINE): add ly:stencil-empty?
15623
15624 2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
15625
15626         * scm/encoding.scm (coding-alist): 
15627         * scm/font.scm (add-ec-fonts):
15628         * ly/paper-defaults.ly: Use actual name for EC fontencoding:
15629         Extended-TeX-Font-Encoding---Latin.
15630
15631         * lily/side-position-interface.cc (general_side_position): Add
15632         actual offset to error message (avoid constant error messages).
15633
15634         * lily/all-font-metrics.cc (find_font): Add "lm" to try-AFM-first
15635         block.
15636
15637         * lily/font-select.cc (select_encoded_font)
15638         (get_font_by_mag_step, get_font_by_design_size): 
15639         * lily/modified-font-metric.cc (Modified_font_metric): 
15640         * lily/paper-def.cc (find_scaled_font): Add font_encoding parameter.
15641
15642         * scm/encoding.scm (coding-alist): Add fetaDynamic.
15643         (read-encoding-file): Bugfix: do not require space after bracket.
15644
15645         * scm/font.scm (add-cork-lm-fonts): Remove lmbxi8 and lmbxi14,
15646         these do not exist.
15647
15648 2004-11-20  Graham Percival  <gperlist@shaw.ca>
15649
15650         * Documentation/user/notation.itely: added info about typesetting
15651         boxed bar numbers.
15652
15653 2004-11-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15654
15655         * flower/interval.cc (T_to_string): gcc4 fixes.
15656
15657         * scm/define-markup-commands.scm (fill-line): use
15658         stack-stencils. This fixes problems with putting already centered
15659         stencils in a line.
15660
15661         * VERSION: release 2.5.1
15662
15663         * lily/bar-line.cc (get_staff_bar_size): add line thickness.
15664
15665 2004-11-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15666
15667         * input/example-[1-3].ly: simplify.
15668
15669         * lily/cluster-engraver.cc (try_music): react to busy-playing-event
15670
15671         * scm/output-ps.scm (new-text): new function. Use glyphshow to
15672         show glyphs.
15673
15674         * scm/encoding.scm (decode-byte-string): new function.
15675
15676         * scripts/convert-ly.py (conv): add warning about
15677         set-global-staff-size.
15678
15679         * Doxyfile: add. 
15680
15681         * scripts/convert-ly.py (conv): add raggedlastbottom rule
15682         (conv): warn for TextSpanner split.
15683         (conv): warn for textheight.
15684
15685 2004-11-19  Jan Nieuwenhuizen  <janneke@gnu.org>
15686
15687         * GNUmakefile.in (install-WWW): Invoke install-info, so that when
15688         building the documentation, info with images are installed.
15689         (final-install): Fix description.  Mention sourcing of login
15690         scripts (instead of running).
15691
15692 2004-11-18  Jan Nieuwenhuizen  <janneke@gnu.org>
15693
15694         * Debian lmodern support.  Note that LilyPond will issue warnings
15695         
15696             no such encoding: "FontSpecific"
15697
15698           The font selection mechanism wants to get the encoding from the
15699           font itself, but the idea of lmodern is that it is usable with
15700           different encodings, ie, Lily should get the encoding from the
15701           font tree, rather than the font itself.  This would require some
15702           more work.
15703         
15704         * configure.in: Test for and accept lmodern if EC fonts not found.
15705
15706         * scm/framework-tex.scm (font-load-command): TeX font name
15707         mangling for latin1 encoded cork-lm fonts.
15708         (convert-to-ps): Load lm.map if available.
15709
15710         * ly/paper-defaults.ly: Use cork-lm encoding if ec is not
15711         available.
15712
15713         * scm/encoding.scm (coding-alist): Add cork-lm encoding.
15714
15715         * scm/font.scm: Add header.  Autoload cork-lm and ec fonts if
15716         available.
15717
15718         * lily/kpath.cc (ly_kpathsea_find_file): Rename.  Do not use
15719         path for absolute file name, that is silly.
15720
15721         * lily/score-engraver.cc (initialize): 
15722
15723         * Documentation/user/GNUmakefile (local-install-info): Invoke
15724         install-info --remove first.
15725
15726         * #include cleanup (Andreas Scherer).
15727
15728 2004-11-18  Heikki Junes  <hjunes@cc.hut.fi>
15729
15730         * input/test/script-abbreviations.ly: fix typos.
15731
15732 2004-11-17  Werner Lemberg  <wl@gnu.org>
15733
15734         * python/lilylib.py (options_help_str): Support pretty-printing of
15735         newlines in fourth element of option description.
15736
15737         * scripts/lilypond-book.py (option_definitions): Use new lilylib
15738         feature.
15739         Sort options.
15740
15741         * Documentation/user/lilypond-book.itely: Finish update.
15742
15743 2004-11-17  Jan Nieuwenhuizen  <janneke@gnu.org>
15744
15745         * Documentation/user/macros.itexi: Add comment about \command.
15746
15747         * Documentation/user/lilypond.tely:
15748         * Documentation/user/lilypond-book.itely: Fix names of lilypond
15749         and lilypond-book nodes, so that `info lilypond' visits the manual
15750         at top level, and `info lilypond-book' visits the lilypond-book
15751         section.
15752
15753         * Documentation/user/GNUmakefile (local-install-info): Fix rules
15754         and packager messages.
15755
15756         * lily/pangofc-afm-decoder.cc: Update test.
15757
15758 2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
15759
15760         * scm/lily-library.scm (char->unicode-index): New function.
15761
15762         * scm/output-gnome.scm: 
15763         * scm/output-svg.scm: Cleanup.  Map custom fonts to PUA.
15764
15765         * Proper naming of file name throughout; s/filename/file[-_]name/.
15766
15767         * lily/modified-font-metric.cc ("ly:font-encoding"): New function.
15768
15769         * lily/pangofc-afm-decoder.cc (pango_fc_afm_get_glyph): Map onto PUA.
15770
15771 2004-11-16  Werner Lemberg  <wl@gnu.org>
15772
15773         * scripts/lilypond-book.py: The Lord has commanded me to use only
15774         tabs for indentation.  Your humble servant obeys.
15775
15776 2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
15777
15778         * scm/output-svg.scm: Font fixes.  Sodipodi now groks svg
15779         including font, if LilyPond-feta font is only feta font in path.
15780
15781         * scm/output-gnome.scm (text): Revert to file name of font if font
15782         has no name.  Fixes ec font selection.
15783         (char): Bugfix: do not utf8 twice.  Fixes clefs.
15784
15785         * scm/framework-svg.scm:
15786         * scm/output-svg.scm: New file.  TODO: figure out how to
15787         do character by index in font.
15788
15789         * scm/output-sodipodi.scm: Remove.
15790
15791         * scm/output-ps.scm (stem): Remove.
15792
15793 2004-11-15  Jan Nieuwenhuizen  <janneke@gnu.org>
15794
15795         * scm/output-gnome.scm (beam): New function.
15796         (slur): Round corners.
15797         (round-filled-box): Round corners.
15798
15799 2004-11-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15800
15801         * scm/output-gnome.scm (beam): add function.
15802         (draw-line): new routine.
15803         (dashed-line): stub; call draw-line
15804         (polygon): new routine.
15805
15806 2004-11-15  Werner Lemberg  <wl@gnu.org>
15807
15808         * Documentation/user/lilypond-book.itely: Revise section on
15809         lilypond-book options.
15810         Other minor fixes.
15811
15812         * scripts/lilypond-book.py: Change indentation to 4.
15813         Minor formatting.
15814
15815 2004-11-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15816
15817         * lily/system.cc (apply_tweaks): new function. Run tweaks on all
15818         grobs that have tweaks specced.
15819         
15820 2004-11-14  Heikki Junes  <hjunes@cc.hut.fi>
15821
15822         * Documentation/user/sound-output.itexi: add code snippets for MIDI.
15823
15824 2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
15825
15826         * lily/font-metric.cc (get_indexed_char_stencil): Bugfix: get
15827         actual char #, not 0 based index.
15828
15829         * lily/system-start-delimiter.cc (staff_brace): Start at 65.
15830
15831         * mf/feta-beugel.mf: Actually start at char #65.  Add header.
15832         Warning: do make -C mf clean.
15833
15834         * lily/context-property.cc: Compile fix.
15835
15836         * scm/output-gnome.scm: Add ec-fonts-mftraced to ~/.fonts.conf.
15837         Grok ec-fonts, braces and dynamics.
15838
15839         * scm/framework-gnome.scm (gnome-main): Register braces with pango.
15840
15841 2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15842
15843         * lily/include/tweak-registration.hh: new file.
15844
15845         * lily/tweak-registration.cc: new file.
15846
15847         * scm/framework-gnome.scm (save-tweaks): use new key mechanism for
15848         saving tweaks.
15849
15850         * scm/output-gnome.scm (text): comment dribble.
15851
15852 2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
15853
15854         * lily/pangofc-afm-decoder.cc (main): Test more feta fonts.
15855
15856         * scm/output-gnome.scm (bezier-sandwich): New function.  Reset
15857         path-def before using.  Fixes muchtomany slurs in wrong places
15858         bug.
15859
15860 2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15861
15862         * lily/grob-scheme.cc (LY_DEFINE): add new function ly:grob-key.
15863
15864         * lily/include/object-key-undumper.hh (Module): new file.
15865
15866         * lily/object-key-undumper.cc (Module): New file. Deserialize
15867         keys. SCM bindings
15868
15869         * lily/object-key-dumper.cc (Object_key_dumper): idem.
15870         Provide SCM bindings.
15871
15872         * lily/include/object-key-dumper.hh (class Object_key_dumper): 
15873         new file. Serialize object keys.
15874         
15875         * lily/object-key.cc (dump): new function.
15876         (as_scheme): new virtual function
15877         (undump): new function
15878         (undumpers): new table.
15879
15880         * lily/include/global-context.hh (Context): take \score key upon init.
15881
15882         * lily/object-key-dumper.cc (serialize_key): new file.
15883
15884         * lily/include/object-key-dumper.hh (class Object_key_dumper): new file.
15885
15886         * lily/lily-lexer.cc: remove \quote.
15887
15888         * lily/lookup.cc (triangle): rewrite, obviating symmetric_x_triangle().
15889
15890         * lily/context.cc (Context): take key argument in ctor.
15891         (create_context): new function
15892
15893         * lily/grob.cc (Grob): take key argument in ctor.  
15894
15895         * lily/lilypond-key.cc (do_compare): new file.
15896
15897         * lily/object-key.cc (Object_key): new file.
15898
15899         * lily/include/object-key.hh (class Object_key): new file.
15900
15901         * lily/include/lilypond-key.hh (class Lilypond_context_key): new file.
15902
15903 2004-11-13  Graham Percival  <gperlist@shaw.ca>
15904
15905         * Documentation/user/lilypond-book.itely: add small warning about
15906         noindent default in lilypond-book.
15907
15908         * Documentation/user/converters.itely: add examples for convert-ly.
15909
15910         * Documentation/user/examples.itely: change version string in templates
15911         to 2.4.0.
15912
15913 2004-11-12  Karl Hammar  <karl@aspodata.se>
15914
15915         * GNUmakefile.in (local-WWW-post): `find ...` overflows the
15916         cmdline, use xargs instead (backportme)
15917
15918 2004-11-10  Andreas Scherer  <andreas_mutopia@freenet.de>
15919         
15920         * Documentation/user/: Numerous fixes in the user manual.
15921
15922 2004-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15923
15924         * lily/parser.yy (re_rhythmed_music): search music expression for
15925         context-id, surround by \new Voice if not found. Fixes:
15926         addlyrics-second-staff.ly
15927
15928         * VERSION: 2.5.0 released.
15929         
15930 2004-11-12  Jan Nieuwenhuizen  <janneke@gnu.org>
15931
15932         * Documentation/index.html.in: Fix url to one big page.  (backportme)
15933
15934         * Documentation/user/GNUmakefile: Separate rules for split and
15935         unsplit html documents.  Remove perl massaging.  (backportme)
15936
15937 2004-11-11  Graham Percival  <gperlist@shaw.ca>
15938
15939         * Documentation/user/lilypond-book.itely: add short warning about
15940         \lilypond{} in LaTeX docs.
15941
15942 2004-11-11  Jan Nieuwenhuizen  <janneke@gnu.org>
15943
15944         * stepmake/aclocal.m4: Barf if kpathsea/kpathsea.h is not
15945         found.  (backportme)
15946
15947         * Documentation/topdocs/INSTALL.texi (ec-fonts-mtraced): Add
15948         version requirement.  (backportme)
15949
15950         * configure.in: Be explicit about old versions of
15951         ec-fonts-mtraced.  (backportme)
15952
15953         * lily/context-selector.cc (set_tweaks): New function.
15954         * lily/grob-selector.cc (set_tweaks): (Re)set hash table.  Fixes
15955         web with -DTWEAK.
15956
15957         * Documentation/user/introduction.itely (Automated engraving):
15958         Remove fragment option.  Fixes web.
15959
15960         * lily/context-property.cc (make_item_from_properties):
15961         * lily/context.cc (add_context)[TWEAK]: Tweak registration behind
15962         #ifdef.
15963
15964         * scm/define-context-properties.scm
15965         (all-internal-translation-properties): Add tweakRank and tweakCount.
15966
15967         * lily/grob.cc: 
15968         * scm/define-grob-properties.scm (all-internal-grob-properties):
15969         Add tweak-rank and tweak-count.
15970
15971 2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
15972
15973         * scm/output-gnome.scm (string->utf8-string, char->utf8-string):
15974         New function.
15975         (text): Use them.
15976
15977         * scm/framework-gnome.scm (item-event): Add support from TLA.  Support
15978         animated/opaque grob dragging tweaks.
15979
15980         * buildscripts/guile-gnome.sh: Update.
15981
15982 2004-11-10  Mats Bengtsson  <mabe@s3.kth.se>
15983
15984         * scm/define-grobs.scm (all-grob-descriptions): Added
15985         line-interface to the LigatureBracket object.
15986
15987 2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
15988
15989         * scm/framework-gnome.scm (item-event): Support non-animated mouse
15990         dragging tweaks.
15991
15992         * lily/lily-guile.cc (ly_to_string, ly_to_symbol): New function.
15993
15994         * lily/context-selector.cc (store_context): New function.
15995
15996         * lily/grob-selector.cc (register_grob)[TWEAK]: Apply tweak.
15997         (store_grob): New function.
15998         (identify_grob): Add Moment parameter.
15999
16000         * lily/lily-parser.cc (parse_file)[TWEAK]: Read .ly.t file if it
16001         exists.
16002
16003         * scm/framework-gnome.scm (save-tweaks): Write as alist.
16004
16005 2004-11-09  Jan Nieuwenhuizen  <janneke@gnu.org>
16006
16007         * scm/framework-gnome.scm (item-event): Print grob id.
16008         (save-tweaks): New function.
16009         (tweak): New funtion.
16010         (item-event): Use it, bound to arrow keys.
16011
16012         * lily/context-property.cc (make_item_from_properties): Register grob.
16013         * lily/context.cc (add_context): Register context.
16014
16015         * lily/include/context-selector.hh:
16016         * lily/include/grob-selector.hh:
16017         * lily/context-selector.cc:
16018         * lily/grob-selector.cc: New file.
16019
16020 2004-11-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16021
16022         * lily/slur.cc: add 'positions to interface
16023
16024         * lily/main.cc: reinstate PS as standard output format. 
16025
16026         * scm/framework-tex.scm (output-preview-framework): print systems
16027         up to first non title system.
16028
16029         * lily/grace-engraver.cc (start_translation_timestep): split
16030         scm_cadddr
16031         
16032 2004-11-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16033
16034         * lily/quote-iterator.cc (Module): remove old quote-iterator
16035
16036         * scm/define-music-types.scm (music-descriptions): move
16037         NewQuoteMusic over QuoteMusic
16038
16039         * Documentation/user/notation.itely (Formatting cue notes): use
16040         \cueDuring.
16041
16042         * lily/new-quote-iterator.cc (quote_ok): new function.
16043
16044         * input/regression/quote-cue-during.ly: new file.
16045
16046         * input/regression/quote-grace.ly: new file.
16047
16048         * scm/define-context-properties.scm (Module): change definition of
16049         graceSettings
16050
16051         * lily/context-property.cc (Module): rename from
16052         translator-property.cc
16053
16054         * lily/context.cc (context_name_symbol): new function
16055
16056         * lily/grace-engraver.cc: new file. Set properties for grobs based
16057         on the grace-ness of now_moment().
16058
16059         * scm/music-functions.scm (add-grace-property): use list
16060         iso. vector for graceSettings
16061         remove set-{start,stop}-grace-properties. 
16062
16063         * lily/new-quote-iterator.cc (construct_children): set
16064         quote_outlet_ if no quoted-context-{id,type} specified.
16065
16066         * scripts/convert-ly.py (conv): \quote -> \quoteDuring.
16067
16068         * lily/parser.yy (command_element): remove \quote.
16069
16070         * ly/music-functions-init.ly (location): add quoteDuring music
16071         function. 
16072
16073         * lily/lexer.ll: allow \encoding in lyrics as well.  Remove
16074         optional semicolon. (backportme)
16075
16076 2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
16077
16078         * python/GNUmakefile (STEPMAKE_TEMPLATES): Unset USER_LDFLAGS, no
16079         need to link to GUILE et al.
16080
16081 2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16082
16083         * scm/define-music-properties.scm (all-music-properties): add
16084         quoted-context-type, quoted-context-id.
16085
16086         * scm/lily.scm (type-check-list): new function.
16087         
16088         * scm/lily-library.scm: new file. Generic library routines.
16089
16090         * lily/parser.yy (Generic_prefix_music): move typechecking out of
16091         parser.
16092
16093         * ly/music-functions-init.ly: add quoteDuring function.
16094
16095         * lily/include/music-iterator.hh (class Music_iterator): rename
16096         set_translator -> set_context
16097
16098         * lily/parser.yy (Generic_prefix_music_scm): add
16099         MUSIC_FUNCTION_SCM_SCM_MUSIC
16100
16101         * scm/lily.scm (sanitize-command-option): new function. (backportme)
16102
16103         * scm/framework-tex.scm (header): sanitize TeX paper size.
16104         (backportme)
16105
16106 2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
16107
16108         * elisp/lilypond-indent.el (LilyPond-indent-level): 2 is now standard.
16109
16110         * tex/lilyponddefs.tex: If no inputencoding use latin1.  (backportme)
16111
16112         * scm/framework-tex.scm (font-load-command): Use T1 if no
16113         font-encoding set.  (backportme)
16114
16115         * scm/lily.scm (postscript->pdf): Remove .pdf file if it
16116         exists before converting.  (backportme)
16117
16118         * scm/framework-tex.scm (convert-to-dvi): Remove .dvi file if it
16119         exists before converting.  (backportme)
16120         (convert-to-ps): Remove .ps file if it exists before
16121         converting.  (backportme)
16122
16123         * lily/lexer.ll: Remove extra progress newline, use present tense.
16124
16125         * scm/paper.scm (paper-alist): public.
16126         * scm/framework-tex.scm (convert-to-ps):
16127         * scm/lily.scm (postscript->pdf): Do not leak papersizename into
16128         command line.
16129
16130 2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16131
16132         * scm/lily.scm (ly:system): add > /dev/null 2>&1 . (backportme)
16133
16134         * lily/recording-group-engraver.cc (derived_mark): mark
16135         now_events_. (backportme)
16136
16137 2004-11-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16138
16139         * mf/GNUmakefile: use Fedora-3 in download link. (backportme.)
16140
16141         * scm/framework-tex.scm (convert-to-dvi): use ly:system for
16142         invoking latex. (backportme.)
16143
16144         * lily/stem.cc (off_callback): center stems for all rest stems.
16145
16146 2004-11-05  Werner Lemberg  <wl@gnu.org>
16147
16148         * Documentation/user/lilypond.tely: Add more guidelines for writing
16149         lilypond texinfo documents.
16150
16151 2004-11-05  Heikki Junes  <hjunes@cc.hut.fi>
16152
16153         * Documentation/index.html.in: remove <hr>.
16154
16155         * THANKS: change 2.3 to 2.4.
16156
16157 2004-11-05  Jan Nieuwenhuizen  <jannneke@gnu.org>
16158
16159         * scm/output-gnome.scm: More fontconfig comment.
16160
16161 2004-11-05  Pedro Kroger  <kroeger@pedrokroeger.net>
16162
16163         * GNUmakefile.in ($(builddir)/share/lilypond-force): create the
16164         <package> directory in $(builddir)/share according with
16165         PACKAGE_NAME defined in the VERSION file.
16166
16167 2004-11-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16168
16169         * lily/beam.cc (rest_collision_callback): use local beam
16170         multiplicity.
16171
16172         * input/regression/stem-stemlet.ly: new file.
16173
16174         * lily/stem.cc (add_head): store rests as well.
16175
16176         * scm/define-grob-properties.scm (all-user-grob-properties): add
16177         stemlet-length
16178
16179         * lily/stem.cc: store rests as well.
16180         
16181         * input/regression/new-slur.ly: mention forcing.
16182
16183 2004-11-04  Werner Lemberg  <wl@gnu.org>
16184
16185         * Documentation/user/*: A new round of layout fixes and document
16186         structure cleanup.
16187
16188 2004-11-04  Heikki Junes <hjunes@cc.hut.fi>
16189
16190         * Documentation/user/lilypond.tely: changes 2.3.x to 2.5.x.
16191
16192 2004-11-04  Jan Nieuwenhuizen  <janneke@gnu.org>
16193
16194         * Documentation/topdocs/INSTALL.texi (Top): Remove geometry.
16195
16196 2004-11-03  Jan Nieuwenhuizen  <janneke@gnu.org>
16197
16198         * Documentation/topdocs/INSTALL.texi (Top): Fix geometry url (dax).
16199
16200         * lily/lily-parser.cc (LY_DEFINE): Remove "Now " from message.
16201
16202         * lily/main.cc (main): Invoke identify.
16203
16204         * scm/lily.scm (postscript->pdf): Remove progress newline.
16205         Write progress to stderr.
16206
16207         * lily/paper-book.cc (output): Remove progress newline.
16208
16209         * scm/framework-tex.scm (convert-to-dvi, convert-to-ps): Call
16210         gettext on user messages, and remove whitespace.
16211
16212         * lily/paper-outputter.cc (get_paper_outputter): Add progress newline.
16213
16214         * scripts/lilypond-latex.py (program_name): Bugfix: use only basename of
16215         argv[0] (Thomas Scharkowski).
16216
16217         * configure.in: Bugfix: add REQUIRED parameter to STEPMAKE_TEXMF
16218         call (carlyannehorse).  Also check for mf and mf-nowin.  Add check
16219         for ec-fonts-mtraced.
16220
16221         * GNUmakefile.in (builddir-exec): Add symlink tex/out.  Fixes
16222         --srcdir build (Bertalan).
16223
16224         * stepmake/aclocal.m4 (STEPMAKE_GUILE_DEVEL): Check for guile
16225         headers and library too (Laura Conrad).
16226
16227         * Documentation/topdocs/INSTALL.texi (Top): Mention development
16228         package for guile too (Laura Conrad).
16229
16230         * lily/main.cc (usage): Typo.
16231
16232 2004-11-02  Werner Lemberg  <wl@gnu.org>
16233
16234         * Documentation/user/notation.ly: More fixes to improve appearance.
16235
16236         * tex/texinfo.tex: Updated from texinfo CVS -- this version provides
16237         better output for multicolumn tables.
16238
16239 2004-11-01  Mats Bengtsson  <mabe@s3.kth.se>
16240
16241         * lily/main.cc (dir_info): Fixed typo in the printouts.
16242
16243 2004-11-01  Werner Lemberg  <wl@gnu.org>
16244
16245         * buildscripts/mf-to-table.py (write_fontlist): Improve formatting
16246         of output.
16247         Set `per_line' to 2; replace hard-coded value with it.
16248
16249         * Documentation/user/*: Many fixes to improve appearance of
16250         printed manual.
16251
16252 2004-11-01  Werner Lemberg  <wl@gnu.org>
16253
16254         * Documentation/user/changing-defaults.itely,
16255         Documentation/user/notation.ly,
16256         Documentation/user/programming-interface.itely: Use @/.
16257         Fix formatting of some lilypond snippets and tables.
16258
16259         * scripts/lilypond-book.py (compose_ly): Provide useful default
16260         for LINEWIDTH in `override'.
16261
16262 2004-10-31  Graham Percival  <gperlist@shaw.ca>
16263
16264         * Documentation/user/invoking.itely: change "3.0" -> "2.4"
16265
16266 2004-10-31  Werner Lemberg  <wl@gnu.org>
16267
16268         Resetting @exampleindent to `5' gives ugly results with texinfo's
16269         DVI output.  Use `@format @exampleindent 0 ... @end format' instead
16270         (if not quoting) to change @exampleindent only locally.
16271
16272         * scripts/lilypond-book.py (NOQUOTE): New variable.
16273         (output) [LATEX]: Remove AFTER and BEFORE.
16274         [TEXINFO]: Remove AFTER and BEFORE.
16275         Fix QUOTE and VERBATIM pattern.
16276         Add NOQUOTE pattern.
16277         (Lilypond_snippet) [output_info, output_latex]: Don't handle AFTER
16278         and BEFORE.
16279         [output_texinfo]: Use NOQUOTE.
16280
16281 2004-10-31  Graham Percival  <gperlist@shaw.ca>
16282
16283         * Documentation/user/changing-defaults.itely: clarify paper
16284         size commands with correct info.
16285
16286         * Documentation/user/lilypond-book.itely: add more docs for
16287         filename extensions.
16288
16289 2004-10-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16290
16291         * VERSION (PATCH_LEVEL): Branch lilypond_2_4, release 2.4.0
16292         (PATCH_LEVEL): start 2.5.0.
16293
16294 #Local variables:
16295 #coding: utf-8
16296 #End:
16297