]> git.donarmstrong.com Git - lilypond.git/blob - ChangeLog
* python/lilylib.py (system): use os.system for mingw32
[lilypond.git] / ChangeLog
1 2006-10-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
2
3         * python/lilylib.py (system): use os.system for mingw32
4
5         * scripts/lilypond-book.py (bindir): use os.pathsep for prepending
6         to $PATH.
7
8         * scm/backend-library.scm: update email address.
9
10         * Documentation/topdocs/NEWS.tely (Top): add duration-log override
11         example.
12
13         * scm/define-grobs.scm (all-grob-descriptions): use callback to
14         calc dot count.
15
16         * lily/dots-engraver.cc (class Dots_engraver): new engraver:
17         handle dot creation separately.
18
19         * lily/tab-note-heads-engraver.cc (process_music): idem.
20
21         * lily/drum-note-engraver.cc (process_music): idem.
22
23         * lily/note-heads-engraver.cc (process_music): idem.
24
25         * lily/rest-engraver.cc: don't set duration-log.
26
27         * scm/output-lib.scm (string-number::calc-text): new function.
28         (note-head::calc-duration-log): new function.
29
30         * lily/fingering-engraver.cc (make_script): remove 'text setting.
31
32         * scm/output-lib.scm (fingering::calc-text): new function.
33
34 2006-10-04  Mats Bengtsson  <mabe@drongo.s3.kth.se>
35
36         * scripts/lilypond-book.py: Fix typo gs-load-font -> gs-load-fonts
37          and include-eps-font -> include-eps-fonts
38
39 2006-10-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
40
41         * lily/multi-measure-rest-engraver.cc: use internalBarNumber
42
43         * lily/timing-translator.cc: list properties.
44         (start_translation_timestep): update internalBarNumber too.
45
46         * scm/define-context-properties.scm
47         (all-user-translation-properties): add internalBarNumber.
48
49         * input/regression/spacing-no-note.ly: new file.
50
51         * buildscripts/output-distance.py (link_file): verbosity for OSError.
52
53         * lily/book.cc: #include cleanup.
54
55         * lily/include/lily-guile-macros.hh: add assert to
56         scm_or_str2symbol(SCM).
57
58         * VERSION (PATCH_LEVEL): bump version.
59
60         * lily/spacing-spanner.cc (musical_column_spacing): handle
61         musical->nonmusical spacing case, where there is no spacing
62         wish. Fixes issue #61.
63
64         * lily/pango-font.cc (text_stencil): allow 'tight' bounds.
65         (pango_item_string_stencil): use logical rect horizontally (to
66         preserve spaces), ink_rect vertically (for time signatures).
67
68         * lily/font-metric.cc (word_stencil): new interface function
69
70         * input/regression/utf-8-mixed-text.ly: new file.
71
72         * lily/percent-repeat-engraver.cc (listen_percent): remove
73         spurious warning.
74
75         * lily/phrasing-slur-engraver.cc (acknowledge_script): only ack
76         non-dynamic scripts. Fixes #30.
77
78         * lily/slur.cc (outside_slur_callback): make offset_scm optional.
79
80         * lily/beam.cc (rest_collision_callback): make prev_offset optional.
81
82         * lily/grob-closure.cc (chain_offset_callback): don't pass 0 but
83         SCM_UNDEFINED for non-existent data.
84
85         * lily/side-position-interface.cc (general_side_position): allow
86         optional current_offset argument for chaining, so combinations of side-position
87         and outside slur callback don't add up.  Fixes issue #92.
88
89         * lily/pango-font.cc (pango_item_string_stencil): use
90         logical_rect. This prevents spaces after words from disappearing,
91         issue #72.
92         
93         * VERSION: release 2.9.20
94
95 2006-10-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
96
97         * scm/define-grob-properties.scm (all-user-grob-properties):
98         mention stencil as user settable.
99
100 2006-10-02  Joe Neeman  <joeneeman@gmail.com>
101
102         * Documentation/user/page.itely (Page formatting): 
103         document auto-first-page-number
104
105         * lily/page-breaking.cc (find_chunks_and_breaks): 
106         * lily/paper-score.cc (calc_breaking): Follow changes to the
107         Constrained_breaking interface
108
109         * lily/constrained-breaking.cc (calc_subproblem): run the main loop
110         here backwards, as an optimisation
111         (initialize): new function; move most of the code in resize () here
112         (combine_demerits): cache ragged_right_
113         (Constrained_breaking): constructor now takes the Paper_score
114
115 2006-10-02  Erik Sandberg  <mandolaerik@gmail.com>
116         
117         * lily/lexer.ll, lily/parser.yy: Add EXPECT_NO_MORE_ARGS token, to
118         avoid parser lookahead for 0-ary functions.
119
120         * lily/translator.cc: Extract event classes from
121         IMPLEMENT_TRANSLATOR_LISTENER for documentation generation.
122
123 2006-10-02  Heikki Junes  <hjunes@gmail.com>
124
125         * po/fi.po: Fix spaces, commas etc. in Finnish translation using
126         KBabel fix tool.
127
128 2006-10-01  Nicolas Sceaux  <nicolas.sceaux@free.fr>
129
130         * scm/layout-page-layout.scm (page-breaking-wrapper): new
131         function. Call the page breaking function selected in the
132         `page-breaking' \paper variable, then the post processing function
133         chosen using the `page-post-process' \paper variable.
134         (line-height): new function. Return the height of a system.
135         (line-minimum-position-on-page): new function. Return the position
136         of a system on page (using the previous line position), only
137         considering between system padding.
138         (stretchable-line?): new function. Says whether a line can be
139         stretched (ie. is not a title nor a single staff system).
140         (page-maximum-space-left): new function. Computes space left on a
141         page, when all systems are separated by their padding.
142
143         * lily/page-breaking.cc (breaking::make_pages): Move page post
144         processing function call to page breaking wrapper (common to all
145         page breakers).
146
147         * lily/paper-book.cc (book::pages): call the page breaking
148         wrapper, instead of the page breaker directly
149
150         * ly/paper-defaults.ly: Add \paper variables for page breaking
151         wrapper and page post processing function. Make
152         `write-page-layout' value depend on the 'dump-tweaks option. Add a
153         `system-maximum-stretch-procedure' variable for holding a function
154         computing the maximum stretch a system allows.
155
156         * scm/layout-page-dump.scm (write-page-breaks): computes the
157         stretch to apply to systems on a page to minimize left
158         space. Dump this stretch length.
159
160         * ly/music-functions-init.ly (spacingTweaks): implement it. Read
161         the system-stretch property of the tweak data to stretch the
162         system.
163         (includePageLayoutFile): Void function which includes the
164         generated page-layout file if it exists and if the page layout
165         dumping is not asked.
166         (scoreTweak): if the score tweak named by the argument exists,
167         return it.
168
169 2006-10-01  Joe Neeman  <joeneeman@gmail.com>
170
171         * lily/page-spacing.cc (compress_lines, uncompress_solution):
172         handle correctly the case where there are multiple \noPageBreaks
173         in a row.
174
175 2006-09-30  Laura Conrad <lconrad@laymusic.org>
176
177         * abc2ly.py adds segno (S) and Coda (O) to articulations.
178         
179         * abc2ly.py fix so that entering " -- " will translate to a -- in
180         the lilypond instead of a " - - "
181         
182 2006-09-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
183
184         * lily/align-interface.cc: fix typo
185
186         * lily/dynamic-text-spanner.cc (print): Add a special case for
187         trill spanner right sides. 
188
189         * scm/define-grobs.scm (all-grob-descriptions): set padding to 0.1
190
191         * lily/align-interface.cc (get_extents_aligned_translates): add
192         support for padding variable.
193
194         * lily/break-align-interface.cc (self_align_callback): oops: use
195         loop variable in guard.
196
197         * input/regression/repeat-percent-grace.ly: new file.
198
199         * lily/percent-repeat-engraver.cc (start_translation_timestep):
200         remember first currentCommandColumn of a grace run. Fixes issue 70.
201
202         * lily/percent-repeat-iterator.cc (class Percent_repeat_iterator):
203         move class definition to CC file.
204
205         * lily/multi-measure-rest.cc (percent): use robust_relative_extent()
206
207         * lily/slash-repeat-engraver.cc (listen_percent): don't warn for
208         measure-long  repeats.
209
210         * flower/include/international.hh: include stdarg.h
211
212 2006-09-30  Joe Neeman  <joeneeman@gmail.com>
213
214         * lily/page-turn-page-breaking.cc (calc_demerits): now that we allow
215         put_systems_on_pages to return an empty result, we need to assign
216         demerits properly in that case.
217         (put_systems_on_pages): Make the number of pages depend on the
218         evenness of page_number. Add auto-first-page-number.
219         (calc_subproblem): ensure that the page-number is even for the
220         left-hand page. Warn if the first page-turn doesn't fit onto the
221         first (right-hand) page.
222
223         * lily/page-spacing.cc (solve): bug: demerits_ would always be inf
224         (min_page_count): make this publicly accessible
225         (min_page_count): fix a bug when there are forced page breaks that
226         was introduced when I made this loop run backwards
227         (space_systems_on_n_pages, space_systems_on_n_or_one_more_pages):
228         replace space_systems_on_min_pages with these two. The logic in
229         space_systems_on_min_pages was getting too convoluted and is better
230         contained in page-turn-page-breaking.
231
232         * lily/page-turn-engraver.cc (breakable_column): remove an always-true
233         conditional
234         (breakable_column): typo
235
236         * lily/source-file.cc (get_line): fix off-by-one error
237         and clean up some of the logic
238
239 2006-09-29  Joe Neeman  <joeneeman@gmail.com>
240
241         * lily/page-breaking.cc (make_pages): honour the first-page-number
242         property
243
244 2006-09-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
245
246         * VERSION (PACKAGE_NAME): bump version.
247
248 2006-09-26  Pal Benko  <benko.pal@gmail.com>
249
250         * scm/parser-clef.scm: add petrucci-f3 and -f4 clefs
251         (the latter is the same as petrucci-f which is kept for compatibility)
252
253 2006-09-26  Erik Sandberg  <mandolaerik@gmail.com>
254         
255         * lily/part-combine-iterator.cc: solo1-event -> solo-one-event
256
257 2006-09-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
258
259         * lily/global-context.cc (run_iterator_on_me): break out of loop
260         if moment doesn't increase.
261
262         * scm/define-grob-properties.scm (all-user-grob-properties): add
263         forced property.
264
265         * lily/accidental.cc (after_line_breaking): read forced property.
266
267         * lily/accidental-engraver.cc (process_acknowledged): set 'forced
268         property.
269
270         * input/regression/accidental-forced-tie.ly:  new file.
271
272 2006-09-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
273
274         * ly/engraver-init.ly: set ignoreFiguredBassRest in Staff context.
275
276         * lily/figured-bass-engraver.cc: only listen to rest events if
277         ignoreFiguredBassRest is not set.
278
279         * scm/define-context-properties.scm
280         (all-user-translation-properties): add ignoreFiguredBassRest property
281
282 2006-09-24  Joe Neeman  <joeneeman@gmail.com>
283
284         * lily/paper-book.cc (get_system_specs):
285         (set_system_penalty): fix breakbefore.
286         We used to set a penalty on the system after the break, now we
287         set a permission on the system before the break
288
289         * lily/grob-property.cc: add scm debugging hooks into
290         property modification
291
292         * lily/context-property.cc:
293         * lily/engraver.cc:
294         rename make_foo_from_properties to internal_make_foo and
295         move it from context-property.cc to a member function of
296         Engraver.
297         
298         * lily/include/lily-guile-macros.hh:
299         overload ly_symbol2scm macro so that there is no more need
300         to use internal_foo
301
302         * lily/volta-repeat-iterator.cc:
303         * lily/tweak-engraver.cc:
304         * lily/tuplet-bracket.cc:
305         * lily/span-bar-engraver.cc:
306         * lily/script-engraver.cc:
307         * lily/prob-scheme.cc:
308         * lily/pointer-group-interface.cc:
309         * lily/parser.yy:
310         * lily/grob-scheme.cc:
311         * lily/grob-property.cc:
312         * lily/context.cc:
313         * lily/context-property.cc:
314         * lily/break-substitution.cc:
315         * lily/break-align-engraver.cc:
316         * lily/axis-group-interface.cc:
317         * lily/align-interface.cc:
318         remove calls to internal_FOO
319
320         * lily/system-start-delimiter-engraver.cc:
321         * lily/parenthesis-engraver.cc:
322         * lily/accidental-engraver.cc:
323         remove calls to make_foo_from_properties
324
325 2006-09-23  Graham Percival  <gpermus@gmail.com>
326
327         * Documentation/user/programming-iterfaces.itely: fix
328         def-music-function -> define-music... leftover.
329
330 2006-09-23  Joe Neeman  <joeneeman@gmail.com>
331
332         * lily/page-spacing.cc (min_page_count): by running the loop
333         backwards, we can calculate ragged_last properly.
334
335 2006-09-22  Mats Bengtsson  <mabe@drongo.s3.kth.se>
336
337         * ly/titling-init.ly (scoreTitleMarkup): Rename (typo!?)
338         printfirst-page-number -> print-first-page-number
339
340         * python/convertrules.py: corresponding rule.
341
342         * Documentation/user/page.itely (Page formatting): Document the
343         default values of all page layout parameters. 
344
345 2006-09-22  Erik Sandberg  <mandolaerik@gmail.com>
346
347         * lily/lexer.ll: remove limitation on music function arity. New
348         mode extratoken, which inserts extra EXPECT_* tokens after
349         MUSIC_FUNCTION token. Junk all MUSIC_FUNCTION_* tokens.
350
351         * lily/parser.yy: Change grammar for music function accordingly.
352
353         * lily/include/lily-parser.hh: New method get_state, new member
354         hidden_state. Works around a problem when parser fetches
355         MUSIC_FUNCTION token but not the following EXPECT_* token.
356
357         * lily/translator.cc, lily/context.cc:, lily/translator-group.cc:
358         remove try_music
359
360         * lily/*-engraver.cc, lily/*-performer.cc: Remove all remaining
361         references to Music; use ASSIGN_EVENT_ONCE everywhere
362
363         * lily/grob-info.cc: junk *music_cause
364
365         * lily/music.cc: copy eventified articulations to stream event
366
367         * lily/part-combine-iterator.cc: Cleanup using enums
368
369         * lily/translator-group.cc: Junk OldMusicEvent, and associated
370         methods
371
372         * lily/include/engraver.hh: Junk music.hh include
373
374         * lily/stream-event.cc: Changed constructors
375
376 2006-09-21  Graham Percival  <gpermus@gmail.com>
377
378         * Documentation/user/tweaks.itely (Fitting music onto fewer
379         pages): change settings to avoid warning messages.
380
381 2006-09-21  Mats Bengtsson  <mabe@drongo.s3.kth.se>
382
383         * Documentation/user/tweaks.itely (Fitting music onto fewer
384         pages): Add between-system-space setting. 
385
386 2006-09-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
387
388         * lily/accidental-placement.cc (calc_positioning_done): don't
389         trigger Y-extent calculation too early. Use pure_height instead.
390
391         * lily/scale.cc (LY_DEFINE): new file. 
392
393 2006-09-20  Joe Neeman  <joeneeman@gmail.com>
394
395         * lily/page-breaking.cc (find_chunks_and_breaks): ignore breaks
396         that happen at the start of a score: having a zero-length
397         chunk was messing up min_system_count calculations.
398
399         * lily/source-file.cc (get_line): lower_bound, not
400         binary_search. Fixes problem where point-and-click would
401         always point to the first line.
402
403 2006-09-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
404
405         * lily/accidental-placement.cc (calc_positioning_done): also put
406         stems into accidental support. 
407
408         * lily/tie-engraver.cc (process_music): also set tieMelismaBusy if
409         event_ detected.
410
411         * scm/script.scm (default-script-alist): avoid-slur and
412         slur-padding for portato script.
413
414         * lily/stem-tremolo.cc (translated_stencil): new function. 
415         (height): use new function. Fixes tremolos on whole notes.
416
417         * lily/slur-scoring.cc (get_best_curve): don't crash if no optimal
418         slur found.
419
420 2006-09-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
421
422         * scripts/abc2ly.py (try_parse_comment): idem.
423
424         * scripts/lilypond-book.py (find_toplevel_snippets): use 'foo' in
425         bar_string iso. string.find()
426
427         * lily/*.cc: idem.
428
429         * lily/slur.cc (get_curve): always use scm_is_pair() looping
430         scheme lists.  
431
432 2006-09-18  Graham Percival  <gpermus@gmail.com>
433
434         * Documentation/user/basic-notation.itely: add bug
435         warning about ties and octavation/clef.
436
437 2006-09-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
438
439         * VERSION (PACKAGE_NAME): release 2.9.18
440
441 2006-08-29  Milan Zamazal  <pdm@brailcom.org>
442
443         * elisp/lilypond-mode.el (LilyPond-command-alist): Don't try to
444         figure out midi file names right here.
445         
446 2006-09-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
447
448         * scm/framework-ps.scm (dump-stencil-as-EPS): naming pad-eps-boxes.
449
450         * scm/backend-library.scm: option naming:  gs-font-load*s*
451
452         * scm/framework-eps.scm (dump-stencils-as-EPSes): rename option to
453         include-eps-fonts
454
455 2006-09-17  Joe Neeman  <joeneeman@gmail.com>
456
457         * scm/define-music-types.scm (music-descriptions): remove
458         BreakEvent and fix {Page,Line}{Break,Turn}Event so
459         Music::to_event doesn't complain.
460
461         * lily/accidental-placement.cc (ape_compare):
462         * lily/semi-tie.cc (compare): 
463         * lily/note-column.cc (shift_compare): replace by XXX_less
464
465         * lily/tie-formatting-problem.cc (set_chord_outline): 
466         * lily/tie-column.cc (calc_positioning_done): 
467         * lily/system.cc (post_processing)
468         (get_paper_system): 
469         * lily/stem.cc (note_head_positions)
470         (calc_positioning_done): 
471         * lily/spanner.cc (do_break_processing)
472         (find_broken_piece): 
473         * lily/span-bar.cc (print): 
474         * lily/semi-tie-column.cc (calc_positioning_done): 
475         * lily/rest-collision.cc (calc_positioning_done): 
476         * lily/program-option.cc (get_help_string): 
477         * lily/note-collision.cc (get_clash_groups):
478         * lily/new-fingering-engraver.cc (position_scripts):
479         * lily/keyword.cc (Keyword_table):
480         * lily/hara-kiri-group-spanner.cc (request_suicide):
481         * lily/grob-pq-engraver.cc (stop_translation_timestep):
482         * lily/accidental-placement.cc (calc_positioning_done):
483         (stagger_apes):
484         * lily/beam.cc (get_beam_segments):
485         * lily/grob-array.cc (remove_duplicates):
486         use new vector_sort
487         
488         * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily:
489         ragged-last-bottom = ##f (test the new page breaker)
490
491         * flower/include/std-vector.hh (vector_sort): use STL sort stuff
492
493         * scm/define-context-properties.scm
494         (all-internal-translation-properties): remove properties that
495         were used to communicate page-turn stuff to the paper-column
496         engraver.
497
498         * lily/lily-guile.cc (robust_scm2string): new function
499
500         * lily/paper-column-engraver.cc: Clean up page turn stuff
501
502         * lily/page-turn-engraver.cc: Re-write the page turn logic here
503         instead of cluttering up paper-column-engraver.cc
504
505 2006-09-17  Nicolas Sceaux  <nicolas.sceaux@free.fr>
506
507         * scm/layout-page-dump.scm (scm): export utility function names,
508         to allow user writing cutsom dumping functions.
509
510         * scm/layout-page-layout.scm: export utility function names to
511         enable custom page breaking function writing. Tabify.
512         (line-next-space): use ?-suffix only for predicates
513         (page-maximum-space-to-fill): new function. Return the space
514         between first and bottom system of a page, to give to
515         space-systems.
516         (space-systems): use a space-to-fill argument (for instance as
517         computed by page-maximum-space-to-fill) instead of computing
518         internaly this space with the page height. That way, the caller
519         can adjust the space to use.
520         (make-page-from-systems, walk-paths): compute space to fill before
521         calling space-systems.
522
523 2006-09-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
524
525         * scm/script.scm (default-script-alist): set paddings for every
526         type here, increase for portato mark.
527
528         * scm/lily.scm (define-scheme-options): typo: add s, so it is 
529         -dinclude-eps-fonts
530
531 2006-09-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
532
533         * scm/define-grobs.scm (all-grob-descriptions): oops, typo:
534         use spanner::set-spacing-rods
535
536         * lily/note-column.cc: reformat.
537
538         * lily/rest-collision.cc (calc_positioning_done): fix whole/half
539         step positioning for note/rest combinations.
540
541         * input/regression/rest-note-collision.ly: new file.
542
543         * scm/define-grobs.scm (all-grob-descriptions): add
544         springs-and-rods
545
546         * flower/include/std-vector.hh: switch off again.
547
548         * VERSION (PATCH_LEVEL): bump to 2.9.18
549
550         * flower/include/std-string.hh: idem.
551
552         * flower/include/std-vector.hh (_GLIBCXX_DEBUG): set if NDEBUG not set.
553
554 2006-09-15  Mats Bengtsson  <mabe@drongo.s3.kth.se>
555
556         * ly/engraver-init.ly: Make FiguredBass accepted in GrandStaff and
557         PianoStaff. 
558
559 2006-09-08  Joe Neeman  <joeneeman@gmail.com>
560
561         * Documentation/user/page.itely: update page breaking documentation
562
563 2006-09-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
564
565         * lily/note-collision.cc (calc_positioning_done): only access
566         first head if available.
567
568         * lily/tuplet-engraver.cc: add tupletFullLengthNote to description.
569
570         * scm/framework-ps.scm (output-preview-framework): use new name.
571
572         * lily/program-option.cc (internal_set_option): use new names.
573
574         * Documentation/user/SConscript (lilypond_book_flags): update -d
575         variable names.
576
577         * Documentation/user/lilypond-book.itely (Inserting LilyPond
578         output into other programs): new variable names.
579
580         * scm/lily.scm (define-scheme-options): uniformize var names.
581
582         * lily/tuplet-engraver.cc (listen_tuplet_span): verify that
583         tuplets_ is non-empty before popping.
584
585 2006-09-07  Joe Neeman  <joeneeman@gmail.com>
586
587         * lily/spanner.cc (find_broken_piece): 
588         * lily/spacing-spanner.cc (get_columns): 
589         * lily/source-file.cc (get_line): 
590         * lily/simple-spacer.cc (get_column_description): 
591         * lily/keyword.cc (lookup): 
592         use the new binary search.
593
594         * flower/include/std-vector.hh: replace binary_search with
595         a more STL-like version
596
597 2006-09-04  Michael Welsh Duggan  <md5i@cs.cmu.edu>
598
599         * lily/tie-performer.cc: remove unused last_event_ property.
600         (class Tie_performer): add now_tied_heads_ property for
601         partially-tied heads.
602         (acknowledge_audio_element): when adding an Audio_note, put the
603         note in now_tied_heads_ if the audio note is partially tied.
604         (stop_translation_timestep): always include entries in
605         now_tied_heads_ in heads_to_tie_.
606
607         * lily/drum-note-performer.cc (process_music): look for tie-events
608         in the articulations; pass to Audio_note constructor.
609
610         * lily/note-performer.cc (process_music): look for tie-events in
611         the articulations; pass to Audio_note constructor.
612
613         * lily/audio-item.cc (Audio_note): Initialize tie_event_ in
614         constructor.
615
616         * lily/include/audio-item.hh (class Audio_note): add tie_event_.
617         include initializer in constructor.
618
619 2006-09-02  Joe Neeman  <joeneeman@gmail.com>
620
621         * lily/simple-spacer.cc (get_line_forces): Ignore loose columns
622         unless they are breakable. This fixes discrepancies between the forces
623         calculated here and the forces calculated in get_line_configuration.
624
625         * lily/grob.cc (pure_relative_y_coordinate): fix some
626         mis-estimation that was happening with piano staves.
627
628         * lily/constrained-breaking.cc (resize): don't choke if we get a
629         measure that won't fit on a line.
630         (combine_demerits): don't consider uniformity when ragged
631
632         * lily/page-spacing.cc (solve): why the f* were there two of these?
633         (calc_subproblem): properly handle the case where a system is taller
634         than the page.
635
636         * lily/system.cc (get_paper_system): ensure that all the permissions
637         and penalties are passed to the paper systems.
638
639         * lily/page-breaking.cc (create_system_list): support system-count.
640
641         * scm/define-grobs.scm (pure-print-callbacks): add
642         ly:script-interface::print
643
644         * lily/page-spacing.cc (min_page_count): fix calculation of min
645         pages if we are ragged and there are non-zero springs.
646
647         * scm/layout-page-layout.scm: if the pure-height estimates are under
648         the real height, allow space-systems to ignore padding if it is
649         needed in order to fit the systems on one page
650
651         * lily/optimal-page-breaking.cc (try_page_spacing): fix reading
652         ragged properties
653         (solve): fix performance problem. Make sure we always get at least
654         one solution
655
656         * lily/page-breaking.cc (make_pages): include write-page-breaks
657         and page-stencil
658
659         * lily/paper-score.cc (calc_breaking): remove Gourlay breaker
660
661         * scm/define-grobs.scm: add the new slur-callback
662         fix pure-relevant to not exclude grobs whose extent is already
663         calculated
664
665         * ly/paper-defaults.ly: make ly:optimal-breaking the new default
666         page breaker
667
668         * lily/slur.cc (pure_height): new callback to estimate the height
669         of a slur
670
671 2006-09-02  Graham Percival  <gpermus@gmail.com>
672
673         * Documentation/user/invoking.itely: small update on
674         MacOS X notes; thanks Trevor!
675
676 2006-09-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
677
678         * VERSION (MY_PATCH_LEVEL): release 2.9.17
679
680         * lily/lexer.ll: accept EOF in all states.
681
682         * lily/tempo-performer.cc (Tempo_performer): initialize last_tempo_.
683
684         * lily/source-file.cc (Source_file): always 0-terminate character
685         array, to prevent Flex from barfing.
686
687         * lily/global-context.cc (get_output): robustness: don't crash if
688         no Score context found.
689
690         * lily/include/book.hh (class Book): idem.
691
692         * lily/include/context-def.hh (struct Context_def): idem.
693
694         * lily/include/score.hh (class Score): don't derive from Input.
695
696         * lily/book.cc (Book): add a copy ctor. 
697
698         * buildscripts/output-distance.py (FileLink.calc_distance): count
699         orphans in distance too.
700
701         * python/midi.c (midi_parse_track): robustness: don't read past
702         end of string.
703
704         * ly/performer-init.ly: add Control_track_performer, move
705         Tempo_performer and Time_signature_performer to Score.        
706
707         * lily/score-performer.cc (acknowledge_audio_elements): override
708         from base class: add to audio-columns
709
710         * lily/control-track-performer.cc (add_text): new file: generate
711         the control track.
712
713         * lily/performance.cc: move output_header_track to
714         Control_track_performer ()
715
716         * lily/midi-walker.cc (Midi_walker): get channel in constructor.
717
718         * lily/include/midi-item.hh (class Midi_channel_item): insert
719         class into hierarchy, for items that can have a channel setting. Dehungarify.
720
721         * lily/include/performer.hh (class Performer): remove
722         play_element();  move functionality into announce/acknowledge.
723
724         * lily/audio-staff.cc (output): remove channel_ from Midi_track.
725
726         * lily/tie-engraver.cc (stop_translation_timestep): only wipe
727         heads_to_tie_ if there are new heads to tie.  Fixes polyphony in ties.
728
729 2006-08-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
730
731         * lily/tie-engraver.cc (stop_translation_timestep): robustness for
732         ambituses.
733
734         * lily/all-font-metrics.cc: remove TFM support.
735
736         * lily/include/tfm.hh: remove TFM support, TFM reader.
737
738         * lily/include/binary-source-file.hh: remove Binary_source_file.
739
740 2006-08-27  Graham Percival  <gpermus@gmail.com>
741
742         * Documentation/topdocs/NEWS.itely: add @c marker for
743         stuff I've processed.
744
745         * Documentation/user/ various: info from NEWS.
746
747 2006-08-27  Joe Neeman  <joeneeman@gmail.com>
748
749         * lily/paper-column-engraver.cc (finalize): Oops, this change
750         should have gone in on 2006-08-23
751
752 2006-08-26  Mats Bengtsson  <mabe@s3.kth.se>
753
754         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use double
755         quotes to quote arguments. Fixes Windows problem.
756
757         * python/lilylib.py (progress): idem
758
759 2006-08-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
760
761         * scripts/musicxml2ly.py: fix for importing
762         minor key signatures from MusicXML.  (Phillip Kirlin)
763
764 2006-08-24  Phillip Kirlin  <pkirlin@acm.org>
765
766         * python/musicxml.py: 
767         (Attributes.get_key_signature): now correctly retrieves mode from 
768         MusicXML. 
769
770 2006-08-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
771
772         * lily/parser.yy (output_def_body): take ownership of identifier
773         back to C++.
774
775         * Documentation/user/advanced-notation.itely (Metronome marks):
776         update use of \tempo in \midi.
777
778         * VERSION: release 2.9.16
779         
780 2006-08-24  Erik Sandberg  <mandolaerik@gmail.com>
781
782         * input/mutopia/*: upgrade to new midi tempo syntax (repairs make
783         web partially)
784
785 2006-08-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
786
787         * input/regression/tie-chord-partial.ly: clarify example.
788
789         * scm/define-music-properties.scm (all-music-properties): remove
790         untied.
791
792         * ly/music-functions-init.ly: remove \untied.
793
794         * lily/tie-engraver.cc (struct Head_event_tuple): store both
795         stream events and music events.
796         (stop_translation_timestep): search acknowledged heads for
797         tie-event.
798
799         * input/regression/tie-chord-partial.ly: new file.
800
801         * scm/define-markup-commands.scm (char): use ly:wide-char->utf-8
802         for \char markup command.
803
804         * scm/define-event-classes.scm (unlistened-music-event-classes): idem.
805
806         * scm/define-music-types.scm (music-descriptions): consistency:
807         Use solo-{one,two}-event iso. solo-[12]-event.
808
809         * lily/part-combine-engraver.cc (process_music):
810         Use solo-{one,two}-event iso. solo-[12]-event.
811
812         * ly/declarations-init.ly (partCombineListener): add Timing as
813         alias
814
815         * flower/std-string.cc (string_copy): use copy ()
816
817         * lily/source-file.cc (Source_file): use copy(). Remove contents_str0()
818
819 2006-08-24  Graham Percival  <gpermus@gmail.com>
820
821         * Documentation/user/changing-defaults.itely, global.itely,
822         lilypond-book.itely, page.itely: minor changes from mailist.
823
824 2006-08-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
825
826         * buildscripts/mutopia-index.py (allfiles): filter lily-XXX and
827         snippet-map
828
829         * scm/define-context-properties.scm
830         (translator-property-description): robustness: detect type errors
831         in property definitions.
832
833         * lily/parser.yy (score_body): protect SCORE_IDENTIFIER result
834         after getting it from SCM. 
835
836         * lily/smobs.cc (protect_smob): switch off fancy smob protection
837         for now. 
838
839         * lily/include/performer.hh (class Performer): strip get_tempo()
840         method.
841
842         * lily/midi-def.cc: strip file.
843
844         * lily/lexer.ll (Lily_lexer): don't protect hash key separately.
845
846         * lily/include/context-def.hh (struct Context_def): use
847         VIRTUAL_COPY_CONSTRUCTOR().
848
849         * lily/source-file.cc: smobification.
850
851         * lily/include/source-file.hh (class Source_file): smobify
852         Source_file. Trim redundant members.
853
854         * lily/parser.yy (Lily_lexer::try_special_identifiers): unprotect
855         clones after creation. This plugs a huge memory leak.
856
857         * python/convertrules.py (FatalConversionError.sub_tempo):
858         complete rule for \midi{ \tempo }
859
860         * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): idem.
861
862         * input/mutopia/F.Schubert/morgenlied.ly (pianoLH): update tempo.
863
864 2006-08-23  Joe Neeman  <joeneeman@gmail.com>
865
866         * input/regression/optimal-page-breaking-hstretch.ly: test for
867         ragged-last-bottom also
868
869         * lily/paper-column-engraver.cc (finalize): make the end of a score
870         breakable by default. This is to balance out a change in behaviour
871         of the page-turn-breaker which no longer makes the end of a score
872         breakable.
873
874         * lily/paper-book.cc (pages): set the systems_ once the pages are
875         broken
876
877         * lily/page-turn-page-breaking.cc (calc_subproblem): use the new
878         Page_breaking interface.
879
880         * lily/page-breaking.cc (class Page_breaking): make the interface
881         more consistent and provide abstractions for dealing with
882         Line_divisions.
883
884         * lily/optimal-page-breaking.cc (solve): use a more straightforward
885         algorithm. Use the new interface to Page_breaking.
886
887         * lily/page-spacing.cc: better support for ragged-bottom and
888         ragged-last-bottom
889
890 2006-08-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
891
892         * python/convertrules.py (conv): warning on \tempo{}
893
894         * ly/performer-init.ly: set tempoWholesPerMinute.
895
896         * ly/midi-init.ly: remove \midi
897
898         * lily/tempo-performer.cc: look at tempoWholesPerMinute to set
899         MIDI tempo.
900
901         * lily/metronome-engraver.cc (process_music): use tempoUnitCount
902         tempoUnitDuration for determining what to print.
903
904         * lily/lyric-extender.cc: typo.
905
906         * lily/parser.yy (output_def_body): disallow \tempo in \midi{}
907
908         * lily/duration-scheme.cc (LY_DEFINE): ly:duration-length: new
909         function.
910
911         * scm/lily.scm (define-scheme-options): alphabetize, add eps-pad-boxes.
912
913         * scm/framework-ps.scm (dump-stencil-as-EPS): only pad boxes if
914         eps-pad-boxes is set.
915
916         * scripts/lilypond-book.py (main): use -deps-pad-boxes.
917
918         * THANKS: update sponsors.
919
920         * ly/english.ly: quarter tone naming (thanks, Trevor Baca)
921
922         * Documentation/topdocs/NEWS.tely (Top): doc new feature.
923
924         * input/regression/tie-chord-untied.ly: new file.
925
926         * lily/tie-engraver.cc (acknowledge_note_head): check 'untied property.
927
928         * scm/define-music-properties.scm (all-music-properties): add
929         'untied property.
930
931         * buildscripts/mutopia-index.py (allfiles): look for .ly rather
932         than .ly.txt.
933         (headertext_nopics): sanitize no-examples text.
934
935         * scm/page.scm (make-page-stencil): don't rely on extents of
936         page-stencil. This fixes spurious space around .EPS files produced
937         with the EPS backend.
938
939 2006-08-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
940
941         * lily/stencil-scheme.cc (LY_DEFINE): make extent arguments optional.
942
943         * lily/hara-kiri-engraver.cc (process_music): remember
944         keepAliveInterfaces after processing \set
945
946         * lily/lyric-extender.cc (print): support left/right-padding for
947         extenders.
948
949         * scm/documentation-generate.scm (string-append): revert lilypond/
950         path, doc why.
951
952 2006-08-20  Graham Percival  <gpermus@gmail.com>
953
954         * Documentation/user/lilypond.tely: clarification to
955         license presentation (not to actual license).
956
957         * Documentation/user/basic-notation.itely,
958         instrument-notation.itely: minor changes.
959
960         * input/ {regression, test}/+.ly: clarification to
961         text (you can click on examples).  Thanks, Mats!
962
963         * input/manual/bar-lines.ly: adds ||: repeats.
964
965 2006-08-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
966
967         * make/ly-vars.make (OMF_FILES): strip ps.gz from OMF_FILES 
968
969         * scm/documentation-lib.scm (texi-file-head): category LilyPond.
970
971         * Documentation/user/lilypond.tely: strip lilypond/ from info
972         links, rename to category LilyPond
973
974         * lily/pango-font.cc (description_string): new function.
975
976         * VERSION: release 2.9.15
977
978         * lily/spacing-engraver.cc (stop_translation_timestep): use
979         Dscho's fix for spacing spanner. 
980
981         * scm/define-music-types.scm (music-descriptions): use
982         apply-output-event for ApplyOutputEvent
983
984         * lily/output-property-engraver.cc (listen_apply_output): rename
985         from listen_layout_instruction.
986
987         * lily/piano-pedal-engraver.cc (struct Pedal_type_info): new
988         function protect()
989
990 2006-08-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
991
992         * scm/lily.scm (lilypond-all): option read-file-list: substitute
993         commandline args with contains, split by \n.
994
995         * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
996         write snippet-names file, call with -dread-file-list. Fixes
997         command limitations on 64-bit systems.
998
999         * input/regression/stencil-color-rotation.ly: new file.
1000
1001         * lily/include/translator.hh (struct Acknowledge_information):
1002         revert: don't use Protected_scm in global objects, as GUILE can't
1003         handle gc_unprotect from automated destructors on MacOS X.
1004  
1005         * lily/grob.cc (get_print_stencil): use retval.expr() as base for
1006         color, not the original stencil. Fixes combinations of
1007         color/transparency/rotation. 
1008
1009         * scripts/lilypond-book.py (main): add --formats=eps for
1010         texinfo/latex.
1011
1012         * lily/spacing-engraver.cc (stop_translation_timestep): don't
1013         crash if spacing_ is nonexistent.
1014
1015 2006-08-14  Mats Bengtsson  <mabe@s3.kth.se>
1016
1017         * scripts/lilypond-book.py (output): Remove obsolete(!?)
1018         \catcode`\@=12 in the LaTeX output.
1019
1020 2006-08-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
1021
1022         * scm/define-music-types.scm (music-descriptions):
1023         use sustain-event iso. sustain-pedal-event.
1024
1025 2006-08-11  Joe Neeman  <joeneeman@gmail.com>
1026
1027         * scripts/convert-ly.py: honour the -n command-line switch
1028
1029 2006-08-10  Han-Wen Nienhuys  <hanwen@lilypond.org>
1030
1031         * scm/output-lib.scm (bar-line::calc-glyph-name): add dashed liine
1032         break specification.
1033
1034 2006-08-10  Joe Neeman  <joeneeman@gmail.com>
1035
1036         * Documentation/user: convert-ly the user manual
1037
1038 2006-08-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
1039
1040         * stepmake/aclocal.m4: version check patch (thanks MWD)
1041
1042         * ly/music-functions-init.ly: robustness. Don't crash if
1043         currentBarNumber is not a number.
1044
1045         * VERSION (PATCH_LEVEL): bump.
1046
1047 2006-08-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
1048
1049         * stepmake/aclocal.m4: better version check; handle fooX.Y
1050         binaries too.
1051
1052         * ly/performer-init.ly: instrument name fixup.
1053
1054         * input/manual/chord-names-jazz.ly (banterProperties):
1055         instrumentName update
1056
1057         * scm/define-event-classes.scm (lambda): use ly:is-listened-event-class
1058
1059         * lily/ly-module.cc (ly_module_symbols): use ly_hash_table_keys
1060
1061         * lily/translator.cc (LY_DEFINE): ly:is-listened-event-class: new
1062         function. Use hash tables to check membership.
1063
1064         * lily/general-scheme.cc (LY_DEFINE): new function.
1065
1066         * lily/piano-pedal-engraver.cc (struct Pedal_type_info): idem
1067
1068         * lily/include/translator.hh (struct Acknowledge_information): add
1069         Protected_scm
1070
1071         * ly/music-functions-init.ly: change name to BreathingEvent
1072
1073         * input/regression/*.ly: apply it.
1074
1075         * python/convertrules.py (conv): better instrumentName conversion
1076         rule.
1077
1078         * scm/define-music-types.scm (music-descriptions): add
1079         line-break-event to LineBreakEvent music
1080
1081         * lily/music.cc (to_event): don't crash if music type not set.
1082
1083         * lily/spacing-loose-columns.cc (set_loose_columns): don't barf if
1084         spacing not set.
1085
1086         * lily/spacing-engraver.cc (stop_translation_timestep): set
1087         spacing for proportional notation too.
1088
1089         * scm/translation-functions.scm (format-bass-figure): inspect
1090         stream-event.
1091
1092         * scripts/lilypond-book.py (bindir): add bindir to $PATH.
1093
1094 2006-08-08  Joe Neeman  <joeneeman@gmail.com>
1095
1096         * lily/include/constrained-breaking.hh: add Line_details (Prob*)
1097
1098         * scm/page.scm (make-page): make it friendlier to call (esp. from C++)
1099
1100         * scm/layout-page-layout.scm (make-page-from-systems): new function
1101         (optimal-page-breaks): use the new page-breaking calling convention
1102
1103         * scm/define-context-properties.scm (all-user-translation-properties):
1104         add revokePageTurns
1105
1106         * lily/paper-column-engraver.cc (stop_translation_timestep): add
1107         revokePageTurns  functionality. If there is a special barline within
1108         the breakable region, break there instead of at the end of the region.
1109
1110         * lily/paper-book.cc (pages): use the new page-breaking calling
1111         convention
1112
1113 2006-08-07  Erik Sandberg  <mandolaerik@gmail.com>
1114
1115         * lily/lexer.ll, lily/source-file.cc: Add \sourcefileline command
1116
1117         * scripts/lilypond-book.py: insert \sourcefileline command in
1118         output, so lilypond error messages refer to the spot in the
1119         original .lytex / .itely sourcefile.
1120
1121 2006-08-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
1122
1123         * lily/spacing-loose-columns.cc (set_loose_columns): oops: use
1124         space to next column for distance to fixed col.
1125
1126         * VERSION (PACKAGE_NAME): release 2.9.14
1127
1128         * lily/pitched-trill-engraver.cc (make_trill): do set_parent also
1129         if no accidental.
1130
1131         * lily/accidental-engraver.cc (process_acknowledged): don't create
1132         accidental for trill span event. This fixes spurious accidentals
1133         on trills.
1134
1135 2006-08-04  Mats Bengtsson  <mabe@s3.kth.se>
1136
1137         * scm/define-grob-properties.scm (all-user-grob-properties):
1138         Clarify documentation of side-axis and direction. Thanks to Paul
1139         for the inspiration.
1140
1141         * lily/bar-line.cc: Add documentation for "||:" also in the
1142         interface documentation.
1143
1144 2006-08-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
1145
1146         * lily/spacing-loose-columns.cc (set_loose_columns): bugfix.
1147
1148         * lily/paper-column.cc (set_system): new function.
1149
1150         * lily/spacing-engraver.cc (stop_translation_timestep): store
1151         SpacingSpanner refs in Paper_column.
1152
1153         * lily/spacing-loose-columns.cc (set_loose_columns): rewrite
1154         compute loose clique spacing using GraceSpacing/SpacingSpanner.
1155
1156 2006-08-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
1157
1158         * lily/beam-engraver.cc (listen_beam): add method for
1159         Grace_beam_engraver too.
1160
1161 2006-08-03  Mats Bengtsson  <mabe@s3.kth.se>
1162
1163         * python/convertrules.py: Fix indentation bug that broke
1164         conversion of files older than 1.3.117.
1165         Fix escape error in the description for 2.9.6.
1166
1167 2006-08-02  Erik Sandberg  <mandolaerik@gmail.com>
1168
1169         * lily/*-engraver.cc: convert all try_music functions to listen_*
1170         functions.
1171
1172         * lily/piano-pedal-engraver.cc: some additional cleanups: use
1173         enums to represent pedal types, and calculate more data statically.
1174
1175         * scm/part-combiner.scm (recording-group-emulate): create a
1176         softcoded substitute for recording-group-engraver.cc.
1177
1178         * lily/music.cc: make a common transpose function for events and
1179         music
1180
1181         * ly/declarations-init.ly: change melisma/melismaEnd. Eliminates
1182         ManualMelismaEvent, and obsoletes Melisma_translator.
1183
1184 2006-08-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
1185
1186         * input/test/instrument-name-align.ly: update version.
1187
1188 2006-08-02  Mats Bengtsson  <mabe@s3.kth.se>
1189
1190         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
1191         Doc the --pdf flag to lilypond-book.
1192
1193 2006-07-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
1194
1195         * Documentation/topdocs/NEWS.tely (Top): add description.
1196
1197         * input/regression/tuplet-full-length-note.ly: add file.
1198
1199         * lily/instrument-name-engraver.cc (acknowledge_axis_group):
1200         always store axis group.
1201
1202 2006-07-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
1203
1204         * input/regression/instrument-switch.ly: new file.
1205
1206         * lily/instrument-switch-engraver.cc (process_music): new file.
1207
1208         * ly/engraver-init.ly: add Instrument_switch_engraver
1209
1210         * ly/music-functions-init.ly: \instrumentSwitch
1211
1212         * scm/define-context-properties.scm
1213         (all-user-translation-properties): add instrumentCueName
1214
1215         * scm/define-grobs.scm (all-grob-descriptions): add InstrumentSwitch
1216
1217 2006-07-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
1218
1219         * ly/music-functions-init.ly: music function \transposition.
1220
1221         * lily/parser.yy (command_element): softcode \transposition.
1222
1223         * lily/fall-engraver.cc (process_music): delta-pitch -> delta-step.
1224         (process_music): oops.
1225
1226         * lily/instrument-name-engraver.cc (start_spanner): new
1227         function. Create spanner when property changes.
1228         (stop_spanner): new function.
1229
1230         * python/convertrules.py (conv): add rule.
1231
1232         * lily/instrument-name-engraver.cc: shortVocalName iso. vocNam,
1233         shortInstrumentName iso. instr.
1234
1235         * scm/output-ps.scm (dashed-line): add phase argument to
1236         dashed-line.
1237
1238         * lily/bar-line.cc (dashed_bar_line): new function.
1239         (compound_barline): support \bar "dashed". 
1240
1241         * lily/lily-parser-scheme.cc (LY_DEFINE): only write
1242         --output=DIR to DIR/BASE if it is a dir. 
1243
1244         * flower/file-name.cc (file_part): new function
1245         (dir_part): new function
1246
1247         * lily/lily-parser-scheme.cc (LY_DEFINE): 
1248
1249         * DEDICATION: update
1250
1251 2006-07-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
1252
1253         * lily/instrument-name-engraver.cc: formatting.
1254
1255         * python/convertrules.py (conv): bugfix for \epsfile.
1256
1257 2006-07-25  Joe Neeman  <joeneeman@gmail.com>
1258
1259         * lily/grob.cc:
1260         
1261         * lily/gourlay-breaking.cc: Oops, these should have been included
1262         in my last commit
1263
1264 2006-07-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
1265
1266         * scripts/*.py (program_name): cleanup relocation snippets.
1267
1268         * scripts/convert-ly.py (datadir): remove LILYPONDPREFIX support.
1269
1270 2006-07-24  Joe Neeman  <joeneeman@gmail.com>
1271
1272         * scm/define-grobs.scm (all-grob-descriptions): make NonMusicalPaperColumn
1273         page-breakable by default
1274
1275         * scm/layout-page-layout.scm (space-systems): fix bug where the force isn't
1276         correctly calculated for a single-system page
1277
1278         * scm/lily-library.scm (interval-sane?): also check that the first number is no
1279         bigger than the second number
1280
1281         * lily/simple-spacer.cc (solve): allow compression even when ragged (but we
1282         acknowledge that we aren't satisfying constraints)
1283
1284         * lily/hara-kiri-group-spanner.cc (request_suicide): give equal treatment to
1285         non-Items
1286
1287         * lily/grob.cc (pure_height): add minimum-Y-extent
1288
1289         * lily/gourlay-breaking.cc (solve): don't ignore a compression force, even if we're
1290         ragged
1291
1292         * lily/constrained-breaking.cc: convert code to use new Matrix class
1293         (get_best_solution): new function
1294
1295         * scm/page.scm (make-page-stencil): don't crash if we annotate-layout when there
1296         is a page with no systems
1297
1298 2006-07-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
1299
1300         * VERSION (PACKAGE_NAME): release 2.9.13
1301
1302         * scm/define-grobs.scm (all-grob-descriptions): remove stray
1303         assignment.
1304
1305 2006-07-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
1306
1307         * Documentation/topdocs/NEWS.tely (Top): doc new features.
1308
1309         * scm/output-lib.scm (grace-spacing::calc-shortest-duration): new
1310         function.
1311
1312         * scm/define-grob-properties.scm (all-user-grob-properties):
1313         remove grace-space-factor.
1314
1315         * scm/define-grob-interfaces.scm (grace-spacing-interface): add
1316         grace-spacing-interface
1317         (spacing-options-interface): add.
1318
1319         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add Grace_spacing_engraver
1320
1321         * lily/spacing-options.cc (get_duration_space): move function from spacing-basic.cc
1322
1323         * lily/spacing-basic.cc (note_spacing): do init_from_grob on
1324         GraceSpacing object.
1325
1326         * lily/note-spacing.cc: fix prop list formatting
1327
1328         * lily/beaming-pattern.cc (de_grace): new function. Sensible
1329         beaming for grace notes too.
1330
1331         * input/regression/spacing-grace.ly: update.
1332
1333         * lily/grace-spacing-engraver.cc: new file.
1334
1335         * lily/spacing-spanner.cc: add strict-grace-spacing.
1336
1337 2006-07-20  Graham Percival  <gpermus@gmail.com>
1338
1339         * lily/parser.yy: compile fix.
1340
1341 2006-07-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
1342
1343         * scm/define-grobs.scm (all-grob-descriptions): typo.
1344
1345         * scm/framework-eps.scm (dump-stencils-as-EPSes): just strip
1346         .eps extension from includegraphics.
1347
1348         * scripts/lilypond-book.py (main): add support for --pdf. 
1349
1350         * lily/spacing-spanner.cc (calc_common_shortest_duration): use
1351         callback to compute common shortest duration.
1352         (set_springs): typo.
1353
1354         * scm/define-grob-properties.scm (all-user-grob-properties): add
1355         strict-grace-spacing.
1356
1357         * lily/spacing-determine-loose-columns.cc (is_loose_column):
1358         support float_grace_columns_.
1359
1360         * lily/spacing-options.cc (init_from_grob): new file.
1361
1362         * Documentation/topdocs/NEWS.tely (Top): doc tupletFullLengthNote.
1363
1364         * input/regression/spacing-loose-grace.ly: new file.
1365
1366         * Documentation/topdocs/NEWS.tely (Top): document new feature.
1367
1368         * lily/tuplet-engraver.cc (struct Tuplet_description): read
1369         tupletFullLengthNote too. Choose right bound depending on value.
1370
1371         * input/regression/tuplet-full-length-note.ly: new file.
1372
1373 2006-07-19  Erik Sandberg  <mandolaerik@gmail.com>
1374
1375         * lily/*-performer.cc: Converted try_music to listen_*
1376
1377         * lily/grob-info.cc, lily/engraver.cc: represent the cause of grob
1378         as a stream-event internally. Introduce event_cause (), deprecate
1379         music_cause ().
1380
1381         * scm/define-music-types.scm: Removed BusyPlayingEvent
1382         
1383 2006-07-19  Mats Bengtsson  <mabe@s3.kth.se>
1384
1385         * Documentation/user/advanced-notation.itely (Font selection):
1386         Document how to get a list of available fonts using 'lilypond
1387         -dshow-available-fonts blabla'.
1388
1389 2006-07-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
1390
1391         * GNUmakefile.in: filter lily-XXX.pdf files.
1392
1393         * scm/define-grob-interfaces.scm (bend-after-interface): add thickness.
1394
1395         * scm/define-grob-properties.scm (all-internal-grob-properties):
1396         remove delta-pitch. Use delta-position everywhere.
1397
1398         * scm/output-lib.scm (fall::print): use new order.
1399
1400         * scm/output-ps.scm (path): reorder arguments.
1401
1402         * scm/output-svg.scm (path): support for path primitive.
1403
1404         * input/regression/bend-after.ly: new file.
1405
1406         * Documentation/user/GNUmakefile ($(outdir)/%.pdf): foolproof
1407         recipe for eps -> pdf conversion.
1408
1409 2006-07-19  Erik Sandberg  <mandolaerik@gmail.com>
1410
1411         * lily/parser.yy, lily/lexer.ll: added some simplifications by
1412         Angelo Contardi.
1413
1414 2006-07-19  Graham Percival  <gpermus@gmail.com>
1415
1416         * input/manual/screech-boink.ly: moved to here.
1417
1418         * input/screech-boink.ly: deleted.
1419
1420         * scm/define-grob-properties.scm: clarify doc string.
1421
1422 2006-07-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
1423
1424         * Documentation/topdocs/NEWS.tely (Top): doc new feature.
1425
1426         * scm/output-ps.scm (path): define path.
1427
1428         * scm/define-stencil-commands.scm
1429         (ly:register-stencil-expression): add path.
1430
1431         * scm/define-music-properties.scm (all-music-properties): add delta-pitch.
1432
1433         * ly/engraver-init.ly: add Fall_engraver
1434
1435         * lily/parser.yy (music_function_event): allow musicfunction
1436         without music arg as music_function_event.
1437
1438         * lily/grob-scheme.cc (LY_DEFINE):
1439         ly:grob-robust-relative-extent. New function.
1440
1441         * scm/define-grobs.scm (all-grob-descriptions): add BendAfter
1442
1443         * scm/define-music-types.scm (music-descriptions): add BendAfterEvent.
1444
1445         * scm/output-lib.scm (fall::print): new function
1446
1447         * lily/fall-engraver.cc (stop_fall): new file.
1448
1449         * ly/music-functions-init.ly: alphabetise.
1450
1451         * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): pdf iso. eps as
1452         base.
1453
1454 2006-07-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
1455
1456         * VERSION (PATCH_LEVEL): bump version. Release 2.9.12
1457
1458         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
1459         doc pdftex usage.
1460
1461         * lily/translator-group.cc (connect_to_context): non const error message.
1462
1463         * Documentation/user/GNUmakefile ($(outdir)/%.pdf): update to use PDF
1464
1465         * scm/paper.scm (internal-set-paper-size): define landscape to #f
1466         if unset.
1467
1468         * scm/framework-ps.scm (convert-to-pdf): swap h and w in case of landscape. 
1469
1470         * stepmake/stepmake/texinfo-rules.make: strip DVI support.
1471
1472         * scm/framework-eps.scm (dump-stencils-as-EPSes): generate
1473         systems.pdftex too.
1474
1475         * scm/backend-library.scm (postscript->pdf): use -dEPSCrop for PDF.
1476
1477         * make/lilypond-vars.make (TEXINPUTS): add pdf output format.
1478
1479         * Documentation/topdocs/NEWS.tely (Top): add pdftex note.
1480
1481         * scm/output-ps.scm (resetrotation): use gsave/grestore for rotation.
1482
1483         * lily/main.cc (parse_argv): don't overwrite previous --formats string.
1484
1485         * scm/backend-library.scm (postscript->pdf): strip .eps too. 
1486
1487 2006-07-14  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1488
1489         * scm/layout-page-layout.scm: Define module, tidy code, use more
1490         functions iso. a single big one.
1491
1492         * scm/layout-page-dump.scm: move page dump functions used in two
1493         pass spacing to this file. Define module.
1494
1495         * scm/lily.scm (ly:load): don't load layout-page-layout.scm
1496          (separate module)
1497
1498         * ly/paper-defaults.ly: use module layout-page-layout.
1499
1500 2006-07-14  Erik Sandberg  <mandolaerik@gmail.com>
1501
1502         * lily/music.cc: Revised MusicEvent event class. It now contains
1503         event data directly instead of encapsulating it in music. The
1504         previously used class is renamed to OldMusicEvent.
1505
1506         * lily/stream-event.cc: Stream events are now probs.
1507         
1508         * lily/translator-group.cc, lily/translator.cc: Translators can
1509         now listen directly to stream events, by using macros
1510         [DECLARE,IMPLEMENT]_TRANSLATOR_LISTENER.
1511
1512         * lily/arpeggio-engraver.cc: Converted to use new event system
1513
1514         * THANKS: Corrected spelling mistake.
1515
1516 2006-07-12  Graham Percival  <gpermus@gmail.com>
1517
1518         * Documentation/user/SConscript, make/lilypond-vars.make,
1519         input/GNUmakefile: doc build looks in input/manual instead
1520         of input/test/
1521
1522         * input/manual/ GNUmakefile, SConscript: build files for
1523         input/manual/
1524
1525         * input/test/ various: some files moved to input/manual/ 
1526
1527         * Documentation/user/basic-notation.itely: small updates;
1528         thanks Kieren and Charles!
1529
1530 2006-07-12  Han-Wen Nienhuys  <hanwen@lilypond.org>
1531
1532         * VERSION (PACKAGE_NAME): release 2.9.11
1533
1534         * Documentation/topdocs/NEWS.tely (Top): update prop value 
1535
1536         * Documentation/user/basic-notation.itely (Tuplets): new property
1537         value.
1538
1539 2006-07-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
1540
1541         * python/convertrules.py (conv): tweaks. 
1542
1543         * VERSION (PATCH_LEVEL): bump version.
1544
1545         * python/convertrules.py (conv): add rule for
1546         tupletNumberFormatFunction.
1547
1548         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
1549         tupletNumberFormatFunction.
1550
1551         * scm/define-grobs.scm (all-grob-descriptions): calc TupletNumber
1552         text through 'text callback.
1553
1554         * lily/time-scaled-music-iterator.cc (construct_children): copy
1555         tweaks generated events.
1556
1557         * scm/define-context-properties.scm
1558         (all-user-translation-properties): remove tupletNumberFormatFunction
1559
1560         * lily/tuplet-engraver.cc (process_music): don't read
1561         tupletNumberFormatFunction
1562
1563         * scm/output-lib.scm (tuplet-number::calc-fraction-text): new
1564         function.
1565
1566 2006-07-11  Erik Sandberg  <mandolaerik@gmail.com>
1567
1568         * lily/global-context-scheme.cc: Separated ly:run-translator into
1569         smaller pieces.
1570
1571         * lily/score-engraver.cc, lily/score-performer.cc,
1572         scm/define-context-properties.scm: Make paper/midi output
1573         accessable as a context property.
1574
1575         * lily/score-translator.cc, lily/score-context.cc: Removed.
1576
1577 2006-07-07  Guido Amoruso  <guidonte@katamail.com>
1578
1579         * scm/ps-to-png.scm (Module): 
1580         * scm/framework-tex.scm (Module): 
1581         * scm/framework-ps.scm (Module): 
1582         * scm/backend-library.scm (Module): 
1583         * scm/framework-ps.scm: invoke gs with "-dDEVICEWIDTHPOINTS" and
1584         "dDEVICEHEIGHTPOINTS".
1585
1586 2006-07-04  Graham Percival  <gpermus@gmail.com>
1587
1588         * Documentation/user/ various: general improvements to
1589         "working with lilypond files" section.
1590
1591 2006-07-03  Erik Sandberg  <mandolaerik@gmail.com>
1592
1593         * lily/sequential-iterator.cc: Change the default get_music_list
1594         to read elements-callback music property
1595
1596         * scm/define-music-types.scm, scm/music-functions.scm: Cleaner
1597         processing of multimeasure rests. Softcoded
1598         sequential-music-iterator.
1599
1600         * lily/sequential-music-iterator.cc: Removed.
1601
1602 2006-06-28  Graham Percival  <gpermus@gmail.com>
1603
1604         * Documentation/user/basic-notation.itely: clarify \repeatTie.
1605
1606 2006-06-27  Erik Sandberg  <mandolaerik@gmail.com>
1607
1608         * lily/parser.yy: Wrap non-post-events in EventChords before
1609         assigning them to identifiers.
1610
1611 2006-06-27  Mats Bengtsson  <mabe@s3.kth.se>
1612
1613         * lily/bar-line.cc (compound_barline): Fix parenthesis error,
1614         gives correct vertical placement of \bar ":" in all staff
1615         sizes. Thanks Martial!
1616
1617 2006-06-26  Graham Percival  <gpermus@gmail.com>
1618
1619         * Documentation/user/invoking.itely : minor update from mailist.
1620
1621 2006-06-26  Erik Sandberg  <mandolaerik@gmail.com>
1622
1623         * lily/ various: Introduce stream events of types Prepare,
1624         OneTimeStep, CreateContext, AnnounceNewContext, RemoveContext,
1625         ChangeContext, SetProperty, RevertProperty, Override and Revert.
1626
1627         * lily/global-context*.cc: Time is now -inf before iteration
1628         starts.
1629
1630         * lily/include/context.hh: Removed unique_, init_
1631
1632         * Documentation/topdocs/NEWS: Make the feathered beam example
1633         avoid triggering a bug.
1634
1635 2006-06-24  Graham Percival  <gpermus@gmail.com>
1636
1637         * Documentation/user/ various: small additions from mailist.
1638
1639 2006-06-22  Mats Bengtsson  <mabe@s3.kth.se>
1640
1641         * ly/performer-init.ly: Add some missing links in the context
1642         hierarchy for MIDI output. There are probably some more missing!
1643
1644 2006-06-21  Graham Percival  <gpermus@gmail.com>
1645
1646         * Documentation/user/ various: minor spelling fixes;
1647         thanks Dave Luttinen!
1648
1649         * Documentation/user/ various: small clarifications;
1650         thanks Anthony Youngman!
1651
1652 2006-06-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
1653
1654         * po/fr.po: add \n appropriately.
1655
1656         * lily/lexer.ll: remove ? from version-seen?  
1657
1658 2006-06-19  John Mandereau  <john.mandereau@free.fr>
1659
1660         * po/fr.po; update translation, by Jean-Charles Malahieude and
1661         John Mandereau.
1662
1663 2006-06-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
1664
1665         * THANKS: add Markus Schneider.
1666
1667         * lily/tab-staff-symbol-engraver.cc: derive from Engraver, not
1668         Staff_symbol_engraver
1669
1670         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): don't
1671         replace staff_engraver
1672
1673         * lily/staff-symbol-engraver.cc (stop_spanner): announce end of
1674         spanner.
1675
1676         * lily/staff-collecting-engraver.cc
1677         (acknowledge_end_staff_symbol): new function
1678
1679         * lily/volta-engraver.cc (acknowledge_end_staff_symbol): new function. 
1680
1681         * lily/staff-collecting-engraver.cc
1682         (acknowledge_end_staff_symbol): new function.
1683
1684         * lily/main.cc: switch on relocation by default.
1685
1686 2006-06-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
1687
1688         * lily/spacing-spanner.cc (musical_column_spacing): set
1689         compound_fixed_note_space to 0.0. Document why.
1690
1691         * lily/simple-spacer.cc (is_sane): also have a kludge for numeric
1692         range of inverse_hooke_
1693         (Simple_spacer): init completely.
1694         (fits): const
1695         (get_line_configuration): don't use cols.resize(); it introduces
1696         initialized data.
1697
1698         * scm/framework-ps.scm (dump-page): add setstrokeadjust. 
1699
1700         * ps/music-drawing-routines.ps: remove selectfont L1 hack.
1701
1702         * lily/beaming-pattern.cc (best_splitpoint_index): urg, 2nd
1703         try. Divide by beatlength.
1704
1705         * input/regression/beaming-ternary-metrum.ly: update doc.
1706         add beatLength hack.
1707
1708         * scm/music-functions.scm (make-time-signature-set): add
1709         standard-beat-grouping. 
1710
1711 2006-06-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
1712
1713         * input/regression/tie-whole.ly: new file.
1714
1715         * lily/tie-formatting-problem.cc (set_column_chord_outline): don't
1716         cross center of note head in case of invisible stem. 
1717
1718 2006-06-16  Graham Percival  <gpermus@gmail.com>
1719
1720         * Documentation/user/ various: small fixes from mailist.
1721
1722 2006-06-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
1723
1724         * lily/breathing-sign.cc (offset_callback): idem.
1725
1726         * lily/align-interface.cc (align_to_fixed_distance): remove
1727         hungarian suffix.
1728
1729         * lily/beaming-pattern.cc (count_factor_twos): oops. We want
1730         x%2==0.
1731
1732 2006-06-15  Han-Wen Nienhuys  <hanwen@lilypond.org>
1733
1734         * VERSION (PACKAGE_NAME): release 2.9.9
1735
1736         * ly/lilypond-book-preamble.ly: add \version
1737
1738 2006-06-14  Han-Wen Nienhuys  <hanwen@lilypond.org>
1739
1740         * scripts/lilypond-book.py (PREAMBLE_LY): include
1741         lilypond-book-preamble.ly
1742
1743         * lily/stem.cc (get_beaming): return max of 0 and
1744         scm_ilength. Fixes slurring from/to beams.
1745
1746         * ly/lilypond-book-preamble.ly: new file.
1747
1748         * lily/slur.cc: add inspect-index feature.
1749
1750 2006-06-13  Graham Percival  <gpermus@gmail.com>
1751
1752         * Documentation/user/tutorial.itely: trivial fix.
1753
1754 2006-06-13  Erik Sandberg  <mandolaerik@gmail.com>
1755
1756         * lily/parser.yy, scm/ly-syntax-constructors.scm: Produce almost
1757         all non-event music in the parser via MAKE_SYNTAX.
1758
1759         * lily/parser-scheme.cc: Add ly:parser-error function
1760
1761         * scm/paper.scm: fix typo
1762
1763 2006-06-13  Han-Wen Nienhuys  <hanwen@lilypond.org>
1764
1765         * THANKS: add RT.
1766
1767         * lily/font-config.cc (init_fontconfig): add warning if cache_file
1768         is null.
1769
1770         * buildscripts/output-distance.py (test_compare_signatures):
1771         timing routines.
1772         (read_signature_file): use new signature format.
1773
1774         * scm/stencil.scm (write-system-signature): simpler signature
1775         format.
1776
1777         * lily/stem.cc (calc_stem_end_position): calc quantized-positions
1778         for beamed case. 
1779
1780         * lily/note-spacing.cc (stem_dir_correction): don't inspect
1781         stem_end_position, but estimate instead. 
1782
1783         * lily/tuplet-bracket.cc (calc_positions): look at
1784         stem-end-position for tuplet bracket slope. Fixes sloped tuplet
1785         brackets narrower than beams. 
1786
1787         * lily/lexer.ll: set version-seen? even if version is
1788         INVALID. 
1789
1790         * lily/rest.cc (y_offset_callback): bugfix: decide position
1791         override based on scm_is_number(). Fixes \rest on center staff
1792         line. 
1793
1794         * lily/beaming-pattern.cc (best_splitpoint_index): fix beaming
1795         patterns for 16th triplets.
1796
1797 2006-06-10  Graham Percival  <gpermus@gmail.com>
1798
1799         * Documentation/user/ page.itely, global.itely: editing
1800         and reorg.
1801
1802         * Documentation/user/ various: findex -> funindex.
1803
1804 2006-06-10  Erik Sandberg  <mandolaerik@gmail.com>
1805
1806         * lily/time-scaled-music-iterator.cc: Use tupletSpannerDuration to
1807         insert extra tuplet events.
1808
1809 2006-06-10  Graham Percival  <gpermus@gmail.com>
1810
1811         * Documentation/user/programming-interfaces.itely: add
1812         info from NEWS.
1813
1814         * python/convertrules.py: add annotatefoo -> annotate-foo
1815         rules.
1816
1817         * Documentation/user/global.itely: start editing.
1818
1819         * Documentation/user/page.itely: major editing, new spacing
1820         docs.
1821
1822 2006-06-10  Han-Wen Nienhuys  <hanwen@lilypond.org>
1823
1824         * scm/define-markup-commands.scm (wordwrap-markups): use
1825         output-def 'line-width if undefined.
1826
1827         * HACKING: trim outdated info.
1828
1829 2006-06-09  Mats Bengtsson  <mabe@s3.kth.se>
1830
1831         * scm/define-grobs.scm (all-grob-descriptions): Add
1832         line-spanner-interface to all grobs that already have
1833         text-spanner-interface or dynamic-text-spanner-interface
1834
1835         * scm/page.scm: Rename annotate{headers,systems,page}->
1836         annotate-*
1837
1838         * input/regression/page-spacing.ly,
1839         input/regression/page-layout-manual-position.ly: idem
1840
1841 2006-06-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
1842
1843         * lily/line-spanner.cc: cleanup property list.
1844
1845         * scripts/lilypond-book.py (find_toplevel_snippets): don't use
1846         generator expressions (2.3 compat). 
1847
1848 2006-06-09  Mats Bengtsson  <mabe@s3.kth.se>
1849
1850         * lily/vertical-align-engraver.cc: Make sure that the
1851         align{Above,Below}Context properties are included in the automatic
1852         documentation.
1853
1854 2006-06-08  Joe Neeman  <joeneeman@gmail.com>
1855
1856         * scm/paper-system.scm (paper-system-annotate): also annotate the
1857         estimated pure-Y-extent
1858
1859         * scm/define-grobs.scm: add pure-Y-extent and pure-Y-offset functions
1860
1861         * lily/system.cc (break_into_pieces): set the estimated height
1862         of each child system
1863
1864         * lily/stem.cc (pure_height): new pure-Y-extent callback
1865
1866         * lily/staff-symbol-referencer.cc (callback): don't destroy
1867         the staff-position property
1868
1869         * lily/hara-kiri-group-spanner.cc (request_suicide): split
1870         consider_suicide into two functions
1871
1872         * lily/constrained-breaking.cc (resize): use the new pure
1873         callbacks to estimate the height of a system
1874
1875         * lily/axis-group-interface.cc (pure_group_height): new
1876         side-effect-free VerticalAxisGroup height-callback
1877
1878         * lily/align-interface.cc (get_extents_aligned_translates):
1879         split align_elements_to_extents into two functions
1880         (get_pure_child_y_translation): new function
1881
1882         * lily/grob.cc: new functions for pure-Y-extent and pure-Y-offset
1883
1884         * lily/item.cc: new functions pure_is_visible and spanned_rank_iv
1885
1886         * lily/paper-score.cc: cache break_indices and columns
1887
1888         * lily/side-position-interface.cc: new pure-Y-extent callbacks
1889         
1890 2006-06-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
1891
1892         * lily/font-config.cc (init_fontconfig): do the init if
1893         cache_file, but don't look at cache_file.
1894
1895         * input/regression/quote-tie.ly: new file.
1896
1897         * lily/tie-engraver.cc (struct Head_event_tuple): add end_moment_
1898         to Head_event_tuple, so we deal gracefully with ties on
1899         cue-endings.
1900
1901         * lily/pango-font.cc (pango_item_string_stencil): type correctness
1902         for FcChar8*
1903
1904 2006-06-08  Graham Percival  <gpermus@gmail.com>
1905
1906         * input/test/ smart-transpose.ly, reverse-music.ly:
1907         \applyMusic to music functions update, thanks Michael!
1908
1909 2006-06-07  Graham Percival  <gpermus@gmail.com>
1910
1911         * input/test/ add-staccato.ly, add-text-script.ly,
1912         unfold-all-repeats.ly, music-box.ly: \applyMusic to
1913         music functions update, thanks to Michael Meixner.
1914
1915         * Documentation/user/music-glossary.tely: small fix
1916         from Francisco.
1917
1918         * Documentation/user/ various: minor additions from mailist.
1919
1920         * Documentation/user/lilypond.tely, basic-notation.itely:
1921         small test of @funindex.  (works here)
1922
1923         * input/test/font-table.ly: reduce size to partially
1924         de-ugly version in manual.
1925
1926         * Documentation/user/page.itely: new file (split former
1927         "global issues" into "page settings" and "non-musical
1928         output".
1929
1930         * Documentation/user/ various: fix @ref{}s to match
1931         new chapter names (above).
1932
1933 2006-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
1934
1935         * SConstruct (LILYPONDPREFIX): Bootstrap fix.
1936
1937 2006-06-06  Graham Percival  <gpermus@gmail.com>
1938
1939         * Documentation/user/advanced-notation.itely: add example
1940         for segno/coda on barline.
1941
1942         * tex/texinfo.tex: merge from upstream.
1943
1944 2006-06-06  Jan Nieuwenhuizen  <janneke@gnu.org>
1945
1946         * scripts/lilypond-book.py (process_snippets): Argument fix.
1947
1948         * SConstruct:
1949         * buildscripts/builder.py:
1950         * lily/SConscript: 
1951         * mf/SConscript: 
1952         * Documentation/user/SConscript:  More SCons fixes.
1953
1954 2006-06-03  Jan Nieuwenhuizen  <janneke@gnu.org>
1955
1956         * lily/font-config.cc (init_fontconfig): Only initialize if
1957         global cache_file is found.
1958
1959 2006-06-06  Erik Sandberg  <mandolaerik@gmail.com>
1960
1961         * ly/music-functions-init.ly: Updated \overrideProperty to use the
1962         new \applyOutput.
1963
1964 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
1965
1966         * VERSION (PACKAGE_NAME): release 2.9.8
1967
1968         * lily/ledger-line-engraver.cc (stop_translation_timestep): new
1969         function. Delay ledger modifying ledgered grobs to
1970         stop_translation_timestep(), to ensure that we're ledgering
1971         according to the new spanner.
1972         (acknowledge_staff_symbol): don't check for non-NULL
1973         staff_sym->get_bound()
1974
1975         * lily/staff-symbol-engraver.cc (start_spanner): set left bound on
1976         creation.
1977
1978         * Documentation/pictures/GNUmakefile (XPM_FILES): src-wildcard for
1979         pictures too.
1980
1981         * GNUmakefile.in (dist-toplevel-txt-files): dist aclocal.m4
1982         directly from srcdir/stepmake/aclocal.m4
1983         
1984         * Documentation/misc/GNUmakefile (TEXTS): use src-wildcard for
1985         disting MISC files.
1986
1987         * lily/simple-spacer.cc (get_column_desc): desc -> description.
1988
1989 2006-06-06  Joe Neeman  <joeneeman@gmail.com>
1990
1991         * lily/simple-spacer.cc (get_line_configuration): add
1992         keep-inside-line rods
1993         (struct Column_desc): add constructor
1994         (struct Rod_desc): add constructor
1995         (get_line_forces): check for forced page breaks here too
1996
1997         * lily/instrument-name-engraver.cc (acknowledge_axis_group): prevent
1998         support/elements cycles between InstrumentNames and AxisGroups
1999
2000 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
2001
2002         * config.make.in (METAFONT): remove MAKEINFO_VERSION
2003
2004         * stepmake/stepmake/topdocs-targets.make (make-txt-files): define
2005         make-txt-files target.
2006
2007         * stepmake/stepmake/toplevel-targets.make (do-top-doc): use
2008         make-txt-files target.
2009
2010         * configure.in (LINK_GXX_STATICALLY): $srcdir for readlink.py
2011
2012         * stepmake/stepmake/generic-vars.make (distdir): create dist in
2013         top-build-dir.
2014
2015 2006-06-06  Jürgen Reuter  <reuter@ipd.uka.de>
2016
2017         * Documentation/user/instrument-notation.itely,
2018         input/regression/breathing-sign-ancient.ly,
2019         input/test/divisiones.ly: Removed redundant property settings for
2020         vaticana contexts.
2021
2022         * ly/gregorian-init.ly: Rewrote \versus and \responsum in order to
2023         fix lyrics alignment problems.  They are implemented now as scheme
2024         functions that add the appropriate unicode char to the first lyric
2025         event rather than adding a separate lyric event.  Minor edit of
2026         comments.
2027
2028 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
2029
2030         * GNUmakefile.in (dist-toplevel-txt-files): new target. Don't
2031         pollute src dir with built .txt files, but install directly from
2032         Documentation/topdocs/out/
2033
2034         * buildscripts/output-distance.py
2035         (ComparisonData.create_html_result_page): put version/directories
2036         in table header.
2037
2038         * Documentation/topdocs/NEWS.tely (Top): document spacing section
2039         feature.
2040
2041         * configure.in (LINK_GXX_STATICALLY): use readlink.py to resolve links.
2042         Patch by Karl Hammar
2043         
2044         * buildscripts/readlink.py: add  file.
2045         Patch by Karl Hammar
2046
2047 2006-06-06  Joe Neeman  <joeneeman@gmail.com>
2048
2049         * lily/tuplet-number.cc (print): prevent stencil from being
2050         garbage collected.
2051
2052 2006-06-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
2053
2054         * scm/stencil.scm (write-system-signature): explicitly 
2055         -well, superfluously- close output port.
2056
2057         * buildscripts/output-distance.py (main): oops. Add extra argument.
2058
2059 2006-06-05  Graham Percival  <gpermus@gmail.com>
2060
2061         * Documentation/user/music-glossary.tely: clarified example
2062         from Francisco Vila, thanks!
2063
2064 2006-06-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
2065
2066         * input/regression/spacing-section.ly: new file.
2067
2068         * lily/input.cc (programming_error): new function.
2069
2070         * lily/spacing-engraver.cc (try_music): new function. Accept
2071         spacing-section-event
2072
2073         * lily/spacing-spanner.cc (set_springs): take slices of all
2074         columns for spacing.
2075
2076         * lily/include/paper-column.hh (class Paper_column): add
2077         Paper_column::compare.
2078
2079         * ly/spanners-init.ly (newSpacingSection): add newSpacingSection.
2080
2081         * scm/define-music-types.scm (music-descriptions): add
2082         SpacingSectionEvent
2083
2084         * lily/music-iterator.cc (report_event): use programming_error for
2085         sending non-event error.
2086
2087         * lily/input.cc (programming_error): new function
2088
2089         * buildscripts/output-distance.py (main): use compare-XXX for
2090         compare files.
2091         (main): --threshold option, default at 0.30
2092
2093         * output-distance.py (main): add --threshold option.
2094
2095 2006-06-04  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2096
2097         * scm/paper-system.scm (paper-system-annotate): fix problem when
2098         annotating an empty system
2099
2100 2006-06-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
2101
2102         * GNUmakefile.in: reinstate old web tar/copying.
2103
2104 2006-06-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
2105
2106         * lily/lyric-combine-music-iterator.cc (find_voice): return 0 if
2107         nothing changes. (Erik S) 
2108
2109         * lily/percent-repeat-iterator.cc (get_music_list): fix repeat
2110         count. (Erik S)
2111
2112 2006-05-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2113
2114         * scm/define-markup-commands.scm (whiteout): do not force
2115         foreground color of argument markup to black.
2116
2117         * scm/stencil.scm (annotate-y-interval): put arrow dimension at
2118         the left of the arrow, instead of below the arrow name, so that,
2119         when two little arrows are vertically stacked, their dimensions
2120         and name should not overlap. Add a color key parameter.
2121
2122         * scm/paper-system.scm (paper-system-annotate): Annotate
2123         next-space+next-padding instead of next-space. Annotate space
2124         between next-padding and next-space+padding, respectively, and
2125         following system extent and refpoint-Y-extent. Use colors.
2126
2127         * scm/page.scm (annotate-page): translate annotations slightly to
2128         the right.
2129
2130 2006-06-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
2131
2132         * lily/figured-bass-position-engraver.cc (acknowledge_end_slur):
2133         fix for x-staff slurs. Thanks Joe!
2134
2135         * buildscripts/output-distance.py
2136         (SystemLink.output_expression_change_count): keep track of changed
2137         details, and dump in details html page.
2138  
2139         * input/regression/figured-bass-staff.ly: add note about setting
2140         properties in Staff context.
2141
2142         * lily/figured-bass-position-engraver.cc (acknowledge_slur):
2143         add slurs and ties to support too.
2144
2145         * buildscripts/output-distance.py (main): set dest_dir
2146         argument. Add --max-count option.
2147
2148 2006-06-02  Jürgen Reuter  <reuter@ipd.uka.de>
2149
2150         * ly/gregorian-init.ly: Converted to utf-8.  Added memorable
2151         shortcuts for special unicode chars that are useful in chant
2152         notation.  Revised exisiting and added new comments.
2153
2154 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
2155
2156         * make/mutopia-rules.make: remove duplicate recipe.
2157
2158 2006-06-02  Werner Lemberg  <wl@gnu.org>
2159
2160         * tex/texinfo.cnf: Fix typo (\euro -> \minus).
2161         Add support for U+0132 (IJ) and U+0133 (ij).
2162
2163 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
2164
2165         * buildscripts/output-distance.py (FileLink): new class. collect
2166         info systems from one .ly file. 
2167         (FileLink.link_files_for_html): further tweaks.
2168
2169 2006-06-02  Graham Percival  <gpermus@gmail.com>
2170
2171         * tex/texinfo.tex: partial fix for @funindex.
2172
2173         * Documentation/user/macros.tely: uncomment @funindex (doesn't
2174         break anything).
2175
2176 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
2177
2178         * make/mutopia-vars.make (ly_examples): replace .ly.txt with .ly
2179
2180         * tex/texinfo.tex (sectionheading, q.v.): call \quoteexpand for
2181         @example too. Backportme.
2182
2183 2006-06-02  Graham Percival  <gpermus@gmail.com>
2184
2185         * tex/texinfo.cnf: added UTF-8 support for texinfo; patch
2186         from Werner Lemberg.
2187
2188 2006-06-02  Paco (Francisco Vila)  <fravd@ya.com>
2189
2190         * Documentation/user/music-glossary.tely: additional spanish
2191         updates and a lyrics fix in an example.
2192
2193 2006-06-02  Jürgen Reuter  <reuter@ipd.uka.de>
2194
2195         * scm/define-grob-properties.scm: Previous patch contained
2196         spurious line from another patch not yet committed.  Fixed.
2197
2198         * scm/define-grob-properties.scm: Add missing doc strings for
2199         ancient notation.
2200
2201 2006-06-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
2202
2203         * buildscripts/output-distance.py
2204         (ComparisonData.write_text_result_page): separate the scores, sort
2205         by geo_score.
2206
2207         * scm/framework-eps.scm (output-classic-framework): start at 1 for
2208         system signatures.
2209
2210         * buildscripts/output-distance.py (me_path): use argv[0] for
2211         sys.path extension
2212         (ComparisonData.img_cell): use colored borders.
2213
2214         * scm/stencil.scm (write-system-signature): escape newlines too.
2215         (write-system-signature): use (1,-1) interval for empty interval
2216
2217 2006-01-01  Graham Percival  <gpermus@gmail.com>
2218
2219         * Documentation/user/music-glossary.tely: Spanish updates
2220         from Francisco Vila.
2221
2222         * Documentation/user/lilypond-book.itely: addition from
2223         Vaclav Smilauer.
2224
2225         * Documentation/user/ various: edits, small additions
2226         from mailist, etc.
2227
2228 2006-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
2229
2230         * GNUmakefile.in (tree-lib-prefix-current):
2231         (tree-share-prefix-current): Use version number in tree, add
2232         `current' symlinks.
2233
2234 2006-06-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
2235
2236         * GNUmakefile.in: write VERSION, again.
2237
2238         * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
2239         $(outdir)/%.ly $(outdir)/%.ps): dump sigs for normal files too.
2240
2241         * stepmake/aclocal.m4: robuster version detection.
2242
2243         * buildscripts/output-distance.py
2244         (ComparisonData.create_html_result_page): copy only if file
2245         exists, fixup src paths.
2246
2247         * stepmake/bin/add-html-footer.py (built): junk gulp_file()
2248
2249 2006-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
2250
2251         * stepmake/aclocal.m4: Robustification for (gcc) version detection.
2252         Another datarootdir reto.
2253
2254         * cygwin/postinstall-lilypond.sh: Do not fail if info docs aren't
2255         available.  This should be moved to postinstall-lilypond-doc.
2256
2257 2006-05-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
2258
2259         * GNUmakefile.in: simplify local-WWW-post. 
2260         remove -type l from find.
2261
2262         * buildscripts/output-distance.py (ComparisonData.compare_trees):
2263         fixes. Don't follow symlinks.
2264         (ComparisonData.create_html_result_page): remove previous results.
2265         insert ../python in path.
2266
2267         * scripts/lilypond-book.py (PREAMBLE_LY): spacing fixes.
2268
2269 2006-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
2270
2271         * config.make.in (datadir): Add datarootdir to silence autoconf.
2272
2273         * stepmake/aclocal.m4: Update for autoconf-2.59d.
2274
2275 2006-05-31  Erlend Aasland  <erlenda@gmail.com>
2276
2277         * dynamic-engraver.cc: fix bug (dynamics collide with accidentals)
2278
2279         * scm/output-ps.scm (repeat-slash): fix a bug that made repeat
2280         slash beams too wide.
2281
2282 2006-05-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
2283
2284         * VERSION: release 2.9.7
2285         
2286 2006-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
2287
2288         * lily/relocate.cc (read_relocation_dir): Do not blindly
2289         dereference DIR.
2290
2291 2006-05-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
2292
2293         * lily/parser.yy: replace THIS by PARSER
2294
2295         * Documentation/index.html.in: add link to test-results.html page.
2296
2297         * Documentation/topdocs/NEWS.tely (Top): update NEWS entry.
2298
2299         * scm/translation-functions.scm (format-bass-figure): translate
2300         digits over 10 to the left
2301
2302         * scm/define-markup-commands.scm (translate-scaled): new markup.
2303
2304         * mf/feta-nummer-code.mf (code): overshoot the topright tip of the
2305         7 glyph. 
2306
2307         * ly/engraver-init.ly: add Figured_bass_engraver
2308
2309         * lily/engraver-group.cc (acknowledge_grobs): use start/stop drul.
2310
2311         * lily/figured-bass-engraver.cc (clear_spanners): use everywhere.
2312
2313         * lily/score-engraver.cc (announce_grob): only note START announces.
2314
2315         * lily/include/engraver-group.hh (Translator_group):
2316         acknowledge_hash_table_ is now drul.
2317
2318         * lily/engraver.cc (announce_end_grob): new method.
2319
2320         * lily/include/grob-info.hh (class Grob_info): add start_end_ member.
2321
2322         * lily/translator-dispatch-list.cc (create): take start_end argument.
2323
2324         * lily/include/translator.hh (TRANSLATOR_DECLARATIONS): change
2325         acknowledge_static_array_ to drul
2326
2327         * lily/include/translator.icc (ADD_END_ACKNOWLEDGER): new macro.
2328
2329         * scm/define-grob-interfaces.scm
2330         (bass-figure-alignment-interface): add bass-figure-alignment-interface
2331
2332         * scm/define-grobs.scm (all-grob-descriptions): add
2333         BassFigureAlignmentPositioning
2334
2335         * ly/Welcome-to-LilyPond-MacOS.ly: include in LilyPond, so version
2336         number stays up to date. Backportme.
2337
2338 2006-05-30  Mats Bengtsson  <mabe@s3.kth.se>
2339
2340         * Documentation/user/basic-notation.itely (Bar lines): Document
2341         the "||:" bar type. 
2342
2343 2006-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
2344
2345         * buildscripts/builder.py: Remove --ly option/target from mf-to-table.
2346
2347         * scripts/lilypond-book.py: Bugfix: do not blindly attempt
2348         .../current hack if LILYPONDPREFIX is fine.  Fixes `scons doc'
2349         build.
2350
2351         * Resurrect `scons lily' build.
2352
2353         * SConstruct (symlink_tree): Bugfix: link
2354         music-drawing-routines.ps to file iso directory.
2355
2356         * lily/SConscript: Remove kpath-guile from LIBS.
2357
2358         * SConstruct (libdir_package_version): Typo.
2359         (configure): Comment-out fontforge for lack of fontforge.pc .
2360         Also add libdir* to environment.
2361
2362 2006-05-30  Graham Percival  <gpermus@gmail.com>
2363
2364         * Documentation/user/ various: minor additions from mailist and
2365         editing.
2366
2367 2006-05-30  Paco <fravd@ya.com>
2368
2369         * Documentation/user/music-glossary.tely: numerous corrections and
2370         some new translations.
2371
2372 2006-05-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
2373
2374         * BackportmeStart.
2375         
2376         * buildscripts/output-distance.py
2377         (ComparisonData.create_html_result_page): new routine: summarise
2378         results in HTML page with images. 
2379         (ComparisonData.create_text_result_page): create summary text files too.
2380
2381         * GNUmakefile.in (web-ext): package .signature files too. They
2382         compress well. 
2383
2384         * scm/stencil.scm (write-system-signature): typo.
2385
2386         * GNUmakefile.in: create web-root/VERSION to help upload scripts.
2387
2388         * scm/stencil.scm (write-system-signature): better escaping.
2389         only write signature for music systems, not for markup systems.
2390
2391         * scm/framework-ps.scm (output-framework): dump-signatures support
2392         for plain output.
2393
2394         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): add -ddump-signatures.
2395
2396         * scm/framework-ps.scm (write-preamble): redefine mark_URI to nop
2397         for -dno-point-and-click
2398
2399         * lily/grob.cc (get_print_stencil): don't read
2400         point_and_click_global to determine whether to set grob-cause.
2401
2402 2006-05-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
2403
2404         * buildscripts/output-distance.py (main): new function.
2405         (ComparisonData): new class.
2406
2407         * lily/ledger-line-engraver.cc (acknowledge_staff_symbol): be more
2408         careful with generating new LedgerLineSpanners.
2409
2410         * lily/ledger-line-spanner.cc (set_spacing_rods): suicide if no staff.
2411
2412         * ly/engraver-init.ly: remove Ledger_line_engraver from Voice
2413         context. This fixes double ledger lines in output. 
2414
2415         * lily/system.cc (get_paper_system): remove 3 layer limit.
2416
2417         * buildscripts/output-distance.py (SystemLink.distance): new
2418         file. Compare signatures.
2419
2420         * python/safeeval.py (SafeEval.visitUnarySub): new file.
2421
2422         * lily/grob-array.cc (remove_duplicates): rename from
2423         uniq(). Sort before calling uniq() so it actually works.
2424
2425 2006-05-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
2426
2427         * scripts/lilypond-book.py (Lilypond_file_snippet.ly): strip
2428         \version from lilypond file snippet.
2429         (Lilypond_file_snippet.ly): oops. typo.
2430         (find_toplevel_snippets): urgh. again.
2431
2432         * lily/system.cc (get_paper_systems): uniq all_elements_ , to
2433         prevent duplicated broken items in output.
2434
2435         * scm/framework-eps.scm (output-classic-framework): only dump if
2436         dump-signatures is set.
2437
2438         * scm/lily.scm (define-scheme-options): add dump-signatures option.
2439
2440         * scm/stencil.scm (write-system-signature): new routine: write
2441         python parseable signature of a separate paper system.
2442         BackportmeEnd.
2443         
2444 2006-05-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
2445
2446         * lily/stanza-number-engraver.cc (process_music): use is_markup()
2447         iso is_string().
2448         include header.
2449
2450 2006-05-25  Erik Sandberg  <mandolaerik@gmail.com>
2451
2452         * translator-group.cc: send music events to engravers in
2453         non-bottom contexts.
2454
2455         * tuplet-engraver.cc: process tuplet brackets in correct order.
2456
2457 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
2458
2459         * stepmake/aclocal.m4: STEPMAKE_PYTHON(): clear cached value since
2460         arg 2 might point us to a new binary (patch by Karl Hammar)
2461         
2462 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
2463
2464         * VERSION (PACKAGE_NAME): release 2.9.6
2465
2466         * Documentation/topdocs/NEWS.tely (Top): trim explanation. 
2467
2468         * Documentation/user/*.itely: 2nd
2469         attempt: replace funindex -> findex globally.
2470
2471 2006-05-24  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2472
2473         * input/no-notation/display-lily-tests.ly: fix \applyOutput
2474         test. Add \break, \pageBreak, \pageTurn, etc, tests.
2475
2476         * scm/define-music-display-methods.scm: display methods for
2477         breaks. Fix \applyOutput.
2478
2479 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
2480
2481         * Documentation/user/macros.itexi: comment out funindex expansion. 
2482
2483         * Documentation/user/music-glossary.tely: junk \oldaddlyrics
2484         everywhere.
2485
2486         * GNUmakefile.in: fix wildcarding for scrips/out/ links. Thanks
2487         Karl Hammar. Backportme.
2488  
2489         * Documentation/user/advanced-notation.itely (Balloon help): idem.
2490
2491         * Documentation/user/changing-defaults.itely (Creating contexts): idem.
2492
2493         * Documentation/user/programming-interface.itely (Running a
2494         function on all layout objects): idem.
2495
2496         * Documentation/user/introduction.itely (Automated engraving):
2497         update \applyOutput syntax
2498
2499         * lily/lyric-combine-music-iterator.cc (start_new_syllable):
2500         remove debugging hook.
2501
2502         * configure.in (LINK_GXX_STATICALLY): use "" to allow $
2503         expansion. 
2504
2505         * Documentation/user/GNUmakefile (TEXI2DVI_FLAGS): add -E.
2506
2507         * stepmake/stepmake/texinfo-rules.make ($(outdir)/%.dvi): add
2508         TEXI2DVI_FLAGS to texi2dvi invocation. 
2509
2510 2006-05-24  Erik Sandberg  <mandolaerik@gmail.com>
2511
2512         * lily/chord-tremolo-*.cc: Reworked how \repeat "tremolo"
2513         works. More work is done by iterator now, and engraver has been
2514         very much simplified.
2515
2516         * lily/translator-group.cc: try_music is now invoked through a
2517         listener
2518
2519         * lily/*-iterator.cc: Massive cleanups. Junked
2520         try_music_in_children globally. Renamed try_music to report_event,
2521         and made that method descend to a bottom context automatically.
2522
2523         * lily/event-iterator.cc: New file.
2524
2525         * lily/output-property-iterator.cc,
2526         lily/old-lyric-combine-music-iterator.cc: Removed.
2527
2528         * python/convert-rules.py: Modified the syntax for \applyOutput.
2529
2530 2006-05-23  Graham Percival  <gpermus@gmail.com>
2531
2532         * stepmake/stepmake/texinfo-rules.make: added -E, allows pdf doc
2533         creation.
2534
2535         * Documentation/user/ various: stuff that might have helped
2536         to fix the pdf creation, plus some minor doc additions.
2537
2538         * Documentation/user/changing-defaults.itely: remove @b from
2539         @b{ @internasref{foo}}; this breaks texi2dvi -E.
2540
2541 2006-05-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
2542
2543         * lily/beaming-pattern.cc (beamify): deal with negative start
2544         moments for beaming patterns.
2545
2546 2006-05-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
2547
2548         * lily/beaming-info.cc (beamify): new function: read beatLength
2549         and beatGrouping from context. 
2550
2551         * input/regression/beam-beat-grouping.ly (Module): new file.
2552
2553         * input/regression/beam-unconnected-beamlets.ly (Module): new file.
2554
2555         * lily/beam.cc (get_beam_segments): generate events for
2556         max_connect_ case too.
2557         (get_beam_segments): read Stem::max-beam-connect.
2558
2559         * input/regression/beam-single-stem.ly: new file.
2560
2561         * lily/stem.cc (set_beaming): use #f as signaling value for
2562         beamcount 0.
2563
2564         * lily/beam-engraver.cc (typeset_beam): set right bound if unset.
2565
2566         * lily/beam.cc (set_beaming): read clip-edges property.
2567         (calc_direction): don't suicide for single stem.
2568
2569         * lily/beaming-info.cc (best_splitpoint_index): take bool*
2570         argument, remove 1<<15 hack. Remove clip_edges() 
2571
2572         * lily/hairpin.cc (print): only do padding for nonmusical bounds
2573
2574 2006-05-21  Graham Percival  <gpermus@gmail.com>
2575
2576         * Documentation/user/basic-notation.itely: reorg.
2577
2578         * Documentation/user/ various: minor fixes.
2579
2580 2006-05-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
2581
2582         * lily/stencil-expression.cc (register_stencil_head): opps, append
2583         to cdr of static SCM object.
2584
2585 2006-05-19  Graham Percival  <gpermus@gmail.com>
2586
2587         * Documentation/user/README.txt, lilypond.tely, macros.itexi:
2588         update framework for command index.  DOC WRITERS: use @funindex
2589         instead of @cindex @code{}.
2590
2591         * Documentation/user/ various: replace @cindex @code{} => @funindex
2592
2593 2006-05-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
2594
2595         * lily/beam.cc (set_stem_lengths): trigger 'beaming callback, in
2596         case positions is set manually. 
2597
2598 2006-05-18  Erik Sandberg  <mandolaerik@gmail.com>
2599         
2600         * scm/ly-syntax-constructors.scm: New file. Converted a few syntax
2601         rules to Scheme.
2602
2603 2006-05-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
2604
2605         * Documentation/user/changing-defaults.itely (Contexts explained):
2606         use absolute dimension for @image.
2607
2608         * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): generate PNG
2609         out image for illustration too.
2610         ($(outdir)/%.png): add more png <-> eps rules. 
2611
2612 2006-05-17  Graham Percival  <gpermus@gmail.com>
2613
2614         * Documentation/user/ various: remove trailing whitespace, cosmetic
2615         change to reduce changes produced by diff.
2616
2617 2006-05-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
2618
2619         * lily/main.cc (do_chroot_jail): correctness tweak.
2620
2621         * python/lilylib.py (system): import subprocess in system () only.
2622
2623         * scripts/*.py: use TARGET_PYTHON iso PYTHON. Backportme.
2624
2625         * make/substitute.make (ATVARIABLES): add TARGET_PYTHON as subst
2626         variable. Backportme.
2627
2628 2006-05-17  Erik Sandberg  <mandolaerik@gmail.com>
2629         
2630         * lily/parser.yy: Change all syntax rules of type Music to SCM type
2631
2632 2006-05-17  Werner Lemberg  <wl@gnu.org>
2633
2634         * lily/lexer.ll (init_signature_has_table): Add
2635         `scm-scm-music-music'.
2636
2637         * lily/parser.yy (MUSIC_FUNCTION_SCM_SCM_MUSIC_MUSIC): New token.
2638         (Generic_prefix_music_scm): Add rule for it.
2639
2640         * lily/quote-iterator.cc (Quote_iterator::process): Handle
2641         `quoted-transposition' property.
2642
2643         * ly/music-functions-init.ly (transposedCueDuring): New function.
2644
2645         * scm/define-music-properties.scm (all-music-properties): Updated.
2646
2647         * Documenation/topdocs/NEWS.itely: Document it.
2648
2649 2006-05-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
2650
2651         * python/lilylib.py (system): move import subprocess to system()
2652         definition. 
2653
2654         * python/convertrules.py (conv): fix convert-ly rules for 2.9.4
2655
2656         * VERSION (PATCH_LEVEL): release 2.9.5
2657         
2658         * Documentation/topdocs/INSTALL.texi (Top): update versions and
2659         build instructions. 
2660
2661         * ly/engraver-init.ly: switch on hairpinToBarline by default.
2662
2663 2006-05-16  Graham Percival  <gpermus@gmail.com>
2664
2665         * Documentation/user/basic-notation.itely: editing from Dave, thanks!
2666
2667         * Documentation/user/ various: minor fixes.
2668
2669 2006-05-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
2670
2671         * Documentation/topdocs/NEWS.tely (Top): add hairpinToBarline feature.
2672
2673 2006-05-16  Mats Bengtsson  <mabe@s3.kth.se>
2674
2675         * Documentation/user/advanced-notation.itely (Instrument names):
2676         Modified obsolete instruction on how to move instrument names away
2677         from the staves. Hmm, at second thought the bug probably has been
2678         solved, so the full bug description should probably be removed.
2679
2680 2006-05-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
2681
2682         * lily/dynamic-engraver.cc (typeset_all): hang ending on
2683         currentCommandColumn. 
2684
2685         * lily/hairpin.cc (print): also add padding for non-neighbor
2686         hairpin bounds.
2687
2688         * scm/define-context-properties.scm
2689         (all-user-translation-properties): add hairpinToBarline
2690
2691         * input/regression/hairpin-to-barline.ly: new file.
2692
2693         * lily/context.cc (internal_send_stream_event): thinko fix.
2694
2695         * lily/tie.cc (set_default_control_points): robustness fix.
2696
2697         * python/musicxml.py (Part.interpret): don't complain about
2698         incomplete measures.
2699
2700         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): only add
2701         new music if last_event_chord() returned None.
2702
2703         * python/musicxml.py (Part.interpret): skip back over chord notes.
2704
2705 2006-05-16  Erik Sandberg  <mandolaerik@gmail.com>
2706         
2707         * lily/percent-repeat-engraver.cc, lily/parser.yy,
2708         lily/define-music-types.cc, lily/percent-repeat-iterator.cc,
2709         lily/slash-repeat-engraver.cc,
2710         lily/include/percent-repeat-iterator.hh: Rework percent repeats:
2711         iterator sends PercentEvents
2712
2713         * lily/time-scaled-music-iterator.cc, lily/tuplet-engraver.cc:
2714         rework tuplets: send start/stop events to engraver
2715
2716         * lily/context.cc, lily/music.cc, lily/context-scheme.cc: Add
2717         dispatchers event-source and events-below to Context
2718         
2719 2006-05-15  Graham Percival  <gpermus@gmail.com>
2720
2721         * Documentation/user/README.txt: update info for doc writers.
2722
2723         * Documentation/user/programming-interface.itely: integrate
2724         Nicolas' fixes for chapter rewrite.
2725
2726         * Documentation/user/ various: minor fixes.
2727
2728 2006-05-15  Han-Wen Nienhuys  <hanwen@lilypond.org>
2729
2730         * lily/clef-engraver.cc: cleanup.
2731
2732         * Documentation/user/GNUmakefile: dist context-example.eps too.
2733
2734         * lily/key-engraver.cc (create_key): use
2735         explicitKeySignatureVisibility for cancellation too. 
2736
2737         * lily/font-config.cc (init_fontconfig): don't close file if
2738         f==NULL. 
2739
2740 2006-05-15  Erlend Aasland  <erlenda@gmail.com>
2741
2742         * Documentation/topdocs/NEWS.tely: niente and rotation news
2743
2744 2006-05-14  Erlend Aasland  <erlenda@gmail.com>
2745
2746         * lily/include/stencil.hh
2747         * lily/stencil.cc (rotate): new function. Makes it possible
2748         to rotate a stencil around a given offset.
2749
2750         * lily/grob.cc (get_print_stencil): add rotation support
2751
2752         * lily/stencil-interpret.cc (interpret_stencil_expression):
2753         add rotation support
2754
2755         * lily/stencil-scheme.cc (ly:stencil-rotate): new function
2756
2757         * scm/define-grob-properties.scm: add 'rotation property
2758
2759         * scm/define-markup-commands.scm: add rotate markup command
2760         
2761         * scm/output-ps.scm: add rotation support in PostScript backend
2762
2763         * scm/output-svg.scm: add rotation support in SVG backend
2764
2765 2006-05-13  Graham Percival  <gpermus@gmail.com>
2766
2767         * Documentation/user/music-glossary.itely: French correction.
2768
2769         * Documentation/user/programming-interface.itely: major
2770         new docs, some reorg, some info from Nicolas.
2771
2772         * Documentation/user/ various: small fixes.
2773
2774 2006-05-12  Mats Bengtsson  <mabe@s3.kth.se>
2775
2776         * Documentation/user/programming-interface.itely (Markup
2777         programmer interface): Remove duplicate text.
2778
2779 2006-05-12  Graham Percival  <gpermus@gmail.com>
2780
2781         * Documentation/user/context-example.eps: new file.
2782
2783         * Documentation/user/changing-defaults.itely: set up file to
2784         use eps image.
2785
2786         * Documentation/user/programming-interface.itely: changes
2787         from mailist.
2788
2789 2006-05-12  Han-Wen Nienhuys  <hanwen@lilypond.org>
2790
2791         * configure.in (LINK_GXX_STATICALLY): python 2.4 req.
2792
2793 2006-05-11  Graham Percival  <gpermus@gmail.com>
2794
2795         * Documentation/user/programming-interface.itely: first round of
2796         editing and merging emails from Nicolas.
2797
2798         * Documentation/user/scheme-tutorial: minor edit.
2799
2800 2006-05-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
2801
2802         * python/musicxml.py (Xml_node.__init__): _attribute_dict stores
2803         XML attributes.
2804         (Xml_node.message): use it.
2805
2806         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): 
2807         oops. Add duration argument.
2808
2809 2006-05-10  Joe Neeman  <joeneeman@gmail.com>
2810
2811         * lily/paper-column-engraver.cc (make_columns):
2812         * scm/define-grobs.scm: Revert my previous change and set the default
2813         in define-grobs.scm instead.
2814
2815 2006-05-09  Graham Percival  <gpermus@gmail.com>
2816         
2817         * Documentation/user/changing-defaults.itely: general editing,
2818         info about \set and \override.
2819
2820         * Documentation/user/tweaking.itely, advanced-notation.itely:
2821         fixes from Dave Luttinen, thanks!
2822
2823 2006-05-09  Joe Neeman  <joeneeman@gmail.com>
2824
2825         * lily/paper-column-engraver.cc (make_columns): By default, a column
2826         needs to be breakable.
2827
2828 2006-05-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
2829
2830         * scripts/musicxml2ly.py (musicxml_clef_to_lily): use new
2831         Attributes methods
2832         (musicxml_time_to_lily): idem
2833         (musicxml_key_to_lily): idem
2834         (instrument_drumtype_dict): dict for supported drumtypes.
2835         (LilyPondVoiceBuilder.__init__): new class: sanely keep track of
2836         moments and pending mm rests
2837         (musicxml_voice_to_lily_voice): rewrite to use LilyPondVoiceBuilder
2838         (musicxml_voice_to_lily_voice): strip KeyChangeEvents for drums.
2839         (musicxml_voice_to_lily_voice): add mode change.
2840         (option_parser): lxml.etree (http://codespeak.net/lxml/) for more
2841         speed and less memory usage (factor 5 to 10).
2842         (convert): write -defs.ly  and driver file separately so people
2843         can script their own part extraction.
2844
2845         * python/musicxml.py (minidom_demarshal_node): new function:
2846         separate minidom handling.
2847         (lxml_demarshal_node): new function: support lxml.etree too.
2848         (Xml_node.message): new function: verbose error message, with XML
2849         path to offending node.
2850         (Attributes.get_measure_length): sane interface to MusicXML attributes.
2851         (Part_list.generate_id_instrument_dict): new method: collect
2852         instrument names, to be able to set drum_type.
2853         (Part.interpret): handle underfull measures
2854         (Part.interpret): assign instrument names.
2855
2856         * python/musicexp.py (Output_printer.close): new method
2857         (MusicWrapper.print_ly): new class: support other modes,
2858         eg. \drummode
2859         (BarCheck.print_ly): new class. Support bar checks, with comments
2860         and fancy barchecks. 
2861         (NoteEvent.__init__): also set drum_type for drum notes.
2862         (MultiMeasureRest.lisp_expression): dump mm rests.
2863
2864         * lily/paper-column-engraver.cc (stop_translation_timestep): set
2865         line-break-permission if forbidBreak is not set.
2866
2867 2006-05-09  Joe Neeman  <joeneeman@gmail.com>
2868
2869         * scm/define-context-properties.scm:
2870         * scm/define-grob-properties.scm:
2871         * scm/define-grobs.scm:
2872         * scm/define-music-display-methods.scm:
2873         * scm/define-music-properties.scm:
2874         * scm/define-music-types.scm:
2875         * scm/music-functions.scm:
2876         * ly/declarations-init.ly:
2877         * lily/include/constrained-breaking.hh:
2878         * lily/system.cc:
2879         * lily/spaceable-grob.cc:
2880         * lily/simple-spacer.cc:
2881         * lily/paper-score.cc:
2882         * lily/paper-column.cc:
2883         * lily/paper-column-engraver.cc:
2884         * lily/item.cc:
2885         * lily/gourlay-breaking.cc:
2886         * lily/constrained-breaking.cc:
2887         * python/convertrules.py:
2888         Change "penalty", "page-penalty" and "breakable" to "line-break-penalty",
2889         "page-break-penalty" and "line-break-permission".
2890         Add "page-break-permission", "page-turn-permission" and "page-turn-penalty".
2891         Replace BreakEvent with LineBreakEvent, PageBreakEvent and PageTurnEvent.
2892
2893         * lily/bar-engraver.cc:
2894         * lily/beam-engraver.cc:
2895         * lily/forbid-break-engraver.cc:
2896         * lily/ligature-engraver.cc:
2897         * lily/paper-column-engraver.cc:
2898         * lily/percent-repeat-engraver.cc:
2899         * lily/score-engraver.cc:
2900         * lily/score-engraver.hh:
2901         * lily/paper-column-engraver.hh:
2902         Inter-engraver communication regarding line breaks is done through context
2903         properties (Score.forbidBreak) instead of function calls.
2904
2905 2006-05-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
2906
2907         * VERSION (PACKAGE_NAME): release 2.9.4
2908
2909 2006-05-08  Graham Percival  <gpermus@gmail.com>
2910
2911         * Documentation/user/working.itely: proofreading from Dave
2912         Luttinen, thanks.
2913
2914         * Doucmentation/user/README.txt: updated with manual style info.
2915
2916         * Documentation/user/ various: trim linewidth to 78 chars.
2917
2918 2006-05-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
2919
2920         * scm/define-grob-properties.scm (all-internal-grob-properties):
2921         remove chord-tremolo property.
2922
2923         * lily/beam.cc (get_beam_segments): don't use stem position as
2924         base for broken ends.
2925
2926 2006-05-06  Graham Percival  <gpermus@gmail.com>
2927
2928         * Documentation/user/putting.itely: proofreading from Dave
2929         Luttinen, thanks!
2930
2931         * Documentation/user/ various: more reorg and clarifications.
2932
2933 2006-05-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
2934
2935         * scm/lily.scm (TEX_STRING_HASHLIMIT): move from framework-texstr.scm.
2936
2937         * ly/music-functions-init.ly: new function featherDurations
2938
2939         * lily/beam.cc: read grow-direction for feathered beaming.
2940
2941         * Documentation/topdocs/NEWS.tely (Top): typo.
2942
2943 2006-05-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
2944
2945         * lily/include/beam.hh (struct Beam_stem_segment): add gapped_ for
2946         tremolo beams.
2947
2948 2006-05-05  Erik Sandberg  <mandolaerik@gmail.com>
2949         * lily/context.cc, lily/global-context.cc: Added 'unique' member,
2950         used by music streams.
2951
2952         * lily/dispatcher.cc, lily/dispatcher-scheme.cc,
2953         lily/stream-event.cc, lily/stream-event-scheme.cc,
2954         lily/listener.cc, lily/scheme-listener.cc,
2955         lily/scheme-listener-scheme.cc, lily/include/dispatcher.hh,
2956         lily/include/stream-event.hh, lily/include/listener.hh,
2957         lily/include/scheme-listener.hh, scm/define-event-classes.scm:
2958         Created data structures for music streams.
2959         
2960 2006-05-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
2961
2962         * lily/beam.cc (get_beam_segments): new function. Reorganise the
2963         construction of a beam. 
2964         (print): rewrite. 
2965
2966         * flower/include/std-vector.hh (default_compare): use only one comparison.
2967
2968         * scm/define-markup-commands.scm (note-by-number): remove debug display.
2969         (note-by-number): further attachment fixes.
2970
2971         * scm/lily-library.scm (ordered-cons): new function.
2972         (interval-index): new function
2973
2974         * lily/note-head-scheme.cc (LY_DEFINE): new file.
2975
2976         * lily/note-head.cc (get_stem_attachment): new function.
2977
2978         * scm/define-markup-commands.scm (note-by-number): read 'style
2979         property. 
2980
2981         * input/regression/markup-note.ly: show note-head style option.
2982
2983         * mf/feta-bolletjes.mf (overdone_heads): fix attachment points for
2984         triangle head.
2985
2986 2006-05-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
2987
2988         * mf/GNUmakefile (NCSB_OTFS): remove old ncsb detection further.
2989
2990         * configure.in (LINK_GXX_STATICALLY): fix for ncsb detection.
2991
2992         * lily/include/constrained-breaking.hh: GCC 4 fix.
2993
2994 2006-05-04  Joe Neeman  <joeneeman@gmail.com>
2995
2996         * lily/simple-spacer.cc: Remove class Simple_spacer_wrapper.
2997         Replace it with functions get_line_forces and get_line_configuration.
2998         (class Simple_spacer): Make data private.
2999         Rewrite compression algorithm to be faster and simpler.
3000
3001         * lily/simple-spacer-scheme.cc (ly_solve_rod_and_spring_problem):
3002         * lily/gourlay-breaking.cc (solve):
3003         * lily/constrained_breaking.cc (space_line):
3004         Change it to the new simple-spacer code.
3005
3006         * lily/paper-score.cc (get_paper_systems):
3007         (Paper_score):
3008         (process):
3009         Delay breaking the systems until they are requested.
3010         (find_break_indices):
3011         Use vsize for indices.
3012         (calc_breaking):
3013         Move the "Calculating line breaks" message here.
3014
3015         * lily/system.cc (pre_processing):
3016         Move the "Calculating line breaks" message away from here.
3017         (break_into_pieces):
3018         Allow multiple calls to this function in sequence (with touching-but-
3019         not-overlapping breakpoints).
3020
3021         * lily/constrained-breaking.cc:
3022         Replace most of the get_XXXX functions with get_line_details.
3023         Only calculate the force for each line. Calculate configurations only
3024         for the lines we will actually use.
3025         Replace cols_ with lines_.
3026
3027 2006-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3028
3029         * mf/GNUmakefile (depth): remove FC_FIND.
3030
3031         * config.make.in (NCSB_SOURCE_FILES): subst NCSB_SOURCE_FILES
3032
3033         * configure.in (LINK_GXX_STATICALLY): call fc-match from within configure.
3034
3035         * scm/framework-ps.scm (write-preamble): new function.
3036         (write-preamble): load mac fonts via fondu, even if gs-font-load
3037         is set.
3038
3039 2006-05-03  Werner Lemberg  <wl@gnu.org>
3040
3041         * mf/GNUmakefile (FC_FIND): Fix typo.
3042
3043 2006-05-03  Erlend Aasland  <erlenda@gmail.com>
3044
3045         * stepmake/stepmake/generic-targets.make (cvs-clean): also remove out-www dirs.
3046
3047 2006-05-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
3048
3049         * stepmake/aclocal.m4: run python-config for crosscompiling
3050         flags. 
3051
3052         * scripts/lilypond-book.py (Lilypond_file_snippet.my_system): add
3053         -f png for HTML, TEXINFO formats. 
3054
3055         * input/tutorial/lbook-html-test.html: new file.
3056
3057         * lily/include/tie-formatting-problem.hh (class
3058         Tie_formatting_problem): index Chord_outline_map by Tuple2 for
3059         [column, direction]. This fixes laissez vibrer ties.
3060  
3061         * flower/include/tuple.hh (struct Tuple2): new file.
3062
3063         * mf/GNUmakefile (FC_FIND): new function. Find ncsb using
3064         $(FCMATCH), only if $(NCSB_DIR) not set. 
3065
3066         * configure.in (LINK_GXX_STATICALLY): only warn if $NCSB_DIR set.
3067
3068         * config.make.in (DOCUMENTATION): set FCMATCH.  
3069
3070         * autogen.sh (srcdir): don't set --with-ncsb-dir. 
3071
3072 2006-05-03  Graham Percival  <gpermus@gmail.com>
3073
3074         * Documentation/user/ various: final round of reorg.
3075
3076         * Documentation/user/instrument-notation.itely: some more
3077         fixes from Eduardo, thanks!
3078
3079 2006-05-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
3080
3081         * VERSION (PACKAGE_NAME): release 2.9.3
3082
3083         * flower/file-path.cc (is_dir): canonicalize file name before stat'ing.
3084
3085         * lily/relocate.cc (framework_relocation): remove old relocation stuff.
3086
3087 2006-05-01  Mats Bengtsson  <mabe@s3.kth.se>
3088
3089         * scm/define-grob-properties.scm (all-user-grob-properties):
3090         Correct typo, thanks to Eduardo.
3091
3092 2006-05-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
3093
3094         * scripts/GNUmakefile (SEXECUTABLES): remove lilypond-ps2png.scm
3095
3096         * buildscripts/lilypond-words.py (F): indent fix.
3097
3098         * input/regression/tie-arpeggio-collision.ly: new file.
3099
3100         * lily/tie-formatting-problem.cc (set_column_chord_outline): new
3101         function: store outlines per column rank.
3102
3103         * lily/include/tie-configuration.hh (class Tie_configuration): add
3104         column_ranks_ to specification and configuration, to distinguish
3105         between ties for different heads in arpegiated chords.
3106
3107         * lily/relocate.cc (framework_relocation): use INSTALLER_PREFIX.
3108
3109         * *.py: more 4 space indents.
3110
3111         * autogen.sh (conf_flags): set sensible default for with-ncsb-dir
3112
3113 2006-05-01  Joe Neeman  <joeneeman@gmail.com>
3114
3115         * scm/lily-library.scm: Fix guile 1.6 compatibility in inf? and nan?
3116
3117 2006-05-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
3118
3119         * buildscripts/pfx2ttf.fontforge (err): create OTF files.
3120
3121         * scripts/abc2ly.py (dump_score): indent of 4 for python code. 
3122
3123         * configure.in (LINK_GXX_STATICALLY): remove locate() call.
3124
3125 2006-04-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3126
3127         * python/convertrules.py (conv): indent 4 for python files.
3128
3129 2006-04-29  Mats Bengtsson  <mabe@s3.kth.se>
3130
3131         * Documentation/user/changing-defaults.itely (Creating contexts):
3132         Clarify \new semantics.
3133
3134 2006-04-28  Graham Percival  <gpermus@gmail.com>
3135
3136         * Documentation/user/ various: major new sections in the
3137         Learning manual, slight reorg elsewhere.
3138
3139 2006-04-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
3140
3141         * mf/GNUmakefile (MFTRACE_FLAGS): add $(outdir) to $(ENCODING_FILE) 
3142
3143         * scm/framework-ps.scm (output-framework): remove PageMedia
3144
3145 2006-04-27  Graham Percival  <gpermus@gmail.com>
3146
3147         * Documentation/user/ tweaks.itely, working.itely: new
3148         files, being more advanced "learning manual" chapters.
3149
3150         * Documentation/user/ tutorial, putting, lilypond: reorg.
3151
3152 2006-04-26  Graham Percival  <gpermus@gmail.com>
3153
3154         * input/regression/lyric-combine-polyphonic.ly: fixed test
3155         (no more "can't find context `one'" error).
3156
3157 2006-04-25  Joe Neeman <joeneeman@gmail.com>
3158
3159         * lily/stem-tremolo.cc (print): fix whole note tremolo placement
3160
3161         * input/regression/stem-tremolo.ly: add 2 more whole note examples
3162         
3163 2006-04-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3164
3165         * lily/relocate.cc (read_relocation_dir): new function.
3166
3167 2006-04-26  Graham Percival  <gpermus@gmail.com>
3168
3169         * Documentation/user/instrument-notation.itely: a few more fixes
3170         from Eduardo, thanks!
3171
3172         * Documentation/user/README.txt: new file; contains info on
3173         style that used to be in lilypond.tely.
3174
3175         * Documentation/user/ various: first round of doc reorg.
3176
3177         * Documentation/user/baer-flat-bw.png: remove alpha bit from
3178         graphic; this probably causes problems on some pdf
3179         viewers, notably Adobe Acrobat.
3180
3181 2006-04-24  Graham Percival  <gpermus@gmail.com>
3182
3183         * Documentation/user/instrument-notation.itely: many alterations
3184         to Vocal music, from Eduardo Viera.
3185
3186 2006-04-23  Graham Percival  <gpermus@gmail.com>
3187
3188         * Documentation/user/instrument-notation.itely: fix \new
3189         instead of \context problem.
3190
3191 2006-04-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3192
3193         * lily/relocate.cc (expand_environment_variables): new function.
3194         (read_line): id.
3195         (read_relocation_file): id.
3196
3197         * scm/stencil.scm (eps-file->stencil): fix EPS PS embedding code 
3198
3199 2006-04-21  Erlend Aasland  <erlenda@gmail.com>
3200
3201         * ly/engraver-init.ly: remove old comments from TabVoice
3202
3203 2006-04-20  Graham Percival  <gpermus@gmail.com>
3204
3205         * Documentation/user/instrument-notation.itely: added Erlend's
3206         latest doc patch, thanks!
3207
3208 2006-04-19  Erlend Aasland <erlenda@gmail.com>
3209
3210         * lily/include/slur.hh:
3211         * lily/slur.cc:
3212         * lily/phrasing-slur-engraver.cc:
3213         * lily/slur-engraver.cc: Fix 'cut & paste' code by merging
3214         acknowledge_extra_object () from Phrasing_slur_engraver:: and
3215         Slur_engraver:: and putting it in
3216         Slur::auxiliary_acknowledge_extra_object ().
3217
3218         * ps/music-drawing-routines.ps (draw_dashed_slur): fix another bug
3219
3220         * lily/note-collision.cc: fix a comment
3221
3222 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
3223
3224         * stepmake/bin/add-html-footer.py: fix footer position in
3225         generated html files: before </body> and </html> tags.
3226
3227 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
3228
3229         * scripts/GNUmakefile: revert last "fix", which rather broke make.
3230         Earlier successive `make' commands finally compiled ok.
3231
3232         * Documentation/topdocs/INSTALL.texi: require mftrace 1.1.19.
3233
3234 2006-04-18  Erlend Aasland <erlenda@gmail.com>
3235
3236         * lily/include/stem-tremolo.hh:
3237         * lily/stem-tremolo.cc: move rotated_box () to Lookup:: and update
3238         callers.
3239
3240         * lily/lookup.cc:
3241         * lily/include/lookup.hh: add rotated_box ()
3242
3243 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
3244
3245         * scripts/GNUmakefile: bugfix: run help2man only after scripts have 
3246         been generated. Fixes "can't get `--help'" bug after make clean.
3247
3248         * THANKS: alphabetize contributors.
3249
3250 2006-04-17  Graham Percival  <gpermus@gmail.com>
3251
3252         * Documentation/user/instrument-notation.itely: added Erlend's
3253         tabs and banjo doc patch.  Thanks!
3254
3255 2006-04-17  Erlend Aasland  <erlenda@gmail.com>
3256
3257         * scm/define-grobs.scm: fix stem-attachment for tablature note heads.
3258
3259         * ps/music-drawing-routines.ps (draw_dashed_line): fix dash pattern bug.
3260
3261         * scm/output-lib.scm: add some more predefined string tunings.
3262
3263         * Documentation/user/instrument-notation.itely: and doc them.
3264
3265 2006-04-16  Jürgen Reuter  <reuter@ipd.uka.de>
3266
3267         * ly/engraver.ly: Remove obsolete comments.
3268
3269         * ly/gregorian-init.ly: Define default layout block.
3270
3271         * input/puer-fragment.ly: Updated and extended.
3272
3273 2006-04-15  Jan Nieuwenhuizen  <janneke@gnu.org>
3274
3275         * lily/lily-parser-scheme.cc: Use them to fix --output=DIR/BASE
3276         pdf conversion behaviour.
3277
3278         * flower/file-name.cc (dir_name)
3279         (get_working_directory): Move from relocate.cc.
3280
3281         * lily/relocate.cc (setup_paths): Remove rogue stat calls.
3282         
3283         * lily/relocate.cc: Encapsulate sys/stat.h in
3284         HAVE_STAT_H.
3285
3286 2006-04-14  Graham Percival  <gpermus@gmail.com>
3287
3288         * Documentation/user/ various: small updates from Cameron
3289         and Juergen, thanks!
3290
3291         * Documentation/user/ various: small updates of my own.
3292
3293         * THANKS: 2.7 -> 2.8.
3294
3295 2006-04-11  Graham Percival  <gpermus@gmail.com>
3296
3297         * scm/define-context-properties.scm: typo.
3298
3299         * Documentation/user/ : many more small updates.
3300
3301 2006-04-13  Jürgen Reuter  <reuter@ipd.uka.de>
3302
3303         * scm/define-music-types.scm: disposed "docme".
3304
3305 2006-04-11  Erlend Aasland  <erlenda@gmail.com>
3306
3307         * lily/hairpin.cc: make niente circles a bit smaller.
3308
3309 2006-04-10  Erlend Aasland  <erlenda@gmail.com>
3310
3311         * mf/GNUmakefile: remove redundant mftrace check. Also remove
3312         get-pfa and get-*-fonts targets.
3313
3314 2006-04-10  Graham Percival  <gpermus@gmail.com>
3315
3316         * THANKS, Documentation/user/ basic-notation, advanced-notation,
3317         music-glossary, programming-interface: more minor fixes
3318         from mailist.
3319
3320         * scm/define-grob-properties.scm: clarified direction, thanks Mats!
3321
3322         * scm/define-context-properties.scm: another old \property update.
3323         This time tested for compiling!
3324
3325 2006-04-10  Erlend Aasland  <erlenda@gmail.com>
3326
3327         * mf/GNUmakefile: fix for mftrace version >= 1.2.0
3328
3329 2006-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
3330
3331         * scm/define-context-properties.scm (all-user-translation-properties): 
3332         * Documentation/user/global.itely (Page formatting): Compile fix.
3333
3334 2006-04-09  Mats Bengtsson  <mabe@s3.kth.se>
3335
3336         * Documentation/user/advanced-notation.itely (Polymetric
3337         notation): Update the example to use the "+" symbol and add link
3338         to input/test/compound-time.ly.
3339
3340 2006-04-08  Graham Percival  <gpermus@gmail.com>
3341
3342         * scm/define-grob-properties.scm: clarify docs for #'direction.
3343
3344         * scm/define-context-properties.scm: update old \property override.
3345
3346         * Documentation/user/ advanced-notation, global, lilypond-book:
3347         more minor doc updates.
3348
3349 2006-04-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
3350
3351         * lily/parser.yy (Generic_prefix_music_scm): append lists, not objects.
3352
3353         * scm/backend-library.scm (search-gs): oops.
3354
3355 2006-04-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
3356
3357         * scripts/lilypond-book.py (output): use base, not filename for href.
3358
3359         * scm/backend-library.scm: only look for gs.
3360
3361         * scripts/lilypond-book.py (output): fix printfilename.
3362
3363         * lily/parser.yy (music_function_musicless_prefix): fold together
3364         definitions of signature (SCM*) (Music|post_event|chord_body_element)
3365
3366         * lily/slur.cc (print): only set font-size if not set yet.
3367
3368         * lily/slur-configuration.cc (add_score): improved layout of debug
3369         scoring output.
3370
3371 2006-04-05  David Feuer  <David.Feuer@gmail.com>
3372
3373         * music-drawing-routines.ps (draw_round_box): removed testing artifact.
3374         (draw_circle): Hopefully fixed regression.
3375         Improved documentation for several procedures.
3376         
3377 2006-03-04  Werner Lemberg  <wl@gnu.org>
3378
3379         * ly/engraver-init.ly (\Score): Add beam-event to quotedEventTypes.
3380
3381 2006-04-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
3382
3383         * scripts/musicxml2ly.py (bindir): add dynamic
3384         relocation. 
3385
3386 2006-04-04  Graham Percival  <gpermus@gmail.com>
3387
3388         * Documentation/user/ basic-notation, advanced-notation, putting,
3389         instrument-notation, invoking, lilypond, THANKS: another ream of small
3390         fixes from the Doc Helpers.
3391
3392 2006-04-03  David Feuer  <David.Feuer@gmail.com>
3393
3394         * music-drawing-routines.ps: remove superfluous gsave/grestore pairs.
3395
3396         * lilyponddefs.ps (set-ps-scale-to-lily-scale): Fixed code duplication.
3397
3398         * Cleaned up interfaces between PostScript and Scheme, and moved
3399         computations from PostScript to Scheme:
3400
3401         * music-drawing-routines.ps
3402         (*SF, stroke_and_fill): new procedures.  Replaced stroke and fill
3403         with stroke_and_fill throughout.
3404         (euclidean_length, print_letter, draw_box): Deleted unused
3405         procedures.  If someone needs draw_box, implement it using
3406         draw_round_box; don't duplicate code.
3407         (print_glyphs, draw_round_box, draw_polygon, draw_repeat_slash):
3408         Refactored/cleaned up interfaces.
3409         (mark_URI): Moved.
3410
3411         * output-ps.scm: reordered arguments to PostScript functions to
3412         match new interfaces
3413         (glyph-string): Rewrote glyph-string.
3414         (grob-cause): Replaced string-append with format.
3415         (repeat-slash): Rewrote to do computation here.
3416         (round-filled-box): Rewrote to do computation here.
3417
3418 2006-04-04  Erlend Aasland  <erlenda@gmail.com>
3419
3420         * stepmake/stepmake/generic-targets.make: add cvs-clean target
3421
3422         * stepmake/stepmake/toplevel- targets.make: print help info about
3423         cvs-clean
3424
3425 2006-04-03  Erlend Aasland  <erlenda@gmail.com>
3426
3427         * input/regression/hairpin-circled.ly: new file
3428
3429 2006-04-03  Erlend Aasland  <erlenda@gmail.com>
3430
3431         * lily/hairpin.cc (print): add support for circled tip
3432
3433         * scm/define-grob-properties.scm: add circled-tip parameter
3434
3435         * scm/define-grobs.scm: init circled-tip to false
3436         
3437 2006-04-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
3438
3439         * scm/music-functions.scm (quote-substitute): set
3440         iterators-ctor. 
3441
3442 2006-03-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
3443
3444         * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): set
3445         BSTINPUTS. 
3446
3447         * Documentation/topdocs/AUTHORS.texi (Top): add David Feuer.
3448
3449         * scm/output-ps.scm (glyph-string): revert cid selectfont.
3450
3451 2006-03-31  David Feuer  <david.feuer@gmail.com>
3452         
3453         * scm/framework-ps.scm:
3454         
3455         * scm/output-ps.scm: glyph-string now produces smaller, more
3456         readable, and probably faster PostScript.  Several findfont
3457         scalefont setfont instances changed to selectfont
3458         Hacked-up string-appends changed to formats.
3459
3460         * ps/music-drawing-routines.ps: add print_letter, print_glyphs.
3461         
3462 2006-03-30  Graham Percival  <gpermus@gmail.com>
3463
3464         * scm/lily-library.scm: make "no version" warning message more polite.
3465
3466         * lily/music.cc: add double quotes to failed octave check.
3467
3468         * Documentation/user/ advanced-notation, changing-defaults,
3469         instrument-notation, invoking, music-glossary: whole bunch of minor
3470         fixes from mailist.
3471
3472 2006-03-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
3473
3474         * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): use
3475         $(buildscriptdir) iso. depth.
3476
3477         * VERSION (PACKAGE_NAME): release 2.9.1
3478
3479 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
3480
3481         * lily/pango-font.cc (pango_item_string_stencil): more robustness.
3482
3483         * VERSION (PATCH_LEVEL): bump version number.
3484
3485         * flower/include/guile-compatibility.hh (scm_from_uint32): add
3486         scm_from_uint32 ()
3487
3488         * lily/pango-font.cc (pango_item_string_stencil): use
3489         scm_from_uint32 ()
3490
3491         * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
3492         $(outdir)/emmentaler-%.svg): remove canary.
3493
3494         * lily/pango-font.cc (pango_item_string_stencil): only use uXXX
3495         glyphnames if we have a ttf font.
3496
3497 2006-03-30  Mats Bengtsson  <mabe@s3.kth.se>
3498
3499         * Documentation/user/advanced-notation.itely (Font selection):
3500         Corrected reference to the font-family-override.ly example.
3501
3502 2006-03-30  Joe Neeman  <joeneeman@gmail.com>
3503         
3504         * lily/chord-tremolo-engraver.cc (acknowledge_stem): set the
3505         stem-tremolo object in the stem (or else the stem might not be
3506         long enough).
3507
3508 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
3509
3510         * lily/ttf.cc (print_trailer): only print existing glyphs.
3511
3512 2006-03-30  Joe Neeman  <joeneeman@gmail.com>
3513
3514         * lily/stem-tremolo.cc (print): for whole notes (and breves, etc.)
3515         position the tremolo based on the position of the notehead.
3516
3517         * input/regression/stem-tremolo.ly: add example of unbeamed eighth
3518         notes and update the texidoc line with the new positioning rules.
3519         
3520 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
3521
3522         * lily/ttf.cc (print_trailer): don't always use uXXX glyphname.
3523
3524         * scripts/lilypond-book.py (Module): set default for linewidth if
3525         preamble not found.
3526
3527 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
3528
3529         * VERSION (PACKAGE_NAME): release 2.9.0.
3530
3531         * input/regression/stem-tremolo-position.ly: new file.
3532
3533         * lily/stem-tremolo.cc: remove Stem_tremolo::dim_callback
3534
3535 2006-03-28  Joe Neeman  <joeneeman@gmail.com>
3536
3537         * lily/stem-tremolo.cc (print): position
3538         the tremolo depending only on the end of the stem
3539         and not on the notehead
3540         (raw_stencil): center, on the middle staff line, the
3541         flag that is closest to the end of the stem (previously
3542         the bottom flag)
3543         (calc_width): add this callback to shorten a tremolo when
3544         it is beamed or it is stemup with a flag
3545         (style): add this callback to make a tremolo rectangular when
3546         it is beamed or it is stemup with a flag
3547         (rotated_box): this is like Lookup::beam but makes a rotated
3548         rectangle instead of a parallelogram
3549
3550         * lily/stem.cc (calc_stem_info): make sure the stem
3551         is long enough to fit the tremolo
3552         (calc-length): reduce the length of tremolo stems since the
3553         tremolo code is now capable of better positioning
3554
3555         * scm/define-grobs.scm: make calc_width the default beam-width
3556         callback for stem-tremolo and add the style callback
3557                 
3558 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
3559
3560         * lily/tuplet-bracket.cc (calc_control_points): handle suicide
3561         case. 
3562
3563 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
3564
3565         * lily/ttf.cc (make_index_to_charcode_map): restore old
3566         cmap. 
3567
3568 2006-03-28  Werner Lemberg  <wl@gnu.org>
3569
3570         * lily/pango-font.cc (get_unicode_name): Fix `uXXXXX' glyph names.
3571
3572 2006-03-28  Graham Percival  <gpermus@gmail.com>
3573
3574         * THANKS: update for 2.9, add section for Documentation helpers.
3575
3576         * Documentation/topdocs/NEWS.tely: compile fix.
3577
3578         * Documentation/user/ basic-notation, global, advanced-notation,
3579         examples.itely: minor fixes from mailist.
3580
3581 2006-03-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
3582
3583         * mf/feta-bolletjes.mf: match width of solfa notes with normal
3584         note heads. 
3585
3586         * lily/ttf.cc (print_trailer): use it.
3587
3588         * lily/pango-font.cc (get_unicode_name): new function.
3589
3590         * lily/ttf.cc (make_index_to_charcode_map): move function from
3591         open-type-font.cc
3592         (print_trailer): substitute uniXXXX name if applicable. 
3593
3594         * lily/pango-font.cc (get_index_to_charcode_map): new function.
3595         (pango_item_string_stencil): use it to generate uniXXXX names.
3596
3597         * mf/feta-bolletjes.mf (overdone_heads): add small style (ugly)
3598         note heads, for uniform widths in shape note output.
3599         (overdone_heads): hmm. remove them again.
3600
3601         * scripts/lilypond-book.py (output): add links to filenames.
3602
3603         * Documentation/topdocs/INSTALL.texi (Top): update versions.
3604
3605         * lily/note-collision.cc (get_clash_groups): only consider when
3606         Note_column::dir <> CENTER. 
3607
3608         * scripts/lilypond-book.py (get_option_parser): init output_name
3609         to ''. 
3610
3611 2006-03-24  Graham Percival  <gpermus@gmail.com>
3612
3613         * Documentation/topdocs/NEWS.tely: add @end itemize
3614
3615         * Documentation/user/ global, advanced-notation: minor
3616         stuff from mailist.
3617
3618 2006-03-23  Graham Percival  <gpermus@gmail.com>
3619
3620         * Documentation/user/ lilypond.tely, music-glossary,
3621         preface: housekeeping; 2005->2006, remove "notes for 2.6"
3622
3623 2006-03-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
3624
3625         * mf/GNUmakefile: don't install .enc files.
3626
3627         * Documentation/topdocs/NEWS.tely: clear for 2.9 cycle.
3628
3629         * VERSION (PATCH_LEVEL): bump to 2.9.0
3630
3631 2006-03-22  Graham Percival  <gpermus@gmail.com>
3632
3633         * Documentation/user/advanced-notation.itely: minor fixes
3634         from mailist.
3635
3636 2006-03-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
3637
3638         * Documentation/topdocs/AUTHORS.texi (Top): add Joe Neeman.
3639
3640         * branch lilypond_2_8
3641
3642 2006-03-22  Han-Wen Nienhuys  <lilydev@localhost.localdomain>
3643
3644         * scripts/lilypond-book.py (samefile): new function, for windoze
3645         compatibility.
3646
3647 2006-03-21  Graham Percival  <gpermus@gmail.com>
3648
3649         * ly/engraver-init.ly: add info about StaffGroup.
3650
3651 2006-03-21  Han-Wen Nienhuys  <lilydev@localhost.localdomain>
3652
3653         * input/regression/stem-direction-context.ly: idem.
3654
3655         * Documentation/topdocs/NEWS.tely (Top): fix interpolation example.
3656
3657         * THANKS: add Mats.
3658
3659         * input/regression/page-layout-twopass.ly: comment out \markup so
3660         tweak-file is left.
3661
3662         * lily/instrument-name-engraver.cc (finalize): add to instrument
3663         name global System. This also fixes chopped instrument names, but
3664         doesn't crash when there are slurs/beams.
3665
3666         * lily/slur-configuration.cc (add_score): disallow negative slur
3667         scores.
3668         
3669 2006-03-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3670
3671         * scm/framework-ps.scm (dump-stencil-as-EPS): remove debugging code.
3672
3673         * lily/instrument-name-engraver.cc (process_music): kludge: add
3674         InstrumentName spanner to axis group of left bound. Fixes chopped
3675         off instrument names in EPS images.
3676
3677         * input/regression/lyric-hyphen-retain.ly: elaborate explanation.
3678
3679         * scripts/abc2ly.py (option_parser): update to 2.7.40
3680
3681 2006-03-20  Graham Percival  <gpermus@gmail.com>
3682
3683         * THANKS: move small doc contributors to SUGGESTIONS.
3684
3685         * Documentation/user/ basic-notation, advanced-notation,
3686         global: small changes from mailist.
3687
3688 2006-03-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3689
3690         * Documentation/user/advanced-notation.itely (Text marks): update
3691         for new rehearsalMarkAlignSymbol convention.
3692
3693         * VERSION (PATCH_LEVEL): bump version.
3694
3695         * input/test/instrument-name-align.ly: new file.
3696
3697         * scm/define-markup-commands.scm (hcenter-in): add hcenter-in.
3698
3699         * input/test/instrument-name-align.ly: new file. Document how to
3700         align instrument names.
3701
3702         * lily/mark-engraver.cc: remove properties.
3703
3704         * scm/define-context-properties.scm
3705         (all-user-translation-properties): remove align symbol properties
3706         for barnumber/reh. mark.
3707
3708         * lily/break-align-interface.cc (self_align_callback): new
3709         interface, new function. Look at complete alignment. This handles
3710         tunable break alignments in case break-align-symbols are missing.
3711
3712         * lily/bar-number-engraver.cc (acknowledge_break_alignment): new function
3713
3714         * lily/mark-engraver.cc (acknowledge_break_alignment): new function.
3715
3716         * python/convertrules.py (conv): mark/bar number alignment rule.
3717
3718         * lily/break-align-interface.cc (calc_positioning_done): also
3719         store offset from last visible break-alignment to its
3720         neighbor. This makes alignment on non-visible objects more reliable.
3721
3722         * po/lilypond.pot (Module): ran po-replace.
3723
3724         * input/regression/tie-single-manual.ly (Module): new file.
3725
3726         * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
3727         look at has_manual_position_.
3728         (from_ties): set has_manual_position_ if tie has staff-position set.
3729
3730         * lily/tuplet-bracket.cc (calc_positions): idem.
3731
3732         * lily/tuplet-number.cc (print): don't print tupletnumber if it
3733         doesn't span time.
3734
3735 2006-03-19  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3736
3737         * scm/define-markup-commands.scm (smallCaps): new markup command
3738         for turning a text to small caps using smaller font size and upper
3739         casing.
3740
3741 2006-03-17  Graham Percival  <gpermus@gmail.com>
3742
3743         * Documentation/user/ examples, instrument-notation,
3744         advnaced-notation: minor fixes from mailist.
3745
3746 2006-03-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3747
3748         * Documentation/user/tutorial.itely (First steps): change example
3749         to verbatim.  
3750
3751 2006-03-17  Graham Percival  <gpermus@gmail.com>
3752
3753         * Documentation/user/ examples, advanced: minor changes from mailist.
3754
3755         * THANKS: add Geoff Horton, for documentation stuff.
3756
3757 2006-03-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3758
3759         * python/lilylib.py (system): revert have_select kludge.
3760
3761         * Documentation/user/tutorial.itely (Commenting input files):
3762         update version numbers in doc. 
3763
3764         * scm/define-grob-interfaces.scm (multi-measure-interface): add
3765         bound-padding to multi-measure-interface
3766
3767 2006-03-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3768
3769         * input/test/engraver-example.ily: update version number.
3770
3771         * VERSION (PACKAGE_NAME): release 2.7.39
3772
3773         * lily/note-spacing.cc (get_spacing): heighten threshold where
3774         accidentals/arpeggios influence previous spacing fully.
3775
3776         * lily/rest.cc (y_offset_callback): only use direction if
3777         staff-position wasn't set before.
3778
3779         * lily/bar-number-engraver.cc: add support for
3780         barNumberAlignSymbol. 
3781         add ADD_ACKNOWLEDGER() call for break_aligned. Fixes bar-number-breathe
3782
3783         * lily/pointer-group-interface.cc (set_ordered): new function. 
3784         (add_unordered_grob): new function.
3785
3786         * lily/grob-array.cc (Grob_array): grob-arrays are always assumed
3787         to ordered, unless the opposite has been proved.  This fixes
3788         random reordering of large object groups across linebreaks,
3789         eg. beams.
3790
3791         * lily/main.cc (do_chroot_jail): printf format fix.
3792
3793         * lily/tie-formatting-problem.cc (generate_configuration):
3794         multiply y-shift for dot with direction.
3795  
3796         * scm/define-markup-commands.scm (note-by-number): put (magstep
3797         size) in y-attach too.
3798
3799         * Documentation/topdocs/NEWS.tely (Top): show override.
3800
3801         * scm/define-grobs.scm (all-grob-descriptions): reinstate neutral
3802         direction for stems.
3803         
3804 2006-03-15  Graham Percival  <gpermus@gmail.com>
3805
3806         * Documentation/user/ changing-defaults, global: minor
3807         fixes from mailist.
3808
3809 2006-03-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3810
3811         * lily/lexer.ll (Lily_lexer): bump required version to 2.7.38
3812
3813         * lily/spacing-spanner.cc (musical_column_spacing): crude fix for
3814         breakable items after uniformly stretched notes.
3815
3816         * lily/tie-formatting-problem.cc (set_chord_outline): initialize
3817         outline with outer edge of note heads. This prevents infinity
3818         problems with tied whole notes.
3819
3820         * scripts/lilypond-book.py (do_file): use os.popen
3821
3822         * python/convertrules.py (conv): add rule for Stem #'beamed-*
3823
3824 2006-03-14 Erik Sandberg  <mandolaerik@gmail.com>
3825
3826         * Documentation/user/invoking.itely: Add ragged-right to bug report
3827         guidelines.
3828
3829 2006-03-14  Graham Percival  <gpermus@gmail.com>
3830
3831         * Documentation/user/global.itely: small fix from mailist.
3832
3833 2006-03-14  Mats Bengtsson  <mabe@s3.kth.se>
3834
3835         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use the
3836         file descriptor returned by tempfile.mkstemp() when writing
3837         to tmpfile and closing it. Solves problem with unlink(tmpfile)
3838         on mingw.
3839
3840 2006-03-14  Jan Nieuwenhuizen  <janneke@gnu.org>
3841
3842         * po/fi.po: newline bugfix.
3843
3844 2006-03-12  Jan Nieuwenhuizen  <janneke@gnu.org>
3845
3846         * scm/paper.scm (paper-alist): Rounding fixes.
3847
3848 2006-03-13  Graham Percival  <gpermus@gmail.com>
3849
3850         * Documentation/user/ changing-defaults, instrument-notation,
3851         tutorial: small fixes from mailist, mostly from Mats.  Thanks!
3852
3853 2006-03-13 Heikki Junes  <hjunes@cc.hut.fi>
3854
3855         * po/fi.po: update.
3856
3857 2006-03-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3858
3859         * stepmake/bin/add-html-footer.py (mail_address_url): don't add
3860         mailto: to http:// 
3861
3862         * python/lilylib.py (print_environment): move ps_page_count to
3863         lilypond-book.py
3864
3865 2006-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3866
3867         * Documentation/user/music-glossary.tely (G clef): fix clef alignments.
3868
3869         * scm/framework-ps.scm (embed-document): new function. Use to
3870         embed PFA files.
3871
3872         * ly/engraver-init.ly: init rehearsalMarkAlignSymbol to staff-bar.
3873
3874 2006-03-12  Mats Bengtsson  <mabe@s3.kth.se>
3875
3876         * Documentation/user/instrument-notation.itely (Setting simple
3877         songs): Added \book{...} around the full example, so the separate
3878         markups are included in the printed example. 
3879
3880 2006-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3881
3882         * scripts/lilypond-book.py (get_latex_textwidth): explicitly close
3883         tmphandle.
3884
3885         * python/lilylib.py (system): rewrite system() using
3886         subprocess. Remove >& redirection trickery.
3887
3888 2006-03-11  Graham Percival  <gpermus@gmail.com>
3889
3890         * Documentation/user/ changing-defaults, global, scheme-tutorial,
3891         notation-appendices.itely: minor fixes from mailist.
3892
3893 2006-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3894
3895         * Documentation/user/GNUmakefile ($(outdir)/lilypond.html):
3896         unsplit man also needs images.
3897
3898         * tex/texinfo.tex (sectionheading, q.v.): relax after \char'15.
3899
3900         * VERSION (PACKAGE_NAME): 2.7.38 released.
3901
3902 2006-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3903
3904         * scripts/lilypond-book.py (get_latex_textwidth): look for latex
3905         log in output dir.
3906
3907 2006-03-08  Johannes Schindelin  <Johannes.Schindelin@gmx.de>
3908
3909         * lily/audio-column.cc, lily/score-performer.cc: MIDI output now
3910         respects the Score.skipTypesetting property.
3911         
3912 2006-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3913
3914         * scm/framework-ps.scm (ps-embed-cff): no Setup section in
3915         Prolog. No %%EOF after CFF file.
3916
3917 2006-03-08  Joe Neeman  <joeneeman@gmail.com>
3918         
3919         * lily/constrained-breaking.cc (get_max_systems): used to return a
3920         much too big value
3921         (combine_demerits): use pointers to reduce copying data
3922         (calc_subproblem): idem
3923         (get_page_penalty): add page turn penalties
3924         
3925 2006-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3926
3927         * Documentation/user/invoking.itely (Invoking lilypond): better
3928         explanation of -e usage.
3929
3930         * lily/main.cc (main_with_guile): don't append to
3931         init_scheme_code_string
3932
3933         * tex/texinfo.tex (sectionheading, q.v.): don't center @image.
3934
3935         * Documentation/user/invoking.itely: add note about MacOS X scripts.
3936
3937         * scripts/convert-ly.py (do_options): don't print help for
3938         --show-rules rule.
3939
3940         * tex/texinfo.tex: patch texinfo.tex to leave single quotes in
3941         @code and @example. Update from texinfo.tex from CVS.
3942
3943 2006-03-08  Graham Percival  <gpermus@gmail.com>
3944
3945         * Documentation/user/scheme-tutorial.itely: clarifies distances
3946         measured in staff-spaces.
3947
3948 2006-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3949
3950         * lily/slur.cc (outside_slur_callback): only calculate offsets if
3951         consider[k] is true.
3952
3953         * scm/output-ps.scm (grob-cause): put numbers to ~$ (Thanks Johannes!)
3954
3955         * lily/spacing-basic.cc (standard_breakable_column_spacing): also
3956         consider columns that have originals.  Unifies spacing for mm
3957         rests around line breaks.
3958
3959         * lily/multi-measure-rest.cc (set_spacing_rods): read bound-padding.
3960         (set_text_rods): idem.
3961         (calculate_spacing_rods): new function: share code between
3962         set_text_rods and set_spacing_rods.
3963         (set_text_rods): take extents of bounds into account.  
3964
3965 2006-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3966
3967         * Documentation/user/basic-notation.itely (Writing music in
3968         parallel): don't use relative.
3969
3970 2006-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3971
3972         * ly/music-functions-init.ly (Module): add shiftDurations
3973
3974         * ly/drumpitch-init.ly (drumPitchNames): add tamtam.
3975
3976         * scm/paper.scm (paper-alist): no decimals for Ax paper sizes. 
3977
3978         * ly/engraver-init.ly: init vocalName to nil.
3979
3980 2006-03-05 Erik Sandberg  <mandolaerik@gmail.com>
3981
3982         * scm/music-functions.scm (music->make-music): bugfix,
3983         KeyChangeEvents are now handled correctly.
3984
3985         * scripts/lilypond-book.py: Add --debug option.
3986
3987 2006-03-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3988
3989         * python/lilylib.py: add tempfile.
3990
3991 2006-03-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3992
3993         * VERSION (PACKAGE_NAME): release 2.7.37
3994
3995         * python/lilylib.py (ps_page_count): remove make_ps_images().
3996         (ps_page_count): remove mkdir_p
3997         (system): remove cleanup_temp.
3998         (exit): remove lilypond_version_(check)
3999         (error_log): remove pseudo_filter_p
4000         remove read_pipe
4001         remove cp_to_dir
4002         remove identify
4003
4004         * scripts/lilypond-book.py (Lilypond_snippet.compose_ly): don't
4005         use __main__
4006
4007         * lily/accidental-engraver.cc (make_standard_accidental): only add
4008         support for side-axis is X_AXIS. Fixes text-spacing-accidental.ly
4009
4010         * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
4011         $(outdir)/emmentaler-%.svg): rewrite without functions; too many
4012         Make incompatibilities.
4013
4014         * scm/output-ps.scm (grob-cause): replace backslashes by /
4015         (glyph-string): use ~$ for less decimals for glyph-string and grob-cause.
4016
4017 2006-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
4018
4019         * cygwin/GNUmakefile: Install fixes.
4020
4021         * scripts/GNUmakefile (SEXECUTABLES): Install fix: remove mup2ly.
4022
4023         * lily/note-head.cc (head::get_balltype): Compile fix.
4024
4025         * flower/file-name.cc (dos_to_posix): Flower string fix.
4026
4027 2006-03-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4028
4029         * python/lilylib.py: pychecker cleanups.
4030
4031         * scripts/lilypond-book.py
4032         (Lilypond_snippet.output_print_filename): pychecker cleanups
4033
4034         * scripts/midi2ly.py (Key.dump): pychecker cleanups.
4035
4036         * python/lilylib.py (underscore): remove identify() , warranty()
4037
4038         * ps/music-drawing-routines.ps: change Border routine for GSView
4039         compatibility.
4040
4041         * lily/stem.cc (height): use quantize-positions.  This triggers
4042         set_stem_lengths, so scripts on beamed stems are handled correctly.
4043
4044         * lily/side-position-interface.cc (aligned_side): check if edges
4045         of script are inside staff. Fixes accent of edge of the staff.
4046
4047         * input/regression/staccato-pos.ly: more examples.
4048
4049         * stepmake/aclocal.m4 (depth): fix bashism.
4050
4051         * lily/lyric-combine-music-iterator.cc: move from
4052         new-lyric-combine-iterator.cc
4053         (process): add pending_grace_lyric_ member to delay lyrics on
4054         grace notes.
4055
4056         * lily/system-start-text.cc (print): suicide if we don't have any
4057         elements. Fixes hara kiri'd instrument names.
4058
4059         * scripts/mup2ly.py (Module): remove.
4060
4061 2006-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4062
4063         * Documentation/user/global.itely (A single music expression):
4064         close @lilypond properly
4065
4066         * lily/volta-bracket.cc (modify_edge_height): change from
4067         after_line_breaking_callback. Suicide last bracket if appropriate.
4068  
4069         * python/lilylib.py: strip getopt support
4070
4071         * scripts/etf2ly.py (do_options): use optparse
4072
4073         * scripts/midi2ly.py: optparse, strip lilylib copy. 
4074
4075         * scripts/abc2ly.py (voices): use optparse.
4076
4077         * stepmake/stepmake/generic-vars.make: new function absdir.
4078
4079         * scripts/convert-ly.py (bindir): use optparse, argv[0] relocation.
4080
4081         * scripts/lilypond-book.py (find_file): use global_options for
4082         include path
4083
4084         * scm/ps-to-png.scm (ps-page-count): prevent null characters
4085         entering C code.
4086
4087 2006-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4088
4089         * python/lilylib.py (get_global_option): ughness for extracting
4090         global options from lilylib.
4091         (NonDentedHeadingFormatter.format_heading): move from musicxml2ly
4092
4093         * scripts/lilypond-book.py (get_option_parser): use optparse for
4094         option handling.  Put options in global_options variable.
4095
4096 2006-02-28  Heikki Junes  <hjunes@cc.hut.fi>
4097
4098         * Documentation/index.html.in: clarify.
4099
4100 2006-02-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4101
4102         * scm/layout-page-layout.scm (write-page-breaks): add a
4103         music-system-heights property to the page layout output.
4104
4105         * scm/page.scm (make-page-stencil): take footer into account when
4106         computing the 'space-left page property
4107         (annotate-space-left): take footer into account when annonating
4108         space left.
4109
4110 2006-02-28  Graham Percival  <gpermus@gmail.com>
4111
4112         * Documentation/user/ advanced-notation, global: more (final)
4113         docs for music expressions, removed special fermatas.
4114
4115 2006-02-27  Graham Percival  <gpermus@gmail.com>
4116
4117         * Documentation/user/ basic-notation, global: minor changes
4118         from mailist.
4119
4120 2006-02-26  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4121
4122         * scm/framework-ps.scm:         
4123         * scm/lily-library.scm (nan?, inf?): Move guile 1.6 compatibility
4124         layer for inf? and nan? from framework-ps to lily-library.
4125
4126 2006-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4127
4128         * mf/GNUmakefile ($(outdir)/emmentaler-$(1).otf
4129         $(outdir)/emmentaler-$(1).svg): remove backslashes from define endef.
4130
4131         * buildscripts/substitute-encoding.py (Module): remove file.
4132
4133         * mf/GNUmakefile: more PFA strippage.
4134
4135         * mf/aybabtu.pe.in (i): remove PFAaybabtu generation
4136
4137         * buildscripts/gen-emmentaler-scripts.py (i): remove PFAemmentaler
4138         generation
4139
4140         * scm/framework-ps.scm: remove font name munging.
4141
4142         * Documentation/topdocs/INSTALL.texi (Top): bump GS requirement.
4143
4144 2006-02-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4145
4146         * scm/markup.scm (define-markup-command): change
4147         def-markup-command to define-markup-command
4148
4149         * scm/music-functions.scm (define-music-function): change
4150         def-music-function to define-music-function.
4151
4152         * python/convertrules.py (conv): rules for def-music-function
4153         and def-markup-commands
4154
4155         * Documentation/user/programming-interface.itely,
4156         input/no-notation/display-lily-tests.ly,
4157         input/regression/lily-in-scheme.ly,
4158         input/regression/markup-user.ly,
4159         input/regression/music-function.ly, input/regression/tie-chord.ly,
4160         scm/fret-diagrams.scm, ly/music-functions-init.ly,
4161         ly/gregorian-init.ly: use new macro names (define-music-function,
4162         define-markup-command).
4163
4164 2006-02-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4165
4166         * scripts/lilypond-book.py (main): write Makefile dependencies file. 
4167         (output): add comments to lp-book latex output.
4168
4169         * GNUmakefile.in (footifymail): use gmane address for webpage bug
4170         address.
4171
4172 2006-02-23  Graham Percival  <gpermus@gmail.com>
4173
4174         * Documentation/user/ tutorial, global: minor changes.
4175
4176 2006-02-23  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4177
4178         * mf/GNUmakefile: add '\' in multi-line "define ... endef"
4179         blocks (for make 3.80)
4180
4181         * scm/parser-ly-from-scheme.scm (ly:parse-string-result): add
4182         \notemode so that user should not have to explicitely type it.
4183
4184         * scm/define-music-display-methods.scm: various
4185         fixes (ApplyOutputEvent, ApplyContext; \new, \context and derived
4186         constructs)
4187
4188         * input/no-notation/display-lily-tests.ly: new tests for
4189         \applyOutput and \applyContext
4190
4191 2006-02-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4192
4193         * lily/constrained-breaking.cc: patch by Joe Neeman: "I have
4194         changed it slightly so that the number of systems returned by
4195         solve () will be the same as the last value passed to resize
4196         (). I've also added more documentation, removed casts, fixed style
4197         problems and put in some recovery if constraints aren't satisfied."
4198
4199 2006-02-23  Jan Nieuwenhuizen  <janneke@gnu.org>
4200
4201         * elisp/lilypond-mode.el (count-matches-as-number): New funtion
4202         for emacs < 22 compatibility.
4203         (count-rexp): Use it.
4204         (LilyPond-string-current-midi, LilyPond-string-all-midi): Remove
4205         substring juggling (Milan Zamazal).
4206
4207 2006-02-23  Graham Percival  <gpermus@gmail.com>
4208
4209         * Documentation/user/ basic-notation, advanced-notation,
4210         global.itely, invoking.itely, tutorial,itely:
4211         minor fixes from mailist.
4212
4213         * scm/define-markup-commands.scm: improve docs of \filled-box.
4214
4215 2006-02-23  Heikki Junes  <hjunes@cc.hut.fi>
4216
4217         * Documentation/index.html.in: changes concern the previous release.
4218
4219         * input/regression/+.ly: cultivate typographical terminology.
4220
4221 2006-02-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4222
4223         * scm/define-grob-interfaces.scm (parentheses-interface): add
4224         padding to parentheses-interface.
4225
4226         * Documentation/user/GNUmakefile: remove $(CROSS) support from
4227         Documentation/user/GNUmakefile. Use --disable-documentation for that.
4228
4229         * VERSION (PATCH_LEVEL): release 2.7.36
4230
4231         * lily/slur.cc: add avoid-slur (ugh.)
4232         
4233         * lily/slur-configuration.cc (fit_factor): oops, skip point if
4234         intersection gets smaller. This fixes slurs over extreme points.
4235
4236         * lily/melody-engraver.cc (stop_translation_timestep): ignore
4237         stems with neutral-direction set.
4238
4239         * lily/piano-pedal-engraver.cc (create_text_grobs): idem.
4240
4241         * lily/open-type-font.cc (load_table): format error.
4242
4243         * lily/change-iterator.cc (process): format fix.
4244
4245         * flower/include/international.hh (_f): idem.
4246
4247         * flower/include/std-string.hh: add format printf attribute.
4248
4249         * scm/define-grobs.scm (all-grob-descriptions): height of all
4250         PedalLineSpanner is Y-extent property. Fixes pedal-ped.ly
4251
4252         * lily/ambitus-engraver.cc (finalize): use grob_array. This fixes
4253         ambitus lines.
4254
4255         * input/regression/beam-cross-staff-slope.ly: remove decrescendo.
4256
4257 2006-02-22 Erik Sandberg  <mandolaerik@gmail.com>
4258
4259         * input/regression/: upgraded syntax for some files.
4260
4261         * THANKS: Add bughunters.
4262
4263 2006-02-22  Graham Percival  <gpermus@gmail.com>
4264
4265         * Documentation/user/ invoking.itely, advanced-notation.itely,
4266         global.itely: long-awaited "let's make chapter 10 not suck"
4267         update.  Rearrange chapter 10; now called "global issues",
4268         addresses file structure, etc.  Some info from other files
4269         moved into global.itely.
4270
4271 2006-02-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4272
4273         * lily/accidental-engraver.cc (acknowledge_rhythmic_head): also
4274         catch trill-span-event notes.
4275
4276         * Documentation/user/examples.itely (Ancient notation templates): typo.
4277         (Jazz combo): typo.
4278
4279         * scripts/lilypond-book.py (main): scrap invokes_lilypond(). 
4280
4281         * Documentation/user/basic-notation.itely (Ties): document \repeatTie.
4282
4283         * Documentation/topdocs/NEWS.tely (Top): document \repeatTie.
4284
4285         * scm/define-music-types.scm (music-descriptions): add RepeatTieEvent
4286
4287         * lily/repeat-tie-engraver.cc (acknowledge_note_head): new file. cut & paste
4288         froum Laissez_vibrer_engraver.
4289
4290         * ly/declarations-init.ly (repeatTie): add \repeatTie
4291
4292         * scm/define-grobs.scm (all-grob-descriptions): add RepeatTie, RepeatTieColumn
4293
4294         * scm/define-grob-properties.scm (all-user-grob-properties): add
4295         head-direction property.
4296
4297         * lily/tie-formatting-problem.cc (from_semi_ties): rename from
4298         from_lv_ties. Take head direction argument.
4299
4300         * lily/semi-tie-column.cc: rename from
4301         laissez-vibrer-tie-column.cc. Rename class too.
4302
4303         * lily/semi-tie.cc: rename from laissez-vibrer-tie.cc. Rename
4304         class too.
4305
4306         * lily/paper-score.cc (find_break_indices): move from Break_algorithm.
4307
4308         * lily/break-algorithm.cc (find_break_indices): remove linewidth <
4309         0 case.
4310         (find_breaks): idem.
4311
4312 2006-02-21  Graham Percival  <gpermus@gmail.com>
4313
4314         * Documentation/user/advanced-notation.itely: fixed make-moment]
4315         example.
4316
4317         * Documentation/user/basic-notation.itely: more clarification to
4318         transpose.
4319
4320 2006-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4321
4322         * lily/include/constrained-breaking.hh (class
4323         Constrained_breaking): new file.
4324
4325         * lily/constrained-breaking.cc (resize): new file.
4326
4327         * lily/gourlay-breaking.cc (do_solve): ragged-last iso raggedlast
4328
4329         * Documentation/user/advanced-notation.itely (Clusters): insert
4330         end ignore too.
4331
4332         * lily/tie-column.cc (calc_positioning_done): support for
4333         tie-score debugging
4334
4335         * lily/tie-formatting-problem.cc
4336         (generate_extremal_tie_variations): factor out.
4337         (score_ties_configuration): annotate all tie 
4338         (print_ties_configuration): new routine.
4339         (generate_configuration): nudge extremal ties outside of the head
4340         Y extents.
4341         (score_ties_configuration): oops. convert to staff-space before
4342         determining position symmetry.
4343
4344 2006-02-20  Graham Percival  <gpermus@gmail.com>
4345
4346         * Documentation/user/*-notation.itely: misc minor editing,
4347         shifting doc sections around.
4348
4349         * Documentation/user/*-notation-itely, global.itely,
4350         changing-defaults.itely: added new stuff from NEWS.
4351
4352 2006-02-20  Heikki Junes  <hjunes@cc.hut.fi>
4353
4354         * po/fi.po: update.
4355
4356 2006-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4357
4358         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): don't run
4359         lilypond --verbose for lp-book.
4360
4361         * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
4362         $(outdir)/%.ly $(outdir)/%.ps): use $(srcdir) iso $(shell pwd).
4363
4364         * make/lysdoc-rules.make ($(outdir)/collated-files.tely): use
4365         $(buildscript-dir) iso. absolute depth.
4366
4367         * buildscripts/genicon.py (dir): thinko.
4368
4369         * Documentation/pictures/GNUmakefile ($(outdir)/%.ico): typo.
4370
4371 2006-02-19 Erik Sandberg  <mandolaerik@gmail.com>
4372
4373         * scm/output-lib.scm: swap darkcyan/darkyellow
4374
4375         * THANKS: Add bughunters.
4376
4377 2006-02-19  Graham Percival  <gpermus@gmail.com>
4378
4379         * Documentation/user/programming-interfaces.itely: fixed example.
4380
4381         * Documentation/user/instrument-notation.itely: fix @{ @}.
4382
4383         * scm/script.scm: add avoid-slur for \open.
4384
4385 2006-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4386
4387         * lily/tie-formatting-problem.cc (score_configuration): use
4388         sliding score for min-length. 
4389
4390         * Documentation/pictures/GNUmakefile (local-dist): loose the rule
4391         spaghetti for icons.
4392
4393         * buildscripts/genicon.py (program_name): new file.
4394
4395         * lily/tie-formatting-problem.cc (set_chord_outline): put dots
4396         in outline too.  
4397         (generate_configuration): for small ties, also look for collisions
4398         at Y + DIR*h + DELTA_Y.
4399         (get_variations): consider variation for dot positions too.
4400
4401         * lily/side-position-interface.cc (aligned_side): take abs for
4402         quantized rounded position. Fixes tenuto below staff.
4403
4404         * scm/stencil.scm (annotate-y-interval): robustify: print nan/inf
4405         markers when necessary.
4406
4407         * lily/program-option.cc (internal_set_option): add
4408         strict_infinity_checking option.
4409
4410         * scm/output-lib.scm (cyan): swap yellow and cyan.
4411
4412 2006-02-19  Graham Percival  <gpermus@gmail.com>
4413
4414         * darwin.patch: trivial linenumber update.
4415
4416         * Documentation/user/ {various}: `\context foo = named' changed
4417         to `\new foo = "name"' in docs.
4418
4419 2006-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4420
4421         * scm/stencil.scm (annotate-y-interval): use it.
4422
4423         * scm/lily-library.scm (interval-sane?): new function.
4424
4425         * buildscripts/mf-to-table.py (Char_metric.__init__): remove
4426         tfm_checksum stuff.
4427
4428         * lily/tie-formatting-problem.cc (from_lv_ties): add heads for
4429         common refpoint.
4430
4431         * flower/include/std-vector.hh (iterof): add iterof macro.
4432
4433         * lily/enclosing-bracket.cc (width): new function.
4434
4435         * lily/align-interface.cc (align_elements_to_extents): reinstate
4436         warning.
4437
4438 2006-02-18  Heikki Junes  <hjunes@cc.hut.fi>
4439
4440         * Documentation/index.html.in: fix spelling: thankyous.
4441
4442 2006-02-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4443
4444         * lily/lyric-hyphen.cc: typo.
4445
4446 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4447
4448         * stepmake/stepmake/c++-rules.make ($(outdir)/%.cc
4449         $(outdir)/%.hh): generate h and c in one rule; otherwise -jX
4450         builds don't work. 
4451
4452         * VERSION: release 2.7.35
4453
4454         * lily/beam.cc (get_default_dir): oops. Take abs () for
4455         extremes[DOWN].
4456         (get_default_dir): use extreme position criterion only in absence
4457         of forced stem directions.
4458
4459         * VERSION (PATCH_LEVEL): bump VERSION.
4460
4461         * mf/GNUmakefile: explicit rules for emmentaler/aybabtu
4462         dependencies. Necessary for -jX builds.  
4463
4464 2006-02-17  Jan Nieuwenhuizen  <janneke@gnu.org>
4465
4466         * lily/relocate.cc (setup_paths): Yet another const fix.
4467
4468 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4469
4470         * configure.in (HOST_ARCH): determine HOST_ARCH in configure.
4471
4472         * lily/relocate.cc (setup_paths): oops.
4473
4474 2006-02-17  Heikki Junes  <hjunes@cc.hut.fi>
4475
4476         * Documentation/index.html.in: order links: html before PDF.
4477
4478 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4479
4480         * lily/tie-column-format.cc (Module): remove.
4481
4482         * lily/relocate.cc (setup_paths): GCC 4.2 fixes: const correctness.
4483
4484         * lily/text-spanner.cc (print): idem.
4485
4486         * lily/dynamic-text-spanner.cc (print): only print line if longer
4487         than dash-period.
4488
4489         * lily/auto-change-iterator.cc (change_to): formatting.
4490
4491         * lily/beam.cc (get_default_dir): take extreme note head as input
4492         for stem direction.
4493
4494         * lily/tie.cc (get_default_dir): only look directions for visible
4495         stems. 
4496
4497         * lily/side-position-interface.cc (aligned_side): oops. Don't
4498         mutiply with direction. This fixes quantized (staccato, tenuto)
4499         scripts below notes.
4500
4501         * lily/lyric-hyphen.cc (set_spacing_rods): oops. Multiply with
4502         direction. Fixes c-lyrics-center-align.ly
4503
4504 2006-02-16  Jan Nieuwenhuizen  <janneke@gnu.org>
4505
4506         * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Add copy
4507         constructor.
4508
4509         * lily/std-string.cc:
4510         * lily/include/std-vector.hh (split_string): Move and rename from
4511         lily/include/misc.hh, lily/misc.cc.  Update callers.
4512
4513 2006-02-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4514
4515         * lily/include/pango-font.hh: HAVE_PANGO_FT2 iso. HAVE_PANGO_16
4516
4517 2006-02-16  Jan Nieuwenhuizen  <janneke@gnu.org>
4518
4519         * flower/test-file.cc: New file.
4520
4521         * stepmake/stepmake/test-vars.make (TEST_MODULE_LIBES): Fixes for
4522         libraries.
4523
4524         * flower/GNUmakefile (TEST_MODULE_LIBS): Link to flower lib.
4525
4526 2006-02-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4527
4528         * flower/include/file-storage.hh: remove file.
4529
4530         * lily/include/midi-item.hh (class Midi_track): idem.
4531
4532         * lily/include/source.hh (class Sources): idem.
4533
4534         * lily/include/performance.hh (class Performance): use vector
4535         iso. Cons<>
4536
4537         * flower/include/cons.hh (class Cons): remove file.
4538
4539         * flower/include/flower-proto.hh: remove template cruft.
4540
4541         * lily/include/font-metric.hh: use size_t not vsize for indices.
4542
4543         * flower/include/flower-proto.hh (Module): remove std-vector.hh
4544         from proto.
4545
4546         * lily/include/all-font-metrics.hh: use HAVE_PANGO_FT2
4547
4548         * lily/include/paper-book.hh (class Paper_book):
4549         make get_system_specs() public.
4550
4551         * scm/layout-page-layout.scm (optimal-page-breaks): only consider
4552         the force=10000 case if we don't have a current-best. 
4553
4554         * lily/tuplet-bracket.cc (get_bounds): don't do (size() - 1) for
4555         vsize 
4556
4557         * flower/include/flower-proto.hh: remove outdated templates.
4558
4559         * scm/page.scm: use annotate-spacing
4560
4561 2006-02-15  Graham Percival  <gpermus@gmail.com>
4562
4563         * scm/translation-functions.scm: circle patch from Erlend, thanks!
4564
4565         * THANKS: moved Erlend Aasland to contributors.
4566
4567 2006-02-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4568
4569         * config.hh.in: remove HAVE_PANGO_16
4570
4571         * lily/tuplet-bracket.cc (calc_positions): multiply with
4572         staff-space for beam case. This fixes tuplets+beams on scaled
4573         staves.
4574
4575         * config.hh.in: remove all Kpathsea related defines.
4576
4577         * lily/dot-column.cc (side_position): reach stem via dots->
4578         head->stem. Inspect all stems for dot collisions. 
4579
4580         * lily/dot-column-engraver.cc (class Dot_column_engraver): excise
4581         stem handling.
4582
4583         * lily/bar-number-engraver.cc (process_music): document function
4584         of whichBar.
4585
4586         * lily/score.cc (default_rendering): add pscore, not systems
4587         themselves.
4588
4589         * lily/paper-book.cc (get_system_specs): separate generation of
4590         titles and systems.
4591
4592         * flower/include/std-vector.hh: don't include config.hh
4593
4594 2006-02-15  Jan Nieuwenhuizen  <janneke@gnu.org>
4595
4596         * flower/include/std-vector.hh: Better wrapper compatibility with
4597         std::vector.
4598
4599         * flower/include/flower-proto.hh: Remove cheap forward declaration
4600         attempts.
4601
4602         * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): Bugfix.
4603
4604 2006-02-14  Graham Percival  <gpermus@gmail.com>
4605
4606         * Documentation/user/invoking.itely: add warning about command line.
4607
4608 2006-02-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4609
4610         * lily/include/lily-proto.hh: add Prob, rm Page.
4611
4612         * flower/include/std-vector.hh (VPOS): use 64 bit-proof version.
4613
4614         * VERSION: release 2.7.34
4615
4616         * lily/relocate.cc (framework_relocation): show canary if
4617         GHOSTSCRIPT_VERSION undefined.
4618
4619         * GNUmakefile.in: remove $(VERSION) symlink.
4620
4621         * lily/relocate.cc (setup_paths): add + 
4622
4623 2006-02-13  Heikki Junes  <hjunes@cc.hut.fi>
4624
4625         * Documentation/index.html.in: specify sizes for all big HTML pages.
4626
4627 2006-02-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4628
4629         * config.hh.in: remove @FRAMEWORKDIR@
4630
4631         * lily/system-start-text.cc (get_stencil): new file: separate out
4632         system-start-delimiter text support.
4633
4634         * input/**ly: replace \context with \new where appropriate.
4635         
4636         * THANKS: add Don.
4637
4638         * lily/slur-scoring.cc (get_base_attachments): use
4639         robust_relative_extent. This fixes problems with empty paper-columns. 
4640
4641 2006-02-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4642
4643         * Documentation/topdocs/NEWS.tely (Top): document \new syntax.
4644
4645         * scm/define-music-properties.scm (all-music-properties):
4646         create-new property.
4647
4648         * lily/context-specced-music-iterator.cc (construct_children):
4649         inspect 'create-new property iso. magical $uniqueContextId context
4650         id.
4651
4652         * lily/parser.yy (optional_id): allow \new "Bar" = "foo" too.
4653
4654         * lily/context-key-manager.cc (Module): new file. Encapsulate
4655         object key generation.
4656
4657         * lily/include/context-key-manager.hh (Module): new file.
4658
4659 2006-02-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4660
4661         * scm/define-grobs.scm (all-grob-descriptions): center instrument
4662         names vertically
4663
4664         * configure.in (LINK_GXX_STATICALLY): strip -DSTRING_UTILS_INLINED
4665         options.
4666         (reloc_b): excise --enable-framework-dir
4667
4668         * lily/relocate.cc (framework_relocation): use getenv
4669         LILYPOND_GS_VERSION or -DGHOSTSCRIPT_VERSION to set GS version.
4670
4671 2006-02-11  Jan Nieuwenhuizen  <janneke@gnu.org>
4672
4673         * flower/include/std-string.hh: 
4674         * flower/include/std-vector.hh: Finish std:: conversion; move
4675         flower extensions from std:: namespace.  Update users.
4676
4677         * lily/include/lily-proto.hh: Replace Link_array__*_ macros by
4678         their expansion to vector<*>.  Update users.
4679
4680 2006-02-10  Graham Percival  <gpermus@gmail.com>
4681
4682         * Documentation/user/invoking.itely: add example to File structure.
4683
4684         * Documentation/user/ instrument-notation.itely, cheatsheet.itely,
4685         examples.itely, putting.itely: {\new|\context} Lyrics \lyricsto.
4686
4687 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4688
4689         * ly/paper-defaults.ly: typo.
4690
4691         * lily/parenthesis-engraver.cc (acknowledge_grob): don't do
4692         set_parent() for parentheses. This will make it show up in bbox
4693         calculations.
4694
4695         * scm/output-lib.scm (parentheses-item::print): rewrite, using
4696         ly:grob-common* functions.
4697
4698         * lily/grob-scheme.cc (LY_DEFINE):
4699         ly:grob-common-refpoint-of-array: new function 
4700         ly:grob-common-refpoint: new function 
4701         ly:grob-relative-coordinate: new function 
4702
4703         * lily/instrument-name-engraver.cc (process_music): use
4704         Text_interface::is_markup(). This fixes \markup on instrument names.  
4705
4706         * scm/define-grobs.scm (all-grob-descriptions): set line-thickness
4707         for ties and slurs.
4708
4709         * lily/slur.cc (print): idem.
4710
4711         * lily/tie.cc: add line-thickness for ties. 
4712
4713 2006-02-10  Jan Nieuwenhuizen  <janneke@gnu.org>
4714
4715         * scm/output-svg.scm: Document diversion from GNU coding standards
4716         as a workaround for a bug in Microsoft Internet Explorer.
4717
4718 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4719
4720         * lily/instrument-name-engraver.cc (process_music): use
4721         is_markup() iso. is_string()
4722
4723         * Documentation/user/changing-defaults.itely (Module): add menu entry.
4724
4725         * lily/percent-repeat-engraver.cc (process_music): only look at
4726         main_part_ for % repeats.
4727
4728         * lily/stem-tremolo.cc (get_beam_translation): new function.
4729         (calc_slope): new function.
4730         (height): don't use real slope.
4731
4732 2006-02-10  Jürgen Reuter  <reuter@ipd.uka.de>
4733
4734         * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: add
4735         new connect-to-neighbor, control-points and staff-padding
4736         properties to make ligature brackets showing up again.
4737
4738 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4739
4740         * VERSION: release 2.7.33
4741
4742         * lily/relocate.cc (prefix_relocation): oops. One TOPLEVEL_VERSION
4743         too many.
4744
4745         * Documentation/user/changing-defaults.itely (Difficult tweaks):
4746         remove applyOutput example.
4747         (Objects connected to the input): document \tweak, \parenthesize
4748
4749         * lily/relocate.cc (prefix_relocation): allow "current"
4750         iso. TOPLEVEL_VERSION for share/lilypond/ suffix. This makes
4751         changing VERSION in a lily tree less painful.
4752
4753         * input/regression/parenthesize.ly: new file. 
4754
4755         * scm/output-lib.scm (parenthesize-element): new function.
4756
4757         * scm/define-grobs.scm (all-grob-descriptions): add ParenthesesItem.
4758
4759         * lily/parenthesis-engraver.cc (acknowledge_grob): new file.
4760
4761         * lily/accidental-engraver.cc (make_standard_accidental): reroute
4762         cause: accidentals are caused by note heads, not note events. 
4763
4764 2006-02-08  Graham Percival  <gpermus@gmail.com>
4765
4766         * darwin.patch: small patch from Erlend, thanks!
4767
4768         * Documentation/user/basic-notation.itely: add stem-neutral example.
4769
4770         * Documentation/user/putting.itely: clarifications.
4771
4772 2006-02-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4773
4774         * Documentation/topdocs/NEWS.tely (Top): remove internal cleanup
4775         note, add more guidelines to what should go into NEWS.
4776
4777         * input/sakura-sakura.ly: document how to override font.
4778
4779         * input/regression/font-family-override.ly:  doc -dshow-available-fonts
4780
4781 2006-02-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4782
4783         * lily/midi-item.cc (to_string): truncate time sig at 255 beats.
4784
4785 2006-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
4786
4787         * scripts/convert-ly.py (lilypond_version_re_str): Move from
4788         convertrules.  Add explicit grouping, needed for python2.2.
4789
4790 2006-02-07  Jan Nieuwenhuizen  <janneke@gnu.org>
4791
4792         * Documentation/topdocs/NEWS.tely (Top): Mention code cleanup.
4793
4794 2006-02-07  Graham Percival  <gpermus@gmail.com>
4795
4796         * Documentation/user/global.itely: fix line-width in (text) docs.
4797
4798         * Documentation/user/lilypond-book.itely: same.
4799
4800 2006-02-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4801
4802         * VERSION (PACKAGE_NAME): release 2.7.32
4803
4804         * Documentation/topdocs/NEWS.tely (Top): document new variable
4805         naming.
4806
4807         * flower/include/array.icc (Message): remove file.
4808
4809         * flower/include/std-vector.hh: make sure vsize and VPOS are
4810         defined for binary_search_bounds().
4811
4812         * flower/std-string.cc (std): add to_string(long unsigned).
4813
4814         * configure.in (gui_b): excise std_string option.
4815         (gui_b): excise std_vector option.
4816
4817         * flower/string.cc (Module): excise flower array & string
4818
4819         * flower/include/std-string.hh: excise flower string.
4820
4821         * {ly,lily,scm}/*: use dashes in \paper and \layout variables
4822
4823         * python/convertrules.py (lilypond_version_re_str): require
4824         only numbers and dots in \version string.
4825
4826 2006-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4827
4828         * lily/system-start-delimiter.cc (print): allow style = text too.
4829
4830         * lily/system-start-delimiter-engraver.cc
4831         (acknowledge_system_start_text): new function, also add add to
4832         support of system-start-text (instrument names). This fixes
4833         instrument names on piano staves.
4834
4835         * lily/instrument-name-engraver.cc: rewrite. Use
4836         system-start-delimiter approach. This save memory and cpu.
4837
4838         * scm/define-grobs.scm (all-grob-descriptions): remove
4839         instrument-name from break-alignment.
4840
4841         * mf/GNUmakefile ($(NCSB_TTFS)): depend on pfx2ttf script too.
4842
4843 2006-02-05  Jan Nieuwenhuizen  <janneke@gnu.org>
4844
4845         * stepmake/stepmake/generic-vars.make (LOOP): Add PLUS to keep -j
4846         jobserver going.
4847
4848         * configure.in (std_vector): On by default.
4849
4850         * lily/include/font-metric.hh:
4851         * lily/include/tfm-reader.hh: 
4852         * lily/include/spanner.hh: Use unsigned for indices and sizes.
4853         Update users.
4854
4855         * Documentation/user/changing-defaults.itely: Fix link v2.5, out-www.
4856
4857 2006-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4858
4859         * VERSION (PACKAGE_NAME): 2.7.31
4860
4861         * scm/framework-ps.scm (dump-stencil-as-EPS): don't hardcode left
4862         EPS edge at 0, but take minimum with left-overshoot. This fixes
4863         cut off system start delims. 
4864
4865         * lily/instrument-name-engraver.cc (stop_translation_timestep):
4866         hack: add to axis group if not added yet. This fixes hara kiri'd
4867         piano staves.
4868
4869         * lily/hara-kiri-group-spanner.cc
4870         (force_hara_kiri_in_y_parent_callback): fix signatures.
4871
4872         * lily/hairpin.cc (print): check next hairpin to see whether or
4873         not to be continuing.
4874
4875 2006-02-04  Jan Nieuwenhuizen  <janneke@gnu.org>
4876
4877         * Remove trailing whitespace from makefiles.
4878         
4879         * flower/include/std-vector.hh: Add binary_search_bounds workaround
4880         for earlier gcc.
4881
4882         * .cvsignore: Add out*, out-www, config-*.  Remove lots of cruft.
4883
4884         * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Workaround.
4885
4886         * config.hh.in (HAVE_STL_DATA_METHOD): Add.
4887
4888         * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): New function.
4889
4890         * configure.in: Use it.
4891
4892 2006-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4893
4894         * scm/music-functions.scm (pitch-of-note): new function.
4895
4896         * ly/music-functions-init.ly: add \octave and \addquote
4897
4898         * lily/parser.yy (music_function_chord_body): softcode \octave.
4899         (lilypond_header): softcode \addquote
4900
4901 2006-02-03  Jan Nieuwenhuizen  <janneke@gnu.org>
4902
4903         * flower/include/std-vector.hh[STD_VECTOR]: Do not include
4904         array.hh, parray.hh at all.  Getting ready to flip the
4905         configure default.
4906
4907         * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
4908
4909         * lily/source-file.cc (file::get_line): Help binary_search_bounds
4910         a bit.
4911
4912         * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
4913
4914 2006-02-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4915
4916         * flower/include/array.hh: typo. 
4917
4918 2006-02-02  Graham Percival  <gpermus@gmail.com>
4919
4920         * Documentation/user/advanced-notation.itely: doc "\#" in text.
4921
4922 2006-02-03  Jan Nieuwenhuizen  <janneke@gnu.org>
4923
4924         * flower/include/pqueue.hh: Derive from std::vector.
4925
4926         * flower/include/parray.hh: Conform to std::vector interface.
4927         Update users.
4928
4929 2006-02-02  Graham Percival  <gpermus@gmail.com>
4930
4931         * Documentation/topdocs/NEWS.itely: grammar fix from Laura.
4932
4933 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4934
4935         * flower/file-path.cc (is_file): remove if 0 section.
4936
4937         * buildscripts/pfx2ttf.fontforge (err): robustness fix for
4938         selecting afii61352.
4939
4940 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
4941
4942         * flower/include/std-vector.hh (boundary): Oops, reverse.
4943
4944         * flower/string-convert.cc (convert::unsigned_string): Bugfix:
4945         remove superfluous `d'.
4946
4947         * flower/include/std-vector.hh (boundary, top): Detach from class.
4948         Remove empty vector shell.
4949
4950         * flower/include/array.hh (reverse, swap): Detach from class.
4951         Update users.
4952         
4953         * flower/include/std-vector.hh
4954         * flower/include/array.hh (concat): Globally change to insert ().
4955
4956         
4957         * flower/include/std-vector.hh
4958         * flower/include/parray.hh
4959         * flower/include/array.hh (elem, elem_ref): Globally replace by
4960         at ().
4961
4962 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4963
4964         * Documentation/topdocs/NEWS.tely (Top): use ly: prefix for members.
4965
4966         * python/convertrules.py (FatalConversionError.sub_cxx_id):
4967         anticipate on identifier substitutions.
4968
4969 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
4970
4971         * flower/include/std-vector.hh (insert): Remove, replace by
4972         std::vector interface.  Update callers.
4973
4974         * flower/include/array.icc (insert): Change signature to
4975         match std::vector interface.
4976         
4977         * flower/include/array.icc (vector_sort): Bugfix.
4978
4979 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4980
4981         * lily/parser.yy (output_def_head_with_mode_switch): new
4982         production. Result: dashes and underscores may be used in the
4983         \paper block.
4984
4985         * lily/lexer.ll: add DASHED_WORD.  Accept in INITIAL mode.
4986
4987         * python/convertrules.py (conv): oops. One slash too much.
4988
4989 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
4990
4991         * flower/include/std-vector.hh (sort): Remove, replace by
4992         ::vector_sort.  Update callers.
4993
4994         * flower/include/std-vector.hh (slice): Remove.  Update callers.
4995         (sort): Bugfix.
4996
4997         * flower/test-std.cc (vector_sort): New test.
4998
4999 2006-02-01  Graham Percival  <gpermus@gmail.com>
5000
5001         * Documentation/user/putting.itely: fixes from Erik.
5002
5003 2006-02-01  Jan Nieuwenhuizen  <janneke@gnu.org>
5004
5005         * flower/test-std.cc: Add simple unit test for vector migration.
5006
5007         * stepmake/stepmake/test*: Unit test support.
5008
5009         * flower/include/std-vector.hh (del): Remove.  Use erase (),
5010         update callers.
5011
5012         * flower/include/array.hh (begin, end): Add.
5013         (del, get): Remove.
5014
5015 2006-02-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5016
5017         * lily/include/lily-guile-macros.hh (MAKE_SCHEME_CALLBACK): use
5018         std::string not String. 
5019
5020         * lily/context-def.cc (path_to_acceptable_context): use INT_MAX
5021         iso UINT_MAX.
5022
5023         * lily/prob.cc (Prob): copy type_ too.
5024
5025         * lily/lily-guile.cc (mangle_cxx_identifier): new
5026         function. Class_bla::foo_bar_[px] ->
5027         ly:class-bla::foo-bar[?!]. Changes throughout
5028
5029 2006-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5030
5031         * flower/include/guile-compatibility.hh (scm_from_unsigned): add scm_from_unsigned().
5032
5033         * lily/beam.cc (calc_direction): take dir from visible stem in
5034         degenerate case.
5035
5036 2006-01-31  Jan Nieuwenhuizen  <janneke@gnu.org>
5037
5038         * lily/melody-spanner.cc (spanner::calc_neutral_stem_direction):
5039         Fix -1, >=0 boundary checks for unsigned vsize.
5040
5041         * lily/separating-group-spanner.cc (spanner::find_rods): Fix >=0
5042         loop for unsigned vsize.
5043
5044         * configure.in (--enable-std-vector): New option.
5045         (--enable-std-string): On by default.
5046
5047         * flower/include/std-vector.hh: New file.  Enable switch to
5048         std::vector, update client code.
5049
5050 2006-01-30  Graham Percival  <gpermus@gmail.com>
5051
5052         * scm/document-translation.scm: clarify "this context is also
5053         known as".  Thanks, Werner!
5054
5055         * Documentation/user/putting.itely: small fixes from Don Blaheta.
5056
5057         * Documentation/user/invoking.itely: small fix from Don.
5058
5059 2006-01-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5060
5061         * scm/lily.scm (define-scheme-options): rename option
5062         preview-include-book-title to book-title-preview
5063         (define-scheme-options): move force-eps-font-include (from paper
5064         block) to eps-font-include -d option.
5065
5066         * VERSION (PATCH_LEVEL): release 2.7.30
5067
5068         * input/bach-schenker.ly (staffPiano): new file.
5069
5070         * buildscripts/pfx2ttf.fontforge: remove No. glyph from TTF file.
5071
5072         * Documentation/topdocs/NEWS.tely (Top): simplify NEWS entry, add
5073         credits to Nicolas.
5074
5075         * scm/define-markup-commands.scm (epsfile): add scaling to \epsfile.
5076
5077         * ps/lilyponddefs.ps: remove start-system, stop-system,
5078         start-page fluff. This saves putting { } code on the stack, fixing
5079         stack overflows when including EPS files.
5080
5081 2006-01-29  Graham Percival  <gpermus@gmail.com>
5082
5083         * Documentation/user/putting.itely: minor fixes (comments on -devel).
5084
5085 2006-01-29  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5086
5087         * Documentation/topdocs/NEWS.tely (Top): add \parallelMusic news.
5088
5089 2006-01-28  Graham Percival  <gpermus@gmail.com>
5090
5091         * Documentation/user/putting.itely: minor fixes (mostly tab->space).
5092
5093 2006-01-28  Jan Nieuwenhuizen  <janneke@gnu.org>
5094
5095         * input/mutopia/claop.py: Update.
5096
5097 2006-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5098
5099         * input/regression/completion-heads.ly (texidoc): fix.
5100
5101         * lily/staff-symbol-referencer.cc (on_staff_line): idem.
5102
5103         * lily/tie-formatting-problem.cc
5104         (set_ties_config_standard_directions): use abs iso fabs for ints.
5105
5106         * Documentation/topdocs/INSTALL.texi (Top): document ncsb requirement.
5107
5108         * mf/feta-bolletjes.mf (overdone_heads): solfa_noteheight, a
5109         little less than noteheight, to prevent overlaps in chords.
5110
5111         * lily/note-collision.cc (check_meshing_chords): wipe upper FA
5112         head, and fudge stem-attachment.
5113
5114         * scm/lily-library.scm (not): define hash-for-each for guile 1.6
5115
5116         * lily/slur-scoring.cc (get_best_curve): handle opt_idx < 0 case.
5117
5118 2006-01-27  Jan Nieuwenhuizen  <janneke@gnu.org>
5119
5120         * lily/main.cc (main): Debugging aid: catch exceptions.
5121
5122         * flower/std-string.cc (to_string): Robustification.  Fixes midi
5123         output with std::string.
5124
5125 2006-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5126
5127         * Documentation/topdocs/INSTALL.texi (Top): remove libkpathsea notes.
5128
5129 2006-01-26  Jan Nieuwenhuizen  <janneke@gnu.org>
5130
5131         * Fix -DSTRING_UTILS_INLINED.
5132
5133 2006-01-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5134
5135         * VERSION (PATCH_LEVEL): release 2.7.29
5136
5137         * lily/relocate.cc (setup_paths): mingw uses std string too.
5138
5139         * lily/*.cc: various fixes for substr(ARG).
5140
5141         * lily/sustain-pedal.cc (print): 
5142
5143         * flower/file-name.cc (slashify): use std strings.
5144
5145         * flower/string-convert.cc: remove publib.h
5146
5147         * scm/define-markup-commands.scm (verbatim-file): new markup
5148         command \verbatim-file
5149
5150         * Documentation/topdocs/NEWS.tely: fixup URLs
5151
5152         * input/regression/alignment-vertical-manual-setting.ly (Module):
5153         new file.
5154
5155         * lily/align-interface.cc (align_elements_to_extents): overwrite
5156         translations with numbers in alignment-offsets from left bound
5157
5158         * scm/page.scm (make-page-stencil): read X-offset from paper-system.
5159         (page-translate-systems): new function: take into account Y-offset.
5160
5161         * Documentation/topdocs/NEWS.tely (Top): document new features.
5162
5163         * input/regression/page-layout-manual-position.ly (Module): new
5164         file.
5165
5166 2006-01-26  Jan Nieuwenhuizen  <janneke@gnu.org>
5167
5168         * flower/file-path.cc (path::parse_path): Oops.
5169
5170         * Finish std::string interface.  For now, use std:: marker
5171         throughout for easy s/r.
5172
5173 2006-01-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5174
5175         * Documentation/user/putting.itely (Score is a single musical
5176         expression): typo.
5177         (Score is a single musical expression): more typos.
5178
5179         * scm/page.scm (annotate-space-left): thinko.
5180         (annotate-page): more thinkos.
5181
5182 2006-01-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5183
5184         * scm/layout-page-layout.scm (write-page-breaks): record tweaks
5185         for different \score blocks separately.
5186         (post-process-pages): put write-page-layout into paper block.
5187
5188         * lily/output-def.cc (get_parser): new file.
5189
5190         * lily/output-def-scheme.cc (LY_DEFINE): ly:output-def-parser, new
5191         file.
5192
5193         * lily/include/output-def.hh (class Output_def): add parser_ member.
5194
5195         * input/regression/page-layout-twopass.ly (Module): new file.
5196
5197         * scm/lily.scm: remove cpp hack.
5198
5199         * lily/lyric-engraver.cc (get_voice_to_lyrics): use NPOS everywhere.
5200
5201 2006-01-25  Jan Nieuwenhuizen  <janneke@gnu.org>
5202
5203         * GNUmakefile.in (c-clean): New target.
5204
5205         * flower/include/std-string.hh: String/std::string compatibility:
5206         Use NPOS for `not found' (iso -1), use ssize for length () and pos
5207         type.
5208
5209         * flower/rational.cc: 
5210         * flower/include/rational.hh: 
5211
5212         * flower/offset.cc: 
5213         * flower/include/offset.hh: 
5214
5215         * flower/interval.cc: 
5216         * flower/include/interval.hh: 
5217
5218         * flower/string-convert.cc: 
5219         * flower/include/string-convert.hh: Use std::string [interface].
5220         Update callers.
5221
5222 2006-01-25  Heikki Junes  <hjunes@cc.hut.fi>
5223
5224         * Documentation/index.html.in: clean up.
5225
5226 2006-01-25  Graham Percival  <gpermus@gmail.com>
5227
5228         * Documentation/user/putting.itely: another new untested doc section.
5229
5230 2006-01-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5231
5232         * scm/layout-page-layout.scm (write-page-breaks): write
5233         \spacingTweaks #ALIST. Handle grace timing.
5234
5235         * scm/: more imports.
5236
5237         * scm/page.scm (make-page): add footer/header.
5238         (annotate-space-left): revise: only take page argument.
5239         (layout->page-init): new function.
5240
5241         * scm/layout-page-layout.scm (write-page-breaks): preliminary
5242         version of the system/spacing/linebreak hack writing to the output
5243
5244         * lily/prob-scheme.cc (LY_DEFINE): take optional 'key val args in
5245         ly:make-prob.
5246
5247         * lily/grob-scheme.cc (LY_DEFINE): ly:spanner-get-bound ->
5248         ly:spanner-bound
5249
5250 2006-01-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5251
5252         * scm/stencil.scm (annotate-y-interval): move from layout-page-layout.scm
5253
5254         * scm/paper-system.scm (paper-system-annotate): new file. Handle paper-system.
5255
5256         * scm/layout-page-layout.scm (optimal-page-breaks): move all page
5257         handling to page.scm
5258
5259         * lily/prob-scheme.cc (LY_DEFINE): new file.
5260         (LY_DEFINE): functions ly:make-prob , ly:prob-type? , ly:prob-(set-)property(!)
5261
5262         * lily/music-scheme.cc (LY_DEFINE): rewrite get/set property using
5263         prob functions.
5264
5265         * lily/music.cc (derived_mark): derive Music from Prob.
5266
5267         * lily/paper-system.cc (LY_DEFINE): derive from Prob.
5268
5269         * lily/prob.cc (Module): Implement Prob (Property Object), object
5270         with shared and r/w property alists.  
5271
5272         * lily/include/prob.hh (Module): new file. Declare Prob.
5273
5274         * flower/string.cc: remove is_empty().
5275
5276         * flower/include/string.hh (class String): remove String:: qualifier.
5277
5278         * buildscripts/analyse-cxx-log.py: new file. Read compile log to
5279         substitute appropriate functions.
5280
5281         * flower/include/string.hh (class String): remove to_str0 and
5282         is_empty(). S&R everywhere.
5283
5284 2006-01-23  Graham Percival  <gpermus@gmail.com>
5285
5286         * Documentation/user/basic-notation.itely: add hairpin
5287         after-linebreak tweak to commonprop.
5288
5289         * Documentation/user/putting.itely: added two new sections.
5290
5291 2006-01-23  Jan Nieuwenhuizen  <janneke@gnu.org>
5292
5293         * flower/international.cc: 
5294         * flower/include/international.hh: 
5295
5296         * flower/getopt-long.cc: 
5297         * flower/include/getopt-long.hh: Use std::string [interface].
5298         Update callers.
5299
5300         * flower/include/std-string.hh: Oops, bugfix for --disable-std-string.
5301
5302         * stepmake/stepmake/executable-rules.make: Add dependency on
5303         module libraries.
5304
5305 2006-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
5306
5307         * flower/file-path.cc: 
5308         * flower/include/file-path.hh: Use std::string [interface].
5309         Update callers.
5310
5311         * flower/direction.cc: 
5312         * flower/axis.cc: Unused.  Remove.
5313
5314         * configure.in (--enable-std-string): New option.
5315
5316         * flower/std-string.cc: 
5317         * flower/include/std-string.hh: New file.
5318
5319         * flower/file-name.cc[STD_STRING]:
5320         * flower/include/file-name.hh[STD_STRING]: Use it.  Update callers.
5321
5322 2006-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5323
5324         * scm/output-svg.scm (placebox): no GNU coding standards in SVG output. 
5325
5326         * scm/define-markup-commands.scm (with-dimensions):
5327         with-dimensions markup command.
5328
5329         * input/test/font-table.ly: use it.
5330
5331         * lily/open-type-font.cc (glyph_list): new function.
5332
5333         * lily/open-type-font-scheme.cc (LY_DEFINE): ly:otf-glyph-list function.
5334
5335         * lily/ttf.cc: remove ly:font-glyph-list scheme function
5336
5337 2006-01-22  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5338
5339         * ly/music-functions-init.ly (parallelMusic): new music function
5340         for parallel music entry.
5341
5342         * scm/define-music-properties.scm (all-music-properties): new
5343         'void music property
5344
5345         * scm/music-functions.scm (ly:music-message): make public, to be
5346         used in music function definitions
5347
5348         * scm/lily-library.scm (collect-music-for-book): discard music
5349         when the 'void property is set.
5350
5351 2006-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5352
5353         * lily/ttf.cc (LY_DEFINE): store name before destroying face.
5354
5355         * mf/GNUmakefile: idem.
5356
5357         * buildscripts/mf-to-table.py (help): excise fetaXXlist.ly support.
5358
5359         * stepmake/bin/install.py (dest): Only chmod/chown just created directories
5360
5361         * Documentation/user/notation-appendices.itely (The Feta font):
5362         use it.
5363
5364         * input/test/font-table.ly: new file. Generate font table within lily.
5365
5366         * Documentation/user/notation-appendices.itely (The Feta font):
5367         use new font-table.ly file. 
5368
5369         * stepmake/stepmake/install-out-targets.make
5370         (local-install-outfiles): only create directory if
5371         $(INSTALLATION_OUT_DIR) is defined. This fixes install on Gentoo.
5372
5373 2006-01-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5374
5375         * lily/ttf.cc (LY_DEFINE): new function ly:font-glyph-list.
5376
5377         * VERSION (PACKAGE_NAME): release 2.7.28
5378
5379         * scm/framework-ps.scm (write-preamble): use it to pick exactly
5380         the right font from a Mac dfont.
5381         (write-preamble): don't forget directory, only look at files.
5382
5383         This fixes problems with TTF files in dfonts that don't match
5384         their PostScript names.
5385          
5386         * lily/ttf.cc (LY_DEFINE): ly:ttf-ps-name: new routine to extract
5387         PS name from TTF font.
5388
5389         * input/regression/tie-manual.ly: document new feature.
5390
5391         * Documentation/topdocs/NEWS.tely (Top): add tie NEWS.
5392
5393         * VERSION (MY_PATCH_LEVEL): bump to .28
5394
5395         * Documentation/user/basic-notation.itely (Ties): add tie examples
5396         refs.
5397
5398         * lily/tie-formatting-problem.cc (score_ties_configuration):
5399         symmetry penalties for outer ties.
5400
5401 2006-01-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5402
5403         * lily/tie-formatting-problem.cc (generate_configuration) 
5404         (set_manual_tie_configuration): skip non-pair manual
5405         tie-configuration, so you can set individual ties as
5406
5407           #'tie-configuration = #'((7 . 1) #t (-3 . 1))
5408
5409         * input/regression/tie-chord.ly: use generateTiePattern to
5410         simplify file.
5411
5412         * lily/tie-formatting-problem.cc (peak_around): new function.
5413         (score_configuration): use sliding criterion for staff line collisions. 
5414         (score_configuration): idem for dot collisions.
5415         (generate_configuration): use separate stem_gap for gap to stem.
5416
5417         * lily/include/tie-formatting-problem.hh (struct Tie_details):
5418         separate penalty factors for x and y distance.
5419         (struct Tie_details): separate penalties for tip and center line collisions.
5420
5421 2006-01-19 Han-Wen Nienhuys  <hanwen@xs4all.nl>
5422
5423         * lily/tie-formatting-problem.cc (generate_configuration): make
5424         large ties avoid stafflines in the horizontal section.
5425         (score_configuration): use softcoded penalties
5426         (score_aptitude): idem.
5427
5428         * lily/tie-helper.cc (from_grob): softcode tie details
5429
5430         * lily/staff-symbol-referencer.cc (on_staff_line): new function
5431
5432         * lily/staff-symbol-referencer.cc (on_line): rename from
5433         on_staffline 
5434
5435 2006-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5436
5437         * ly/music-functions-init.ly: remove duplicate tag.
5438
5439         * lily/include/*.hh: GCC 4.1 fixes.
5440
5441 006-01-16  Erlend Aasland  <erlenda@gmail.com>
5442
5443         * Documentation/user/global.itely: fix typos; @bugs -> @refbugs
5444
5445         * scm/define-music-types.scm: fix bug in desc. string
5446         for OverrideProperty
5447
5448 2006-01-15 Erik Sandberg  <mandolaerik@gmail.com>
5449
5450         * scripts/lilypond-book.py: bugfix
5451
5452         * scm/define-music-types.scm: fix typos.
5453
5454 2006-01-14  Graham Percival  <gpermus@gmail.com>
5455
5456         * Documentation/user/ basic-notation.itely, global.itely,
5457         advanced-notation.itely, instrument-notation.itely: small
5458         additions (bugs and commonly tweaked properties).
5459
5460 2006-01-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5461
5462         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): generic
5463         detection of mingw build.
5464         (MINGW_BUILD): opps.
5465
5466 2006-01-12  Jan Nieuwenhuizen  <janneke@gnu.org>
5467
5468         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Add
5469         i686-mingw32.
5470
5471 2006-01-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5472
5473         * scm/music-functions.scm (skip->rest): add skip->rest
5474
5475 2006-01-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5476
5477         * lily/font-config.cc (init_fontconfig): call FcConfigBuildFonts()
5478         explicitly.
5479
5480         * lily/font-config-scheme.cc (LY_DEFINE): also display font and
5481         config dirs. Aids debugging. 
5482         (display_config): also display config files.
5483
5484 2006-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5485
5486         * VERSION: release 2.7.27
5487
5488         * lily/bar-line.cc (calc_bar_size): inspect staff->extent (Y_AXIS)
5489         for determining bar size.
5490
5491         * lily/staff-symbol.cc (print): place lines at distance line-positions
5492
5493         * scm/define-grob-properties.scm (all-user-grob-properties): add
5494         line-positions.
5495
5496         * lily/staff-symbol.cc (height): new function.
5497
5498         * input/regression/staff-line-positions.ly:  new file.
5499
5500 2006-01-06  Graham Percival  <gpermus@gmail.com>
5501
5502         * input/test/add-staccato.ly: remove reference to old file.
5503
5504 2006-01-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5505
5506         * scripts/lilypond-book.py (invokes_lilypond): allow . in path to
5507         lilypond binary too.
5508
5509 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5510
5511         * make/mutopia-rules.make (Module): use LILYPOND_BINARY
5512
5513 2006-01-06  Jan Nieuwenhuizen  <janneke@gnu.org>
5514
5515         * scripts/midi2ly.py: Bugfix: Declare datadir.
5516
5517         * make/ly-rules.make:
5518         * make/mutopia-rules.make: Use LILYPOND_BINARY (WAS: LILYPOND, but
5519         that seems to be gone). Fixes make web.
5520
5521         * The grand 2005-2006 replace.
5522
5523         * VERSION (MY_PATCH_LEVEL): Stay on .26 for now.
5524
5525 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5526
5527         * make/lilypond-vars.make: set LILYPOND_BINARY variable
5528         (LILYPOND_BOOK_LILYPOND_FLAGS): new variable
5529         LILYPOND_BOOK_LILYPOND_FLAGS to hold system dependent settings,
5530         like -dgs-font-load.
5531
5532         * Documentation/user/GNUmakefile ($(outdir)/interfaces.itexi):
5533         remove absolute path to lilypond binary.
5534         
5535 2006-01-05 Pedro Kroeger    <kroeger@pedrokroeger.net>
5536
5537         * configure.in (NCSB_DIR): fix --with-ncsb-dir option.
5538
5539 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5540
5541         * make/lilypond-vars.make: support LILYPOND_EXTERNAL_BINARY variable.
5542
5543         * mf/GNUmakefile: remove broken dvips map symlink.
5544
5545 2006-01-04  Jan Nieuwenhuizen  <janneke@gnu.org>
5546
5547         * lily/main.cc: 
5548         * configure.in: Cosmetic fixes.
5549
5550 2006-01-04  Mats Bengtsson  <mabe@s3.kth.se>
5551
5552         * Documentation/user/music-glossary.tely (Pitch names): Added
5553         Spanish pitch names and durations, thanks to Ernesto Gancedo
5554
5555 2006-01-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5556
5557         * scm/lily.scm (define-scheme-options): use quasi-quote for option
5558         init. Fixes verbose printing of .scm files.
5559
5560         * stepmake/aclocal.m4: add spaces before - options.
5561         
5562 2006-01-03  Jan Nieuwenhuizen  <janneke@gnu.org>
5563
5564         * lily/relocate.cc (setup_paths): Bugfix: do not store result
5565         of path search in local block variable.
5566
5567 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5568
5569         * configure.in (NCSB_DIR): --enable-ncsb-dir
5570         (LINK_GXX_STATICALLY): denko.
5571
5572         * mf/GNUmakefile ($(NCSB_TTFS)): NCSB_DIR iso. NCSB_PATH. 
5573
5574         * configure.in (LINK_GXX_STATICALLY): --enable-ncsb-path option. 
5575         use locate to find c059033l.pfb. 
5576         
5577 2006-01-02  Jan Nieuwenhuizen  <janneke@gnu.org>
5578
5579         * lily/tie-formatting-problem.cc
5580         (problem::generate_base_chord_configuration): Use my_round (was
5581         round).
5582
5583         * lily/source-file.cc (file::get_counts)[!HAVE_MBRTOWC]: Bugfix,
5584         do not invoke mbrtowc.
5585
5586         * lily/relocate.cc (setup_paths): Add more debugging verbosity.
5587
5588 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5589
5590         * scm/lily.scm (lilypond-all): oops. remove debugging hack.
5591
5592 2005-01-02  Heikki Junes  <hjunes@cc.hut.fi>
5593
5594         * Documentation/user/invoking.itely (svg): revise.
5595
5596 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5597
5598         * lily/lexer.ll: use sourcefilename iso. renameinput.
5599
5600 2006-01-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5601
5602         * mf/GNUmakefile ($(NCSB_TTFS)): revise rule. Create
5603         <PostScriptName>.ttf instead of c059XXXttf.
5604
5605         * lily/program-option.cc (LY_DEFINE): special support for
5606         --verbose, so it works before option init too.
5607  
5608         * mf/GNUmakefile (local-install): oops.
5609
5610         * lily/lyric-hyphen.cc (print): oops.
5611
5612         * buildscripts/pfx2ttf.fontforge: new file.
5613         
5614         * mf/GNUmakefile (NCSB_PATH): add vars for NCSB.
5615         ($(outdir)/%.ttf): new rule. 
5616
5617         * scm/define-grobs.scm (all-grob-descriptions): add font-interface
5618         to LyricHyphen.
5619
5620         * lily/lyric-hyphen.cc (print): multiply hyphen height by
5621         font-size
5622
5623 2005-12-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5624
5625         * VERSION: release 2.7.26
5626         
5627         * mf/GNUmakefile (install-fc-cache): remove old font.cache-1 files.
5628
5629 2005-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5630
5631         * lily/font-config.cc (init_fontconfig): verbosity.
5632
5633         * THANKS: add Muziekacademie Lede. 
5634
5635         * scripts/musicxml2ly.py (print_voice_definitions): new function 
5636         (print_score_setup): new function
5637         (convert): read part definition to output staves properly.
5638
5639         * python/musicxml.py (Measure.get_notes): new class. Wrap lists of
5640         Music_xml notes.
5641
5642         * python/musicexp.py (Output_printer.__init__): use _ in data
5643         members.
5644         (Output_printer.unformatted_output): new function: no formatting,
5645         but count braces.
5646         (Duration.get_length): remove isinstance() checks for
5647         Output_printer everywhere.
5648
5649         * input/regression/lyrics-bar.ly (texidoc): add
5650         Separating_line_group_engraver.
5651
5652 2005-12-29  Jan Nieuwenhuizen  <janneke@gnu.org>
5653
5654         * lily/relocate.cc (framework_relocation): New function,
5655         factored from set_relocation ().
5656         (prefix_relocation): Rename from set_relocation ().
5657         (setup_paths): Use it.
5658
5659 2005-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5660
5661         * scm/*.scm: use LEFT/RIGHT/UP/DOWN etc. iso. magical
5662         numbers. Patch by Erlend Aasland.
5663
5664 2005-12-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5665
5666         * lily/font-config.cc (init_fontconfig): print warning if cache
5667         file is not existant.
5668
5669         * lily/main.cc: don't use #ifdef but #if
5670
5671 2005-12-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5672
5673         * lily/grob-property.cc (internal_set_property): don't abort on
5674         calculation-in-progress.
5675
5676         * lily/beam.cc (get_default_dir): robustness: don't divide by zero.
5677
5678         * lily/tuplet-bracket.cc (calc_control_points): oops: typo. Read
5679         connect-to-neighbor property not connect-to-other
5680
5681         * lily/program-option.cc (LY_DEFINE): remove Protected_scm global variable.
5682         (LY_DEFINE): oops. don't forget protection.
5683
5684         * flower/parse-afm.cc (Module): strip AFM handling completely.
5685
5686         * lily/stencil-expression.cc: idem.
5687
5688         * lily/grob-interface-scheme.cc (LY_DEFINE): idem.
5689
5690         * lily/function-documentation.cc (ly_add_function_documentation):
5691         use static member iso. Protected_scm
5692
5693         * lily/main.cc: use ifdef ARGV0_RELOCATION iso. MINGW
5694
5695         * config.make.in (prefix): remove HAVE_KPATHSEA_SO
5696
5697 2005-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
5698
5699         * lily/relocate.cc (set_env_dir): New function.
5700         (set_relocation): Use it to fix setting PANGO_PREFIX.
5701
5702 2005-12-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5703
5704         * input/regression/stem-direction-context.ly: remove rest.
5705
5706         * lily/melody-engraver.cc (process_music): restart for bar lines.
5707         (acknowledge_slur): restart for slurs.
5708
5709 2005-12-27  Heikki Junes  <hjunes@cc.hut.fi>
5710
5711         * Documentation/user/invoking.itely: describe how to view SVG 
5712         output using Inkscape which replace embedded fonts with OTF fonts.
5713
5714 2005-12-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5715
5716         * lily/relocate.cc (set_relocation): set PANGO_PREFIX
5717
5718 2005-12-23  Jan Nieuwenhuizen  <janneke@gnu.org>
5719
5720         * lily/melody-engraver.cc (class Melody_engraver): Remove lying
5721         comment.
5722
5723 2005-12-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5724
5725         * VERSION (PACKAGE_NAME): release 2.7.25
5726
5727         * Documentation/topdocs/NEWS.tely (Top): document new feature.
5728
5729         * input/regression/stem-direction-context.ly: new file.
5730
5731         * lily/relocate.cc (set_relocation): add PANGO_PREFIX
5732
5733         * lily/melody-engraver.cc (acknowledge_stem): restart MelodyItem
5734         on rest.
5735
5736         * ly/engraver-init.ly: add Melody_engraver
5737
5738         * lily/beam.cc (calc_direction): use default-direction
5739         iso. get_default_direction()
5740
5741         * scm/define-grob-properties.scm (all-user-grob-properties): add
5742         default-direction property.
5743
5744         * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem.
5745
5746         * lily/stem.cc (calc_default_direction): remove
5747         Stem::get_default_direction, use default-direction with callback
5748         instead.
5749
5750         * lily/melody-spanner.cc (calc_neutral_stem_direction): 
5751
5752         * lily/melody-engraver.cc: new file. Acknowledge stems for
5753         interpolated stem directions. 
5754
5755         * lily/melody-spanner.cc: new file. Interpolate stem directions.
5756
5757         * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem
5758
5759         * lily/slur-configuration.cc (fit_factor): more robust check for
5760         point in curve X-extent.
5761
5762         * lily/slur.cc (outside_slur_callback): return offset_scm, not 0.
5763         (outside_slur_callback): check for 'outside avoidance.
5764
5765         * lily/slur-configuration.cc (score_extra_encompass): don't use
5766         bound->column() == avoid->column() for checking extents, as this
5767         doesn't work for accidentals. 
5768
5769         * lily/slur-engraver.cc (acknowledge_extra_object): remove
5770         DynamicText hardcoding.
5771
5772         * lily/slur-scoring.cc (enumerate_attachments): robustness: don't
5773         crash if bound stem is NULL
5774
5775         * lily/piano-pedal-performer.cc: patch by MWD for enabling piano
5776         pedals.
5777
5778 2005-12-22  Graham Percival  <gpermus@gmail.com>
5779
5780         * scm/define-markup-commands.scm: typo.  @code{\raise}
5781         => @code{\\raise}.
5782
5783         * darwin.patch: now used again, includes a
5784         required patch from fink.
5785
5786 2005-12-21  Heikki Junes  <hjunes@cc.hut.fi>
5787
5788         * po/TODO: mention gtranslator along with kbabel.
5789         * po/fi.po: update translations.
5790
5791 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
5792
5793         * lily/relocate.cc (setup_paths): Bugfix.
5794
5795 2005-12-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5796
5797         * lily/slur-configuration.cc (score_extra_encompass): don't use
5798         "avoid" choice for avoid-slur.
5799
5800         * stepmake/bin/install.py (dest): don't create existing dir.
5801
5802 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
5803
5804         * stepmake/bin/install.py: Remove file before copying.
5805
5806         * config.make.in: 
5807         * stepmake/aclocal.m4: Do not substitute INSTALL.
5808
5809 2005-12-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5810
5811         * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
5812         depend on link-tree.
5813
5814         * lily/relocate.cc (setup_paths): only check path for non-absolute
5815         dir without directory part.
5816
5817         * flower/file-name.cc (is_absolute):  new method.
5818         (is_absolute): check root_ too.
5819
5820 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
5821
5822         * lily/relocate.cc (setup_paths) [__MINGW32__]: Comment-out broken
5823         relocation code.  Oops, don't comment out too much.
5824
5825         * stepmake/stepmake/generic-vars.make (INSTALL): Assign INSTALL_PY
5826         iso itself.
5827
5828         * lily/relocate.cc [HAVE_GETTEXT]: Include libintl.h.  Fixes mingw
5829         compile.
5830
5831 2005-12-20  Jan Nieuwenhuizen  <janneke@gnu.org>
5832
5833         * .cvsignore: Add install-sh.
5834
5835         * autogen.sh (srcdir): Typo.
5836
5837 2005-12-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5838
5839         * autogen.sh (srcdir): urg. Touch install-sh.
5840
5841         * stepmake/bin/install-sh (Module): remove.
5842
5843         * stepmake/stepmake/generic-vars.make (INSTALL): add $(INSTALL).
5844
5845         * lily/include/relocate.hh: new file.
5846
5847         * lily/relocate.cc: new file. Contain relocation logic.
5848
5849         * lily/main.cc (setup_paths): fix: LILYPOND_RELOCATE_PREFIX.
5850         (main): read LILYPOND_VERBOSE as the first thing.
5851
5852         * stepmake/aclocal.m4: remove INSTALL variable.
5853
5854         * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
5855         separate target for making font symlinks.
5856         (documentation-dir): use $(if $(findstring )) for switching off
5857         Documentation.
5858
5859         * stepmake/stepmake/help2man-vars.make (OUT_DIST_FILES): only do
5860         something if DOCUMENTATION is no.
5861
5862 2005-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5863
5864         * VERSION: release 2.7.24
5865
5866         * lily/script-column-engraver.cc (stop_translation_timestep):
5867         delay adding to script-column.
5868
5869         * lily/tuplet-bracket.cc (print): suicide if no control-points. 
5870
5871         * python/convertrules.py (conv): rule for number-visibility
5872
5873         * lily/slur-configuration.cc (score_extra_encompass): different
5874         distance measure for avoid and inside avoidance.
5875         (score_extra_encompass): use 1/(distance+eps) as penalty.
5876
5877         * lily/slur-scoring.cc (generate_avoid_offsets): use 'inside
5878         encompass objects for generating slur curves.
5879
5880         * lily/slur.cc: use details iso. slur-details property.
5881
5882         * input/regression/slur-tuplet.ly: new file.
5883
5884         * lily/slur-engraver.cc (acknowledge_tuplet_number): new function.  
5885
5886         * flower/include/offset.hh (class Offset): new operator /=
5887
5888         * lily/tuplet-number.cc (print): new file, new interface.
5889
5890         * scm/define-grob-properties.scm (all-user-grob-properties):
5891         remove number-visibility property.
5892
5893         * lily/tuplet-bracket.cc (calc_control_points): new function
5894         (calc_connect_to_neighbors): new function.
5895         (print): remove text handling for tuplet numberdef.
5896
5897         * lily/tuplet-engraver.cc (struct Tuplet_description): create
5898         TupletNumbers too. 
5899
5900         * lily/lily-guile.cc (robust_scm2booldrul): new function
5901
5902         * scm/define-grobs.scm (all-grob-descriptions): new grob TupletNumber
5903
5904         * lily/tuplet-bracket.cc (calc_position_and_height): use
5905         staff-padding to control whether tuplet brackets are over staves.
5906
5907         * lily/grob.cc (suicide): clear dim_caches_.
5908
5909         * lily/dimension-cache.cc (clear): new function.
5910
5911         * lily/grob.cc (extent): swap order of min-extent and extent
5912         calculations. This fixes hara kiri staves. 
5913
5914 2005-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
5915
5916         * lily/main.cc: Nitpick: relocation is not based on path, but on
5917         directory (location).
5918
5919 2005-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5920
5921         * lily/main.cc (setup_paths): read LILYPOND_RELOCATE_PREFIX
5922
5923         * stepmake/stepmake/install-targets.make (local-uninstall): idem.
5924
5925         * stepmake/stepmake/install-out-targets.make (local-install-outfiles): idem.
5926
5927         * stepmake/stepmake/help2man-targets.make (install-help2man): idem.
5928
5929         * stepmake/stepmake/generic-vars.make (Module): idem.
5930
5931         * stepmake/stepmake/executable-targets.make (default): use it.
5932
5933         * stepmake/bin/install.py (create_dir): new file. Replace install-sh.
5934
5935         * make/GNUmakefile: don't install make rules.
5936
5937         * lily/main.cc (setup_paths): don't inspect $PATH for argv0 with
5938         slashes.
5939         (prepend_env_path): more verbosity.
5940
5941 2005-12-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5942
5943         * GNUmakefile.in: add dir argument for find command.
5944
5945         * lily/parser.yy (bass_figure): set_spot() for bass figures. This
5946         fixes weird line numbers for point & click.
5947
5948         * lily/source-file.cc (get_counts): init line/column/char counts.
5949
5950 2005-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5951
5952         * lily/main.cc: remove ARGV0_RELOCATION, instead use --relocate.
5953
5954 2005-12-16  Graham Percival  <gpermus@gmail.com>
5955
5956         * Documentation/user/basic-notation.itely, advanced-notation.itely:
5957         minor fixes from Fredric.  Thanks!
5958
5959 2005-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5960
5961         * ly/music-functions-init.ly: add \bar and \clef music function 
5962
5963         * lily/lily-lexer.cc: idem.
5964
5965         * lily/parser.yy (FIXME): remove BAR and CLEF.
5966
5967 2005-12-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5968
5969         * Documentation/topdocs/NEWS.tely (Top): doc string argument change.
5970
5971         * lily/parser.yy (Generic_prefix_music_scm): allow strings as
5972         function arguments too
5973
5974         * lily/main.cc (set_relocation): new function.
5975
5976         * scripts/musicxml2ly.py (convert): add \version
5977
5978         * lily/tie.cc: remove get_default_attachments()
5979
5980         * VERSION (PACKAGE_NAME): release 2.7.23
5981         
5982         * lily/chord-tremolo-engraver.cc (acknowledge_stem): use
5983         ultimate_music_cause(). This fixes core dumps in unfold-all-repeats.ly
5984
5985         * Documentation/topdocs/NEWS.tely (Top): document new feature.
5986
5987         * lily/tie-formatting-problem.cc (score_ties): new function
5988         (get_variations): new function. Try flipping dirs for collisions.
5989         (generate_optimal_chord_configuration): new function. 1-opt search
5990         for better configuration.
5991
5992         * lily/tie-configuration.cc: new file.
5993
5994         * lily/tie.cc: junk Tie::get_configuration()
5995
5996         * lily/tie-formatting-problem.cc (score_ties_aptitude): new function.
5997         (score_ties_configuration): new function.
5998         (generate_ties_configuration): new function.
5999         (generate_base_chord_configuration): new function.
6000         (set_ties_config_standard_directions): Move body from tie-column-format.cc 
6001         (set_manual_tie_configuration): Move body from tie-column-format.cc 
6002
6003         * input/regression/tie-dot.ly: new file.
6004
6005         * lily/tie-formatting-problem.cc (score_configuration): score
6006         tie/dot collisions.
6007
6008         * lily/tie-helper.cc (get_transformed_bezier): new function
6009
6010         * Documentation/topdocs/NEWS.tely (Top): strip out-www.
6011
6012         * stepmake/stepmake/python-module-vars.make (SHARED_FLAGS): use
6013         -undefined suppress iso. -framework Python 
6014
6015         * scm/define-grobs.scm (all-grob-descriptions): set
6016         springs-and-rods (thanks Joe Neeman!)
6017
6018 2005-12-12  Nicolas Sceaux  <nicolas.sceaux@free.fr>
6019
6020         * input/no-notation/display-lily-tests.ly (test): 
6021         * scm/display-lily.scm (tag->lily-string): the syntax for tags has
6022         changed from \tag #'(a b) to \tag #'a \tag #'b
6023
6024 2005-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6025
6026         * Documentation/topdocs/NEWS.tely: strip out-www.
6027
6028         * lily/include/grob-interface.hh: include lily-guile.hh not libguile.h
6029
6030         * config.make.in (AR): add AR and RANLIB
6031
6032         * flower/libc-extension.cc: include cassert
6033
6034         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): more robust
6035         darwin check.
6036
6037 2005-12-11  Graham Percival  <gpermus@gmail.com>
6038
6039         * stepmake/stepmake/generic-vars.make: define DARWIN_BUILD.
6040
6041         * stepmake/stepmake/python-modules-vars.make: define
6042         SHARED_FLAGS for OSX.  Thanks Johannes Schindelin!
6043
6044         * THANKS: added Johannes Schindelin.
6045
6046 2005-12-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6047
6048         * python/midi.c (pymidi_parse): use memcmp() iso. strcmp().
6049
6050         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
6051         Span_arpeggio_engraver, add Tweak_engraver to Score context. 
6052
6053         * lily/parser.yy: reorganize file layout.
6054
6055         * ly/music-functions-init.ly: add tweak music function.
6056
6057         * lily/grob-info.cc (ultimate_music_cause): new function:
6058         recursively lookup causes. 
6059
6060         * lily/parser.yy (chord_body_element): allow music functions for
6061         post-events, allow music functions for chord elements. 
6062  
6063         * lily/font-config-scheme.cc (display_fontset): add cast.
6064
6065         * python/convertrules.py (FatalConversionError.sub_syms): \tag
6066         #'(a b) -> \tag #'a \tag #'b rule.
6067
6068         * python/musicexp.py (Output_printer.dump_version): new function
6069
6070 2005-12-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6071
6072         * lily/parser.yy (FIXME): remove \tag
6073         (FIXME): remove tag_music() function.
6074
6075         * lily/lily-lexer.cc: remove \tag
6076
6077         * ly/music-functions-init.ly: define music-function "tag"
6078
6079         * lily/parser.yy (chord_body_element): allow tags in chord bodies.
6080
6081 2005-12-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6082
6083         * VERSION (PATCH_LEVEL): release 2.7.22
6084
6085         * input/regression/lyric-hyphen-retain.ly: renew.
6086
6087         * scm/define-grobs.scm (all-grob-descriptions): add LyricSpace
6088         grob
6089
6090         * lily/lyric-hyphen.cc (set_spacing_rods): use minimum-distance
6091         iso. minimum-length property for rods.
6092
6093         * lily/hyphen-engraver.cc (acknowledge_lyric_syllable): create
6094         LyricSpace item to keep lyrics spaced apart.
6095
6096         * ly/engraver-init.ly: remove Separating_line_group_engraver
6097
6098         * Documentation/user/music-glossary.tely: do setfilename before
6099         music-glossary.
6100
6101 2005-12-07  Heikki Junes  <hjunes@cc.hut.fi>
6102
6103         * Documentation/user/lilypond-book.itely: use `,´ after xref:
6104         See xref documentation, for example.
6105
6106 2005-12-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6107
6108         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): use
6109         pending_skip iso. ly_voice[-1]
6110         (main): add if __main__ for debugging.
6111
6112         * python/musicxml.py (Accidental.__init__): new class.
6113
6114         * scripts/musicxml2ly.py (progress): new function
6115         (musicxml_key_to_lily): don't barf on modeless keys.
6116         (create_skip_music): new function.
6117         (musicxml_spanner_to_lily_event): new function. Handle beams too.
6118         (musicxml_note_to_lily_main_event): new function.
6119
6120         * python/musicexp.py (Music.__init__): add comment field.
6121         (NestedMusic.append): new routine.
6122         (SequentialMusic.print_ly): print comment.
6123         (ArpeggioEvent.ly_expression): new class
6124         (BeamEvent.ly_expression): new class
6125         (NoteEvent.__init__): support for cautionary/forced accs.
6126
6127         * lily/lookup.cc (slur): normal order for array loop.
6128
6129         * scm/framework-ps.scm (dump-stencil-as-EPS): set left X of bbox
6130         to 0.0.
6131
6132         * ly/engraver-init.ly: set bar-size, so bar-lines aren't
6133         collapsed.
6134
6135 2005-12-06 Erik Sandberg  <mandolaerik@gmail.com>
6136
6137         * scm/music-functions.scm: Make phrasing slurs follow voice direction
6138
6139         * scripts/lilypond-book.py: Introduce option
6140             --preserve-line-breaks, for usage with srcltx
6141
6142 2005-12-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6143
6144         * scm/output-lib.scm (print-circled-text-callback): draw circle
6145         around text using make-circle-markup.
6146
6147         * Documentation/user/*: strip out-www from file names.
6148
6149 2005-12-05  Heikki Junes  <hjunes@cc.hut.fi>
6150
6151         * Documentation/user/lilypond.tely (direntry): remove empty lines;
6152         fixes invalid info entry issue with makeinfo 4.8 in debian sid.
6153
6154 2005-12-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6155
6156         * Documentation/user/GNUmakefile: idem.
6157
6158         * Documentation/user/macros.itexi: strip out-www
6159
6160         * python/rational.py: python 2.3 compat.
6161
6162         * VERSION (PATCH_LEVEL): release 2.7.21
6163
6164         * scripts/musicxml2ly.py (NonDentedHeadingFormatter.format_headi):
6165         option formatting, lilypond style.
6166
6167         * python/musicexp.py: grab from Ikebana: a library for composing
6168         ly music expressions. 
6169         (Output_printer): class for advanced .ly printing.
6170         (eg. tupletting) 
6171
6172         * python/musicxml.py: new file. Read MusicXML MiniDOM tree, and
6173         convert to pythonesque structure.
6174
6175         * python/rational.py: PD rational number class.
6176
6177         * Documentation/user/converters.itely (Invoking musicxml2ly):  new node.
6178
6179 2005-12-04  Erik Sandberg  <mandolaerik@gmail.com>
6180
6181         * lily/part-combine-iterator.cc: Minor bugfix
6182         
6183         * THANKS: Update bughunters
6184
6185 2005-12-02  Werner Lemberg  <wl@gnu.org>
6186
6187         * mf/README: Document process for proper mf2pt1 conversion.
6188
6189         * mf/feta-beugel.mf (draw_brace): Fix path to assure clean
6190         overlapping.
6191
6192         * mf/feta-harmonica.mf: Removed.  Unused.
6193
6194 2005-12-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6195
6196         * scripts/lilypond-book.py (do_file): fix thinkos.
6197
6198 2005-12-01  Jan Nieuwenhuizen  <janneke@gnu.org>
6199
6200         * lily/GNUmakefile ($(outdir)/FlexLexer.h):
6201         ($(outdir)/parser.cc): 
6202         ($(outdir)/lexer.cc): Bugfix: depend on config.h.
6203
6204 2005-11-30  Pedro Kröger  <kroeger@pedrokroeger.net>
6205
6206         * ly/titling-init.ly (tagline): it should be a space between
6207         "Music engraving by LilyPond" and the version number.
6208
6209 2005-12-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6210
6211         * VERSION (PACKAGE_NAME): release 2.7.20
6212
6213 2005-11-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6214
6215         * scm/define-markup-commands.scm (pad-to-box): new markup command.
6216
6217         * scm/define-grobs.scm (all-grob-descriptions): set thickness to
6218         1.0.
6219         (all-grob-descriptions): don't shift RehearsalMark arbitrarily.
6220
6221 2005-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6222
6223         * configure.in (LINK_GXX_STATICALLY): remove kpathsea checks.
6224
6225         * kpath-guile/: remove directory
6226
6227         * scm/kpathsea.scm (ly:kpathsea-expand-variable): new
6228         file. Encapsulate kpathsea using commandline tools.
6229
6230         * lily/all-font-metrics.cc (kpathsea_find_file): use (scm
6231         kpathsea) module.
6232
6233 2005-11-29  Mats Bengtsson  <mabe@s3.kth.se>
6234
6235         * Documentation/user/advanced-notation.itely (Setting automatic
6236         beam behavior): Correct a few typos. Thanks to David Bobroff.
6237
6238         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use
6239         \usepackage instead of \RequirePackage. Thanks to Bernard Hurley.
6240
6241 2005-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6242
6243         * scripts/*.py: gmane address for bugs.
6244
6245 2005-11-28 Pal Benko <benkop@freestart.hu>
6246         
6247         * make/ly-rules.make: add -f switch to mv
6248
6249         * scm/output-libs.scm: add new bar symbol "." for punctus divisionis
6250
6251         * lily/bar-line.cc: interpret it
6252
6253 2005-11-28  Jan Nieuwenhuizen  <janneke@gnu.org>
6254
6255         * configure.in (--disable-documentation): New switch.
6256
6257         * GNUmakefile.in: Use it.
6258
6259         * stepmake/aclocal.m4: Use AC_ARG_ENABLE for kpatsea.
6260
6261 2005-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6262
6263         * scripts/lilypond-book.py (do_file): search chunks for
6264         \\begin{document}
6265
6266         * GNUmakefile.in: add copy step in between so we can lose the
6267         out-www directories.
6268
6269 2005-11-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6270
6271         * lily/pango-font.cc (pango_item_string_stencil): put
6272         geometry.width into glyph-string too.
6273
6274 2005-11-26  Nicolas Sceaux  <nicolas.sceaux@free.fr>
6275
6276         * scm/define-music-display-methods.scm (RevertProperty):
6277         (OverrideProperty): Use grob-property-path property, a list of
6278         symbols, instead of grob-property, which used to be a single
6279         symbol.
6280         (BassFigureEvent): a figure can be a plain number, not necessarily a
6281         markup.
6282
6283 2005-11-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6284
6285         * VERSION: release 2.7.19
6286         
6287         * lily/figured-bass-engraver.cc (process_music): check
6288         figuredBassCenterContinuations first.
6289
6290         * scm/translation-functions.scm (format-bass-figure): make double
6291         sharp larger. 
6292
6293         * lily/mark-engraver.cc: read rehearsalMarkAlignSymbol to
6294         determine X-parent.
6295
6296         * lily/system-start-delimiter-engraver.cc: move from
6297         Nested_system_start_delimiter_engraver, rename
6298         Nested_system_start_delimiter_engraver ->
6299         System_start_delimiter_engraver.
6300
6301         * lily/nested-system-start-delimiter-engraver.cc (from_list): read
6302         bracket type from hierarchy.
6303
6304 2005-11-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6305
6306         * lily/rest.cc (y_offset_callback): read staff-position.
6307
6308         * scm/define-grob-properties.scm (all-user-grob-properties): don't
6309         mark after-line-breaking-callback as internal.
6310
6311         * lily/self-aligment-interface.cc: remove self-[XY]-offset.
6312
6313 2005-11-25  Werner Lemberg  <wl@gnu.org>
6314
6315         * mf/feta-banier.mf ("d3"): Make `flare' equal to `staff_space'.
6316
6317 2005-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6318
6319         * stepmake/bin/add-html-footer.py (do_file): add google
6320
6321         * lily/staff-symbol-engraver.cc (process_music): bugfix: stop
6322         staff if first_start_ is true.
6323
6324 2005-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6325
6326         * scripts/midi2ly.py (split_track): add __repr__ members.
6327         (track_first_item): only return Item if not None. This fixes a
6328         problem when dumping a track that starts with an empty channel.
6329
6330         * python/midi.c: doc module.
6331
6332 2005-11-22  Mats Bengtsson  <mabe@s3.kth.se>
6333
6334         * Documentation/user/global.itely (Creating MIDI files): Fix
6335         compilation problem.
6336
6337 2005-11-22  Graham Percival  <gpermus@gmail.com>
6338
6339         * Documentation/user/basic-notation.itely: clarify dynamic
6340         padding text.
6341
6342         * Documentation/user/advanced-notation.itely: add unicode
6343         escape control example, whatever that is.  :)
6344
6345         * Documentation/user/global.itely: added "removing dynamics
6346         from MIDI" code.
6347
6348 2005-11-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6349
6350         * VERSION (PATCH_LEVEL): release 2.7.18
6351
6352         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): replace
6353         System_start_delimiter_engraver by
6354         Nested_system_start_delimiter_engraver.
6355
6356         * lily/nested-system-start-delimiter-engraver.cc (struct
6357         Bracket_nesting_node): new class.
6358         (struct Bracket_nesting_group): new class
6359         (struct Bracket_nesting_staff): new class.
6360         (process_music): create hierarchy of grobs. This allows separate
6361         tuning of different SSDs. 
6362
6363         * scm/define-grobs.scm (all-grob-descriptions): new Grob SystemStartSquare
6364         (all-grob-descriptions): remove old NestedSystemStartDelimiter.
6365
6366 2005-11-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6367
6368         * lily/side-position-interface.cc (aligned_side): multiply
6369         staff_radius by 2.
6370
6371         * lily/script-engraver.cc (make_script_from_event): allow setting
6372         values to '()
6373
6374 2005-11-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6375
6376         * lily/system-start-delimiter.cc (line_bracket): don't shorten height.
6377
6378         * scm/define-grobs.scm (all-grob-descriptions): new grob
6379         NestedSystemStartDelimiter.
6380
6381         * input/regression/system-start-heavy-bar.ly: new file.
6382
6383         * lily/nested-system-start-delimiter-engraver.cc: new file.
6384
6385         * lily/nested-system-start-delimiter.cc: new file.
6386
6387         * input/regression/system-start-nesting.ly: new file.
6388
6389         * scm/define-grobs.scm (all-grob-descriptions): use X side
6390         positioning for positioning braces for nested contexts.
6391
6392         * lily/system-start-delimiter.cc (print): don't divide extent by
6393         staff_space.
6394         (print): use style iso. glyph.
6395         (staff_bracket): translate glyph inside routine already.
6396
6397 2005-11-18  Michael Welsh Duggan <md5i@cs.cmu.edu>
6398
6399         * lily/vaticana-ligature-engraver.cc: fixed 2 typos in glyph
6400         names.
6401
6402 2005-11-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6403
6404         * scm/define-context-properties.scm
6405         (all-user-translation-properties): rename figuredBassFormatter
6406         from newFiguredBassFormatter.
6407
6408         * scm/define-grobs.scm (all-grob-descriptions): move from NewBassFigure
6409
6410         * lily/figured-bass-engraver.cc: move from new-figured-bass-engraver.cc
6411
6412         * lily/stem.cc (calc_stem_info): trigger beaming calculation.
6413
6414         * lily/beam.cc (calc_beaming): new function.
6415         (calc_shorten): new function.
6416
6417         * THANKS: add Edward Neeman.
6418
6419         * input/regression/accidental-clef-change.ly: new file.
6420
6421         * lily/note-collision.cc (check_meshing_chords): don't merge fa heads.
6422
6423         * scm/define-grobs.scm (all-grob-descriptions): add Y-offset property.
6424
6425         * lily/clef-engraver.cc (inspect_clef_properties): reset
6426         localKeySignature for clef changes.
6427
6428 2005-11-17  Mats Bengtsson  <mabe@s3.kth.se>
6429
6430         * python/midi.c: PyMIDINIT_FUNC isn't defined in Python < 2.3 
6431         add dummy definition that works in Linux and add information in
6432         INSTALL.texi on the specific Python requirements for Cygwin/Mingw.
6433
6434         * Documentation/user/changing-defaults.itely (Modifying context
6435         plug-ins): Add index for \with.
6436
6437         * Documentation/user/music-glossary.tely (dal segno): Updated
6438         example to version >=2.6.
6439
6440 2005-11-16  Mats Bengtsson  <mabe@s3.kth.se>
6441
6442         * Documentation/user/instrument-notation.itely (Printing chord
6443         names): Reorder \chordmode and \repeat in one example.
6444
6445 2005-11-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6446
6447         * VERSION: release 2.7.17
6448         
6449         * Documentation/topdocs/NEWS.tely (Top): add note about
6450         refactoring.
6451
6452         * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
6453         new function. Search region of 3 positions for best tie.
6454         (score_configuration): new function.
6455         (score_aptitude): new function.
6456         (generate_configuration): new function.
6457         (get_configuration): new function.
6458         (Tie_formatting_problem): new function
6459
6460         * input/regression/page-top-space.ly: a6 for page-top-space demo. 
6461
6462         * stepmake/aclocal.m4: use $(if ) for config-FOOF.make
6463
6464         * THANKS: add Eduardo Vieira & Ralph Little
6465
6466         * mf/feta-bolletjes.mf (solfa_quarter_width): make solfa heads
6467         narrower.
6468
6469         * lily/include/tie-formatting-problem.hh (class
6470         Tie_formatting_problem): add Tie_details to
6471         Tie_formatting_problem. Update calling conventions.
6472
6473         * stepmake/aclocal.m4: oops. Include $CONFIGFILE.make, not
6474         config.make.
6475
6476         * Documentation/user/lilypond.tely: remove musedata2ly entry.
6477
6478 2005-11-16  Jürgen Reuter  <reuter@ipd.uka.de>
6479
6480         * lily/ligature-engraver.cc, lily/include/ligature-engraver.hh,
6481         scm/define-context-properties.scm: Maintenance bugfix: make
6482         ligature brackets work again by removing obsolete ligature
6483         primitive callback push/pop.
6484
6485         * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: do
6486         not call Tuplet_bracket::calc_direction.  Removed obsolete gap
6487         value.
6488
6489 2005-11-15  Jan Nieuwenhuizen  <janneke@gnu.org>
6490
6491         * stepmake/aclocal.m4 (depth): Explain why absolute directory is
6492         used and do not call it a path.
6493         (FLEXLEXER_FILE): Rename from FLEXLEXER_PATH and add file name.
6494
6495 2005-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6496
6497         * lily/include/tie-formatting-problem.hh (class
6498         Tie_formatting_problem): new file.
6499
6500         * lily/tie-formatting-problem.cc (common_x_refpoint): new file.
6501
6502         * Documentation/misc/ChangeLog-2.3:  new file.
6503
6504         * lily/audio-staff.cc (output): degarianize.
6505
6506 2005-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
6507
6508         * stepmake/stepmake/python-module-rules.make ($(outdir)/%.pyc):
6509         Unset PYTHONOPTIMIZE.  Fixes install if set.
6510
6511 2005-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6512
6513         * python/convertrules.py (conv): add warning about drums. 
6514
6515         * make/stepmake.make: include toplevel-version.make after config.make.
6516
6517         * stepmake/aclocal.m4 (depth): make sure $srcdir is absolute.
6518         also allow python2.4
6519
6520         * config.make.in (configure-srcdir): remove GXX GCC vars.
6521
6522         * stepmake/aclocal.m4: don't do non-srcdir build with
6523         symlinks. Use inclusion, so the src directory name can be changed.
6524
6525 2005-11-13  Jan Nieuwenhuizen  <janneke@gnu.org>
6526
6527         * make/mutopia-vars.make:
6528         * make/ly-vars.make: Use src-wildcard iso wildcard for source
6529         files.
6530
6531 2005-11-13  Werner Lemberg  <wl@gnu.org>
6532
6533         * mf/feta-arrow.mf: For all glyphs, don't mirror `currentpicture'
6534         but the affected path.  This ensures that the (overlapping) outlines
6535         have the same direction, which is a necessary prerequisite for
6536         FontForge's algorithm to remove overlaps.
6537         Formatting.
6538
6539         * mf/feta-haak.mf: Formatting.
6540         (draw_bracket): Slightly modify outline to avoid an unnecessary
6541         corner.
6542         Don't use ad-hoc values for `leave_angle' and `tip_angle' but derive
6543         them from the affected paths.
6544
6545 2005-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6546
6547         * mf/README: remove xpm / accordion notes.
6548
6549         * lily/tie-column-format.cc (set_chord_outline): add dots into
6550         skyline extents. This fixes tie formatting if the left head has dots.
6551
6552         * lily/tie.cc (get_configuration): only shift tie by a whole staff
6553         space inside the staff.
6554         (get_configuration): shift another position if necessary in case
6555         of left head tie  
6556
6557 2005-11-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6558
6559         * stepmake/stepmake/texinfo-vars.make (GENERATE_OMF): use
6560         buildscript-dir iso. $(depth)/buildscripts.
6561
6562         * tex/GNUmakefile (local-uninstall): remove
6563         music-drawing-routines.ps juggling.
6564
6565         * stepmake/stepmake/install-targets.make (local-install-files):
6566         prepend src-dir to install targets.
6567
6568         * lily/system-start-delimiter-engraver.cc
6569         (acknowledge_system_start_delimiter): use
6570         add_offset_callback(). This fixes translation of nested
6571         staffgroups.
6572
6573         * lily/grob-closure.cc (add_offset_callback): only encaps in
6574         simple_closure if it's a procedure.
6575         
6576         * lily/span-bar.cc (calc_glyph_name): read glyph-name, not glyph
6577         from bar-line.
6578
6579         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
6580         remove-empty where pertinent.
6581
6582 2005-11-12  Graham Percival  <gpermus@gmail.com>
6583
6584         * Documentation/user/instrument-notation.itely: added
6585         Cameron Horsburgh's multiple stanzas docs.  Thanks!
6586
6587 2005-11-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6588
6589         * lily/GNUmakefile
6590         ($(top-build-dir)/Documentation/pictures/$(outbase)/lilypond.ico):
6591         make picture in builddir, not srcdir.
6592
6593 2005-11-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6594
6595         * VERSION: release 2.7.16
6596         
6597         * scripts/lilypond-book.py (main): use commands.mkarg () to quote
6598         shell arguments. 
6599
6600 2005-11-10  Mats Bengtsson  <mabe@s3.kth.se>
6601
6602         * Documentation/user/examples.itely (Piano templates): Minor
6603         modification to the Piano centered lyrics example.
6604
6605 2005-11-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6606
6607         * scripts/lilypond-invoke-editor.scm (run-browser): look at
6608         $BROWSER.
6609
6610         * Documentation/user/point-and-click.itely: simplify p&c
6611         instruction: don't configure firefox. Put lilypond-invoke-editor
6612         in front of the browser.
6613
6614         * scripts/lilypond-invoke-editor.scm (run-editor): new function.
6615         (run-browser): new function.
6616
6617         * lily/parser.yy (Lily_lexer): recognize Book
6618
6619         * lily/book.cc (clone): new function
6620
6621         * lily/parser.yy (book_body): allow BOOK_IDENTIFIER.
6622
6623 2005-11-10  Jürgen Reuter  <reuter@ipd.uka.de>
6624
6625         * lily/vaticana-ligature.cc, lily/vaticana-ligature-engraver.cc:
6626         Maintenance bugfix: reduce number of font related warnings by
6627         updating naming conventions for glyph-name.
6628
6629 2005-11-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6630
6631         * scm/define-grobs.scm (all-grob-descriptions): add
6632         rhythmic-grob-interface to TabNoteHead.
6633
6634         * scm/layout-beam.scm (check-quant-callbacks): remove
6635         set_stem_lengths()
6636
6637 2005-11-08  Jürgen Reuter  <reuter@ipd.uka.de>
6638
6639         * ly/gregorian-init.ly (divisiones): Maintenance bugfix: vertical
6640         alignment of centered divisiones.
6641
6642         * scm/scripts.scm (articulations): Maintenance bugfix:
6643         follow-into-staff -> quantize-position.
6644
6645         * lily/vaticana-ligature-engraver.cc (transform_heads): Bugfix:
6646         plica head in porrectus deminutus.
6647
6648 2005-11-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6649
6650         * make/lilypond.fedora.spec.in (Group): add %clean section.
6651
6652         * lily/tuplet-bracket.cc (print): change check: remove bracket if
6653         less then 1/5th of total length.  
6654         (print): use gap too.  Fixes tupletUp-single-bracket.ly
6655
6656         * scm/music-functions.scm (glue-mm-rest-texts): also put other
6657         events into EventChord. This fixes textspanners on mm rests. Fixes
6658         spanner-rest.ly
6659
6660         * lily/side-position-interface.cc (get_axis): read side-axis
6661         (set_axis): set side-axis.
6662
6663         * scm/define-grobs.scm (all-grob-descriptions): add side-axis
6664         properties everywhere.
6665
6666         * lily/spacing-spanner.cc (breakable_column_spacing): add
6667         average-spacing-wishes. Take maximum if not set.
6668         (musical_column_spacing): idem. Fixes: spacing-keysig-note.ly
6669
6670         * scm/define-grobs.scm (all-grob-descriptions): add
6671         average-spacing-wishes.
6672
6673         * lily/grob-closure.cc (add_offset_callback): bugfix: properly add
6674         offset callbacks. This fixes alignment for Fingering objects.
6675
6676         * scm/define-grobs.scm (all-grob-descriptions): tiny bit less
6677         space for key - timesig combination. 
6678
6679         * input/regression/script-stem-tremolo.ly (Module): new file.
6680
6681         * scm/define-grobs.scm (all-grob-descriptions): decrease distance
6682         to key sig.
6683
6684         * lily/dynamic-engraver.cc (acknowledge_stem_tremolo): new function.
6685         Fixes: c-tremolo-script.ly.
6686         
6687         * lily/text-engraver.cc (acknowledge_stem_tremolo): new function.
6688
6689         * lily/script-engraver.cc (acknowledge_stem_tremolo): new function.
6690         
6691         * scm/define-grobs.scm (all-grob-descriptions): remove
6692         self-X-offset. Fixes alignment of octavate-8.
6693
6694         * scripts/lilypond-book.py (datadir): look in
6695         LILYPONDPREFIX/share/lilypond/current/
6696
6697         * GNUmakefile.in: symlink current to <VERSION>. 
6698
6699 2005-11-07  Pedro Kroger  <kroeger@pedrokroeger.net>
6700
6701         * lily/main.cc: eps listed as a backend.
6702
6703 2005-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6704
6705         * scm/lily-library.scm (print-music-as-book): quote $defaultpaper.
6706
6707 2005-11-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6708
6709         * lily/include/score.hh (class Score): remove texts_ member.
6710
6711         * lily/beam.cc (set_stem_lengths): force direction callback.
6712         (print): read quantized-positions, so we can force
6713         Beam::set_stem_lengths to occur.
6714         (rest_collision_callback): use common X parent. 
6715
6716 2005-11-03  Jan Nieuwenhuizen  <janneke@gnu.org>
6717
6718         * flower/file-path.cc (find): Bugfix: Return name of file found.
6719
6720         * lily/main.cc (setup_paths): Bugfix for argv0 logic.
6721         (setup_paths)[__CYGWIN__ || __MINGW32__]: Normalize argv0.
6722         (setup_paths)[__MINGW32__]: Also look for argv0 + .exe.
6723
6724 2005-11-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6725
6726         * flower/offset.cc: idem.
6727
6728         * mf/*.mf: update email address.
6729
6730         * lily/font-config-scheme.cc:  new file.
6731
6732         * GNUmakefile.in (SUBDIRS): remove debian/ directory.
6733
6734         * lily/*:  cs.uu.nl -> xs4all.nl
6735
6736         * VERSION (PATCH_LEVEL): release 2.7.15
6737
6738         * make/lilypond.mandrake.spec.in (Module): remove Mandrake & Suse
6739         spec files.
6740
6741         * make/lilypond.fedora.spec.in: add %{libdir}/lilypond/
6742
6743 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6744
6745         * GNUmakefile.in: bugfix: encapsulate mkdir && cd in parens.   
6746
6747         * lily/staff-performer.cc (process_music): add audio
6748         elements. This makes MIDI instrument changes work once again.
6749
6750         * lily/main.cc (LY_DEFINE): add gmane address.
6751
6752         * lily/beam.cc: remove calc_positions()
6753
6754         * lily/include/grob.hh (class Grob): move pscore, dim_cache_,
6755         original_ in private scope.
6756         (class Grob): drop pscore_ pointer, change to output_def pointer.
6757         (class Grob): cleanup class definition.
6758
6759         * ly/spanners-init.ly (assertBeamQuant): use make-simple-closure.
6760
6761 2005-11-02  Jan Nieuwenhuizen  <janneke@gnu.org>
6762
6763         * lily/main.cc (setup_paths)[__MINGW32__]: Do not assume argv0 is
6764         absolute.  Better diagnostics.
6765
6766         * GNUmakefile.in: Add bin/ to tree and populate with some links.
6767         This makes lilypond run from the build directory using argv0
6768         relocation (without any --prefix or LILYPONDPREFIX setting).
6769
6770 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6771
6772         * Documentation/topdocs/NEWS.tely (Top): document new backend design.
6773
6774         * scm/define-grobs.scm: purge self-[XY]-offset variables, replace
6775         with simple-closure.
6776
6777         * lily/self-aligment-interface.cc (set_align_self): new function
6778         (set_center_parent): new function.
6779
6780         * lily/side-position-interface.cc (set_axis): new function.
6781
6782         * lily/new-fingering-engraver.cc (position_scripts): use drul for
6783         generic code. 
6784
6785         * scm/define-grob-properties.scm (all-user-grob-properties):
6786         remove [XY]-offset-callbacks add [YX]-offset
6787         
6788 2005-11-02  Mats Bengtsson  <mabe@s3.kth.se>
6789
6790         * scm/define-grobs.scm (all-grob-descriptions): Added space-alist
6791         entry for time signatures after breathing signs. Bug report by
6792         Scott Russell.
6793
6794 2005-11-01  Jan Nieuwenhuizen  <janneke@gnu.org>
6795
6796         * lily/main.cc (setup_paths)[!__MINGW32__]: Bugfix: if argv0 is
6797         not absolute, make it absolute using PATH.
6798
6799 2005-10-28  Jan Nieuwenhuizen  <janneke@gnu.org>
6800
6801         * python/midi.c (initmidi): Fix type for mingw.
6802
6803 2005-10-27  Jan Nieuwenhuizen  <janneke@gnu.org>
6804
6805         * stepmake/stepmake/compile-vars.make (SHARED_FLAGS): Support mingw.
6806
6807         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Detect mingw
6808         cross compiling.
6809
6810         * stepmake/aclocal.m4: Support python cross compiling.
6811
6812         * stepmake/stepmake/python-module-vars.make (SHARED_MODULE_SUFFIX):
6813         Add mingw section.
6814
6815 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6816
6817         * scm/output-lib.scm (chain-grob-member-functions): replace
6818         chained-callback.cc
6819
6820         * lily/chained-callback.cc (Module): remove file.
6821
6822         * lily/rest-collision.cc (force_shift_callback_rest): change to
6823         chained callback.
6824
6825         * lily/rest.cc (y_offset_callback): merge function of 3 callbacks. 
6826
6827         * lily/grob.cc (y_parent_positioning): remove axis argument from
6828         parent_positioning callbacks.
6829         (Grob): junk init code
6830         (get_offset): use generic property callbacks for
6831         X-offset, Y-offset. Remove Grob::{add,has}_offset_callback.
6832         (axis_parent_positioning): new function
6833         (axis_offset_symbol): new function
6834         (chain_offset_callback): new function
6835         (add_offset_callback): new function
6836
6837         * lily/beam.cc (rest_collision_callback): change signature; this
6838         is now a chained callback.
6839
6840         * lily/include/dimension-cache.hh (class Dimension_cache): remove
6841         callback administration.
6842
6843         * lily/simple-closure.cc: new file. Smob type that allows "grob
6844         member functions",
6845
6846             (ly:make-simple-closure FUNC A B)
6847
6848         is evaluated as (FUNC grob A B). This allows chaining of callbacks
6849         in various ways.
6850
6851         * lily/slur-engraver.cc (acknowledge_extra_object): use chained
6852         callbacks.
6853
6854         * lily/slur.cc (outside_slur_callback): take 2 arguments.
6855
6856         * lily/rest.cc (polyphonic_offset_callback): remove.
6857
6858         * lily/script-engraver.cc (try_music): remove bool* argument.
6859
6860         * scm/script.scm (default-script-alist): set quantize-position
6861         appropriately.
6862
6863         * lily/script-engraver.cc: remove follow_into_staff_ special coding. 
6864
6865         * lily/side-position-interface.cc (aligned_side): move staff
6866         position quantization from
6867         Side_position_interface::quantised_position().
6868         (quantised_position): remove
6869         
6870 2005-10-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6871
6872         * input/regression/beam-quant-standard.ly: reindent, set
6873         debug-beam-quanting to #t.
6874
6875         * lily/beam-concave.cc (calc_concaveness): set concaveness to
6876         10000 if this is a "hard" concave beam.
6877
6878         * lily/beam.cc (calc_least_squares_positions): change from
6879         calc_least_squares_dy
6880         (set_stem_lengths): this is now a chained callback.
6881
6882         * lily/context-property.cc (execute_general_pushpop_property):
6883         bugfix override with procedure should have effect.
6884
6885         * scm/define-grob-properties.scm (all-internal-grob-properties):
6886         remove position-callbacks.
6887
6888         * scm/define-grobs.scm (all-grob-descriptions): use
6889         ly:make-callback-chain for positions property.
6890
6891         * scm/layout-beam.scm (check-quant-callbacks): return list of
6892         chained callbacks.
6893
6894         * scm/lily.scm (type-p-name-alist): add callback-chain
6895
6896         * lily/lily-guile.cc (type_check_assignment): type check failure
6897         is warning not message.
6898
6899         * lily/grob-property.cc (try_callback): walk callback chain if
6900         appropriate.
6901
6902         * lily/chained-callback.cc: new file. new smob type.
6903
6904         * lily/lily-guile.cc (procedure_arity): new function.
6905
6906 2005-10-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6907
6908         * Documentation/topdocs/INSTALL.texi (Top): add perl flex bison.
6909
6910 2005-10-25  John Mandereau  <john.mandereau@free.fr>
6911  
6912         * Documentation/user/instrument-notation.itely (Figured bass):
6913         describe new features
6914
6915 2005-10-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6916
6917         * lily/beam.cc (calc_least_squares_dy): use property callback.
6918
6919         * lily/beam-concave.cc (calc_concaveness): use property callback.
6920
6921         * ly/paper-defaults.ly: move fixed dimensions from paper.scm 
6922
6923 2005-10-25  Jan Nieuwenhuizen  <janneke@gnu.org>
6924
6925         * HACKING: Update.
6926
6927 2005-10-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6928
6929         * scm/layout-page-layout.scm (page-headfoot): annotate
6930         pagetopspace too.
6931
6932         * scm/stencil.scm (dimension-arrows): shorten arrowed lines a bit. 
6933
6934         * scm/layout-page-layout.scm (annotate-y-interval): y-annotation
6935         doesn't take y-space.
6936
6937         * scm/paper.scm (paper-alist): fix A7 dimensions. 
6938
6939 2005-10-24  Jan Nieuwenhuizen  <janneke@gnu.org>
6940
6941         * stepmake/stepmake/generic-vars.make (DIST_FILES): Fix
6942         src-wildcard, remove $(wildcard).
6943
6944         * po/GNUmakefile (PO_FILES): 
6945         * ps/GNUmakefile (PS_FILES): 
6946         * tex/GNUmakefile (TEX_FILES): 
6947         * cygwin/GNUmakefile (POSTINSTALLS):
6948         * vim/GNUmakefile (EXTRA_DIST_FILES): Bugfix: [etags sr?] missed
6949         some wildcard calls.
6950
6951 2005-10-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6952
6953         * THANKS: add Thomas Bushnell.
6954
6955 2005-10-23  Jan Nieuwenhuizen  <janneke@gnu.org>
6956
6957         * scm/lily.scm: Remove horrendous running-from-gui? kludge.
6958         (lilypond-main): Redirect to gui-main if 'gui is set.
6959
6960         * scripts/midi2ly.py (datadir): Add libdir iso datadir to path,
6961         for alternative installations kludging s/share/lib/g
6962         LILYPONDPREFIX. 
6963
6964         * SConstruct (libdir_package_version): Define.
6965
6966         * python/SConscript: 
6967         * python/GNUmakefile (INSTALLATION_OUT_DIR): Install binary .so
6968         module in libdir.  
6969
6970 2005-10-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6971
6972         * lily/main.cc: clarify --safe.
6973
6974 2005-10-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6975
6976         * VERSION: release 2.7.14
6977         
6978         * Documentation/user/*.itely: remove minimumVerticalExtent.
6979
6980         * scm/define-grobs.scm (all-grob-descriptions): remove
6981         RemoveEmptyVerticalGroup
6982
6983         * lily/hara-kiri-engraver.cc (get_spanner): create VerticalAxisGroup.
6984
6985         * lily/include/lily-guile.hh (GUILE_ELLIPSIS): define to get clean
6986         compile on MOSX
6987
6988         * python/convertrules.py (conv): add rules.
6989
6990         * lily/grob.cc: remove is_empty()
6991
6992         * lily/grob-property.cc: remove add_to_list_property().
6993
6994         * scripts/convert-ly.py (datadir): add prefix switching hack to
6995         .py too.
6996
6997         * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily (cresc): remove
6998         space-function tweak.
6999
7000         * lily/grob.cc: remove X-extent-callback / Y-extent-callback.
7001
7002         * scm/define-grob-properties.scm (all-user-grob-properties):
7003         remove callback property.
7004
7005         * lily/include/grob.hh (class Grob): remove property_callbacks_
7006         member. Properties of procedure type are assumed to be callbacks.
7007
7008         * lily/ligature-engraver.cc (override_stencil_callback):
7009         rewrite. Use noteHeadLigaturePrimitive as source.
7010
7011         * scm/define-grob-properties.scm (all-internal-grob-properties):
7012         remove ligature-primitive-callback
7013
7014         * lily/include/dimension-cache.hh (class Dimension_cache): make
7015         class, with Grob as friend.
7016
7017         * lily/grob.cc: remove set_extent_callback(), set_extent() and
7018         has_extent_callback()
7019
7020         * scm/translation-functions.scm (format-new-bass-figure): read
7021         figuredBassPlusDirection
7022
7023         * scm/define-context-properties.scm
7024         (all-user-translation-properties): add figuredBassPlusDirection.
7025
7026         * lily/staff-spacing.cc (next_notes_correction): oops. Init wishes.
7027
7028         * lily/align-interface.cc (set_ordered): new function.
7029
7030         * lily/grob.cc (flush_extent_cache): rewrite.
7031
7032         * lily/dimension-cache.cc (Dimension_cache): cache extent as
7033         Interval pointer directly.
7034
7035         * lily/main.cc (setup_paths): insert extra / .
7036         (setup_paths): junk cff entry.
7037
7038         * lily/font-config.cc (init_fontconfig): only add type1 / otf
7039         directories.
7040
7041         * lily/axis-group-engraver.cc (finalize): remove
7042         extraVerticalExtent, minimumVerticalExtent verticalExtent.
7043
7044         * lily/grob.cc (Grob): don't set extent from ctor.
7045         (extent): use property callbacks. 
7046
7047         * lily/axis-group-interface.cc: remove set_axes() function.
7048
7049         * lily/grob-property.cc (del_property): new function.
7050
7051 2005-10-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7052
7053         * lily/font-config.cc (init_fontconfig): resurrect mf/out/ check.
7054         
7055 2005-10-20  Jan Nieuwenhuizen  <janneke@gnu.org>
7056
7057         * stepmake/stepmake/script-vars.make (PYTHON_SCRIPTS_IN): Oops.  Add.
7058
7059 2005-10-19  Jan Nieuwenhuizen  <janneke@gnu.org>
7060
7061         * mf/SConscript: Updates.
7062
7063         * lily/GNUmakefile (OUT_DIST_FILES): Bugfix.
7064
7065         * stepmake/stepmake/*:
7066         * */GNUmakefile:
7067         * config.make.in:
7068         * GNUmakefile.in:
7069         * stepmake/aclocal.m4: Friendlier --srcdir build, allowing `make'
7070         from any directory in build-dir.  Cleanups.
7071
7072         * make/srcdir.make.in: Remove.
7073
7074         * lily/main.cc (setup_paths): Fix and document build-dir hack.
7075
7076         * SConstruct (CheckYYCurrentBuffer): Use TryCompile (there is no
7077         main).
7078
7079         * lily/SConscript: Remove ttftools.
7080
7081         * SConstruct: Resurrect.
7082
7083 2005-10-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7084
7085         * lily/tuplet-bracket.cc (print): use dy iso. positions[RIGHT] for
7086         Y coordinate. 
7087
7088         * lily/paper-book.cc (add_score_title): put Paper_score title into
7089         systems_ list.
7090
7091         * scm/translation-functions.scm (format-new-bass-figure): also
7092         allow plus in combination with _
7093
7094 2005-10-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7095
7096         * VERSION: 2.7.13 released.
7097
7098         * lily/note-collision.cc (check_meshing_chords): don't wipe
7099         stencil, merely set transparent.
7100
7101         * Documentation/topdocs/NEWS.tely (Top): mention John Mandereau. 
7102         (Top): document #'callbacks.
7103         (Top): document nested \override.
7104
7105         * input/regression/figured-bass.ly: update for slash and pluses.
7106
7107         * input/regression/figured-bass-continuation-forbid.ly (Module):
7108         new file.
7109
7110         * scm/translation-functions.scm (format-new-bass-figure): use
7111         slashed-digit if diminished is set.
7112         (format-new-bass-figure): add + if 'augmented is set.
7113
7114         * scm/define-markup-commands.scm (slashed-digit): new command slashed-digit.
7115
7116         * input/test/piano-staff-distance.ly: remove file.
7117
7118         * Documentation/user/advanced-notation.itely (Formatting cue
7119         notes): use length-fraction for making stems/beams smaller.
7120
7121         * lily/parser.yy (bass_figure): accept \+ \! and / as figured bass
7122         modifications.
7123
7124         * lily/new-figured-bass-engraver.cc: new property
7125         centerFiguredBassContinuations
7126
7127         * Documentation/user/changing-defaults.itely (Difficult tweaks):
7128         use callbacks.
7129
7130         * lily/context-property.cc (execute_general_pushpop_property):
7131         robustness checks.
7132
7133         * input/regression/override-nest.ly: new file.
7134
7135         * python/convertrules.py (FatalConversionError.subber): conversion
7136         rule for #'callbacks
7137
7138         * input/regression/override-nest.ly: new function.
7139
7140         * lily/parser.yy (music_property_def): allow \override #'a #'b =
7141         #c too. 
7142
7143         * lily/context-property.cc (lookup_nested_property): new function.
7144         (evict_from_alist): new function.
7145         (general_pushpop_property): new function.
7146         (execute_general_pushpop_property): rewrite. Support nested
7147         properties too.
7148
7149 2005-10-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7150
7151         * lily/beam.cc: use length-fraction too.
7152
7153         * scm/define-grob-properties.scm (all-user-grob-properties):
7154         remove property flag-width-function
7155         (all-user-grob-properties): remove space-function.
7156
7157         * scm/layout-beam.scm: remove flag-width-function.
7158
7159         * lily/beam.cc: remove flag-width-function
7160
7161         * scm/layout-beam.scm: remove beam dir functions.
7162
7163         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): use length-fraction.
7164
7165         * lily/stem.cc (calc_length): multiply with length_fraction. Makes
7166         for easier grace tweaks.
7167
7168         * lily/beam.cc: remove dir-function.
7169
7170         * lily/system.cc (pre_processing): use callback to trigger spacing procedures.
7171
7172         * lily/grob.cc: remove spacing-procedure.
7173
7174         * lily/note-head.cc (calc_stem_attachment): new function.
7175         (internal_print): use callback to get glyph-name.
7176
7177         * lily/grob-property.cc (get_interfaces): new function.
7178
7179         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-interfaces
7180
7181         * lily/stem.cc (calc_stem_end_position): new function.
7182         (calc_length): new function.
7183         document details for stem.
7184         remove Stem::get_direction()
7185
7186         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-set-callback! 
7187
7188         * lily/grob-property.cc (set_callback): new function.
7189
7190         * lily/script-engraver.cc (make_script_from_event): don't trigger callback.
7191
7192         * lily/item-scheme.cc: new file.
7193
7194         * lily/bar-line.cc (before_line_breaking): remove function.
7195         remove bar-size-procedure, break-glyph-function
7196
7197         * lily/clef-engraver.cc (set_glyph): use glyph iso. glyph-name
7198
7199         * lily/clef.cc (before_line_breaking): change to calc_glyph_name.
7200
7201         * lily/system-start-delimiter.cc (print): suicide from
7202         here. Remove after_line_breaking_callback.
7203
7204         * lily/script-interface.cc (calc_direction): use callback for direction.
7205
7206         * lily/side-position-interface.cc (aligned_side): don't use
7207         Side_position_interface::get_direction directly. Use callback. 
7208
7209         * lily/grob.cc (get_stencil): simplify: use callback mechanism to
7210         calculate stencil.
7211         (get_print_stencil): rename from get_stencil: create stencil with
7212         transparency, color and cause. 
7213
7214         * scm/define-grobs.scm: change print-function to stencil callback everywhere.
7215
7216         * python/convertrules.py (conv): insert temporary warning rule.
7217
7218         * lily/multi-measure-rest.cc (set_text_rods): use stencil directly.
7219
7220         * lily/grob-property.cc (try_callback): remove marker if applicable.
7221
7222         * lily/grob.cc: elucidate doc about after/before-line-breaking
7223
7224         * lily/slur-scoring.cc (enumerate_attachments): robustness fix.
7225
7226         * lily/stem.cc (height): idem.
7227
7228         * lily/stem-tremolo.cc: idem.
7229
7230         * lily/slur.cc (height): don't use get_uncached_stencil()
7231
7232         * lily/rest.cc (y_offset_callback): use offset callback
7233         iso. after-line-breaking callback.
7234
7235         * lily/grob.cc: change after/before-line-breaking-callback to
7236         after/before-line-breaking dummy properties.
7237
7238         * lily/include/grob.hh: remove Grob_status.
7239
7240         * scm/define-context-properties.scm
7241         (all-user-translation-properties): remove verticalAlignmentChildCallback
7242
7243         * lily/tuplet-bracket.cc: use positions property iso. left,right-position.
7244         (calc_direction): use callback
7245         (calc_positions): use callback.
7246
7247         * lily/tie.cc (calc_direction): use callback. Only call parent
7248         positioning for more than one tie.
7249
7250         * lily/tie-column.cc (calc_positioning_done): use callback
7251
7252         * lily/slur-scoring.cc (calc_control_points): use callback
7253
7254         * lily/slur.cc (calc_direction): use callback.
7255
7256         * lily/note-collision.cc (force_shift_callback): remove.
7257
7258         * lily/dot-column.cc (force_shift_callback): remove. Use
7259         other_axis_parent_positioning.
7260
7261         * lily/grob.cc (other_axis_parent_positioning): new function.
7262         (same_axis_parent_positioning): new function
7263
7264         * lily/align-interface.cc (alignment_callback): remove function.
7265
7266         * lily/note-collision.cc (calc_positioning_done): use callback.
7267
7268         * lily/laissez-vibrer-tie.cc (calc_control_points): use callback.
7269         (calc_direction): idem.
7270         remove print function.
7271
7272         * lily/laissez-vibrer-tie-column.cc (calc_positioning_done): use callback.
7273
7274         * lily/dot-column.cc (calc_positioning_done): use callback.
7275
7276         * lily/break-align-interface.cc (calc_positioning_done): use callback.
7277
7278         * lily/beam.cc (calc_direction): use pseudo-property for beam
7279         direction callback.
7280         (calc_positions): use callback 
7281
7282         * lily/align-interface.cc (calc_positioning_done): use
7283         callback. Fold fixed  distance and normal alignment in one function.
7284
7285         * lily/stem.cc (calc_stem_end_position): use callback.
7286         (calc_positioning_done): idem.
7287         (calc_direction): idem.
7288         (calc_stem_end_position): idem
7289         (calc_stem_info): idem.
7290
7291         * lily/grob-property.cc (get_property_data): new function: 
7292         (try_callback): new function.
7293
7294         * scm/define-grob-properties.scm (all-user-grob-properties): doc
7295         callbacks property.
7296
7297         * lily/break-align-interface.cc: remove Break_align_interface::alignment_callback.
7298
7299 2005-10-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7300
7301         * lily/tie.cc (get_position): robustness fix. Don't crash if a
7302         tie
7303         has no heads.
7304         
7305         * lily/include/*.hh (Module): compile fixes.
7306
7307 2005-10-14  Heikki Junes <hjunes@cc.hut.fi>
7308
7309         * elisp/lilypond-font-lock.el, elisp/lilypond-indent.el: Avoid nil 
7310         as an argument for char-syntax: use (char-syntax (or nil 0)) 
7311         instead of (char-syntax nil), thanks to Milan Zamazal.
7312
7313 2005-10-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7314
7315         * make/lilypond.fedora.spec.in (Group): add lilypond-internals to
7316         dist.
7317
7318         * lily/tuplet-bracket.cc: check columns of bounds, not bounds
7319         themselves.
7320
7321 2005-10-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7322
7323         * flower/include/virtual-methods.hh (VIRTUAL_COPY_CONSTRUCTOR):
7324         add class_name() method.
7325
7326         * lily/music-scheme.cc: remove ly:music-name.
7327
7328 2005-10-11  Jan Nieuwenhuizen  <janneke@gnu.org>
7329
7330         * cygwin/postinstall-lilypond.sh: Remove cruft.
7331
7332         * cygwin/postremove-lilypond.sh: Remove.
7333
7334         * cygwin/GNUmakefile (default): Remove postremove rules.
7335
7336 2005-10-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7337
7338         * ly/titling-init.ly (evenHeaderMarkup): use space in header on
7339         even header too.
7340         
7341         * scm/define-markup-commands.scm (wordwrap-string): bugfix for
7342         MacOS 9 users.
7343
7344         * lily/hara-kiri-group-spanner.cc (consider_suicide): only
7345         consider break index for broken spanner.
7346
7347         * scm/define-markup-commands.scm (wordwrap-string): remove \r
7348         characters from string before splitting.
7349
7350 2005-10-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7351
7352         * scm/framework-ps.scm (output-preview-framework): use
7353         is-book-title to determine whether to chop off the booktitle.
7354
7355         * lily/paper-book.cc (systems): init from book-title-properties
7356         (add_score_title): init score-title-properties.
7357
7358         * ly/paper-defaults.ly: add {score,book}-title-properties.
7359
7360         * scm/document-backend.scm (lookup-interface): error message if
7361         using unknown interface.
7362
7363         * lily/volta-bracket.cc (after_line_breaking): new function. Set
7364         edge-height.
7365
7366         * lily/horizontal-bracket.cc (make_enclosing_bracket): rename from
7367         make_bracket.
7368         (make_bracket): new function.
7369
7370         * scm/lily.scm (define-scheme-options): add paper-size option.
7371
7372         * ly/declarations-init.ly (laissezVibrer): get paper size from
7373         -dpaper-size
7374
7375         * scm/translation-functions.scm: use \fontsize for changing the
7376         fontsize.
7377
7378         * scm/define-grobs.scm (all-grob-descriptions): set
7379         between-length-limit to 1.0
7380
7381         * lily/tie-helper.cc: add between_length_limit_ detail property.
7382
7383         * mf/feta-bolletjes.mf: typos.
7384
7385         * lily/note-head.cc (internal_print): don't shadow idx
7386         parameter. This fixes wrong attachment for do shape heads.
7387
7388 2005-10-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7389
7390         * scm/parser-ly-from-scheme.scm: rename from ly-from-scheme.scm
7391
7392         * scm/parser-clef.scm (supported-clefs): rename from clef.scm
7393
7394         * scm/layout-slur.scm: rename from slur.scm
7395
7396         * scm/layout-page-layout.scm: rename from page-layout.scm
7397
7398         * scm/layout-beam.scm: rename from beam.scm
7399
7400         * scm/define-grob-interfaces.scm (bass-figure-interface): add
7401         bass-figure-interface
7402
7403         * lily/new-figured-bass-engraver.cc (process_music): add
7404         implicitBassFigures property.
7405         
7406         * scm/define-markup-commands.scm (pad-x): new markup.
7407
7408         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set
7409         minimumVerticalExtent on FiguredBass context.
7410
7411         * lily/figured-bass-continuation.cc (center_on_figures): kludge in
7412         case the continuation crosses a line break.
7413
7414 2005-10-09  Jan Nieuwenhuizen  <janneke@gnu.org>
7415
7416         * flower/file-name.cc (dos_to_posix)[__CYGWIN__]: Return
7417         unconverted value if cygwin_conv_to_posix_path () fails.  Fixes
7418         absolute file name bug.  
7419
7420 2005-10-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7421
7422         * VERSION (PACKAGE_NAME): release 2.7.12
7423
7424         * input/regression/figured-bass-continuation-center.ly: new file.
7425
7426         * input/regression/beam-outside-beamlets.ly: new file.
7427
7428         * lily/beam.cc (set_beaming): don't clip edges.
7429         (connect_beams): don't clip edges.
7430
7431         * lily/beaming-info.cc (clip_edges): new function.
7432
7433         * lily/enclosing-bracket.cc (struct Enclosing_bracket): new file.
7434
7435         * Documentation/user/instrument-notation.itely (Figured bass):
7436         demonstrate extenders, update seealso links.
7437
7438         * scm/titling.scm (marked-up-headfoot): change tagline
7439         handling. tagline = ##f will blank the tagline as well.
7440
7441 2005-10-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7442
7443         * Documentation/topdocs/NEWS.tely: add entry for Figured bass.
7444
7445         * lily/new-figured-bass-engraver.cc (struct
7446         New_figured_bass_engraver): add new_music_found_ member.
7447
7448         * lily/lilypond-version.cc (Lilypond_version): deal with
7449         incorrectly formatted version strings. 
7450
7451         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): switch on
7452         New_figured_bass_engraver by default.
7453
7454         * lily/ttf.cc (print_trailer): only define glyph names when
7455         FT_Face has FT_FACE_FLAG_GLYPH_NAMES
7456
7457 2005-10-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7458
7459         * lily/horizontal-bracket.cc (make_bracket): new function.
7460
7461         * scm/define-grobs.scm (all-grob-descriptions): new grobs
7462         NewBassFigure, BassFigureBracket, BassFigureContinuation,
7463         BassFigureLine, BassFigureAlignment
7464
7465         * lily/new-figured-bass-engraver.cc (process_music): new file.
7466
7467         * lily/figured-bass-continuation.cc: new file.
7468
7469         * lily/include/horizontal-bracket.hh (struct Horizontal_bracket):
7470         new file.
7471
7472 2005-10-04  Mats Bengtsson  <mabe@s3.kth.se>
7473
7474         * scripts/lilypond-book.py: Bug fix, put the quote around the
7475         actual score for LaTeX documents.
7476
7477         * scm/define-grobs.scm (all-grob-descriptions): Change
7478         collapse-height of the SystemStartBracket grob to 5.0, 
7479         so the bracket disappears for single stave score lines (similarly
7480         to SystemStartBraces). 
7481
7482         * Documentation/user/advanced-notation.itely (Polymetric
7483         notation): Clarify the use of compressMusic.
7484
7485         * Documentation/user/basic-notation.itely (Grace notes): Clarify
7486         that the grace spacer note in other staves need the same duration
7487         and document the stroke-style property.
7488
7489 2005-10-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7490
7491         * Documentation/user/global.itely (Vertical spacing): document
7492         alignment-extra-space and fixed-alignment-extra-space.
7493
7494         * Documentation/topdocs/NEWS.tely (Top): add entry.
7495
7496         * input/regression/alignment-vertical-spacing.ly: new file.
7497
7498         * python/convertrules.py (conv): add rule.
7499
7500         * ly/music-functions-init.ly: rename outputProperty to overrideProperty
7501
7502         * lily/align-interface.cc (stretch_after_break): new
7503         function. Read fixed-alignment-extra-space property.
7504         (align_elements_to_extents): read alignment-extra-space property.
7505
7506         * lily/lily-guile.cc (robust_scm2dir): new function.
7507
7508         * scm/page-layout.scm (page-headfoot): annotate headsep and footsep.
7509         (annotate-space-left): new function. Annotate space left on page. 
7510         (annotate-y-interval): new function.
7511         (paper-system-annotate-last): new function. Annotate bottom-space.
7512
7513         * mf/feta-beugel.mf (y): 
7514
7515 2005-10-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7516
7517         * VERSION (PACKAGE_NAME):  release 2.7.11
7518
7519         * scm/lily-library.scm (interval-translate): new function
7520         (interval-center): new function. 
7521
7522         * scm/page-layout.scm (paper-system-annotate): new function. Add
7523         arrows for dimensions.
7524  
7525         * scm/stencil.scm (dimension-arrows): new function.
7526
7527         * Documentation/user/global.itely (Vertical spacing): mention annotatespacing
7528
7529         * input/regression/page-spacing.ly: add annotatespacing
7530
7531         * lily/paper-system-scheme.cc (LY_DEFINE): remove ly:paper-system-{extent,stencil}
7532         (LY_DEFINE): new function ly:paper-system-set-property!
7533
7534         * Documentation/user/global.itely (Paper size): explain how to add
7535         sizes.
7536
7537         * scm/paper.scm (paper-alist): rename tabloid paper to 11x17 to
7538         correspond to GS's definition.
7539
7540         * lily/tuplet-bracket.cc (after_line_breaking): suicide empty
7541         tuplet bracket.
7542         (print): only connect to next bracket if the next one is alive.
7543         (print): set padding to 0.0 if the bound is a breakable
7544         column. This makes tupletFullLength brackets reach up to the staff
7545         line if it doesn't connect to the next line.
7546
7547 2005-09-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7548
7549         * lily/bar-number-engraver.cc: correct docs.
7550
7551         * scm/output-lib.scm (first-bar-number-invisible): rename from
7552         default-bar-number-visibility
7553
7554 2005-09-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7555
7556         * scm/define-music-properties.scm (all-music-properties): remove
7557         predicate property.
7558
7559 2005-09-28  Heikki Junes  <hjunes@cc.hut.fi>
7560
7561         * po/fi.po: refresh.
7562
7563 2005-09-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7564
7565         * input/regression/hara-kiri-pianostaff.ly (disappear): remove
7566         superfluous s1.
7567         (disappear): bugfix.
7568
7569         * lily/stem-tremolo.cc (raw_stencil): read slope property.
7570
7571         * lily/include/paper-system.hh (class Paper_system): remove
7572         staff_extents_ member.
7573
7574         * lily/paper-system-scheme.cc (LY_DEFINE): remove.
7575
7576         * lily/include/paper-system.hh (class Paper_system): remove
7577         number_ variable. Remove is_title_. Remove break_before_penalty_
7578
7579         * lily/paper-book.cc (systems): use 'number property iso. number_
7580         member.
7581
7582         * lily/paper-system-scheme.cc: remove ly:paper-system-break-before-penalty
7583         remove ly:paper-system-number.
7584
7585         * scm/lily-library.scm (paper-system-title?): new function.
7586
7587         * lily/book.cc (process): bugfix: flip ?: cases. 
7588
7589         * Documentation/user/changing-defaults.itely (Difficult tweaks):
7590         add outputProperty.
7591
7592         * ly/music-functions-init.ly: add outputProperty music function.
7593
7594         * scm/paper.scm (set-paper-dimension-variables): add pagetopspace
7595
7596         * scm/page-layout.scm (ly:optimal-page-breaks): read next-space
7597         and next-padding.
7598         (optimal-page-breaks): rename from ly:optimal-page-breaks.
7599
7600         * lily/paper-system-scheme.cc (LY_DEFINE): new function.
7601
7602         * lily/paper-system.cc (internal_get_property): new function.
7603
7604         * Documentation/user/global.itely (Vertical spacing): refer to
7605         page-spacing.ly
7606
7607         * scm/page-layout.scm (ly:optimal-page-breaks): add support for
7608         pagetopspace
7609
7610         * input/regression/page-spacing.ly: new file.
7611
7612         * input/regression/page-top-space.ly: new file.
7613
7614         * lily/spacing-spanner.cc: cmath -> math.h
7615
7616         * lily/paper-system.cc (read_left_bound): new function. Read
7617         line-break-system-details from left bound to determine extents.
7618  
7619         * Documentation/user/programming-interface.itely (Using LilyPond
7620         syntax inside Scheme): change applyxxx -> applyXxx.
7621
7622         * ly/music-functions-init.ly: add outputProperty music function.
7623
7624         * lily/parser.yy (Generic_prefix_music_scm): add scm-scm-scm signature.
7625
7626         * lily/grob-scheme.cc (LY_DEFINE): add ! to ly:grob-suicide! name.
7627
7628         * python/convertrules.py (conv): rule
7629
7630         * ly/music-functions-init.ly: applyxxx -> applyXxx
7631
7632         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): alias
7633         TabVoice to Voice.
7634
7635 2005-09-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7636
7637         * flower/include/real.hh: include <math.h> iso. <cmath>
7638
7639         * flower/include/offset.hh: include real.hh
7640
7641 2005-09-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7642
7643         * Documentation/user/changing-defaults.itely (Difficult tweaks):
7644         fix example, now that 'interfaces is no longer directly available.
7645
7646         * lily/book.cc (process): don't crash if paper == NULL.
7647
7648         * po/fr.po: update.
7649
7650 2005-09-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7651
7652         * scm/define-music-types.scm (music-descriptions): set length and
7653         start-callback for QuoteMusic
7654
7655 2005-09-15  Mats Bengtsson  <mabe@s3.kth.se>
7656
7657         * lily/tie.cc (get_configuration): Replace fabs -> abs for integer
7658         arguments. Fixes compilation error with gcc 3.3.
7659
7660 2005-09-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7661
7662         * VERSION: release 2.7.10
7663
7664         * stepmake/stepmake/python-module-rules.make
7665         ($(outdir)/%$(SHARED_MODULE_SUFFIX)): SHARED_FLAGS at the end.  
7666
7667         * lily/*.cc: remove <cmath> everywhere. <cmath> is included from
7668         real.hh
7669
7670 2005-09-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7671
7672         * stepmake/stepmake/c++-vars.make (#EXTRA_CXXFLAGS): don't add
7673         -Werror. Otherwise GCC barfs over various optimizations.
7674
7675         * scm/define-grob-properties.scm (all-internal-grob-properties):
7676         add note-head property
7677
7678         * Documentation/user/instrument-notation.itely (Laissez vibrer
7679         ties): new node.
7680
7681         * input/regression/laissez-vibrer-ties.ly: new file.
7682
7683         * lily/laissez-vibrer-engraver.cc: new file.    
7684
7685         * lily/include/tie-column-format.hh: new file.
7686
7687         * lily/tie-column-format.cc: new file. 
7688
7689         * lily/tie-column.cc (set_manual_tie_configuration): new function.
7690
7691         * lily/laissez-vibrer-tie.cc: new file.
7692
7693         * lily/include/laissez-vibrer-tie.hh: new file.
7694
7695         * ly/engraver-init.ly: add Laissez_vibrer_engraver
7696
7697         * ly/declarations-init.ly (laissezVibrer): add \laissezVibrer
7698
7699         * scm/define-grobs.scm (all-grob-descriptions): add
7700         LaissezVibrerTie, LaissezVibrerTieColumn
7701
7702         * lily/tie-column.cc (set_tie_config_directions): new function
7703         (final_shape_adjustment): new function.
7704         (shift_small_ties): new function.
7705
7706         * scm/define-music-types.scm (music-descriptions): add LaissezVibrerEvent
7707
7708         * lily/include/tie.hh (struct Tie_details): add x_gap_
7709         (struct Tie_configuration): add head_position_
7710
7711         * lily/tie-column.cc (set_chord_outline): new function.
7712
7713         * mf/cmr.enc.in:  remove file.
7714
7715 2005-09-11  Graham Percival  <gpermus@gmail.com>
7716
7717         * Documentation/user/examples.itely: typo fix.  Thanks, Matevž
7718
7719 2005-09-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7720
7721         * mf/feta-banier.mf: make vertical stem 1/2 stemthickness wide to
7722         reduce aliasing effects.
7723
7724         * lily/tie-column.cc (set_chord_outlines): bugfix: insert complete
7725         box in skyline.
7726
7727 2005-09-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7728
7729         * lily/tie.cc (get_configuration): don't crash if left_dot is NULL.
7730
7731         * flower/include/real.hh: std::fabs too.
7732
7733 2005-09-08  Jan Nieuwenhuizen  <janneke@gnu.org>
7734
7735         * Documentation/user/lilypond.tely: Spell Baßtuba in UTF-8 (Werner). 
7736
7737         * lily, flower: Include C++ iso C headers.  Import namespace std
7738         throughout.
7739
7740         * lily/side-position-interface.cc: 
7741         * lily/scm-hash.cc: 
7742         * lily/note-head.cc: 
7743         * lily/include/includable-lexer.hh: 
7744         * flower/include/string-data.icc: Remove using std::*.
7745
7746         * lily, flower: Include C++ iso C headers.  Import namespace std
7747         throughout.
7748
7749         * lily/side-position-interface.cc: 
7750         * lily/scm-hash.cc: 
7751         * lily/note-head.cc: 
7752         * lily/include/includable-lexer.hh: 
7753         * flower/include/string-data.icc: Remove using std::*.
7754
7755         * Documentation/user/instrument-notation.itely (Entering lyrics):
7756         Multiple latin-1->utf-8 conversion fix.
7757
7758         * Documentation/user/*tely: Update Emacs cookie to utf-8.
7759
7760 2005-09-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7761
7762         * lily/tie.cc (get_configuration): also avoid dots for non-space
7763         situations.
7764
7765 2005-09-07  Jan Nieuwenhuizen  <janneke@gnu.org>
7766
7767         * Documentation/user/instrument-notation.itely: Bugfix.
7768
7769 2005-09-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7770
7771         * tex/GNUmakefile: don't install texinfo.tex
7772
7773         * tex/ : cleanup: remove unused files.
7774
7775         * lily/general-scheme.cc: remove my_{isinf,isnan}.
7776
7777         * flower/include/real.hh: using std::{isnan,isinf}
7778         
7779         * VERSION (PATCH_LEVEL): release 2.7.9
7780
7781 2005-09-05  Graham Percival  <gpermus@gmail.com>
7782
7783         * Documentation/user/ instrument-notation.itely,
7784         advanced-notation.itely: minor tweaks.
7785
7786         * input/test/script-chart.ly: add item padding.
7787
7788 2005-09-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7789
7790         * flower/offset.cc: use math.h iso. <cmath>
7791
7792         * scm/ps-to-png.scm (make-ps-images): use png16m again, for sake
7793         of IE users.
7794
7795         * scm/framework-eps.scm (dump-stencils-as-EPSes): cleanup.
7796         (widen-left-stencil-edges): new function. Fix alignment problems
7797         with LaTeX includegraphics.
7798
7799         * lily/text-interface.cc (interpret_markup): use abort().
7800
7801 2005-09-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7802
7803         * input/regression/tie-chord.ly (testLong): add a chord in 4ths
7804
7805         * lily/tie.cc (get_configuration): update bezier shape as we
7806         change Y positions.
7807         (get_configuration): don't move large ties if we're outside of the
7808         staff.
7809
7810 2005-09-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7811
7812         * scm/define-markup-commands.scm (strut): swap X and Y dims.
7813         
7814 2005-09-03  Jan Nieuwenhuizen  <janneke@gnu.org>
7815
7816         * .cvsignore: Add auto-generated configure files and then some.
7817
7818 2005-09-02  Jan Nieuwenhuizen  <janneke@gnu.org>
7819
7820         * scm/define-grobs.scm (DynamicLineSpanner): Add
7821         X-extent-callback.  Fixes hairpin-slur collision.
7822
7823 2005-08-31  Graham Percival  <gpermus@gmail.com>
7824
7825         * Documentation/user/advanced-notation.itely,
7826         basic-notation.itely: minor changes.
7827
7828 2005-08-31  Mats Bengtsson  <mabe@s3.kth.se>
7829
7830         * scm/framework-eps.scm (dump-stencils-as-EPSes): Insert a
7831         \linebreak between each .eps file if \betweenLilyPondSystem is
7832         undefined. 
7833
7834         * Documentation/user/lilypond-book.itely (Integrating LaTeX and
7835         music): Document the \linebreak
7836
7837         * Documentation/user/lilypond-book.itely,
7838         input/tutorial/lbook-latex-test.tex,
7839         Documentation/user/examples.itely: Remove \usepackage{graphics}
7840
7841 2005-08-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7842
7843         * mf/aybabtu.pe.in (i): don't merge alphabet into aybabtu.
7844
7845         * lily/ly-module.cc (make_stand_in_procs_weak): 1.6.4 and earlier
7846         compat bugfix.
7847
7848         * scripts/lilypond-book.py (PREAMBLE_LY): define
7849         inside-lilypond-book
7850         (modify_preamble): new function. Insert \RequirePackage{graphics}
7851         when no {graphics found in preamble.  
7852
7853 2005-08030  Graham Percival  <gpermus@gmail.com>
7854
7855         * Documentation/user/basic-notation.itely, global.itely,
7856         tutorial.itely: misc small changes.
7857
7858 2005-08-30  Jan Nieuwenhuizen  <janneke@gnu.org>
7859
7860         * stepmake/aclocal.m4: Include MY_PATCH_LEVEL in config.make's
7861         VERSION.
7862
7863 2005-08-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7864
7865         * lily/tie-column.cc (new_directions): put Tie down on center
7866         staff line. 
7867
7868         * lily/script-interface.cc (before_line_breaking): use
7869         Grob::programming_error
7870
7871         * scm/ps-to-png.scm (make-ps-images): use pngalpha device.
7872
7873         * scripts/lilypond-book.py (get_latex_textwidth): oops. Take [0]
7874         of splitext.
7875
7876 2005-08-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7877
7878         * VERSION (PACKAGE_NAME): VERSION release 2.7.8
7879
7880 2005-08-29  Werner Lemberg  <wl@gnu.org>
7881
7882         * mf/GNUmakefile: Add `-f' flag to `rm' command while removing
7883         the `*.scale.pfa' files to avoid warnings.
7884
7885 2005-08-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7886
7887         * lily/tempo-performer.cc (process_music): idem.
7888
7889         * lily/midi-def.cc (get_tempo): Rational to int conversion bug.
7890
7891 2005-08-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7892
7893         * Documentation/user/advanced-notation.itely (Text markup): not a
7894         fragment.
7895
7896         * lily/midi-item.cc (to_string): use to_int() iso. int cast.
7897
7898         * lily/staff-performer.cc (initialize): add tempo/name to
7899         audio_staff_
7900
7901
7902 2005-08-26  Graham Percival  <gpermus@gmail.com>
7903
7904         * Documentation/user/advanced.itely: add text-only example.
7905
7906         * Documentation/user/invoking.itely: add index entries for
7907         convert-ly.
7908
7909         * Documentation/user/ tutorial.itely, basic-notation.itely:
7910         small fixes suggested by Steve D.  Thanks!
7911
7912 2005-08-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7913
7914         * input/regression/markup-bidi-pango.ly: new file.
7915
7916         * lily/pango-font.cc (pango_item_string_stencil): make Mingw code
7917         standard. Remove #ifdef. Remove memleak.
7918         (text_stencil): use text_dir to decide how to composite items.
7919         (text_stencil): determine uniform text direction for the entire
7920         string.
7921
7922         * scripts/lilypond-book.py (output_name): remove
7923         latex_filter_cmd. Non-portable to non-Unix systems. 
7924         (get_latex_textwidth): use File.write and os.unlink() instead.
7925
7926         * THANKS: add Vicente & Trevor.
7927
7928         * lily/grob.cc (discretionary_processing): look up origin for
7929         programming_error too. 
7930
7931         * input/regression/tie-broken.ly: new file.
7932
7933         * lily/tie-column.cc (set_chord_outlines): set outline for line
7934         break case too.
7935         
7936 2005-08-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7937
7938         * lily/pango-font.cc (text_stencil): don't translate glyphs in
7939         unscaled transform, just translate stencils.
7940
7941         * ly/performer-init.ly: init timing to #t.  Fixes bar checks in
7942         MIDI.
7943
7944         * scm/define-markup-commands.scm (wordwrap-string): use
7945         text-direction
7946         (wordwrap-stencils): idem.
7947         (line): idem.
7948         (fill-line): idem.
7949         (wordwrap-stencils): translate last line to right for
7950         text-direction = LEFT.
7951
7952         * scm/define-grob-properties.scm (all-user-grob-properties): add
7953         text-direction.
7954
7955 2005-08-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
7956
7957         * lily/lily-parser.cc (Lily_parser): also copy output_basename_
7958         when copying a Lily_parser object.
7959
7960 2005-08-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7961
7962         * scm/define-markup-commands.scm (null): add null markup.
7963
7964 2005-08-25  Mats Bengtsson  <mabe@s3.kth.se>
7965
7966         * lily/item.cc: Add documentation of center-invisible
7967
7968 2005-08-24  Graham Percival  <gpermus@gmail.com>
7969
7970         * Documentation/user/advanced-notation.itely: add info about
7971         raising text.
7972
7973         * Documentation/user/programming-interface.itely: fix example
7974         involving raised text.
7975
7976 2005-08-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7977
7978         * lily/beam.cc (print): fix X start/end points of isolated
7979         beamlets.
7980
7981         * scm/output-ps.scm (grob-cause): escape spaces in URLs.
7982
7983         * lily/multi-measure-rest.cc (set_text_rods): new function.
7984
7985         * lily/vertical-align-engraver.cc (process_music): call
7986         Align_interface::set_axis(). This forces #'elements to be ordered,
7987         preventing random vertical reordering of staves.
7988
7989         * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
7990         add avoid-slur property. 
7991
7992         * Documentation/user/basic-notation.itely (Measure repeats): add
7993         countPercentRepeats example.
7994
7995         * Documentation/user/advanced-notation.itely (Other text markup
7996         issues): remove remark about normal-font.  We have \normal-text
7997
7998         * input/regression/tie-chord.ly: add note about remaining bugs.
7999
8000         * lily/tie.cc (print): try Tie_column::set_directions () if
8001         control-points not yet defined.
8002
8003 2005-08-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8004
8005         * lily/system-start-delimiter.cc (staff_brace): don't remove brace
8006         extent. This fixes braces falling out of the EPS bbox.
8007
8008         * mf/feta-beugel.mf (braces_per_font): make brace glyph align
8009         exactly to bbox.
8010
8011 2005-08-23  Graham Percival  <gpermus@gmail.com>
8012
8013         * {various} : change #up->#UP and #down->#DOWN.
8014
8015         * ly/titling-init.ly: Spacing fix when using printallheaders=##t.
8016
8017         * Documentation/user/advanced-notation.itely: clarify
8018         what objects handles text on a multimeasure rest.
8019
8020 2005-08-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8021
8022         * VERSION (PATCH_LEVEL): release 2.7.7
8023
8024 2005-08-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8025
8026         * make/lilypond-vars.make: set -dgs-font-load for "make web" 
8027
8028         * Documentation/topdocs/INSTALL.texi (Top): add GS bugfix requirement.
8029
8030         * input/regression/*.ly: formatting clean-up. Default layout
8031         before music expression.
8032
8033         * input/mutopia/R.Schumann/GNUmakefile (examples): switch off
8034         romanze28-2 example.
8035
8036         * scm/ps-to-png.scm: remove dir-re function.
8037         (make-ps-images): generate page names, instead of globbing them.
8038         This brings down LilyPond memory usage for make web by a factor
8039         10. 
8040
8041         * scripts/lilypond-book.py (Lilypond_snippet.png_is_outdated):
8042         don't use glob. With 3000 files, globbing
8043         Documentation/user/out-www/ can take too much time. 
8044         
8045         * lily/lily-guile.cc (gulp_file_to_string): take size argument.
8046
8047         * lily/general-scheme.cc (LY_DEFINE): take optional size argument.
8048
8049         * input/regression/tie-manual.ly: new file
8050
8051         * input/regression/tie-chord.ly: update.
8052
8053         * flower/include/interval.hh (struct Interval_t): 
8054
8055         * lily/tie.cc (distance): new function 
8056         (height): new function.
8057         (init): new function
8058         (Tie_details): new struct.
8059
8060         * lily/skyline.cc (skyline_height): new function.
8061
8062         * lily/tie-column.cc (set_chord_outlines): new function.
8063         (new_directions): read tie-configuration
8064
8065         * lily/skyline.cc: fix ASCII art.
8066         
8067 2005-08-22  Mats Bengtsson  <mabe@s3.kth.se>
8068
8069         * python/convertrules.py (string_or_scheme): Fix spelling error
8070
8071 2005-08-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8072         
8073         * lily/tie-column.cc (set_directions): set directions only once.
8074         (add_configuration): new function.
8075
8076         * lily/tie.cc (set_control_points): new function
8077
8078         * lily/tie-column.cc (new_directions): new function.
8079
8080         * ly/music-functions-init.ly: set 'pitch property
8081         iso. trill-pitch. This makes \relative work with \pitchedTrill
8082
8083         * lily/tie.cc (get_configuration): new function. Don't generate
8084         control points, rather, generate configuration.
8085         remove head-pair property.
8086
8087         * lily/include/tie.hh (struct Tie_configuration): new struct.
8088
8089 2005-08-22  Heikki Junes  <hjunes@cc.hut.fi>
8090
8091         * Documentation/topdocs/NEWS.tely: clarify.
8092
8093 2005-08-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8094
8095         * lily/tie.cc: remove minimum-length
8096
8097         * scm/define-grob-properties.scm (all-user-grob-properties):
8098         remove staffline-clearance, y-offset 
8099
8100         * input/regression/tie-dots.ly (Module): remove.
8101
8102         * lily/tie.cc (get_control_points): rewrite. Put short ties in
8103         staff-spaces, make long ties cross staff lines. Avoid flags and dots.
8104
8105         * input/regression/tie-single.ly: new file.
8106
8107 2005-08-21  Graham Percival  <gpermus@gmail.com>
8108
8109         * ly/bagpipe.ly: fix compile problem.
8110
8111 2005-08-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8112
8113         * lily/midi-item.cc (name): new method.
8114
8115         * lily/staff-performer.cc (acknowledge_audio_element): use
8116         signature of baseclass.
8117
8118         * lily/engraver-group.cc (do_announces): move recursion call out
8119         of while loop. 
8120
8121         * lily/drum-note-performer.cc (class Drum_note_performer): use
8122         process_music everywhere.
8123
8124         * ly/performer-init.ly: add default children everywhere.
8125
8126         * lily/paper-book.cc (output): call paper-book-write-midis
8127         directly: always write MIDI, even if no \layout {} block. 
8128
8129 2005-08-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8130
8131         * VERSION (PACKAGE_NAME): release 2.7.6
8132
8133         * lily/percent-repeat-engraver.cc (try_music): don't print warning
8134         about not being able to handle repeat.
8135
8136 2005-08-19  Jan Nieuwenhuizen  <janneke@gnu.org>
8137
8138         * Documentation/user/examples.itely (Piano templates):
8139         * lily/include/performer-group.hh: Remove last traces of
8140         Performer_group_performer.  Fixes make web.
8141
8142 2005-08-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8143
8144         * Documentation/user/examples.itely (Piano templates): change
8145         Engraver_group_engraver -> Engraver_group
8146
8147         * lily/ly-module.cc (make_stand_in_procs_weak): only kludge if
8148         scm_stand_in_procs is not weak_any.
8149
8150         * lily/volta-bracket.cc (print): don't use strcmp().
8151
8152         * lily/volta-engraver.cc (process_music): use
8153         Text_interface::is_markup() for setting the 'text property of the
8154         volta bracket.
8155
8156         * input/mutopia/claop.py (accents): update syntax to 2.6
8157
8158         * scm/define-context-properties.scm
8159         (all-user-translation-properties): add countPercentRepeats.
8160
8161         * Documentation/user/basic-notation.itely (Measure repeats): add
8162         isolated percent example.
8163
8164 2005-08-18  Graham Percival  <gpermus@gmail.com>
8165
8166         * input/ {various}: change direction #1, #-1 to
8167         #up/#down or \fooUp, \fooDown.
8168
8169         * Documentation/user/music-glossary.tely: #-1 to #down.
8170
8171         * ly/bagpipe.ly, engraver-init.ly, property-init.ly: #1
8172         to #up, #-1 to #down.
8173
8174 2005-08-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8175
8176         * lily/include/engraver-group.hh: rename.
8177
8178         * lily/include/performer-group.hh: rename.
8179
8180 2005-08-18  Mats Bengtsson  <mabe@s3.kth.se>
8181
8182         * input/test/script-abbreviations.ly: Removed some old LaTeX
8183         left overs.
8184
8185 2005-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
8186
8187         * python/convertrules.py (conv): inside-slur -> avoid-slur.
8188         Remove functions.  Remove if 1: constructs, reindent.
8189
8190         * scripts/convert-ly.py (add_version): Add functions from
8191         convertrules.py
8192
8193         * scm/script.scm (default-script-alist):
8194         s/priority/script-priority.  Fixes script stacking.  Backportme.
8195         (Fermata): Very low priority.
8196
8197 2005-08-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8198
8199         * input/regression/*.ly: remove superfluous \score blocks. Reindent.
8200
8201         * input/regression/slur-script.ly: remove padding tweaks. Add
8202         comment strings.
8203
8204         * lily/note-spacing.cc (get_spacing): remove kludge for EOL wide
8205         time sigs and related stuff.
8206
8207         * scm/define-grob-properties.scm (all-user-grob-properties): add
8208         @code{} tags to property description.
8209
8210         * lily/include/line-group-group-engraver.hh (Module): remove file.
8211
8212         * python/convertrules.py (conv): add rule for
8213         Engraver_group_engraver -> Engraver_group.
8214
8215         * lily/include/performer-group-performer.hh: analogous.
8216
8217         * lily/include/engraver-group-engraver.hh: rename to Engraver_group.
8218
8219         * lily/context-def.cc (instantiate): check for
8220         Engraver_group_engraver and Performer_group_performer not
8221         Engraver/Performer. Fixes crashes when doing \with { \consists .. }
8222  
8223 2005-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
8224
8225         * input/les-nereides.ly: Remove three fingering tweaks, update
8226         remaining one.
8227
8228         * input/regression/slur-script-inside.ly: Update, fix doc.
8229
8230         * scm/script.scm: Update to avoid-slur.
8231
8232         * scm/define-grob-properties.scm (avoid-slur): New property.
8233
8234         * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
8235         * lily/slur-engraver.cc (acknowledge_extra_object): Invoke
8236         outside_slur_callback if avoid-slur != #'inside.
8237
8238         * scm/define-grobs.scm (Fingering, Textscript): No
8239         inside-slur/outside-slur preference.
8240         (DynamicLineSpanner): Always outside slur.
8241
8242         * input/regression/slur-script.ly: More tests.
8243
8244 2005-08-17  Graham Percival  <gpermus@gmail.com>
8245
8246         * Documentation/user/lilypond-book: fix notime entry.
8247
8248         * Documentation/user/advanced-notation.itely: add info on
8249         getting an I rehearsal mark.
8250
8251         * Documentation/user/putting.itely: reinstate "I", re-enforce
8252         the fact that \override numbers are the result of
8253         experimentation and personal taste.
8254
8255         * Documentation/user/invoking.itely: update convert-ly bugs.
8256
8257 2005-08-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8258
8259         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set timing
8260         to #t.
8261
8262         * lily/timing-translator.cc (initialize): don't initialize timing.
8263
8264         * input/regression/stem-spacing.ly (Module): remove file.
8265
8266         * input/regression/spacing-stick-out.ly: specify Score context for
8267         \override
8268
8269         * input/regression/clefs.ly: remove spurious {}s 
8270
8271 2005-08-17  Heikki Junes  <hjunes@cc.hut.fi>
8272
8273         * Documentation/topdocs/NEWS.tely,
8274         input/regression/repeat-percent-count.ly: clarify a bit.
8275
8276 2005-08-16  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8277
8278         * input/no-notation/display-lily-tests.ly: delete
8279         display-lily-init call.
8280
8281         * ly/music-functions-init.ly (displayLilyMusic): move
8282         display-lily-init call at top level, so that the user should not
8283         have to call it.
8284
8285         * scm/define-music-display-methods.scm (note-name->lily-string):
8286         retrieve note names directly from pitchnames using new function `rassoc'.
8287         (display-lily-init): note names list construction removed.
8288
8289 2005-08-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8290
8291         * THANKS: spello.
8292
8293         * lily/lily-parser.cc (get_header): copy module, instead of
8294         returning it.
8295
8296         * Documentation/topdocs/NEWS.tely (Top): add entry for percent
8297         counters.
8298
8299         * Documentation/user/basic-notation.itely (Measure repeats): add
8300         links to Counter grobs.
8301
8302         * scm/define-grobs.scm (all-grob-descriptions): add
8303         DoublePercentRepeatCounter
8304         (all-grob-descriptions): add PercentRepeatCounter
8305
8306         * lily/percent-repeat-engraver.cc (class Percent_repeat_engraver):
8307         also create counter grobs.
8308
8309         * lily/separation-item.cc (extremal_break_aligned_grob): don't
8310         return grob without space-alist.
8311
8312         * input/proportional.ly: tune staff-padding.
8313
8314         * input/regression/repeat-percent-count.ly: new file. 
8315
8316 2005-08-16  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8317
8318         * input/no-notation/display-lily-tests.ly: moved from
8319         input/regression/ to input/no-notation. Be sure to call
8320         `display-lily-init' before trying to use the display function.
8321
8322 2005-08-16  Mats Bengtsson  <mabe@s3.kth.se>
8323
8324         * scripts/lilypond-book.py (option_definitions): Don't localize
8325         the empty string. Fixes bug when --psfonts was used with
8326         non-English locale.
8327
8328 2005-08-15  Graham Percival  <gpermus@gmail.com>
8329
8330         * lily/tuplet-bracket.cc: simple build fix.
8331
8332         * Documentation/user/putting.itely: use "we" instead of "I".
8333
8334         * Documentation/user/basic-notation.itely: cautionary accidentals
8335         work with naturals, too.
8336
8337 2005-08-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8338
8339         * lily/tuplet-bracket.cc (calc_position_and_height): add
8340         staff-padding support.
8341
8342         * input/proportional.ly: set staff-padding.
8343         
8344         * VERSION (PATCH_LEVEL): release 2.7.5
8345
8346         * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): text formatting
8347         fixes. Remove tweaks.
8348
8349         * input/regression/tuplet-slope.ly: add a test case.
8350
8351         * lily/tuplet-bracket.cc (calc_position_and_height): revert
8352         erroneous fix. Add spanner bounds to offset array with relative X
8353         positions.
8354
8355         * ly/engraver-init.ly: add Rest_engraver only once.
8356
8357         * scm/define-music-display-methods.scm (KeyChangeEvent): only do
8358         (*parser*) lookup if (*parser*) != #f.
8359
8360 2005-08-15  Jan Nieuwenhuizen  <janneke@gnu.org>
8361
8362         * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
8363         Cut-and paste update.
8364
8365         * input/regression/slur-script.ly: Add example of reverting
8366         inside-slur for fingering.
8367
8368         * scm/define-grobs.scm (DynamicLineSpanner, Fingering,
8369         TextScript): Explicitly set inside-slur #f, forcing these out of slur.
8370
8371         * lily/slur-engraver.cc (acknowledge_extra_object): Only invoke
8372         outside_slur_callback if inside-slur == #f (as opposed to unset).
8373
8374 2005-08-14  Jan Nieuwenhuizen  <janneke@gnu.org>
8375
8376         * tex/GNUmakefile (INSTALLATION_FILES): Remove enc symlink setup,
8377         encoding files are already removed.
8378
8379 2005-08-15  Mats Bengtsson  <mabe@s3.kth.se>
8380
8381         * Documentation/user/advanced-notation.itely (Instrument names):
8382         Document a workaround for instrument names that collide with
8383         system start braces/brackets.
8384
8385 2005-08-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8386
8387         * lily/rest-collision.cc (do_shift): spello.
8388
8389         * input/proportional.ly: use #'used property. Set break-overshoot
8390         property.
8391
8392         * mf/feta-arrow.mf: center on arrow tip center, iso. tip edge.
8393
8394         * lily/paper-column.cc: add #'used property
8395
8396         * lily/mark-engraver.cc (stop_translation_timestep): set grob
8397         array for staves found.
8398
8399         * lily/metronome-engraver.cc (stop_translation_timestep): set grob
8400         array for stavesFound.
8401
8402         * lily/staff-spacing.cc (next_note_correction): add fixed and
8403         space to calling convention. This fixes spacing of accidentals
8404         after barlines.
8405
8406         * input/regression/spacing-accidental-stretch.ly: add barline -
8407         accidental case.
8408
8409         * scm/framework-ps.scm (page-header): add version number to
8410         creator
8411         (eps-header): idem.
8412
8413         * mf/feta-bolletjes.mf: swap d0 and u0 fa heads.
8414         
8415 2005-08-13  Graham Percival  <gpermus@gmail.com>
8416
8417         * Documentation/user/global.itely: add "fit as much as
8418         possible onto this page" example (Vertical spacing).
8419
8420 2005-08-13  Jan Nieuwenhuizen  <janneke@gnu.org>
8421
8422         * *: Nitpick run.
8423
8424         * buildscripts/fixcc.py: Fixes.
8425
8426 2005-08-12  Graham Percival  <gpermus@gmail.com>
8427
8428         * Documentation/user/advanced-notation.itely: add markup
8429         example to Text spanners.
8430
8431 2005-08-12  Mats Bengtsson  <mabe@s3.kth.se>
8432
8433         * Documentation/user/basic-notation.itely (Ties): Add example of
8434         tying a tremolo to a chord. Thanks to Steve Doonan. 
8435
8436         * lily/tie-engraver.cc: Add tieWaitForNote to the list of read
8437         properties and move tieMelismaBusy to the list of written
8438         properties. 
8439
8440 2005-08-12  Heikki Junes  <hjunes@cc.hut.fi>
8441
8442         * po/TODO: suggest to use a dedicated tool like kbabel.
8443
8444         * po/fi.po: update using kbabel.
8445
8446 2005-08-12  Jan Nieuwenhuizen  <janneke@gnu.org>
8447
8448         * *: Remove obsolete files.  Nitpick run.
8449
8450         * lily/lily-guile.cc (parse_symbol_list): Bugfix.
8451
8452 2005-08-11  Jan Nieuwenhuizen  <janneke@gnu.org>
8453
8454         * mf/GNUmakefile (get-*-fonts): Rename from get-*-pfa.  Copy SVG
8455         too.
8456
8457         * Documentation/topdocs/NEWS.tely (Top): Add slur script feature.
8458
8459         * lily/lily-guile.cc (parse_symbol_list): Rewrite.  Grok multiple
8460         whitespace as symbol separator.
8461
8462         * lily/side-position-interface.cc: Add slur-padding.
8463
8464         * input/regression/slur-script.ly: Fixed.  Backportme?  This is
8465         quite a large fix, and it never worked in a stable release; so not
8466         really a regression.
8467
8468         * lily/phrasing-slur-engraver.cc (class Phrasing_slur_engraver):
8469         Update cut and paste code from Slur_engraver.
8470
8471         * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
8472         Add.
8473
8474         * scm/define-grobs.scm (DynamicLineSpanner): Add
8475         dynamic-line-spanner-interface.
8476         (DynamicLineSpanner, TextScript, Fingering): Add slur-padding.
8477
8478 2005-08-09  Jan Nieuwenhuizen  <janneke@gnu.org>
8479
8480         * lily/slur-engraver.cc (acknowledge_extra_object): Bugfix: use
8481         to_boolean () so that non-set 'inside-slur means false.
8482
8483         * lily/slur.cc (outside_slur_callback): Bugfixes: make sure that
8484         slur has control-points.  Skip script without direction.  Always
8485         do_shift if script inside slur, even if slur not contained in
8486         script y-extent.  Increment k in loop.
8487
8488 2005-08-11  Mats Bengtsson  <mabe@s3.kth.se>
8489
8490         * scm/define-markup-commands.scm: Improved regexp to search for
8491         EPS bounding boxes and corrected call to ly:warning.
8492
8493 2005-08-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8494
8495         * Documentation/user/programming-interface.itely (Displaying music
8496         expressions): doc for \displayLilyMusic. Also some precisions in
8497         "Markup construction in Scheme"
8498
8499 2005-08-10  Mats Bengtsson  <mabe@s3.kth.se>
8500
8501         * scm/define-markup-commands.scm (normal-text): Added 2 new
8502         markup commands, \normal-text and \medium (the latter thanks to
8503         Bruce Fairchild). 
8504
8505 2005-08-08  Graham Percival  <gpermus@gmail.com>
8506
8507         * Documentation/user/programming-interface.itely: fix @{ @}.
8508
8509         * scm/define-markup-commands.scm: add linewidth info to
8510         \justify and \wordwrap, add "upright is the opposite of italic".
8511
8512         * Documentation/user/advanced-notation.itely: shaped->shape,
8513         add (cons (markup "foo")) type of example to text markup,
8514         reword multi-measure rests section.
8515
8516         * lily/note-heads-engraver.cc: changed Shaped->Shape in a
8517         comment.  No actual code was touched.
8518
8519         * Documentation/user/invoking.itely: add more info about
8520         \include.  Thanks, Bruce!
8521
8522         * THANKS: add Bruce Fairchild, alphabetise.
8523
8524         * Documentation/user/global.itely: document \score{\header{}}
8525         behavior.
8526
8527         * Documentation/user/basic-notation.itely: reword multi-measure
8528         rest discussion in Rests.
8529
8530 2005-08-08  Mats Bengtsson  <mabe@s3.kth.se>
8531
8532         * Documentation/user/programming-interface.itely (Markup
8533         construction in Scheme): Corrected example and tried to clarify
8534         the implicit \line in the table.
8535
8536 2005-08-07  Graham Percival  <gpermus@gmail.com>
8537
8538         * Documentation/user/instrument-notation.itely: moved
8539         some bagpipe info back into the bagpipe section.  Somehow
8540         it ended up in the "other vocal issues" section?!  :o_O
8541
8542 2005-08-07  Jan Nieuwenhuizen  <janneke@gnu.org>
8543
8544         * scm/framework-ps.scm (dir-join): Rename from path-join (joins
8545         directories, not paths).
8546
8547 2005-08-06  Jan Nieuwenhuizen  <janneke@gnu.org>
8548
8549         * scm/framework-ps.scm (munge-lily-font-name): Bugfix: Munge only
8550         plain emmentaler/aybabtu.  Backportme.
8551
8552         * lily/tuplet-bracket.cc (calc_position_and_height): Bugfix:
8553         missing dir correction.
8554
8555 2005-08-05  Graham Percival  <gperlist@shaw.ca>
8556
8557         * scm/define-markup-commands: fix reversed justify/wordwrap
8558         doc strings.
8559
8560 2005-08-05  Jürgen Reuter  <reuter@ipd.uka.de>
8561
8562         * lily/ligature-engaver.cc, lily/coherent-ligature-engaver.cc,
8563         lily/gregorian-ligature-engaver.cc,
8564         lily/include/ligature-engraver.hh,
8565         lily/include/coherent-ligature-engraver.hh,
8566         lily/include/gregorian-ligature-engraver.hh: make these classes
8567         truely abstract.  This should fix some internal oddities such as
8568         duplicate as well as dead translator/property declarations, and
8569         also some dead code.
8570
8571         * lily/ligature-bracket-engraver.cc, lily/ligature-engraver.cc:
8572         bugfix: avoid message "junking empty ligature" on ligature
8573         brackets by collecting dummy grobs.
8574
8575 2005-08-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8576
8577         * lily/tuplet-bracket.cc (print): default right overshoot to 0.0
8578
8579         * input/proportional.ly (staffKind): bugfix.
8580         (staffKind): updates by Trevor Baca.
8581
8582         * scm/define-grobs.scm (all-grob-descriptions): remove arrows as
8583         default layout. 
8584
8585         * lily/tuplet-bracket.cc (print): check whether edge-text is a
8586         pair.
8587
8588         * lily/beam.cc (rest_collision_callback): call position_beam() if
8589         necessary.
8590
8591         * VERSION: release 2.7.4
8592
8593         * input/regression/spacing-uniform-stretching.ly: new file.
8594
8595         * lily/spacing-loose-columns.cc (set_loose_columns): use robust_relative_extent().
8596
8597         * Documentation/topdocs/NEWS.tely (Top): add Nicolas as
8598         contributor.
8599
8600         * lily/include/ly-module.hh: define MODULE_GC_KLUDGE globally.
8601
8602         * input/proportional.ly: new file.
8603
8604         * lily/tuplet-bracket.cc (after_line_breaking): don't suicide if
8605         columns is empty
8606
8607         * lily/tuplet-engraver.cc (finalize): new function. Reset right
8608         bounds to currentCommandColumn for the last step.
8609         (start_translation_timestep): if tupletFullLength is set, set
8610         bound to Paper Column
8611
8612         * input/regression/tuplet-full-length.ly (indent): new file.
8613
8614         * lily/spacing-loose-columns.cc (set_loose_columns): space a whole
8615         clique of loose columns, eg. a set of grace notes in strict
8616         notespacing.
8617
8618         * input/regression/spacing-strict-spacing-grace.ly: new file.
8619
8620         * lily/key-signature-interface.cc: change property name to
8621         alteration-alist
8622
8623         * lily/key-engraver.cc (read_event): read keyAlterationOrder, not
8624         keyAccidentalOrder
8625
8626         * python/convertrules.py (conv): keyAccidentalOrder ->
8627         keyAlterationOrder
8628
8629         * lily/key-engraver.cc (create_key): always print a cancellation
8630         for going to C-major/A-minor, regardless of printKeyCancellation.
8631         (create_key): remove typecheck for visibility. This fixes key
8632         signature not being printed.
8633
8634         * lily/spacing-determine-loose-columns.cc: new file.
8635
8636         * input/regression/spacing-strict-notespacing.ly: new file.
8637
8638         * lily/spacing-spanner.cc (generate_springs): rename from
8639         do_measure. 
8640         (generate_pair_spacing): new function.
8641         (init, generate_pair_spacing): set between-cols for floating
8642         nonmusical columns.
8643
8644         * lily/spaceable-grob.cc (get_spring): new function. 
8645
8646         * lily/tuplet-bracket.cc (print): on the left, the overshoot is
8647         relative to the right edge of the prefatory matter.
8648
8649         * lily/beam.cc (print): read break-overshoot to determine where to
8650         stop/start broken beams.
8651
8652         * input/regression/spanner-break-overshoot.ly: new file.
8653
8654 2005-08-04  Graham Percival  <gperlist@shaw.ca>
8655
8656         * ly/bagpipe.ly: updated.
8657
8658         * Documentat/user/instrument.itely: un-comment out bagpipe example.
8659
8660 2005-08-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8661
8662         * lily/dynamic-engraver.cc (acknowledge_slur): add slur to
8663         support: now (de)crescs avoid slurs as well.
8664
8665         * Documentation/user/instrument-notation.itely (Bagpipe example):
8666         comment out non-functioning bagpipe example.
8667         (Bagpipe definitions): idem.
8668
8669         * Documentation/topdocs/NEWS.tely (Top): add uniform-stretching example.
8670         (Top): add proportionalNotationDuration example.
8671
8672         * input/regression/spacing-proportional.ly: new file.
8673
8674         * lily/tuplet-bracket.cc (parallel_beam): broken bracket never is
8675         synched to a beam.
8676
8677         * lily/beam.cc (shift_region_to_valid): divide by zero fix. This
8678         fixes beams with a single stem (eg. beams across linebreaks.)
8679
8680         * lily/parser.yy (simple_string): allow \new STRING_IDENTIFIER.
8681
8682         * flower/rational.cc (operator +): prevent overflow. This fixes
8683         heavily nested tuplets.
8684
8685         * lily/auto-beam-engraver.cc (derived_mark): new method. Yes. We
8686         have to protect even those unlikely to be corrupted data members.  
8687
8688 2005-08-04  Graham Percival  <gperlist@shaw.ca>
8689
8690         * ly/bagpipe.ly: new file.
8691
8692         * THANKS: added Sven Axelsson.
8693
8694 2005-08-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8695
8696         * lily/spacing-engraver.cc (stop_translation_timestep): directly
8697         copy proportionalNotationDuration into currentMusicalColumn if
8698         set.
8699
8700         * lily/spacing-spanner.cc (musical_column_spacing): if
8701         uniform-stretching set, fixed space is 0.0
8702
8703         * input/regression/spacing-multi-tuplet.ly: show
8704         uniform-stretching property.
8705
8706         * lily/spacing-spanner.cc (effective_shortest_duration): new function.
8707
8708         * lily/include/spacing-spanner.hh (class Spacing_spanner): new file.
8709         (struct Spacing_options): new struct.
8710
8711         * lily/spacing-basic.cc: new file.
8712
8713         * lily/spacing-spanner.cc (note_spacing): remove outdated code:
8714         delta_t doesn't have to be smaller than shortest_playing_len
8715
8716 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8717
8718         * input/regression/markup-arrows.ly:  new file.
8719
8720         * lily/tuplet-bracket.cc: document new behavior.
8721
8722         * input/regression/tuplet-broken.ly: new file. Demonstrate tuplets
8723         with line breaks.
8724
8725         * scm/define-markup-commands.scm (arrow-head): arrow-head markup command.
8726
8727         * scm/define-grobs.scm (all-grob-descriptions): set arrows as
8728         default 
8729
8730         * lily/tuplet-bracket.cc: add edge-text property.
8731         add break-overshoot.
8732         (print): read break-overshoot.
8733         (print): read edge-text, add stencils.
8734
8735         * mf/feta-arrow.mf: new file.
8736
8737         * mf/feta-generic.mf: add feta-arrow.
8738
8739 2005-08-03  Mats Bengtsson  <mabe@s3.kth.se>
8740
8741         * Documentation/user/lilypond-book.itely (An example of a
8742         musicological document): Added flag -o to dvips for people who use
8743         the default setting in teTeX where output is sent to the printer. 
8744
8745         * Documentation/user/global.itely (Vertical spacing): Added
8746         reference to the Axis_group_engraver which documents the *Extent
8747         properties.
8748
8749 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8750
8751         * Documentation/user/basic-notation.itely (Tuplets): add note
8752         about nested tuplets. Remove BUG. 
8753
8754         * input/regression/tuplet-nest.ly: update: remove manual hack. 
8755
8756         * lily/tuplet-bracket.cc (print): use robust_scm2drul
8757         (print): manually call print() for subtuplets.
8758         (calc_position_and_height): add subtuplets to the
8759         support. Vertically shift outer tuplet 
8760
8761         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): set
8762         remove-first for Lyrics, ChordNames and FiguredBass
8763
8764         * scm/define-grob-properties.scm (all-internal-grob-properties):
8765         use ly:grob-array? iso. grob-list?
8766         (all-internal-grob-properties): add tuplets grob-array.
8767
8768         * lily/tuplet-bracket.cc (add_tuplet_bracket):
8769         new function
8770
8771 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8772
8773         * input/test/time-signature-staff.ly: new file.
8774
8775         * ly/declarations-init.ly (center): escape to Scheme. Fixes
8776         spurious #<Music FingerEvent> errors. Backportme.
8777
8778 2005-08-03  Mats Bengtsson  <mabe@s3.kth.se>
8779
8780         * Documentation/user/programming-interface.itely (Markup
8781         construction in Scheme): Corrected markup syntax in the
8782         translation table.
8783
8784 2005-08-03  Graham Percival  <gperlist@shaw.ca>
8785
8786         * Documentation/user/instrument-notation.itely: small update
8787         to bagpipe notation docs; thanks Sven!
8788
8789         * Documentation/user/basic-notation.itely: add link about trills.
8790
8791 2005-08-02  Graham Percival  <gperlist@shaw.ca>
8792
8793         * Documentation/user/music-glossary: remove accidentally committed
8794         fink patch.
8795
8796 2005-08-02  Yoshinobu Ishizaki  <isizaki@mte.biglobe.ne.jp>
8797
8798         * lily/lily-parser.cc (get_header): new function. Enable multiple
8799         \header definitions.
8800
8801         * lily/parser.yy (lilypond_header_body): use get_header.
8802
8803         * ly/init.ly:
8804         * scm/lily-library.scm (print-score-with-defaults): renamed
8805         $globalheader to $defaultheader
8806             
8807         * Documentation/user/global.itely (Creating titles): added short
8808         explanation that multiple headers are useable.
8809
8810
8811 2005-08-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8812
8813         * lily/module-scheme.cc (LY_DEFINE): new file. 
8814
8815         * Documentation/user/advanced-notation.itely (Font selection): add
8816         doco for make-pango-font-tree.
8817
8818 2005-07-31  Graham Percival  <gperlist@shaw.ca>
8819
8820         * Documentation/user/music-glossary: more languages
8821         for tenuto.
8822
8823         * Docuemntation/user/instrument-notation.itely: minor
8824         update for bagpipe example.
8825
8826 2005-07-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8827
8828         * input/regression/+.ly (TODO): add some text.
8829
8830 2005-07-28  Graham Percival  <gperlist@shaw.ca>
8831
8832         * Documentation/user/invoking.itely: \score begins with music.
8833
8834         * Documentation/user/ basic-notation.itely,
8835         instrument-notation.itely: minor changes.
8836
8837         * Documentation/user/music-glossary.itely: began tenuto entry.
8838
8839 2005-07-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8840
8841         * scm/output-socket.scm (bezier-sandwich): add bezier-sandwich
8842
8843         * mf/feta-bolletjes.mf: swap up and down for aiken heads.
8844
8845 2005-07-27  Graham Percival  <gperlist@shaw.ca>
8846
8847         * Documentation/user/examples.itely: remove bagpipe template.
8848
8849         * Documentation/user/instrument-notation.itely: add bagpipe
8850         section, maybe fix quotes in lyrics.  I hate text encoding.
8851         Clarify chord durations, more bagpipe stuff.
8852
8853 2005-07-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8854  
8855         * lily/accidental-engraver.cc: formatting fixes.
8856
8857         * lily/spacing-spanner.cc (prune_loose_columns): right-items is a
8858         grob-array.
8859
8860         * lily/arpeggio.cc (print): suicide arpeggio for single notehead.
8861
8862         * lily/note-column.cc (arpeggio): new function.
8863
8864         * lily/note-spacing.cc (get_spacing): also take arpeggio into
8865         account for spacing.
8866
8867 2005-07-25  Jan Nieuwenhuizen  <janneke@gnu.org>
8868
8869         * lily/main.cc (sane_setenv)[!ARGV0_RELOCATION]: Also define.
8870         (setup_guile_env): Use it instead of nonstandard setenv.  Fixes
8871         mingw build.
8872         
8873 2005-07-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8874
8875         * scm/lily.scm (lilypond-all): clear anonymous modules after
8876         processing files.
8877
8878 2005-07-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8879
8880         * flower/include/guile-compatibility.hh (SCM_I_CONSP): add
8881         SCM_I_CONSP
8882
8883         * VERSION: 2.7.3 released
8884
8885         * Documentation/user/invoking.itely (Invoking lilypond): add
8886         LILYPOND_GC_YIELD documentation.
8887
8888         * lily/*: cleanups: use scm_from_int iso. scm_int2num. Idem for
8889         scm_from_real / scm_make_real.
8890
8891         * lily/main.cc (setup_guile_env): new function. Set GC min_yields
8892         higher. This increases memory footprint, but provides overall
8893         speedup of 15 to 20%. 
8894
8895         * lily/include/translator.hh (class Translator): remove
8896         PRECOMPUTED_VIRTUAL everywhere.
8897
8898         * lily/include/lily-guile.hh: inline scm_c[ad]r, scm_is_pair.
8899
8900         * lily/context.cc (now_mom): non-recursive now_mom() 
8901
8902         * lily/include/profile.hh: new file.
8903
8904         * lily/profile.cc: new file.
8905
8906         * lily/grob.cc (Grob::Grob): look properties up directly.
8907
8908         * lily/open-type-font.cc (get_indexed_char): cache index -> bbox
8909         lookups.
8910
8911         * lily/include/box.hh (class Box): smob Box type.
8912
8913         * lily/smobs.cc (protect_smob): O(1) GC (un)protection.
8914
8915         * lily/include/smobs.hh (DECLARE_BASE_SMOBS): add methods
8916         protect() and unprotect(). Use throughout.
8917
8918 2005-07-24  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8919
8920         * Documentation/topdocs/NEWS.tely: new item for \displayLilyMusic
8921
8922         * scm/define-music-display-methods.scm (markup->lily-string):
8923         markup elements can also be strings (without simple-markup
8924         appended)
8925
8926 2005-07-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8927
8928         * lily/context.cc (where_defined): also assign value in
8929         where_defined().
8930
8931         * lily/bezier.cc (get_other_coordinate): use curve_coordinate
8932         (curve_coordinate): new function
8933
8934         * lily/simple-spacer.cc (add_columns): only add rods between
8935         column i and begin/end if keep-inside-line is set (this repleces
8936         allow-outside-line as default)
8937
8938 2005-07-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8939
8940         * lily/tuplet-engraver.cc (start_translation_timestep): only read
8941         tupletSpannerDuration if applicable.
8942
8943         * lily/font-size-engraver.cc (process_music): read fontSize only
8944         once per timestep.
8945
8946         * lily/engraver*cc: use throughout.
8947         
8948         * lily/include/translator.icc (ADD_ACKNOWLEDGER): new macro.
8949
8950         * lily/translator.cc (add_acknowledger): new file. Directly jump
8951         into an Engraver::acknowledge_xxx () method based on a grobs
8952         interface-list.
8953
8954         * lily/include/translator-dispatch-list.hh (class
8955         Engraver_dispatch_list): new struct, new file.
8956
8957         * scm/define-context-properties.scm
8958         (all-internal-translation-properties): remove acceptHashTable,
8959         acknowledgeHashTable
8960
8961         * lily/translator-group.cc (mark_smob): idem for acceptHashTable.
8962
8963         * lily/engraver-group-engraver.cc (Engraver_group_engraver):
8964         change acknowledgeHashTable to C++ member. 
8965
8966         * lily/rest-collision.cc (do_shift): use extract_grob_set().
8967
8968 2005-07-22  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8969
8970         * scm/display-lily.scm: new file. Define a `display-lily-music'
8971         function, that displays the music expression given as an argument,
8972         using LilyPond notation.
8973
8974         * scm/define-music-display-methods.scm: new file. Implementation
8975         of display methods for each music type.
8976
8977         * ly/music-functions-init.ly (displayLilyMusic): new function for
8978         displaying music with LilyPond notation.
8979
8980         * input/regression/display-lily-tests.ly: new regression test file
8981         for `display-lily-music'.
8982
8983         * scm/markup.scm: remove obsolete debugging code (for printing
8984         markups with LilyPond notation).
8985
8986         * scm/define-music-types.scm (music-name-to-property-table):
8987         * scm/clef.scm (supported-clefs): export, in order to be accessible
8988         from the (scm display-lily) module.
8989
8990 2005-07-22  Jan Nieuwenhuizen  <janneke@gnu.org>
8991
8992         * Documentation/topdocs/NEWS.tely (Top): Typo.
8993
8994 2005-07-22  Heikki Junes  <hjunes@cc.hut.fi>
8995
8996         * Documentation/index.html.in, Documentation/texinfo.css,
8997           stepmake/bin/text2html.py, buildscripts/mutopia-index.py,
8998           Documentation/bibliography/index.html.in,
8999           Documentation/bibliography/html-long.bst: revert css-width patch,
9000           it does not work with IE6.
9001
9002 2005-07-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9003
9004         * Documentation/texinfo.css: revert 760px hack. 
9005
9006         * VERSION: release 2.7.2
9007
9008         * Documentation/topdocs/NEWS.tely (Top): mention barNumberCheck
9009
9010         * Documentation/user/basic-notation.itely (Barnumber check): add
9011         section.
9012
9013         * scm/music-functions.scm (skip-to-last): new function. Show only
9014         last showLastLength part of the \score.
9015
9016         * lily/moment-scheme.cc (LY_DEFINE): new function ly:moment-sub
9017
9018         * python/convertrules.py (conv): add ly:x-moment rule
9019
9020         * lily/moment-scheme.cc (LY_DEFINE): rename ly:X-moment  -> ly:moment-X
9021
9022         * Documentation/topdocs/NEWS.tely (Top): add new feature.
9023
9024         * Documentation/user/instrument-notation.itely (Flexibility in
9025         alignment): options in subsections.
9026
9027         * lily/lyric-engraver.cc (process_music): don't typeset text for _
9028         syllable text. Instead, assume that the previous lyric text is a
9029         melismated text.
9030
9031         * Documentation/index.html.in: revert 800x600 change.
9032
9033 2005-07-19  Jan Nieuwenhuizen  <janneke@gnu.org>
9034
9035         * lily/main.cc (main): Remove invalid handle kludge.
9036
9037         * scm/lily.scm (running-from-gui?): WINDOWS: check -dgui.
9038         (lambda): add gui define.
9039
9040 2005-07-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9041
9042         * Documentation/topdocs/NEWS.tely (Top): add note about Musica ficta.
9043
9044         * Documentation/user/instrument-notation.itely (Musica ficta
9045         accidentals): add section Musica ficta accidentals
9046
9047         * lily/accidental-engraver.cc (make_suggested_accidental): new
9048         function.
9049         (make_standard_accidental): move into new function.
9050         (create_accidental): new function.
9051
9052         * scm/define-grobs.scm (all-grob-descriptions): new Grob
9053         AccidentalSuggestion
9054
9055         * lily/output-def-scheme.cc (LY_DEFINE): take default  argument.
9056
9057         * lily/output-def.cc (lookup_variable): return SCM_UNDEFINED if
9058         undefined.
9059
9060         * Documentation/user/global.itely (Page formatting): document
9061         horizontalshift.
9062
9063         * scm/page-layout.scm (default-page-music-height):
9064         horizontalshift: new variable, shift all systems by
9065         horizontalshift to the right, to make space for instrument names.
9066
9067         * scm/paper.scm (set-paper-dimension-variables): add horizontalshift
9068
9069         * lily/input-scheme.cc (LY_DEFINE): take format commands.
9070
9071 2005-07-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9072
9073         * lily/note-column.cc (dir): idem.
9074
9075         * lily/spacing-spanner.cc (Module): idem.
9076
9077         * lily/script-column.cc (before_line_breaking): use extract_grob_set()
9078
9079         * lily/include/paper-column.hh (class Paper_column): add
9080         non-static get_rank() member.
9081
9082         * VERSION: release 2.7.1
9083         
9084         * scm/framework-null.scm: new file, used for benchmarking.
9085
9086 2005-07-20  Heikki Junes  <hjunes@cc.hut.fi>
9087
9088         * Documentation/topdocs/INSTALL.texi, configure.in: fix
9089         version dependencies for fontforge and gs.
9090
9091         * Documentation/index.html.in, Documentation/texinfo.css,
9092         stepmake/bin/text2html.py, buildscripts/mutopia-index.py,
9093         Documentation/bibliography/index.html.in, 
9094         Documentation/bibliography/html-long.bst: optimize width of
9095         html for a 800x600 screen (width:760), increases printability
9096         when 'fit to page' is not set and readability in wide screens.
9097
9098         * stepmake/bin/add-html-footer.py: add missing </p>.
9099
9100 2005-07-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9101
9102         * scm/define-markup-commands.scm (beam): use polygon in beam
9103         command.
9104
9105         * lily/grob-pq-engraver.cc (stop_translation_timestep): save up
9106         all acknowledged grobs, and do potentially expensive merge and
9107         write in one go.
9108
9109         * buildscripts/mf-to-table.py (write_fontlist): enforce noBreak.
9110
9111         * configure.in (reloc_b): add --enable-static-gxx to statically
9112         link to libstdc++
9113
9114         * lily/GNUmakefile (static-gxx-libs): new target
9115         static-gxx-libs. Create symlink to libstdc++.a
9116
9117         * lily/new-lyric-combine-music-iterator.cc: rename to
9118         Lyric_combine_music_iterator
9119
9120         * lily/lyric-combine-music-iterator.cc
9121         (Old_lyric_combine_music_iterator): rename to
9122         Old_lyric_combine_music_iterator
9123
9124         * lily/*-engraver.cc (various): remove double use of
9125         PRECOMPUTED_VIRTUAL function: only use
9126         start_translation_timestep() and stop_translation_timestep(), not
9127         both.
9128
9129         * lily/break-substitution.cc (fast_substitute_grob_array): do
9130         fast_substitute_grob_array for all unordered grob_arrays.
9131         (substitute_grob): return Grob *. Saves packing/unpacking SCMs.
9132         (substitute_grob_array): optimize.
9133
9134         * lily/align-interface.cc (set_axis): set ordered_ for 'elements
9135
9136         * lily/include/grob-array.hh (class Grob_array): ordered_ member.
9137
9138         * lily/parser.yy: revert $globalheader patch.
9139         
9140         * lily/include/translator.icc
9141         (IMPLEMENT_FETCH_PRECOMPUTABLE_METHODS): directly jump into
9142         Translator methods, without _static helper.
9143  
9144         * lily/grob-smob.cc (derived_mark): rename from
9145         do_derived_mark(). Return void.
9146
9147         * scm/define-context-properties.scm
9148         (all-internal-translation-properties): remove tweakCount/tweakRank.
9149
9150         * scm/output-lib.scm (begin-of-line-invisible): use vectors for
9151         predefined break-visibilities.
9152
9153         * lily/item.cc (handle_prebroken_dependencies): use a vector of 3
9154         booleans for break-visibility.
9155
9156         * Documentation/topdocs/NEWS.tely (Top): add note about engravers.
9157
9158         * python/convertrules.py (conv): rule for Timing_translator. 
9159
9160         * lily/include/translator.icc: new file. 
9161
9162         * lily/paper-column-engraver.cc (process_music): new
9163         file. Separate Paper_column factory from Score_engraver.
9164
9165         * lily/vertically-spaced-context-engraver.cc: administer
9166         spaceable-staves property of System.
9167
9168         * lily/translator-group-ctors.cc: new file.
9169
9170         * lily/context-property.cc (make_grob_from_properties): construct
9171         the right Grob class programmatically, looking at the class entry
9172         for the meta property.
9173
9174         * lily/break-align-engraver.cc (stop_translation_timestep): call
9175         Break_align_interface::add_element() directly.
9176
9177         * lily/context.cc (measure_position): measure_position() is now a
9178         normal function.
9179
9180         * lily/include/translator.hh (class Translator): rename
9181         process_acknowledged_grobs() to process_acknowledged() and move to
9182         Translator.
9183
9184         * scm/define-grobs.scm (all-grob-descriptions): add a 'class meta
9185         field for each grob description.
9186
9187         * lily/include/translator-group.hh (class Translator_group):
9188         change to base class. Separate class from Translator. This gets
9189         rid of virtual inheritance for Engravers/Performers.
9190
9191         * lily/staff-performer.cc (class Staff_performer): derive
9192         Staff_performer from Performer, not Performer_group_performer 
9193
9194         * Lily/translator-group.cc (precomputed_recurse_over_translators):
9195         new function.
9196         (precompute_method_bindings): new function. Precompute lists of
9197         Translators, so we only call methods (process_music,
9198         start_translation_timestep, etc.) for Translators needing
9199         it. Also: dispose of pointer-to-member-function calls.
9200
9201         * lily/engraver-group-engraver.cc: remove engraver_each,
9202         recurse_down_engravers ()
9203
9204         * lily/note-head.cc (internal_print): only call
9205         glyph-name-procedure if style != default. 
9206
9207 2005-07-16  Graham Percival  <gperlist@shaw.ca>
9208
9209         * ly/titling-init.ly: add printallheaders option.
9210
9211         * Documentation/user/global.itely: document printallheaders.
9212
9213 2005-07-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9214
9215         * lily/system.cc (do_derived_mark): don't mark from object_alist_
9216         anymore, but do it centrally.  
9217
9218         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
9219         hammer hack.
9220
9221         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-object
9222
9223         * scm/output-lib.scm: remove hammer-print-function.
9224
9225         * lily/include/pointer-group-interface.hh (extract_grob_set): new
9226         macro. Declare a Link_array<Grob> and fill it from a grob.
9227         (extract_item_set): idem for item.
9228
9229         * lily/break-substitution.cc: add header.
9230         (fast_substitute_grob_array): rewrite for Grob_arrays.
9231         (substitute_grob_array): idem.
9232
9233         * lily/group-interface.cc (add_thing): remove file.
9234
9235         * flower/include/parray.hh (class Link_array): slice() is const.
9236
9237         * lily/include/grob-array.hh: new file.
9238
9239         * lily/grob-array.cc (spanner): new file.
9240
9241         * lily/beam-quanting.cc (fill): read details property from beam.
9242
9243         * lily/beam.cc: support details property.
9244
9245         * total speedups below: approx 10%.
9246
9247         * lily/include/beam.hh: new struct, softcode beam quanting parameters
9248
9249         * lily/include/grob.hh (class Grob): add interfaces_ member.
9250
9251         * lily/bezier.cc (init_polynomial_cache): new function: cache
9252         binom(3,j) t^j (1-t)^{3-j}
9253         (curve_point): opps, actually use the cache for t^j , (1-t)^j! 
9254
9255         * lily/*.cc: substitution throughout.
9256
9257         * lily/grob-property.cc (internal_get_object): new routine.
9258         (internal_set_object): idem. Store grob refrences in separate
9259         alist. This saves processing time, since properties aren't
9260         break-substituted, and the per grob namespace is smaller, both for
9261         grobs and non-grob properties.
9262
9263         * scm/define-grob-properties.scm (all-internal-grob-properties):
9264         remove center-element.
9265
9266         * lily/grob.cc: remove tweak-count, tweak-rank.
9267
9268 2005-07-15  Graham Percival  <gperlist@shaw.ca>
9269
9270         * Documentation/user/lilypond-book.itely: fixes example.
9271
9272 2005-07-15  Nicolas Sceaux  <nicolas.sceaux@free.fr>
9273
9274         * Documentation/user/global.itely (Creating titles):    
9275         * Documentation/user/examples.itely (All headers): change the
9276         place of \header in \score blocks (after music block) to make
9277         examples compile (cf. changes on parser.yy on 2005-07-10)
9278
9279 2005-07-13  Graham Percival  <gperlist@shaw.ca>
9280
9281         * python/convertrules.py: add exc -> ecc rule.
9282
9283         * scripts/convert-ly.py: add location of convertrules.py
9284         in a comment.
9285
9286         * Documentation/user/changing-defaults.itely: fix language.
9287
9288 2005-07-12  Jan Nieuwenhuizen  <janneke@gnu.org>
9289
9290         * lily/lily-parser-scheme.cc (LY_DEFINE): Guile 1.6 fix.
9291
9292 2005-07-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9293
9294         * scm/output-socket.scm (grob-bbox): don't use inf? 
9295
9296         * flower/include/rational.hh: add operator bool() 
9297
9298         * scm/define-music-types.scm (music-descriptions): remove
9299         internal-class-name properties.
9300
9301         * lily/include/event.hh: remove file.
9302
9303         * lily/include/music-constructor.hh: remove file.
9304
9305         * lily/parser.yy (Lily_lexer): check EVENT_IDENTIFIER using 'event
9306         in 'types property.
9307
9308         * lily/music.cc (duration_length_callback): new function.
9309
9310         * lily/event.cc: remove file.
9311
9312         * lily/music-constructor.cc: remove file.
9313
9314         * lily/music-scheme.cc (LY_DEFINE): rename to ly:make-music
9315
9316         * lily/context.cc (get_grob_key): nop if use_object_keys not set.
9317         (get_context_key): idem.
9318
9319         * scm/lily.scm (lambda): new option object-keys (default to #f)
9320
9321         * scm/output-svg.scm (utf-8-string): rename  from utf8-string.
9322
9323         * scm/output-gnome.scm: remove beam routine.
9324
9325         * scm/output-ps.scm (scm): idem.
9326
9327         * scm/output-svg.scm: remove beam.
9328
9329         * ps/music-drawing-routines.ps: remove draw_beam.
9330
9331         * lily/lookup.cc (beam): use round_filled_polygon() for beam.
9332
9333         * flower/include/guile-compatibility.hh (scm_from_locale_string):
9334         add scm_from_locale_string compatibility glue. 
9335
9336 2005-07-13  Yoshinobu Ishizaki  <isizaki@mte.biglobe.ne.jp>
9337
9338         * scripts/lilypond-book.py: Prevent occuring error when
9339         'lilypond-book --output=foo/ somefile.ly' is executed multiple
9340         times and target file shoud be overwritten.  (Error message said
9341         'input file and output file is same'.)
9342
9343 2005-07-13  Graham Percival  <gperlist@shaw.ca>
9344
9345         * input/regression/slur-extreme.ly,
9346         input/regression/slur-scoring.ly, lily/slur-configuration.cc,
9347         lily/slur.cc, mf/feta-din-code.mf, mf/feta-timesig.mf,
9348         mf/parmesan-heads.mf, scm/define-grob-properties.scm: Change
9349         "excentricity" to "eccentricity".
9350
9351         * Documentation/user/converters.itely: fix URL for Noteedit and
9352         Rosegarden.
9353
9354         * THANKS: added Yoshinobu Ishizaki.
9355
9356 2005-07-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9357
9358         * scm/define-markup-commands.scm (justify-field): add. 
9359
9360         * scm/define-grobs.scm (all-grob-descriptions): decrease font size.
9361
9362 2005-07-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9363
9364         * lily/lookup.cc (filled_box): express filled_box with
9365         round_filled_box
9366
9367         * scm/midi.scm (paper-book-write-midis): new function. Write all
9368         performances in numbered MIDI files.
9369
9370         * lily/performance-scheme.cc (LY_DEFINE): new file.
9371         (LY_DEFINE): new function ly:performance-write.
9372
9373         * lily/lily-parser-scheme.cc (LY_DEFINE): ly:parser-output-name:
9374         new function.
9375         (LY_DEFINE): change name ly:parser-define -> ly:parser-define!
9376
9377         * scm/framework-*.scm: use port arguments throughout.
9378
9379         * lily/include/lily-guile.hh: rename ly_c_X_p -> ly_is_X
9380
9381         * lily/paper-outputter.cc (Paper_outputter): take port argument.
9382
9383         * lily/paper-outputter-scheme.cc (LY_DEFINE): take port argument.
9384
9385         * scm/framework-texstr.scm (output-framework): 
9386
9387         * input/regression/repeat-fold.ly (texidoc): remove TeX strings.
9388
9389         * scm/output-lib.scm (tablature-stem-attachment-function):
9390         tablature stem attachment fix. 
9391
9392 2005-07-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9393
9394         * lily/bezier.cc: hardcode binomial coefficients of order 3.
9395
9396         * lily/include/music-wrapper.hh: remove Music_wrapper as Music subtype.
9397
9398         * scm/define-music-types.scm (music-descriptions): don't use
9399         Music_wrapper type.
9400
9401         * lily/paper-column.cc (print): print moment too.
9402
9403         * scripts/mup2ly.py (cp_to_dir): remove 1.5.2 compat glue.  
9404         remove compatibility cruft.
9405
9406         * lily/parser.yy (score_body): \score can only begin with Music. 
9407
9408         * lily/score-scheme.cc (LY_DEFINE): rename scorify to
9409         make-score. Take music argument only. Move parser interaction to
9410         Scheme.
9411
9412         * scm/lily-library.scm (scorify-music): new function.
9413
9414         * python/lilylib.py (datadir): remove 2.1 compat kludge.
9415         (datadir): remove resource import.
9416         (print_environment): remove get_bbox()
9417         (cp_to_dir): remove pre 1.5.2 compat glue.
9418
9419 2005-07-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9420
9421         * lily/include/simple-spacer.hh (Module): idem.
9422
9423         * lily/include/spring.hh (struct Spring): store inverse
9424         strength. This prevents division by zero.
9425
9426         * VERSION: release 2.7.0
9427         
9428         * lily/include/music.hh (class Music): remove Music::duration_log()
9429
9430         * lily/stem-engraver.cc (make_stem): take duration log from event.
9431
9432         * lily/chord-tremolo-engraver.cc: don't ack note-head-interface.
9433
9434 2005-07-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9435
9436         * scm/lily.scm (ly:load): load autochange.scm
9437
9438         * Documentation/user/tutorial.itely (Running LilyPond for the
9439         first time): remove reference to DVI/TeX
9440
9441         * scm/define-markup-commands.scm (text): add \text markup command.
9442
9443         * configure.in (reloc_b): bump requirement to Python 2.2.
9444
9445         * lily/include/dots.hh (class Dots): make has_interface() static.
9446
9447         * python/convertrules.py (conv): add rule for ly:grob-default-font
9448
9449         * scm/define-grobs.scm (all-grob-descriptions): reorganize in
9450         alphabetical order.
9451
9452         * input/regression/trill-spanner-pitched.ly: new file.
9453
9454         * lily/font-interface-scheme.cc (LY_DEFINE): function
9455         ly:grob-default-font (changed from get-default-font).
9456
9457         * lily/axis-group-interface-scheme.cc (LY_DEFINE): new file.
9458
9459         * lily/note-head.cc (internal_print): if style is not a symbol,
9460         set style to 'default. 
9461         (internal_print): no style suffix if glyph-name-procedure not
9462         set. Default to quarter head.
9463
9464         * scm/define-grobs.scm (Module): new grob TrillPitchHead.
9465
9466         * scm/define-music-properties.scm (all-music-properties): add trill-pitch.
9467
9468         * ly/music-functions-init.ly: \pitchedTrill
9469
9470         * lily/pitched-trill-engraver.cc (acknowledge_grob): new file.
9471
9472         * ly/Welcome_to_LilyPond.ly: update to 2.6.0
9473
9474         * lily/trill-spanner-engraver.cc (finalize): rename req -> event
9475
9476         * scm/define-markup-commands.scm (pad-markup): pad-markup command.
9477
9478         * po/fr.po: update
9479
9480         * po/de.po: update.
9481
9482 2005-07-06  Graham Percival  <gperlist@shaw.ca>
9483
9484         * Documentation/user/changing-defaults.itely: add link
9485         to grob-iterface.
9486
9487         * Documentation/user/advanced-notation.itely: add material
9488         to Setting automatic beam behaviour.  Thanks, Joe!
9489
9490         * Documentation/user/lilypond.itely: change encoding to utf-8.
9491
9492 2005-07-01  Mats Bengtsson  <mabe@s3.kth.se>
9493
9494         * Documentation/user/advanced-notation.itely (Setting automatic
9495         beam behavior): Correct the documentation of
9496         revert-auto-beam-setting (backportme)
9497
9498 2005-07-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9499
9500         * lily/ly-module.cc (ly_make_anonymous_module): define
9501         %module-public-interface of module. 
9502
9503         * lily/lily-parser.cc (print_smob): allow printing of parser smob
9504         without lexer.
9505
9506 2005-07-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9507
9508         * input/regression/fret-diagrams.ly: stretch example.
9509
9510 2005-06-30  Jan Nieuwenhuizen  <janneke@gnu.org>
9511
9512         * cygwin/GNUmakefile ($(outdir)/%.sh): Bugfix: use TAB (Bertalan
9513         Fodor).
9514
9515 2005-06-30  Graham Percival  <gperlist@shaw.ca>
9516
9517         * Documentation/topdocs/AUTHORS.texi: update personal web address.
9518
9519         * Documentation/user/examples.itely, lilypond-book.itely:
9520         change \RequirePackage to \usepackage.
9521
9522         * Documentation/user/global.itely: document copyright and tagline.
9523
9524 2005-06-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9525
9526         * Documentation/user/basic-notation.itely (Transpose): remove link
9527         to nonexistent UntransposableMusic.
9528
9529         * scm/output-svg.scm: remove old definitions.
9530
9531         * scripts/lilypond-book.py (do_file): search for kpsewhich before
9532         invoking.
9533
9534         * python/lilylib.py (search_exe_path): new function.
9535
9536 2005-06-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9537
9538         * python/lilylib.py (mkdir_p): remove setup_environment()
9539         (backportme)
9540
9541         * buildscripts/mutopia-index.py (headertext): trim text.
9542
9543         * Documentation/topdocs/NEWS.tely (Top): refresh.
9544
9545         * scm/define-markup-commands.scm (wordwrap-string): new function:
9546         split string in paras and words.
9547         (wordwrap-markups): new function.
9548         (wordwrap-stencils): new function. 
9549         (justify): use it.
9550         (wordwrap): use it.
9551         (wordwrap-string): use it
9552         (justify-string): use it.
9553
9554         * scm/lily-library.scm (regexp-split): new function.
9555
9556         * scm/define-markup-commands.scm: remove encoded-simple. 
9557         remove font-markup.
9558         (fontsize): remove old version  of fontsize.
9559         (wordwrap): new markup function. Wrap into paragraphs.
9560
9561         * VERSION: Branch lilypond_2_6
9562         (MINOR_VERSION): go to 2.7.0
9563
9564 2005-06-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9565
9566         * po/zh_TW.po: update from translation project.
9567
9568 2005-06-28  Graham Percival  <gperlist@shaw.ca>
9569
9570         * scm/midi.scm: compile fix.
9571
9572 2005-06-28  Mats Bengtsson  <mabe@s3.kth.se>
9573
9574         * scripts/lilypond-book.py : Fix embarrassing bug in my previous
9575         patch. Now, the tempfile module is loaded too, not only used.
9576
9577 2005-06-28  Stephen Charles McCarthy  <stecmccarthy@hotpop.com>
9578
9579         * scm/midi.scm: changed midi volumes in absolute-volume-alist from
9580         0.05 - 1.00 to 0.25 - 1.00
9581
9582         * scm/midi.scm: moved the default-instrument-equalizer procedure
9583         to just under the insturment-equalizer-alist it takes as an
9584         argument.
9585
9586 2005-06-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9587
9588         * Documentation/user/advanced-notation.itely (Font selection):
9589         remove CMR note.
9590
9591         * scm/framework-ps.scm (write-preamble): ly:warning iso. ly:warn 
9592
9593 2005-06-28  Jan Nieuwenhuizen  <janneke@gnu.org>
9594
9595         * THANKS: Add UTF-8 marker.
9596
9597         * Documentation/user/point-and-click.itely (http): Update: use
9598         lilypond-invoke-editor.  Fix: instruct to use user.js.
9599
9600 2005-06-27  Graham Percival  <gperlist@shaw.ca>
9601
9602         * ly/titling-init.ly: implements printpagenumber, increases
9603         space between dedication and title (to avoid collisions with
9604         "g" and "q" in dedication), and nicer logic about copyright
9605         and instrument fields being printed on the first page.
9606         Thanks Vincent!
9607
9608         * Documentation/user/global.itely: document printpagenumber.
9609
9610 2005-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
9611
9612         * Documentation/topdocs/NEWS.tely: Update to 2.6.
9613
9614 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9615
9616         * THANKS: update to 2.6
9617
9618         * VERSION: 2.6.0 released.
9619
9620 2005-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
9621
9622         * cygwin/GNUmakefile (OUT_POSTREMOVES): Reinclude install script
9623         rule, errorneously removed probably because of misleading comment.
9624
9625 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9626
9627         * python/lilylib.py (datadir): py2exe comments.
9628
9629         * Documentation/topdocs/INSTALL.texi (Top): remove EC fonts requirement.
9630
9631         * configure.in (reloc_b): make fontconfig REQUIRED.
9632
9633 2005-06-27  Heikki Junes <hjunes@cc.hut.fi>
9634
9635         * po/fi.po: add latest translations.
9636
9637 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9638
9639         * ChangeLog: recode utf-8
9640
9641         * Documentation/pictures/lilypond.xpm (Module): edited photo as
9642         logo.
9643
9644         * Documentation/user/examples.itely (Module): 2.4.0 -> 2.6.0
9645
9646         * input/*.ly (Module): 2.4 -> 2.6 grand convert-ly s/r. 
9647
9648         * python/convertrules.py (do_conversion): don't print program_name
9649         from within a module
9650
9651         * configure.in (reloc_b): bump fontforge requirement to 20050624.
9652
9653         * python/convertrules.py (conv): add 2.6.0 dummy rule.
9654
9655 2005-06-23  Graham Percival  <gperlist@shaw.ca>
9656
9657         * Documentation/user/lilypond-book.itely,
9658         Documentation/user/examples.itely: add \RequirePackage{graphics}.
9659
9660         * ly/titling.ly: checks printfirstpagenumber, adds meter, and
9661         fixes baseline-skip.  Thanks Vincent!
9662
9663         * Documentation/user/advanced-notation.itely, global.itely:
9664         moved "Selecting font sizes" to global, since it deals with
9665         notation font size, not text fonts.
9666
9667 2005-06-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9668
9669         * buildscripts/gen-emmentaler-scripts.py (notice): add GPL notice
9670         to fonts.
9671
9672 2005-06-23  Mats Bengtsson  <mabe@s3.kth.se>
9673
9674         * scripts/lilypond-book.py (LATEX_DOCUMENT): More or less ugly
9675         workaround since /dev/stdin doesn't work on Cygwin. Using a
9676         temporary file in the current directory since latex doesn't
9677         understand the path name to the default TMP in Cygwin (at least on
9678         win XP).
9679         
9680         * Documentation/user/global.itely (Creating titles): Correct
9681         misprint in example. Thanks to Rob Vlasaty.
9682
9683 2005-06-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9684
9685         * VERSION (PATCH_LEVEL): release 2.5.32
9686
9687         * lily/lily-parser-scheme.cc (LY_DEFINE): don't set 'parser
9688         variable in lily module
9689
9690         * scm/framework-ps.scm (output-classic-framework): error message
9691         regarding the classic framework.
9692
9693         * Documentation/user/henle-flat-gray.png (Module): new file.
9694
9695         * Documentation/user/baer-flat-gray.png (Module): new file.
9696
9697         * scm/output-lib.scm (fret-number-tablature-format): vcenter and
9698         whiteout for markups.
9699
9700         * buildscripts/substitute-encoding.py (note_glyph): include _ in
9701         regex too. This fixes change clef appearance in PDF. 
9702
9703         * ttftool/include/*: remove.
9704
9705         * configure.in (reloc_b): remove TTFTOOL_ENDIAN
9706
9707         * config.make.in (WINDRES): remove TTFTOOL_ENDIAN.
9708
9709         * lily/GNUmakefile (MODULE_INCLUDES): remove ttftool
9710
9711         * ttftool/*: remove ttftool subdirectory.
9712
9713         * GNUmakefile.in (SUBDIRS): remove ttftool subdirectory.
9714
9715         * lily/ttf.cc (print_header): new file. Convert to type42, using
9716         FreeType to parse the TTF. 
9717
9718         * ttftool/parse.c (readPostTable): ugh. Kludge: nglyphs in maxp
9719         and post table may differ. Pass around post_nglyphs as well.
9720
9721 2005-06-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9722
9723         * ly/music-functions-init.ly (musicMap): new music function
9724         musicMap. 
9725         
9726 2005-06-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9727
9728         * make/mutopia-rules.make: anti-alias-factor = 2
9729
9730         * scm/ps-to-png.scm (make-ps-images): cleanup multipage vs. single
9731         page switch.
9732
9733         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): set
9734         anti-alias-factor for lilypond-book runs.
9735
9736         * scm/ps-to-png.scm (scale-down-image): new function.
9737         (my-system): new function.
9738         (make-ps-images): blow up GS resolution by anti-alias-factor,
9739         scale down image by anti-alias-factor.  This improves appearance
9740         of bitmaps
9741         (make-ps-images): remove showpage. Fixes spurious empty png at
9742         end.
9743
9744         * scm/framework-ps.scm (write-preamble): downcase filename before
9745         string-matching. Should fix .TTF files (as opposed to ttf files)  
9746
9747         * Documentation/user/tutorial.itely (Running LilyPond for the
9748         first time): separate subsections for windows, macos and unix.  
9749
9750         * Documentation/user/invoking.itely (Updating files with
9751         convert-ly): add MacOS X note.
9752
9753 2005-06-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9754
9755         * Documentation/user/introduction.itely (Engraving): don't include
9756         file optical-spacing, add directly.
9757
9758         * lily/paper-outputter.cc (file): open file in binary mode. This
9759         fixes OTF embedding on windows.
9760
9761 2005-06-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9762
9763         * scm/framework-ps.scm (write-preamble): remove debugging output.
9764
9765         * mf/aybabtu.pe.in (i): don't generate aybabtu.cff
9766
9767         * mf/GNUmakefile ($(outdir)/fonts.cache-1): create font cache for
9768         outdir.
9769         (install-fc-cache): install font cache in installation directories.
9770
9771 2005-06-17  Jan Nieuwenhuizen  <janneke@gnu.org>
9772
9773         * scm/editor.scm (editor-command-template-alist): Use char iso
9774         column, except for Emacs.
9775         (get-editor-command): Substitute char too (Bertalan Fodor).
9776
9777 2005-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
9778
9779         * scm/ps-to-png.scm (make-ps-images): Use ~S instead of single
9780         quoted ~s.  This should fix PNG output on Windows; single quotes
9781         are regular characters on Windows.
9782
9783 2005-06-16  Graham Percival  <gperlist@shaw.ca>
9784
9785         * Documentation/user/basic-notation.itely: include ChoirStaff
9786         in System start delimiters.
9787
9788         * Documentation/user/putting.itely: new doc section on
9789         fixing overlapping notation.
9790
9791 2005-06-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9792
9793         * Documentation/user/global.itely (Paper size): \paper is in
9794         \book, not \score.
9795
9796         * make/mutopia-rules.make: -ddelete-intermediate-files
9797
9798         * ly/engraver-init.ly: make Staff default child of ChoirStaff.
9799
9800 2005-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
9801
9802         * ChangeLog: Recode utf-8.
9803
9804         * python/GNUmakefile (INSTALLATION_OUT_DIR): Install .so module in
9805         datadir with .py modules.
9806
9807 2005-06-15  Heikki Junes  <hjunes@cc.hut.fi>
9808
9809         * Documentation/user/basic-notation.itely (Ties): add tieDashed.
9810
9811 2005-06-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9812
9813         * make/mutopia-rules.make: switch off ps, p&c for lilypond runs.
9814         
9815         * scm/framework-ps.scm (write-preamble): remove status check.
9816
9817         * Documentation/user/invoking.itely (Updating files with
9818         convert-ly): remove -o option.
9819
9820         * VERSION (PACKAGE_NAME): release 2.5.31
9821
9822         * scm/framework-ps.scm (write-preamble): use ly:system.
9823         (write-preamble): verbosity.
9824
9825         * scripts/convert-ly.py: cleanup. Use lilylib. Use convertrules.
9826
9827         * python/convertrules.py: new file. Store conversion rules
9828         separately.
9829
9830 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9831
9832         * scm/backend-library.scm (postprocess-output): remove debugging gobs.
9833
9834 2005-06-14  Mats Bengtsson  <mabe@s3.kth.se>
9835
9836         * Documentation/topdocs/NEWS.tely (Top): Corrected name of
9837         \musicDisplay 
9838
9839         * Documentation/user/instrument-notation.itely (More stanzas): Add
9840         reference to StanzaNumber.
9841
9842 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9843
9844         * THANKS: separate section for website translators.
9845
9846 2005-06-14  Graham Percival  <gperlist@shaw.ca>
9847
9848         * Documentation/topdocs/INSTALL.texi: update vim info;
9849         thanks Simon Bailey!
9850
9851         * Documentation/user/advanced-notation.itely: included
9852         color names.
9853
9854         * Documentation/user/advanced-notation.itely,
9855         Documentation/usr/notation-appendices.itely: moved
9856         color names into an appendix.
9857
9858 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9859         
9860         * lily/program-option.cc (LY_DEFINE): new function ly_add_option.
9861
9862         * scm/lily.scm (lambda): initialize program options from here.
9863
9864         * scm/framework-*.scm: add header info.
9865
9866         * lily/main.cc (parse_argv): only set output format to pdf if no
9867         other format specified.
9868
9869         * scm/backend-library.scm (postprocess-output): process
9870         'delete-intermediate-files after running convert-to-*. This fixes
9871         PNG generation when 'delete-intermediate-files is set.
9872         
9873 2005-06-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9874
9875         * buildscripts/mutopia-index.py (list_item): thinko. Fixes png
9876         links on website. 
9877
9878 2005-06-13  Graham Percival  <gperlist@shaw.ca>
9879
9880         * Documentation/topdocs/INSTALL.texi,
9881         Documentation/user/lilypond-book.itely: typos.
9882
9883 2005-06-12  Pal Benko  <benkop@freestart.hu>
9884
9885         * elisp/lilypond-mode.el (LilyPond-command-alist: 2PS): space
9886         added between program name and switch; -b changed to -f not
9887         to generate pdf
9888
9889 2005-06-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9890
9891         * elisp/lilypond-mode.el (LilyPond-command-alist): remove 2midi
9892         (LilyPond-command-alist): use -f ps (thanks to Pal Benko)
9893
9894         * input/sakura-sakura.ly: add \midi.
9895
9896         * buildscripts/mutopia-index.py (find): use /usr/bin/find
9897         iso. python find. 
9898
9899         * ttftool/test.c (main): cosmetics.
9900
9901         * ttftool/util.c (surely_lseek): use stdio FILE's for I/O 
9902
9903         * ttftool/test.c: new file. If compiled with -DTEST_TTFTOOL,
9904         create a ttf2ps binary.
9905
9906         * scm/ps-to-png.scm (make-ps-images): fix rename-page-1 functionality.
9907
9908         * scm/backend-library.scm (postscript->png): set rename-page-1 to
9909         true.
9910
9911 2005-06-11  Graham Percival <gperlist@shaw.ca>
9912
9913         * Documentation/user/lilypond-book.itely: add warning about
9914         the font warnings in dvips.
9915
9916 2005-06-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9917
9918         * THANKS: typo
9919
9920         * mf/GNUmakefile ($(outdir)/$(redhat-package)): Fedora-4 url.
9921
9922         * GNUmakefile.in: remove links for .map, .enc
9923         don't fail if out/ doesn't exist yet.
9924
9925 2005-06-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9926
9927         * ttftool/util.c (surely_read): return nbytes
9928
9929         * stepmake/bin/text2html.py (txt2html): add utf-8 marker. 
9930
9931         * VERSION (PACKAGE_NAME): release 2.5.30
9932
9933         * flower/string-convert.cc (precision_string): >? fix.
9934
9935         * scm/ps-to-png.scm (make-ps-images): search-gs for multipage too.
9936         (make-ps-images): add verbose -q too.
9937
9938         * lily/default-actions.cc (Module): new file. default
9939         {book,score}-print functions.
9940
9941         * scm/ly-from-scheme.scm (ly:parse-string-result): use new setup:
9942         pass results via parseStringResult, lookup via ly:parser-lookup.  
9943
9944         * lily/lily-parser.cc (Lily_parser): only clone lexer in
9945         constructors.
9946         (parse_file): encapsulate do_yyparse() in scm_set_current_module()
9947         (parse_string): idem.
9948
9949         * ly/spanners-init.ly (assertBeamQuant): don't use #{ #} in init.
9950
9951         * lily/main.cc (main_with_guile): copy be_verbose_global into
9952         ly_set_option()
9953
9954 2005-06-10  Jan Nieuwenhuizen  <janneke@gnu.org>
9955
9956         * scm/backend-library.scm (postscript->pdf):
9957         * scm/ps-to-png.scm (make-ps-images): Do not use gs -q switch in
9958         verbose mode.  Search for several names of gs executable.
9959
9960 2005-06-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9961
9962         * lily/ly-module.cc (ly_make_anonymous_module): call make-module
9963         directly. This fixes a massive memory leak, provided you use CVS
9964         GUILE.
9965
9966 2005-06-10  Erik Sandberg  <ersa9195@student.uu.se>
9967
9968         * ly/property-init.ly: Added tieDashed.
9969
9970         * THANKS: Added some bughunters for 2.5.
9971
9972 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9973
9974         * lily/program-option.cc: add debug-gc option.
9975
9976         * lily/include/lily-guile-macros.hh: don't protect exported module
9977         objects.
9978
9979         * lily/include/lily-parser.hh (class Lily_parser): remove beam_check().
9980
9981         * scm/backend-library.scm (postscript->pdf): use
9982         delete-intermediate-files iso. running-from-gui? 
9983
9984         * ttftool/util.c (surely_read): robustness. Allow read() to return
9985         less bytes than requested, as per posix standards.
9986
9987         * lily/pfb.cc (LY_DEFINE): set ttf_verbosity from ttf-verbosity
9988         program option.
9989
9990         * ttftool/include/ttftool.h ("C"): rename verbosity to
9991         ttf_verbosity. Add to public interface.
9992
9993         * scm/music-functions.scm (unfold-repeats): remove debugging display.
9994
9995         * lily/program-option.cc: rename from scm-option.cc
9996
9997         * lily/scm-option.cc (LY_DEFINE): handle no-foobar option setting.
9998         (get_help_string): Print pretty help string.
9999
10000         * scripts/lilypond-book.py (PREAMBLE_LY): add no-point-and-click
10001         to snippet preamble.
10002
10003         * lily/scm-option.cc: remove command-line-settings option. Fold
10004         all command-line options plus default settings in a generic
10005         interface. 
10006
10007         * flower/getopt-long.cc (table_string): indent 2nd lines of help
10008         texts too.
10009
10010 2005-06-09  Jan Nieuwenhuizen  <janneke@gnu.org>
10011
10012         * flower/file-name.cc: Bugfix: only append DIRSEP if BASE_
10013         or EXT_ components non-empty.
10014
10015 2005-06-08  Jan Nieuwenhuizen  <janneke@gnu.org>
10016
10017         * scm/lily.scm (running-from-gui?): Export.
10018
10019         * lily/lily-parser-scheme.cc (ly:parse-file): Use it to generate
10020         output in .ly source directory.
10021
10022 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10023
10024         * ttftool/util.c (surely_lseek): more verbosity.
10025
10026         * lily/include/lily-proto.hh: add Context_def. This fixes FC4
10027         compile.
10028
10029         * lily/parser.yy (Repeated_music): remove >? 
10030
10031         * scm/backend-library.scm (postscript->pdf): Support for
10032         -dgs-font-load=1
10033
10034         * scm/framework-ps.scm (write-preamble): make font loading
10035         switchable to GS via --define-default gs-font-load=1
10036
10037 2005-06-09  Graham Percival  <gperlist@shaw.ca>
10038
10039         * Documentation/user/global.itely: added \layout docs.
10040
10041 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10042
10043         * lily/lily-parser-scheme.cc: add unistd.h
10044
10045 2005-06-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10046
10047         * scm/editor.scm: add char argument.
10048
10049         * scripts/lilypond-invoke-editor.scm (dissect-uri): add char. 
10050
10051         * ttftool/util.c (syserror): use errno for better error reporting.
10052
10053         * lily/source-file.cc (get_counts): new function. Calc column,
10054         line and char count in one go.
10055
10056         * lily/binary-source-file.cc (quote_input): rename to quote_input
10057
10058         * lily/input.cc (set): new function.
10059
10060 2005-06-08  Jan Nieuwenhuizen  <janneke@gnu.org>
10061
10062         * flower/file-path.cc (find): Bugfix.  Append rather than prepend
10063         directory part of file name to search directory.
10064
10065         * lily/lily-parser-scheme.cc (ly:parse-file): Prepend cwd to
10066         search path and chdir to DIR if --outname=DIR used.
10067
10068         * lily/main.cc (prepend_env_path): Bugfix: Check directory
10069         existence before appending original path.
10070
10071 2005-06-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10072
10073         * ttftool/parse.c (readNamingTable): verbosity for "bad TTF
10074         file" massage.
10075
10076         * Documentation/user/GNUmakefile (TEXINPUTS): set TEXINPUTS so our
10077         texinfo.tex is always used.
10078         
10079 2005-06-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10080
10081         * flower/include/axis.hh: rename from axes.hh
10082
10083         * lily/include/text-interface.hh (Module): rename from text-item.hh
10084
10085         * VERSION (PATCH_LEVEL): release 2.5.29
10086
10087         * ttftool/parse.c (readNamingTable): handle Apple/8bit encoding too.
10088
10089         * scm/framework-ps.scm (font-file-as-ps-string): new function.
10090         (handle-macfont): new function. Call fondu for Native mac fonts.
10091
10092         * scm/define-markup-commands.scm (fill-line): handle text-widths =
10093         '() case.
10094
10095 2005-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
10096
10097         * scm/ps-to-png.scm (make-ps-images): Bugfix: `Pages: 1\n' is not
10098         multi-page.  Fix .eps regular expression.
10099
10100 2005-06-07  Graham Percival  <gperlist@shaw.ca>
10101
10102         * Documentation/user/putting.itely: add info on modifying templates.
10103
10104         * Documentation/user/lilypond.itely, converters.itely, invoking.itely:
10105         misc small changes.
10106
10107 2005-06-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10108
10109         * scm/ps-to-png.scm (make-ps-images): no paper size for multi-page.
10110
10111         * scripts/lilypond-ps2png.scm
10112
10113         * VERSION (PACKAGE_NAME): release 2.5.28
10114
10115 2005-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
10116
10117         * lily/main.cc (prepend_env_path): Do not append /, that does not
10118         work.  Localedir lives in datadir, not in prefix.
10119
10120         * scm/framework-ps.scm (write-preamble): Remove load-font-via-GS
10121         hack for windows.
10122
10123         * flower/include/file-cookie.hh: Compile fix.
10124
10125 2005-06-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10126
10127         * ly/engraver-init.ly: add \defaultchild to InnerStaffGroup. 
10128
10129         * scm/ps-to-png.scm (gulp-port): rename from read. Don't redefine
10130         system primitives.
10131         (gulp-port): using read-string!/partial. We don't want to read an
10132         entire PS file  (GUILE 1.6 limits strings to 16M) 
10133
10134         * scm/define-grobs.scm (all-grob-descriptions): remove arch-*
10135         properties. Add font-interface. 
10136
10137         * scm/define-grob-properties.scm (all-user-grob-properties):
10138         remove old bracket properties.
10139
10140         * scm/x11-color.scm: reformat. 
10141
10142         * lily/ledger-line-engraver.cc (acknowledge_grob): create new
10143         LedgerLineSpanner if new StaffSymbol is found. 
10144
10145         * lily/staff-symbol-engraver.cc (acknowledge_grob): also set
10146         staff-symbol for finishing staff. 
10147
10148         * lily/GNUmakefile (OUT_DIST_FILES): don't dist Flex output
10149
10150         * scm/output-svg.scm (setcolor): implement (re)setcolor with <g>
10151         change black to currentColor everywhere. This fixes color support
10152         in SVG.
10153
10154 2005-06-06  Carl Sorensen  <carldsorensen@comcast.net>
10155
10156         * input/regression/fret-diagrams.ly: new file to test fret diagram
10157         capability
10158
10159         * scm/output-tex.scm: remove white-dot and white-text
10160
10161         * scm/output-ps.scm: remove white-dot and white-text
10162
10163         * scm/fret-diagrams.scm (sans-serif-stencil-white): removed -- 
10164         using ly:stencil-in-color instead
10165         (draw-dots) : remove call to white-dot
10166
10167 2005-06-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10168
10169         * flower/memory-stream.cc (Memory_out_stream): remove fopencookie
10170         support.
10171
10172         * ttftool/ttfps.c: use lily_cookie functions everywhere. 
10173
10174         * flower/include/file-cookie.hh: new file. lily_cookie extension 
10175
10176         * flower/file-cookie.cc: new file. lily_cookie extension.
10177         
10178 2005-06-06  Jan Nieuwenhuizen  <janneke@gnu.org>
10179
10180         * scm/editor.scm (editor-command-template-alist): Add syn
10181         editor (Jaap [de Vos]).
10182
10183 2005-06-05  Jan Nieuwenhuizen  <janneke@gnu.org>
10184
10185         * scripts/lilypond-ps2png.scm:
10186         * scm/ps-to-png.scm: New file.
10187
10188         * scm/backend-library.scm (postscript->png): Use it.
10189
10190         * scripts/lilypond-ps-to-png.py: Remove file.
10191
10192         * python/lilylib.py (get_bbox, make_ps_images): Remove.
10193
10194 2005-06-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10195
10196         * lily/auto-beam-engraver.cc (acknowledge_grob): remove dead code.
10197
10198         * scm/auto-beam.scm (default-auto-beam-check): only forbid beam
10199         start on grace moment. Fixes autobeam-grace.ly.
10200
10201         * lily/auto-beam-engraver.cc (process_acknowledged_grobs): don't
10202         process anything unless we're at the end of a pending beam. Fixes
10203         syncopated 8ths beamed across a beat.
10204
10205 2005-06-03  Jan Nieuwenhuizen  <janneke@gnu.org>
10206
10207         * scm/editor.scm (editor-command-template-alist): Start emacs if
10208         emacslient fails.
10209
10210         * lily/main.cc (setup_localisation): Listen to LILYPOND_LOCALEDIR.
10211
10212         * flower/file-path.cc (is_file, is_dir): Export.
10213
10214         * lily/main.cc (prepend_env_path, set_env_file): Use them.
10215
10216 2005-06-02  Mats Bengtsson  <mabe@s3.kth.se>
10217
10218         * lily/easy-notation.cc: Added include cctype to correct
10219         compilation error.
10220
10221 2005-06-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10222
10223         * scm/backend-library.scm (postscript->pdf): set resolution to
10224         1200, so bitmap fonts aren't that ugly. 
10225
10226         * Documentation/topdocs/NEWS.tely (Top): add entry about font family.
10227
10228         * lily/dynamic-engraver.cc (acknowledge_grob): only center on
10229         parent if we have a notehead. Fixes incorrect offsets when
10230         Paper_column is very wide in the X direction.
10231
10232         * input/regression/font-family-override.ly (Module): new file.
10233
10234         * scm/font.scm (make-pango-font-tree): new function.
10235
10236         * lily/beam.cc (before_line_breaking): remove warning about less
10237         than 2 visible stems. We still get a warning when there is only
10238         one stem.
10239
10240 2005-06-01  Werner Lemberg  <wl@gnu.org>
10241
10242         * buildscripts/substitute-encoding.py: Handle PFAemmentaler-xx.pfa
10243         correctly.
10244
10245 2005-06-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10246
10247         * lily/slur-scoring.cc (generate_avoid_offsets): new
10248         function. Generate avoid offsets once per slur.
10249
10250         * lily/slur.cc (add_extra_encompass): add dependency to
10251         extra-encompass object. This fixes bugs/c-phrasing-slur.ly
10252
10253         * lily/stencil.cc (is_empty): check dim_ field for is_empty()
10254         too. Fixes inf error with added bass notes.
10255
10256         * scripts/lilypond-book.py (do_options): --psfonts doesn't take
10257         argument anymore.
10258
10259         * make/ly-vars.make (DVIPS_FLAGS): use .psfonts as extension.
10260
10261         * input/tutorial/lbook-latex-test.tex: add line length test.
10262
10263         * scripts/lilypond-book.py (set_default_options): new
10264         function. Call this before dissecting snippets, so linewidth
10265         settings reach the snippets.
10266
10267 2005-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
10268
10269         * scm/lily.scm (PLATFORM, slashify): Remove double slashes.
10270
10271 2005-06-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10272
10273         * input/mutopia/R.Schumann/romanze-op28-2.ly (leftb): bugfix.
10274
10275 2005-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
10276
10277         * stepmake/aclocal.m4: More autopackage friendliness.
10278
10279 2005-05-31  Graham Percival  <gperlist@shaw.ca>
10280
10281         * Documentation/index.html.in: remove link to LSR.
10282
10283         * Documentation/user/global.itely: remove duplicate
10284         "dedication" \header{} section.
10285
10286 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10287
10288         * VERSION (PACKAGE_NAME): release 2.5.27.
10289
10290         * lily/lily-parser-scheme.cc (LY_DEFINE): unprotect paper
10291         too. Plugs memory leak.
10292
10293         * make/lilypond.fedora.spec.in (Group): remove
10294         lilypond-pdfpc-helper.
10295
10296         * scripts/GNUmakefile (SEXECUTABLES): remove
10297         lilypond-pdfpc-helper. Use lilypond-invoke-editor instead.
10298
10299         * scm/font.scm (make-century-schoolbook-tree): add Mono as
10300         'typewriter family.
10301
10302         * lily/score.cc (Score): unprotect copy of Output_def. Plugs
10303         memory leak.
10304
10305         * lily/parser.yy (score_body): don't clone Score, that's done in
10306         Lily_lexer::try_special_identifiers(). This fixes a memory leak.
10307
10308         * lily/score-engraver.cc (derived_mark): new function.
10309         (initialize): unprotect Paper_score. This fixes a memory leak.
10310
10311         * lily/score-performer.cc (derived_mark): new function.
10312
10313         * lily/score-translator.cc (get_output): use SCM for get_output() call.
10314
10315         * stepmake/aclocal.m4: put FlexLexer.h test in conftest.cc. Fixes
10316         spurious warning.
10317
10318         * scm/font.scm (make-century-schoolbook-tree): use Sans for sans
10319         serif.
10320
10321 2005-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
10322
10323         * configure.in (reloc_b): Add --enable-relocation.
10324
10325 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10326
10327         * lily/pfb.cc (LY_DEFINE): show file name when loading PFB. 
10328
10329         * input/regression/alignment-order.ly: add Staff example.
10330
10331 2005-05-31  John Mandereau   <john.mandereau@free.fr>
10332
10333         * po/fr.po: update.
10334
10335 2005-05-31  Graham Percival  <gperlist@shaw.ca>
10336
10337         * Documentation/index.html.in: add link to LSR.
10338
10339 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10340
10341         * scm/define-stencil-commands.scm (Module): new file. Register all
10342         allowed stencil expression heads in a central place.
10343
10344         * lily/stencil-scheme.cc (LY_DEFINE): check is_stencil_head in
10345         ly:make-stencil
10346
10347         * lily/stencil-expression.cc (all_stencil_heads): registering
10348         stencil expressions.
10349
10350         * lily/stencil-interpret.cc: new file. Stencil expression
10351         interpreting.
10352
10353         * input/xiao-haizi-guai-guai.ly: move file back.
10354
10355 2005-05-30  Graham Percival  <gperlist@shaw.ca>
10356
10357         * Documentation/user/advanced.itely, converters.itely,
10358         instrument-notation.itely, lilypond-book.itely: misc small
10359         changes.
10360
10361 2005-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
10362
10363         * lily/lexer.ll: Skip UTF-8 BOM at BOF.
10364
10365         * make/lilypond.fedora.spec.in: Fix source url.
10366
10367         * cygwin: Update from mingw patches.
10368
10369         * scm/editor.scm (editor-command-template-alist): Use jedit
10370         -reuseview (Bertalan), add uedit (Patrick Huberts).
10371
10372         * input/xiao-hai-zi-guai-guai.ly: Rename from
10373         xiao-haizi-guai-guai.ly.
10374
10375         * input/*: Reindent, do not use TAB.
10376
10377         * Documentation/pictures/ly.xpm: Bugfix: do not anti-alias against
10378         white background.
10379
10380 2005-05-29  Jan Nieuwenhuizen  <janneke@gnu.org>
10381
10382         * scm/framework-ps.scm (dump-stencil-as-EPS): Add silly fix for
10383         numerical overflow error.
10384
10385 2005-05-29 Laura Conrad <lconrad@laymusic.org>
10386         
10387         * abc2ly.py: fix to syntax error in multi-part output.
10388
10389 2005-05-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10390
10391         * lily/span-bar.cc (print): sort bar line extents. Fixes problem
10392         with disappearing span bars when alignAboveContext is active
10393
10394         * lily/property-iterator.cc (check_grob): use is-grob?
10395         object-property. Fixes crash-key-sig-font-size.ly. 
10396
10397 2005-05-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10398
10399         * lily/bar-line.cc (print): don't round barlines; this produces
10400         odd aliasing effects in Acroread.
10401
10402         * lily/timing-engraver.cc (process_music): robustness fix.
10403
10404         * lily/context-def.cc (filter_engravers): bugfix.
10405
10406 2005-05-28  Jan Nieuwenhuizen  <janneke@gnu.org>
10407
10408         * lily/lilypond.rc.in: Add ly-icon.
10409
10410         * lily/GNUmakefile: 
10411         * Documentation/pictures/GNUmakefile (OUT_DIST_FILES): Add ly-icon
10412         rules.
10413
10414 2005-05-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10415
10416         * lily/stencil-scheme.cc (LY_DEFINE): ly:stencil-in-color
10417
10418         * ps/music-drawing-routines.ps: 
10419
10420         * scm/output-ps.scm: remove draw ez_ball.
10421
10422         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
10423         EasyNotation context definition.
10424
10425         * lily/easy-notation.cc (brew_ez_stencil): new file. Use
10426         Text_interface and color for making easy note heads.
10427
10428         * lily/stencil.cc (with_color): new function.
10429
10430         * ps/music-drawing-routines.ps: remove draw_zigzag_line
10431
10432         * lily/line-spanner.cc (zigzag_stencil): rewrite to use draw-line
10433         output routine. Zigzag now works in SVG too.
10434
10435         * scm/output-tex.scm (filledbox): idem.
10436
10437         * scm/output-svg.scm (filledbox): idem.
10438
10439         * scm/output-ps.scm (lily-def): remove horizontal-line. 
10440
10441         * lily/lookup.cc (horizontal_line): use draw-line. 
10442
10443         * lily/system-start-delimiter.cc: remove old staff bracket code.
10444
10445         * mf/feta-haak.mf: further tweaks.
10446
10447         * lily/system-start-delimiter.cc (staff_bracket): use glyphs.
10448
10449         * mf/feta-generic.mf: include feta-haak.
10450
10451         * mf/feta-haak.mf: rewrite. Make separate glyphs for the tips 
10452
10453         * scm/framework-ps.scm (write-preamble): only load fonts if their
10454         filename is a string. 
10455
10456 2005-05-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10457
10458         * scm/output-svg.scm (circle): support circle.
10459         (bracket): stub for bracket.
10460
10461         * scripts/lilypond-book.py (main): make sure --psfonts warning is
10462         correct.
10463
10464 2005-05-26  Graham Percival  <gperlist@shaw.ca>
10465
10466         * Documentation/user/lilypond.tely, advanced-notation.itely,
10467         basic-notation.itely, instrument-notation.itely, global.itely,
10468         introduction.itely, tutorial.itely: rearranging, editing,
10469         clean-up.
10470
10471         * mf/GNUmakefile: change a "make -C" to "${MAKE} -C", required
10472         for compiling on FreeBSD.
10473
10474 2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10475
10476         * lily/pfb.cc (LY_DEFINE): progress indication for opening ttf and
10477         otf files.
10478
10479         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly (lower):
10480         bugfixes.
10481
10482         * VERSION: 2.5.26 released.
10483
10484         * scm/titling.scm (marked-up-headfoot): revert Pedro's patch. 
10485
10486 2005-05-25  Pedro Kroger  <kroeger@pedrokroeger.net>
10487
10488         * scm/titling.scm (marked-up-headfoot): doesn't print pagenumbers
10489         if printpagenumber is false.
10490
10491 2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10492
10493         * lily/font-config.cc (init_fontconfig): comment out FontConfig
10494         cache warning.
10495
10496         * lily/tie.cc (print): support dotted ties.
10497         
10498 2005-05-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10499
10500         * scm/define-grobs.scm (all-grob-descriptions): switch off
10501         debugging
10502         (all-grob-descriptions): Arpeggio has Y-extent.
10503
10504         * scm/define-music-properties.scm (all-music-properties): document
10505         length-callback and start-callback as "read-only".
10506
10507         * scm/music-functions.scm (unfold-repeats): rewrite. Cannot set
10508         length-callback after creation. 
10509
10510         * scripts/convert-ly.py (conv): unfoldrepeats -> unfoldRepeats,
10511         compressmusic -> compressMusic.
10512
10513         * ly/music-functions-init.ly (oldaddlyrics): idem.
10514
10515         * lily/parser.yy: NewLyricCombineMusic ->
10516         LyricCombineMusic. LyricCombineMusic -> OldLyricCombineMusic.
10517
10518 2005-05-24  Pedro Kroger  <kroeger@pedrokroeger.net>
10519
10520         * ly/Welcome_to_LilyPond.ly: typo.
10521
10522 2005-05-24  Graham Percival  <gperlist@shaw.ca>
10523
10524         * Documentation/user/lilypond.tely: move changing-defaults to be
10525         before global issues.
10526
10527         * Documentation/user/basic-notation.itely: move Transpose section
10528         here from advanced/Other.
10529
10530         * Documentation/user/changing-defaults.itely,
10531         advanced-notation.itely: move Fonts to advanced, edit.
10532
10533 2005-05-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10534
10535         * lily/parser.yy (bare_int): remove rule.  From now on, we require
10536         # before negative integers.
10537
10538 2005-05-23  Graham Percival  <gperlist@shaw.ca>
10539
10540         * ly/property.ly: Update tieDotted to have the same form as slurDotted.
10541
10542         * Documentation/user/lilypond.tely: change Unified index to
10543         LilyPond index.
10544
10545         * Documentation/user/advanced-notation.itely,
10546         instrument-notation.itely: editing.
10547
10548 2005-05-23  Jan Nieuwenhuizen  <janneke@gnu.org>
10549
10550         * scm/lily.scm (lilypond-all): Bugfix: return failed.
10551
10552         * lily/main.cc (setup_paths)[__MINGW32__]: Normalize LILYPONDPREFIX.
10553
10554 2005-05-21  Jan Nieuwenhuizen  <janneke@gnu.org>
10555
10556         * lily/general-scheme.cc (ly:stderr-redirect): Rename from
10557         ly:port-move.  Needs to be stderr-specific on mingw.
10558         Run fixcc.
10559
10560 2005-05-20  Jan Nieuwenhuizen  <janneke@gnu.org>
10561
10562         * lily/general-scheme.cc (ly:port-move): Remove.
10563
10564         * scm/backend-library.scm (postscript->pdf): Remove -dSAFER in
10565         windows.
10566
10567         * lily/main.cc (setup_paths) [ARGV0_RELOCATION]: Reinstate GS_*
10568         variables.  This eliminates the need for a gs.bat wrapper, which
10569         opens a console.
10570
10571         * scripts/lilypond-invoke-editor.scm (running-from-gui?): 
10572         * scm/lily.scm (running-from-gui?): 
10573         * lily/main.cc[MINGW]: Remove isatty inversion, this is an
10574         artifact of not compiling with -mwindows.
10575
10576         * scm/editor.scm: Define PLATFORM.
10577
10578 2005-05-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10579
10580         * scripts/lilypond-book.py (PREAMBLE_LY): add marker, where people
10581         can start to cut & paste lilypond-book fragments.  
10582
10583         * scm/define-music-types.scm (music-descriptions): remove
10584         UntransposableMusic
10585
10586 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10587
10588         * scm/output-ps.scm (glyph-string): remove / before CIDs.
10589
10590 2005-05-20  Graham Percival  <gperlist@shaw.ca>
10591
10592         * Documentation/user/instrument-notation.itely: remove *Engraver.
10593
10594         * Documentation/user/advanced-notation.itely: edit, rearrange.
10595
10596 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10597
10598         * scm/output-ps.scm (glyph-string): take cid? argument. Use
10599         findresource iso. findfont for CID CFF fonts.
10600
10601         * VERSION (PACKAGE_NAME): release 2.5.25
10602
10603         * ly/Welcome_to_LilyPond.ly: add  \version
10604
10605 2005-05-20  Graham Percival  <gperlist@shaw.ca>
10606
10607         * Documentation/user/programming-interface.itely: move
10608         \displayMusic into its own section.
10609
10610         * Documentation/user/basic-notation.itely: finish editing.
10611
10612 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10613
10614         * flower/file-path.cc (find): don't throw away file_name.dir, but
10615         append to it. Fixes \include with directories.
10616
10617         * flower/include/file-path.hh (class File_path): don't derive from
10618         Array<String>.
10619
10620         * flower/include/file-name.hh (class File_name): remove to_str0()
10621
10622         * lily/hara-kiri-engraver.cc (acknowledge_grob): split
10623         Hara_kiri_engraver in separate file.
10624
10625         * lily/slur-configuration.cc (score_encompass): oops, <? to min()
10626         translation went wrong. Fixes vertically translated slurs.
10627
10628 2005-05-19  Graham Percival  <gperlist@shaw.ca>
10629
10630         * Documentation/user/basic-notaton.itely: editing.
10631
10632 2005-05-18  Graham Percival  <gperlist@shaw.ca>
10633
10634         * Documentation/user/macros.itexi, basic-notation.itely:
10635         add @commonprop (commonly used properties) macro.
10636
10637 2005-05-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10638
10639         * ly/Welcome_to_LilyPond.ly: talk about icon, not program.
10640
10641         * scripts/lilypond-book.py (invokes_lilypond): new function
10642         (main): only run fontextract if invokes_lilypond() is true.
10643
10644         * lily/function-documentation.cc (ly_add_function_documentation):
10645         duh, use !=
10646
10647         * Documentation/topdocs/INSTALL.texi (Top): add MacOS command.
10648
10649         * stepmake/aclocal.m4: remove kpathsea warning, change to OPTIONAL.
10650
10651         * scm/lily.scm (running-from-gui?): lowercase Darwin.
10652
10653         * lily/function-documentation.cc (ly_add_function_documentation):
10654         use scm_hash_table_p() for checking.
10655
10656 2005-05-18  Jan Nieuwenhuizen  <janneke@gnu.org>
10657
10658         * Documentation/user/advanced-notation.itely (Text scripts):
10659         Change nonexisting @internalsref{Text markup} to @ref{Text
10660         markup}.  Change @internalsref{Text script} to
10661         @internalsref{TextScript}.
10662
10663         * lily/main.cc (setup_paths): Bugfix: pangorc is not pango.modules.
10664
10665 2005-05-17  Graham Percival  <gperlist@shaw.ca>
10666
10667         * Documentation/user/tutorial.itely, basic-notation.itely,
10668         changing-defaults.itely: remove duplicate cindex entries
10669         that appear on the same page.
10670
10671         * scm/define-grobs.scm: change default padding for TextSpanner.
10672
10673         * Documentation/topdocs/AUTHORS.texi: update email address.
10674
10675         * Documentation/user/global.itely: add info about \include.
10676
10677 2005-05-17  Jan Nieuwenhuizen  <janneke@gnu.org>
10678
10679         * scm/backend-library.scm (postscript->pdf): Remove (useless) .ps
10680         when running-from-gui.
10681
10682         * scm/editor.scm (get-editor): Add platform defaults.
10683
10684         * scm/backend-library.scm (postscript->pdf): Typo.
10685
10686 2005-05-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10687
10688         * scm/lily.scm (running-from-gui?): Darwin never runs from GUI.
10689
10690         * lily/font-config.cc (init_fontconfig): add warning about cache.
10691
10692 2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
10693
10694         * lily/main.cc (setup_paths)[ARGV0_RELOCATION]: Remove GS_*.
10695
10696 2005-05-16  Mats Bengtsson  <mabe@s3.kth.se>
10697
10698         * lily/horizontal-bracket.cc (print): Take care of the direction
10699         property so brackets above the stave point downwards. 
10700
10701         * scm/define-grobs.scm (all-grob-descriptions): Set staff-padding
10702         for HorizontalBracket so it doesn't end up within the stave.
10703
10704 2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
10705
10706         * lily/GNUmakefile (default): Typo.
10707
10708         * scm/lily.scm (PLATFORM): Export.
10709
10710         * scm/framework-ps.scm (write-preamble)[MINGW]: Use
10711         load-font-via-GS, ttftool or fopencookie is broken on windows.
10712         
10713         * scm/backend-library.scm (postscript->pdf)[MINGW]: Do not use
10714         -dSAFER, that is broken on windows.
10715
10716 2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10717
10718         * lily/GNUmakefile ($(outdir)/FlexLexer.h): conditional dependency
10719         for FlexLexer.h
10720
10721         * scripts/lilypond-invoke-editor.scm: remove stray -
10722
10723 2005-05-15  Jan Nieuwenhuizen  <janneke@gnu.org>
10724
10725         * lily/lily-guile.cc (ly_scm2newstr): Use scm_i_string_length.
10726         Fixes deprecation warning.
10727
10728         * flower/include/string.icc (to_string): Only inline if
10729         -DSTRING_UTILS_INLINED.
10730
10731         * lily/pango-font.cc (pango_item_string_stencil): Normalize file
10732         name.  Remove windows comment.
10733
10734         * scm/editor.scm (slashify): New function.
10735         (get-editor-command): Use it.
10736         (get-command-template): Do not alter editor command if
10737         environment value includes `%(file)s' magic.
10738
10739         * scripts/lilypond-invoke-editor.scm (unquote-uri): New function.
10740         (dissect-uri): Use it.
10741         (unquote-uri): Bugfix.
10742
10743 2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10744
10745         * scm/framework-ps.scm (write-preamble): add TTF rule.
10746
10747         * Documentation/topdocs/README.texi (Top): remove note about
10748         xdelta.
10749
10750         * Documentation/topdocs/INSTALL.texi (Top): remove Flex
10751         requirement.
10752
10753         * stepmake/aclocal.m4: STEPMAKE_FLEXLEXER_LOCATION: new
10754         function. Figure out where FlexLexer.h lives
10755
10756         * lily/GNUmakefile (OUT_DIST_FILES): dist lexer.cc and FlexLexer.h
10757         
10758 2005-05-14  Jan Nieuwenhuizen  <janneke@gnu.org>
10759
10760         * scripts/lilypond-invoke-editor.scm (dissect-uri): Handle URIs
10761         with Windows root in file name.
10762
10763         * scm/backend-library.scm (ly:system): Only redirect output (using
10764         system and shell, ugh) if /dev/null is writable.
10765
10766         * Documentation/pictures/GNUmakefile [PLATFORM_WINDOWS]: Build
10767         windows icon.
10768
10769         * scm/lily.scm (is-absolute?): New function.  Fixes absolute files
10770         on Mingw.
10771
10772         * scm/output-ps.scm (grob-cause): Use it.  Fixes PDF point and
10773         click.
10774
10775         * flower/file-path.cc (is_dir, is_file): New function.  Actually
10776         use result of stat when available.
10777
10778         * flower/file-path.cc (find): Use it.  Refactor.  Fixes Mingw,
10779         absolute file name and root.
10780
10781         * scm/lily.scm (PLATFORM): On mingw, slashify getcwd.
10782
10783         * scm/editor.scm (get-editor-command): Typo: do not apply editor.
10784
10785         * flower/file-name.cc (slashify): Bugfix, do substitute if no
10786         slashes in file name.
10787
10788 2005-05-13  Jan Nieuwenhuizen  <janneke@gnu.org>
10789
10790         * Documentation/user/preface.itely (Preface): Run
10791         texinfo-all-menus-update.
10792
10793         * scm/editor.scm (get-editor-command): Bugfix: allow full
10794         LYEDITOR setting, partial XEDITOR setting.  With typo fix.
10795
10796         * Documentation/pictures/lilypond-48.xpm: New file.
10797
10798         * flower/file-path.cc (to_string): Bugfix: use PATHSEP.
10799
10800         * ly/Welcome_to_LilyPond.ly: New file.
10801
10802         * lily/main.cc (main): Only identify if we have a terminal.
10803
10804         * scm/backend-library.scm (postscript->png)
10805         (postscript->pdf): Fix file name quoting for GS/MINGW (ie,
10806         non-/bin/sh).
10807
10808 2005-05-13  Heikki Junes  <hjunes@cc.hut.fi>
10809
10810         * Documentation/topdocs/AUTHORS.texi: polish, update.
10811
10812 2005-05-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10813
10814         * Documentation/user/preface.itely (Notes for version 2.6): new
10815         notes for 2.6
10816
10817         * lily/dynamic-engraver.cc (stop_translation_timestep): first set
10818         finished_span_, then call typeset_all(). Fixes spurious "Hairpin
10819         is not fully contained" warnings.
10820
10821         * lily/slur-scoring.cc (get_bound_info): remove warning.
10822
10823         * lily/staff-symbol-engraver.cc (process_music): start initial
10824         spanner in process_music(). This fixes overrides of StaffSymbol
10825         properties.
10826
10827         * scm/framework-pdf.scm (Module): remove.
10828
10829         * Documentation/topdocs/AUTHORS.texi (AUTHORS): clean up, update.
10830
10831         * lily/ambitus-engraver.cc: formatting cleanups.
10832
10833         * mf/feta-solfa.mf (Module): remove.
10834
10835         * ChangeLog: more details about contributions.
10836
10837 2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10838
10839         * lily/align-interface.cc (align_elements_to_extents): warn if
10840         called too early. Fixes: disappearing-staff-lines.ly
10841
10842         * VERSION (PACKAGE_NAME): release 2.5.24
10843
10844 2005-05-12  Jan Nieuwenhuizen  <janneke@gnu.org>
10845
10846         * stepmake/aclocal.m4: Typo.
10847
10848         * flower/string.cc (substitute): Take two strings or two
10849         characters.  Update callers.
10850
10851 2005-05-11  Jan Nieuwenhuizen  <janneke@gnu.org>
10852
10853         * flower/file-name.cc (File_name): Slashify.
10854
10855         * scm/lily.scm: Use gui-main iso lilypond-main on MINGW.
10856
10857         * scripts/GNUmakefile (SEXECUTABLES): Add lilypond-invoke-editor.
10858
10859         * stepmake/aclocal.m4 (STEPMAKE_WINDOWS): New function.
10860
10861         * configure.in (gui_b): Use it.
10862
10863         * lily/lilypond.rc.in: New file.
10864
10865         * lily/GNUmakefile[PLATFROM_WINDOWS]: Compile it into executable.
10866
10867 2005-05-12  Graham Percival  <gperlist@shaw.ca>
10868
10869         * Documentation/user/advanced-notation.itely: edit of Text
10870         section; clarify text scripts vs. text markup.
10871
10872 2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10873
10874         * lily/multi-measure-rest-engraver.cc
10875         (Multi_measure_rest_engraver): init bar_seen_ to true. Notice
10876         separation items on start. Fixes mm rests in start of score.
10877
10878         * lily/slur-scoring.cc (move_away_from_staffline): robustness,
10879         don't access StaffSymbol if not there.
10880         Fixes: crash-staff-symbol-engraver.ly.
10881
10882         * lily/instrument-name-engraver.cc (class
10883         Instrument_name_engraver): data member first_. Create
10884         InstrumentName on start. 
10885
10886 2005-05-12  Graham Percival  <gperlist@shaw.ca>
10887
10888         * Documentation/user/instrument-notation.itely: add guitar
10889         position.
10890
10891         * Documentation/user/introduction.itely,
10892         Documentation/user/lilypond.tely,
10893         Documentation/user/tutorial.itely: begin pruning
10894         unused (duplicated) cindex entries and misc cleanup.
10895
10896 2005-05-12  Mats Bengtsson  <mabe@s3.kth.se>
10897
10898         * input/test/volta-chord-names.ly: Bring the explanation up to
10899         date.
10900
10901 2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
10902
10903         * Documentation/topdocs/{AUTHORS.texi,INSTALL.texi,README.texi}:
10904         Specify `@documentencoding utf-8' for html, ignore warnings.
10905
10906 2005-05-11  Erik Sandberg  <ersa9195@student.uu.se>
10907
10908         * THANKS: Added bughunters.
10909
10910 2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
10911
10912         * lily/main.cc: update help string for `lilypond -H'.
10913
10914         * po/fi.po: update.
10915         
10916 2005-05-10  Graham Percival  <gperlist@shaw.ca>
10917
10918         * Documentation/user/advanced-notation.itely: minor fixes.
10919
10920 2005-05-10  Jan Nieuwenhuizen  <janneke@gnu.org>
10921
10922         * scm/editor.scm: New module.
10923
10924         * scm/lily.scm (gui-main): Use it.
10925
10926         * scm/framework-gnome.scm (spawn-editor): Use it.
10927
10928         * scripts/lilypond-invoke-editor.scm: Use it in new script.
10929
10930 2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10931
10932         * scm/framework-ps.scm (load-font-via-GS):  new function.
10933
10934         * lily/pango-font.cc (pango_item_string_stencil): add support for
10935         CID keyed font.
10936
10937         * scm/output-ps.scm (glyph-string): add support for CID keyed font.
10938
10939 2005-05-10  Graham Percival  <gperlist@shaw.ca>
10940
10941         * Documentation/user/basic-notation.itely: add @ref.
10942
10943         * Documentation/user/advanced-notation.itely: add example
10944         of 5/8 beaming.
10945
10946 2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10947
10948         * scripts/lilypond-pdfpc-helper.py (ly_pc_editor): robustness fixes.
10949
10950         * scm/backend-library.scm (postscript->pdf): Invoke gs instead of
10951         going through ps2pdf wrappers.
10952
10953 2005-05-09  Jürgen Reuter  <reuter@ipd.uka.de>
10954
10955         * Documentation/user/instrument-notation.itely: petrucci note
10956         heads: updated docu
10957
10958         * input/regression/note-head-style.ly: updated regression test;
10959         indentation fixes
10960
10961         * ly/engraver-init.ly: MensuralVoiceContext: use petrucci note
10962         heads as default
10963
10964         * mf/parmesan-heads.mf: minor editing; use musicological names
10965         (rather than optical description) as note head names
10966
10967         * scm/output-lib.scm: complete petrucci heads
10968
10969 2005-05-09  Pal Benko  <benkop@freestart.hu>
10970
10971         * mf/parmesan-heads.mf: add petrucci heads (like neo-mensural
10972         heads, but bigger)
10973
10974 2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
10975
10976         * lily/main.cc (main_with_guile): Remove no files check.
10977
10978         * lily/main.cc (ly:usage): Export to Scheme.
10979
10980         * scm/lily.scm (no-files-handler): New function.
10981
10982         * scm/lily.scm (lilypond-main): Use it.
10983
10984         * configure.in (gui_b): Add mbrtowc checking.
10985         Resurrect [utf8/]wchar.h checking.
10986
10987 2005-05-09  Mats Bengtsson  <mabe@s3.kth.se>
10988
10989         * Documentation/user/advanced-notation.itely (Metronome marks):
10990         Add link to the program reference for MetronomeMark
10991
10992         * Documentation/user/lilypond-book.itely (An example of a
10993         musicological document): Correct the example using psfonts 
10994
10995 2005-05-09  Heikki Junes  <hjunes@cc.hut.fi>
10996
10997         * po/fi.po: update after a lesson how to update entries against
10998         source.
10999         
11000         * po/TODO: document the lesson.
11001
11002 2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11003
11004         * configure.in (gui_b): remove wcrtomb checking.
11005
11006         * lily/general-scheme.cc (LY_DEFINE): hand-convert utf8 to 32
11007         bits. Patch by Matthias Neeracher. <neeracher@mac.com>
11008
11009 2005-05-09  Mats Bengtsson  <mabe@s3.kth.se>
11010
11011         * scripts/convert-ly.py: In the conversion to version 1.9.0, 
11012         keep Scheme expressions and strings unmodified when doing the
11013         conversion to postfix notation for slurs and beams. Should
11014         hopefully solve most related conversion problems. 
11015
11016         * Documentation/user/lilypond-book.itely : Clarify and correct how
11017         to call dvips with -h psfonts.
11018
11019 2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
11020
11021         * Documentation/user/instrument-notation.itely (Entering lyrics):
11022         Typo.  Fixes build.
11023
11024 2005-05-09  Graham Percival  <gperlist@shaw.ca>
11025
11026         * Documentation/user/lilypond-book.itely: document PSFONTS file.
11027
11028         * Documentation/user/lilypond.tely, lilypond-book.itely,
11029         tutorial.itely: change references to 2.5.x to 2.6.x.
11030
11031         * Documentation/user/instrument-notation.itely: clarified \addlyrics
11032         vs \lyricmode.
11033
11034         * Documentation/user/invoking.itely: remove old info about
11035         lilypond-profile.
11036
11037         * Documentation/topdocs/INSTALL.texi: remove old info about
11038         lilypond-profile, add warning about needing international fonts
11039         to build docs.
11040
11041 2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11042
11043         * lily/include/grob-info.hh (class Grob_info): make data member
11044         private. Changes throughout.
11045
11046         * input/regression/alignment-order.ly: new file. 
11047
11048         * lily/vertical-align-engraver.cc (acknowledge_grob): read
11049         alignAboveContext and alignBelowContext
11050
11051 2005-05-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11052
11053         * lily/pfb.cc (LY_DEFINE): add cast.
11054
11055         * scm/framework-ps.scm (write-preamble): embed CFFs if file name
11056         matches .otf
11057         (write-preamble): warn about unknown fonts.
11058
11059         * lily/pfb.cc (Module): new function ly:otf->cff
11060
11061         * lily/open-type-font.cc (get_otf_table): use ::get_otf_table
11062         (get_otf_table): new function.
11063
11064 2005-05-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11065
11066         * scm/backend-library.scm (postscript->png): call lilypond-ps2png
11067         iso. ps2png.
11068
11069 2005-05-06  Heikki Junes  <hjunes@cc.hut.fi>
11070
11071         * po/fi.po: apply second round of update.
11072
11073 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11074
11075         * scm/x11-color.scm (make-x11-color-handler): don't use
11076         #\sp. Apparently doesn't work on all platforms. 
11077
11078 2005-05-06  Graham Percival  <gperlist@shaw.ca>
11079
11080         * Documentation/user/advanced-notation.itely, putting.itely,
11081         tutorial.itely, global.itely, introduction.itely: really minor fixes.
11082
11083 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11084
11085         * VERSION (PACKAGE_NAME): release 2.5.23
11086
11087 2005-05-06  Jan Nieuwenhuizen  <janneke@gnu.org>
11088
11089         * Documentation/topdocs/AUTHORS.texi: Remove texinfo @accents,
11090         convert to utf-8.
11091
11092         * THANKS: Add translators for this release, convert to utf-8.
11093
11094         * mf/GNUmakefile (MFTRACE_FLAGS):
11095         * buildscripts/substitute-encoding.py (outdir): Build fix: pass
11096         outdir as option (WAS: hardcoded).
11097
11098 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11099
11100         * lily/staff-symbol-engraver.cc (Staff_symbol_engraver): init
11101         finished_span_
11102
11103         * THANKS: add Hans Forbrich.
11104
11105         * Documentation/topdocs/NEWS.tely (Top): document new feature.
11106
11107         * Documentation/user/basic-notation.itely (Staff symbol): document
11108         start/stop staff. Reference to ossia.ly
11109
11110         * input/test/ossia.ly: new example using stop and startStaff.
11111
11112         * lily/timing-engraver.cc: remove Timing_engraver::initialize(),
11113         in other words, don't create "|" barline at start of the score.
11114         (start_translation_timestep): don't set whichBar for start of score.
11115
11116         * input/regression/staff-halfway.ly: use new functionality.
11117
11118         * lily/staff-symbol-engraver.cc (try_music): take StaffSpanEvents,
11119         start and stop staff based on events.
11120
11121         * scm/define-music-types.scm (music-descriptions): add StaffSpanEvent
11122
11123         * ly/declarations-init.ly (startStaff, stopStaff): new identifiers.
11124
11125 2005-05-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11126
11127         * Documentation/user/programming-interface.itely (How markups work
11128         internally ): remove \encoding reference.
11129
11130 2005-05-04  Mats Bengtsson  <mabe@s3.kth.se>
11131
11132         * scripts/convert-ly.py: Attempt to do a smarter update of 
11133         text markups from versions < 1.9.0 with arbitrary nesting.
11134
11135 2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
11136
11137         * po/fi.po: convert to utf-8, and update.
11138
11139 2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11140
11141         * make/lilypond.suse.spec.in: update from suse 2.4 package.
11142
11143         * lily/*.cc: more <? >? to min/max changes
11144
11145         * lily/include/interpretation-context-handle.hh: rename
11146         Interpretation_context_handle to Context_handle.
11147
11148 2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
11149
11150         * input/regression/GNUmakefile (local_delete): use `find` together 
11151         with `xargs` to avoid too long argument-lists in cmd line.
11152
11153 2005-05-04  Graham Percival  <gperlist@shaw.ca>
11154
11155         * Documentation/user/introduction.itely: updates "About this manual".
11156
11157         * Documentation/user/advanced-notation.itely,
11158         invoking.itely: minor fixes.
11159
11160 2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11161
11162         * COPYING: add font exception. Update FSF address. 
11163
11164         * lily/context-def.cc (path_to_acceptable_context): bugfix, depth
11165         should be taken without child context.
11166
11167         * ly/chord-modifiers-init.ly (blackTriangleMarkup): use it.
11168
11169         * scm/define-markup-commands.scm (triangle): new command, as
11170         robust replacement for unicode Delta/Triangle.
11171
11172 2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11173
11174         * ps/music-drawing-routines.ps: add fillp argument.
11175
11176         * lily/lookup.cc (round_filled_polygon): polygon takes filled? argument
11177
11178         * lily/font-config.cc (init_fontconfig): don't add cff/
11179
11180         * VERSION (PACKAGE_NAME): release 2.5.22
11181
11182         * mf/GNUmakefile: remove cff/cff.ps/.map install rules.
11183
11184         * lily/grace-engraver.cc (consider_change_grace_settings): use
11185         is_alias(). Fixes problem with CueVoice grace notes. 
11186
11187         * lily/simultaneous-music-iterator.cc (construct_children): call
11188         Music_iterator::quit() for iterators that start out invalid. This
11189         fixes indefinitely continuing contexts.
11190
11191         * buildscripts/substitute-encoding.py: new file
11192
11193         * Documentation/user/basic-notation.itely (Basic polyphony): fix
11194         missing @end 
11195
11196         * scripts/lilypond-book.py (write_if_updated): print file name.
11197
11198         * Documentation/user/basic-notation.itely (Explicitly
11199         instantiating voices): idem.
11200
11201         * Documentation/user/advanced-notation.itely (Text spanners):
11202         remove stray { } 
11203
11204         * lily/context.cc (default_child_context_name): the default child
11205         is now first in accepts_list_.
11206
11207         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
11208         \defaultchild to all relevant contexts.  This fixes:
11209         drums-pitch.ly.
11210
11211         (Probably also fixes similar problems with ancient
11212         transcriptions getting CueVoices instead of the desired voices.)
11213  
11214         * lily/context-def.cc (get_default_child): new function.
11215         (get_accepted): place default child in front of list.
11216
11217         * lily/parser.yy (FIXME): add DEFAULTCHILD token.
11218
11219         * lily/include/context-def.hh (struct Context_def): add
11220         default_accept_
11221
11222 2005-05-03  Graham Percival  <gperlist@shaw.ca>
11223
11224         * scm/define-grobs.scm: remove "remove-first" line, since
11225         the absent property is set to #f anyway.
11226
11227         * Documentation/user/basic-notation.itely,
11228         advanced-notation.itely, instrument-notation.itely: minor
11229         fixes.
11230
11231         * ly/property-init.ly: add textSpanner{Up,Down,Neutral}.
11232
11233         * Documentation/user/advanced-notation.itely,
11234         changing-defaults.itely: consolidate Text stuff in
11235         advanced notation.
11236
11237         * Documentation/user/global.itely: better docs for \header.
11238
11239         * Documentation/user/putting.itely: new chapter; placeholder
11240         for future expansion.
11241
11242         * Documentation/user/examples.itely: moved "suggestions for
11243         writing LP files" section into putting.itely.
11244
11245         * Documentation/user/lilypond.itely: added new chapter,
11246         fixed the short table of contents.
11247
11248 2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11249
11250         * lily/beam-quanting.cc (quanting): robustness fix, don't produce
11251         infinity for unfeasible beams.
11252
11253         * make/lilypond.fedora.spec.in (Group): idem.
11254
11255         * scripts/GNUmakefile (SEXECUTABLES): rename ps2png to lilypond-ps2png
11256
11257         * mf/GNUmakefile (ALL_GEN_FILES): remove .map
11258
11259         * scm/framework-ps.scm (write-preamble): extract CFF from OTF
11260         fonts directly.
11261
11262         * buildscripts/gen-emmentaler-scripts.py (i): idem.
11263
11264         * mf/GNUmakefile: remove all CFF rules.
11265
11266         * scm/framework-ps.scm (ps-embed-cff): reinstate.
11267
11268         * lily/open-type-font-scheme.cc (LY_DEFINE):
11269         new function ly:otf-font-table-data.
11270         (LY_DEFINE): new function otf-font?
11271
11272 2005-05-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11273
11274         * mf/GNUmakefile ($(outdir)/lilypond.map): remove rule.
11275         ($(outdir)/Fontmap.lily): idem.
11276
11277         * buildscripts/gen-emmentaler-scripts.py (i): load fetaXX encoding
11278         for PFAEmmentaler-XXX.pfa. 
11279
11280         * Documentation/user/music-glossary.tely (accidental): NL
11281         translation of accidental.
11282
11283 2005-05-02  Jan Nieuwenhuizen  <janneke@gnu.org>
11284
11285         * flower/include/international.hh: Bugfix: include "string.hh".
11286
11287         * lily/include/mingw-compatibility.hh: New file.
11288
11289         * flower/include/libc-extension.hh (memrev): Rename from strrev.
11290
11291         * configure.in: Search for mingw wcrtomb library.
11292
11293 2005-05-02  Mats Bengtsson  <mabe@s3.kth.se>
11294
11295         * scripts/convert-ly.py: Bug fix
11296
11297         * Documentation/user/changing-defaults.itely (Common tweaks):
11298         Added example where the context has to be specified explicitly
11299         (MetronomeMark). 
11300
11301 2005-05-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11302
11303         * scripts/lilypond-book.py (ly_options): set timing to #f for
11304         notime option.
11305
11306         * scripts/convert-ly.py (conv): typo.
11307
11308         * flower/*.cc: remove <? and >?
11309         
11310         * lily/*.cc: remove <? and >?
11311
11312         * lily/tweak-registration.cc (insert_tweak_from_file): Make sure
11313         that 0x0 isn't passed into scm_cons(). Fixes crash with tweak
11314         editor.
11315
11316 2005-04-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11317
11318         * lily/part-combine-engraver.cc: add space to variable list.
11319
11320 2005-04-30  Graham Percival  <gperlist@shaw.ca>
11321
11322         * scm/define-grobs.scm: changed RemoveEmptyVerticalGroup's
11323         remove-first to false (matches docs)
11324
11325         * Documentation/user/advanced-notation.itely: corrected docs
11326         concerning remove-first.
11327
11328 2005-04-29  Mats Bengtsson  <mabe@s3.kth.se>
11329
11330         * lily/part-combine-engraver.cc: make sure that the relevant
11331         properties are included in the documentation.
11332
11333 2005-04-28  Graham Percival  <gperlist@shaw.ca>
11334
11335         * Documentation/user/lilypond-book.itely: Bernard's docs
11336         for \betweenLilyPondSystem.
11337
11338 2005-04-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11339
11340         * Documentation/topdocs/INSTALL.texi (Top): remove TeX outdated
11341         remarks.
11342
11343 2005-04-28  Pal Benko  <benkop@freestart.hu>
11344
11345         * lily/mensural-ligature.cc (brew_flexa): apply thickness property
11346         only on vertical lines of flexa shape, and use a constant
11347         thickness value for horizontal lines (patch slightly modified by
11348         Jürgen Reuter)
11349
11350         * lily/include/mensural-ligature.hh: make 2 comments clearer
11351
11352 2005-04-28  Jürgen Reuter  <reuter@ipd.uka.de>
11353
11354         * lily/vaticana-ligature-engraver.cc (need_extra_space): renamed
11355         to need_extra_horizontal_space; bugfix: use class scope to avoid
11356         global namespace pollution
11357
11358         * Documentation/user/instrument-notation.itely (ligatures): added
11359         comment on possible future syntax change and how to work around
11360
11361         * lily/vaticana-ligature-engraver.cc, mf/parmesan-heads.mf
11362         (epiphonus, cephalicus): fine-tune shape of plica head for narrow
11363         intervals (fixes agnus dei example)
11364
11365         * Documentation/user/instrument-notation.itely (white mensural
11366         ligatures): selected a more illustrative example
11367
11368 2005-04-28  Heikki Junes <hjunes@cc.hut.fi>
11369
11370         * Documentation/index.html.in: specify utf-8 charset in meta content.
11371
11372 2005-04-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11373
11374         * python/lilylib.py (make_ps_images): bugfixes; GS can produce
11375         empty 2nd page for single page.
11376
11377         * scm/lily.scm: remove p&c definitions.
11378
11379         * po/zh_TW.po (Module): new translation.
11380
11381         * lily/lily-guile.cc (ly_chain_assoc): remove.
11382
11383         * lily/general-scheme.cc (LY_DEFINE): export ly:chain_assoc_get
11384         (LY_DEFINE): recurse, iso. calling ly_chain_assoc.
11385
11386 2005-04-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11387
11388         * lily/beaming-info.cc: remove infinity_i
11389
11390         * scripts/abc2ly.py (out_filename): fix thinko with \version.
11391
11392 2005-04-26  Graham Percival  <gperlist@shaw.ca>
11393
11394         * Documentation/user/basic-notation.itely,
11395         instrument-notation.itely, advanced-notation.itely,
11396         changing-defaults.itely: minor fixes.  Added docs
11397         for colors to advanced-notation.itely.
11398
11399         * Documentation/user/advanced-notation.itely: fixed compile
11400         problem and added Bernard's x11-color doc patch.
11401
11402 2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
11403
11404         * scm/output-ps.scm (grob-cause): Yet another fix, hope it's
11405         alright this time round.
11406
11407 2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11408
11409         * Documentation/topdocs/INSTALL.texi (Top): idem.
11410
11411         * Documentation/topdocs/README.texi (Top): remove clean-fonts refs.
11412
11413         * VERSION (MAJOR_VERSION): release 2.5.21
11414
11415         * scm/output-ps.scm (grob-cause): bugfix.
11416
11417 2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
11418
11419         * cygwin/*: Update.
11420
11421         * cygwin/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Remove profile
11422         stuff.
11423
11424         * scm/output-ps.scm (grob-cause): Bugfix.
11425
11426         * scm/lily.scm (ly:load): Remove x11-color.
11427
11428         * stepmake/aclocal.m4 (STEPMAKE_GET_EXECUTABLE): Bugfix: do not
11429         quote executable, fixes getting version from program --with
11430         --options.
11431         (STEPMAKE_KPATHSEA): Bugfix for Cygwin cross building: use
11432         $ac_exeect.
11433
11434         * Documentation/user/GNUmakefile: Only build music-glossary with
11435         rendered lilypond snippets during web.
11436
11437 2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11438
11439         * po/de.po: update.
11440
11441         * lily/GNUmakefile (OUT_DIST_FILES): don't dist lexer.cc
11442
11443 2005-04-22  Laura Conrad <lconrad@laymusic.org>
11444  
11445         * scripts/abc2ly:
11446         second title line append with punctuation dash character;
11447         encode abc2ly python strings in utf-8
11448        
11449 2005-04-21  Laura Conrad <lconrad@laymusic.org>
11450
11451         * scripts/abc2ly fix chords (again)
11452  
11453 2005-04-22  Bernard Hurley  <bernard@fong-hurley.org.uk>
11454
11455         * scm/x11-color.scm: new file
11456         All x11 color names can be accessed with:
11457         #(x11-color 'ColorName),
11458         #(x11-color "ColorName") or:
11459         #(x11-color "color name")
11460         If the x11 color name is not recognised then it defaults
11461         to black
11462
11463         * scm/lily.scm: amended to call scm/x11-color.scm
11464
11465 2005-04-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11466
11467         * Documentation/user/invoking.itely (Reporting bugs): comment out
11468         reference to online PNG bug repository.
11469
11470 2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
11471
11472         * lily/translator-scheme.cc (ly:translator-property): Remove.
11473         Update callers.
11474
11475         * lily/context-scheme.cc (ly:context-now): Move from translator.
11476         Update callers.
11477
11478 2005-04-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11479
11480         * input/regression/grid-lines.ly (skips): refine example.
11481
11482         * scm/define-context-properties.scm
11483         (all-user-translation-properties): doc autoBeamCheck
11484
11485         * input/regression/grid-lines.ly (Module): new file.
11486
11487         * lily/grid-point-engraver.cc (Module): new file.
11488
11489         * lily/grid-line.cc (Module): new file.
11490
11491         * lily/grid-line-span-engraver.cc (Module): new file.
11492
11493         * lily/grid-line-interface.cc (Module): new file.
11494
11495 2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
11496
11497         * scm/auto-beam.scm (revert-property-setting): Bugfixes: add
11498         missing parameter, actualy cdr through list.  Actually return a
11499         list with ENTRY removed (was '()).
11500
11501         * scripts/convert-ly.py: Update.  Print warning if file cannot be
11502         opened.
11503         (do_conversion): Fix printing of continuation comma.
11504
11505         * Documentation/user/advanced-notation.itely (Beam formatting):
11506         Remove refbugs about compound time and mixed duration.
11507
11508         * scm/auto-beam.scm (default-auto-beam-settings): Write out all
11509         modulo moments explicitely.
11510
11511         * lily/moment.cc (operator %): New function.
11512
11513         * lily/moment-scheme.cc (ly:mod-moment): Wrap it.
11514
11515         * lily/translator-scheme.cc (ly:translator-now,
11516         ly:translator-property): New function.
11517
11518         * scm/auto-beam.scm (default-auto-beam-check): New function.
11519
11520         * lily/auto-beam-engraver.cc (test_moment): Use it.
11521
11522         * flower/rational.cc (operator %): Bugfix.
11523
11524 2005-04-21  Erik Sandberg  <ersa9195@student.uu.se>
11525
11526         * scripts/abc2ly: Bugfix
11527
11528 2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11529
11530         * python/fontextract.py (write_extracted_fonts): bugfix, too many
11531         %'s on EndFont comment.
11532
11533         * lily/ledger-line-spanner.cc: some more words of explanation.
11534
11535 2005-04-20  John Williams <williams@tni.com>  
11536         
11537         * scripts/lilypond-book.py: htmlquote bugfix.
11538         Allow snippets to be given distinct filenames.
11539         Allow the default alt text to be overridden.
11540
11541 2005-04-20  Erik Sandberg  <ersa9195@student.uu.se>
11542
11543         * ly/performer-init.ly: Bugfix
11544
11545         * THANKS: Added bughunters.
11546
11547 2005-04-20  Jan Nieuwenhuizen  <janneke@gnu.org>
11548
11549         * SConstruct (test_lib): Bump mftrace requirement to 1.1.9.
11550
11551         * lily/auto-beam-engraver.cc (test_moment): Test exact measure
11552         position (was: use modulo measure length).
11553
11554         * configure.in (no gui_b): Remove optional gtk+ requirement.
11555
11556 2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11557
11558         * Documentation/user/basic-notation.itely (Pitches): add
11559         LedgerLineSpanner.
11560
11561         * lily/dynamic-engraver.cc (process_music): set right bound to
11562         script if present. Else, do not set.
11563         (acknowledge_grob): only set right bound of finished spanner to
11564         note column if no other bound is set.
11565
11566         * python/lilylib.py (make_ps_images): switch back to png16m.
11567         
11568 2005-04-19  Jan Nieuwenhuizen  <janneke@gnu.org>
11569
11570         * scripts/lilypond-book.py (write_if_updated): Bugfix for not
11571         writing up to date file.  Add dvips usage suggestion.
11572
11573         * scripts/convert-ly.py: Fix error message.
11574         Print usage if no files on command line.
11575         (usage): Add example usage.
11576
11577         * input/test/compound-time.ly: New file.
11578
11579         * input/test/circle.ly: New file.
11580
11581         * Documentation/topdocs/NEWS.tely: Use them.
11582
11583         * input/test/boxed-stencil.ly: Remove \score.
11584
11585         * buildscripts/mf-to-table.py (base): Add .log dependency.
11586
11587         * mf/GNUmakefile: Add PFAemmentaler and PFAaybabtu dependencies on
11588         pfa's.  Add .log dependency
11589
11590         * scm/define-markup-commands.scm (lower): New command.
11591
11592         * elisp/lilypond-mode.el (LilyPond-pdf-command): New command,
11593         make it default.
11594
11595 2005-04-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11596
11597         * lily/dynamic-engraver.cc (acknowledge_grob): add note-column
11598         also to finished cresc as right bound. This fixes:
11599         skip-string-decresc.ly
11600
11601         * lily/slur-scoring.cc (get_bound_info): robustness: substitute
11602         relative_coordinate if extent is empty.
11603
11604         * lily/stem.cc (width_callback): determine correct extent if flag
11605         is not there. This fixes slur-no-flag.ly
11606
11607         * lily/grace-engraver.cc (consider_change_grace_settings): new
11608         function.
11609         (initialize): also consider_change_grace_settings() on
11610         initialization. Fixes large grace notes at start of score.
11611
11612         * lily/break-align-interface.cc (do_alignment): don't translate if
11613         total_extent is empty.
11614
11615         * buildscripts/lilypond-{login,profile}.sh (Module): remove file.
11616
11617 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11618
11619         * scm/output-ps.scm (grob-cause): don't add cwd if path starts
11620         with slash.
11621
11622 2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
11623
11624         * stepmake/aclocal.m4: Remove tfm_path.
11625
11626 2005-04-18  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11627
11628         * scm/music-functions.scm (markup-expression->make-markup): fix
11629         bug with cons arguments of markup commands.
11630         (music->make-music): fix music expression property list building
11631
11632 2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
11633
11634         * aclocal.m4: Massage package names.
11635
11636         * SCons updates.
11637
11638 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11639
11640         * VERSION (PACKAGE_NAME): release 2.5.20
11641
11642         * lily/stem.cc (calc_stem_info): add minimum Y extent of
11643         stem-tremolo.  Fixes: bugs/tremolo-stem-length-beamed
11644
11645         * lily/percent-repeat-engraver.cc (try_music): add measure before
11646         next_moment to future processing moment. Fixes:
11647         percent-repeat-mm-rest.ly
11648         (process_music): don't add moment for 2nd time.
11649
11650         * input/regression/repeat-percent.ly: add mmrests as extra test.
11651
11652         * lily/axis-group-engraver.cc (acknowledge_grob): read
11653         keepAliveInterfaces to decide what to kill.
11654
11655         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add
11656         percent-repeat-interface to keepAliveInterfaces. This fixes
11657         percent-repeat-harakiri.
11658
11659 2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
11660
11661         * SCons updates.
11662
11663 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11664
11665         * config.make.in (TTFTOOL_ENDIAN): rm TFM_PATH
11666
11667         * aclocal.m4: remove --enable-tfm-path configure option
11668
11669         * input/test/ancient-font.ly (lowerStaff): clef name errors.
11670
11671         * scm/backend-library.scm (postscript->png): newline after
11672         finishing command.
11673
11674         * lily/paper-score-scheme.cc (LY_DEFINE): new file.
11675         (LY_DEFINE): ly:paper-score-paper-systems: new function 
11676
11677         * lily/score-scheme.cc (LY_DEFINE): require music argument. 
11678
11679         * lily/score.cc (default_rendering): use Music_output too.
11680
11681         * input/test/chord-names-languages.ly (Module): rename file.
11682
11683         * lily/text-spanner.cc: add bound-padding.
11684
11685         * lily/paper-book.cc (systems): accept Paper_score
11686         iso. Paper_system vector. 
11687
11688         * input/regression/line-arrows.ly: new file.
11689
11690         * lily/paper-score.cc (process): run get_paper_systems() only once.
11691
11692         * lily/line-spanner.cc (line_stencil): add arrows.
11693
11694 2005-04-18  Jonatan Liljedahl  <lijon@kymatica.com>
11695
11696         * lily/line-interface.cc (make_arrow): new function. 
11697         (arrows): idem.
11698
11699 2005-04-18  Mathieu Giraud  <magiraud@free.fr>
11700
11701         * input/test/chord-names-german.ly: update for italian/french
11702         chords.
11703         
11704         * Documentation/user/instrument-notation.itely (Printing chord
11705         names): update.
11706
11707 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11708
11709         * lily/include/paper-score.hh (class Paper_score): remove unused
11710         prototypes.
11711
11712         * lily/book.cc (process): add -COUNT to midi output.
11713
11714         * lily/score.cc (book_rendering): remove outname argument
11715         (book_rendering): return list of Music_outputs. 
11716
11717         * lily/global-context-scheme.cc (LY_DEFINE): remove outname argument.
11718
11719         * lily/book.cc (process): loop over Music_outputs returned from
11720         Score::book_rendering().
11721
11722         * lily/*.cc (width_callback): remove spurious "unused" warnings
11723         for assert (axis==[XY]_AXIS); 
11724
11725         * lily/include/music-output.hh (class Music_output): smobify class.
11726
11727         * lily/include/paper-score.hh (class Paper_score): make members
11728         private.
11729
11730         * lily/performance.cc (process): return #f iso. #<undefined>. This
11731         prevents #<undefined> leaking into GUILE-userspace.
11732
11733 2005-04-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11734
11735         * config.hh.in: remove HAVE_PANGO_FC_FONT_MAP_ADD_DECODER_FIND_FUNC.
11736
11737 2005-04-17  Mathieu Giraud  <magiraud@free.fr>
11738
11739         * scm/chord-name.scm : support for italian and french
11740         chords names.
11741
11742         * scm/chord-ignatzek-names.scm (ignatzek-chord-names): add
11743         a space defined by chordPrefixSpacer when the root name is
11744         direclty followed by a prefix.
11745
11746         * ly/engraver-init.ly : chordPrefixSpacer       
11747         * scm/define-context-properties.scm : chordPrefixSpacer
11748         * ly/property-init.ly : italianChords, frenchChords 
11749
11750 2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
11751
11752         * mf/feta-din.mf: Remove.
11753
11754         * mf/GNUmakefile (fontdir): Bugfix.
11755
11756         * mf/SConstruct: Some updates.
11757
11758         * SConstruct: Require pkg-config.
11759         (test_program): Bugfix for double digit version compares, use
11760         integer (not string-) compare.
11761         Optionally require gs 8.14.
11762
11763         * stepmake/aclocal.m4 (STEPMAKE_PANGO_FT2): Define HAVE_PANGO16 too.
11764
11765         * lily/*: s/ifdef HAVE_*/if have/.
11766
11767         * SConstruct (test_lib): New function.  Update pkg-config and some
11768         other requirements.
11769
11770         * configure.in: Require pkg-config.  Enforce REQUIRE and version for
11771         freetype, pangof2t.
11772
11773 2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
11774
11775         * po/lilypond.pot, ...: Update using bison-CVS.
11776
11777         * python/lilylib.py (make_ps_images): Fixo.
11778
11779 2005-04-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11780
11781         * python/lilylib.py (make_ps_images): typo.
11782
11783         * configure.in (gui_b): make bison optional.
11784
11785         * lily/GNUmakefile (OUT_DIST_FILES): dist parser and lexer.
11786
11787 2005-04-16  Bernard Hurley  <bernard@fong-hurley.org.uk>
11788
11789         * framework-eps.scm: code added so that a macro \betweenLilyPondSystem
11790         with one parameter can be defined in a LaTeX file when processed
11791         by lilypond-book this will be evaluated between the systems of
11792         a multi-system score. The parameter is the number of systems processed.
11793
11794 2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
11795
11796         * python/lilylib.py (make_ps_images): Escape newline.
11797
11798         * Documentation/user/music-glossary.tely: Run
11799         texinfo-all-menus-update.
11800
11801 2005-04-14  Jan Nieuwenhuizen  <janneke@gnu.org>
11802
11803         * scm/lily-library.scm (old-relative-not-used-message)
11804         (version-not-seen-message): Add input-file-name-location to message.
11805
11806         * lily/parser.yy (lilypond): Add token aliases.
11807
11808         * Documentation/user/music-glossary.tely (accidental): Fixes.  Do
11809         not confuse with alteration.
11810         (alteration): Add.
11811
11812 2005-04-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11813
11814         * python/lilylib.py (make_ps_images): use -dEPSCrop
11815
11816         * VERSION (PACKAGE_NAME): release 2.5.19 
11817
11818         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
11819         only put xrefs in info documentation.
11820
11821         * make/ly-rules.make ($(outdir)/%.html.omf): transplant .dvi ->
11822         .pdf rule to tex-rules.make.
11823
11824         * scm/framework-eps.scm (dump-stencils-as-EPSes): remove comments
11825         from -systems.* output.
11826
11827         * stepmake/stepmake/tex-rules.make ($(outdir)/%.pdf): make PDF
11828         directly, remove -$(PAGESIZE) target.
11829
11830         * input/test/embedded-postscript.ly: update.
11831
11832 2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11833
11834         * make/lysdoc-targets.make (local-WWW): remove ps.gz target.
11835
11836         * Documentation/user/changing-defaults.itely (Font selection):
11837         document font-name.
11838
11839         * input/regression/font-name.ly: show Pango fonts for
11840         font-name. Update example. 
11841
11842         * lily/pango-select.cc (properties_to_pango_description): don't
11843         convert symbol font-size to number, but use to lookup.
11844
11845         * python/fontextract.py (write_extracted_fonts): add VMusage 0.
11846
11847         * scm/framework-ps.scm (write-preamble): use (NAME . CONTENTS) and
11848         (NAME . FILE-NAME) tuples for font descriptions. 
11849         (write-preamble): display BeginFont DSC comments.
11850
11851         * python/fontextract.py (write_extracted_fonts): new file. Extract
11852         font resources from a PS file.
11853
11854         * scripts/lilypond-book.py (option_definitions): --psfonts option.
11855         (Compile_error.process_include): do_file returns chunks.
11856
11857         * make/ly-vars.make (DVIPS_FLAGS): don't load .map file.
11858
11859         * make/lysdoc-targets.make: .texi is .PRECIOUS
11860
11861         * scripts/lilypond-book.py (write_if_updated): new function.
11862
11863 2005-04-13  Jan Nieuwenhuizen  <janneke@gnu.org>
11864
11865         * scm/framework-eps.scm (dump-stencils-as-EPSes): Massage messages.
11866
11867 2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11868
11869         * scm/framework-eps.scm (dump-stencils-as-EPSes): no massages.
11870
11871         * input/regression/markup-syntax.ly: remove \score.
11872
11873         * scm/define-markup-commands.scm (draw-circle): add fill argument
11874
11875         * scm/stencil.scm (make-circle-stencil): add fill argument
11876
11877         * ps/music-drawing-routines.ps: add fill argument.
11878
11879         * ly/performer-init.ly: add CueVoice to MIDI too.
11880
11881         * ps/music-drawing-routines.ps: new routine BeginEPSF /
11882         EndEPSF.
11883
11884         * input/regression/markup-eps.ly: new file.
11885
11886         * scm/framework-ps.scm (write-preamble): change order: vars should
11887         be inited before procedures.
11888
11889         * scm/output-ps.scm (glyph-string): break lines. 255 chars is max
11890         for EPS files.
11891
11892         * scm/define-markup-commands.scm (epsfile): add epsfile command.
11893
11894 2005-04-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11895
11896         * configure.in (gui_b): add check for ghostscript 8.15
11897
11898 2005-04-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11899
11900         * lily/hairpin.cc (after_line_breaking): suicide the hairpinlet at
11901         start of line. Fixes cresc-after-newline.ly
11902
11903         * lily/source-file.cc (file_line_column_string): use get_column().
11904
11905 2005-04-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11906
11907         * lily/source-file.cc (get_column): utf-8 support for column numbers.
11908
11909 2005-04-12  Jan Nieuwenhuizen  <janneke@gnu.org>
11910
11911         * lily/*: use message () iso progress_indication () for messages.
11912         Revise/uniformise user messages.
11913
11914         * flower/warn.cc (progress_indication): New function.
11915         (message): Use it.  Fixes newline problems.
11916
11917         * config.make.in (webdir): Sort out install dirs.
11918
11919         * stepmake/stepmake/generic-targets.make (final-install): Bugfix.
11920
11921         * python/lilylib.py (command_name): Bugfix.
11922         (make_ps_images):
11923
11924 2005-04-11  Pedro Kroger  <kroeger@pedrokroeger.net>
11925
11926         * lily/main.cc: --help says what types of backends are availabe
11927
11928 2005-04-11  Jan Nieuwenhuizen  <janneke@gnu.org>
11929
11930         Fix ./VERSION dependency, and without need to reconfigure.
11931
11932         * lily/main.cc (setup_paths): Update.
11933
11934         * stepmake/bin/make-version.py (defs): Add TOPLEVEL_VERSION define..
11935
11936         * config.hh.in (LILYPOND_DATADIR): Remove TOPLEVEL_VERSION.
11937
11938         * scripts/convert-ly.py (\markup): Fix too simplistic regexps.
11939         Add \line for some simplistic cases.
11940
11941         * lily/GNUmakefile (main.o): Add missing dependency on version.hh.
11942
11943 2005-04-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11944
11945         * elisp/lilypond-mode.el (LilyPond-lilypond-command): command used
11946         to compile LY files (useful for adding eg. "-I" args)
11947         (LilyPond-command-alist): use `LilyPond-lilypond-command'. Add a
11948         2Gnome command for gnome backend.
11949         (LilyPond-command-formatgnome): call the 2Gnome command. key
11950         binding: C-c C-g
11951
11952 2005-04-10  Jan Nieuwenhuizen  <janneke@gnu.org>
11953
11954         * Documentation/user/GNUmakefile (lilypond/index.html): Bugfix:
11955         depend on all PNG images.
11956
11957 2005-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
11958
11959         * GNUmakefile.in: Bugfix: also link .map files.
11960
11961 2005-04-09  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11962
11963         * scm/music-functions.scm (music->make-music): generate 
11964         a (make-music ...) sexpr from a music expression.
11965         (display-scheme-music): use guile pretty printer to display the
11966         make-music sexpr.
11967
11968 2005-04-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11969
11970         * ly/engraver-init.ly: reindent.
11971         Add CueVoice.
11972
11973         * scm/music-functions.scm (music-pretty-string): handle moments
11974         too.
11975         (music-pretty-string): only print non-empty lists.
11976         (cue-substitute): create CueVoice context, which has smaller type.
11977
11978         * lily/moment-scheme.cc (LY_DEFINE): new methods
11979         ly:moment-grace-{numerator,denominator}
11980
11981         * lily/context-handle.cc: remove quit() method. 
11982
11983         * lily/font-config.cc (init_fontconfig): be verbose about font path.
11984         (init_fontconfig): success is 0, not !0
11985
11986 2005-04-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11987
11988         * mf/feta-nummer-code.mf (code): add plus glyph.
11989
11990         * lily/tie.cc (print): idem.
11991
11992         * lily/slur.cc (print): don't use thickness property for
11993         slur shape-thickness.
11994
11995         * lily/stencil-scheme.cc (LY_DEFINE): don't reverse the order
11996         while adding stencils.
11997
11998         * scm/define-markup-commands.scm (with-color): with-color markup
11999         command.
12000         (whiteout): new markup command 
12001         (filled-box): new markup command
12002
12003 2005-04-07  Jan Nieuwenhuizen  <janneke@gnu.org>
12004
12005         * Documentation/topdocs/NEWS.tely (Top): Make tex-able.  Handy
12006         test for PDF docs.
12007
12008         * mf/GNUmakefile (lilypond.map): Add PFAEmmentaler,
12009         PFAAybabtu-Regular.  Fixes feta font in PDFs.
12010         
12011         Notes for tetex-3.0 make web:
12012            psclean.map: s/uhv8a/uhvr8a/
12013            config.ps add:
12014                 p +psfonts_t1.map
12015                 p +psclean.map
12016                 p +typeface.map
12017
12018 2005-04-06  Nicolas Sceaux  <nicolas.sceaux@free.fr>
12019
12020         * scm/music-functions.scm (music-pretty-string): fix bug with
12021         string argument.
12022
12023 2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
12024
12025         * stepmake/bin/add-html-footer.py (i18n): Bugfix.
12026
12027 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12028
12029         * scripts/lilypond-book.py (Lilypond_snippet.__init__): 
12030         only process options if they're there.
12031         (write_file_map): add version-seen? to snippet-map.ly
12032
12033 2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
12034
12035         * scripts/lilypond-book.py (split_options): Bugfix.  Small code
12036         formatting cleanups.
12037
12038         * mf/GNUmakefile: Rewrite $addprefix, $addsuffix using % short-forms.
12039         Add PFAaybabtu.pfa dependency on aybabtu.subfonts.
12040
12041 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12042
12043         * scm/framework-ps.scm (ps-font-command): don't hash, just use
12044         name directly.
12045
12046         * lily/main.cc (setup_paths): either add mf/out to search path or 
12047         fonts/{otf,type1,etc}
12048         
12049         * lily/font-config.cc (init_fontconfig): either add mf/out to
12050         FontConfig or fonts/{otf,type1,etc}
12051
12052         * GNUmakefile.in: don't put mf/ link in share/ dir.
12053
12054         * lily/staff-spacing.cc: move same-direction-correction to
12055         note-spacing-interface
12056
12057         * scm/lily.scm (lilypond-main): use variable argument count for
12058         exception handler.
12059
12060         * lily/font-config.cc (init_fontconfig): add operator pacification
12061         message.
12062
12063         * mf/aybabtu.pe.in (i): generate PFAAybabtu.pfa
12064
12065         * buildscripts/gen-emmentaler-scripts.py (i): generate
12066         PFAEmmentaler as well.
12067
12068         * scm/framework-ps.scm (munge-lily-font-name): new function
12069         (write-preamble): hack: insert PFA equivalent of CFF into
12070         .PS. This makes LilyPond output printable on normal PS printers
12071         again.
12072
12073         * buildscripts/gen-emmentaler-scripts.py (i): generate
12074         PFAEmmentaler.pfa aswell.
12075
12076 2005-04-06  John Williams <williams@tni.com>  
12077         
12078         * scripts/lilypond-book.py: refactor the compose_ly procedure.
12079         
12080 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12081
12082         * scm/page-layout.scm (default-page-make-stencil): always combine
12083         the header stencil, even if empty. This prevents the body text to
12084         reach up to the margins.
12085
12086         * po/rw.po (Module): new file, for Kinyarwanda.
12087
12088         * input/test/spacing-optical.ly (Module): new file.
12089
12090         * lily/staff-spacing.cc: add same-direction-correction
12091
12092 2005-04-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12093
12094         * Documentation/user/introduction.itely (Engraving): Comment-out
12095         non-existent file.
12096
12097 2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12098
12099         * scm/define-grob-properties.scm (all-user-grob-properties): add
12100         same-direction-correction
12101
12102         * VERSION: release 2.5.18
12103
12104 2005-04-05  Jan Nieuwenhuizen  <janneke@gnu.org>
12105
12106         * lily/grob.cc (mark_smob): Check pscore->layout_ before
12107         dereferencing.  Fixes make web.
12108
12109         * lily/midi-stream.cc: Handle unwritable midi file.  Include
12110         errno.h.
12111
12112         * Documentation/user/: Fix links.
12113
12114 2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12115
12116         * lily/text-interface.cc (Module): rename from text-item.cc
12117
12118         * input/regression/apply-output.ly (texidoc): function naming fix.
12119
12120         * lily/time-signature-performer.cc (derived_mark): new function.
12121
12122         * lily/lily-parser-scheme.cc:  print mapped file name for progress
12123
12124         * scripts/lilypond-book.py (find_linestarts): new function.
12125         (find_toplevel_snippets): keep track of line numbers.
12126
12127         * lily/key-performer.cc (try_music): remove FIXME warning, gobble
12128         all key changes.
12129
12130         * ly/declarations-init.ly (partCombineListener): use
12131         ignoreBarChecks. Fixes: warn-partcombine-barcheck.ly
12132
12133         * lily/bar-check-iterator.cc (process): ignoreBarChecks property.
12134
12135 2005-04-04  Jan Nieuwenhuizen  <janneke@gnu.org>
12136
12137         * lily/text-item.cc: Fix link.
12138
12139         * Documentation/user/changing-defaults.itely (Changing defaults):
12140         Fix programs reference links.
12141
12142         * Documentation/user/music-glossary.tely: Convert to utf-8.
12143
12144 2005-04-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12145
12146         * make/lilypond-vars.make: remove TEXMF from variables.
12147         remove DEB_BUILD pk font variables.
12148         remove GUILE_LOAD_PATH
12149         remove TeX memory vars.
12150
12151 2005-04-04  Werner Lemberg  <wl@gnu.org>
12152
12153         * lilypond/scm-option.cc (ly_option_usage): Add final newline.
12154
12155 2005-04-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12156
12157         * ps/lilyponddefs.ps: remove reencode-font
12158
12159         * lily/simple-spacer.cc (add_columns): also compare
12160         directly. Column rank doesn't distinguish between broken and
12161         unbroken columns. This fixes large spaces before time sig changes.
12162
12163         * Documentation/user/point-and-click.itely: document ly:set-option.
12164
12165         * lily/grob.cc (get_uncached_stencil): only set grob-cause if
12166         point_and_click_global is set.
12167
12168         * lily/scm-option.cc (LY_DEFINE): add point-and-click
12169         ly:set-option argument.
12170
12171 2005-04-03  Jan Nieuwenhuizen  <janneke@gnu.org>
12172
12173         * GNUmakefile.in: Include symlinks in webball.
12174
12175         * Documentation/user/GNUmakefile (source-links): Add symlinks to
12176         source dir for split and non-split manuals.
12177
12178         * Documentation/user/*y: Fix @uref/@inputfile links for
12179         split/non-split HTML documents.
12180
12181         * Documentation/user/GNUmakefile (local-WWW): Do not generate
12182         .ps.gz.
12183         
12184 2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
12185
12186         * GNUmakefile.in: Add newline.
12187
12188 2005-04-01  Erlend Aasland  <erlenda@gmail.com>
12189
12190         * tex/lilyponddefs.tex: use color instead of xcolor
12191         * scm/output-tex.scm: minor editing
12192
12193 2005-04-02  Nicolas Sceaux  <nicolas.sceaux@free.fr>
12194
12195         * scm/music-functions.scm (display-scheme-music): pretty printer
12196         for music expressions.
12197
12198 2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
12199
12200         * buildscripts/install-info-html.sh (index_file): Fix link.
12201
12202 2005-04-01  Jan Nieuwenhuizen  <janneke@gnu.org>
12203
12204         * input/test/dynamic-extra.ly (piuf): Use utf-8 iso TeX accent.
12205
12206         * Documentation/index.html.in: Add size estimates with some big pages.
12207
12208         * Documentation/user/tutorial.itely (Running LilyPond for the
12209         first time): Add/replace some @rglos links.  TODO: add more
12210         @rglos links in tutorial, test non-intrusiveness (.css).
12211
12212         * stepmake/bin/add-html-footer.py (do_file): Remove info's
12213         annoying's indication of referencing external document.
12214
12215         * Documentation/user/GNUmakefile: Split version of glossary too.
12216         * Documentation/user/macros.itexi (@rglos): Have makeinfo produce
12217         links, not only for html.
12218
12219         * Documentation/user/introduction.itely: Fix some links for other
12220         than html, do not use `here' as link name.
12221
12222 2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
12223
12224         * scm/documentation-generate.scm (string-append): Fix @usermanref,
12225         @glossaryref.
12226
12227 2005-03-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12228
12229         * scm/page-layout.scm (default-page-make-stencil): only add header
12230         if existing and not empty. Fixes spurious programming error.
12231
12232         * lily/span-bar.cc (print): don't make rounded edges for spanbars.
12233
12234 2005-03-31  Erlend Aasland  <erlenda@gmail.com>
12235
12236         * scm/output-tex.scm: implement {re,}setcolor
12237         * tex/lilyponddefs.tex: use color package
12238
12239 2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
12240
12241         * GNUmakefile.in (local-WWW-post): Restore .htaccess and .html
12242         additions to website.
12243
12244         * Documentation/user/lilypond.tely: Remove reference to ps.gz.
12245
12246         * Documentation/user/macros.itexi: Fix @usermanref html links in
12247         split documents: use @inforef.
12248
12249 2005-03-30  Graham Percival  <gperlist@shaw.ca>
12250
12251         * Documentation/user/programming-interface.itely: minor fix.
12252
12253         * Documentation/user/advanced-notation.itely: added info to
12254         Metronome markings.
12255
12256 2005-03-30  Jan Nieuwenhuizen  <janneke@gnu.org>
12257
12258         * scm/output-lib.scm (make-stencil-boxer): Junk code duplication,
12259         use box-stencil.  Remove y-padding argument.
12260         (make-stencil-circler): New function.
12261
12262         * buildscripts/lilypond-words.py (F): 
12263         * elisp/SConscript (a): 
12264         * elisp/GNUmakefile (LILYPOND_WORDS_DEPENDS):
12265         * vim/SConscript (a): 
12266         * vim/GNUmakefile (LILYPOND_WORDS_DEPENDS): Update.
12267
12268         * lily/general-scheme.cc: Build fix.
12269
12270         * scm/markup.scm:
12271         * input/regression/markup-scheme.ly: 
12272         * input/regression/markup-syntax.ly: Drop 'new-' from name.
12273
12274         * scm/stencil.scm (make-circle-stencil): New function.
12275
12276         * scm/define-markup-commands.scm (draw-circle): Use it.  New
12277         name (was cicle).  Update callers.
12278         (circle): New markup command, similar to box.
12279
12280         * scm/stencil.scm (circle-stencil): New function.
12281
12282 2005-03-29  David Jedlinsky  <lilypond@ipnh.com>
12283
12284         * configure.in: Detect libutf8/wchar.h variant.
12285
12286         * stepmake/aclocal.m4: Modify shared size test.
12287
12288 2005-03-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12289
12290         * make/lilypond.fedora.spec.in (Group): remove texmf profile stuff.
12291
12292 2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12293
12294         * scripts/convert-ly.py (conv): add stencil-aligned-to! rule.
12295         
12296         * VERSION (PACKAGE_NAME):  release 2.5.17
12297
12298 2005-03-29  Jan Nieuwenhuizen  <janneke@gnu.org>
12299
12300         * scm/backend-library.scm (postscript->png): Fix comment and png
12301         message.
12302
12303         * GNUmakefile.in (link-tree): Fix locales.
12304
12305 2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12306
12307         * lily/stencil-scheme.cc (LY_DEFINE): change to
12308         ly:stencil-aligned-to, non mutating.
12309
12310         * scm/safe-lily.scm (lambda): remove ly:stencil-set-extent!
12311
12312         * lily/stencil-scheme.cc: remove ly:stencil-set-extent!
12313
12314         * lily/quote-iterator.cc (derived_mark): call
12315         Music_wrapper_iterator::derived_mark() too.
12316
12317         * lily/grace-engraver.cc (derived_mark): change signature, add
12318         const.
12319
12320 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12321
12322         * SConstruct (symlink): 
12323         * GNUmakefile.in (link-tree): Add scripts to prefix.
12324
12325         * lily/general-scheme.cc (ly:effective-prefix): New function.
12326
12327         * scm/backend-library.scm (postscript->png): Use it.
12328
12329 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12330
12331         * lily/paper-score.cc (process): don't delete grobs after
12332         producing stencils. 
12333
12334         * scm/part-combiner.scm (determine-split-list): switch off
12335         debugging info.
12336
12337         * scm/backend-library.scm (postscript->png): explicitly use ps2png.py
12338         if available.
12339
12340         * scm/define-context-properties.scm
12341         (all-user-translation-properties): add stringNumberOrientations.
12342
12343         * lily/new-fingering-engraver.cc (position_scripts): make generic,
12344         so fingering and string-numbers are separately controlled.
12345
12346 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12347
12348         * stepmake/aclocal.m4: Fix shared size test: add missing comma, do
12349         not use debugging.
12350
12351 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12352
12353         * GNUmakefile.in (local-WWW-post): remove UTF8 .htaccess.
12354
12355         * config.hh.in: add HAVE_FONTCONFIG.
12356
12357         * Documentation/user/instrument-notation.itely (String number
12358         indications): new node.
12359
12360         * input/regression/new-markup-syntax.ly (texidoc): add circle.
12361
12362         * lily/new-fingering-engraver.cc (add_string): new function. 
12363         (acknowledge_grob): accept string-number-event as well.
12364
12365         * scm/define-markup-commands.scm (circle): new markup command.
12366
12367         * scm/output-lib.scm (print-circled-text-callback): new function.
12368
12369         * lily/GNUmakefile: move ifeq after include stepmake.make.
12370
12371 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12372
12373         * config.make.in (HAVE_LIBKPATHSEA_SO):
12374         * stepmake/aclocal.m4: Also subst HAVE_LIBKPATHSEA_SO.
12375
12376         * lily/GNUmakefile (MODULE_LDFLAGS): Only if not HAVE_KPATHSEA_SO,
12377         add KPATHSEA_LIBS.
12378
12379         * debian/watch: 
12380         * debian/control: Update.
12381
12382 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12383
12384         * input/test/title-markup.ly (spaceTest): remove.
12385
12386         * input/test/embedded-tex.ly (Module): remove.
12387
12388         * input/test/music-box.ly: use 'name property, not ly:music-name.
12389
12390         * lily/GNUmakefile (MODULE_LDFLAGS): add KPATHSEA_LIBS.
12391
12392         * stepmake/aclocal.m4: STEPMAKE_FONTCONFIG: add.
12393
12394 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12395
12396         * Documentation/topdocs/INSTALL.texi (Top): Remove information
12397         about xdeltas.  Add information about CVS.
12398
12399         * scm/lily.scm (lilypond-main): Fix invocation of handler,
12400         gracefully handle failed files.
12401
12402         * lily/GNUmakefile (MODULE_LDFLAGS): Remove KPATHSEA_LIBS.
12403
12404         * Documentation/topdocs/INSTALL.texi (Top): Whitespace and other
12405         small fixes.
12406
12407         * scm/framework-tex.scm (convert-to-ps): Proper option spacing.
12408         No unnecessarily specific i18n messages.  Remove stray `1'.
12409
12410 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12411
12412         * buildscripts/lys-to-tely.py (strip_extension): add utf-8
12413         documentencoding
12414
12415         * scm/documentation-lib.scm (texi-file-head): set utf-8
12416         documentencoding.
12417
12418         * ly/chord-modifiers-init.ly (whiteTriangleMarkup): use the greek
12419         Delta, not the Symbol one. 
12420
12421         * mf/GNUmakefile ($(outdir)/lilypond.map): add -Regular to Aybabtu
12422         for the .map file.
12423
12424         * Documentation/topdocs/INSTALL.texi (Top): add running
12425         requirement as compilation requirement.
12426
12427 2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12428
12429         * buildscripts/mutopia-index.py (headertext): add h1 header and
12430         utf-8 charset meta field.
12431
12432         * input/GNUmakefile: prune example list.
12433
12434         * scm/framework-tex.scm (convert-to-ps): add -ofoo.ps to dvips
12435         options.
12436
12437         * lily/slur-scoring.cc (get_base_attachments): only look at stem
12438         extent for visible stems.
12439
12440         * lily/grob.cc (mark_smob): mark \layout block from Grob::mark_smob().
12441
12442 2005-03-27  Jan Nieuwenhuizen  <janneke@gnu.org>
12443
12444         * Documentation/topdocs/INSTALL.texi (Top): Updates.
12445
12446         * scripts/convert-ly.py: Python 2.2 compatibility (thanks Mats).
12447
12448 2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12449
12450         * lily/slur-scoring.cc (get_base_attachments): robustness. Don't
12451         pass inf/nan into slur scoring.
12452
12453         * ly/titling-init.ly (oddHeaderMarkup): don't show page no. on 1st
12454         page.
12455
12456         * scripts/abc2ly.py (dump_voices): use alphabet().
12457
12458 2005-03-27  Jeff Smith <whydoubt@yahoo.com>
12459         
12460         * mf/GNUmakefile (depth): use $(FONTFORGE). 
12461
12462 2005-03-27 Matthias Neeracher <neeracher@mac.com>
12463         
12464         * flower/include/virtual-methods.hh: simplify. Patch by
12465
12466 2005-03-25  John Williams <williams@tni.com>  
12467
12468         * scripts/lilypond-book.py (main): add png for HTML too, guess
12469         only if necessary. 
12470
12471 2005-03-25  Graham Percival  <gperlist@shaw.ca>
12472
12473         * Documentation/topdocs/INSTALL.texi: now recommends
12474         lexer-gcc-3.1.sh for gcc 3.1.1 or higher.
12475
12476         * Documentation/user/basic-notation.itely,
12477         Documentation/user/tutoria.itely: warn about
12478         only one (phrasing) slur at once.
12479
12480 2005-03-24  Pedro Kroger  <kroeger@pedrokroeger.net>
12481
12482         * ly/music-functions-init.ly (removeWithTag): fixed to return "music".
12483
12484 2005-03-23  Graham Percival  <gperlist@shaw.ca>
12485
12486         * Documentation/user/basic-notation.itely: fixed info about
12487         ending a (de)cresc.
12488
12489         * Documentation/user/lilypond-book.itely: fixed
12490         lilypond-book filter example and warned about not doing
12491         --filter and --process at the same time.
12492
12493 2005-03-23  Mats Bengtsson  <mabe@s3.kth.se>
12494
12495         * lily/parser.yy (bass_number),
12496         Documentation/user/instrument-notation.itely (Figured bass): 
12497         Add the possibility to use text markup in figured bass. 
12498
12499 2005-03-19  Graham Percival  <gperlist@shaw.ca>
12500
12501         * Documentation/user/global.itely: added info about naming
12502         identifiers and breakbefore.
12503
12504         * Documentation/user/invoking.itely: added info about batch
12505         processing files with convert-ly, removed references to TeX
12506         in the jail section.
12507
12508         * Documentation/user/examples.itely: possibly fixed piano
12509         dynamics.
12510
12511         * Documentation/user/advanced-notation.itely: added info
12512         about removing other types of Staff.
12513
12514         * Documentation/user/instrument-notation.itely: possibly
12515         fixed piano staff line switch.
12516
12517         * Documentation/user/changing-defaults.itely: added info
12518         about using normal font in titles.
12519
12520 2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12521
12522         * VERSION (PATCH_LEVEL): release 2.5.16
12523
12524         * make/ly-vars.make (DVIPS_FLAGS): include lilypond.map path
12525         explicitly.
12526
12527 2005-03-18  Jan Nieuwenhuizen  <janneke@gnu.org>
12528
12529         * scm/framework-tex.scm (convert-to-dvi): Barf if NAME contains
12530         whitespace.
12531
12532         * python/lilylib.py (make_ps_images):
12533         * scm/backend-library.scm (postscript->pdf, postscript->png):
12534         Quote file name.  Use format rather than string-append juggling.
12535
12536 2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12537
12538         * python/lilylib.py (make_ps_images): add x to -g argument. 
12539
12540         * lily/key-performer.cc (create_audio_elements): don't use
12541         scm_eval_string. Check for minor 3rd directly.
12542   
12543         * input/mutopia/J.S.Bach/baerenreiter-sarabande.ly
12544         (sarabandeCelloGlobal): key is D minor, not F major.
12545
12546 2005-03-17  Jan Nieuwenhuizen  <janneke@gnu.org>
12547
12548         Fix truncated --png output (Peter Danenberg).
12549         
12550         * python/lilylib.py (make_ps_images):
12551         * scripts/ps2png.py (copyright): Grok --papersize option.
12552
12553         * scm/backend-library.scm (postscript->png): Add parameter
12554         PAPERSIZE.  Update callers.
12555
12556         * scm/output-gnome.scm (music-font?): Bugfix: use "Emmentaler".
12557         Fixes symbol placement.
12558
12559         * lily/spanner.cc: 
12560         * lily/stencil.cc: Use "libc-extension.hh" (WAS:
12561         <libc-extension.hh>).
12562
12563 2005-03-16  Jan Nieuwenhuizen  <janneke@gnu.org>
12564
12565         * Nitpick run.
12566
12567         * buildscripts/fixcc.py: Update.
12568
12569         Builddir run fixes.
12570
12571         * HACKING (datadir): Add VERSION.
12572
12573         * GNUmakefile.in (linktree): Bugfix: outconfdirs are one dir
12574         higher up.
12575
12576 2005-03-15  Werner Lemberg  <wl@gnu.org>
12577
12578         * mf/feta-klef.mf (draw_gclef): Move z10' slightly so that the
12579         diagonal stem doesn't become thinner.
12580
12581 2005-03-15  Jan Nieuwenhuizen  <janneke@gnu.org>
12582
12583         * buildscripts/fixcc.py: Fixes (Werner).
12584
12585 2005-03-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12586
12587         * mf/GNUmakefile ($(outdir)/lilypond.map): capitalize
12588         Emmentaler/Aybabtu.
12589
12590         * GNUmakefile.in: fix lilypond-words path.
12591
12592         * po/tr.po: update to 2.3.21
12593
12594         * lily/new-fingering-engraver.cc (position_scripts): take priority
12595         from head position.
12596
12597         * input/regression/finger-chords-order.ly (texidoc): new file.
12598
12599 2005-03-14  Jan Nieuwenhuizen  <janneke@gnu.org>
12600
12601         * make/ly-rules.make: 
12602         * stepmake/aclocal.m4: 
12603         * Documentation/user/GNUmakefile: Remove old makeinfo compatibility.
12604
12605         * buildscripts/fixcc.py (rules): Leave space after operator.
12606
12607 2005-03-14  Werner Lemberg  <wl@gnu.org>
12608
12609         * mf/feta-klef.mf (draw_gclef): Replace `simple_serif' for
12610         top of the glyph with smooth curve.
12611
12612 2005-03-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12613
12614         * Documentation/user/global.itely (Page layout): remove
12615         printpagenumber.
12616
12617 2005-03-13  Jürgen Reuter  <reuter@ipd.uka.de>
12618
12619         * input/regression/mensural-ligatures.ly: new file (with examples
12620         compiled by Pal Benko).
12621
12622         * Documentation/user/instrument-notation.itely: Bugfix: yet some
12623         other "custodes.*-u0" -> "custodes.*.u0" renaming victims in
12624         musicglyph access.  Many small beautifications in ancient
12625         examples.
12626
12627         * input/test/divisiones.ly: fixed indentation; small
12628         beautifications
12629
12630         * ly/engraver-init.ly: added FIXME comment
12631
12632         * scripts/lilypond-book.py,
12633         Documentation/user/lilypond-book.itely: added music fragment
12634         option "packed" to lilypond-book
12635
12636         * Documentation/user/instrument-notation.itely: Bugfix: added
12637         missing LedgerLineSpanner color setting in several places.  Added
12638         music fragment option "packed" to VaticanaContext example.
12639
12640 2005-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12641
12642         * scm/define-grobs.scm (all-grob-descriptions): switch off
12643         Hyphen_spanner::set_spacing_rods 
12644
12645         * lily/lyric-hyphen.cc (print): add padding between syllable and
12646         hyphen.
12647         (print): shorten hyphen in tight situations (determine using
12648         minimum-length)
12649
12650         * scm/paper.scm (layout-set-staff-size): increase blotdiameter to
12651         0.4pt.
12652
12653 2005-03-13  Jan Nieuwenhuizen  <janneke@gnu.org>
12654
12655         * ly/titling-init.ly (bookTitleMarkup): Refinements.
12656
12657         * input/regression/page-breaks.ly (paper): Set not raggedlastbottom,
12658         header/footer markings for regression-test.
12659
12660         * scm/backend-library.scm (output-scopes, header-to-file): Move
12661         from framework-tex.scm.
12662
12663         * scm/framework-ps.scm (output-framework)
12664         (output-preview-framework):
12665         * scm/framework-eps.scm (output-classic-framework)
12666         (output-framework): Use it.  Fixes collated files.
12667
12668 2005-03-12  Jan Nieuwenhuizen  <janneke@gnu.org>
12669
12670         * input/sakura-sakura.ly: 
12671         * input/xiao-haizi-guai-guai.ly: Add from Debian package (Anthony).
12672
12673         * buildscripts/guile-gnome.sh: Update.
12674
12675         * mf/GNUmakefile (aybabtu.otf): Add dependency on .pe.
12676
12677         * mf/aybabtu.pe.in: Capitalize Aybabtu.
12678
12679 2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12680
12681         * lily/separating-group-spanner.cc (find_rods): oops. Fix the real
12682         culprit: always exit the loop if we find a rod, even if it has
12683         distance < 0. 
12684
12685         * lily/ledger-line-spanner.cc (set_spacing_rods): rewrite to O(n)
12686         algorithm.
12687
12688         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
12689         $(outdir)/%.svg $(outdir)/%.pfa): add --simplify.
12690
12691         * scm/output-svg.scm (dashed-line): new  function body.
12692         
12693         * GNUmakefile.in: create .htaccess.
12694
12695 2005-03-11  Jan Nieuwenhuizen  <janneke@gnu.org>
12696
12697         * Documentation/topdocs/NEWS.tely (Top): Fix text example.
12698
12699 2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12700
12701         * VERSION (PACKAGE_NAME): release 2.5.15
12702
12703         * scm/output-{pdf,pdftex,sketch}.scm (Module): remove bitrotted files.
12704
12705         * scm/framework-svg.scm (output-framework): put scaling in
12706         document header. Apply scaling only once.
12707         (output-framework): dump page size in px, not mm. 
12708
12709         * scm/lily-library.scm (modified-font-metric-font-scaling): rename
12710         from font-size.
12711
12712         * lily/paper-outputter-scheme.cc (LY_DEFINE):
12713         ly:outputter-output-scheme, new function.
12714
12715         * scm/output-svg.scm (pango-description-to-svg-font): new function
12716
12717 2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12718
12719         * Documentation/user/GNUmakefile (deep-symlinks): remove outimages
12720         target.
12721
12722         * input/typography-demo.ly: new file.
12723
12724 2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
12725
12726         * Documentation/user/global.itely (File structure): Add markup blocks
12727         to toplevel expressions.
12728         (Multiple movements, Creating titles): Add markup blocks.
12729
12730         * lily/stencil-scheme.cc: Use "libc-extension.hh" (WAS:
12731         <libc-extension.hh>).
12732
12733         * lily/accidental.cc (accurate_boxes): Compile fix: 1.51 was broken.
12734
12735         * flower
12736         * lily
12737         * kpath-guile: Nitpick run: buildscripts/fixcc.py.
12738
12739 2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12740
12741         * lily/accidental.cc: special bboxes for natural. 
12742
12743         * mf/feta-toevallig.mf: make stems heavier.
12744
12745         * lily/dynamic-text-spanner.cc (print): add bound padding for edge
12746         texts as well.
12747
12748         * mf/feta-klef.mf: revise. 
12749
12750         * mf/feta-schrift.mf: make thinning of accent less pronounced.
12751
12752         * mf/feta-klef.mf: add rounded curve at top. 
12753         make thinnib a little heavier.
12754
12755 2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
12756
12757         * lily/parser.yy (book_body): Oops, allow \markup in \book too.
12758
12759         * buildscripts/fixcc.py: New file.
12760
12761         * input/regression/utf8.ly: Update Debian font description.
12762
12763 2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
12764
12765         * stepmake/aclocal.m4: Fix test.
12766
12767 2005-03-09  Graham Percival  <gperlist@shaw.ca>
12768
12769         * Documentation/user/invoking.itely: added Sebastino Vigna's
12770         docs for the --jail option.
12771
12772 2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12773
12774         * lily/stem.cc (print): only produce stemlets if there are no
12775         noteheads on this stem.
12776
12777         * lily/note-spacing.cc (stem_dir_correction): robustness fix:
12778         don't crash on stemlet (visible stem without heads).
12779
12780         * scm/define-grobs.scm (all-grob-descriptions): junk LeftEdge for
12781         unbroken situations. 
12782
12783         * scm/output-lib.scm (center-invisible): new function.
12784
12785         * lily/spacing-loose-columns.cc (set_loose_columns): use spacing
12786         wishes to determine loose column space.
12787
12788         * lily/font-config.cc (init_fontconfig): add
12789         fonts/{otf,type1,cff}  to path.
12790
12791         * lily/main.cc (setup_paths): add fonts/{otf,svg,tfm,cff} to path
12792
12793         * mf/GNUmakefile (Module): install all fonts under otf/
12794
12795         * scm/framework-ps.scm (Module): read fonts from fonts/extension,
12796         replace /fonts/otf/ by /ps/ 
12797
12798         
12799 2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
12800
12801         * lily/paper-book.cc (classic_output): Reinstate header_0_ hack.
12802
12803         * lily/book.cc (process): Oops, add score_.header_.
12804
12805         * lily/paper-book.cc: Fold hearders, score and texts into scores_.
12806
12807         * lily/parser.yy: Handle toplevel and book texts as score.
12808
12809         * scm/page-layout.scm (default-page-make-stencil):
12810         Bugfix: (page-properties rename.
12811
12812         * scm/backend-library.scm (ly:system): Typo.
12813
12814 2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12815
12816         * stepmake/stepmake/executable-targets.make (installexe): don't
12817         strip installed executables
12818
12819         * lily/font-select.cc (get_font_by_design_size): revert
12820         pango_description_string as well.
12821
12822         * lily/system.cc (set_loose_columns): put loose column just left
12823         of next column.
12824
12825         * lily/include/group-interface.hh (extract_grob_array): rename
12826         from Pointer_group_interface__extract_grobs
12827
12828         * input/regression/ledger-line-minimum.ly (texidoc): new file.
12829
12830         * lily/ledger-line-spanner.cc (set_spacing_rods): new
12831         function. Keep ledgered note heads at a minimum distance.
12832         Introduce minimum-length-fraction
12833         (print): introduce length-fraction property.
12834
12835 2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12836
12837         * tex/GNUmakefile: remove latin1.enc rules.
12838
12839 2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
12840
12841         * scm/titling.scm: Typo.
12842
12843         * input/regression/score-text.ly: Really add.
12844
12845         * lily/score.cc: Bugfixes for SCM header_ and texts_ members.
12846
12847 2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12848
12849         * lily/open-type-font-scheme.cc:  new file.
12850
12851 2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
12852
12853         * scm/titling.scm (layout-extract-page-properties): Rename from
12854         page-properties.  Update callers.
12855
12856         * lily/lexer.ll (Lily_lexer):
12857         * lily/parser.yy: Junk lyric_markup state.
12858
12859         * Documentation/topdocs/NEWS.tely (Top): Mention markup text feature.
12860
12861         * scripts/lilypond-book.py (PREAMBLE_LY): toplevel-music-handler:
12862         Add texts parameter.
12863
12864 2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
12865
12866         * lily/lexer.ll (lyric_markup): New mode.
12867         (Lily_lexer::push_lyric_markup_state): New method.
12868         (MARKUPCOMMAND): Markup during lyric mode returns LYRIC_MARKUP.
12869
12870         * lily/parser.yy (book_body):
12871         (toplevel_expression): Grok \markup texts.
12872
12873         * lily/score-scheme.cc (ly:music-scorify): 
12874         * scm/lily-library.scm (collect-music-for-book): Take texts
12875         parameter.
12876
12877         * lily/score.cc (texts_): New member.
12878
12879         * lily/paper-book.cc (systems): Format score texts.
12880
12881         * score-text.ly: New file.
12882
12883         * ttftool/SConscript:
12884         * kpath-guile/SConscript: New file.
12885
12886         * lily/SConscript:
12887         * SConstruct: Update.
12888
12889 2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12890
12891         * VERSION (PACKAGE_NAME): release 2.5.14
12892
12893 2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
12894
12895         * lily/main.cc: Add dummy xgettext markers.
12896
12897 2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12898
12899         * make/lilypond.fedora.spec.in (Requires): scrap kpathsea/tex
12900         requirements
12901
12902         * stepmake/aclocal.m4: check dynamic link, by checking if kpathsea
12903         executable is < 40k
12904
12905         * lily/main.cc (setup_paths): remove tfm1 tfm2 tfm3 include path
12906         hack.
12907
12908 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12909
12910         * flower/libc-extension.cc:
12911         * flower/include/libc-extension.hh: [Open]BSD simply cast
12912         cookie/funopen declarations.
12913
12914         * stepmake/aclocal.m4: Check for libkpathsea.so.
12915
12916         * kpath-guile/kpath.c (ly_kpathsea_expand_variable): Use
12917         dl_kpse_find_file.
12918
12919 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12920
12921         * kpath-guile/kpath.c (open_library): dlopen libkpathsea.so
12922         (open_library): alternative for static library.
12923
12924 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12925
12926         * configure.in: Set TTFTOOL_ENDIAN iso global CFLAGS.
12927
12928         * ttftool/GNUmakefile (MODULE_CFLAGS): Add $(TTFTOOL_ENDIAN).
12929
12930         Drop run-time dependency on teTeX.
12931
12932         * lily/kpath.cc (initialize_kpathsea): dlopen libkpathsea.
12933
12934         * stepmake/aclocal.m4 (STEPMAKE_KPATHSEA): Do not include
12935         KPATHSEA_LIBS in LIBS.
12936         (STEPMAKE_DLOPEN): New function.
12937
12938         * lily/font-config.cc (init_fontconfig): Use dir for directory,
12939         not path.
12940
12941         * flower/file-path.cc (directories): Rename from paths, as this
12942         return an array of directories (a single path).
12943
12944 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12945
12946         * lily/GNUmakefile (MODULE_LIBS): link with kpath-guile
12947
12948         * lily/all-font-metrics.cc (kpathsea_find_file): wrapper around
12949         new ly:kpathsea-find-file
12950
12951         * kpath-guile/kpath.c: new file. Put kpath bindings in lib.
12952
12953         * kpath-guile/GNUmakefile: new file
12954
12955         * buildscripts/gen-emmentaler-scripts.py (i): generate
12956         emmentaler-X.fontname as well.
12957
12958         * buildscripts/ps-embed-cff.py: new script
12959
12960         * scm/lily-library.scm: remove ps-embed-cff.
12961
12962         * scm/framework-ps.scm (write-preamble): don't use kpathsea for
12963         font loading. 
12964
12965         * scm/font.scm (add-music-fonts): load dynamics/numbers through
12966         fontconfig as well.
12967
12968         * lily/font-config.cc (init_fontconfig): add cff/ too.
12969
12970         * ly/generate-embedded-cff.ly: capitalize.
12971
12972         * lily/pango-select.cc (select_pango_font): use ::find_pango_font,
12973         so as to register the pango font.
12974
12975         * lily/font-config.cc (init_fontconfig): add
12976         prefix/{otf,type1,mf/out} to fontconfig path.
12977
12978         * lily/main.cc: only look at one prefix directory, LILYPONDPREFIX
12979         overrides all. 
12980
12981         * configure.in (gui_b): remove ec mftrace check
12982
12983         * config.hh.in: use lilypond-Major.Minor as data directory.
12984
12985         * scm/framework-ps.scm (dump-page): use output-units for landscape.
12986
12987         * buildscripts/gen-emmentaler-scripts.py (i): lower case file
12988         name.
12989
12990 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12991
12992         * lily/main.cc (do_chroot_jail): Small cleanups.  Avoid constant
12993         error messages.
12994
12995         * flower/libc-extension.cc:
12996         * flower/include/libc-extension.hh: [Open]BSD fixes for
12997         cookie/funopen declarations.
12998
12999 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13000
13001         * buildscripts/gen-emmentaler-scripts.py (outdir): capitalize
13002         emmentaler.
13003
13004         * lily/score-engraver.cc (initialize): remove check for ecrm10 /
13005         lcrm10.
13006
13007         * scm/define-markup-commands.scm (fontsize): new markup
13008         command. Also set baseline-skip
13009
13010 2005-03-06 Sebastiano Vigna <vigna@dsi.unimi.it>.
13011         
13012         * lily/main.cc (do_chroot_jail): paranoia security for webserver
13013         use.
13014
13015 2005-03-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13016
13017         * stepmake/bin/add-html-footer.py (do_file): make wiki link optional.
13018
13019         * lily/pdf.cc: remove PDF related files
13020
13021 2005-03-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13022
13023         * ly/deutsch.ly: add quarter tones, patch by Arno Waschk.
13024         <hamamatsu@gmx.de>
13025
13026 2005-03-05  Graham Percival  <gperlist@shaw.ca>
13027
13028         * Documentation/user/advanced-notation.itely: first draft
13029         of reorg done.
13030
13031         * Documentation/user/global.itely: fixed (sub)section
13032         bits of MIDI.
13033
13034 2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
13035
13036         * cygwin/mknetrel (extras): Bufix (Bertalan).
13037
13038         * Documentation/user/basic-notation.itely (Chords): @ref fix.
13039         * Documentation/user/instrument-notation.itely (Introducing chord
13040         names): Compile fix: must have unique name.
13041
13042 2005-03-02  Graham Percival  <gperlist@shaw.ca>
13043
13044         * Documentation/user/instrument-notation.itely: reorg.
13045
13046 2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
13047
13048         * scm/output-gnome.scm:
13049         * scm/output-svg.scm: Fix font scaling.
13050
13051 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13052
13053         * ly/titling-init.ly (tagline): Use Engraving.  Add comment about
13054         what link to use best.
13055
13056         * Documentation/user/instrument-notation.itely (Ancient accidentals): 
13057         * Documentation/user/tutorial.itely (Automatic and manual beams):
13058         Fix @ref.
13059
13060         * lily/tweak-registration.cc (replace_grob_tweak): New function.
13061         * lily/tweak-registration-scheme.cc (LY_DEFINE): Wrap it.
13062         * scm/framework-gnome.scm (tweak): Use it.
13063
13064 2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13065
13066         * Documentation/topdocs/NEWS.tely (Top): elucidate GS problem.
13067
13068         * scm/output-ps.scm (white-text): reinstate white-text
13069
13070 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13071
13072         * scm/output-ps.scm (offset-add): Remove.
13073
13074         * scm/lily-library.scm (offset-flip-y): New function.
13075         * scm/framework-gnome.scm (tweak): Use it.
13076
13077         * scm/output-gnome.scm (grob-cause): Add parameter.
13078
13079         * scm/lily.scm (ly:all-stencil-expressions): Add url-link.
13080         * scm/output-ps.scm (url-link): Move.
13081         (white-text): Warn user about brokenness.
13082
13083         * Documentation/topdocs/NEWS.tely: Be more accurate and respectful
13084         wrt ghostscript.
13085
13086 2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13087
13088         * lily/slash-repeat-engraver.cc (try_music): always make slashes
13089         if body length smaller than measure length.
13090
13091         * scm/define-markup-commands.scm (with-url): oops. use Y extent
13092         for Y.
13093
13094         * ly/titling-init.ly (tagline): put default tagline in \paper
13095
13096 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13097
13098         * lily/kpath.cc: 
13099         * lily/pdf.cc (Pdf_file): Use more generic error messages.
13100
13101         * scm/lily-library.scm (version-not-seen-message): New function.
13102         * ly/init.ly: Use it.
13103
13104         * scm/page-layout.scm (ly:optimal-page-breaks): Display page
13105         breaks as progess.
13106
13107         * scripts/lilypond-book.py (do_process_cmd): Do not lump
13108         whitespace with l10n message.
13109
13110         * scm/framework-tex.scm (convert-to-ps):
13111         (convert-to-dvi): Do not use overly specific l10n messages.
13112
13113         * ly/titling-init.ly (bookTitleMarkup): Add baseline skips from 2.4.
13114
13115         * tex/GNUmakefile $(outdir)/latin1.enc: Build fix:
13116         merge stderr with stdout.  
13117
13118 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13119
13120         * flower/libc-extension.cc: Tested BSD compile fix (Matthias
13121         Neeracher).
13122
13123 2005-02-29  Graham Percival  <gperlist@shaw.ca>
13124
13125         * Documentation/user/instrument-notation.teily: moved
13126         \arpeggio to Basic.
13127
13128         * Documentation/user/advanced-notation.itely: Articulation to
13129         Basic, a bunch of stuff from Basic moved to Advanced.
13130
13131         * Documentation/user/basic.itely: swapped various sections,
13132         reorganized Basic.
13133
13134 2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
13135
13136         * flower/memory-stream.cc: 
13137         * flower/libc-extension.cc: Remove obsolete #undefs.
13138
13139         * flower/include/libc-extension.hh: Bugfix for BSD, place #ifdef
13140         more carefully.
13141
13142 2005-02-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13143
13144         * make/lilypond.fedora.spec.in (Requires): add GS 8.15 as
13145         dependency.
13146
13147         * VERSION (PACKAGE_NAME): release 2.5.13
13148
13149         * GNUmakefile.in (web-ext): don't ship ps.gz
13150
13151         * tex/GNUmakefile ($(outdir)/latin1.enc): redirect stderr to
13152         stdout
13153
13154 2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
13155
13156         * lily/general-scheme.cc (LY_DEFINE): Compile fix for systems
13157         without libintl.  Now it compiles too.
13158
13159 2005-02-28  Graham Percival  <gperlist@shaw.ca>
13160
13161         * Documentation/user/basic-notation.itely,
13162         instument-notation.itely, advanced-notation.itely:
13163         split up contents of notation.itely.
13164
13165         * Documentation/user/notation.itely: file removed.
13166
13167         * Documentation/user/invoking.itely, converters.itely:
13168         moved convert-ly info to invoking.itely.
13169
13170         * Documentation/user/global.itely, changing-defaults.itely,
13171         sound-output.itexi: moved global settings, file layout, and
13172         sound into global.itely.
13173
13174         * Documentation/user/sound-output.itexi: file removed.
13175
13176         * Documentation/user/lilypond.tely: removed links to
13177         notation.itely and sound.itely.
13178
13179 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13180
13181         * scm/output-ps.scm (grob-cause): only do mark_URI if non-empty.
13182
13183         * scm/framework-ps.scm (write-preamble): remove pdf-viewer code.
13184  
13185         * THANKS: add sponsor.
13186
13187         * scm/define-markup-commands.scm (with-url): new markup command.
13188
13189         * scm/page-layout.scm (TAGLINE): add www.lilypond.org with URL to
13190         tagline.
13191         
13192         * scm/output-tex.scm (url-link): stub.
13193
13194         * scm/output-ps.scm (url-link): new function.
13195
13196         * lily/lily-parser-scheme.cc (LY_DEFINE): deprecate
13197         ly:set-point-and-click
13198
13199 2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
13200
13201         * ps/music-drawing-routines.ps (mark_file_line): Switch Action
13202         based on pdf-viewer setting.
13203
13204         * scm/framework-ps.scm (write-preamble): Find and set preferred
13205         pdf-viewer.
13206
13207 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13208
13209         * Documentation/user/point-and-click.itely: update for PDF point &
13210         click.
13211
13212         * scripts/lilypond-pdfpc-helper.py: new file. Invoke different
13213         editors based on EDITOR setting.
13214
13215 2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
13216
13217         * scm/*: Oops, more grand 2005 replace bits.
13218
13219 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13220
13221         * ps/music-drawing-routines.ps: new routine: insert PDF mark
13222
13223         * scm/output-ps.scm (grob-cause): point & click support for
13224         PostScript
13225
13226 2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13227
13228         * lily/input-scheme.cc (LY_DEFINE): rename to
13229         ly:input-file-line-column
13230
13231 2005-02-26  Graham Percival  <gperlist@shaw.ca>
13232
13233         * Documentation/user/examples.itely: small fix from Steve Doonan.
13234
13235         * Documentation/user/scheme-tutorial.itely: small fix from Steve Doonan.
13236
13237         * THANKS: added Yuval Harel.
13238
13239         * Documentation/user/{various}: inserted two spaces after a period.
13240
13241         * Documentation/user/lilypond.tely: added framework for reorg.
13242
13243         * Documentation/user/basic-notation.itely, instrument-notation.itely,
13244         advanced-notation.itely, global.itely: new files, placeholder for
13245         future reorg.
13246
13247 2005-02-26 Yuval Harel  <yuvalh@hotpop.com>
13248
13249         * Documentation/user/notation.itely: revamped Polyphony section
13250         
13251 2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13252
13253         * Documentation/user/lilypond-book.itely (Music fragment options):
13254         doc fontload.
13255
13256         * Documentation/user/changing-defaults.itely (Text encoding): add
13257         fontload option to utf8 include
13258
13259         * scripts/lilypond-book.py (compose_ly): add fontload option
13260
13261         * scm/framework-eps.scm (dump-stencils-as-EPSes): add
13262         force-eps-font-include option.
13263
13264         * ly/chord-modifiers-init.ly (blackTriangleMarkup): reinstate
13265         black triangle
13266
13267         * Documentation/user/invoking.itely (Editor support): remove
13268         lilypond-latex section.
13269
13270         * scripts/lilypond-latex.py (Module): remove script.
13271
13272         * cygwin/lily-wins.py (stat): write to .lylog, so as not to
13273         overwrite .log. 
13274
13275         * lily/main.cc: remove -m, --no-layout
13276
13277         * flower/include/libc-extension.hh: add ALIAS_FILE_TO_FILECOOKIE
13278         to define. We don't want to override fprintf everywhere.
13279
13280 2005-02-26  Jan Nieuwenhuizen  <janneke@gnu.org>
13281
13282         * cygwin/lilypond.hint: 
13283         * cygwin/README.in: Update dependencies.
13284
13285         * stepmake/aclocal.m4 (STEPMAKE_PANGO, STEPMAKE_PANGO_FT2):
13286         Bugfix: do not pollute CPPFLAGS, LIBS.
13287
13288         * cygwin/mknetrel (extras): Cross compile fixes.
13289
13290         * ttftool/util.c: 
13291         * ttftool/ttfps.c: 
13292         * ttftool/ps.c: #include libc-extension.hh
13293
13294         * flower/include/libc-extension.hh:
13295         * flower/libc-extension.cc (fopencookie)[!HAVE_FOPENCOOKIE]: Add
13296         wrapper using funopen.
13297         (fopencookie, handle_cookie_io_fclose, handle_cookie_io_fprintf,
13298         handle_cookie_io_fprintf): Add wrappers catching Memory_out_stream.
13299
13300         * config.hh.in:
13301         * configure.in (AC_CHECK_FUNCS): Add fopencookie, funopen.
13302         (AC_CHECK_HEADERS): Add libio.h
13303
13304         * scripts/convert-ly.py: Uniformize, internationalize.
13305         (2.5.2): Remove fatal encoding rule.
13306         (2.5.13): Handle latin1 encoding gracefully.
13307
13308 2005-02-23  Jan Nieuwenhuizen  <janneke@gnu.org>
13309
13310         * HACKING: Fix line breaks.
13311
13312 2005-02-23  Werner Lemberg  <wl@gnu.org>
13313
13314         * mf/graycx.mf, mf/graylj.mf: Removed.  Any decent TeX distribution
13315         contains those two files.
13316
13317 2005-02-21  Werner Lemberg  <wl@gnu.org>
13318
13319         * mf/feta-nummer-code.mf ("Numeral 5"): Include intersection point
13320         to improve overlap removal process.
13321
13322         * mf/feta-slag.mf (draw_trillelement): Add parameter to control
13323         left and right ending.  This ensures better overlapping.
13324         Update all callers.
13325         ("lineprall"): Don't use draw_gridline to get better overlapping.
13326
13327 2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13328
13329         * scm/lily-library.scm (ps-embed-cff): add \n after EndResource
13330
13331         * Documentation/topdocs/NEWS.tely (Top): oops.
13332
13333 2005-02-21  Pedro Kroger  <kroeger@pedrokroeger.net>
13334
13335         * HACKING: new file.
13336
13337         * input/regression/utf8.ly (portuguese): added a portuguese example
13338         to show latin1 accents.
13339
13340 2005-02-21  Pal Benko  <benkop@freestart.hu>
13341
13342         * lily/mensural-ligature-engraver.cc:
13343         * lily/mensural-ligature.cc:
13344         * lily/include/mensural-ligature.hh: new algorithm implemented
13345
13346         * scm/define-grob-properties.scm: join-left killed (add-join may
13347         be used); join-left-amount changed to join-right-amount
13348
13349 2005-02-21  Graham Percival  <gperlist@shaw.ca>
13350
13351         * Documentation/user/notation.itely: small but urgent fix.
13352
13353 2005-02-21  Jürgen Reuter  <reuter@ipd.uka.de>
13354
13355         * lily/duration-scheme.cc: bugfix: correct parameters to
13356         SCM_ASSERT_TYPE.
13357
13358         * THANKS: added Pal.
13359
13360         * Documentation/user/notation.itely: bugfix: unTeXified
13361         $\\backslash$.  Bugfix: yet another glyph renaming victim:
13362         "timesig.*x/y" -> "timesig.*xy".
13363
13364 2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13365         
13366         * VERSION (PACKAGE_NAME): release 2.5.12
13367
13368 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13369
13370         * ly/engraver-init.ly: set tieWaitForNote to #t by default
13371
13372         * configure.in (gui_b): bump GUILE requirement to 1.6.5 
13373
13374         * Documentation/topdocs/NEWS.tely: add inputfileref macro.
13375
13376         * scm/framework-ps.scm (supplies-or-needs): uniq font name list.
13377
13378 2005-02-20  Jan Nieuwenhuizen  <janneke@gnu.org>
13379
13380         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly: recode
13381         latin1..utf-8.
13382
13383         * input/regression/stanza-number.ly:
13384         * input/regression/utf8.ly (hebrew): Use addlyrics.  Update.
13385
13386         * lily/tie-engraver.cc (acknowledge_grob): Compile fix.
13387
13388 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13389
13390         * Documentation/topdocs/NEWS.tely (Top): only mention 2.5
13391         NEWS. Refer to website for older news.  
13392
13393         * stepmake/bin/add-html-footer.py (i18n): don't strip .PNG /
13394         .HTML. This should be done for specific servers only.
13395
13396         * Documentation/topdocs/NEWS.tely (Top): move to .tely. Add some
13397         .ly image examples.
13398
13399         * scm/define-grobs.scm (all-grob-descriptions): put ledger lines
13400         in layer 0 too.
13401
13402         * scm/define-context-properties.scm
13403         (all-user-translation-properties): add tieWaitForNote
13404
13405         * scm/define-grobs.scm (all-grob-descriptions): add
13406         Tie_column::before_line_breaking
13407
13408         * lily/tie.cc (get_column_rank): new function
13409
13410         * lily/tie-column.cc (before_line_breaking): new function.
13411         (werner_directions): take into account ties that start on
13412         different columns.  
13413
13414         * lily/score-engraver.cc (set_columns): move add_column() so we
13415         have column rank available.
13416
13417         * lily/tie.cc (get_column_rank): new function.
13418
13419         * input/regression/utf8.ly (japanese): add japanese lyrics.
13420
13421         * lily/pfb.cc (LY_DEFINE): ly:ttf->pfa, new function.
13422
13423         * THANKS: add Steve D
13424
13425         * ttftool/*.c: add TTF -> Type42 conversion library. Based on
13426         Public Domain work by Juliusz Chroboczek <jch@pps.jussieu.fr>
13427
13428 2005-02-20  Tatsuya Ono  <tats_ono@infoseek.jp>
13429
13430         * mf/parmesan-heads.mf: "0harmonic" -> "s0harmonic"
13431         to show harmonic notes
13432         * scm/define-markup-commands.scm: in \markup-by-number
13433         "dots-dot" -> "dots.dot" to show dotted notes
13434
13435 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13436
13437         * flower/include/memory-stream.hh (class Memory_out_stream): new file.
13438
13439         * flower/memory-stream.cc (writer): new file.
13440
13441         * configure.in: add endian test.
13442
13443 2005-02-19  Jürgen Reuter  <reuter@ipd.uka.de>
13444
13445         * Documentation/user/examples.itely: small
13446         simplification/beautification
13447
13448         * Documentation/user/notation.ietly: bugfix: fixed many artefacts
13449         from the "x-y-z"->"x.y.z" renaming of glyphs throughout the whole
13450         notation manual.
13451
13452         * lily/mensural-ligature.cc: bugfix: another few victims of the
13453         "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
13454
13455         * ly/gregorian-init.ly: commit some experimental code for hi-level
13456         ligature input language lying around here for several months.
13457
13458         * lily/mensural-ligature-engraver.cc: bugfix: another victim of
13459         the "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
13460
13461         * lily/vaticana-ligature-engraver.cc: bugfix: another few
13462         "x-y-z"->"x.y.s-z" fixes.
13463
13464 2005-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13465
13466         * scm/framework-pdf.scm (scm): new file
13467
13468         * lily/include/pdf.hh (class Pdf_file): new file.
13469
13470         * lily/pdf.cc (write_trailer): new file.
13471
13472 2005-02-18  Erlend Aasland  <erlenda@gmail.com>
13473
13474         * input/regression/color.ly: new file
13475
13476         * lily/stencil.cc (interpret_stencil_expression):
13477         when a color expression is encountered: save current color,
13478         process the rest of the expression, and restore previous color.
13479
13480         * lily/system.cc (get_line): check all grobs for color property and
13481         prepare the stencil scheme expressions for further processing.
13482         Fix layer-loop.
13483
13484         * scm/define-grob-properties.scm: introduce the color property.
13485
13486         * scm/output-lib.scm: color helper functions.
13487
13488         * scm/output-ps.scm: introduce setcolor/resetcolor.
13489
13490 2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
13491
13492         * ly/*.ly, input/regression/*.ly: Added missing \version
13493         statements in some files.
13494
13495 2005-02-15  Graham Percival  <gperlist@shaw.ca>
13496
13497         * Documentation/user/notation.itely: minor editing.
13498
13499         * Documentation/user/converters.itely: updated convert-ly bugs.
13500
13501         * Documentation/user/lilypond-book.itely: add info about using
13502         feta characters in latex.
13503
13504 2005-02-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13505
13506         * scripts/convert-ly.py: new slur dash patch by Bertalan Fodor.
13507
13508 2005-02-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13509
13510         * scm/define-grob-properties.scm (all-user-grob-properties):
13511         removed 'dashed property.
13512
13513 2005-02-13  Nicolas Sceaux  <nicolas.sceaux@free.fr>
13514
13515         * scm/lily.scm (define-safe-public): new macro for defining
13516         variables that can be used in --safe mode. Use it in *.scm
13517         instead of manually setting safe-objects in safe-lily.scm.
13518
13519 2005-02-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13520         
13521         * lily/slur.cc: Slur-dash patch by Bertalan.
13522
13523         * ly/engraver-init.ly (EasyNotation): glyph name dash -> period.
13524
13525         * stepmake/bin/add-html-footer.py (do_file): do i18n only once. 
13526
13527 2005-02-10  Jan Nieuwenhuizen  <janneke@gnu.org>
13528
13529         * stepmake/aclocal.m4: teTeX-3.0 inimf fix.  Comment-out.
13530
13531 2005-02-09  Jan Nieuwenhuizen  <janneke@gnu.org>
13532
13533         * mf/GNUmakefile: teTeX-3.0 install fix.
13534
13535         * Cygwin patch from Bertalan.
13536
13537         * stepmake/stepmake/metafont-rules.make: Remove bashism.
13538
13539 2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
13540
13541         * GNUmakefile.in: 
13542         * SConstruct (symlink): teTeX-3.0 build fix: add map symlink.
13543
13544         * tex/GNUmakefile: teTeX-3.0 fix: install .enc in fonts/enc.  Add
13545         2.0.x compatibility.
13546
13547 2005-02-08  Werner Lemberg  <wl@gnu.org>
13548
13549         * mf/feta-din-code.mf: Format; clean up code.
13550         Replace `---' with `--' plus explicit path directions.
13551         (linethickness#, stafflinethickness#): Remove.
13552         ("dynamic f"): Replace `draw' with `draw_rounded_block'.
13553         ("dynamic s"): Improve shape.
13554         ("dynamic p"): Improve shape.
13555         Replace `draw' with better outline approximation.
13556         ("dynamic r"): Improve shape.
13557         Don't call `fill' and `draw' at the same time.
13558
13559 2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
13560
13561         * SConstruct (symlink):
13562         * GNUmakefile.in ($(builddir)/share/lilypond-force): teTeX-3.0
13563         build fix: add enc symlink.
13564
13565         * lily/general-scheme.cc: Compile fixes: include wchar.h, string.h.
13566
13567         Support for DESTDIR besides prefix=/foo
13568
13569         * vim/GNUmakefile (local-install): Use $(INSTALL) -d iso mkdir.
13570
13571         * stepmake/stepmake/*.make:
13572         * */GNUmakefile:
13573         * GNUmakefile.in: Prepend $(DESTDIR) to installation directory.
13574
13575         * config.make.in (prefix): Remove broken $(DESTDIR) hack.
13576
13577         * stepmake/aclocal.m4: Use %0.f iso %d to quiet gawk < 3.1.4 and
13578         mawk in fontforge (date) test.
13579
13580 2005-02-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13581
13582         * scm/font.scm (make-century-schoolbook-tree): add NCS as
13583         font-family=roman. Add Luxi Sans as sans
13584
13585 2005-02-07  Graham Percival  <gperlist@shaw.ca>
13586
13587         * Documentation/user/notation.itely: add warning about
13588         percent repeats and Voice contexts.
13589
13590         * Documentation/user/lilypond-book.itely: clarified the
13591         necessity of dvips -u arguments.
13592
13593 2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
13594
13595         * THANKS: Added a bunch of bug hunters.
13596
13597 2005-02-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13598
13599         * scm/framework-ps.scm (output-preview-framework): bugfix.
13600
13601         * ly/chord-modifiers-init.ly (ignatzekExceptionMusic): use unicode
13602         o/ for chord modifier..
13603
13604         * lily/general-scheme.cc (LY_DEFINE): new function ly:wide-char->utf-8.
13605
13606         * lily/drum-note-performer.cc:  remove unused (thanks Michael
13607         Welsh Duggan). 
13608
13609 2005-02-06  Jan Nieuwenhuizen  <janneke@gnu.org>
13610
13611         * Documentation/user/changing-defaults.itely (Text encoding): Clarify.
13612
13613         * ly/titling-init.ly: Do not also print intstrument in header on
13614         first page.  Do not print page number on first and only page.
13615
13616 2005-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13617
13618         * input/regression/*.ly: remove old-relative everywhere
13619
13620         * lily/music-sequence.cc (simultaneous_relative_callback): do
13621         what-if analysis on copy, not on original. Fixes old-relative
13622         compatibility.
13623
13624         * scm/backend-library.scm (postscript->png): space before
13625         --verbose.
13626         
13627 2005-02-05  Werner Lemberg  <wl@gnu.org>
13628
13629         * mf/feta-autometric.mf (fet_beginchar): Check whether `feta_group'
13630         is defined.
13631
13632         * mf/feta-alphabet.mf: Define `staffsize#'.
13633         Include `feta-params.mf'.
13634         s/staffheight/design_size/.
13635
13636         * mf/feta-alphabet??.mf: s/staffheight/design_size/.
13637
13638         * mf/feta-alphabet26.mf: Fix a serious bug (design size off by 8pt).
13639
13640         * mf/feta-nummer-code.mf: Reformatted.
13641         (draw_six): Use outline intersection to avoid a self-intersecting
13642         path.
13643         ("Numeral comma"): Fix serious outline glitches.  This slightly
13644         changes the glyph shape.
13645         ("Numeral dash"): Use `draw_rounded_block'.
13646         ("Numeral dot"): Use `drawdot'.
13647         ("Numeral 1"): Assure identical tangent directions for the
13648         intersection points of paths.  The glyph shape improvement is only
13649         visible at very high magnifications.
13650         ("Numeral 2"): Use `solve' macro to make the lower right part of
13651         the glyph outline touch the x axis exactly.  This changes the
13652         glyph shape.
13653         Minor fixes for better overlap removal support.
13654         ("Numeral 4"): Make lefter corner `rounder'.
13655         ("Numeral 5"): Assure identical tangent directions for the
13656         intersection points of paths.  This improves the glyph shape at
13657         high magnifications.
13658         ("Numeral 7"): Use `solve' macro to make the upper right part of
13659         the glyph outline touch the metrics box exactly.  This changes the
13660         glyph shape.
13661         Avoid corner in the upper left part of the glyph (causing a minor
13662         shape change).
13663
13664         * mf/feta-ital-*.mf: Removed.  Unused.
13665
13666 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13667
13668         * VERSION (PATCH_LEVEL): release 2.5.11
13669
13670         * input/regression/fill-line-test.ly: new file.
13671
13672         * buildscripts/gen-emmentaler-scripts.py (i): insert dash in
13673         emmentaler name, eg. emmentaler-23. 
13674
13675 2005-02-04  Christian Hitz  <chhitz@gmx.net>
13676
13677         * scm/scm/define-markup-commands.scm (fill-line): rework for better
13678         alignment with centered texts
13679
13680         * scm/stencil.scm (stack-stencils-padding-list): new function, takes a
13681         list of paddings
13682
13683 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13684
13685         * mf/GNUmakefile ($(outdir)/lilypond.map): add aybabtu to .map file.
13686
13687         * lily/note-column.cc (translate_rests): call flush_extent_cache()
13688         of parents when translating rests. Fixes: c-chord-rest.ly 
13689
13690         * lily/include/dimension-cache.hh (struct Dimension_cache): add
13691         dimension_callback_ member.
13692
13693         * lily/grob.cc (flush_extent_cache): new function. Force recompute
13694         of extents.
13695
13696 2005-02-04  Jan Nieuwenhuizen  <janneke@gnu.org>
13697
13698         * all but lily/*: The grand 2004/2005 replace.
13699
13700 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13701
13702         * lily/*: add space after ,  
13703
13704         * scm/music-functions.scm (has-request-chord): don't use
13705         ly:music-name anywhere. Fixes <<\\>> notation. 
13706
13707         * scm/define-markup-commands.scm (box): use font-size for
13708         padding. Fixes boxed-rehearsal-marks.ly
13709
13710         * lily/parser.yy (assignment_id): allow LYRICS_STRING as
13711         identifier definition too, so foo = \lyrics { ...   } bar = #1
13712         doesn't complain about "bar" being LYRICS_STRING.
13713
13714         * lily/paper-def.cc (find_pango_font): new routine; Store
13715         pango_fonts in hash tab too. This is necessary for retrieving
13716         Pango_fonts::physical_font_tab() later on.
13717  
13718         * lily/pango-font.cc (pango_item_string_stencil): bugfix: don't
13719         crash if psname is null.
13720
13721         * lily/lily-guile.cc (ly_hash2alist): new function
13722
13723         * Documentation/user/changing-defaults.itely (Text encoding):
13724         rewrite. 
13725
13726         * lily/pango-font.cc (physical_font_tab): new member. Store PSname
13727         -> font_filename mapping.
13728
13729         * lily/pango-font-scheme.cc (LY_DEFINE): new file. New function
13730         ly_pango_font_physical_fonts
13731
13732         * scm/framework-ps.scm (supplies-or-needs): extract names from
13733         physical Pango_fonts.
13734
13735         * utf8.ly: new file.
13736
13737 2005-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13738
13739         * Documentation/user/changing-defaults.itely (Page layout): add
13740         doco about systemSeparatorMarkup.
13741
13742         * scm/page-layout.scm (default-page-make-stencil): add-to-page
13743         function.
13744         (default-page-make-stencil): insert system separators.
13745
13746         * scm/define-markup-commands.scm (hcenter): add
13747         (beam): add.
13748
13749 2005-02-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13750
13751         * scm/output-ps.scm (ez-ball): reinstate ez notation.
13752
13753 2005-02-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13754
13755         * lily/main.cc: Spell backend consistently.  Sort options.
13756
13757 2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13758
13759         * scripts/lilypond-book.py (Module): revert @include.
13760         
13761 2005-01-31  Jan Nieuwenhuizen  <janneke@gnu.org>
13762
13763         * scripts/lilypond-book.py: Resurrect HTML links to .ly source.
13764         Bugfix: @include .tex (not .texi).  Small cleanups.
13765
13766         * stepmake/bin/add-html-footer.py (i18n): New function.
13767
13768 2005-01-31  Werner Lemberg  <wl@gnu.org>
13769
13770         * mf/feta-nummer.mf: Removed.  Unused.
13771
13772 2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13773
13774         * lily/ : 2004 -> 2005 s&r
13775
13776         * scm/file-cache.scm (cached-file-contents): add file. Read each
13777         file only once.
13778
13779         * scm/font.scm (add-pango-fonts): change order. Medium weight is
13780         now default.
13781
13782         * VERSION: release 2.5.10
13783         
13784         * mf/GNUmakefile (INSTALLATION_OUT_FILES4): install cff.ps files.
13785
13786         * make/ly-rules.make ($(outdir)/%.texi): detect new EOF marker.
13787
13788         * scm/framework-ps.scm (dump-stencil-as-EPS): robustness: ensure
13789         that both X and Y extents of bbox are non-nil.
13790
13791 2005-01-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13792
13793         * scm/chord-name.scm (alteration->text-accidental-markup): change
13794         - to . 
13795
13796         * scm/output-ps.scm (utf8-string): add utf8-string for completeness.
13797
13798         * scm/framework-ps.scm (dump-stencil-as-EPS): new function
13799
13800         * Documentation/user/invoking.itely (Invoking lilypond): add note
13801         about EPS backend.
13802
13803         * scm/framework-eps.scm: new file: create per-system/per-page EPS
13804         files for inclusion in lilypond-book document.
13805
13806         * input/tutorial/lbook-latex-test.tex: rename from lilbook.tex
13807
13808         * input/tutorial/lbook-texi-test.texi: new file.
13809
13810         * scm/safe-lily.scm (safe-objects): add
13811         {begin,end}-of-line-(in)?visible as safe.
13812  
13813 2005-01-30  Graham Percival  <gperlist@shaw.ca>
13814
13815         * Documentation/user/changing-defaults.itely: fixed example
13816         of (dynamics).
13817
13818 2005-01-29  Graham Percival  <gperlist@shaw.ca>
13819
13820         * lily/main.cc: fix info about -o=FILE.
13821
13822 2005-01-29  Werner Lemberg  <wl@gnu.org>
13823
13824         * mf/feta-toevallig.mf ("Natural"): Completely changed the
13825         construction to assure smooth transition from straight to curved
13826         lines.
13827
13828 2005-01-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13829
13830         * lily/stencil.cc (moved_to_edge): don't halt on adding empty
13831         stencils.
13832
13833         * ps/lilyponddefs.ps: add start-page, start-system doesn't
13834         translate to top of page. Fixes alignment problems of
13835         lilypond-generated EPS files.
13836
13837 2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13838
13839         * scm/part-combiner.scm (analyse-spanner-states): trigger on
13840         crescendo-end as well, since Decrescendo maybe ended with Stop
13841         Crescendo.). Fixes: partcombine-diminuendo.ly
13842
13843         * scm/script.scm (default-script-alist): swap portato symbols.
13844
13845         * lily/instrument-name-engraver.cc (acknowledge_grob): typo.
13846
13847         * lily/paper-outputter-scheme.cc (LY_DEFINE):
13848         ly:outputter-port. New function.
13849
13850         * scm/framework-ps.scm (output-classic-framework): dump a
13851         -systems.texi too
13852         (output-classic-framework): dump multiple systems on an "infinite"
13853         page EPS including fonts. 
13854
13855         * scripts/lilypond-book.py (Lilypond_snippet.ly_is_outdated): use
13856         .eps files for both texi and tex formats. Use PNG coming from
13857         lilypond.
13858         
13859 2005-01-28  Graham Percival  <gperlist@shaw.ca>
13860
13861         * Docuemntation/user/invoking.itely: fix info about -o=FILE.
13862
13863         * scripts/lilypond-latex.py: fix info about -o=FILE.
13864
13865 2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13866
13867         * ly/generate-embedded-cff.ly: write .cff.ps files.
13868
13869         * mf/GNUmakefile ($(outdir)/lilypond.map): add .cff.ps to .map file.
13870
13871         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
13872         $(outdir)/%.svg $(outdir)/%.pfa): remove --simplify
13873
13874 2005-01-28  Jan Nieuwenhuizen  <janneke@gnu.org>
13875
13876         * lily/include/guile-compatibility.hh (SCM_VECTOR_P): Compile fix.
13877
13878 2005-01-28  Werner Lemberg  <wl@gnu.org>
13879
13880         * mf/feta-macros.mf (soft_start_penstroke, soft_end_penstroke): New
13881         macros.
13882         (draw_bulb): Improved.
13883
13884         * mf/feta-pendaal.mf ("Pedal asterisk"): Remove workaround for
13885         metapost bug.
13886         (draw_pedal_P): Use soft_end_penstroke.
13887         (draw_pedal_d): Use soft_start_penstroke.
13888
13889         * mf/feta-schrift.mf ("Trill (`tr')"): Remove redundant point in
13890         path.
13891         ("Varied Coda"): Move some points to avoid fontforge warnings.  This
13892         doesn't change the glyph shape.
13893
13894         * mf/feta-accordion.mf ("accOldEE"): Draw glyph differently (without
13895         changing the shape) to avoid fontforge warnings.
13896
13897         * mf/feta-klef.mf (draw_tab_T, draw_tab_A, draw_tab_B): Use
13898         soft_end_penstroke and fix glyph shape.
13899
13900 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13901
13902         * lily/*.cc: Scheme deprecation of SCM_VECTOR_* 
13903
13904 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13905
13906         * scm/define-markup-commands.scm (line): filter out empty stencils
13907         from line command.
13908
13909         * lily/stencil-scheme.cc (LY_DEFINE): only allow finite real
13910         amount.
13911
13912 2005-01-27  Graham Percival  <gperlist@shaw.ca>
13913
13914         * Documentation/user/notation.itely: added info about what
13915         \voiceFoo does.  Also rewrote warning about marks at
13916         a line break.
13917
13918         * Documentation/user/changing-defaults.itely: added info
13919         about putting dynamics in parenthesis and brackets.
13920
13921 2005-01-27  Werner Lemberg  <wl@gnu.org>
13922
13923         * mf/feta-schrift.mf ("Trill (`tr')"): Fix typo.
13924
13925 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13926
13927         * mf/feta-schrift.mf: reverse u and d portato. Fixes:
13928         portato-direction.ly
13929
13930         * lily/beam.cc (consider_auto_knees): add beam height to
13931         threshold. Fixes: knee-multiple-beam.ly
13932
13933         * lily/instrument-name-engraver.cc (acknowledge_grob): also ignore
13934         pedal line spanners. Fixes: instrument-center-pedal.ly
13935
13936         * lily/auto-beam-engraver.cc (acknowledge_grob): stop beam
13937         if encountering barline. Fixes: auto-beam-repeat.ly
13938
13939 2005-01-26  Werner Lemberg  <wl@gnu.org>
13940
13941         * mf/feta-slag.mf (draw_trillelement): Fix shape to get clean
13942         overlapping.
13943
13944         * mf/feta-toevallig.mf (draw_meta_sharp): Fix shape to avoid curves
13945         with inflections for the 1/2 sharp glyph.
13946
13947         * mf/feta-schrift.mf ("Trill (`tr')"): Fix start position of
13948         connection between `t' and `r'.
13949         Unify bulb with the rest of `r' to avoid grazing outlines which
13950         confuses the overlap removal algorithm of fontforge.
13951
13952         * mf/feta-bolletjes.mf (draw_slash): Fix shape to avoid curves with
13953         inflections.
13954         (draw_cross): Fix shape to have uniform thickness in corners.
13955
13956         * mf/feta-pendaal.mf (draw_pedal_P): Break shape into smaller pieces
13957         to avoid an uneven number of self-intersections; this confuses
13958         fontforge.
13959         Fix a slight bug in the shape at left bottom (which is visible only
13960         at high magnifications).
13961         `Center' the stem horizontally to avoid overlapping.
13962
13963 2005-01-24  Werner Lemberg  <wl@gnu.org>
13964
13965         * mf/feta-autometric.mf (fet_beginfont): Set font_coding_scheme
13966         to `asis'.
13967         (fet_begingroup): Save group name in string `feta_group'.
13968         (fet_endgroup): Updated.
13969         (fet_beginchar): Emit `glyph_name' special for mf2pt1.
13970
13971         * mf/feta-bolletjes.mf: s/p/pat/ for paths.
13972
13973         * mf/feta-pendaal.mf ("Pedal asterisk"): Add workaround for bug
13974         in metapost.
13975
13976 2005-01-24  Graham Percival  <gperlist@shaw.ca>
13977
13978         * Documentation/user/notation.itely: really minor editing.
13979
13980 2005-01-22  Graham Percival  <gperlist@shaw.ca>
13981
13982         * Documentation/user/examples.itely: minor editing.
13983
13984         * Documentation/user/changing-defaults.itely: minor editing.
13985
13986         * Documentation/user/notation.itely: clarified info on polyphony
13987         and \addlyrics.
13988
13989 2005-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
13990
13991         * scm/output-gnome.scm: 
13992         * scm/output-svg.scm:
13993         * scm/lily-library.scm (font-name-style): Update font name
13994         kludging for fontconfig use.
13995
13996 2005-01-20  Erlend Aasland  <erlenda@gmail.com>
13997
13998         * scm/define-markup-commands.scm: Document right-align and
13999         larger markup commands. Remove "TODO" from the topmost comment
14000         "each markup function should have a doc string." More consistent
14001         use of new-lines.
14002
14003 2005-01-22  Graham Percival  <gperlist@shaw.ca>
14004
14005         * Documentation/user/changing-defaults: removed info about
14006         copyright symbol, since it's likely to change soon.
14007         Added info about betweensystemspace.
14008
14009         * Documentation/user/notation.itely: minor fixes.
14010
14011         * Documentation/user/lilypond.tely,
14012         Documentation/user/music-glossary.tely: changed copyright
14013         date to 2005 instead of 2004.
14014
14015         * input/test/volta-chord-names.ly: added old example back.
14016
14017 2005-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14018
14019         * mf/feta-beugel.mf: use design size 20 (not 15).
14020
14021         * mf/aybabtu.pe.in: scale brace fonts to design sizes.
14022         change name to aybabtu completely
14023
14024 2005-01-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14025
14026         * buildscripts/gen-emmentaler-scripts.py (outdir): add
14027         design_size to fontname
14028
14029 2005-01-19  Werner Lemberg  <wl@gnu.org>
14030
14031         * mf/feta-accordion.mf, mf/feta-klef.mf, mf/feta-pendaal.mf,
14032         mf/feta-schrift.mf: s/p/pat/ if a path variable.
14033
14034         * mf/feta-autometric.mf (set_char_box): Add code which emits
14035         specials for mf2pt1 if run with metapost.
14036         (to_bp): New macro for mf2pt1.
14037
14038 2005-01-18  Graham Percival  <gperlist@shaw.ca>
14039
14040         * Documentation/user/changing-defaults: added info on
14041         creating a copyright symbol.
14042
14043 2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14044
14045         * VERSION: release 2.5.9
14046         
14047 2005-01-18  Erlend Aasland  <erlenda@gmail.com>
14048
14049         * scm/auto-beam.scm: Simplify score-override-auto-beam-setting
14050
14051         * Documentation/user/notation.itely: Document
14052         score-override-auto-beam-setting Fix documentation for
14053         revert-auto-beam-setting.
14054
14055 2005-01-18  Werner Lemberg  <wl@gnu.org>
14056
14057         * scm/framework-ps.scm (ps-embed-cff): Fix DSC comments.
14058         (procset): New function to define a procset resource.
14059         (ps-embed-pfa): New function to define a font resource.
14060         (setup): New function to define a `Setup' environment.
14061         (preamble): Use new functions.
14062
14063         * ps/lilypond.defs (init-lilypond-parameters): New function to
14064         get rid of directly executed PS code.  Used in scm/framework-ps.scm.
14065
14066 2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14067
14068         * mf/GNUmakefile (MFTRACE_FLAGS): add --no-afm to MFTRACE_FLAGS
14069
14070 2005-01-17  Erlend Aasland  <erlenda@gmail.com>
14071
14072         * scm/define-markup-commands.scm: Change number->markletter-string
14073         to take two arguments (vector number). Add number->mark-alphabet-vector
14074         and markalphabet markup command.
14075
14076         * scm/translation-functions.scm: Add format-mark-box-alphabet,
14077         format-mark-alphabet, format-mark-box-barnumbers and
14078         format-mark-barnumbers. Fix bug in format-mark-box-numbers.
14079
14080 2005-01-17  Graham Percival  <gperlist@shaw.ca>
14081
14082         * Documentation/user/examples.itely: add SATB automatic piano
14083         reduction template.
14084
14085         * Documentation/user/notation.itely: added info about changing
14086         partcombine texts.  Also adds examples of alternate lyrics.
14087
14088         * Documentation/user/changing-defaults.itely: added warning
14089         about \RemoveEmptyStaffContext overriding previous changes.
14090
14091 2005-01-17  Werner Lemberg  <wl@gnu.org>
14092
14093         * buildscripts/mf-to-table.py: Use `FetaAlphabetEncoding' for
14094         feta-alphabet*.
14095
14096 2005-01-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14097
14098         * python/lilylib.py (make_ps_images): don't do final showpage for
14099         multi-page documents.
14100         
14101         * VERSION (MY_PATCH_LEVEL): release 2.5.8
14102
14103 2005-01-16  Graham Percival  <gperlist@shaw.ca>
14104
14105         * Documentation/user/lilypond.tely: changed order of appendices;
14106         unified index should be last.
14107
14108         * Documentation/user/notation.itely: add example of key signatures
14109         and info about Staff.printKeyCancellation.
14110
14111 2005-01-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14112
14113         * lily/include/repeated-music.hh (class Repeated_music): change
14114         into "namespace" class.
14115
14116         * lily/event.cc: remove Key_change_event.
14117
14118         * lily/include/transposed-music.hh (class Transposed_music): remove.
14119
14120         * lily/transposed-music.cc: remove
14121
14122         * lily/include/relative-music.hh: remove.
14123
14124         * lily/include/music-sequence.hh (struct Music_sequence): change
14125         into "namespace" class.
14126
14127         * lily/untransposable-music.cc (Module): remove
14128
14129         * lily/include/un-relativable-music.hh (Module): remove
14130
14131         * lily/include/untransposable-music.hh (Module): remove
14132
14133         * lily/include/music-list.hh (Module): remove file
14134
14135         * lily/un-relativable-music.cc: remove file.
14136
14137 2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
14138
14139         * lily/parser.yy: Compile fix.
14140
14141 2005-01-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14142
14143         * lily/include/music.hh (class Music): unvirtualize transpose().
14144
14145         * lily/sequential-music.cc: remove file.
14146
14147         * lily/include/lyric-combine-music.hh ("music.hh"): remove file.
14148
14149         * lily/slur-scoring.cc (get_best_curve): only switch on
14150         DEBUG_SLUR_SCORING for non NDEBUG builds.
14151
14152         * lily/include/music.hh (class Music): replace Music::start_mom()
14153         by start-callback property
14154
14155         * lily/include/grace-music.hh: remove file. 
14156
14157         * lily/stem.cc (height): robustness fix.
14158
14159         * lily/time-scaled-music.cc: remove file.
14160
14161         * lily/include/music.hh (class Music): include SCM init argument.
14162         (class Music): replace Music::get_length() virtual by
14163         length-callback property everywhere.
14164
14165         * scripts/convert-ly.py (conv): add  # to \property scalar value.
14166
14167         * mf/GNUmakefile: don't install *list.ly
14168
14169 2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
14170
14171         * mf/GNUmakefile (CFF_FILES): Bugfix: only big cheeses and braces.
14172
14173 2005-01-12  Werner Lemberg  <wl@gnu.org>
14174
14175         This patch addresses the following problems in the feta sources
14176         files which contribute to the fetaXX fonts.
14177
14178         . Many fixes for rasterization at low resolutions (consistent use of
14179           `vround' and `hround', integer shift values for paths, applying
14180           `eps' for mirrored paths, use of `define_whole_pixels' and
14181           friends, etc.) -- while this probably looks like a waste of time
14182           it has revealed deficiencies in some glyph shapes.  See comment at
14183           the end of feta-params.mf how vertical symmetry is achieved.
14184
14185         . The `---' operator has been replaced everywhere with `--'; this
14186           both improves and considerably reduces the font size after
14187           conversion with mf2pt1.
14188
14189         These change aren't explicitly mentioned below since virtually all
14190         glyphs are affected.
14191
14192         Other notable differences:
14193
14194         . Glyphs from feta-accordion.mf now have charboxes around the
14195           outline.
14196
14197         . Fixed incorrect charbox for `accDot'.
14198
14199         . The `rcomma' and `lcomma' glyphs were distorted due to a typo.
14200
14201         . Fixed position of the bow in the `upprall' glyph and its siblings.
14202
14203         . The bulb size in the `2/2 meter' and `4/4 meter' glyphs is now
14204           dependent on the staff line thickness to avoid touching the middle
14205           staff line at smaller sizes.
14206
14207         . Largely extended output for feta-testXX: Where useful, glyphs
14208         are shown both between and on staff lines.
14209
14210
14211         * mf/feta-params.mf (staff_space_rounded,
14212         stafflinethickness_rounded, linethickness_rounded,
14213         ledgerlinethickness_rounded, stemthickness_rounded): New variables.
14214         Update all code which uses them where appropriate.
14215         (feta_eps, feta_shift, feta_space_shift, feta_offset, feta_fillpen):
14216         New variables used to control rasterization at low resolutions.  Set
14217         to zero if feta code is processed with metapost.
14218
14219         * mf/feta-macros.mf (draw_staff, draw_staff_outline): Updated.
14220         (draw_rounded_block, draw_square_block): Updated to use `--' only.
14221         (flare_path): Updated.
14222         Make it work with `filldraw' (but only circular pens).
14223         (hfloor, vfloor, hceiling, vceiling): New macros.
14224
14225         * mf/feta-accordion.mf ("accDiscant", "accFreebase", "accStdbase"):
14226         Use `draw' again in mf mode to have good pixel dropout control.
14227         Fix intersection points of horizontal lines with circle.
14228         ("accDot"): Fix parameters for set_char_box.
14229         ("accOldEE"): Use `draw' again in mf mode to have good pixel dropout
14230         control.
14231
14232         * mf/feta-banier.mf: Updated.
14233
14234         * mf/feta-bolletjes.mf (remember_pic): New variable, used for
14235         testing.
14236         (undraw_inside_ellipse): Remove `center' argument.  Update all
14237         callers.
14238         (draw_brevis): New macro, called by "Brevis notehead".
14239         (draw_whole_triangle_head): New macro, called by "Whole
14240         trianglehead".
14241         (draw_small_triangle_head): Use `filldraw'.
14242
14243         * mf/feta-eindelijk.mf: Remove useless global group.
14244         Updated.
14245
14246         * mf/feta-klef.mf (draw_c_clef): Correct point positions for using
14247         `filldraw'.
14248
14249         * mf/feta-pendaal.mf: Updated.
14250
14251         * mf/feta-puntje.mf: Updated.
14252
14253         * mf/feta-schrift.mf (draw_very_long_fermata): Simplified to use
14254         less points.
14255         ("Flageolet"): Use `draw' again in mf mode to have good pixel
14256         dropout control.
14257         ("Varied Coda"): Use `draw_block'.
14258         (draw_comma): Fix typo.
14259         (draw_arpeggio_arrow): Use `draw' also in mf mode to have good
14260         pixel dropout control.
14261
14262         * mf/feta-slag.mf ("upprall", "downprall", "lineprall"): Fix start
14263         position of bow.
14264
14265         * mf/feta-timesig.mf (draw_C): Reduce bulb size for smaller design
14266         sizes.
14267
14268         * mf/feta-toevallig.mf (remember_pic): New variable, used for
14269         testing.
14270         (draw_meta_sharp): Much simplified.
14271         ("Sharp", "1/2 Sharp", "3/4 Sharp"): Don't rotate but shift.
14272
14273         * mf/feta-test-generic.mf: Include all files as in feta-generic.mf.
14274
14275 2005-01-13  Mats Bengtsson  <mabe@s3.kth.se>
14276
14277         * Documentation/user/notation.itely (Ancient rests): Fix typo
14278         (thanks Anthony)
14279
14280 2005-01-13  Jan Nieuwenhuizen  <janneke@gnu.org>
14281
14282         * scm/auto-beam.scm (score-override-auto-beam-setting): New function.
14283
14284         * lily/main.cc (setup_paths): Add cff.
14285
14286         * mf/GNUmakefile (foe): Include actual target %.cff.
14287         (INSTALLATION_OUT_SUFFIXES): Install CFF and SVG fonts too.
14288
14289 2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14290
14291         * lily/include/lily-lexer.hh (class Lily_lexer): lose hungarian _b
14292         suffix for main_input_b_.
14293
14294         * scm/music-functions.scm (toplevel-music-functions):
14295         precompute music lengths for music expressions.  
14296
14297 2005-01-11  Nicolas Sceaux  <nicolas.sceaux@free.fr>
14298
14299         * lily/include/input.hh (class Input): new `end_' slot for end of
14300         input. Renamed defined_str0_ to start_.
14301
14302         * lily/input.cc (Input): Add Input::Input (Input const &) and
14303         remove Input::Input (Source_file*, char const *). Use the new
14304         slots.
14305         (set_location): method used by bison to propagate input
14306         locations (YYLLOC_DEFAULT).
14307         (end_line_number, end_column_number, step_forward): new methods
14308         
14309         * lily/input-scheme.cc (ly:input-both-locations): new function,
14310         similar to ly:input-location, but also return the end line and
14311         column.
14312
14313         * lily/include/includable-lexer.hh: 
14314         * lily/includable-lexer.cc: 
14315         * lily/include/lily-lexer.hh (class Lily_lexer): 
14316         * lily/lily-lexer.cc (add_lexed_char): Move add_lexed_char from
14317         Includable_lexer to Lily_lexer, in order to update lexloc (the
14318         yylloc), a new slot of Lily_lexer.
14319         (here_input, LexerError): simplify by using the lexloc slot (aka
14320         yylloc)
14321
14322         * lily/lexer.ll: #define yylloc to use input locations (it may
14323         be useless here?). Fixed the #embedded_scm rule (step the location
14324         forward in order to skip the sharp sign before parsing the scheme
14325         expression)
14326
14327         * lily/include/lily-parser.hh (class Lily_parser): 
14328         * lily/lily-parser.cc: Remove push_spot(), pop_spot() and
14329         here_input()
14330         (parser_error): overload for more precise locations of errors.
14331
14332         * lily/parser.yy (YYLTYPE): set location type to Input
14333         (YYLLOC_DEFAULT): use Input::set_location()
14334         (yylex): add the YYLTYPE* location parameter.
14335         Clean push_spot()/pop_spot()/here_input(), and use @$, @1, etc.
14336         Give an Input parameter to THIS->parser-error() for more accurate
14337         messages.
14338
14339 2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14340
14341         * stepmake/aclocal.m4: do NDEBUG for optimizing builds.
14342
14343         * lily/include/beam.hh (DEBUG_QUANTING): performance: only switch
14344         on BEAMQUANTING for non-NDEBUG builds.
14345
14346         * lily/stem.cc (head_count): performance: avoid String::String()
14347         inside oft called function.
14348
14349 2005-01-09  Graham Percival  <gperlist@shaw.ca>
14350
14351         * Documentation/user/examles.itely: attempted fix for broken
14352         string quartet template.
14353
14354         * Documentation/user/notation.itely: remove unnecessary broken
14355         link.
14356
14357 2005-01-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14358
14359         * VERSION (PACKAGE_NAME): release 2.5.7
14360
14361 2005-01-09  Jan Nieuwenhuizen  <janneke@gnu.org>
14362
14363         * config.make.in (METAFONT): Append -progname=mf, fixes use with
14364         mf-nowin for teTeX-3.0.  Backportme.
14365
14366         * scm/output-svg.scm (utf8-string): New function.
14367
14368         * scm/output-gnome.scm (utf8-string): New function.
14369         (otf-name-mangling): Remove.
14370
14371         * lily/pango-font.cc (Pango_font): Use font string iso font
14372         filename for utf8-text.
14373
14374         * buildscripts/gen-emmentaler-scripts.py: Remove designsize from
14375         name.
14376
14377 2005-01-08  Graham Percival  <gperlist@shaw.ca>
14378
14379         * Documentation/user/notation.itely: add info about
14380         Staff.extraNatural = ##f in Pitches section.  Also
14381         fixed some minor issues in the Vocal music section.
14382
14383 2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14384
14385         * scm/output-ps.scm (white-text): comment out Helvetica font,
14386         which is broken for my GS install.
14387
14388         * lily/pango-font.cc (pango_item_string_stencil): use ink_rect,
14389         which provides a tighter bbox.
14390
14391         * scm/define-grobs.scm (all-grob-descriptions): remove all
14392         extra-offsets from definitions.
14393
14394 2005-01-08  Erlend Aasland  <erlenda@gmail.com>
14395
14396         * scm/output-lib.scm: Rename guitar-tunings to guitar-tuning and
14397         add tuning for 4-string bass and some common 4/5-string banjo
14398         tunings.  New function (four-string-banjo) turns a 5-string tuning
14399         into a 4-string tuning.  New function
14400         (fret-number-tablature-format-banjo) computes correct fret numbers
14401         on 5-string banjos.
14402
14403         * ly/engraver-init.ly: Default stringTunings = #guitar-tuning
14404         Add beam correction to TabVoice.
14405
14406         * scm/define-grobs.scm: Adjust notehead offset. Print fret numbers
14407         using bold font; makes tabs more readable.
14408
14409 2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14410
14411         * lily/font-select.cc (get_font_by_design_size): don't make
14412         Modified_font_metric; this causes trouble, since we don't know the
14413         font magnification from inside Pango_font::text_stencil()
14414
14415         * lily/all-font-metrics.cc (find_pango_font): take magnification argument.
14416
14417         * Documentation/user/notation.itely (The Lyrics context): comment out
14418         broken {Small ensembles} link.
14419
14420         * scm/framework-svg.scm (output-framework): change calling convention.
14421
14422         * lily/object-key-dumper-scheme.cc: new file.
14423
14424         * lily/object-key-undumper-scheme.cc: new file.
14425
14426         * lily/tweak-registration-scheme.cc: new file.
14427
14428         * lily/pango-select.cc (symbol_to_pango_variant): init local variable.
14429
14430         * Documentation/user/examples.itely (String quartet): uncomment
14431         broken example.
14432
14433         * lily/font-config.cc: new file.
14434
14435 2005-01-08  Jan Nieuwenhuizen  <janneke@gnu.org>
14436
14437         * scm/output-svg.scm: 
14438         * scm/output-gnome.scm: s/bigcheese/emmentaler.
14439
14440         * lily/score-engraver.cc (MUSIC_FONT): Use emmentaler20.
14441
14442 2005-01-07  Jan Nieuwenhuizen  <janneke@gnu.org>
14443
14444         * lily/general-scheme.cc (LY_DEFINE): Use snprintf (WAS: sprintf).
14445         Add headers.
14446
14447         * lily/GNUmakefile (general-scheme.o): Add version.hh dependency.
14448
14449 2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14450
14451         * mf/GNUmakefile (debian-mirror): rename bigcheese to emmentaler.
14452
14453         * lily/include/main.hh: lose _b hungarian suffixes for global
14454         variables.
14455
14456         * lily/include/lily-guile-macros.hh: new file.
14457
14458         * lily/pango-select-scheme.cc (LY_DEFINE): new file.
14459
14460         * lily/general-scheme.cc: new file. 
14461
14462         * lily/font-select.cc (get_font_by_design_size): retrieve
14463         PangoFont for (designsize . "pango-descr") entries.
14464
14465         * lily/lily-parser-scheme.cc: new file.
14466
14467         * lily/output-def-scheme.cc: new file.
14468
14469         * lily/paper-book-scheme.cc: new file.
14470
14471         * lily/duration-scheme.cc (LY_DEFINE): new file.
14472
14473         * lily/pitch-scheme.cc:  new file.
14474
14475         * scm/font.scm (add-cmr-fonts): use real dimens in font selection.
14476
14477 2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14478
14479         * lily/dimensions.cc (LY_DEFINE): add ly:{inch,cm,mm,bp,pt}.
14480
14481 2005-01-06  Graham Percival  <gperlist@shaw.ca>
14482
14483         * Documentation/user/notation.itely: minor editing.
14484
14485         * Documentation/user/changing-defaults: minor editing.
14486
14487         * Documentation/user/examples.itely: add template for
14488         string quartet part extraction; demonstrates tag.
14489
14490 2005-01-06  Erlend Aasland  <erlenda@gmail.com>
14491
14492         * Documentation/user/notation.itely: documents
14493         format-mark-box-letters and format-mark-box-numbers
14494
14495         * scm/define-context-properties.scm: change comment.
14496
14497 2005-01-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14498
14499         * scm/framework-ps.scm (output-classic-framework): new function:
14500         dump systems as separate .eps files (without fonts) and write a
14501         single collecting .tex file.
14502
14503 2005-01-05  Mats Bengtsson  <mabe@s3.kth.se>
14504
14505         * Documentation/user/notation.itely (Setting simple songs):
14506         Correct several errors in the equivalent formulation of
14507         \addlyrics. 
14508         (The Lyrics context): Corrected link to the SATB example.
14509
14510 2005-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14511
14512         * scm/lily.scm (completize-formats): new function
14513         (postprocess-output): new function
14514
14515         * lily/paper-book.cc (classic_output): change calling
14516         convention. Give basename as first argument. 
14517         remove Paper_book::post_processing().
14518
14519         * lily/lily-guile.cc (LY_DEFINE): ly:output-backend, new function.
14520
14521 2005-01-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14522
14523         * lily/paper-outputter.cc (LY_DEFINE): new function
14524         ly:outputter-close.
14525
14526         * lily/main.cc: change --format,-f to --backend,-b
14527
14528         * lily/include/main.hh: rename format to backend.
14529
14530         * scm/translation-functions.scm (format-mark-box-numbers): add.
14531         patch by Erlend Aasland
14532
14533 2005-01-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14534
14535         * lily/pango-font.cc (text_stencil): dump string as
14536         (utf-8-string FONTDESC UTF8) for use in -f gnome, -f svg.
14537
14538 2005-01-03  Jan Nieuwenhuizen  <janneke@gnu.org>
14539
14540         * configure.in (gui_b): Remove handy developer-only
14541         PKG_CONFIG_PATH settings that cater for Jan-and-Han-Wen ~/usr/pkg/
14542         CVS source installations (but break other non-default but correct
14543         PKG_CONFIG_PATH setups), as this is no longer developer-only.
14544
14545         * SConstruct: 
14546         * ps/GNUmakefile (INSTALLATION_FILES): teTeX-3.0
14547         compatibility (backportme).
14548
14549         * GNUmakefile.in: teTeX-3.0 compatibility (backportme).
14550
14551 2005-01-03  Werner Lemberg  <wl@gnu.org>
14552
14553         Prepare glyph shapes for mf2pt1 conversion.
14554
14555         * mf/feta-accordion.mf (accreg_pen): Removed.  No longer used.
14556         (accDiscant, accFreebase, accStdbase): Replace `draw' with
14557         `penstroke'.
14558         (accDot): Use `drawdot'.
14559         (accBayanbase): Replace `draw' with `draw_gridline'.
14560         (print_penpos): Moved to feta-macros.mf.
14561         (accOldEE): Replace `filldraw' with `penstroke'.
14562         Replace `draw' with `penstroke' and `drawdot'.
14563
14564         * mf/feta-banier.mf: Code clean-up.
14565         ("grace dash (up)", "grace dash (down)"): Replace `draw' with
14566         `fill'.
14567
14568         * mf/feta-bolletjes (draw_cross): Remove call to `labels'.
14569
14570         * mf/feta-eindelijk.mf (draw_rest_bulb, draw_eigth_rest): Add
14571         paremeter to control drawing of labels.  Update all callers.
14572
14573         * mf/feta-klef.mf (draw_c_clef): Use `&' not `..' to connect paths.
14574         (new_bulb): Return a bulb as a single path.  To do that, it now
14575         takes some more parameters.  Updated all callers.
14576         (draw_gclef): Major clean-up.  `draw' has been replaced with
14577         `penstroke', unnecessary outlines have been removed.
14578         Remove (unused) gnome-canvas code.
14579
14580         * mf/feta-macros.mf (print_penpos): New macro (from
14581         feta-accordion.mf).
14582         Other minor fixes.
14583
14584         * mf/feta-pendaal.mf ("Pedal asterisk"): Use `undrawdot'.
14585         ("Pedal dot"): Use `drawdot'.
14586         (draw_pedal_P): Add parameter to control drawing of labels.  Update
14587         all callers.
14588         Fix shape at top.
14589         (draw_pedal_e): Add parameter to control drawing of labels.  Update
14590         all callers.
14591         (draw_pedal_d): Add parameter to control drawing of labels.  Update
14592         all callers.
14593         Revert drawing direction.
14594
14595         * mf/feta-schrift.mf (draw_fermata): Use single path.
14596         (draw_short_fermata): Replace `filldraw' with `fill'.
14597         (draw_long_fermata, draw_very_long_fermata): Replace calls to
14598         `draw_rounded_block' with a single path.
14599         ("Thumb"): Draw full circle instead of mirroring segments.
14600         (draw_accent): New macro.
14601         ("> accent", "espr"): Use it.
14602         (draw_marcato): Replace `filldraw' and `draw' with `fill'.
14603         ("open (unstopped)"): Draw full circle instead of mirroring
14604         segments.
14605         (draw_vee): Removed.
14606         ("Upbow"): Use `draw_accent' instead of `draw_vee'.
14607         ("Downbow"): Replace calls to `draw_rounded_block' with a single
14608         path.
14609         ("Trill (`tr')"): Replace overlapping loop drawn with `draw' with
14610         partial pieces drawn with `fill' -- these do still overlap with the
14611         stem of the `t' but just once, not multiple times so that fontforge
14612         can handle it gracefully.
14613         Change other parts of the glyph so that fontforge's overlapping
14614         algorithm reliably works.
14615         (draw_heel): Replace `draw' with `fill'.
14616         (draw_toe): Use `draw_accent' instead of `draw_vee'.
14617         ("Flageolet"): Replace `draw' with `penstroke'.
14618         ("Segno"): Replace `filldraw' with `penstroke'.
14619         Replace `draw' with `drawdot'.
14620         ("Coda"): Replace `fill' with `penstroke', using a single path.
14621         ("Varied Coda"): Use less overlapping paths.
14622         (draw_arpeggio_arrow): Replace `filldraw' with `fill', using a
14623         single path.
14624
14625         * mf/feta-slag.mf (draw_trillelement): Put `clearxy' outside of
14626         group to better control the `labels' command.
14627         Rename argument to `offset' and use it actually.  Update all
14628         callers.
14629         Replace `filldraw' with `fill'.
14630         ("mordent", "prallmordent", "upmordent", "downmordent",
14631         "lineprall"): Replace `draw' with `draw_gridline'.
14632         ("upprall", "downprall"): Replace `draw' with `fill'.
14633
14634         * mf/feta-timesig.mf: Formatting.
14635
14636         * mf feta-toevallig.mf (draw_meta_flag): Move code to draw labels
14637         to...
14638         ("Flat"): Here.
14639         (draw_paren): Move code to draw labels to...
14640         ("Right Parenthesis"): Here.
14641
14642 2005-01-02  Graham Percival <gperlist@shaw.ca>
14643
14644         * Documentation/user/notation.itely: add example of \setTextDecresc
14645         and \setTextDim.
14646
14647 2005-01-02  Tatsuya Ono <tats_ono@infoseek.jp>
14648
14649         * scm/define-markup-commands.scm :  fix glyph-strings of
14650         accidentals and \note-by-number
14651
14652 2005-01-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14653
14654         * VERSION: 2.5.6 released.
14655         
14656         * ps/lilyponddefs.ps: put mm -> pt scaling in here.
14657
14658         * input/regression/new-markup-scheme.ly: oops. font-family=music
14659         -> font-encoding fetaMusic.  
14660
14661         * lily/main.cc: put default to PS.
14662
14663         * lily/tfm.cc: idem.
14664
14665         * lily/afm.cc: idem.
14666
14667         * lily/include/modified-font-metric.hh (struct
14668         Modified_font_metric): remove coding_scheme() method.
14669
14670         * input/mutopia/F.Schubert/morgenlied.ly: convert to utf8
14671
14672         * scripts/convert-ly.py (conv): crash on encountering \encoding.
14673
14674         * input/les-nereides.ly: convert to utf8
14675
14676         * lily/modified-font-metric.cc (text_dimension): idem.
14677
14678         * lily/parser.yy (TODO): idem.
14679
14680         * lily/include/lily-lexer.hh (class Lily_lexer): idem.
14681
14682         * lily/lexer.ll: remove encoding
14683
14684         * scm/framework-ps.scm (output-variables): separately scale the
14685         page to mm 
14686
14687         * lily/pango-font.cc (Pango_font): fix scaling.
14688
14689         * lily/font-metric.cc (design_size): design_size returns a
14690         dimension now as well.
14691
14692 2004-12-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14693
14694         * mf/GNUmakefile ($(outdir)/%.otf-table): use findstring. Fixes
14695         brace generation. 
14696
14697         * lily/text-metrics.cc (LY_DEFINE): use scm_c_make_hash_table().
14698
14699 2004-12-30  Jan Nieuwenhuizen  <janneke@gnu.org>
14700
14701         * mf/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Do not try to
14702         install unbuildable Fontmap and Fontmap.lily (Simon Aridis-Lang).
14703
14704 2004-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14705
14706         * mf/GNUmakefile ($(outdir)/%.otf-table): include parmesan20.lisp
14707         in first run as well.
14708
14709         * scm/paper.scm (layout-set-staff-size): use text-font-size in
14710         dimension less points (ie. 12 = 12 point)
14711
14712         * lily/pango-select.cc (select_pango_font): use find_scaled_font().
14713
14714         * lily/all-font-metrics.cc (find_pango_font): set description_
14715
14716         * lily/pango-font.cc (text_stencil): export size as well.
14717         (text_stencil): fix scaling and extents box.
14718
14719 2004-12-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14720
14721         * Documentation/topdocs/NEWS.texi (Top): add -f texstr
14722
14723         * Documentation/user/invoking.itely (Invoking lilypond): document
14724         texstr
14725
14726         * scripts/convert-ly.py (conv): add ancient rules.
14727
14728         * scm/clef.scm (c0-pitch-alist): replace - with .
14729
14730         * scripts/lilypond-book.py (process_snippets): add texstr support.
14731
14732         * scm/framework-texstr.scm (header): change extension to .textmetrics
14733
14734         * lily/lily-parser.cc (parse_file): do try_load_text_metrics for
14735         -f tex.
14736
14737         * lily/text-metrics.cc: new file.
14738         (try_load_text_metrics): new function
14739
14740         * lily/include/text-metrics.hh: new file.
14741
14742 2004-12-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14743
14744         * lily/include/lily-guile.hh (ly_lily_module_constant): rename
14745         ly_scheme_function to ly_lily_module_constant.
14746
14747         * lily/modified-font-metric.cc (text_dimension): try
14748         lookup_tex_text_dimension() first.
14749
14750         * lily/tfm.cc: new function ly:load-text-dimensions
14751
14752 2004-12-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14753
14754         * scm/output-texstr.scm (text): use \lilygetmetrics
14755
14756         * scm/framework-texstr.scm (header): dump in new format.
14757
14758         * tex/lilypond-tex-metrics: new file.
14759         
14760 2004-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
14761
14762         * lily/pango-font.cc (text_stencil): Quick try at glyph->charcode
14763         mapping.
14764         (index_to_charcode): New method.
14765
14766         * scm/output-ps.scm (glyph-string): 
14767         * scm/output-gnome.scm (glyph-string): Add FONT parameter.
14768
14769 2004-12-26  Jan Nieuwenhuizen  <janneke@gnu.org>
14770
14771         * scm/output-gnome.scm (FIXME-glyph-string): New function.  Cannot
14772         implement fully, need FONT to get to charcode.
14773
14774         * scm/lily.scm (ly:all-stencil-expressions): Add glyph-string.
14775
14776         * scm: Cleanups.
14777
14778         * Documentation/user/changing-defaults.itely: Fix internalsrefs
14779         {Tunable context properties},
14780         {All layout objects},
14781         {Music definitions}.
14782
14783 2004-12-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14784
14785         * VERSION: release 2.5.5
14786         
14787         * lily/main.cc: use TeX as default output format.
14788
14789         * flower/file-path.cc (find): try to open directly as well, so we
14790         find absolute path files. 
14791
14792         * lily/pango-select.cc: new file.
14793
14794         * scm/framework-ps.scm: remove all encoding code. 
14795         load pfb/pfa for PangoFont too.
14796         
14797         * lily/lily-guile.cc (ly_chain_assoc_get): new function.
14798
14799 2004-12-22  Werner Lemberg  <wl@gnu.org>
14800
14801         Prepare glyph shapes for mf2pt1 conversion.
14802
14803         * mf/feta-toevallig.mf ("Double Sharp"): Minor path fix.
14804
14805         * mf/feta-bolletjes.mf (penposx): New auxiliary macro.
14806         (define_triangle_shape): Use it to replace `draw' with `fill' and
14807         `unfill'.  Update all callers.
14808         (draw_slash): Replace `filldraw' with `fill'.  Update all callers.
14809         (draw_cross): Ditto.
14810         ("X-Circled notehead"): Replace `draw' with `fill' and `unfill'.
14811         Use penrazor for better conversion with mf2pt1.
14812         (generic_draw_solfa_note_shape, draw_solfa_note_shape,
14813         draw_solfa_quarter_note_shape, triangle): Removed.  Unused.
14814         (draw_do_head, draw_re_head, draw_mi_head, draw_fa_head,
14815         draw_la_head, draw_ti_head): Replace `filldraw' with
14816         `fill'.  Update all callers.
14817
14818 2004-12-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14819
14820         * lily/paper-book.cc (output): revert: only allow a single output
14821         format.
14822
14823         * lily/include/pango-font.hh: new file.
14824
14825         * lily/pango-font.cc: new file.
14826
14827         * lily/font-metric.cc (text_stencil): new routine
14828
14829         * lily/all-font-metrics.cc (find_pango_font): new routine.
14830
14831         * lily/include/font-metric.hh (struct Font_metric): add
14832         text_stencil()
14833
14834         * configure.in (PKG_CONFIG_PATH): require PANGO_FT2
14835
14836 2004-12-22  Werner Lemberg  <wl@gnu.org>
14837
14838         Prepare glyph shapes for mf2pt1 conversion.
14839
14840         * mf/feta-macros.mf, mf_feta-eindelijk.mf: Some formatting.
14841
14842         * mf/feta-toevallig.mf: Formatting.
14843         (draw_meta_sharp): Modify path to replace `filldraw' with `fill'.
14844         ("Natural"): Fix paths to allow better postprocessing.
14845         (draw_meta_flat): Use `z3l' as additional point in path to get
14846         better conversion with mf2pt1.
14847         Other minor cleanups.
14848         ("3/4 Flat"): Add auxiliary points and modify path to replace
14849         `draw' with `fill'.
14850         ("Double Sharp"): Mirror path segments instead of picture elements
14851         to get a single outline.
14852         Modify path to replace `filldraw' with `fill'.
14853
14854 2004-12-22  Graham Percival  <gperlist@shaw.ca>
14855
14856         * input/test/unfold-all-repeats.ly: added file back.
14857
14858         * Documentation/user/notation.itely,
14859         Documentation/user/programming-interface.itely
14860         Documentation/user/changing-defaults.itely: fixed misc broken
14861         links to input/test/ files.
14862
14863 2004-12-22  Jan Nieuwenhuizen  <janneke@gnu.org>
14864
14865         * tex/texinfo.tex: Update.  We should not be distributing this,
14866         but since we do, use latest version.
14867
14868         * Documentation/user/macros.itexi: Comment-out \fetaflat,
14869         \fetasharp.  Fixes make web.  FIXME: make usable (compatible?) TeX
14870         macros for feta glyphs.
14871
14872 2004-12-22  Graham Percival  <gperlist@shaw.ca>
14873
14874         * Documentation/user/changing-defaults.itely: fix index for set.
14875
14876         * Documentation/user/converters.itely: added convert-ly bugs list
14877         from CVS.
14878
14879 2004-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
14880
14881         * python/lilylib.py (setup_environment): Set GS_FONTPATH, GS_LIB
14882         to empty.  Fixes make web, using gs-gpl-8.01.  In fact,
14883         gs-afpl-8.50 has more trouble with make web (ie, uses *a lot* more
14884         resourses; 3x MAXSIZE, 4x MAXRSS, 1.5x user).
14885
14886         * mf/GNUmakefile (pfa_warning): Use less broken check.
14887
14888         * python/lilylib.py (setup_environment): Remove cruft from
14889         GS_FONTPATH.
14890
14891         * configure.in: Bump mftrace requirement to 1.1.1.
14892
14893 2004-12-20  Jan Nieuwenhuizen  <janneke@gnu.org>
14894
14895         * scm/output-svg.scm (beam): Use polygon.
14896
14897         * scm/lily-library.scm: Bugfix.
14898
14899         * Documentation/user/invoking.itely (Invoking lilypond): Bugfix.
14900
14901         * mf/GNUmakefile (ALL_GEN_FILES): Remove unbuildable Fontmap.lily.
14902
14903 2004-12-19  Werner Lemberg  <wl@gnu.org>
14904
14905         Prepare glyph shapes for mf2pt1 conversion.
14906
14907         * mf/feta-eindelijk: Some formatting.
14908         (multi_rest_x, multi_beam_height): Removed.  Unused.
14909         ("Quarter rest"): Use `intersectiontimes' to create a single
14910         outline.
14911         (rest_crook): Removed.  Unused.
14912         (draw_rest_bulb): Return path (without filling).  Update callers.
14913         Simplified.
14914         (draw_eighth_rest, "16th rest", "32th rest", "64th rest",
14915         "128th rest"): Simplify `pat'.
14916         Create single outline.
14917
14918 2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
14919
14920         * mf/GNUmakefile (ALL_GEN_FILES):
14921         (INSTALLATION_OUT_SUFFIXES): Remove unbuildable fonts.scale.
14922
14923         * scm/output-svg.scm (polygon, draw-line, dashed-line): New
14924         function.
14925
14926 2004-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14927
14928         * scm/output-texstr.scm (placebox): add routine
14929
14930         * VERSION (PACKAGE_NAME): release 2.5.4
14931
14932         * scm/framework-texstr.scm (output-framework): new file.  
14933
14934         * scm/output-texstr.scm: new file. Collect (TEXT . ) calls for TeX
14935         processing.
14936
14937         * Documentation/user/invoking.itely (Invoking lilypond): add SVG
14938
14939         * stepmake/stepmake/metafont-rules.make: make single SVG/PFA/PFB
14940         rule.
14941
14942         * configure.in (gui_b): bump mftrace requirement to 1.1.0
14943
14944         * mf/feta-bolletjes.mf (triangle): add s to 0triangle.
14945
14946         * mf/GNUmakefile (ALL_GEN_FILES): make SVG files too.
14947
14948 2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
14949
14950         * scm/framework-svg.scm (dump-page): Implement landscape.
14951
14952 2004-12-18  Jan Nieuwenhuizen  <janneke@gnu.org>
14953
14954         * lily/main.cc (setup_paths): Add svg to search path.
14955
14956         * scm/output-svg.scm:
14957         * scm/framework-svg.scm: Add pageSet.  Update.
14958         (dump-fonts): New function.
14959         (output-framework): Use it.
14960
14961         * mf/GNUmakefile: 
14962         * buildscripts/gen-bigcheese-scripts.py: Also generate SVG font.
14963
14964 2004-12-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14965
14966         * tex/lilyponddefs.tex: comment out new ifpdf code.
14967
14968 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
14969
14970         * GNUmakefile.in: 
14971         * SConstruct (symlink): Replace afm by otf.
14972
14973         * scm/framework-gnome.scm (gnome-main): Remove invocation of
14974         ly:pango-add-afm-decoder.
14975
14976         * lily/lily-guile.cc ("ly:pango-add-afm-decoder"): Build fix: Remove.
14977
14978 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14979
14980         * scm/output-ps.scm (new-text): don't access t glyph for getting
14981         space dimension.
14982
14983         * ly/init.ly: warn about \version
14984
14985         * lily/lexer.ll: set version-seen?
14986
14987 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
14988
14989         * scm/output-svg.scm (string->entities): Update.
14990
14991 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14992
14993         * lily/main.cc (setup_paths): replace afm by otf for path. 
14994
14995         * lily/pangofc-afm-decoder.cc: remove.
14996
14997         * lily/include/pangofc-afm-decoder.hh: remove.
14998
14999         * scm/framework-scm.scm (output-framework): new file.
15000
15001         * mf/GNUmakefile: remove SAUTER_FONTS.
15002         remove SVG/sodipodi hacks.
15003
15004         * scm/lily-library.scm (stderr): move stderr.
15005
15006         * mf/GNUmakefile: remove AFM support.
15007
15008         * buildscripts/mf-to-table.py (base): remove AFM support.
15009
15010         * lily/open-type-font.cc (design_size): use design_size
15011
15012 2004-12-17  Pedro Kroger  <kroeger@pedrokroeger.net>
15013
15014         * lily/font-metric.cc (LY_DEFINE): Fix the docstring.
15015
15016 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
15017
15018         * mf/GNUmakefile: Generate combined aybabtu info.
15019         * mf/aybabtu.pe.in (i): Load it.
15020
15021         * scm/framework-tex.scm (otf-font-load-command): Bugfix: subfonts
15022         are not symbols.
15023
15024         * lily/include/open-type-font.hh (count): New method.
15025
15026         * mf/aybabtu.pe.in: Typo.
15027
15028         * Documentation/user/out/lilypond-internals.nexi (Scheme
15029         functions): Typo.
15030
15031         * lily/include/guile-compatibility.hh (SCM_HASHTABLE_P): Add compat.
15032
15033 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15034
15035         * buildscripts/gen-bigcheese-scripts.py (i): use symbols for
15036         subfonts.
15037
15038         * scm/output-tex.scm (named-glyph): new function. This fixes TeX output.
15039
15040         * scm/framework-tex.scm (otf-font-load-command): load subfonts.
15041         (tex-font-command-raw): new function.
15042
15043         * lily/include/virtual-font-metric.hh (Module): remove file
15044
15045         * lily/virtual-font-metric.cc (Module): remove file.
15046         
15047
15048         * lily/open-type-font.cc (LY_DEFINE): ly:otf-font-glyph-info
15049         (get_indexed_char): read bbox from lily table if present.
15050
15051 2004-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15052
15053         * mf/GNUmakefile ($(outdir)/aybabtu.subfonts): rule for
15054         aybabtu.subfonts
15055
15056         * mf/feta-beugel.mf (y): don't number consecutively, instead, use
15057         global glyphname. Enables more than 64 glyphs in the OTF.
15058
15059 2004-12-16  Jan Nieuwenhuizen  <janneke@gnu.org>
15060
15061         * scm/font.scm (add-music-fonts): Load aybabtu iso all separate
15062         braces.
15063
15064         * lily/open-type-font.cc (design_size): Use 12 as default for
15065         design size.
15066
15067         * mf/aybabtu.pe.in: New file.  Merge all our braces.
15068
15069         * mf/GNUmakefile: Generate aybabtu.
15070
15071         * tex/lilyponddefs.tex: teTeX 3.0 pdfetex fix.
15072
15073 2004-12-14  Jan Nieuwenhuizen  <janneke@gnu.org>
15074
15075         * scm/lily-library.scm (char->unicode-index): Remove.
15076
15077         * scm/output-gnome.scm (text): Bugfix for plain string input.
15078         Updates.
15079
15080         * scm/output-svg.scm (svg-font): Add weight to font selection.
15081
15082 2004-12-14  Mats Bengtsson  <mabe@s3.kth.se>
15083
15084         * Documentation/topdocs/INSTALL.texi (Top): Point to
15085         buildscripts/out/clean-fonts instead of
15086         buildscripts/clean-fonts.sh. 
15087
15088 2004-12-13  Graham Percival  <gperlist@shaw.ca>
15089
15090         * input/regression/figured-bass.ly: attempt to clarify text.
15091
15092         * Documentation/user/notation.tely: add cindex for tag, attempt to
15093         add figured bass example.
15094
15095         * Documentation/user/changing-defaults: basic editing.
15096
15097 2004-12-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15098
15099         * buildscripts/gen-bigcheese-scripts.py (i): load .subfonts table. 
15100
15101         * lily/open-type-font.cc (LY_DEFINE): new function
15102         ly:font-sub-fonts
15103
15104         * lily/include/font-metric.hh (struct Font_metric): new method
15105         sub_fonts()
15106
15107         * lily/vaticana-ligature-engraver.cc (transform_heads): replace
15108         . with - in add.stem.
15109         
15110 2004-12-13  Jan Nieuwenhuizen  <janneke@gnu.org>
15111
15112         * scm/encoding.scm (coding-alist): Fix encodings for fetaNumber
15113         and fetaDynamic.
15114
15115         * lily/rest.cc (glyph_name): Change - to . .
15116
15117         * scm/output-gnome.scm (text): Hello world, again.
15118
15119         * scm/output-svg.scm (named-glyph): New function.  Hello world!
15120
15121         * lily/modified-font-metric.cc (index_to_charcode): New method.
15122
15123         * lily/include/font-metric.hh (index_to_charcode): New function.
15124
15125         * lily/font-metric.cc (ly:font-glyph-name-to-charcode): Use it in
15126         new function.
15127         (ly:font-glyph-to-index): Remove.
15128
15129 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15130
15131         * lily/open-type-font.cc (make_index_to_charcode_map): new method.
15132
15133         * mf/feta-autometric.mf (code): remove tex name from fet_beginchar.
15134
15135         * lily/open-type-font.cc (load_scheme_table): new function
15136
15137         * lily/dots.cc (print): replace - 
15138
15139         * lily/open-type-font.cc (attachment_point): new function.
15140         (load_table): read LILC table
15141
15142         * buildscripts/gen-bigcheese-scripts.py (Module): new
15143         file. Generate FF scripts.
15144
15145         * mf/feta-din10.mf: idem.
15146
15147         * mf/feta-nummer10.mf: remove mf files.
15148
15149         * mf/feta-alphabet.mf (dynamic_design_size): merge din and number font.
15150
15151 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
15152
15153         * lily/lily-guile.cc: Use scm_from_locale_stringn.
15154
15155         * lily/include/guile-compatibility.hh (scm_from_locale_stringn): Add
15156         compatibility.
15157
15158 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15159
15160         * lily/open-type-font.cc (get_indexed_char): scale metrics by
15161         design-size and units_per_EM.
15162
15163         * mf/bigcheese.pe.in: set PUA codepoints before loading din & nummer.
15164
15165 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
15166
15167         * mf/bigcheese.pe.in (i): Map to 0xe000 (PUA) for testing, which
15168         does not crash fontforge.
15169
15170         * scm/lily-library.scm (char->unicode-index): Hack to map onto
15171         PUA.
15172
15173 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15174
15175         * scm/framework-ps.scm (ps-embed-cff): new function.
15176
15177         * lily/lily-guile.cc (LY_DEFINE): make ly:gulp-file binary proof.
15178
15179 2004-12-12  Werner Lemberg  <wl@gnu.org>
15180
15181         * mf/bigcheese.pe.in: Add PUA mapping.
15182         Don't create Type 42 but bare CFF font.
15183
15184 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
15185
15186         * scm/output-gnome.scm (placebox): Hackery to get bigcheese symbols
15187         within canvas boundaries.
15188
15189         * mf/merge.pe.in: Set font names, version, license GPL.
15190
15191         * make/substitute.make: Add FONTFORGE.
15192
15193         * config.make.in (FONTFORGE): Add.
15194
15195         * configure.in (gui_b): Use PATH_PROG for fontforge.
15196
15197 2004-12-11  Graham Percival  <gperlist@shaw.ca>
15198
15199         * scm/define-markup-commands.scm: add baseline-skip to info
15200         about \column.
15201
15202 2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
15203
15204         * lily/font-metric.cc (ly:font-get-glyph-index): New function.
15205
15206         * scm/output-gnome.scm (named-glyph): Use it.
15207
15208         * scm/lily.scm (ly:all-stencil-expressions): Add named-glyph.
15209
15210         * flower/string.cc (substitute_char): Rename, rewrite, modify this.
15211         (upper_string, lower_string, reverse_string): Remove.
15212
15213         * configure.in (fontforge): Reinstate version check.
15214
15215         * ly/engraver-init.ly: Fix clef glyph names.
15216
15217         * lily/time-signature.cc (special_time_signature): Fix fraction
15218         glyph names.
15219
15220 2004-12-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15221
15222         * mf/merge.pe: new file.
15223
15224         * lily/freetype.cc: new file.
15225
15226         * lily/include/open-type-font.hh (class Open_type_font): new file.
15227
15228         * lily/include/freetype.hh: new file.
15229
15230         * lily/open-type-font.cc: new file.
15231
15232         * lily/all-font-metrics.cc (find_otf): new function.
15233
15234 2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
15235
15236         * lily/time-signature.cc (special_time_signature): Fix.
15237
15238         * configure.in (PKG_CONFIG_PATH): Remove stray `i'.  Check for
15239         GTK2 before checking for pango.  Fixes -fgnome.
15240
15241         * lily/font-metric.cc (LY_DEFINE): Also rename C name to match
15242         Scheme name.
15243
15244         * scm/define-markup-commands.scm:
15245         * scm/safe-lily.scm: Bugfix: ly:font-by-name.
15246
15247         * configure.in: Require makeinfo 4.7 (needed for @ifdocbook).
15248
15249         * stepmake/aclocal.m4 (STEPMAKE_GET_VERSION): Grok fontforge-like
15250         date versions.  Fixes configure.
15251         (STEPMAKE_CHECK_VERSION): Support optional actual program version
15252         argument.
15253
15254 2004-12-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15255
15256         * buildscripts/mf-to-table.py (write_ps_encoding): write real
15257         names in .enc
15258
15259         * lily/*.cc: use '.' iso. '-' for separating glyph name elements.
15260
15261 2004-12-09  Graham Percival  <gperlist@shaw.ca>
15262
15263         * Documentation/user/changing-defaults.itely: add info about
15264         make-dynamic-script
15265
15266         * Documentation/user/notation.itely: add link in dynamics to
15267         section about make-dynamic-script.
15268
15269 2004-12-09  Christian hitz  <chhitz@gmx.net>
15270
15271         * lily/lily-guile.cc: change MACOS_X to __APPLE__
15272
15273 2004-12-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15274
15275         * buildscripts/mf-to-table.py (parse_logfile): use . for
15276         concatting name and group.
15277         (parse_logfile): use M for Minus (negative.)
15278
15279         * lily/include/type-swallow-translator.hh
15280         (DECLARE_EVENT_SWALLOWER): ENTER_DESCRIPTION -> ADD_TRANSLATOR
15281
15282         * lily/*.cc: cosmetics around = sign.
15283
15284         * lily/paper-column.cc (Paper_column): copy rank_. This fixes
15285         lyric spacing on the penultimate column.
15286
15287 2004-12-05  Christian Hitz  <chhitz@gmx.net>
15288
15289         * configure.in:
15290         * lily/accidental-placement.cc:
15291         * lily/bar-line.cc:
15292         * lily/beam-concave.cc:
15293         * lily/beam-quanting.cc:
15294         * lily/beam.cc:
15295         * lily/bezier-bow.cc:
15296         * lily/bezier.cc:
15297         * lily/break-align-interface.cc:
15298         * lily/custos.cc:
15299         * lily/dimension-cache.cc:
15300         * lily/dot-column.cc:
15301         * lily/font-metric.cc:
15302         * lily/font-select.cc:
15303         * lily/gourlay-breaking.cc:
15304         * lily/grob-property.cc:
15305         * lily/grob.cc:
15306         * lily/lily-guile.cc:
15307         * lily/line-spanner.cc:
15308         * lily/lookup.cc:
15309         * lily/lyric-extender.cc:
15310         * lily/lyric-hyphen.cc:
15311         * lily/mensural-ligature.cc:
15312         * lily/midi-def.cc:
15313         * lily/misc.cc:
15314         * lily/note-collision.cc:
15315         * lily/note-column.cc:
15316         * lily/note-head.cc:
15317         * lily/paper-outputter.cc:
15318         * lily/percent-repeat-item.cc:
15319         * lily/rest-collision.cc:
15320         * lily/side-position-interface.cc:
15321         * lily/simple-spacer.cc:
15322         * lily/slur-configuration.cc:
15323         * lily/slur-scoring.cc:
15324         * lily/slur.cc:
15325         * lily/spaceable-grob.cc:
15326         * lily/spacing-spanner.cc:
15327         * lily/spanner.cc:
15328         * lily/staff-symbol-referencer.cc:
15329         * lily/stem.cc:
15330         * lily/stencil.cc:
15331         * lily/system-start-delimiter.cc:
15332         * lily/system.cc:
15333         * lily/text-item.cc:
15334         * lily/tie.cc:
15335         * lily/tuplet-bracket.cc:
15336         * lily/vaticana-ligature.cc: Fix for MacOS X: use <math.h> instead of
15337         <cmath> beacause isinf/isnan is undefined in <cmath>
15338
15339 2004-12-03  Mats Bengtsson  <mabe@s3.kth.se>
15340
15341         * cygwin/lily-wins.py (stat): remove old flag -p when calling lilypond.
15342
15343 2004-12-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15344
15345         * VERSION: release 2.5.3
15346         
15347 2004-11-29  Arno Waschk <arno@arnowaschk.de>
15348
15349         * mf/feta-schrift.mf: added <>-like articulation mark as "espressivo"
15350
15351 2004-12-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15352
15353         * scm/music-functions.scm (cue-substitute): voice counts start at 0.
15354
15355         * lily/note-head.cc (internal_print): always try the "s" head if
15356         u/d not found.
15357
15358         * scm/titling.scm (marked-up-headfoot): reinstate default tagline.
15359
15360 2004-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15361
15362         * mf/parmesan-heads.mf (overdone_heads): typos.
15363
15364 2004-11-30  Nicolas Sceaux  <nicolas.sceaux@free.fr>
15365
15366         * lily/parser.yy (markup): in markups, { .. } without command
15367         before are also flattened, ie \line must be explicitely used.
15368
15369         * Documentation/user/changing-defaults.itely:
15370         * Documentation/user/notation.itely: 
15371         * input/wilhelmus.ly: 
15372         * input/regression/instrument-name-markup.ly: 
15373         * input/regression/markup-score.ly: 
15374         * input/regression/new-markup-scheme.ly: 
15375         * input/regression/new-markup-syntax.ly: 
15376         * input/test/coriolan-margin.ly: use \line in markups where
15377         appropriate
15378         
15379 2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
15380
15381         * scm/new-markup.scm (map-markup-command-list): helper function
15382         used in parser.yy to map markup commands on a markup list.
15383
15384         * lily/parser.yy: get rid off < > in markups by treating { } as
15385         real lists.
15386
15387         * lily/lexer.ll: remove < > from markup lexer mode.
15388
15389         * scripts/convert-ly.py (conv): add rule for converting 
15390         \markup < > to \markup { }
15391
15392         * ly/titling-init.ly: 
15393         * input/test/coriolan-margin.ly: 
15394         * input/regression/new-markup-syntax.ly: 
15395         * input/regression/new-markup-scheme.ly: 
15396         * input/regression/multi-measure-rest-text.ly: 
15397         * input/regression/markup-stack.ly: 
15398         * input/regression/markup-score.ly: 
15399         * input/regression/instrument-name-markup.ly: 
15400         * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: 
15401         * input/mutopia/R.Schumann/romanze-op28-2.ly: 
15402         * input/mutopia/J.S.Bach/wtk1-fugue2.ly: 
15403         * input/wilhelmus.ly: 
15404         * Documentation/user/notation.itely: 
15405         * Documentation/user/music-glossary.tely: 
15406         * Documentation/user/changing-defaults.itely: change < > to { } in
15407         markups
15408
15409 2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15410
15411         * lily/accidental-placement.cc (position_accidentals): shortcut if
15412         no accidentals to place.
15413
15414 2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
15415
15416         * scm/define-grob-properties.scm (all-user-grob-properties): fixed
15417         typo s/ly:dimension ?/ly:dimension?/
15418
15419         * input/regression/lily-in-scheme.ly: 
15420         * input/regression/music-function.ly: 
15421         * ly/spanners-init.ly (assertBeamSlope): 
15422         * scm/music-functions.scm (def-grace-function): add the paper
15423         argument to music function definitions.
15424
15425 2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15426
15427         * lily/moment.cc (LY_DEFINE):
15428         ly:moment-main-{denominator,numberator}, new function.
15429
15430         * lily/score-engraver.cc (typeset_all): assign to column on basis
15431         of axis-group-parent-X setting.
15432
15433         * lily/axis-group-engraver.cc (process_acknowledged_grobs): do
15434         add_element() on basis of axis-group-parent-Y setting.
15435
15436         * lily/grob.cc: add axis-group-parent-{XY} properties.
15437
15438         * input/regression/spacing-stick-out.ly: new file.
15439
15440         * lily/simple-spacer.cc (add_columns): use binary search for
15441         setting column rods. Changes O(n^2) to O(n log(n)) for
15442         constructing spacing problem from columns.
15443         (add_columns): read allow-outside-line to make sure no texts stick
15444         out.
15445         (solve): Simple_spacer::is_active() only determines
15446         satisfies_constraints_ for non-ragged typesetting.
15447
15448         * lily/simultaneous-music.cc (to_relative_octave): only set
15449         old_relative_used if return pitch actually changed.
15450
15451         * scm/define-context-properties.scm
15452         (all-user-translation-properties): change to match implementation.
15453
15454         * python/lilylib.py: Replace re.match by re.search and adds "-c
15455         showpage" to the gs command line (Johannes Schindelin)
15456
15457         * scm/framework-ps.scm (output-preview-framework): sanitize bbox
15458         before processing. Prevents crash when inf is in the extent.
15459
15460         * scm/define-markup-commands.scm (note-by-number): add "s" to
15461         "noteheads-" glyphname.
15462  
15463         * lily/parser.yy (Generic_prefix_music): supply parser argument to
15464         music function as well.
15465         
15466 2004-11-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15467
15468         * VERSION: release 2.5.2
15469
15470         * Documentation/user/changing-defaults.itely (Creating titles):
15471         add breakbefore variable.
15472
15473         * lily/paper-book.cc (set_system_penalty): new function. Set
15474         penalty_ based on breakBefore setting
15475
15476         * lily/context-specced-music-iterator.cc (construct_children):
15477         interpret special context id $uniqueContextId 
15478
15479         * lily/context.cc (create_unique_context): new method. Move
15480         creation of unique (\new) contexts into interpreting phase. This
15481         makes
15482
15483           foo= \new Staff ..
15484           << \foo \foo >>
15485
15486         produce 2 staves.
15487         
15488
15489         * scm/define-music-properties.scm (all-music-properties): add
15490         quoted-voice-direction
15491
15492         * ly/music-functions-init.ly: killCues function.
15493
15494         * scm/music-functions.scm (cue-substitute): move creation of voice
15495         contexts further to the back. 
15496
15497 2004-11-25  Werner Lemberg  <wl@gnu.org>
15498
15499         * tex/GNUmakefile ($(outdir)/latin1.enc): Replace `/minus' with
15500         `/hyphen' in encoding vector to get correct glyph name for EC fonts.
15501
15502 2004-11-24  Erik Sandberg  <ersa9195@student.uu.se>
15503
15504         * buildscripts/guile-gnome.sh: Fixed typo.
15505
15506 2004-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15507
15508         * lily/lexer.ll: add < >  to markup lexer mode (backportme)
15509
15510         * scripts/abc2ly.py (dump_slyrics): add ord(). 
15511
15512         * lily/note-heads-engraver.cc (process_music): add shapeNoteStyles
15513         to regular engraver. 
15514
15515 2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15516
15517         * mf/feta-bolletjes.mf (triangle): rewrite solfa heads.
15518
15519 2004-11-22  Jan Nieuwenhuizen  <janneke@gnu.org>
15520
15521         * scm/define-markup-commands.scm (fill-line): Typo.
15522
15523         * buildscripts/guile-gnome.sh (GGVERSION): Build update for 2.7.96
15524         and newer.
15525
15526 2004-11-22  Erik Sandberg  <ersa9195@student.uu.se>
15527
15528         * ly/dynamic-scripts-init.ly: Fixed typo.
15529
15530 2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15531
15532         * mf/feta-bolletjes.mf (overdone_heads): cleanup triangle
15533         note-head, to have different attachment points for up and down.
15534
15535         * mf/feta-bolletjes.mf: merge solfa heads into main note heads.
15536
15537         * mf/feta-generic.mf (else): remove solfa.
15538
15539         * mf/feta-bolletjes.mf (tishape): remove unicode test.
15540
15541         * scm/define-context-properties.scm
15542         (all-user-translation-properties): add shapeNoteStyles property.
15543
15544         * lily/shape-note-heads-engraver.cc (process_music): new file.
15545
15546         * lily/event.cc (transpose): call Event::transpose() for
15547         transposing the tonic.
15548
15549 2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
15550
15551         * scm/output-gnome.scm: Save some pointers about pango/fontconfig
15552         Unicode/OpenType and AFM.
15553
15554         * lily/include/guile-compatibility.hh (scm_from_bool): Add.
15555
15556 2004-11-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15557
15558         * lily/grob.cc (Grob): idem. Plugs mem leaks. 
15559
15560         * lily/context.cc (Context): unprotect key from ctor.
15561
15562         * scm/stencil.scm (stack-lines): return empty-stencil if argument
15563         is '()
15564         (stack-stencils): idem.
15565
15566         * Documentation/user/changing-defaults.itely (Creating titles):
15567         document new title layout options.
15568
15569         * lily/parser.yy (lilypond_header_body): copy previous
15570         $globalheader if present.
15571
15572         * lily/ly-module.cc (LY_DEFINE): rename ly:import-module to
15573         ly:module-copy
15574         
15575         * scm/page-layout.scm (marked-up-headfoot): remove old functions.
15576
15577         * scm/titling.scm: remove old titling functions
15578
15579         * lily/stencil.cc (translate): remove absolute dimension.
15580
15581         * ly/titling-init.ly (oddFooterMarkup): new file. Generate titles
15582         via markup.
15583
15584         * scm/page-layout.scm (marked-up-headfoot): create header/footer
15585         field from user-supplied markup
15586
15587         * scm/define-markup-commands.scm (on-the-fly): new markup
15588         command. Enter SCM markup procedure directly in Scheme.
15589         (fromproperty): new markup command. Read markup from props argument.
15590
15591         * scm/titling.scm (marked-up-title): create title via
15592         user-specified markup. 
15593
15594         * scm/define-markup-commands.scm (column): remove empty stencils
15595         from column.
15596
15597         * lily/ly-module.cc (LY_DEFINE): use ly_module_lookup(). This does
15598         not have side-effect of creating variable stub.
15599
15600         * lily/stencil-scheme.cc (LY_DEFINE): add ly:stencil-empty?
15601
15602 2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
15603
15604         * scm/encoding.scm (coding-alist): 
15605         * scm/font.scm (add-ec-fonts):
15606         * ly/paper-defaults.ly: Use actual name for EC fontencoding:
15607         Extended-TeX-Font-Encoding---Latin.
15608
15609         * lily/side-position-interface.cc (general_side_position): Add
15610         actual offset to error message (avoid constant error messages).
15611
15612         * lily/all-font-metrics.cc (find_font): Add "lm" to try-AFM-first
15613         block.
15614
15615         * lily/font-select.cc (select_encoded_font)
15616         (get_font_by_mag_step, get_font_by_design_size): 
15617         * lily/modified-font-metric.cc (Modified_font_metric): 
15618         * lily/paper-def.cc (find_scaled_font): Add font_encoding parameter.
15619
15620         * scm/encoding.scm (coding-alist): Add fetaDynamic.
15621         (read-encoding-file): Bugfix: do not require space after bracket.
15622
15623         * scm/font.scm (add-cork-lm-fonts): Remove lmbxi8 and lmbxi14,
15624         these do not exist.
15625
15626 2004-11-20  Graham Percival  <gperlist@shaw.ca>
15627
15628         * Documentation/user/notation.itely: added info about typesetting
15629         boxed bar numbers.
15630
15631 2004-11-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15632
15633         * flower/interval.cc (T_to_string): gcc4 fixes.
15634
15635         * scm/define-markup-commands.scm (fill-line): use
15636         stack-stencils. This fixes problems with putting already centered
15637         stencils in a line.
15638
15639         * VERSION: release 2.5.1
15640
15641         * lily/bar-line.cc (get_staff_bar_size): add line thickness.
15642
15643 2004-11-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15644
15645         * input/example-[1-3].ly: simplify.
15646
15647         * lily/cluster-engraver.cc (try_music): react to busy-playing-event
15648
15649         * scm/output-ps.scm (new-text): new function. Use glyphshow to
15650         show glyphs.
15651
15652         * scm/encoding.scm (decode-byte-string): new function.
15653
15654         * scripts/convert-ly.py (conv): add warning about
15655         set-global-staff-size.
15656
15657         * Doxyfile: add. 
15658
15659         * scripts/convert-ly.py (conv): add raggedlastbottom rule
15660         (conv): warn for TextSpanner split.
15661         (conv): warn for textheight.
15662
15663 2004-11-19  Jan Nieuwenhuizen  <janneke@gnu.org>
15664
15665         * GNUmakefile.in (install-WWW): Invoke install-info, so that when
15666         building the documentation, info with images are installed.
15667         (final-install): Fix description.  Mention sourcing of login
15668         scripts (instead of running).
15669
15670 2004-11-18  Jan Nieuwenhuizen  <janneke@gnu.org>
15671
15672         * Debian lmodern support.  Note that LilyPond will issue warnings
15673         
15674             no such encoding: "FontSpecific"
15675
15676           The font selection mechanism wants to get the encoding from the
15677           font itself, but the idea of lmodern is that it is usable with
15678           different encodings, ie, Lily should get the encoding from the
15679           font tree, rather than the font itself.  This would require some
15680           more work.
15681         
15682         * configure.in: Test for and accept lmodern if EC fonts not found.
15683
15684         * scm/framework-tex.scm (font-load-command): TeX font name
15685         mangling for latin1 encoded cork-lm fonts.
15686         (convert-to-ps): Load lm.map if available.
15687
15688         * ly/paper-defaults.ly: Use cork-lm encoding if ec is not
15689         available.
15690
15691         * scm/encoding.scm (coding-alist): Add cork-lm encoding.
15692
15693         * scm/font.scm: Add header.  Autoload cork-lm and ec fonts if
15694         available.
15695
15696         * lily/kpath.cc (ly_kpathsea_find_file): Rename.  Do not use
15697         path for absolute file name, that is silly.
15698
15699         * lily/score-engraver.cc (initialize): 
15700
15701         * Documentation/user/GNUmakefile (local-install-info): Invoke
15702         install-info --remove first.
15703
15704         * #include cleanup (Andreas Scherer).
15705
15706 2004-11-18  Heikki Junes  <hjunes@cc.hut.fi>
15707
15708         * input/test/script-abbreviations.ly: fix typos.
15709
15710 2004-11-17  Werner Lemberg  <wl@gnu.org>
15711
15712         * python/lilylib.py (options_help_str): Support pretty-printing of
15713         newlines in fourth element of option description.
15714
15715         * scripts/lilypond-book.py (option_definitions): Use new lilylib
15716         feature.
15717         Sort options.
15718
15719         * Documentation/user/lilypond-book.itely: Finish update.
15720
15721 2004-11-17  Jan Nieuwenhuizen  <janneke@gnu.org>
15722
15723         * Documentation/user/macros.itexi: Add comment about \command.
15724
15725         * Documentation/user/lilypond.tely:
15726         * Documentation/user/lilypond-book.itely: Fix names of lilypond
15727         and lilypond-book nodes, so that `info lilypond' visits the manual
15728         at top level, and `info lilypond-book' visits the lilypond-book
15729         section.
15730
15731         * Documentation/user/GNUmakefile (local-install-info): Fix rules
15732         and packager messages.
15733
15734         * lily/pangofc-afm-decoder.cc: Update test.
15735
15736 2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
15737
15738         * scm/lily-library.scm (char->unicode-index): New function.
15739
15740         * scm/output-gnome.scm: 
15741         * scm/output-svg.scm: Cleanup.  Map custom fonts to PUA.
15742
15743         * Proper naming of file name throughout; s/filename/file[-_]name/.
15744
15745         * lily/modified-font-metric.cc ("ly:font-encoding"): New function.
15746
15747         * lily/pangofc-afm-decoder.cc (pango_fc_afm_get_glyph): Map onto PUA.
15748
15749 2004-11-16  Werner Lemberg  <wl@gnu.org>
15750
15751         * scripts/lilypond-book.py: The Lord has commanded me to use only
15752         tabs for indentation.  Your humble servant obeys.
15753
15754 2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
15755
15756         * scm/output-svg.scm: Font fixes.  Sodipodi now groks svg
15757         including font, if LilyPond-feta font is only feta font in path.
15758
15759         * scm/output-gnome.scm (text): Revert to file name of font if font
15760         has no name.  Fixes ec font selection.
15761         (char): Bugfix: do not utf8 twice.  Fixes clefs.
15762
15763         * scm/framework-svg.scm:
15764         * scm/output-svg.scm: New file.  TODO: figure out how to
15765         do character by index in font.
15766
15767         * scm/output-sodipodi.scm: Remove.
15768
15769         * scm/output-ps.scm (stem): Remove.
15770
15771 2004-11-15  Jan Nieuwenhuizen  <janneke@gnu.org>
15772
15773         * scm/output-gnome.scm (beam): New function.
15774         (slur): Round corners.
15775         (round-filled-box): Round corners.
15776
15777 2004-11-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15778
15779         * scm/output-gnome.scm (beam): add function.
15780         (draw-line): new routine.
15781         (dashed-line): stub; call draw-line
15782         (polygon): new routine.
15783
15784 2004-11-15  Werner Lemberg  <wl@gnu.org>
15785
15786         * Documentation/user/lilypond-book.itely: Revise section on
15787         lilypond-book options.
15788         Other minor fixes.
15789
15790         * scripts/lilypond-book.py: Change indentation to 4.
15791         Minor formatting.
15792
15793 2004-11-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15794
15795         * lily/system.cc (apply_tweaks): new function. Run tweaks on all
15796         grobs that have tweaks specced.
15797         
15798 2004-11-14  Heikki Junes  <hjunes@cc.hut.fi>
15799
15800         * Documentation/user/sound-output.itexi: add code snippets for MIDI.
15801
15802 2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
15803
15804         * lily/font-metric.cc (get_indexed_char_stencil): Bugfix: get
15805         actual char #, not 0 based index.
15806
15807         * lily/system-start-delimiter.cc (staff_brace): Start at 65.
15808
15809         * mf/feta-beugel.mf: Actually start at char #65.  Add header.
15810         Warning: do make -C mf clean.
15811
15812         * lily/context-property.cc: Compile fix.
15813
15814         * scm/output-gnome.scm: Add ec-fonts-mftraced to ~/.fonts.conf.
15815         Grok ec-fonts, braces and dynamics.
15816
15817         * scm/framework-gnome.scm (gnome-main): Register braces with pango.
15818
15819 2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15820
15821         * lily/include/tweak-registration.hh: new file.
15822
15823         * lily/tweak-registration.cc: new file.
15824
15825         * scm/framework-gnome.scm (save-tweaks): use new key mechanism for
15826         saving tweaks.
15827
15828         * scm/output-gnome.scm (text): comment dribble.
15829
15830 2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
15831
15832         * lily/pangofc-afm-decoder.cc (main): Test more feta fonts.
15833
15834         * scm/output-gnome.scm (bezier-sandwich): New function.  Reset
15835         path-def before using.  Fixes muchtomany slurs in wrong places
15836         bug.
15837
15838 2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15839
15840         * lily/grob-scheme.cc (LY_DEFINE): add new function ly:grob-key.
15841
15842         * lily/include/object-key-undumper.hh (Module): new file.
15843
15844         * lily/object-key-undumper.cc (Module): New file. Deserialize
15845         keys. SCM bindings
15846
15847         * lily/object-key-dumper.cc (Object_key_dumper): idem.
15848         Provide SCM bindings.
15849
15850         * lily/include/object-key-dumper.hh (class Object_key_dumper): 
15851         new file. Serialize object keys.
15852         
15853         * lily/object-key.cc (dump): new function.
15854         (as_scheme): new virtual function
15855         (undump): new function
15856         (undumpers): new table.
15857
15858         * lily/include/global-context.hh (Context): take \score key upon init.
15859
15860         * lily/object-key-dumper.cc (serialize_key): new file.
15861
15862         * lily/include/object-key-dumper.hh (class Object_key_dumper): new file.
15863
15864         * lily/lily-lexer.cc: remove \quote.
15865
15866         * lily/lookup.cc (triangle): rewrite, obviating symmetric_x_triangle().
15867
15868         * lily/context.cc (Context): take key argument in ctor.
15869         (create_context): new function
15870
15871         * lily/grob.cc (Grob): take key argument in ctor.  
15872
15873         * lily/lilypond-key.cc (do_compare): new file.
15874
15875         * lily/object-key.cc (Object_key): new file.
15876
15877         * lily/include/object-key.hh (class Object_key): new file.
15878
15879         * lily/include/lilypond-key.hh (class Lilypond_context_key): new file.
15880
15881 2004-11-13  Graham Percival  <gperlist@shaw.ca>
15882
15883         * Documentation/user/lilypond-book.itely: add small warning about
15884         noindent default in lilypond-book.
15885
15886         * Documentation/user/converters.itely: add examples for convert-ly.
15887
15888         * Documentation/user/examples.itely: change version string in templates
15889         to 2.4.0.
15890
15891 2004-11-12  Karl Hammar  <karl@aspodata.se>
15892
15893         * GNUmakefile.in (local-WWW-post): `find ...` overflows the
15894         cmdline, use xargs instead (backportme)
15895
15896 2004-11-10  Andreas Scherer  <andreas_mutopia@freenet.de>
15897         
15898         * Documentation/user/: Numerous fixes in the user manual.
15899
15900 2004-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15901
15902         * lily/parser.yy (re_rhythmed_music): search music expression for
15903         context-id, surround by \new Voice if not found. Fixes:
15904         addlyrics-second-staff.ly
15905
15906         * VERSION: 2.5.0 released.
15907         
15908 2004-11-12  Jan Nieuwenhuizen  <janneke@gnu.org>
15909
15910         * Documentation/index.html.in: Fix url to one big page.  (backportme)
15911
15912         * Documentation/user/GNUmakefile: Separate rules for split and
15913         unsplit html documents.  Remove perl massaging.  (backportme)
15914
15915 2004-11-11  Graham Percival  <gperlist@shaw.ca>
15916
15917         * Documentation/user/lilypond-book.itely: add short warning about
15918         \lilypond{} in LaTeX docs.
15919
15920 2004-11-11  Jan Nieuwenhuizen  <janneke@gnu.org>
15921
15922         * stepmake/aclocal.m4: Barf if kpathsea/kpathsea.h is not
15923         found.  (backportme)
15924
15925         * Documentation/topdocs/INSTALL.texi (ec-fonts-mtraced): Add
15926         version requirement.  (backportme)
15927
15928         * configure.in: Be explicit about old versions of
15929         ec-fonts-mtraced.  (backportme)
15930
15931         * lily/context-selector.cc (set_tweaks): New function.
15932         * lily/grob-selector.cc (set_tweaks): (Re)set hash table.  Fixes
15933         web with -DTWEAK.
15934
15935         * Documentation/user/introduction.itely (Automated engraving):
15936         Remove fragment option.  Fixes web.
15937
15938         * lily/context-property.cc (make_item_from_properties):
15939         * lily/context.cc (add_context)[TWEAK]: Tweak registration behind
15940         #ifdef.
15941
15942         * scm/define-context-properties.scm
15943         (all-internal-translation-properties): Add tweakRank and tweakCount.
15944
15945         * lily/grob.cc: 
15946         * scm/define-grob-properties.scm (all-internal-grob-properties):
15947         Add tweak-rank and tweak-count.
15948
15949 2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
15950
15951         * scm/output-gnome.scm (string->utf8-string, char->utf8-string):
15952         New function.
15953         (text): Use them.
15954
15955         * scm/framework-gnome.scm (item-event): Add support from TLA.  Support
15956         animated/opaque grob dragging tweaks.
15957
15958         * buildscripts/guile-gnome.sh: Update.
15959
15960 2004-11-10  Mats Bengtsson  <mabe@s3.kth.se>
15961
15962         * scm/define-grobs.scm (all-grob-descriptions): Added
15963         line-interface to the LigatureBracket object.
15964
15965 2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
15966
15967         * scm/framework-gnome.scm (item-event): Support non-animated mouse
15968         dragging tweaks.
15969
15970         * lily/lily-guile.cc (ly_to_string, ly_to_symbol): New function.
15971
15972         * lily/context-selector.cc (store_context): New function.
15973
15974         * lily/grob-selector.cc (register_grob)[TWEAK]: Apply tweak.
15975         (store_grob): New function.
15976         (identify_grob): Add Moment parameter.
15977
15978         * lily/lily-parser.cc (parse_file)[TWEAK]: Read .ly.t file if it
15979         exists.
15980
15981         * scm/framework-gnome.scm (save-tweaks): Write as alist.
15982
15983 2004-11-09  Jan Nieuwenhuizen  <janneke@gnu.org>
15984
15985         * scm/framework-gnome.scm (item-event): Print grob id.
15986         (save-tweaks): New function.
15987         (tweak): New funtion.
15988         (item-event): Use it, bound to arrow keys.
15989
15990         * lily/context-property.cc (make_item_from_properties): Register grob.
15991         * lily/context.cc (add_context): Register context.
15992
15993         * lily/include/context-selector.hh:
15994         * lily/include/grob-selector.hh:
15995         * lily/context-selector.cc:
15996         * lily/grob-selector.cc: New file.
15997
15998 2004-11-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15999
16000         * lily/slur.cc: add 'positions to interface
16001
16002         * lily/main.cc: reinstate PS as standard output format. 
16003
16004         * scm/framework-tex.scm (output-preview-framework): print systems
16005         up to first non title system.
16006
16007         * lily/grace-engraver.cc (start_translation_timestep): split
16008         scm_cadddr
16009         
16010 2004-11-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16011
16012         * lily/quote-iterator.cc (Module): remove old quote-iterator
16013
16014         * scm/define-music-types.scm (music-descriptions): move
16015         NewQuoteMusic over QuoteMusic
16016
16017         * Documentation/user/notation.itely (Formatting cue notes): use
16018         \cueDuring.
16019
16020         * lily/new-quote-iterator.cc (quote_ok): new function.
16021
16022         * input/regression/quote-cue-during.ly: new file.
16023
16024         * input/regression/quote-grace.ly: new file.
16025
16026         * scm/define-context-properties.scm (Module): change definition of
16027         graceSettings
16028
16029         * lily/context-property.cc (Module): rename from
16030         translator-property.cc
16031
16032         * lily/context.cc (context_name_symbol): new function
16033
16034         * lily/grace-engraver.cc: new file. Set properties for grobs based
16035         on the grace-ness of now_moment().
16036
16037         * scm/music-functions.scm (add-grace-property): use list
16038         iso. vector for graceSettings
16039         remove set-{start,stop}-grace-properties. 
16040
16041         * lily/new-quote-iterator.cc (construct_children): set
16042         quote_outlet_ if no quoted-context-{id,type} specified.
16043
16044         * scripts/convert-ly.py (conv): \quote -> \quoteDuring.
16045
16046         * lily/parser.yy (command_element): remove \quote.
16047
16048         * ly/music-functions-init.ly (location): add quoteDuring music
16049         function. 
16050
16051         * lily/lexer.ll: allow \encoding in lyrics as well.  Remove
16052         optional semicolon. (backportme)
16053
16054 2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
16055
16056         * python/GNUmakefile (STEPMAKE_TEMPLATES): Unset USER_LDFLAGS, no
16057         need to link to GUILE et al.
16058
16059 2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16060
16061         * scm/define-music-properties.scm (all-music-properties): add
16062         quoted-context-type, quoted-context-id.
16063
16064         * scm/lily.scm (type-check-list): new function.
16065         
16066         * scm/lily-library.scm: new file. Generic library routines.
16067
16068         * lily/parser.yy (Generic_prefix_music): move typechecking out of
16069         parser.
16070
16071         * ly/music-functions-init.ly: add quoteDuring function.
16072
16073         * lily/include/music-iterator.hh (class Music_iterator): rename
16074         set_translator -> set_context
16075
16076         * lily/parser.yy (Generic_prefix_music_scm): add
16077         MUSIC_FUNCTION_SCM_SCM_MUSIC
16078
16079         * scm/lily.scm (sanitize-command-option): new function. (backportme)
16080
16081         * scm/framework-tex.scm (header): sanitize TeX paper size.
16082         (backportme)
16083
16084 2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
16085
16086         * elisp/lilypond-indent.el (LilyPond-indent-level): 2 is now standard.
16087
16088         * tex/lilyponddefs.tex: If no inputencoding use latin1.  (backportme)
16089
16090         * scm/framework-tex.scm (font-load-command): Use T1 if no
16091         font-encoding set.  (backportme)
16092
16093         * scm/lily.scm (postscript->pdf): Remove .pdf file if it
16094         exists before converting.  (backportme)
16095
16096         * scm/framework-tex.scm (convert-to-dvi): Remove .dvi file if it
16097         exists before converting.  (backportme)
16098         (convert-to-ps): Remove .ps file if it exists before
16099         converting.  (backportme)
16100
16101         * lily/lexer.ll: Remove extra progress newline, use present tense.
16102
16103         * scm/paper.scm (paper-alist): public.
16104         * scm/framework-tex.scm (convert-to-ps):
16105         * scm/lily.scm (postscript->pdf): Do not leak papersizename into
16106         command line.
16107
16108 2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16109
16110         * scm/lily.scm (ly:system): add > /dev/null 2>&1 . (backportme)
16111
16112         * lily/recording-group-engraver.cc (derived_mark): mark
16113         now_events_. (backportme)
16114
16115 2004-11-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16116
16117         * mf/GNUmakefile: use Fedora-3 in download link. (backportme.)
16118
16119         * scm/framework-tex.scm (convert-to-dvi): use ly:system for
16120         invoking latex. (backportme.)
16121
16122         * lily/stem.cc (off_callback): center stems for all rest stems.
16123
16124 2004-11-05  Werner Lemberg  <wl@gnu.org>
16125
16126         * Documentation/user/lilypond.tely: Add more guidelines for writing
16127         lilypond texinfo documents.
16128
16129 2004-11-05  Heikki Junes  <hjunes@cc.hut.fi>
16130
16131         * Documentation/index.html.in: remove <hr>.
16132
16133         * THANKS: change 2.3 to 2.4.
16134
16135 2004-11-05  Jan Nieuwenhuizen  <jannneke@gnu.org>
16136
16137         * scm/output-gnome.scm: More fontconfig comment.
16138
16139 2004-11-05  Pedro Kroger  <kroeger@pedrokroeger.net>
16140
16141         * GNUmakefile.in ($(builddir)/share/lilypond-force): create the
16142         <package> directory in $(builddir)/share according with
16143         PACKAGE_NAME defined in the VERSION file.
16144
16145 2004-11-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16146
16147         * lily/beam.cc (rest_collision_callback): use local beam
16148         multiplicity.
16149
16150         * input/regression/stem-stemlet.ly: new file.
16151
16152         * lily/stem.cc (add_head): store rests as well.
16153
16154         * scm/define-grob-properties.scm (all-user-grob-properties): add
16155         stemlet-length
16156
16157         * lily/stem.cc: store rests as well.
16158         
16159         * input/regression/new-slur.ly: mention forcing.
16160
16161 2004-11-04  Werner Lemberg  <wl@gnu.org>
16162
16163         * Documentation/user/*: A new round of layout fixes and document
16164         structure cleanup.
16165
16166 2004-11-04  Heikki Junes <hjunes@cc.hut.fi>
16167
16168         * Documentation/user/lilypond.tely: changes 2.3.x to 2.5.x.
16169
16170 2004-11-04  Jan Nieuwenhuizen  <janneke@gnu.org>
16171
16172         * Documentation/topdocs/INSTALL.texi (Top): Remove geometry.
16173
16174 2004-11-03  Jan Nieuwenhuizen  <janneke@gnu.org>
16175
16176         * Documentation/topdocs/INSTALL.texi (Top): Fix geometry url (dax).
16177
16178         * lily/lily-parser.cc (LY_DEFINE): Remove "Now " from message.
16179
16180         * lily/main.cc (main): Invoke identify.
16181
16182         * scm/lily.scm (postscript->pdf): Remove progress newline.
16183         Write progress to stderr.
16184
16185         * lily/paper-book.cc (output): Remove progress newline.
16186
16187         * scm/framework-tex.scm (convert-to-dvi, convert-to-ps): Call
16188         gettext on user messages, and remove whitespace.
16189
16190         * lily/paper-outputter.cc (get_paper_outputter): Add progress newline.
16191
16192         * scripts/lilypond-latex.py (program_name): Bugfix: use only basename of
16193         argv[0] (Thomas Scharkowski).
16194
16195         * configure.in: Bugfix: add REQUIRED parameter to STEPMAKE_TEXMF
16196         call (carlyannehorse).  Also check for mf and mf-nowin.  Add check
16197         for ec-fonts-mtraced.
16198
16199         * GNUmakefile.in (builddir-exec): Add symlink tex/out.  Fixes
16200         --srcdir build (Bertalan).
16201
16202         * stepmake/aclocal.m4 (STEPMAKE_GUILE_DEVEL): Check for guile
16203         headers and library too (Laura Conrad).
16204
16205         * Documentation/topdocs/INSTALL.texi (Top): Mention development
16206         package for guile too (Laura Conrad).
16207
16208         * lily/main.cc (usage): Typo.
16209
16210 2004-11-02  Werner Lemberg  <wl@gnu.org>
16211
16212         * Documentation/user/notation.ly: More fixes to improve appearance.
16213
16214         * tex/texinfo.tex: Updated from texinfo CVS -- this version provides
16215         better output for multicolumn tables.
16216
16217 2004-11-01  Mats Bengtsson  <mabe@s3.kth.se>
16218
16219         * lily/main.cc (dir_info): Fixed typo in the printouts.
16220
16221 2004-11-01  Werner Lemberg  <wl@gnu.org>
16222
16223         * buildscripts/mf-to-table.py (write_fontlist): Improve formatting
16224         of output.
16225         Set `per_line' to 2; replace hard-coded value with it.
16226
16227         * Documentation/user/*: Many fixes to improve appearance of
16228         printed manual.
16229
16230 2004-11-01  Werner Lemberg  <wl@gnu.org>
16231
16232         * Documentation/user/changing-defaults.itely,
16233         Documentation/user/notation.ly,
16234         Documentation/user/programming-interface.itely: Use @/.
16235         Fix formatting of some lilypond snippets and tables.
16236
16237         * scripts/lilypond-book.py (compose_ly): Provide useful default
16238         for LINEWIDTH in `override'.
16239
16240 2004-10-31  Graham Percival  <gperlist@shaw.ca>
16241
16242         * Documentation/user/invoking.itely: change "3.0" -> "2.4"
16243
16244 2004-10-31  Werner Lemberg  <wl@gnu.org>
16245
16246         Resetting @exampleindent to `5' gives ugly results with texinfo's
16247         DVI output.  Use `@format @exampleindent 0 ... @end format' instead
16248         (if not quoting) to change @exampleindent only locally.
16249
16250         * scripts/lilypond-book.py (NOQUOTE): New variable.
16251         (output) [LATEX]: Remove AFTER and BEFORE.
16252         [TEXINFO]: Remove AFTER and BEFORE.
16253         Fix QUOTE and VERBATIM pattern.
16254         Add NOQUOTE pattern.
16255         (Lilypond_snippet) [output_info, output_latex]: Don't handle AFTER
16256         and BEFORE.
16257         [output_texinfo]: Use NOQUOTE.
16258
16259 2004-10-31  Graham Percival  <gperlist@shaw.ca>
16260
16261         * Documentation/user/changing-defaults.itely: clarify paper
16262         size commands with correct info.
16263
16264         * Documentation/user/lilypond-book.itely: add more docs for
16265         filename extensions.
16266
16267 2004-10-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16268
16269         * VERSION (PATCH_LEVEL): Branch lilypond_2_4, release 2.4.0
16270         (PATCH_LEVEL): start 2.5.0.
16271
16272 #Local variables:
16273 #coding: utf-8
16274 #End:
16275