]> git.donarmstrong.com Git - lilypond.git/blob - ChangeLog
(default-script-alist): set avoid-slur for turn,
[lilypond.git] / ChangeLog
1 2006-10-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
2
3         * lily/completion-note-heads-engraver.cc (process_music): don't
4         skimp on memory usage.
5
6         * lily/beam.cc (set_stem_lengths): do set_stemend for invisible
7         stems too. Fixes #5
8
9         * lily/parenthesis-engraver.cc (acknowledge_grob): set parent of
10         parenthesis item. This fixes premature Y-extent triggering. Fixes
11         issue #95. 
12  
13         * VERSION (PATCH_LEVEL): bump version.
14
15 2006-10-04  Graham Percival  <gpermus@gmail.com>
16
17         * Documentation/user/advanced-notation.itely: added
18         info about instrument names for piano or other contexts,
19         thanks Marcus!
20
21 2006-10-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
22
23         * mf/feta-bolletjes.mf (solfa_quarter_width): use
24         solfa_base_notewidth as unit for non-DO-notes too.
25
26         * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: update email.
27
28         * VERSION: release 2.9.21
29
30         * Documentation/topdocs/NEWS.tely (Top): simpler, more clearer
31         override.
32
33 2006-10-04  Mats Bengtsson  <mabe@drongo.s3.kth.se>
34
35         * python/lilylib.py (progress): Minor fix.
36
37 2006-10-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
38
39         * lily/note-name-engraver.cc: doc engraver.
40
41         * scm/output-lib.scm (hairpin::calc-grow-direction): new function.
42
43         * lily/dynamic-engraver.cc (process_music): don't set grow-direction.
44
45         * scm/define-grobs.scm (all-grob-descriptions): calc duration-log
46         by callback.
47
48         * lily/stem-engraver.cc (make_stem): don't set duration-log
49
50         * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
51         write snippet-names binary.
52
53         * python/lilylib.py (system): use os.system for mingw32
54
55         * scripts/lilypond-book.py (bindir): use os.pathsep for prepending
56         to $PATH.
57
58         * scm/backend-library.scm: update email address.
59
60         * Documentation/topdocs/NEWS.tely (Top): add duration-log override
61         example.
62
63         * scm/define-grobs.scm (all-grob-descriptions): use callback to
64         calc dot count.
65
66         * lily/dots-engraver.cc (class Dots_engraver): new engraver:
67         handle dot creation separately.
68
69         * lily/tab-note-heads-engraver.cc (process_music): idem.
70
71         * lily/drum-note-engraver.cc (process_music): idem.
72
73         * lily/note-heads-engraver.cc (process_music): idem.
74
75         * lily/rest-engraver.cc: don't set duration-log.
76
77         * scm/output-lib.scm (string-number::calc-text): new function.
78         (note-head::calc-duration-log): new function.
79
80         * lily/fingering-engraver.cc (make_script): remove 'text setting.
81
82         * scm/output-lib.scm (fingering::calc-text): new function.
83
84 2006-10-04  Mats Bengtsson  <mabe@drongo.s3.kth.se>
85
86         * scripts/lilypond-book.py: Fix typo gs-load-font -> gs-load-fonts
87          and include-eps-font -> include-eps-fonts
88
89 2006-10-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
90
91         * lily/multi-measure-rest-engraver.cc: use internalBarNumber
92
93         * lily/timing-translator.cc: list properties.
94         (start_translation_timestep): update internalBarNumber too.
95
96         * scm/define-context-properties.scm
97         (all-user-translation-properties): add internalBarNumber.
98
99         * input/regression/spacing-no-note.ly: new file.
100
101         * buildscripts/output-distance.py (link_file): verbosity for OSError.
102
103         * lily/book.cc: #include cleanup.
104
105         * lily/include/lily-guile-macros.hh: add assert to
106         scm_or_str2symbol(SCM).
107
108         * VERSION (PATCH_LEVEL): bump version.
109
110         * lily/spacing-spanner.cc (musical_column_spacing): handle
111         musical->nonmusical spacing case, where there is no spacing
112         wish. Fixes issue #61.
113
114         * lily/pango-font.cc (text_stencil): allow 'tight' bounds.
115         (pango_item_string_stencil): use logical rect horizontally (to
116         preserve spaces), ink_rect vertically (for time signatures).
117
118         * lily/font-metric.cc (word_stencil): new interface function
119
120         * input/regression/utf-8-mixed-text.ly: new file.
121
122         * lily/percent-repeat-engraver.cc (listen_percent): remove
123         spurious warning.
124
125         * lily/phrasing-slur-engraver.cc (acknowledge_script): only ack
126         non-dynamic scripts. Fixes #30.
127
128         * lily/slur.cc (outside_slur_callback): make offset_scm optional.
129
130         * lily/beam.cc (rest_collision_callback): make prev_offset optional.
131
132         * lily/grob-closure.cc (chain_offset_callback): don't pass 0 but
133         SCM_UNDEFINED for non-existent data.
134
135         * lily/side-position-interface.cc (general_side_position): allow
136         optional current_offset argument for chaining, so combinations of side-position
137         and outside slur callback don't add up.  Fixes issue #92.
138
139         * lily/pango-font.cc (pango_item_string_stencil): use
140         logical_rect. This prevents spaces after words from disappearing,
141         issue #72.
142         
143         * VERSION: release 2.9.20
144
145 2006-10-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
146
147         * scm/define-grob-properties.scm (all-user-grob-properties):
148         mention stencil as user settable.
149
150 2006-10-02  Joe Neeman  <joeneeman@gmail.com>
151
152         * Documentation/user/page.itely (Page formatting): 
153         document auto-first-page-number
154
155         * lily/page-breaking.cc (find_chunks_and_breaks): 
156         * lily/paper-score.cc (calc_breaking): Follow changes to the
157         Constrained_breaking interface
158
159         * lily/constrained-breaking.cc (calc_subproblem): run the main loop
160         here backwards, as an optimisation
161         (initialize): new function; move most of the code in resize () here
162         (combine_demerits): cache ragged_right_
163         (Constrained_breaking): constructor now takes the Paper_score
164
165 2006-10-02  Erik Sandberg  <mandolaerik@gmail.com>
166         
167         * lily/lexer.ll, lily/parser.yy: Add EXPECT_NO_MORE_ARGS token, to
168         avoid parser lookahead for 0-ary functions.
169
170         * lily/translator.cc: Extract event classes from
171         IMPLEMENT_TRANSLATOR_LISTENER for documentation generation.
172
173 2006-10-02  Heikki Junes  <hjunes@gmail.com>
174
175         * po/fi.po: Fix spaces, commas etc. in Finnish translation using
176         KBabel fix tool.
177
178 2006-10-01  Nicolas Sceaux  <nicolas.sceaux@free.fr>
179
180         * scm/layout-page-layout.scm (page-breaking-wrapper): new
181         function. Call the page breaking function selected in the
182         `page-breaking' \paper variable, then the post processing function
183         chosen using the `page-post-process' \paper variable.
184         (line-height): new function. Return the height of a system.
185         (line-minimum-position-on-page): new function. Return the position
186         of a system on page (using the previous line position), only
187         considering between system padding.
188         (stretchable-line?): new function. Says whether a line can be
189         stretched (ie. is not a title nor a single staff system).
190         (page-maximum-space-left): new function. Computes space left on a
191         page, when all systems are separated by their padding.
192
193         * lily/page-breaking.cc (breaking::make_pages): Move page post
194         processing function call to page breaking wrapper (common to all
195         page breakers).
196
197         * lily/paper-book.cc (book::pages): call the page breaking
198         wrapper, instead of the page breaker directly
199
200         * ly/paper-defaults.ly: Add \paper variables for page breaking
201         wrapper and page post processing function. Make
202         `write-page-layout' value depend on the 'dump-tweaks option. Add a
203         `system-maximum-stretch-procedure' variable for holding a function
204         computing the maximum stretch a system allows.
205
206         * scm/layout-page-dump.scm (write-page-breaks): computes the
207         stretch to apply to systems on a page to minimize left
208         space. Dump this stretch length.
209
210         * ly/music-functions-init.ly (spacingTweaks): implement it. Read
211         the system-stretch property of the tweak data to stretch the
212         system.
213         (includePageLayoutFile): Void function which includes the
214         generated page-layout file if it exists and if the page layout
215         dumping is not asked.
216         (scoreTweak): if the score tweak named by the argument exists,
217         return it.
218
219 2006-10-01  Joe Neeman  <joeneeman@gmail.com>
220
221         * lily/page-spacing.cc (compress_lines, uncompress_solution):
222         handle correctly the case where there are multiple \noPageBreaks
223         in a row.
224
225 2006-09-30  Laura Conrad <lconrad@laymusic.org>
226
227         * abc2ly.py adds segno (S) and Coda (O) to articulations.
228         
229         * abc2ly.py fix so that entering " -- " will translate to a -- in
230         the lilypond instead of a " - - "
231         
232 2006-09-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
233
234         * lily/align-interface.cc: fix typo
235
236         * lily/dynamic-text-spanner.cc (print): Add a special case for
237         trill spanner right sides. 
238
239         * scm/define-grobs.scm (all-grob-descriptions): set padding to 0.1
240
241         * lily/align-interface.cc (get_extents_aligned_translates): add
242         support for padding variable.
243
244         * lily/break-align-interface.cc (self_align_callback): oops: use
245         loop variable in guard.
246
247         * input/regression/repeat-percent-grace.ly: new file.
248
249         * lily/percent-repeat-engraver.cc (start_translation_timestep):
250         remember first currentCommandColumn of a grace run. Fixes issue 70.
251
252         * lily/percent-repeat-iterator.cc (class Percent_repeat_iterator):
253         move class definition to CC file.
254
255         * lily/multi-measure-rest.cc (percent): use robust_relative_extent()
256
257         * lily/slash-repeat-engraver.cc (listen_percent): don't warn for
258         measure-long  repeats.
259
260         * flower/include/international.hh: include stdarg.h
261
262 2006-09-30  Joe Neeman  <joeneeman@gmail.com>
263
264         * lily/page-turn-page-breaking.cc (calc_demerits): now that we allow
265         put_systems_on_pages to return an empty result, we need to assign
266         demerits properly in that case.
267         (put_systems_on_pages): Make the number of pages depend on the
268         evenness of page_number. Add auto-first-page-number.
269         (calc_subproblem): ensure that the page-number is even for the
270         left-hand page. Warn if the first page-turn doesn't fit onto the
271         first (right-hand) page.
272
273         * lily/page-spacing.cc (solve): bug: demerits_ would always be inf
274         (min_page_count): make this publicly accessible
275         (min_page_count): fix a bug when there are forced page breaks that
276         was introduced when I made this loop run backwards
277         (space_systems_on_n_pages, space_systems_on_n_or_one_more_pages):
278         replace space_systems_on_min_pages with these two. The logic in
279         space_systems_on_min_pages was getting too convoluted and is better
280         contained in page-turn-page-breaking.
281
282         * lily/page-turn-engraver.cc (breakable_column): remove an always-true
283         conditional
284         (breakable_column): typo
285
286         * lily/source-file.cc (get_line): fix off-by-one error
287         and clean up some of the logic
288
289 2006-09-29  Joe Neeman  <joeneeman@gmail.com>
290
291         * lily/page-breaking.cc (make_pages): honour the first-page-number
292         property
293
294 2006-09-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
295
296         * VERSION (PACKAGE_NAME): bump version.
297
298 2006-09-26  Pal Benko  <benko.pal@gmail.com>
299
300         * scm/parser-clef.scm: add petrucci-f3 and -f4 clefs
301         (the latter is the same as petrucci-f which is kept for compatibility)
302
303 2006-09-26  Erik Sandberg  <mandolaerik@gmail.com>
304         
305         * lily/part-combine-iterator.cc: solo1-event -> solo-one-event
306
307 2006-09-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
308
309         * lily/global-context.cc (run_iterator_on_me): break out of loop
310         if moment doesn't increase.
311
312         * scm/define-grob-properties.scm (all-user-grob-properties): add
313         forced property.
314
315         * lily/accidental.cc (after_line_breaking): read forced property.
316
317         * lily/accidental-engraver.cc (process_acknowledged): set 'forced
318         property.
319
320         * input/regression/accidental-forced-tie.ly:  new file.
321
322 2006-09-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
323
324         * ly/engraver-init.ly: set ignoreFiguredBassRest in Staff context.
325
326         * lily/figured-bass-engraver.cc: only listen to rest events if
327         ignoreFiguredBassRest is not set.
328
329         * scm/define-context-properties.scm
330         (all-user-translation-properties): add ignoreFiguredBassRest property
331
332 2006-09-24  Joe Neeman  <joeneeman@gmail.com>
333
334         * lily/paper-book.cc (get_system_specs):
335         (set_system_penalty): fix breakbefore.
336         We used to set a penalty on the system after the break, now we
337         set a permission on the system before the break
338
339         * lily/grob-property.cc: add scm debugging hooks into
340         property modification
341
342         * lily/context-property.cc:
343         * lily/engraver.cc:
344         rename make_foo_from_properties to internal_make_foo and
345         move it from context-property.cc to a member function of
346         Engraver.
347         
348         * lily/include/lily-guile-macros.hh:
349         overload ly_symbol2scm macro so that there is no more need
350         to use internal_foo
351
352         * lily/volta-repeat-iterator.cc:
353         * lily/tweak-engraver.cc:
354         * lily/tuplet-bracket.cc:
355         * lily/span-bar-engraver.cc:
356         * lily/script-engraver.cc:
357         * lily/prob-scheme.cc:
358         * lily/pointer-group-interface.cc:
359         * lily/parser.yy:
360         * lily/grob-scheme.cc:
361         * lily/grob-property.cc:
362         * lily/context.cc:
363         * lily/context-property.cc:
364         * lily/break-substitution.cc:
365         * lily/break-align-engraver.cc:
366         * lily/axis-group-interface.cc:
367         * lily/align-interface.cc:
368         remove calls to internal_FOO
369
370         * lily/system-start-delimiter-engraver.cc:
371         * lily/parenthesis-engraver.cc:
372         * lily/accidental-engraver.cc:
373         remove calls to make_foo_from_properties
374
375 2006-09-23  Graham Percival  <gpermus@gmail.com>
376
377         * Documentation/user/programming-iterfaces.itely: fix
378         def-music-function -> define-music... leftover.
379
380 2006-09-23  Joe Neeman  <joeneeman@gmail.com>
381
382         * lily/page-spacing.cc (min_page_count): by running the loop
383         backwards, we can calculate ragged_last properly.
384
385 2006-09-22  Mats Bengtsson  <mabe@drongo.s3.kth.se>
386
387         * ly/titling-init.ly (scoreTitleMarkup): Rename (typo!?)
388         printfirst-page-number -> print-first-page-number
389
390         * python/convertrules.py: corresponding rule.
391
392         * Documentation/user/page.itely (Page formatting): Document the
393         default values of all page layout parameters. 
394
395 2006-09-22  Erik Sandberg  <mandolaerik@gmail.com>
396
397         * lily/lexer.ll: remove limitation on music function arity. New
398         mode extratoken, which inserts extra EXPECT_* tokens after
399         MUSIC_FUNCTION token. Junk all MUSIC_FUNCTION_* tokens.
400
401         * lily/parser.yy: Change grammar for music function accordingly.
402
403         * lily/include/lily-parser.hh: New method get_state, new member
404         hidden_state. Works around a problem when parser fetches
405         MUSIC_FUNCTION token but not the following EXPECT_* token.
406
407         * lily/translator.cc, lily/context.cc:, lily/translator-group.cc:
408         remove try_music
409
410         * lily/*-engraver.cc, lily/*-performer.cc: Remove all remaining
411         references to Music; use ASSIGN_EVENT_ONCE everywhere
412
413         * lily/grob-info.cc: junk *music_cause
414
415         * lily/music.cc: copy eventified articulations to stream event
416
417         * lily/part-combine-iterator.cc: Cleanup using enums
418
419         * lily/translator-group.cc: Junk OldMusicEvent, and associated
420         methods
421
422         * lily/include/engraver.hh: Junk music.hh include
423
424         * lily/stream-event.cc: Changed constructors
425
426 2006-09-21  Graham Percival  <gpermus@gmail.com>
427
428         * Documentation/user/tweaks.itely (Fitting music onto fewer
429         pages): change settings to avoid warning messages.
430
431 2006-09-21  Mats Bengtsson  <mabe@drongo.s3.kth.se>
432
433         * Documentation/user/tweaks.itely (Fitting music onto fewer
434         pages): Add between-system-space setting. 
435
436 2006-09-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
437
438         * lily/accidental-placement.cc (calc_positioning_done): don't
439         trigger Y-extent calculation too early. Use pure_height instead.
440
441         * lily/scale.cc (LY_DEFINE): new file. 
442
443 2006-09-20  Joe Neeman  <joeneeman@gmail.com>
444
445         * lily/page-breaking.cc (find_chunks_and_breaks): ignore breaks
446         that happen at the start of a score: having a zero-length
447         chunk was messing up min_system_count calculations.
448
449         * lily/source-file.cc (get_line): lower_bound, not
450         binary_search. Fixes problem where point-and-click would
451         always point to the first line.
452
453 2006-09-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
454
455         * lily/accidental-placement.cc (calc_positioning_done): also put
456         stems into accidental support. 
457
458         * lily/tie-engraver.cc (process_music): also set tieMelismaBusy if
459         event_ detected.
460
461         * scm/script.scm (default-script-alist): avoid-slur and
462         slur-padding for portato script.
463
464         * lily/stem-tremolo.cc (translated_stencil): new function. 
465         (height): use new function. Fixes tremolos on whole notes.
466
467         * lily/slur-scoring.cc (get_best_curve): don't crash if no optimal
468         slur found.
469
470 2006-09-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
471
472         * scripts/abc2ly.py (try_parse_comment): idem.
473
474         * scripts/lilypond-book.py (find_toplevel_snippets): use 'foo' in
475         bar_string iso. string.find()
476
477         * lily/*.cc: idem.
478
479         * lily/slur.cc (get_curve): always use scm_is_pair() looping
480         scheme lists.  
481
482 2006-09-18  Graham Percival  <gpermus@gmail.com>
483
484         * Documentation/user/basic-notation.itely: add bug
485         warning about ties and octavation/clef.
486
487 2006-09-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
488
489         * VERSION (PACKAGE_NAME): release 2.9.18
490
491 2006-08-29  Milan Zamazal  <pdm@brailcom.org>
492
493         * elisp/lilypond-mode.el (LilyPond-command-alist): Don't try to
494         figure out midi file names right here.
495         
496 2006-09-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
497
498         * scm/framework-ps.scm (dump-stencil-as-EPS): naming pad-eps-boxes.
499
500         * scm/backend-library.scm: option naming:  gs-font-load*s*
501
502         * scm/framework-eps.scm (dump-stencils-as-EPSes): rename option to
503         include-eps-fonts
504
505 2006-09-17  Joe Neeman  <joeneeman@gmail.com>
506
507         * scm/define-music-types.scm (music-descriptions): remove
508         BreakEvent and fix {Page,Line}{Break,Turn}Event so
509         Music::to_event doesn't complain.
510
511         * lily/accidental-placement.cc (ape_compare):
512         * lily/semi-tie.cc (compare): 
513         * lily/note-column.cc (shift_compare): replace by XXX_less
514
515         * lily/tie-formatting-problem.cc (set_chord_outline): 
516         * lily/tie-column.cc (calc_positioning_done): 
517         * lily/system.cc (post_processing)
518         (get_paper_system): 
519         * lily/stem.cc (note_head_positions)
520         (calc_positioning_done): 
521         * lily/spanner.cc (do_break_processing)
522         (find_broken_piece): 
523         * lily/span-bar.cc (print): 
524         * lily/semi-tie-column.cc (calc_positioning_done): 
525         * lily/rest-collision.cc (calc_positioning_done): 
526         * lily/program-option.cc (get_help_string): 
527         * lily/note-collision.cc (get_clash_groups):
528         * lily/new-fingering-engraver.cc (position_scripts):
529         * lily/keyword.cc (Keyword_table):
530         * lily/hara-kiri-group-spanner.cc (request_suicide):
531         * lily/grob-pq-engraver.cc (stop_translation_timestep):
532         * lily/accidental-placement.cc (calc_positioning_done):
533         (stagger_apes):
534         * lily/beam.cc (get_beam_segments):
535         * lily/grob-array.cc (remove_duplicates):
536         use new vector_sort
537         
538         * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily:
539         ragged-last-bottom = ##f (test the new page breaker)
540
541         * flower/include/std-vector.hh (vector_sort): use STL sort stuff
542
543         * scm/define-context-properties.scm
544         (all-internal-translation-properties): remove properties that
545         were used to communicate page-turn stuff to the paper-column
546         engraver.
547
548         * lily/lily-guile.cc (robust_scm2string): new function
549
550         * lily/paper-column-engraver.cc: Clean up page turn stuff
551
552         * lily/page-turn-engraver.cc: Re-write the page turn logic here
553         instead of cluttering up paper-column-engraver.cc
554
555 2006-09-17  Nicolas Sceaux  <nicolas.sceaux@free.fr>
556
557         * scm/layout-page-dump.scm (scm): export utility function names,
558         to allow user writing cutsom dumping functions.
559
560         * scm/layout-page-layout.scm: export utility function names to
561         enable custom page breaking function writing. Tabify.
562         (line-next-space): use ?-suffix only for predicates
563         (page-maximum-space-to-fill): new function. Return the space
564         between first and bottom system of a page, to give to
565         space-systems.
566         (space-systems): use a space-to-fill argument (for instance as
567         computed by page-maximum-space-to-fill) instead of computing
568         internaly this space with the page height. That way, the caller
569         can adjust the space to use.
570         (make-page-from-systems, walk-paths): compute space to fill before
571         calling space-systems.
572
573 2006-09-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
574
575         * scm/script.scm (default-script-alist): set paddings for every
576         type here, increase for portato mark.
577
578         * scm/lily.scm (define-scheme-options): typo: add s, so it is 
579         -dinclude-eps-fonts
580
581 2006-09-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
582
583         * scm/define-grobs.scm (all-grob-descriptions): oops, typo:
584         use spanner::set-spacing-rods
585
586         * lily/note-column.cc: reformat.
587
588         * lily/rest-collision.cc (calc_positioning_done): fix whole/half
589         step positioning for note/rest combinations.
590
591         * input/regression/rest-note-collision.ly: new file.
592
593         * scm/define-grobs.scm (all-grob-descriptions): add
594         springs-and-rods
595
596         * flower/include/std-vector.hh: switch off again.
597
598         * VERSION (PATCH_LEVEL): bump to 2.9.18
599
600         * flower/include/std-string.hh: idem.
601
602         * flower/include/std-vector.hh (_GLIBCXX_DEBUG): set if NDEBUG not set.
603
604 2006-09-15  Mats Bengtsson  <mabe@drongo.s3.kth.se>
605
606         * ly/engraver-init.ly: Make FiguredBass accepted in GrandStaff and
607         PianoStaff. 
608
609 2006-09-08  Joe Neeman  <joeneeman@gmail.com>
610
611         * Documentation/user/page.itely: update page breaking documentation
612
613 2006-09-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
614
615         * lily/note-collision.cc (calc_positioning_done): only access
616         first head if available.
617
618         * lily/tuplet-engraver.cc: add tupletFullLengthNote to description.
619
620         * scm/framework-ps.scm (output-preview-framework): use new name.
621
622         * lily/program-option.cc (internal_set_option): use new names.
623
624         * Documentation/user/SConscript (lilypond_book_flags): update -d
625         variable names.
626
627         * Documentation/user/lilypond-book.itely (Inserting LilyPond
628         output into other programs): new variable names.
629
630         * scm/lily.scm (define-scheme-options): uniformize var names.
631
632         * lily/tuplet-engraver.cc (listen_tuplet_span): verify that
633         tuplets_ is non-empty before popping.
634
635 2006-09-07  Joe Neeman  <joeneeman@gmail.com>
636
637         * lily/spanner.cc (find_broken_piece): 
638         * lily/spacing-spanner.cc (get_columns): 
639         * lily/source-file.cc (get_line): 
640         * lily/simple-spacer.cc (get_column_description): 
641         * lily/keyword.cc (lookup): 
642         use the new binary search.
643
644         * flower/include/std-vector.hh: replace binary_search with
645         a more STL-like version
646
647 2006-09-04  Michael Welsh Duggan  <md5i@cs.cmu.edu>
648
649         * lily/tie-performer.cc: remove unused last_event_ property.
650         (class Tie_performer): add now_tied_heads_ property for
651         partially-tied heads.
652         (acknowledge_audio_element): when adding an Audio_note, put the
653         note in now_tied_heads_ if the audio note is partially tied.
654         (stop_translation_timestep): always include entries in
655         now_tied_heads_ in heads_to_tie_.
656
657         * lily/drum-note-performer.cc (process_music): look for tie-events
658         in the articulations; pass to Audio_note constructor.
659
660         * lily/note-performer.cc (process_music): look for tie-events in
661         the articulations; pass to Audio_note constructor.
662
663         * lily/audio-item.cc (Audio_note): Initialize tie_event_ in
664         constructor.
665
666         * lily/include/audio-item.hh (class Audio_note): add tie_event_.
667         include initializer in constructor.
668
669 2006-09-02  Joe Neeman  <joeneeman@gmail.com>
670
671         * lily/simple-spacer.cc (get_line_forces): Ignore loose columns
672         unless they are breakable. This fixes discrepancies between the forces
673         calculated here and the forces calculated in get_line_configuration.
674
675         * lily/grob.cc (pure_relative_y_coordinate): fix some
676         mis-estimation that was happening with piano staves.
677
678         * lily/constrained-breaking.cc (resize): don't choke if we get a
679         measure that won't fit on a line.
680         (combine_demerits): don't consider uniformity when ragged
681
682         * lily/page-spacing.cc (solve): why the f* were there two of these?
683         (calc_subproblem): properly handle the case where a system is taller
684         than the page.
685
686         * lily/system.cc (get_paper_system): ensure that all the permissions
687         and penalties are passed to the paper systems.
688
689         * lily/page-breaking.cc (create_system_list): support system-count.
690
691         * scm/define-grobs.scm (pure-print-callbacks): add
692         ly:script-interface::print
693
694         * lily/page-spacing.cc (min_page_count): fix calculation of min
695         pages if we are ragged and there are non-zero springs.
696
697         * scm/layout-page-layout.scm: if the pure-height estimates are under
698         the real height, allow space-systems to ignore padding if it is
699         needed in order to fit the systems on one page
700
701         * lily/optimal-page-breaking.cc (try_page_spacing): fix reading
702         ragged properties
703         (solve): fix performance problem. Make sure we always get at least
704         one solution
705
706         * lily/page-breaking.cc (make_pages): include write-page-breaks
707         and page-stencil
708
709         * lily/paper-score.cc (calc_breaking): remove Gourlay breaker
710
711         * scm/define-grobs.scm: add the new slur-callback
712         fix pure-relevant to not exclude grobs whose extent is already
713         calculated
714
715         * ly/paper-defaults.ly: make ly:optimal-breaking the new default
716         page breaker
717
718         * lily/slur.cc (pure_height): new callback to estimate the height
719         of a slur
720
721 2006-09-02  Graham Percival  <gpermus@gmail.com>
722
723         * Documentation/user/invoking.itely: small update on
724         MacOS X notes; thanks Trevor!
725
726 2006-09-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
727
728         * VERSION (MY_PATCH_LEVEL): release 2.9.17
729
730         * lily/lexer.ll: accept EOF in all states.
731
732         * lily/tempo-performer.cc (Tempo_performer): initialize last_tempo_.
733
734         * lily/source-file.cc (Source_file): always 0-terminate character
735         array, to prevent Flex from barfing.
736
737         * lily/global-context.cc (get_output): robustness: don't crash if
738         no Score context found.
739
740         * lily/include/book.hh (class Book): idem.
741
742         * lily/include/context-def.hh (struct Context_def): idem.
743
744         * lily/include/score.hh (class Score): don't derive from Input.
745
746         * lily/book.cc (Book): add a copy ctor. 
747
748         * buildscripts/output-distance.py (FileLink.calc_distance): count
749         orphans in distance too.
750
751         * python/midi.c (midi_parse_track): robustness: don't read past
752         end of string.
753
754         * ly/performer-init.ly: add Control_track_performer, move
755         Tempo_performer and Time_signature_performer to Score.        
756
757         * lily/score-performer.cc (acknowledge_audio_elements): override
758         from base class: add to audio-columns
759
760         * lily/control-track-performer.cc (add_text): new file: generate
761         the control track.
762
763         * lily/performance.cc: move output_header_track to
764         Control_track_performer ()
765
766         * lily/midi-walker.cc (Midi_walker): get channel in constructor.
767
768         * lily/include/midi-item.hh (class Midi_channel_item): insert
769         class into hierarchy, for items that can have a channel setting. Dehungarify.
770
771         * lily/include/performer.hh (class Performer): remove
772         play_element();  move functionality into announce/acknowledge.
773
774         * lily/audio-staff.cc (output): remove channel_ from Midi_track.
775
776         * lily/tie-engraver.cc (stop_translation_timestep): only wipe
777         heads_to_tie_ if there are new heads to tie.  Fixes polyphony in ties.
778
779 2006-08-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
780
781         * lily/tie-engraver.cc (stop_translation_timestep): robustness for
782         ambituses.
783
784         * lily/all-font-metrics.cc: remove TFM support.
785
786         * lily/include/tfm.hh: remove TFM support, TFM reader.
787
788         * lily/include/binary-source-file.hh: remove Binary_source_file.
789
790 2006-08-27  Graham Percival  <gpermus@gmail.com>
791
792         * Documentation/topdocs/NEWS.itely: add @c marker for
793         stuff I've processed.
794
795         * Documentation/user/ various: info from NEWS.
796
797 2006-08-27  Joe Neeman  <joeneeman@gmail.com>
798
799         * lily/paper-column-engraver.cc (finalize): Oops, this change
800         should have gone in on 2006-08-23
801
802 2006-08-26  Mats Bengtsson  <mabe@s3.kth.se>
803
804         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use double
805         quotes to quote arguments. Fixes Windows problem.
806
807         * python/lilylib.py (progress): idem
808
809 2006-08-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
810
811         * scripts/musicxml2ly.py: fix for importing
812         minor key signatures from MusicXML.  (Phillip Kirlin)
813
814 2006-08-24  Phillip Kirlin  <pkirlin@acm.org>
815
816         * python/musicxml.py: 
817         (Attributes.get_key_signature): now correctly retrieves mode from 
818         MusicXML. 
819
820 2006-08-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
821
822         * lily/parser.yy (output_def_body): take ownership of identifier
823         back to C++.
824
825         * Documentation/user/advanced-notation.itely (Metronome marks):
826         update use of \tempo in \midi.
827
828         * VERSION: release 2.9.16
829         
830 2006-08-24  Erik Sandberg  <mandolaerik@gmail.com>
831
832         * input/mutopia/*: upgrade to new midi tempo syntax (repairs make
833         web partially)
834
835 2006-08-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
836
837         * input/regression/tie-chord-partial.ly: clarify example.
838
839         * scm/define-music-properties.scm (all-music-properties): remove
840         untied.
841
842         * ly/music-functions-init.ly: remove \untied.
843
844         * lily/tie-engraver.cc (struct Head_event_tuple): store both
845         stream events and music events.
846         (stop_translation_timestep): search acknowledged heads for
847         tie-event.
848
849         * input/regression/tie-chord-partial.ly: new file.
850
851         * scm/define-markup-commands.scm (char): use ly:wide-char->utf-8
852         for \char markup command.
853
854         * scm/define-event-classes.scm (unlistened-music-event-classes): idem.
855
856         * scm/define-music-types.scm (music-descriptions): consistency:
857         Use solo-{one,two}-event iso. solo-[12]-event.
858
859         * lily/part-combine-engraver.cc (process_music):
860         Use solo-{one,two}-event iso. solo-[12]-event.
861
862         * ly/declarations-init.ly (partCombineListener): add Timing as
863         alias
864
865         * flower/std-string.cc (string_copy): use copy ()
866
867         * lily/source-file.cc (Source_file): use copy(). Remove contents_str0()
868
869 2006-08-24  Graham Percival  <gpermus@gmail.com>
870
871         * Documentation/user/changing-defaults.itely, global.itely,
872         lilypond-book.itely, page.itely: minor changes from mailist.
873
874 2006-08-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
875
876         * buildscripts/mutopia-index.py (allfiles): filter lily-XXX and
877         snippet-map
878
879         * scm/define-context-properties.scm
880         (translator-property-description): robustness: detect type errors
881         in property definitions.
882
883         * lily/parser.yy (score_body): protect SCORE_IDENTIFIER result
884         after getting it from SCM. 
885
886         * lily/smobs.cc (protect_smob): switch off fancy smob protection
887         for now. 
888
889         * lily/include/performer.hh (class Performer): strip get_tempo()
890         method.
891
892         * lily/midi-def.cc: strip file.
893
894         * lily/lexer.ll (Lily_lexer): don't protect hash key separately.
895
896         * lily/include/context-def.hh (struct Context_def): use
897         VIRTUAL_COPY_CONSTRUCTOR().
898
899         * lily/source-file.cc: smobification.
900
901         * lily/include/source-file.hh (class Source_file): smobify
902         Source_file. Trim redundant members.
903
904         * lily/parser.yy (Lily_lexer::try_special_identifiers): unprotect
905         clones after creation. This plugs a huge memory leak.
906
907         * python/convertrules.py (FatalConversionError.sub_tempo):
908         complete rule for \midi{ \tempo }
909
910         * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): idem.
911
912         * input/mutopia/F.Schubert/morgenlied.ly (pianoLH): update tempo.
913
914 2006-08-23  Joe Neeman  <joeneeman@gmail.com>
915
916         * input/regression/optimal-page-breaking-hstretch.ly: test for
917         ragged-last-bottom also
918
919         * lily/paper-column-engraver.cc (finalize): make the end of a score
920         breakable by default. This is to balance out a change in behaviour
921         of the page-turn-breaker which no longer makes the end of a score
922         breakable.
923
924         * lily/paper-book.cc (pages): set the systems_ once the pages are
925         broken
926
927         * lily/page-turn-page-breaking.cc (calc_subproblem): use the new
928         Page_breaking interface.
929
930         * lily/page-breaking.cc (class Page_breaking): make the interface
931         more consistent and provide abstractions for dealing with
932         Line_divisions.
933
934         * lily/optimal-page-breaking.cc (solve): use a more straightforward
935         algorithm. Use the new interface to Page_breaking.
936
937         * lily/page-spacing.cc: better support for ragged-bottom and
938         ragged-last-bottom
939
940 2006-08-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
941
942         * python/convertrules.py (conv): warning on \tempo{}
943
944         * ly/performer-init.ly: set tempoWholesPerMinute.
945
946         * ly/midi-init.ly: remove \midi
947
948         * lily/tempo-performer.cc: look at tempoWholesPerMinute to set
949         MIDI tempo.
950
951         * lily/metronome-engraver.cc (process_music): use tempoUnitCount
952         tempoUnitDuration for determining what to print.
953
954         * lily/lyric-extender.cc: typo.
955
956         * lily/parser.yy (output_def_body): disallow \tempo in \midi{}
957
958         * lily/duration-scheme.cc (LY_DEFINE): ly:duration-length: new
959         function.
960
961         * scm/lily.scm (define-scheme-options): alphabetize, add eps-pad-boxes.
962
963         * scm/framework-ps.scm (dump-stencil-as-EPS): only pad boxes if
964         eps-pad-boxes is set.
965
966         * scripts/lilypond-book.py (main): use -deps-pad-boxes.
967
968         * THANKS: update sponsors.
969
970         * ly/english.ly: quarter tone naming (thanks, Trevor Baca)
971
972         * Documentation/topdocs/NEWS.tely (Top): doc new feature.
973
974         * input/regression/tie-chord-untied.ly: new file.
975
976         * lily/tie-engraver.cc (acknowledge_note_head): check 'untied property.
977
978         * scm/define-music-properties.scm (all-music-properties): add
979         'untied property.
980
981         * buildscripts/mutopia-index.py (allfiles): look for .ly rather
982         than .ly.txt.
983         (headertext_nopics): sanitize no-examples text.
984
985         * scm/page.scm (make-page-stencil): don't rely on extents of
986         page-stencil. This fixes spurious space around .EPS files produced
987         with the EPS backend.
988
989 2006-08-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
990
991         * lily/stencil-scheme.cc (LY_DEFINE): make extent arguments optional.
992
993         * lily/hara-kiri-engraver.cc (process_music): remember
994         keepAliveInterfaces after processing \set
995
996         * lily/lyric-extender.cc (print): support left/right-padding for
997         extenders.
998
999         * scm/documentation-generate.scm (string-append): revert lilypond/
1000         path, doc why.
1001
1002 2006-08-20  Graham Percival  <gpermus@gmail.com>
1003
1004         * Documentation/user/lilypond.tely: clarification to
1005         license presentation (not to actual license).
1006
1007         * Documentation/user/basic-notation.itely,
1008         instrument-notation.itely: minor changes.
1009
1010         * input/ {regression, test}/+.ly: clarification to
1011         text (you can click on examples).  Thanks, Mats!
1012
1013         * input/manual/bar-lines.ly: adds ||: repeats.
1014
1015 2006-08-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
1016
1017         * make/ly-vars.make (OMF_FILES): strip ps.gz from OMF_FILES 
1018
1019         * scm/documentation-lib.scm (texi-file-head): category LilyPond.
1020
1021         * Documentation/user/lilypond.tely: strip lilypond/ from info
1022         links, rename to category LilyPond
1023
1024         * lily/pango-font.cc (description_string): new function.
1025
1026         * VERSION: release 2.9.15
1027
1028         * lily/spacing-engraver.cc (stop_translation_timestep): use
1029         Dscho's fix for spacing spanner. 
1030
1031         * scm/define-music-types.scm (music-descriptions): use
1032         apply-output-event for ApplyOutputEvent
1033
1034         * lily/output-property-engraver.cc (listen_apply_output): rename
1035         from listen_layout_instruction.
1036
1037         * lily/piano-pedal-engraver.cc (struct Pedal_type_info): new
1038         function protect()
1039
1040 2006-08-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
1041
1042         * scm/lily.scm (lilypond-all): option read-file-list: substitute
1043         commandline args with contains, split by \n.
1044
1045         * scripts/lilypond-book.py (Lilypond_file_snippet.my_system):
1046         write snippet-names file, call with -dread-file-list. Fixes
1047         command limitations on 64-bit systems.
1048
1049         * input/regression/stencil-color-rotation.ly: new file.
1050
1051         * lily/include/translator.hh (struct Acknowledge_information):
1052         revert: don't use Protected_scm in global objects, as GUILE can't
1053         handle gc_unprotect from automated destructors on MacOS X.
1054  
1055         * lily/grob.cc (get_print_stencil): use retval.expr() as base for
1056         color, not the original stencil. Fixes combinations of
1057         color/transparency/rotation. 
1058
1059         * scripts/lilypond-book.py (main): add --formats=eps for
1060         texinfo/latex.
1061
1062         * lily/spacing-engraver.cc (stop_translation_timestep): don't
1063         crash if spacing_ is nonexistent.
1064
1065 2006-08-14  Mats Bengtsson  <mabe@s3.kth.se>
1066
1067         * scripts/lilypond-book.py (output): Remove obsolete(!?)
1068         \catcode`\@=12 in the LaTeX output.
1069
1070 2006-08-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
1071
1072         * scm/define-music-types.scm (music-descriptions):
1073         use sustain-event iso. sustain-pedal-event.
1074
1075 2006-08-11  Joe Neeman  <joeneeman@gmail.com>
1076
1077         * scripts/convert-ly.py: honour the -n command-line switch
1078
1079 2006-08-10  Han-Wen Nienhuys  <hanwen@lilypond.org>
1080
1081         * scm/output-lib.scm (bar-line::calc-glyph-name): add dashed liine
1082         break specification.
1083
1084 2006-08-10  Joe Neeman  <joeneeman@gmail.com>
1085
1086         * Documentation/user: convert-ly the user manual
1087
1088 2006-08-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
1089
1090         * stepmake/aclocal.m4: version check patch (thanks MWD)
1091
1092         * ly/music-functions-init.ly: robustness. Don't crash if
1093         currentBarNumber is not a number.
1094
1095         * VERSION (PATCH_LEVEL): bump.
1096
1097 2006-08-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
1098
1099         * stepmake/aclocal.m4: better version check; handle fooX.Y
1100         binaries too.
1101
1102         * ly/performer-init.ly: instrument name fixup.
1103
1104         * input/manual/chord-names-jazz.ly (banterProperties):
1105         instrumentName update
1106
1107         * scm/define-event-classes.scm (lambda): use ly:is-listened-event-class
1108
1109         * lily/ly-module.cc (ly_module_symbols): use ly_hash_table_keys
1110
1111         * lily/translator.cc (LY_DEFINE): ly:is-listened-event-class: new
1112         function. Use hash tables to check membership.
1113
1114         * lily/general-scheme.cc (LY_DEFINE): new function.
1115
1116         * lily/piano-pedal-engraver.cc (struct Pedal_type_info): idem
1117
1118         * lily/include/translator.hh (struct Acknowledge_information): add
1119         Protected_scm
1120
1121         * ly/music-functions-init.ly: change name to BreathingEvent
1122
1123         * input/regression/*.ly: apply it.
1124
1125         * python/convertrules.py (conv): better instrumentName conversion
1126         rule.
1127
1128         * scm/define-music-types.scm (music-descriptions): add
1129         line-break-event to LineBreakEvent music
1130
1131         * lily/music.cc (to_event): don't crash if music type not set.
1132
1133         * lily/spacing-loose-columns.cc (set_loose_columns): don't barf if
1134         spacing not set.
1135
1136         * lily/spacing-engraver.cc (stop_translation_timestep): set
1137         spacing for proportional notation too.
1138
1139         * scm/translation-functions.scm (format-bass-figure): inspect
1140         stream-event.
1141
1142         * scripts/lilypond-book.py (bindir): add bindir to $PATH.
1143
1144 2006-08-08  Joe Neeman  <joeneeman@gmail.com>
1145
1146         * lily/include/constrained-breaking.hh: add Line_details (Prob*)
1147
1148         * scm/page.scm (make-page): make it friendlier to call (esp. from C++)
1149
1150         * scm/layout-page-layout.scm (make-page-from-systems): new function
1151         (optimal-page-breaks): use the new page-breaking calling convention
1152
1153         * scm/define-context-properties.scm (all-user-translation-properties):
1154         add revokePageTurns
1155
1156         * lily/paper-column-engraver.cc (stop_translation_timestep): add
1157         revokePageTurns  functionality. If there is a special barline within
1158         the breakable region, break there instead of at the end of the region.
1159
1160         * lily/paper-book.cc (pages): use the new page-breaking calling
1161         convention
1162
1163 2006-08-07  Erik Sandberg  <mandolaerik@gmail.com>
1164
1165         * lily/lexer.ll, lily/source-file.cc: Add \sourcefileline command
1166
1167         * scripts/lilypond-book.py: insert \sourcefileline command in
1168         output, so lilypond error messages refer to the spot in the
1169         original .lytex / .itely sourcefile.
1170
1171 2006-08-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
1172
1173         * lily/spacing-loose-columns.cc (set_loose_columns): oops: use
1174         space to next column for distance to fixed col.
1175
1176         * VERSION (PACKAGE_NAME): release 2.9.14
1177
1178         * lily/pitched-trill-engraver.cc (make_trill): do set_parent also
1179         if no accidental.
1180
1181         * lily/accidental-engraver.cc (process_acknowledged): don't create
1182         accidental for trill span event. This fixes spurious accidentals
1183         on trills.
1184
1185 2006-08-04  Mats Bengtsson  <mabe@s3.kth.se>
1186
1187         * scm/define-grob-properties.scm (all-user-grob-properties):
1188         Clarify documentation of side-axis and direction. Thanks to Paul
1189         for the inspiration.
1190
1191         * lily/bar-line.cc: Add documentation for "||:" also in the
1192         interface documentation.
1193
1194 2006-08-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
1195
1196         * lily/spacing-loose-columns.cc (set_loose_columns): bugfix.
1197
1198         * lily/paper-column.cc (set_system): new function.
1199
1200         * lily/spacing-engraver.cc (stop_translation_timestep): store
1201         SpacingSpanner refs in Paper_column.
1202
1203         * lily/spacing-loose-columns.cc (set_loose_columns): rewrite
1204         compute loose clique spacing using GraceSpacing/SpacingSpanner.
1205
1206 2006-08-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
1207
1208         * lily/beam-engraver.cc (listen_beam): add method for
1209         Grace_beam_engraver too.
1210
1211 2006-08-03  Mats Bengtsson  <mabe@s3.kth.se>
1212
1213         * python/convertrules.py: Fix indentation bug that broke
1214         conversion of files older than 1.3.117.
1215         Fix escape error in the description for 2.9.6.
1216
1217 2006-08-02  Erik Sandberg  <mandolaerik@gmail.com>
1218
1219         * lily/*-engraver.cc: convert all try_music functions to listen_*
1220         functions.
1221
1222         * lily/piano-pedal-engraver.cc: some additional cleanups: use
1223         enums to represent pedal types, and calculate more data statically.
1224
1225         * scm/part-combiner.scm (recording-group-emulate): create a
1226         softcoded substitute for recording-group-engraver.cc.
1227
1228         * lily/music.cc: make a common transpose function for events and
1229         music
1230
1231         * ly/declarations-init.ly: change melisma/melismaEnd. Eliminates
1232         ManualMelismaEvent, and obsoletes Melisma_translator.
1233
1234 2006-08-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
1235
1236         * input/test/instrument-name-align.ly: update version.
1237
1238 2006-08-02  Mats Bengtsson  <mabe@s3.kth.se>
1239
1240         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
1241         Doc the --pdf flag to lilypond-book.
1242
1243 2006-07-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
1244
1245         * Documentation/topdocs/NEWS.tely (Top): add description.
1246
1247         * input/regression/tuplet-full-length-note.ly: add file.
1248
1249         * lily/instrument-name-engraver.cc (acknowledge_axis_group):
1250         always store axis group.
1251
1252 2006-07-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
1253
1254         * input/regression/instrument-switch.ly: new file.
1255
1256         * lily/instrument-switch-engraver.cc (process_music): new file.
1257
1258         * ly/engraver-init.ly: add Instrument_switch_engraver
1259
1260         * ly/music-functions-init.ly: \instrumentSwitch
1261
1262         * scm/define-context-properties.scm
1263         (all-user-translation-properties): add instrumentCueName
1264
1265         * scm/define-grobs.scm (all-grob-descriptions): add InstrumentSwitch
1266
1267 2006-07-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
1268
1269         * ly/music-functions-init.ly: music function \transposition.
1270
1271         * lily/parser.yy (command_element): softcode \transposition.
1272
1273         * lily/fall-engraver.cc (process_music): delta-pitch -> delta-step.
1274         (process_music): oops.
1275
1276         * lily/instrument-name-engraver.cc (start_spanner): new
1277         function. Create spanner when property changes.
1278         (stop_spanner): new function.
1279
1280         * python/convertrules.py (conv): add rule.
1281
1282         * lily/instrument-name-engraver.cc: shortVocalName iso. vocNam,
1283         shortInstrumentName iso. instr.
1284
1285         * scm/output-ps.scm (dashed-line): add phase argument to
1286         dashed-line.
1287
1288         * lily/bar-line.cc (dashed_bar_line): new function.
1289         (compound_barline): support \bar "dashed". 
1290
1291         * lily/lily-parser-scheme.cc (LY_DEFINE): only write
1292         --output=DIR to DIR/BASE if it is a dir. 
1293
1294         * flower/file-name.cc (file_part): new function
1295         (dir_part): new function
1296
1297         * lily/lily-parser-scheme.cc (LY_DEFINE): 
1298
1299         * DEDICATION: update
1300
1301 2006-07-25  Han-Wen Nienhuys  <hanwen@lilypond.org>
1302
1303         * lily/instrument-name-engraver.cc: formatting.
1304
1305         * python/convertrules.py (conv): bugfix for \epsfile.
1306
1307 2006-07-25  Joe Neeman  <joeneeman@gmail.com>
1308
1309         * lily/grob.cc:
1310         
1311         * lily/gourlay-breaking.cc: Oops, these should have been included
1312         in my last commit
1313
1314 2006-07-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
1315
1316         * scripts/*.py (program_name): cleanup relocation snippets.
1317
1318         * scripts/convert-ly.py (datadir): remove LILYPONDPREFIX support.
1319
1320 2006-07-24  Joe Neeman  <joeneeman@gmail.com>
1321
1322         * scm/define-grobs.scm (all-grob-descriptions): make NonMusicalPaperColumn
1323         page-breakable by default
1324
1325         * scm/layout-page-layout.scm (space-systems): fix bug where the force isn't
1326         correctly calculated for a single-system page
1327
1328         * scm/lily-library.scm (interval-sane?): also check that the first number is no
1329         bigger than the second number
1330
1331         * lily/simple-spacer.cc (solve): allow compression even when ragged (but we
1332         acknowledge that we aren't satisfying constraints)
1333
1334         * lily/hara-kiri-group-spanner.cc (request_suicide): give equal treatment to
1335         non-Items
1336
1337         * lily/grob.cc (pure_height): add minimum-Y-extent
1338
1339         * lily/gourlay-breaking.cc (solve): don't ignore a compression force, even if we're
1340         ragged
1341
1342         * lily/constrained-breaking.cc: convert code to use new Matrix class
1343         (get_best_solution): new function
1344
1345         * scm/page.scm (make-page-stencil): don't crash if we annotate-layout when there
1346         is a page with no systems
1347
1348 2006-07-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
1349
1350         * VERSION (PACKAGE_NAME): release 2.9.13
1351
1352         * scm/define-grobs.scm (all-grob-descriptions): remove stray
1353         assignment.
1354
1355 2006-07-21  Han-Wen Nienhuys  <hanwen@lilypond.org>
1356
1357         * Documentation/topdocs/NEWS.tely (Top): doc new features.
1358
1359         * scm/output-lib.scm (grace-spacing::calc-shortest-duration): new
1360         function.
1361
1362         * scm/define-grob-properties.scm (all-user-grob-properties):
1363         remove grace-space-factor.
1364
1365         * scm/define-grob-interfaces.scm (grace-spacing-interface): add
1366         grace-spacing-interface
1367         (spacing-options-interface): add.
1368
1369         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add Grace_spacing_engraver
1370
1371         * lily/spacing-options.cc (get_duration_space): move function from spacing-basic.cc
1372
1373         * lily/spacing-basic.cc (note_spacing): do init_from_grob on
1374         GraceSpacing object.
1375
1376         * lily/note-spacing.cc: fix prop list formatting
1377
1378         * lily/beaming-pattern.cc (de_grace): new function. Sensible
1379         beaming for grace notes too.
1380
1381         * input/regression/spacing-grace.ly: update.
1382
1383         * lily/grace-spacing-engraver.cc: new file.
1384
1385         * lily/spacing-spanner.cc: add strict-grace-spacing.
1386
1387 2006-07-20  Graham Percival  <gpermus@gmail.com>
1388
1389         * lily/parser.yy: compile fix.
1390
1391 2006-07-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
1392
1393         * scm/define-grobs.scm (all-grob-descriptions): typo.
1394
1395         * scm/framework-eps.scm (dump-stencils-as-EPSes): just strip
1396         .eps extension from includegraphics.
1397
1398         * scripts/lilypond-book.py (main): add support for --pdf. 
1399
1400         * lily/spacing-spanner.cc (calc_common_shortest_duration): use
1401         callback to compute common shortest duration.
1402         (set_springs): typo.
1403
1404         * scm/define-grob-properties.scm (all-user-grob-properties): add
1405         strict-grace-spacing.
1406
1407         * lily/spacing-determine-loose-columns.cc (is_loose_column):
1408         support float_grace_columns_.
1409
1410         * lily/spacing-options.cc (init_from_grob): new file.
1411
1412         * Documentation/topdocs/NEWS.tely (Top): doc tupletFullLengthNote.
1413
1414         * input/regression/spacing-loose-grace.ly: new file.
1415
1416         * Documentation/topdocs/NEWS.tely (Top): document new feature.
1417
1418         * lily/tuplet-engraver.cc (struct Tuplet_description): read
1419         tupletFullLengthNote too. Choose right bound depending on value.
1420
1421         * input/regression/tuplet-full-length-note.ly: new file.
1422
1423 2006-07-19  Erik Sandberg  <mandolaerik@gmail.com>
1424
1425         * lily/*-performer.cc: Converted try_music to listen_*
1426
1427         * lily/grob-info.cc, lily/engraver.cc: represent the cause of grob
1428         as a stream-event internally. Introduce event_cause (), deprecate
1429         music_cause ().
1430
1431         * scm/define-music-types.scm: Removed BusyPlayingEvent
1432         
1433 2006-07-19  Mats Bengtsson  <mabe@s3.kth.se>
1434
1435         * Documentation/user/advanced-notation.itely (Font selection):
1436         Document how to get a list of available fonts using 'lilypond
1437         -dshow-available-fonts blabla'.
1438
1439 2006-07-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
1440
1441         * GNUmakefile.in: filter lily-XXX.pdf files.
1442
1443         * scm/define-grob-interfaces.scm (bend-after-interface): add thickness.
1444
1445         * scm/define-grob-properties.scm (all-internal-grob-properties):
1446         remove delta-pitch. Use delta-position everywhere.
1447
1448         * scm/output-lib.scm (fall::print): use new order.
1449
1450         * scm/output-ps.scm (path): reorder arguments.
1451
1452         * scm/output-svg.scm (path): support for path primitive.
1453
1454         * input/regression/bend-after.ly: new file.
1455
1456         * Documentation/user/GNUmakefile ($(outdir)/%.pdf): foolproof
1457         recipe for eps -> pdf conversion.
1458
1459 2006-07-19  Erik Sandberg  <mandolaerik@gmail.com>
1460
1461         * lily/parser.yy, lily/lexer.ll: added some simplifications by
1462         Angelo Contardi.
1463
1464 2006-07-19  Graham Percival  <gpermus@gmail.com>
1465
1466         * input/manual/screech-boink.ly: moved to here.
1467
1468         * input/screech-boink.ly: deleted.
1469
1470         * scm/define-grob-properties.scm: clarify doc string.
1471
1472 2006-07-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
1473
1474         * Documentation/topdocs/NEWS.tely (Top): doc new feature.
1475
1476         * scm/output-ps.scm (path): define path.
1477
1478         * scm/define-stencil-commands.scm
1479         (ly:register-stencil-expression): add path.
1480
1481         * scm/define-music-properties.scm (all-music-properties): add delta-pitch.
1482
1483         * ly/engraver-init.ly: add Fall_engraver
1484
1485         * lily/parser.yy (music_function_event): allow musicfunction
1486         without music arg as music_function_event.
1487
1488         * lily/grob-scheme.cc (LY_DEFINE):
1489         ly:grob-robust-relative-extent. New function.
1490
1491         * scm/define-grobs.scm (all-grob-descriptions): add BendAfter
1492
1493         * scm/define-music-types.scm (music-descriptions): add BendAfterEvent.
1494
1495         * scm/output-lib.scm (fall::print): new function
1496
1497         * lily/fall-engraver.cc (stop_fall): new file.
1498
1499         * ly/music-functions-init.ly: alphabetise.
1500
1501         * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): pdf iso. eps as
1502         base.
1503
1504 2006-07-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
1505
1506         * VERSION (PATCH_LEVEL): bump version. Release 2.9.12
1507
1508         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
1509         doc pdftex usage.
1510
1511         * lily/translator-group.cc (connect_to_context): non const error message.
1512
1513         * Documentation/user/GNUmakefile ($(outdir)/%.pdf): update to use PDF
1514
1515         * scm/paper.scm (internal-set-paper-size): define landscape to #f
1516         if unset.
1517
1518         * scm/framework-ps.scm (convert-to-pdf): swap h and w in case of landscape. 
1519
1520         * stepmake/stepmake/texinfo-rules.make: strip DVI support.
1521
1522         * scm/framework-eps.scm (dump-stencils-as-EPSes): generate
1523         systems.pdftex too.
1524
1525         * scm/backend-library.scm (postscript->pdf): use -dEPSCrop for PDF.
1526
1527         * make/lilypond-vars.make (TEXINPUTS): add pdf output format.
1528
1529         * Documentation/topdocs/NEWS.tely (Top): add pdftex note.
1530
1531         * scm/output-ps.scm (resetrotation): use gsave/grestore for rotation.
1532
1533         * lily/main.cc (parse_argv): don't overwrite previous --formats string.
1534
1535         * scm/backend-library.scm (postscript->pdf): strip .eps too. 
1536
1537 2006-07-14  Nicolas Sceaux  <nicolas.sceaux@free.fr>
1538
1539         * scm/layout-page-layout.scm: Define module, tidy code, use more
1540         functions iso. a single big one.
1541
1542         * scm/layout-page-dump.scm: move page dump functions used in two
1543         pass spacing to this file. Define module.
1544
1545         * scm/lily.scm (ly:load): don't load layout-page-layout.scm
1546          (separate module)
1547
1548         * ly/paper-defaults.ly: use module layout-page-layout.
1549
1550 2006-07-14  Erik Sandberg  <mandolaerik@gmail.com>
1551
1552         * lily/music.cc: Revised MusicEvent event class. It now contains
1553         event data directly instead of encapsulating it in music. The
1554         previously used class is renamed to OldMusicEvent.
1555
1556         * lily/stream-event.cc: Stream events are now probs.
1557         
1558         * lily/translator-group.cc, lily/translator.cc: Translators can
1559         now listen directly to stream events, by using macros
1560         [DECLARE,IMPLEMENT]_TRANSLATOR_LISTENER.
1561
1562         * lily/arpeggio-engraver.cc: Converted to use new event system
1563
1564         * THANKS: Corrected spelling mistake.
1565
1566 2006-07-12  Graham Percival  <gpermus@gmail.com>
1567
1568         * Documentation/user/SConscript, make/lilypond-vars.make,
1569         input/GNUmakefile: doc build looks in input/manual instead
1570         of input/test/
1571
1572         * input/manual/ GNUmakefile, SConscript: build files for
1573         input/manual/
1574
1575         * input/test/ various: some files moved to input/manual/ 
1576
1577         * Documentation/user/basic-notation.itely: small updates;
1578         thanks Kieren and Charles!
1579
1580 2006-07-12  Han-Wen Nienhuys  <hanwen@lilypond.org>
1581
1582         * VERSION (PACKAGE_NAME): release 2.9.11
1583
1584         * Documentation/topdocs/NEWS.tely (Top): update prop value 
1585
1586         * Documentation/user/basic-notation.itely (Tuplets): new property
1587         value.
1588
1589 2006-07-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
1590
1591         * python/convertrules.py (conv): tweaks. 
1592
1593         * VERSION (PATCH_LEVEL): bump version.
1594
1595         * python/convertrules.py (conv): add rule for
1596         tupletNumberFormatFunction.
1597
1598         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
1599         tupletNumberFormatFunction.
1600
1601         * scm/define-grobs.scm (all-grob-descriptions): calc TupletNumber
1602         text through 'text callback.
1603
1604         * lily/time-scaled-music-iterator.cc (construct_children): copy
1605         tweaks generated events.
1606
1607         * scm/define-context-properties.scm
1608         (all-user-translation-properties): remove tupletNumberFormatFunction
1609
1610         * lily/tuplet-engraver.cc (process_music): don't read
1611         tupletNumberFormatFunction
1612
1613         * scm/output-lib.scm (tuplet-number::calc-fraction-text): new
1614         function.
1615
1616 2006-07-11  Erik Sandberg  <mandolaerik@gmail.com>
1617
1618         * lily/global-context-scheme.cc: Separated ly:run-translator into
1619         smaller pieces.
1620
1621         * lily/score-engraver.cc, lily/score-performer.cc,
1622         scm/define-context-properties.scm: Make paper/midi output
1623         accessable as a context property.
1624
1625         * lily/score-translator.cc, lily/score-context.cc: Removed.
1626
1627 2006-07-07  Guido Amoruso  <guidonte@katamail.com>
1628
1629         * scm/ps-to-png.scm (Module): 
1630         * scm/framework-tex.scm (Module): 
1631         * scm/framework-ps.scm (Module): 
1632         * scm/backend-library.scm (Module): 
1633         * scm/framework-ps.scm: invoke gs with "-dDEVICEWIDTHPOINTS" and
1634         "dDEVICEHEIGHTPOINTS".
1635
1636 2006-07-04  Graham Percival  <gpermus@gmail.com>
1637
1638         * Documentation/user/ various: general improvements to
1639         "working with lilypond files" section.
1640
1641 2006-07-03  Erik Sandberg  <mandolaerik@gmail.com>
1642
1643         * lily/sequential-iterator.cc: Change the default get_music_list
1644         to read elements-callback music property
1645
1646         * scm/define-music-types.scm, scm/music-functions.scm: Cleaner
1647         processing of multimeasure rests. Softcoded
1648         sequential-music-iterator.
1649
1650         * lily/sequential-music-iterator.cc: Removed.
1651
1652 2006-06-28  Graham Percival  <gpermus@gmail.com>
1653
1654         * Documentation/user/basic-notation.itely: clarify \repeatTie.
1655
1656 2006-06-27  Erik Sandberg  <mandolaerik@gmail.com>
1657
1658         * lily/parser.yy: Wrap non-post-events in EventChords before
1659         assigning them to identifiers.
1660
1661 2006-06-27  Mats Bengtsson  <mabe@s3.kth.se>
1662
1663         * lily/bar-line.cc (compound_barline): Fix parenthesis error,
1664         gives correct vertical placement of \bar ":" in all staff
1665         sizes. Thanks Martial!
1666
1667 2006-06-26  Graham Percival  <gpermus@gmail.com>
1668
1669         * Documentation/user/invoking.itely : minor update from mailist.
1670
1671 2006-06-26  Erik Sandberg  <mandolaerik@gmail.com>
1672
1673         * lily/ various: Introduce stream events of types Prepare,
1674         OneTimeStep, CreateContext, AnnounceNewContext, RemoveContext,
1675         ChangeContext, SetProperty, RevertProperty, Override and Revert.
1676
1677         * lily/global-context*.cc: Time is now -inf before iteration
1678         starts.
1679
1680         * lily/include/context.hh: Removed unique_, init_
1681
1682         * Documentation/topdocs/NEWS: Make the feathered beam example
1683         avoid triggering a bug.
1684
1685 2006-06-24  Graham Percival  <gpermus@gmail.com>
1686
1687         * Documentation/user/ various: small additions from mailist.
1688
1689 2006-06-22  Mats Bengtsson  <mabe@s3.kth.se>
1690
1691         * ly/performer-init.ly: Add some missing links in the context
1692         hierarchy for MIDI output. There are probably some more missing!
1693
1694 2006-06-21  Graham Percival  <gpermus@gmail.com>
1695
1696         * Documentation/user/ various: minor spelling fixes;
1697         thanks Dave Luttinen!
1698
1699         * Documentation/user/ various: small clarifications;
1700         thanks Anthony Youngman!
1701
1702 2006-06-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
1703
1704         * po/fr.po: add \n appropriately.
1705
1706         * lily/lexer.ll: remove ? from version-seen?  
1707
1708 2006-06-19  John Mandereau  <john.mandereau@free.fr>
1709
1710         * po/fr.po; update translation, by Jean-Charles Malahieude and
1711         John Mandereau.
1712
1713 2006-06-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
1714
1715         * THANKS: add Markus Schneider.
1716
1717         * lily/tab-staff-symbol-engraver.cc: derive from Engraver, not
1718         Staff_symbol_engraver
1719
1720         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): don't
1721         replace staff_engraver
1722
1723         * lily/staff-symbol-engraver.cc (stop_spanner): announce end of
1724         spanner.
1725
1726         * lily/staff-collecting-engraver.cc
1727         (acknowledge_end_staff_symbol): new function
1728
1729         * lily/volta-engraver.cc (acknowledge_end_staff_symbol): new function. 
1730
1731         * lily/staff-collecting-engraver.cc
1732         (acknowledge_end_staff_symbol): new function.
1733
1734         * lily/main.cc: switch on relocation by default.
1735
1736 2006-06-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
1737
1738         * lily/spacing-spanner.cc (musical_column_spacing): set
1739         compound_fixed_note_space to 0.0. Document why.
1740
1741         * lily/simple-spacer.cc (is_sane): also have a kludge for numeric
1742         range of inverse_hooke_
1743         (Simple_spacer): init completely.
1744         (fits): const
1745         (get_line_configuration): don't use cols.resize(); it introduces
1746         initialized data.
1747
1748         * scm/framework-ps.scm (dump-page): add setstrokeadjust. 
1749
1750         * ps/music-drawing-routines.ps: remove selectfont L1 hack.
1751
1752         * lily/beaming-pattern.cc (best_splitpoint_index): urg, 2nd
1753         try. Divide by beatlength.
1754
1755         * input/regression/beaming-ternary-metrum.ly: update doc.
1756         add beatLength hack.
1757
1758         * scm/music-functions.scm (make-time-signature-set): add
1759         standard-beat-grouping. 
1760
1761 2006-06-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
1762
1763         * input/regression/tie-whole.ly: new file.
1764
1765         * lily/tie-formatting-problem.cc (set_column_chord_outline): don't
1766         cross center of note head in case of invisible stem. 
1767
1768 2006-06-16  Graham Percival  <gpermus@gmail.com>
1769
1770         * Documentation/user/ various: small fixes from mailist.
1771
1772 2006-06-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
1773
1774         * lily/breathing-sign.cc (offset_callback): idem.
1775
1776         * lily/align-interface.cc (align_to_fixed_distance): remove
1777         hungarian suffix.
1778
1779         * lily/beaming-pattern.cc (count_factor_twos): oops. We want
1780         x%2==0.
1781
1782 2006-06-15  Han-Wen Nienhuys  <hanwen@lilypond.org>
1783
1784         * VERSION (PACKAGE_NAME): release 2.9.9
1785
1786         * ly/lilypond-book-preamble.ly: add \version
1787
1788 2006-06-14  Han-Wen Nienhuys  <hanwen@lilypond.org>
1789
1790         * scripts/lilypond-book.py (PREAMBLE_LY): include
1791         lilypond-book-preamble.ly
1792
1793         * lily/stem.cc (get_beaming): return max of 0 and
1794         scm_ilength. Fixes slurring from/to beams.
1795
1796         * ly/lilypond-book-preamble.ly: new file.
1797
1798         * lily/slur.cc: add inspect-index feature.
1799
1800 2006-06-13  Graham Percival  <gpermus@gmail.com>
1801
1802         * Documentation/user/tutorial.itely: trivial fix.
1803
1804 2006-06-13  Erik Sandberg  <mandolaerik@gmail.com>
1805
1806         * lily/parser.yy, scm/ly-syntax-constructors.scm: Produce almost
1807         all non-event music in the parser via MAKE_SYNTAX.
1808
1809         * lily/parser-scheme.cc: Add ly:parser-error function
1810
1811         * scm/paper.scm: fix typo
1812
1813 2006-06-13  Han-Wen Nienhuys  <hanwen@lilypond.org>
1814
1815         * THANKS: add RT.
1816
1817         * lily/font-config.cc (init_fontconfig): add warning if cache_file
1818         is null.
1819
1820         * buildscripts/output-distance.py (test_compare_signatures):
1821         timing routines.
1822         (read_signature_file): use new signature format.
1823
1824         * scm/stencil.scm (write-system-signature): simpler signature
1825         format.
1826
1827         * lily/stem.cc (calc_stem_end_position): calc quantized-positions
1828         for beamed case. 
1829
1830         * lily/note-spacing.cc (stem_dir_correction): don't inspect
1831         stem_end_position, but estimate instead. 
1832
1833         * lily/tuplet-bracket.cc (calc_positions): look at
1834         stem-end-position for tuplet bracket slope. Fixes sloped tuplet
1835         brackets narrower than beams. 
1836
1837         * lily/lexer.ll: set version-seen? even if version is
1838         INVALID. 
1839
1840         * lily/rest.cc (y_offset_callback): bugfix: decide position
1841         override based on scm_is_number(). Fixes \rest on center staff
1842         line. 
1843
1844         * lily/beaming-pattern.cc (best_splitpoint_index): fix beaming
1845         patterns for 16th triplets.
1846
1847 2006-06-10  Graham Percival  <gpermus@gmail.com>
1848
1849         * Documentation/user/ page.itely, global.itely: editing
1850         and reorg.
1851
1852         * Documentation/user/ various: findex -> funindex.
1853
1854 2006-06-10  Erik Sandberg  <mandolaerik@gmail.com>
1855
1856         * lily/time-scaled-music-iterator.cc: Use tupletSpannerDuration to
1857         insert extra tuplet events.
1858
1859 2006-06-10  Graham Percival  <gpermus@gmail.com>
1860
1861         * Documentation/user/programming-interfaces.itely: add
1862         info from NEWS.
1863
1864         * python/convertrules.py: add annotatefoo -> annotate-foo
1865         rules.
1866
1867         * Documentation/user/global.itely: start editing.
1868
1869         * Documentation/user/page.itely: major editing, new spacing
1870         docs.
1871
1872 2006-06-10  Han-Wen Nienhuys  <hanwen@lilypond.org>
1873
1874         * scm/define-markup-commands.scm (wordwrap-markups): use
1875         output-def 'line-width if undefined.
1876
1877         * HACKING: trim outdated info.
1878
1879 2006-06-09  Mats Bengtsson  <mabe@s3.kth.se>
1880
1881         * scm/define-grobs.scm (all-grob-descriptions): Add
1882         line-spanner-interface to all grobs that already have
1883         text-spanner-interface or dynamic-text-spanner-interface
1884
1885         * scm/page.scm: Rename annotate{headers,systems,page}->
1886         annotate-*
1887
1888         * input/regression/page-spacing.ly,
1889         input/regression/page-layout-manual-position.ly: idem
1890
1891 2006-06-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
1892
1893         * lily/line-spanner.cc: cleanup property list.
1894
1895         * scripts/lilypond-book.py (find_toplevel_snippets): don't use
1896         generator expressions (2.3 compat). 
1897
1898 2006-06-09  Mats Bengtsson  <mabe@s3.kth.se>
1899
1900         * lily/vertical-align-engraver.cc: Make sure that the
1901         align{Above,Below}Context properties are included in the automatic
1902         documentation.
1903
1904 2006-06-08  Joe Neeman  <joeneeman@gmail.com>
1905
1906         * scm/paper-system.scm (paper-system-annotate): also annotate the
1907         estimated pure-Y-extent
1908
1909         * scm/define-grobs.scm: add pure-Y-extent and pure-Y-offset functions
1910
1911         * lily/system.cc (break_into_pieces): set the estimated height
1912         of each child system
1913
1914         * lily/stem.cc (pure_height): new pure-Y-extent callback
1915
1916         * lily/staff-symbol-referencer.cc (callback): don't destroy
1917         the staff-position property
1918
1919         * lily/hara-kiri-group-spanner.cc (request_suicide): split
1920         consider_suicide into two functions
1921
1922         * lily/constrained-breaking.cc (resize): use the new pure
1923         callbacks to estimate the height of a system
1924
1925         * lily/axis-group-interface.cc (pure_group_height): new
1926         side-effect-free VerticalAxisGroup height-callback
1927
1928         * lily/align-interface.cc (get_extents_aligned_translates):
1929         split align_elements_to_extents into two functions
1930         (get_pure_child_y_translation): new function
1931
1932         * lily/grob.cc: new functions for pure-Y-extent and pure-Y-offset
1933
1934         * lily/item.cc: new functions pure_is_visible and spanned_rank_iv
1935
1936         * lily/paper-score.cc: cache break_indices and columns
1937
1938         * lily/side-position-interface.cc: new pure-Y-extent callbacks
1939         
1940 2006-06-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
1941
1942         * lily/font-config.cc (init_fontconfig): do the init if
1943         cache_file, but don't look at cache_file.
1944
1945         * input/regression/quote-tie.ly: new file.
1946
1947         * lily/tie-engraver.cc (struct Head_event_tuple): add end_moment_
1948         to Head_event_tuple, so we deal gracefully with ties on
1949         cue-endings.
1950
1951         * lily/pango-font.cc (pango_item_string_stencil): type correctness
1952         for FcChar8*
1953
1954 2006-06-08  Graham Percival  <gpermus@gmail.com>
1955
1956         * input/test/ smart-transpose.ly, reverse-music.ly:
1957         \applyMusic to music functions update, thanks Michael!
1958
1959 2006-06-07  Graham Percival  <gpermus@gmail.com>
1960
1961         * input/test/ add-staccato.ly, add-text-script.ly,
1962         unfold-all-repeats.ly, music-box.ly: \applyMusic to
1963         music functions update, thanks to Michael Meixner.
1964
1965         * Documentation/user/music-glossary.tely: small fix
1966         from Francisco.
1967
1968         * Documentation/user/ various: minor additions from mailist.
1969
1970         * Documentation/user/lilypond.tely, basic-notation.itely:
1971         small test of @funindex.  (works here)
1972
1973         * input/test/font-table.ly: reduce size to partially
1974         de-ugly version in manual.
1975
1976         * Documentation/user/page.itely: new file (split former
1977         "global issues" into "page settings" and "non-musical
1978         output".
1979
1980         * Documentation/user/ various: fix @ref{}s to match
1981         new chapter names (above).
1982
1983 2006-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
1984
1985         * SConstruct (LILYPONDPREFIX): Bootstrap fix.
1986
1987 2006-06-06  Graham Percival  <gpermus@gmail.com>
1988
1989         * Documentation/user/advanced-notation.itely: add example
1990         for segno/coda on barline.
1991
1992         * tex/texinfo.tex: merge from upstream.
1993
1994 2006-06-06  Jan Nieuwenhuizen  <janneke@gnu.org>
1995
1996         * scripts/lilypond-book.py (process_snippets): Argument fix.
1997
1998         * SConstruct:
1999         * buildscripts/builder.py:
2000         * lily/SConscript: 
2001         * mf/SConscript: 
2002         * Documentation/user/SConscript:  More SCons fixes.
2003
2004 2006-06-03  Jan Nieuwenhuizen  <janneke@gnu.org>
2005
2006         * lily/font-config.cc (init_fontconfig): Only initialize if
2007         global cache_file is found.
2008
2009 2006-06-06  Erik Sandberg  <mandolaerik@gmail.com>
2010
2011         * ly/music-functions-init.ly: Updated \overrideProperty to use the
2012         new \applyOutput.
2013
2014 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
2015
2016         * VERSION (PACKAGE_NAME): release 2.9.8
2017
2018         * lily/ledger-line-engraver.cc (stop_translation_timestep): new
2019         function. Delay ledger modifying ledgered grobs to
2020         stop_translation_timestep(), to ensure that we're ledgering
2021         according to the new spanner.
2022         (acknowledge_staff_symbol): don't check for non-NULL
2023         staff_sym->get_bound()
2024
2025         * lily/staff-symbol-engraver.cc (start_spanner): set left bound on
2026         creation.
2027
2028         * Documentation/pictures/GNUmakefile (XPM_FILES): src-wildcard for
2029         pictures too.
2030
2031         * GNUmakefile.in (dist-toplevel-txt-files): dist aclocal.m4
2032         directly from srcdir/stepmake/aclocal.m4
2033         
2034         * Documentation/misc/GNUmakefile (TEXTS): use src-wildcard for
2035         disting MISC files.
2036
2037         * lily/simple-spacer.cc (get_column_desc): desc -> description.
2038
2039 2006-06-06  Joe Neeman  <joeneeman@gmail.com>
2040
2041         * lily/simple-spacer.cc (get_line_configuration): add
2042         keep-inside-line rods
2043         (struct Column_desc): add constructor
2044         (struct Rod_desc): add constructor
2045         (get_line_forces): check for forced page breaks here too
2046
2047         * lily/instrument-name-engraver.cc (acknowledge_axis_group): prevent
2048         support/elements cycles between InstrumentNames and AxisGroups
2049
2050 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
2051
2052         * config.make.in (METAFONT): remove MAKEINFO_VERSION
2053
2054         * stepmake/stepmake/topdocs-targets.make (make-txt-files): define
2055         make-txt-files target.
2056
2057         * stepmake/stepmake/toplevel-targets.make (do-top-doc): use
2058         make-txt-files target.
2059
2060         * configure.in (LINK_GXX_STATICALLY): $srcdir for readlink.py
2061
2062         * stepmake/stepmake/generic-vars.make (distdir): create dist in
2063         top-build-dir.
2064
2065 2006-06-06  Jürgen Reuter  <reuter@ipd.uka.de>
2066
2067         * Documentation/user/instrument-notation.itely,
2068         input/regression/breathing-sign-ancient.ly,
2069         input/test/divisiones.ly: Removed redundant property settings for
2070         vaticana contexts.
2071
2072         * ly/gregorian-init.ly: Rewrote \versus and \responsum in order to
2073         fix lyrics alignment problems.  They are implemented now as scheme
2074         functions that add the appropriate unicode char to the first lyric
2075         event rather than adding a separate lyric event.  Minor edit of
2076         comments.
2077
2078 2006-06-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
2079
2080         * GNUmakefile.in (dist-toplevel-txt-files): new target. Don't
2081         pollute src dir with built .txt files, but install directly from
2082         Documentation/topdocs/out/
2083
2084         * buildscripts/output-distance.py
2085         (ComparisonData.create_html_result_page): put version/directories
2086         in table header.
2087
2088         * Documentation/topdocs/NEWS.tely (Top): document spacing section
2089         feature.
2090
2091         * configure.in (LINK_GXX_STATICALLY): use readlink.py to resolve links.
2092         Patch by Karl Hammar
2093         
2094         * buildscripts/readlink.py: add  file.
2095         Patch by Karl Hammar
2096
2097 2006-06-06  Joe Neeman  <joeneeman@gmail.com>
2098
2099         * lily/tuplet-number.cc (print): prevent stencil from being
2100         garbage collected.
2101
2102 2006-06-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
2103
2104         * scm/stencil.scm (write-system-signature): explicitly 
2105         -well, superfluously- close output port.
2106
2107         * buildscripts/output-distance.py (main): oops. Add extra argument.
2108
2109 2006-06-05  Graham Percival  <gpermus@gmail.com>
2110
2111         * Documentation/user/music-glossary.tely: clarified example
2112         from Francisco Vila, thanks!
2113
2114 2006-06-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
2115
2116         * input/regression/spacing-section.ly: new file.
2117
2118         * lily/input.cc (programming_error): new function.
2119
2120         * lily/spacing-engraver.cc (try_music): new function. Accept
2121         spacing-section-event
2122
2123         * lily/spacing-spanner.cc (set_springs): take slices of all
2124         columns for spacing.
2125
2126         * lily/include/paper-column.hh (class Paper_column): add
2127         Paper_column::compare.
2128
2129         * ly/spanners-init.ly (newSpacingSection): add newSpacingSection.
2130
2131         * scm/define-music-types.scm (music-descriptions): add
2132         SpacingSectionEvent
2133
2134         * lily/music-iterator.cc (report_event): use programming_error for
2135         sending non-event error.
2136
2137         * lily/input.cc (programming_error): new function
2138
2139         * buildscripts/output-distance.py (main): use compare-XXX for
2140         compare files.
2141         (main): --threshold option, default at 0.30
2142
2143         * output-distance.py (main): add --threshold option.
2144
2145 2006-06-04  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2146
2147         * scm/paper-system.scm (paper-system-annotate): fix problem when
2148         annotating an empty system
2149
2150 2006-06-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
2151
2152         * GNUmakefile.in: reinstate old web tar/copying.
2153
2154 2006-06-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
2155
2156         * lily/lyric-combine-music-iterator.cc (find_voice): return 0 if
2157         nothing changes. (Erik S) 
2158
2159         * lily/percent-repeat-iterator.cc (get_music_list): fix repeat
2160         count. (Erik S)
2161
2162 2006-05-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2163
2164         * scm/define-markup-commands.scm (whiteout): do not force
2165         foreground color of argument markup to black.
2166
2167         * scm/stencil.scm (annotate-y-interval): put arrow dimension at
2168         the left of the arrow, instead of below the arrow name, so that,
2169         when two little arrows are vertically stacked, their dimensions
2170         and name should not overlap. Add a color key parameter.
2171
2172         * scm/paper-system.scm (paper-system-annotate): Annotate
2173         next-space+next-padding instead of next-space. Annotate space
2174         between next-padding and next-space+padding, respectively, and
2175         following system extent and refpoint-Y-extent. Use colors.
2176
2177         * scm/page.scm (annotate-page): translate annotations slightly to
2178         the right.
2179
2180 2006-06-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
2181
2182         * lily/figured-bass-position-engraver.cc (acknowledge_end_slur):
2183         fix for x-staff slurs. Thanks Joe!
2184
2185         * buildscripts/output-distance.py
2186         (SystemLink.output_expression_change_count): keep track of changed
2187         details, and dump in details html page.
2188  
2189         * input/regression/figured-bass-staff.ly: add note about setting
2190         properties in Staff context.
2191
2192         * lily/figured-bass-position-engraver.cc (acknowledge_slur):
2193         add slurs and ties to support too.
2194
2195         * buildscripts/output-distance.py (main): set dest_dir
2196         argument. Add --max-count option.
2197
2198 2006-06-02  Jürgen Reuter  <reuter@ipd.uka.de>
2199
2200         * ly/gregorian-init.ly: Converted to utf-8.  Added memorable
2201         shortcuts for special unicode chars that are useful in chant
2202         notation.  Revised exisiting and added new comments.
2203
2204 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
2205
2206         * make/mutopia-rules.make: remove duplicate recipe.
2207
2208 2006-06-02  Werner Lemberg  <wl@gnu.org>
2209
2210         * tex/texinfo.cnf: Fix typo (\euro -> \minus).
2211         Add support for U+0132 (IJ) and U+0133 (ij).
2212
2213 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
2214
2215         * buildscripts/output-distance.py (FileLink): new class. collect
2216         info systems from one .ly file. 
2217         (FileLink.link_files_for_html): further tweaks.
2218
2219 2006-06-02  Graham Percival  <gpermus@gmail.com>
2220
2221         * tex/texinfo.tex: partial fix for @funindex.
2222
2223         * Documentation/user/macros.tely: uncomment @funindex (doesn't
2224         break anything).
2225
2226 2006-06-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
2227
2228         * make/mutopia-vars.make (ly_examples): replace .ly.txt with .ly
2229
2230         * tex/texinfo.tex (sectionheading, q.v.): call \quoteexpand for
2231         @example too. Backportme.
2232
2233 2006-06-02  Graham Percival  <gpermus@gmail.com>
2234
2235         * tex/texinfo.cnf: added UTF-8 support for texinfo; patch
2236         from Werner Lemberg.
2237
2238 2006-06-02  Paco (Francisco Vila)  <fravd@ya.com>
2239
2240         * Documentation/user/music-glossary.tely: additional spanish
2241         updates and a lyrics fix in an example.
2242
2243 2006-06-02  Jürgen Reuter  <reuter@ipd.uka.de>
2244
2245         * scm/define-grob-properties.scm: Previous patch contained
2246         spurious line from another patch not yet committed.  Fixed.
2247
2248         * scm/define-grob-properties.scm: Add missing doc strings for
2249         ancient notation.
2250
2251 2006-06-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
2252
2253         * buildscripts/output-distance.py
2254         (ComparisonData.write_text_result_page): separate the scores, sort
2255         by geo_score.
2256
2257         * scm/framework-eps.scm (output-classic-framework): start at 1 for
2258         system signatures.
2259
2260         * buildscripts/output-distance.py (me_path): use argv[0] for
2261         sys.path extension
2262         (ComparisonData.img_cell): use colored borders.
2263
2264         * scm/stencil.scm (write-system-signature): escape newlines too.
2265         (write-system-signature): use (1,-1) interval for empty interval
2266
2267 2006-01-01  Graham Percival  <gpermus@gmail.com>
2268
2269         * Documentation/user/music-glossary.tely: Spanish updates
2270         from Francisco Vila.
2271
2272         * Documentation/user/lilypond-book.itely: addition from
2273         Vaclav Smilauer.
2274
2275         * Documentation/user/ various: edits, small additions
2276         from mailist, etc.
2277
2278 2006-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
2279
2280         * GNUmakefile.in (tree-lib-prefix-current):
2281         (tree-share-prefix-current): Use version number in tree, add
2282         `current' symlinks.
2283
2284 2006-06-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
2285
2286         * GNUmakefile.in: write VERSION, again.
2287
2288         * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
2289         $(outdir)/%.ly $(outdir)/%.ps): dump sigs for normal files too.
2290
2291         * stepmake/aclocal.m4: robuster version detection.
2292
2293         * buildscripts/output-distance.py
2294         (ComparisonData.create_html_result_page): copy only if file
2295         exists, fixup src paths.
2296
2297         * stepmake/bin/add-html-footer.py (built): junk gulp_file()
2298
2299 2006-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
2300
2301         * stepmake/aclocal.m4: Robustification for (gcc) version detection.
2302         Another datarootdir reto.
2303
2304         * cygwin/postinstall-lilypond.sh: Do not fail if info docs aren't
2305         available.  This should be moved to postinstall-lilypond-doc.
2306
2307 2006-05-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
2308
2309         * GNUmakefile.in: simplify local-WWW-post. 
2310         remove -type l from find.
2311
2312         * buildscripts/output-distance.py (ComparisonData.compare_trees):
2313         fixes. Don't follow symlinks.
2314         (ComparisonData.create_html_result_page): remove previous results.
2315         insert ../python in path.
2316
2317         * scripts/lilypond-book.py (PREAMBLE_LY): spacing fixes.
2318
2319 2006-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
2320
2321         * config.make.in (datadir): Add datarootdir to silence autoconf.
2322
2323         * stepmake/aclocal.m4: Update for autoconf-2.59d.
2324
2325 2006-05-31  Erlend Aasland  <erlenda@gmail.com>
2326
2327         * dynamic-engraver.cc: fix bug (dynamics collide with accidentals)
2328
2329         * scm/output-ps.scm (repeat-slash): fix a bug that made repeat
2330         slash beams too wide.
2331
2332 2006-05-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
2333
2334         * VERSION: release 2.9.7
2335         
2336 2006-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
2337
2338         * lily/relocate.cc (read_relocation_dir): Do not blindly
2339         dereference DIR.
2340
2341 2006-05-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
2342
2343         * lily/parser.yy: replace THIS by PARSER
2344
2345         * Documentation/index.html.in: add link to test-results.html page.
2346
2347         * Documentation/topdocs/NEWS.tely (Top): update NEWS entry.
2348
2349         * scm/translation-functions.scm (format-bass-figure): translate
2350         digits over 10 to the left
2351
2352         * scm/define-markup-commands.scm (translate-scaled): new markup.
2353
2354         * mf/feta-nummer-code.mf (code): overshoot the topright tip of the
2355         7 glyph. 
2356
2357         * ly/engraver-init.ly: add Figured_bass_engraver
2358
2359         * lily/engraver-group.cc (acknowledge_grobs): use start/stop drul.
2360
2361         * lily/figured-bass-engraver.cc (clear_spanners): use everywhere.
2362
2363         * lily/score-engraver.cc (announce_grob): only note START announces.
2364
2365         * lily/include/engraver-group.hh (Translator_group):
2366         acknowledge_hash_table_ is now drul.
2367
2368         * lily/engraver.cc (announce_end_grob): new method.
2369
2370         * lily/include/grob-info.hh (class Grob_info): add start_end_ member.
2371
2372         * lily/translator-dispatch-list.cc (create): take start_end argument.
2373
2374         * lily/include/translator.hh (TRANSLATOR_DECLARATIONS): change
2375         acknowledge_static_array_ to drul
2376
2377         * lily/include/translator.icc (ADD_END_ACKNOWLEDGER): new macro.
2378
2379         * scm/define-grob-interfaces.scm
2380         (bass-figure-alignment-interface): add bass-figure-alignment-interface
2381
2382         * scm/define-grobs.scm (all-grob-descriptions): add
2383         BassFigureAlignmentPositioning
2384
2385         * ly/Welcome-to-LilyPond-MacOS.ly: include in LilyPond, so version
2386         number stays up to date. Backportme.
2387
2388 2006-05-30  Mats Bengtsson  <mabe@s3.kth.se>
2389
2390         * Documentation/user/basic-notation.itely (Bar lines): Document
2391         the "||:" bar type. 
2392
2393 2006-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
2394
2395         * buildscripts/builder.py: Remove --ly option/target from mf-to-table.
2396
2397         * scripts/lilypond-book.py: Bugfix: do not blindly attempt
2398         .../current hack if LILYPONDPREFIX is fine.  Fixes `scons doc'
2399         build.
2400
2401         * Resurrect `scons lily' build.
2402
2403         * SConstruct (symlink_tree): Bugfix: link
2404         music-drawing-routines.ps to file iso directory.
2405
2406         * lily/SConscript: Remove kpath-guile from LIBS.
2407
2408         * SConstruct (libdir_package_version): Typo.
2409         (configure): Comment-out fontforge for lack of fontforge.pc .
2410         Also add libdir* to environment.
2411
2412 2006-05-30  Graham Percival  <gpermus@gmail.com>
2413
2414         * Documentation/user/ various: minor additions from mailist and
2415         editing.
2416
2417 2006-05-30  Paco <fravd@ya.com>
2418
2419         * Documentation/user/music-glossary.tely: numerous corrections and
2420         some new translations.
2421
2422 2006-05-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
2423
2424         * BackportmeStart.
2425         
2426         * buildscripts/output-distance.py
2427         (ComparisonData.create_html_result_page): new routine: summarise
2428         results in HTML page with images. 
2429         (ComparisonData.create_text_result_page): create summary text files too.
2430
2431         * GNUmakefile.in (web-ext): package .signature files too. They
2432         compress well. 
2433
2434         * scm/stencil.scm (write-system-signature): typo.
2435
2436         * GNUmakefile.in: create web-root/VERSION to help upload scripts.
2437
2438         * scm/stencil.scm (write-system-signature): better escaping.
2439         only write signature for music systems, not for markup systems.
2440
2441         * scm/framework-ps.scm (output-framework): dump-signatures support
2442         for plain output.
2443
2444         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): add -ddump-signatures.
2445
2446         * scm/framework-ps.scm (write-preamble): redefine mark_URI to nop
2447         for -dno-point-and-click
2448
2449         * lily/grob.cc (get_print_stencil): don't read
2450         point_and_click_global to determine whether to set grob-cause.
2451
2452 2006-05-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
2453
2454         * buildscripts/output-distance.py (main): new function.
2455         (ComparisonData): new class.
2456
2457         * lily/ledger-line-engraver.cc (acknowledge_staff_symbol): be more
2458         careful with generating new LedgerLineSpanners.
2459
2460         * lily/ledger-line-spanner.cc (set_spacing_rods): suicide if no staff.
2461
2462         * ly/engraver-init.ly: remove Ledger_line_engraver from Voice
2463         context. This fixes double ledger lines in output. 
2464
2465         * lily/system.cc (get_paper_system): remove 3 layer limit.
2466
2467         * buildscripts/output-distance.py (SystemLink.distance): new
2468         file. Compare signatures.
2469
2470         * python/safeeval.py (SafeEval.visitUnarySub): new file.
2471
2472         * lily/grob-array.cc (remove_duplicates): rename from
2473         uniq(). Sort before calling uniq() so it actually works.
2474
2475 2006-05-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
2476
2477         * scripts/lilypond-book.py (Lilypond_file_snippet.ly): strip
2478         \version from lilypond file snippet.
2479         (Lilypond_file_snippet.ly): oops. typo.
2480         (find_toplevel_snippets): urgh. again.
2481
2482         * lily/system.cc (get_paper_systems): uniq all_elements_ , to
2483         prevent duplicated broken items in output.
2484
2485         * scm/framework-eps.scm (output-classic-framework): only dump if
2486         dump-signatures is set.
2487
2488         * scm/lily.scm (define-scheme-options): add dump-signatures option.
2489
2490         * scm/stencil.scm (write-system-signature): new routine: write
2491         python parseable signature of a separate paper system.
2492         BackportmeEnd.
2493         
2494 2006-05-26  Han-Wen Nienhuys  <hanwen@lilypond.org>
2495
2496         * lily/stanza-number-engraver.cc (process_music): use is_markup()
2497         iso is_string().
2498         include header.
2499
2500 2006-05-25  Erik Sandberg  <mandolaerik@gmail.com>
2501
2502         * translator-group.cc: send music events to engravers in
2503         non-bottom contexts.
2504
2505         * tuplet-engraver.cc: process tuplet brackets in correct order.
2506
2507 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
2508
2509         * stepmake/aclocal.m4: STEPMAKE_PYTHON(): clear cached value since
2510         arg 2 might point us to a new binary (patch by Karl Hammar)
2511         
2512 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
2513
2514         * VERSION (PACKAGE_NAME): release 2.9.6
2515
2516         * Documentation/topdocs/NEWS.tely (Top): trim explanation. 
2517
2518         * Documentation/user/*.itely: 2nd
2519         attempt: replace funindex -> findex globally.
2520
2521 2006-05-24  Nicolas Sceaux  <nicolas.sceaux@free.fr>
2522
2523         * input/no-notation/display-lily-tests.ly: fix \applyOutput
2524         test. Add \break, \pageBreak, \pageTurn, etc, tests.
2525
2526         * scm/define-music-display-methods.scm: display methods for
2527         breaks. Fix \applyOutput.
2528
2529 2006-05-24  Han-Wen Nienhuys  <hanwen@lilypond.org>
2530
2531         * Documentation/user/macros.itexi: comment out funindex expansion. 
2532
2533         * Documentation/user/music-glossary.tely: junk \oldaddlyrics
2534         everywhere.
2535
2536         * GNUmakefile.in: fix wildcarding for scrips/out/ links. Thanks
2537         Karl Hammar. Backportme.
2538  
2539         * Documentation/user/advanced-notation.itely (Balloon help): idem.
2540
2541         * Documentation/user/changing-defaults.itely (Creating contexts): idem.
2542
2543         * Documentation/user/programming-interface.itely (Running a
2544         function on all layout objects): idem.
2545
2546         * Documentation/user/introduction.itely (Automated engraving):
2547         update \applyOutput syntax
2548
2549         * lily/lyric-combine-music-iterator.cc (start_new_syllable):
2550         remove debugging hook.
2551
2552         * configure.in (LINK_GXX_STATICALLY): use "" to allow $
2553         expansion. 
2554
2555         * Documentation/user/GNUmakefile (TEXI2DVI_FLAGS): add -E.
2556
2557         * stepmake/stepmake/texinfo-rules.make ($(outdir)/%.dvi): add
2558         TEXI2DVI_FLAGS to texi2dvi invocation. 
2559
2560 2006-05-24  Erik Sandberg  <mandolaerik@gmail.com>
2561
2562         * lily/chord-tremolo-*.cc: Reworked how \repeat "tremolo"
2563         works. More work is done by iterator now, and engraver has been
2564         very much simplified.
2565
2566         * lily/translator-group.cc: try_music is now invoked through a
2567         listener
2568
2569         * lily/*-iterator.cc: Massive cleanups. Junked
2570         try_music_in_children globally. Renamed try_music to report_event,
2571         and made that method descend to a bottom context automatically.
2572
2573         * lily/event-iterator.cc: New file.
2574
2575         * lily/output-property-iterator.cc,
2576         lily/old-lyric-combine-music-iterator.cc: Removed.
2577
2578         * python/convert-rules.py: Modified the syntax for \applyOutput.
2579
2580 2006-05-23  Graham Percival  <gpermus@gmail.com>
2581
2582         * stepmake/stepmake/texinfo-rules.make: added -E, allows pdf doc
2583         creation.
2584
2585         * Documentation/user/ various: stuff that might have helped
2586         to fix the pdf creation, plus some minor doc additions.
2587
2588         * Documentation/user/changing-defaults.itely: remove @b from
2589         @b{ @internasref{foo}}; this breaks texi2dvi -E.
2590
2591 2006-05-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
2592
2593         * lily/beaming-pattern.cc (beamify): deal with negative start
2594         moments for beaming patterns.
2595
2596 2006-05-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
2597
2598         * lily/beaming-info.cc (beamify): new function: read beatLength
2599         and beatGrouping from context. 
2600
2601         * input/regression/beam-beat-grouping.ly (Module): new file.
2602
2603         * input/regression/beam-unconnected-beamlets.ly (Module): new file.
2604
2605         * lily/beam.cc (get_beam_segments): generate events for
2606         max_connect_ case too.
2607         (get_beam_segments): read Stem::max-beam-connect.
2608
2609         * input/regression/beam-single-stem.ly: new file.
2610
2611         * lily/stem.cc (set_beaming): use #f as signaling value for
2612         beamcount 0.
2613
2614         * lily/beam-engraver.cc (typeset_beam): set right bound if unset.
2615
2616         * lily/beam.cc (set_beaming): read clip-edges property.
2617         (calc_direction): don't suicide for single stem.
2618
2619         * lily/beaming-info.cc (best_splitpoint_index): take bool*
2620         argument, remove 1<<15 hack. Remove clip_edges() 
2621
2622         * lily/hairpin.cc (print): only do padding for nonmusical bounds
2623
2624 2006-05-21  Graham Percival  <gpermus@gmail.com>
2625
2626         * Documentation/user/basic-notation.itely: reorg.
2627
2628         * Documentation/user/ various: minor fixes.
2629
2630 2006-05-20  Han-Wen Nienhuys  <hanwen@lilypond.org>
2631
2632         * lily/stencil-expression.cc (register_stencil_head): opps, append
2633         to cdr of static SCM object.
2634
2635 2006-05-19  Graham Percival  <gpermus@gmail.com>
2636
2637         * Documentation/user/README.txt, lilypond.tely, macros.itexi:
2638         update framework for command index.  DOC WRITERS: use @funindex
2639         instead of @cindex @code{}.
2640
2641         * Documentation/user/ various: replace @cindex @code{} => @funindex
2642
2643 2006-05-19  Han-Wen Nienhuys  <hanwen@lilypond.org>
2644
2645         * lily/beam.cc (set_stem_lengths): trigger 'beaming callback, in
2646         case positions is set manually. 
2647
2648 2006-05-18  Erik Sandberg  <mandolaerik@gmail.com>
2649         
2650         * scm/ly-syntax-constructors.scm: New file. Converted a few syntax
2651         rules to Scheme.
2652
2653 2006-05-18  Han-Wen Nienhuys  <hanwen@lilypond.org>
2654
2655         * Documentation/user/changing-defaults.itely (Contexts explained):
2656         use absolute dimension for @image.
2657
2658         * Documentation/user/GNUmakefile (OUT_PNG_IMAGES): generate PNG
2659         out image for illustration too.
2660         ($(outdir)/%.png): add more png <-> eps rules. 
2661
2662 2006-05-17  Graham Percival  <gpermus@gmail.com>
2663
2664         * Documentation/user/ various: remove trailing whitespace, cosmetic
2665         change to reduce changes produced by diff.
2666
2667 2006-05-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
2668
2669         * lily/main.cc (do_chroot_jail): correctness tweak.
2670
2671         * python/lilylib.py (system): import subprocess in system () only.
2672
2673         * scripts/*.py: use TARGET_PYTHON iso PYTHON. Backportme.
2674
2675         * make/substitute.make (ATVARIABLES): add TARGET_PYTHON as subst
2676         variable. Backportme.
2677
2678 2006-05-17  Erik Sandberg  <mandolaerik@gmail.com>
2679         
2680         * lily/parser.yy: Change all syntax rules of type Music to SCM type
2681
2682 2006-05-17  Werner Lemberg  <wl@gnu.org>
2683
2684         * lily/lexer.ll (init_signature_has_table): Add
2685         `scm-scm-music-music'.
2686
2687         * lily/parser.yy (MUSIC_FUNCTION_SCM_SCM_MUSIC_MUSIC): New token.
2688         (Generic_prefix_music_scm): Add rule for it.
2689
2690         * lily/quote-iterator.cc (Quote_iterator::process): Handle
2691         `quoted-transposition' property.
2692
2693         * ly/music-functions-init.ly (transposedCueDuring): New function.
2694
2695         * scm/define-music-properties.scm (all-music-properties): Updated.
2696
2697         * Documenation/topdocs/NEWS.itely: Document it.
2698
2699 2006-05-17  Han-Wen Nienhuys  <hanwen@lilypond.org>
2700
2701         * python/lilylib.py (system): move import subprocess to system()
2702         definition. 
2703
2704         * python/convertrules.py (conv): fix convert-ly rules for 2.9.4
2705
2706         * VERSION (PATCH_LEVEL): release 2.9.5
2707         
2708         * Documentation/topdocs/INSTALL.texi (Top): update versions and
2709         build instructions. 
2710
2711         * ly/engraver-init.ly: switch on hairpinToBarline by default.
2712
2713 2006-05-16  Graham Percival  <gpermus@gmail.com>
2714
2715         * Documentation/user/basic-notation.itely: editing from Dave, thanks!
2716
2717         * Documentation/user/ various: minor fixes.
2718
2719 2006-05-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
2720
2721         * Documentation/topdocs/NEWS.tely (Top): add hairpinToBarline feature.
2722
2723 2006-05-16  Mats Bengtsson  <mabe@s3.kth.se>
2724
2725         * Documentation/user/advanced-notation.itely (Instrument names):
2726         Modified obsolete instruction on how to move instrument names away
2727         from the staves. Hmm, at second thought the bug probably has been
2728         solved, so the full bug description should probably be removed.
2729
2730 2006-05-16  Han-Wen Nienhuys  <hanwen@lilypond.org>
2731
2732         * lily/dynamic-engraver.cc (typeset_all): hang ending on
2733         currentCommandColumn. 
2734
2735         * lily/hairpin.cc (print): also add padding for non-neighbor
2736         hairpin bounds.
2737
2738         * scm/define-context-properties.scm
2739         (all-user-translation-properties): add hairpinToBarline
2740
2741         * input/regression/hairpin-to-barline.ly: new file.
2742
2743         * lily/context.cc (internal_send_stream_event): thinko fix.
2744
2745         * lily/tie.cc (set_default_control_points): robustness fix.
2746
2747         * python/musicxml.py (Part.interpret): don't complain about
2748         incomplete measures.
2749
2750         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): only add
2751         new music if last_event_chord() returned None.
2752
2753         * python/musicxml.py (Part.interpret): skip back over chord notes.
2754
2755 2006-05-16  Erik Sandberg  <mandolaerik@gmail.com>
2756         
2757         * lily/percent-repeat-engraver.cc, lily/parser.yy,
2758         lily/define-music-types.cc, lily/percent-repeat-iterator.cc,
2759         lily/slash-repeat-engraver.cc,
2760         lily/include/percent-repeat-iterator.hh: Rework percent repeats:
2761         iterator sends PercentEvents
2762
2763         * lily/time-scaled-music-iterator.cc, lily/tuplet-engraver.cc:
2764         rework tuplets: send start/stop events to engraver
2765
2766         * lily/context.cc, lily/music.cc, lily/context-scheme.cc: Add
2767         dispatchers event-source and events-below to Context
2768         
2769 2006-05-15  Graham Percival  <gpermus@gmail.com>
2770
2771         * Documentation/user/README.txt: update info for doc writers.
2772
2773         * Documentation/user/programming-interface.itely: integrate
2774         Nicolas' fixes for chapter rewrite.
2775
2776         * Documentation/user/ various: minor fixes.
2777
2778 2006-05-15  Han-Wen Nienhuys  <hanwen@lilypond.org>
2779
2780         * lily/clef-engraver.cc: cleanup.
2781
2782         * Documentation/user/GNUmakefile: dist context-example.eps too.
2783
2784         * lily/key-engraver.cc (create_key): use
2785         explicitKeySignatureVisibility for cancellation too. 
2786
2787         * lily/font-config.cc (init_fontconfig): don't close file if
2788         f==NULL. 
2789
2790 2006-05-15  Erlend Aasland  <erlenda@gmail.com>
2791
2792         * Documentation/topdocs/NEWS.tely: niente and rotation news
2793
2794 2006-05-14  Erlend Aasland  <erlenda@gmail.com>
2795
2796         * lily/include/stencil.hh
2797         * lily/stencil.cc (rotate): new function. Makes it possible
2798         to rotate a stencil around a given offset.
2799
2800         * lily/grob.cc (get_print_stencil): add rotation support
2801
2802         * lily/stencil-interpret.cc (interpret_stencil_expression):
2803         add rotation support
2804
2805         * lily/stencil-scheme.cc (ly:stencil-rotate): new function
2806
2807         * scm/define-grob-properties.scm: add 'rotation property
2808
2809         * scm/define-markup-commands.scm: add rotate markup command
2810         
2811         * scm/output-ps.scm: add rotation support in PostScript backend
2812
2813         * scm/output-svg.scm: add rotation support in SVG backend
2814
2815 2006-05-13  Graham Percival  <gpermus@gmail.com>
2816
2817         * Documentation/user/music-glossary.itely: French correction.
2818
2819         * Documentation/user/programming-interface.itely: major
2820         new docs, some reorg, some info from Nicolas.
2821
2822         * Documentation/user/ various: small fixes.
2823
2824 2006-05-12  Mats Bengtsson  <mabe@s3.kth.se>
2825
2826         * Documentation/user/programming-interface.itely (Markup
2827         programmer interface): Remove duplicate text.
2828
2829 2006-05-12  Graham Percival  <gpermus@gmail.com>
2830
2831         * Documentation/user/context-example.eps: new file.
2832
2833         * Documentation/user/changing-defaults.itely: set up file to
2834         use eps image.
2835
2836         * Documentation/user/programming-interface.itely: changes
2837         from mailist.
2838
2839 2006-05-12  Han-Wen Nienhuys  <hanwen@lilypond.org>
2840
2841         * configure.in (LINK_GXX_STATICALLY): python 2.4 req.
2842
2843 2006-05-11  Graham Percival  <gpermus@gmail.com>
2844
2845         * Documentation/user/programming-interface.itely: first round of
2846         editing and merging emails from Nicolas.
2847
2848         * Documentation/user/scheme-tutorial: minor edit.
2849
2850 2006-05-11  Han-Wen Nienhuys  <hanwen@lilypond.org>
2851
2852         * python/musicxml.py (Xml_node.__init__): _attribute_dict stores
2853         XML attributes.
2854         (Xml_node.message): use it.
2855
2856         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): 
2857         oops. Add duration argument.
2858
2859 2006-05-10  Joe Neeman  <joeneeman@gmail.com>
2860
2861         * lily/paper-column-engraver.cc (make_columns):
2862         * scm/define-grobs.scm: Revert my previous change and set the default
2863         in define-grobs.scm instead.
2864
2865 2006-05-09  Graham Percival  <gpermus@gmail.com>
2866         
2867         * Documentation/user/changing-defaults.itely: general editing,
2868         info about \set and \override.
2869
2870         * Documentation/user/tweaking.itely, advanced-notation.itely:
2871         fixes from Dave Luttinen, thanks!
2872
2873 2006-05-09  Joe Neeman  <joeneeman@gmail.com>
2874
2875         * lily/paper-column-engraver.cc (make_columns): By default, a column
2876         needs to be breakable.
2877
2878 2006-05-09  Han-Wen Nienhuys  <hanwen@lilypond.org>
2879
2880         * scripts/musicxml2ly.py (musicxml_clef_to_lily): use new
2881         Attributes methods
2882         (musicxml_time_to_lily): idem
2883         (musicxml_key_to_lily): idem
2884         (instrument_drumtype_dict): dict for supported drumtypes.
2885         (LilyPondVoiceBuilder.__init__): new class: sanely keep track of
2886         moments and pending mm rests
2887         (musicxml_voice_to_lily_voice): rewrite to use LilyPondVoiceBuilder
2888         (musicxml_voice_to_lily_voice): strip KeyChangeEvents for drums.
2889         (musicxml_voice_to_lily_voice): add mode change.
2890         (option_parser): lxml.etree (http://codespeak.net/lxml/) for more
2891         speed and less memory usage (factor 5 to 10).
2892         (convert): write -defs.ly  and driver file separately so people
2893         can script their own part extraction.
2894
2895         * python/musicxml.py (minidom_demarshal_node): new function:
2896         separate minidom handling.
2897         (lxml_demarshal_node): new function: support lxml.etree too.
2898         (Xml_node.message): new function: verbose error message, with XML
2899         path to offending node.
2900         (Attributes.get_measure_length): sane interface to MusicXML attributes.
2901         (Part_list.generate_id_instrument_dict): new method: collect
2902         instrument names, to be able to set drum_type.
2903         (Part.interpret): handle underfull measures
2904         (Part.interpret): assign instrument names.
2905
2906         * python/musicexp.py (Output_printer.close): new method
2907         (MusicWrapper.print_ly): new class: support other modes,
2908         eg. \drummode
2909         (BarCheck.print_ly): new class. Support bar checks, with comments
2910         and fancy barchecks. 
2911         (NoteEvent.__init__): also set drum_type for drum notes.
2912         (MultiMeasureRest.lisp_expression): dump mm rests.
2913
2914         * lily/paper-column-engraver.cc (stop_translation_timestep): set
2915         line-break-permission if forbidBreak is not set.
2916
2917 2006-05-09  Joe Neeman  <joeneeman@gmail.com>
2918
2919         * scm/define-context-properties.scm:
2920         * scm/define-grob-properties.scm:
2921         * scm/define-grobs.scm:
2922         * scm/define-music-display-methods.scm:
2923         * scm/define-music-properties.scm:
2924         * scm/define-music-types.scm:
2925         * scm/music-functions.scm:
2926         * ly/declarations-init.ly:
2927         * lily/include/constrained-breaking.hh:
2928         * lily/system.cc:
2929         * lily/spaceable-grob.cc:
2930         * lily/simple-spacer.cc:
2931         * lily/paper-score.cc:
2932         * lily/paper-column.cc:
2933         * lily/paper-column-engraver.cc:
2934         * lily/item.cc:
2935         * lily/gourlay-breaking.cc:
2936         * lily/constrained-breaking.cc:
2937         * python/convertrules.py:
2938         Change "penalty", "page-penalty" and "breakable" to "line-break-penalty",
2939         "page-break-penalty" and "line-break-permission".
2940         Add "page-break-permission", "page-turn-permission" and "page-turn-penalty".
2941         Replace BreakEvent with LineBreakEvent, PageBreakEvent and PageTurnEvent.
2942
2943         * lily/bar-engraver.cc:
2944         * lily/beam-engraver.cc:
2945         * lily/forbid-break-engraver.cc:
2946         * lily/ligature-engraver.cc:
2947         * lily/paper-column-engraver.cc:
2948         * lily/percent-repeat-engraver.cc:
2949         * lily/score-engraver.cc:
2950         * lily/score-engraver.hh:
2951         * lily/paper-column-engraver.hh:
2952         Inter-engraver communication regarding line breaks is done through context
2953         properties (Score.forbidBreak) instead of function calls.
2954
2955 2006-05-08  Han-Wen Nienhuys  <hanwen@lilypond.org>
2956
2957         * VERSION (PACKAGE_NAME): release 2.9.4
2958
2959 2006-05-08  Graham Percival  <gpermus@gmail.com>
2960
2961         * Documentation/user/working.itely: proofreading from Dave
2962         Luttinen, thanks.
2963
2964         * Doucmentation/user/README.txt: updated with manual style info.
2965
2966         * Documentation/user/ various: trim linewidth to 78 chars.
2967
2968 2006-05-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
2969
2970         * scm/define-grob-properties.scm (all-internal-grob-properties):
2971         remove chord-tremolo property.
2972
2973         * lily/beam.cc (get_beam_segments): don't use stem position as
2974         base for broken ends.
2975
2976 2006-05-06  Graham Percival  <gpermus@gmail.com>
2977
2978         * Documentation/user/putting.itely: proofreading from Dave
2979         Luttinen, thanks!
2980
2981         * Documentation/user/ various: more reorg and clarifications.
2982
2983 2006-05-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
2984
2985         * scm/lily.scm (TEX_STRING_HASHLIMIT): move from framework-texstr.scm.
2986
2987         * ly/music-functions-init.ly: new function featherDurations
2988
2989         * lily/beam.cc: read grow-direction for feathered beaming.
2990
2991         * Documentation/topdocs/NEWS.tely (Top): typo.
2992
2993 2006-05-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
2994
2995         * lily/include/beam.hh (struct Beam_stem_segment): add gapped_ for
2996         tremolo beams.
2997
2998 2006-05-05  Erik Sandberg  <mandolaerik@gmail.com>
2999         * lily/context.cc, lily/global-context.cc: Added 'unique' member,
3000         used by music streams.
3001
3002         * lily/dispatcher.cc, lily/dispatcher-scheme.cc,
3003         lily/stream-event.cc, lily/stream-event-scheme.cc,
3004         lily/listener.cc, lily/scheme-listener.cc,
3005         lily/scheme-listener-scheme.cc, lily/include/dispatcher.hh,
3006         lily/include/stream-event.hh, lily/include/listener.hh,
3007         lily/include/scheme-listener.hh, scm/define-event-classes.scm:
3008         Created data structures for music streams.
3009         
3010 2006-05-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
3011
3012         * lily/beam.cc (get_beam_segments): new function. Reorganise the
3013         construction of a beam. 
3014         (print): rewrite. 
3015
3016         * flower/include/std-vector.hh (default_compare): use only one comparison.
3017
3018         * scm/define-markup-commands.scm (note-by-number): remove debug display.
3019         (note-by-number): further attachment fixes.
3020
3021         * scm/lily-library.scm (ordered-cons): new function.
3022         (interval-index): new function
3023
3024         * lily/note-head-scheme.cc (LY_DEFINE): new file.
3025
3026         * lily/note-head.cc (get_stem_attachment): new function.
3027
3028         * scm/define-markup-commands.scm (note-by-number): read 'style
3029         property. 
3030
3031         * input/regression/markup-note.ly: show note-head style option.
3032
3033         * mf/feta-bolletjes.mf (overdone_heads): fix attachment points for
3034         triangle head.
3035
3036 2006-05-04  Han-Wen Nienhuys  <hanwen@lilypond.org>
3037
3038         * mf/GNUmakefile (NCSB_OTFS): remove old ncsb detection further.
3039
3040         * configure.in (LINK_GXX_STATICALLY): fix for ncsb detection.
3041
3042         * lily/include/constrained-breaking.hh: GCC 4 fix.
3043
3044 2006-05-04  Joe Neeman  <joeneeman@gmail.com>
3045
3046         * lily/simple-spacer.cc: Remove class Simple_spacer_wrapper.
3047         Replace it with functions get_line_forces and get_line_configuration.
3048         (class Simple_spacer): Make data private.
3049         Rewrite compression algorithm to be faster and simpler.
3050
3051         * lily/simple-spacer-scheme.cc (ly_solve_rod_and_spring_problem):
3052         * lily/gourlay-breaking.cc (solve):
3053         * lily/constrained_breaking.cc (space_line):
3054         Change it to the new simple-spacer code.
3055
3056         * lily/paper-score.cc (get_paper_systems):
3057         (Paper_score):
3058         (process):
3059         Delay breaking the systems until they are requested.
3060         (find_break_indices):
3061         Use vsize for indices.
3062         (calc_breaking):
3063         Move the "Calculating line breaks" message here.
3064
3065         * lily/system.cc (pre_processing):
3066         Move the "Calculating line breaks" message away from here.
3067         (break_into_pieces):
3068         Allow multiple calls to this function in sequence (with touching-but-
3069         not-overlapping breakpoints).
3070
3071         * lily/constrained-breaking.cc:
3072         Replace most of the get_XXXX functions with get_line_details.
3073         Only calculate the force for each line. Calculate configurations only
3074         for the lines we will actually use.
3075         Replace cols_ with lines_.
3076
3077 2006-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3078
3079         * mf/GNUmakefile (depth): remove FC_FIND.
3080
3081         * config.make.in (NCSB_SOURCE_FILES): subst NCSB_SOURCE_FILES
3082
3083         * configure.in (LINK_GXX_STATICALLY): call fc-match from within configure.
3084
3085         * scm/framework-ps.scm (write-preamble): new function.
3086         (write-preamble): load mac fonts via fondu, even if gs-font-load
3087         is set.
3088
3089 2006-05-03  Werner Lemberg  <wl@gnu.org>
3090
3091         * mf/GNUmakefile (FC_FIND): Fix typo.
3092
3093 2006-05-03  Erlend Aasland  <erlenda@gmail.com>
3094
3095         * stepmake/stepmake/generic-targets.make (cvs-clean): also remove out-www dirs.
3096
3097 2006-05-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
3098
3099         * stepmake/aclocal.m4: run python-config for crosscompiling
3100         flags. 
3101
3102         * scripts/lilypond-book.py (Lilypond_file_snippet.my_system): add
3103         -f png for HTML, TEXINFO formats. 
3104
3105         * input/tutorial/lbook-html-test.html: new file.
3106
3107         * lily/include/tie-formatting-problem.hh (class
3108         Tie_formatting_problem): index Chord_outline_map by Tuple2 for
3109         [column, direction]. This fixes laissez vibrer ties.
3110  
3111         * flower/include/tuple.hh (struct Tuple2): new file.
3112
3113         * mf/GNUmakefile (FC_FIND): new function. Find ncsb using
3114         $(FCMATCH), only if $(NCSB_DIR) not set. 
3115
3116         * configure.in (LINK_GXX_STATICALLY): only warn if $NCSB_DIR set.
3117
3118         * config.make.in (DOCUMENTATION): set FCMATCH.  
3119
3120         * autogen.sh (srcdir): don't set --with-ncsb-dir. 
3121
3122 2006-05-03  Graham Percival  <gpermus@gmail.com>
3123
3124         * Documentation/user/ various: final round of reorg.
3125
3126         * Documentation/user/instrument-notation.itely: some more
3127         fixes from Eduardo, thanks!
3128
3129 2006-05-02  Han-Wen Nienhuys  <hanwen@lilypond.org>
3130
3131         * VERSION (PACKAGE_NAME): release 2.9.3
3132
3133         * flower/file-path.cc (is_dir): canonicalize file name before stat'ing.
3134
3135         * lily/relocate.cc (framework_relocation): remove old relocation stuff.
3136
3137 2006-05-01  Mats Bengtsson  <mabe@s3.kth.se>
3138
3139         * scm/define-grob-properties.scm (all-user-grob-properties):
3140         Correct typo, thanks to Eduardo.
3141
3142 2006-05-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
3143
3144         * scripts/GNUmakefile (SEXECUTABLES): remove lilypond-ps2png.scm
3145
3146         * buildscripts/lilypond-words.py (F): indent fix.
3147
3148         * input/regression/tie-arpeggio-collision.ly: new file.
3149
3150         * lily/tie-formatting-problem.cc (set_column_chord_outline): new
3151         function: store outlines per column rank.
3152
3153         * lily/include/tie-configuration.hh (class Tie_configuration): add
3154         column_ranks_ to specification and configuration, to distinguish
3155         between ties for different heads in arpegiated chords.
3156
3157         * lily/relocate.cc (framework_relocation): use INSTALLER_PREFIX.
3158
3159         * *.py: more 4 space indents.
3160
3161         * autogen.sh (conf_flags): set sensible default for with-ncsb-dir
3162
3163 2006-05-01  Joe Neeman  <joeneeman@gmail.com>
3164
3165         * scm/lily-library.scm: Fix guile 1.6 compatibility in inf? and nan?
3166
3167 2006-05-01  Han-Wen Nienhuys  <hanwen@lilypond.org>
3168
3169         * buildscripts/pfx2ttf.fontforge (err): create OTF files.
3170
3171         * scripts/abc2ly.py (dump_score): indent of 4 for python code. 
3172
3173         * configure.in (LINK_GXX_STATICALLY): remove locate() call.
3174
3175 2006-04-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3176
3177         * python/convertrules.py (conv): indent 4 for python files.
3178
3179 2006-04-29  Mats Bengtsson  <mabe@s3.kth.se>
3180
3181         * Documentation/user/changing-defaults.itely (Creating contexts):
3182         Clarify \new semantics.
3183
3184 2006-04-28  Graham Percival  <gpermus@gmail.com>
3185
3186         * Documentation/user/ various: major new sections in the
3187         Learning manual, slight reorg elsewhere.
3188
3189 2006-04-27  Han-Wen Nienhuys  <hanwen@lilypond.org>
3190
3191         * mf/GNUmakefile (MFTRACE_FLAGS): add $(outdir) to $(ENCODING_FILE) 
3192
3193         * scm/framework-ps.scm (output-framework): remove PageMedia
3194
3195 2006-04-27  Graham Percival  <gpermus@gmail.com>
3196
3197         * Documentation/user/ tweaks.itely, working.itely: new
3198         files, being more advanced "learning manual" chapters.
3199
3200         * Documentation/user/ tutorial, putting, lilypond: reorg.
3201
3202 2006-04-26  Graham Percival  <gpermus@gmail.com>
3203
3204         * input/regression/lyric-combine-polyphonic.ly: fixed test
3205         (no more "can't find context `one'" error).
3206
3207 2006-04-25  Joe Neeman <joeneeman@gmail.com>
3208
3209         * lily/stem-tremolo.cc (print): fix whole note tremolo placement
3210
3211         * input/regression/stem-tremolo.ly: add 2 more whole note examples
3212         
3213 2006-04-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3214
3215         * lily/relocate.cc (read_relocation_dir): new function.
3216
3217 2006-04-26  Graham Percival  <gpermus@gmail.com>
3218
3219         * Documentation/user/instrument-notation.itely: a few more fixes
3220         from Eduardo, thanks!
3221
3222         * Documentation/user/README.txt: new file; contains info on
3223         style that used to be in lilypond.tely.
3224
3225         * Documentation/user/ various: first round of doc reorg.
3226
3227         * Documentation/user/baer-flat-bw.png: remove alpha bit from
3228         graphic; this probably causes problems on some pdf
3229         viewers, notably Adobe Acrobat.
3230
3231 2006-04-24  Graham Percival  <gpermus@gmail.com>
3232
3233         * Documentation/user/instrument-notation.itely: many alterations
3234         to Vocal music, from Eduardo Viera.
3235
3236 2006-04-23  Graham Percival  <gpermus@gmail.com>
3237
3238         * Documentation/user/instrument-notation.itely: fix \new
3239         instead of \context problem.
3240
3241 2006-04-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3242
3243         * lily/relocate.cc (expand_environment_variables): new function.
3244         (read_line): id.
3245         (read_relocation_file): id.
3246
3247         * scm/stencil.scm (eps-file->stencil): fix EPS PS embedding code 
3248
3249 2006-04-21  Erlend Aasland  <erlenda@gmail.com>
3250
3251         * ly/engraver-init.ly: remove old comments from TabVoice
3252
3253 2006-04-20  Graham Percival  <gpermus@gmail.com>
3254
3255         * Documentation/user/instrument-notation.itely: added Erlend's
3256         latest doc patch, thanks!
3257
3258 2006-04-19  Erlend Aasland <erlenda@gmail.com>
3259
3260         * lily/include/slur.hh:
3261         * lily/slur.cc:
3262         * lily/phrasing-slur-engraver.cc:
3263         * lily/slur-engraver.cc: Fix 'cut & paste' code by merging
3264         acknowledge_extra_object () from Phrasing_slur_engraver:: and
3265         Slur_engraver:: and putting it in
3266         Slur::auxiliary_acknowledge_extra_object ().
3267
3268         * ps/music-drawing-routines.ps (draw_dashed_slur): fix another bug
3269
3270         * lily/note-collision.cc: fix a comment
3271
3272 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
3273
3274         * stepmake/bin/add-html-footer.py: fix footer position in
3275         generated html files: before </body> and </html> tags.
3276
3277 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
3278
3279         * scripts/GNUmakefile: revert last "fix", which rather broke make.
3280         Earlier successive `make' commands finally compiled ok.
3281
3282         * Documentation/topdocs/INSTALL.texi: require mftrace 1.1.19.
3283
3284 2006-04-18  Erlend Aasland <erlenda@gmail.com>
3285
3286         * lily/include/stem-tremolo.hh:
3287         * lily/stem-tremolo.cc: move rotated_box () to Lookup:: and update
3288         callers.
3289
3290         * lily/lookup.cc:
3291         * lily/include/lookup.hh: add rotated_box ()
3292
3293 2006-04-18  Heikki Junes  <hjunes@cc.hut.fi>
3294
3295         * scripts/GNUmakefile: bugfix: run help2man only after scripts have 
3296         been generated. Fixes "can't get `--help'" bug after make clean.
3297
3298         * THANKS: alphabetize contributors.
3299
3300 2006-04-17  Graham Percival  <gpermus@gmail.com>
3301
3302         * Documentation/user/instrument-notation.itely: added Erlend's
3303         tabs and banjo doc patch.  Thanks!
3304
3305 2006-04-17  Erlend Aasland  <erlenda@gmail.com>
3306
3307         * scm/define-grobs.scm: fix stem-attachment for tablature note heads.
3308
3309         * ps/music-drawing-routines.ps (draw_dashed_line): fix dash pattern bug.
3310
3311         * scm/output-lib.scm: add some more predefined string tunings.
3312
3313         * Documentation/user/instrument-notation.itely: and doc them.
3314
3315 2006-04-16  Jürgen Reuter  <reuter@ipd.uka.de>
3316
3317         * ly/engraver.ly: Remove obsolete comments.
3318
3319         * ly/gregorian-init.ly: Define default layout block.
3320
3321         * input/puer-fragment.ly: Updated and extended.
3322
3323 2006-04-15  Jan Nieuwenhuizen  <janneke@gnu.org>
3324
3325         * lily/lily-parser-scheme.cc: Use them to fix --output=DIR/BASE
3326         pdf conversion behaviour.
3327
3328         * flower/file-name.cc (dir_name)
3329         (get_working_directory): Move from relocate.cc.
3330
3331         * lily/relocate.cc (setup_paths): Remove rogue stat calls.
3332         
3333         * lily/relocate.cc: Encapsulate sys/stat.h in
3334         HAVE_STAT_H.
3335
3336 2006-04-14  Graham Percival  <gpermus@gmail.com>
3337
3338         * Documentation/user/ various: small updates from Cameron
3339         and Juergen, thanks!
3340
3341         * Documentation/user/ various: small updates of my own.
3342
3343         * THANKS: 2.7 -> 2.8.
3344
3345 2006-04-11  Graham Percival  <gpermus@gmail.com>
3346
3347         * scm/define-context-properties.scm: typo.
3348
3349         * Documentation/user/ : many more small updates.
3350
3351 2006-04-13  Jürgen Reuter  <reuter@ipd.uka.de>
3352
3353         * scm/define-music-types.scm: disposed "docme".
3354
3355 2006-04-11  Erlend Aasland  <erlenda@gmail.com>
3356
3357         * lily/hairpin.cc: make niente circles a bit smaller.
3358
3359 2006-04-10  Erlend Aasland  <erlenda@gmail.com>
3360
3361         * mf/GNUmakefile: remove redundant mftrace check. Also remove
3362         get-pfa and get-*-fonts targets.
3363
3364 2006-04-10  Graham Percival  <gpermus@gmail.com>
3365
3366         * THANKS, Documentation/user/ basic-notation, advanced-notation,
3367         music-glossary, programming-interface: more minor fixes
3368         from mailist.
3369
3370         * scm/define-grob-properties.scm: clarified direction, thanks Mats!
3371
3372         * scm/define-context-properties.scm: another old \property update.
3373         This time tested for compiling!
3374
3375 2006-04-10  Erlend Aasland  <erlenda@gmail.com>
3376
3377         * mf/GNUmakefile: fix for mftrace version >= 1.2.0
3378
3379 2006-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
3380
3381         * scm/define-context-properties.scm (all-user-translation-properties): 
3382         * Documentation/user/global.itely (Page formatting): Compile fix.
3383
3384 2006-04-09  Mats Bengtsson  <mabe@s3.kth.se>
3385
3386         * Documentation/user/advanced-notation.itely (Polymetric
3387         notation): Update the example to use the "+" symbol and add link
3388         to input/test/compound-time.ly.
3389
3390 2006-04-08  Graham Percival  <gpermus@gmail.com>
3391
3392         * scm/define-grob-properties.scm: clarify docs for #'direction.
3393
3394         * scm/define-context-properties.scm: update old \property override.
3395
3396         * Documentation/user/ advanced-notation, global, lilypond-book:
3397         more minor doc updates.
3398
3399 2006-04-07  Han-Wen Nienhuys  <hanwen@lilypond.org>
3400
3401         * lily/parser.yy (Generic_prefix_music_scm): append lists, not objects.
3402
3403         * scm/backend-library.scm (search-gs): oops.
3404
3405 2006-04-06  Han-Wen Nienhuys  <hanwen@lilypond.org>
3406
3407         * scripts/lilypond-book.py (output): use base, not filename for href.
3408
3409         * scm/backend-library.scm: only look for gs.
3410
3411         * scripts/lilypond-book.py (output): fix printfilename.
3412
3413         * lily/parser.yy (music_function_musicless_prefix): fold together
3414         definitions of signature (SCM*) (Music|post_event|chord_body_element)
3415
3416         * lily/slur.cc (print): only set font-size if not set yet.
3417
3418         * lily/slur-configuration.cc (add_score): improved layout of debug
3419         scoring output.
3420
3421 2006-04-05  David Feuer  <David.Feuer@gmail.com>
3422
3423         * music-drawing-routines.ps (draw_round_box): removed testing artifact.
3424         (draw_circle): Hopefully fixed regression.
3425         Improved documentation for several procedures.
3426         
3427 2006-03-04  Werner Lemberg  <wl@gnu.org>
3428
3429         * ly/engraver-init.ly (\Score): Add beam-event to quotedEventTypes.
3430
3431 2006-04-05  Han-Wen Nienhuys  <hanwen@lilypond.org>
3432
3433         * scripts/musicxml2ly.py (bindir): add dynamic
3434         relocation. 
3435
3436 2006-04-04  Graham Percival  <gpermus@gmail.com>
3437
3438         * Documentation/user/ basic-notation, advanced-notation, putting,
3439         instrument-notation, invoking, lilypond, THANKS: another ream of small
3440         fixes from the Doc Helpers.
3441
3442 2006-04-03  David Feuer  <David.Feuer@gmail.com>
3443
3444         * music-drawing-routines.ps: remove superfluous gsave/grestore pairs.
3445
3446         * lilyponddefs.ps (set-ps-scale-to-lily-scale): Fixed code duplication.
3447
3448         * Cleaned up interfaces between PostScript and Scheme, and moved
3449         computations from PostScript to Scheme:
3450
3451         * music-drawing-routines.ps
3452         (*SF, stroke_and_fill): new procedures.  Replaced stroke and fill
3453         with stroke_and_fill throughout.
3454         (euclidean_length, print_letter, draw_box): Deleted unused
3455         procedures.  If someone needs draw_box, implement it using
3456         draw_round_box; don't duplicate code.
3457         (print_glyphs, draw_round_box, draw_polygon, draw_repeat_slash):
3458         Refactored/cleaned up interfaces.
3459         (mark_URI): Moved.
3460
3461         * output-ps.scm: reordered arguments to PostScript functions to
3462         match new interfaces
3463         (glyph-string): Rewrote glyph-string.
3464         (grob-cause): Replaced string-append with format.
3465         (repeat-slash): Rewrote to do computation here.
3466         (round-filled-box): Rewrote to do computation here.
3467
3468 2006-04-04  Erlend Aasland  <erlenda@gmail.com>
3469
3470         * stepmake/stepmake/generic-targets.make: add cvs-clean target
3471
3472         * stepmake/stepmake/toplevel- targets.make: print help info about
3473         cvs-clean
3474
3475 2006-04-03  Erlend Aasland  <erlenda@gmail.com>
3476
3477         * input/regression/hairpin-circled.ly: new file
3478
3479 2006-04-03  Erlend Aasland  <erlenda@gmail.com>
3480
3481         * lily/hairpin.cc (print): add support for circled tip
3482
3483         * scm/define-grob-properties.scm: add circled-tip parameter
3484
3485         * scm/define-grobs.scm: init circled-tip to false
3486         
3487 2006-04-03  Han-Wen Nienhuys  <hanwen@lilypond.org>
3488
3489         * scm/music-functions.scm (quote-substitute): set
3490         iterators-ctor. 
3491
3492 2006-03-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
3493
3494         * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): set
3495         BSTINPUTS. 
3496
3497         * Documentation/topdocs/AUTHORS.texi (Top): add David Feuer.
3498
3499         * scm/output-ps.scm (glyph-string): revert cid selectfont.
3500
3501 2006-03-31  David Feuer  <david.feuer@gmail.com>
3502         
3503         * scm/framework-ps.scm:
3504         
3505         * scm/output-ps.scm: glyph-string now produces smaller, more
3506         readable, and probably faster PostScript.  Several findfont
3507         scalefont setfont instances changed to selectfont
3508         Hacked-up string-appends changed to formats.
3509
3510         * ps/music-drawing-routines.ps: add print_letter, print_glyphs.
3511         
3512 2006-03-30  Graham Percival  <gpermus@gmail.com>
3513
3514         * scm/lily-library.scm: make "no version" warning message more polite.
3515
3516         * lily/music.cc: add double quotes to failed octave check.
3517
3518         * Documentation/user/ advanced-notation, changing-defaults,
3519         instrument-notation, invoking, music-glossary: whole bunch of minor
3520         fixes from mailist.
3521
3522 2006-03-31  Han-Wen Nienhuys  <hanwen@lilypond.org>
3523
3524         * Documentation/bibliography/GNUmakefile ($(outdir)/%.html): use
3525         $(buildscriptdir) iso. depth.
3526
3527         * VERSION (PACKAGE_NAME): release 2.9.1
3528
3529 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
3530
3531         * lily/pango-font.cc (pango_item_string_stencil): more robustness.
3532
3533         * VERSION (PATCH_LEVEL): bump version number.
3534
3535         * flower/include/guile-compatibility.hh (scm_from_uint32): add
3536         scm_from_uint32 ()
3537
3538         * lily/pango-font.cc (pango_item_string_stencil): use
3539         scm_from_uint32 ()
3540
3541         * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
3542         $(outdir)/emmentaler-%.svg): remove canary.
3543
3544         * lily/pango-font.cc (pango_item_string_stencil): only use uXXX
3545         glyphnames if we have a ttf font.
3546
3547 2006-03-30  Mats Bengtsson  <mabe@s3.kth.se>
3548
3549         * Documentation/user/advanced-notation.itely (Font selection):
3550         Corrected reference to the font-family-override.ly example.
3551
3552 2006-03-30  Joe Neeman  <joeneeman@gmail.com>
3553         
3554         * lily/chord-tremolo-engraver.cc (acknowledge_stem): set the
3555         stem-tremolo object in the stem (or else the stem might not be
3556         long enough).
3557
3558 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
3559
3560         * lily/ttf.cc (print_trailer): only print existing glyphs.
3561
3562 2006-03-30  Joe Neeman  <joeneeman@gmail.com>
3563
3564         * lily/stem-tremolo.cc (print): for whole notes (and breves, etc.)
3565         position the tremolo based on the position of the notehead.
3566
3567         * input/regression/stem-tremolo.ly: add example of unbeamed eighth
3568         notes and update the texidoc line with the new positioning rules.
3569         
3570 2006-03-30  Han-Wen Nienhuys  <hanwen@lilypond.org>
3571
3572         * lily/ttf.cc (print_trailer): don't always use uXXX glyphname.
3573
3574         * scripts/lilypond-book.py (Module): set default for linewidth if
3575         preamble not found.
3576
3577 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
3578
3579         * VERSION (PACKAGE_NAME): release 2.9.0.
3580
3581         * input/regression/stem-tremolo-position.ly: new file.
3582
3583         * lily/stem-tremolo.cc: remove Stem_tremolo::dim_callback
3584
3585 2006-03-28  Joe Neeman  <joeneeman@gmail.com>
3586
3587         * lily/stem-tremolo.cc (print): position
3588         the tremolo depending only on the end of the stem
3589         and not on the notehead
3590         (raw_stencil): center, on the middle staff line, the
3591         flag that is closest to the end of the stem (previously
3592         the bottom flag)
3593         (calc_width): add this callback to shorten a tremolo when
3594         it is beamed or it is stemup with a flag
3595         (style): add this callback to make a tremolo rectangular when
3596         it is beamed or it is stemup with a flag
3597         (rotated_box): this is like Lookup::beam but makes a rotated
3598         rectangle instead of a parallelogram
3599
3600         * lily/stem.cc (calc_stem_info): make sure the stem
3601         is long enough to fit the tremolo
3602         (calc-length): reduce the length of tremolo stems since the
3603         tremolo code is now capable of better positioning
3604
3605         * scm/define-grobs.scm: make calc_width the default beam-width
3606         callback for stem-tremolo and add the style callback
3607                 
3608 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
3609
3610         * lily/tuplet-bracket.cc (calc_control_points): handle suicide
3611         case. 
3612
3613 2006-03-29  Han-Wen Nienhuys  <hanwen@lilypond.org>
3614
3615         * lily/ttf.cc (make_index_to_charcode_map): restore old
3616         cmap. 
3617
3618 2006-03-28  Werner Lemberg  <wl@gnu.org>
3619
3620         * lily/pango-font.cc (get_unicode_name): Fix `uXXXXX' glyph names.
3621
3622 2006-03-28  Graham Percival  <gpermus@gmail.com>
3623
3624         * THANKS: update for 2.9, add section for Documentation helpers.
3625
3626         * Documentation/topdocs/NEWS.tely: compile fix.
3627
3628         * Documentation/user/ basic-notation, global, advanced-notation,
3629         examples.itely: minor fixes from mailist.
3630
3631 2006-03-28  Han-Wen Nienhuys  <hanwen@lilypond.org>
3632
3633         * mf/feta-bolletjes.mf: match width of solfa notes with normal
3634         note heads. 
3635
3636         * lily/ttf.cc (print_trailer): use it.
3637
3638         * lily/pango-font.cc (get_unicode_name): new function.
3639
3640         * lily/ttf.cc (make_index_to_charcode_map): move function from
3641         open-type-font.cc
3642         (print_trailer): substitute uniXXXX name if applicable. 
3643
3644         * lily/pango-font.cc (get_index_to_charcode_map): new function.
3645         (pango_item_string_stencil): use it to generate uniXXXX names.
3646
3647         * mf/feta-bolletjes.mf (overdone_heads): add small style (ugly)
3648         note heads, for uniform widths in shape note output.
3649         (overdone_heads): hmm. remove them again.
3650
3651         * scripts/lilypond-book.py (output): add links to filenames.
3652
3653         * Documentation/topdocs/INSTALL.texi (Top): update versions.
3654
3655         * lily/note-collision.cc (get_clash_groups): only consider when
3656         Note_column::dir <> CENTER. 
3657
3658         * scripts/lilypond-book.py (get_option_parser): init output_name
3659         to ''. 
3660
3661 2006-03-24  Graham Percival  <gpermus@gmail.com>
3662
3663         * Documentation/topdocs/NEWS.tely: add @end itemize
3664
3665         * Documentation/user/ global, advanced-notation: minor
3666         stuff from mailist.
3667
3668 2006-03-23  Graham Percival  <gpermus@gmail.com>
3669
3670         * Documentation/user/ lilypond.tely, music-glossary,
3671         preface: housekeeping; 2005->2006, remove "notes for 2.6"
3672
3673 2006-03-23  Han-Wen Nienhuys  <hanwen@lilypond.org>
3674
3675         * mf/GNUmakefile: don't install .enc files.
3676
3677         * Documentation/topdocs/NEWS.tely: clear for 2.9 cycle.
3678
3679         * VERSION (PATCH_LEVEL): bump to 2.9.0
3680
3681 2006-03-22  Graham Percival  <gpermus@gmail.com>
3682
3683         * Documentation/user/advanced-notation.itely: minor fixes
3684         from mailist.
3685
3686 2006-03-22  Han-Wen Nienhuys  <hanwen@lilypond.org>
3687
3688         * Documentation/topdocs/AUTHORS.texi (Top): add Joe Neeman.
3689
3690         * branch lilypond_2_8
3691
3692 2006-03-22  Han-Wen Nienhuys  <lilydev@localhost.localdomain>
3693
3694         * scripts/lilypond-book.py (samefile): new function, for windoze
3695         compatibility.
3696
3697 2006-03-21  Graham Percival  <gpermus@gmail.com>
3698
3699         * ly/engraver-init.ly: add info about StaffGroup.
3700
3701 2006-03-21  Han-Wen Nienhuys  <lilydev@localhost.localdomain>
3702
3703         * input/regression/stem-direction-context.ly: idem.
3704
3705         * Documentation/topdocs/NEWS.tely (Top): fix interpolation example.
3706
3707         * THANKS: add Mats.
3708
3709         * input/regression/page-layout-twopass.ly: comment out \markup so
3710         tweak-file is left.
3711
3712         * lily/instrument-name-engraver.cc (finalize): add to instrument
3713         name global System. This also fixes chopped instrument names, but
3714         doesn't crash when there are slurs/beams.
3715
3716         * lily/slur-configuration.cc (add_score): disallow negative slur
3717         scores.
3718         
3719 2006-03-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3720
3721         * scm/framework-ps.scm (dump-stencil-as-EPS): remove debugging code.
3722
3723         * lily/instrument-name-engraver.cc (process_music): kludge: add
3724         InstrumentName spanner to axis group of left bound. Fixes chopped
3725         off instrument names in EPS images.
3726
3727         * input/regression/lyric-hyphen-retain.ly: elaborate explanation.
3728
3729         * scripts/abc2ly.py (option_parser): update to 2.7.40
3730
3731 2006-03-20  Graham Percival  <gpermus@gmail.com>
3732
3733         * THANKS: move small doc contributors to SUGGESTIONS.
3734
3735         * Documentation/user/ basic-notation, advanced-notation,
3736         global: small changes from mailist.
3737
3738 2006-03-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3739
3740         * Documentation/user/advanced-notation.itely (Text marks): update
3741         for new rehearsalMarkAlignSymbol convention.
3742
3743         * VERSION (PATCH_LEVEL): bump version.
3744
3745         * input/test/instrument-name-align.ly: new file.
3746
3747         * scm/define-markup-commands.scm (hcenter-in): add hcenter-in.
3748
3749         * input/test/instrument-name-align.ly: new file. Document how to
3750         align instrument names.
3751
3752         * lily/mark-engraver.cc: remove properties.
3753
3754         * scm/define-context-properties.scm
3755         (all-user-translation-properties): remove align symbol properties
3756         for barnumber/reh. mark.
3757
3758         * lily/break-align-interface.cc (self_align_callback): new
3759         interface, new function. Look at complete alignment. This handles
3760         tunable break alignments in case break-align-symbols are missing.
3761
3762         * lily/bar-number-engraver.cc (acknowledge_break_alignment): new function
3763
3764         * lily/mark-engraver.cc (acknowledge_break_alignment): new function.
3765
3766         * python/convertrules.py (conv): mark/bar number alignment rule.
3767
3768         * lily/break-align-interface.cc (calc_positioning_done): also
3769         store offset from last visible break-alignment to its
3770         neighbor. This makes alignment on non-visible objects more reliable.
3771
3772         * po/lilypond.pot (Module): ran po-replace.
3773
3774         * input/regression/tie-single-manual.ly (Module): new file.
3775
3776         * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
3777         look at has_manual_position_.
3778         (from_ties): set has_manual_position_ if tie has staff-position set.
3779
3780         * lily/tuplet-bracket.cc (calc_positions): idem.
3781
3782         * lily/tuplet-number.cc (print): don't print tupletnumber if it
3783         doesn't span time.
3784
3785 2006-03-19  Nicolas Sceaux  <nicolas.sceaux@free.fr>
3786
3787         * scm/define-markup-commands.scm (smallCaps): new markup command
3788         for turning a text to small caps using smaller font size and upper
3789         casing.
3790
3791 2006-03-17  Graham Percival  <gpermus@gmail.com>
3792
3793         * Documentation/user/ examples, instrument-notation,
3794         advnaced-notation: minor fixes from mailist.
3795
3796 2006-03-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3797
3798         * Documentation/user/tutorial.itely (First steps): change example
3799         to verbatim.  
3800
3801 2006-03-17  Graham Percival  <gpermus@gmail.com>
3802
3803         * Documentation/user/ examples, advanced: minor changes from mailist.
3804
3805         * THANKS: add Geoff Horton, for documentation stuff.
3806
3807 2006-03-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3808
3809         * python/lilylib.py (system): revert have_select kludge.
3810
3811         * Documentation/user/tutorial.itely (Commenting input files):
3812         update version numbers in doc. 
3813
3814         * scm/define-grob-interfaces.scm (multi-measure-interface): add
3815         bound-padding to multi-measure-interface
3816
3817 2006-03-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3818
3819         * input/test/engraver-example.ily: update version number.
3820
3821         * VERSION (PACKAGE_NAME): release 2.7.39
3822
3823         * lily/note-spacing.cc (get_spacing): heighten threshold where
3824         accidentals/arpeggios influence previous spacing fully.
3825
3826         * lily/rest.cc (y_offset_callback): only use direction if
3827         staff-position wasn't set before.
3828
3829         * lily/bar-number-engraver.cc: add support for
3830         barNumberAlignSymbol. 
3831         add ADD_ACKNOWLEDGER() call for break_aligned. Fixes bar-number-breathe
3832
3833         * lily/pointer-group-interface.cc (set_ordered): new function. 
3834         (add_unordered_grob): new function.
3835
3836         * lily/grob-array.cc (Grob_array): grob-arrays are always assumed
3837         to ordered, unless the opposite has been proved.  This fixes
3838         random reordering of large object groups across linebreaks,
3839         eg. beams.
3840
3841         * lily/main.cc (do_chroot_jail): printf format fix.
3842
3843         * lily/tie-formatting-problem.cc (generate_configuration):
3844         multiply y-shift for dot with direction.
3845  
3846         * scm/define-markup-commands.scm (note-by-number): put (magstep
3847         size) in y-attach too.
3848
3849         * Documentation/topdocs/NEWS.tely (Top): show override.
3850
3851         * scm/define-grobs.scm (all-grob-descriptions): reinstate neutral
3852         direction for stems.
3853         
3854 2006-03-15  Graham Percival  <gpermus@gmail.com>
3855
3856         * Documentation/user/ changing-defaults, global: minor
3857         fixes from mailist.
3858
3859 2006-03-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3860
3861         * lily/lexer.ll (Lily_lexer): bump required version to 2.7.38
3862
3863         * lily/spacing-spanner.cc (musical_column_spacing): crude fix for
3864         breakable items after uniformly stretched notes.
3865
3866         * lily/tie-formatting-problem.cc (set_chord_outline): initialize
3867         outline with outer edge of note heads. This prevents infinity
3868         problems with tied whole notes.
3869
3870         * scripts/lilypond-book.py (do_file): use os.popen
3871
3872         * python/convertrules.py (conv): add rule for Stem #'beamed-*
3873
3874 2006-03-14 Erik Sandberg  <mandolaerik@gmail.com>
3875
3876         * Documentation/user/invoking.itely: Add ragged-right to bug report
3877         guidelines.
3878
3879 2006-03-14  Graham Percival  <gpermus@gmail.com>
3880
3881         * Documentation/user/global.itely: small fix from mailist.
3882
3883 2006-03-14  Mats Bengtsson  <mabe@s3.kth.se>
3884
3885         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use the
3886         file descriptor returned by tempfile.mkstemp() when writing
3887         to tmpfile and closing it. Solves problem with unlink(tmpfile)
3888         on mingw.
3889
3890 2006-03-14  Jan Nieuwenhuizen  <janneke@gnu.org>
3891
3892         * po/fi.po: newline bugfix.
3893
3894 2006-03-12  Jan Nieuwenhuizen  <janneke@gnu.org>
3895
3896         * scm/paper.scm (paper-alist): Rounding fixes.
3897
3898 2006-03-13  Graham Percival  <gpermus@gmail.com>
3899
3900         * Documentation/user/ changing-defaults, instrument-notation,
3901         tutorial: small fixes from mailist, mostly from Mats.  Thanks!
3902
3903 2006-03-13 Heikki Junes  <hjunes@cc.hut.fi>
3904
3905         * po/fi.po: update.
3906
3907 2006-03-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3908
3909         * stepmake/bin/add-html-footer.py (mail_address_url): don't add
3910         mailto: to http:// 
3911
3912         * python/lilylib.py (print_environment): move ps_page_count to
3913         lilypond-book.py
3914
3915 2006-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3916
3917         * Documentation/user/music-glossary.tely (G clef): fix clef alignments.
3918
3919         * scm/framework-ps.scm (embed-document): new function. Use to
3920         embed PFA files.
3921
3922         * ly/engraver-init.ly: init rehearsalMarkAlignSymbol to staff-bar.
3923
3924 2006-03-12  Mats Bengtsson  <mabe@s3.kth.se>
3925
3926         * Documentation/user/instrument-notation.itely (Setting simple
3927         songs): Added \book{...} around the full example, so the separate
3928         markups are included in the printed example. 
3929
3930 2006-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3931
3932         * scripts/lilypond-book.py (get_latex_textwidth): explicitly close
3933         tmphandle.
3934
3935         * python/lilylib.py (system): rewrite system() using
3936         subprocess. Remove >& redirection trickery.
3937
3938 2006-03-11  Graham Percival  <gpermus@gmail.com>
3939
3940         * Documentation/user/ changing-defaults, global, scheme-tutorial,
3941         notation-appendices.itely: minor fixes from mailist.
3942
3943 2006-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3944
3945         * Documentation/user/GNUmakefile ($(outdir)/lilypond.html):
3946         unsplit man also needs images.
3947
3948         * tex/texinfo.tex (sectionheading, q.v.): relax after \char'15.
3949
3950         * VERSION (PACKAGE_NAME): 2.7.38 released.
3951
3952 2006-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3953
3954         * scripts/lilypond-book.py (get_latex_textwidth): look for latex
3955         log in output dir.
3956
3957 2006-03-08  Johannes Schindelin  <Johannes.Schindelin@gmx.de>
3958
3959         * lily/audio-column.cc, lily/score-performer.cc: MIDI output now
3960         respects the Score.skipTypesetting property.
3961         
3962 2006-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3963
3964         * scm/framework-ps.scm (ps-embed-cff): no Setup section in
3965         Prolog. No %%EOF after CFF file.
3966
3967 2006-03-08  Joe Neeman  <joeneeman@gmail.com>
3968         
3969         * lily/constrained-breaking.cc (get_max_systems): used to return a
3970         much too big value
3971         (combine_demerits): use pointers to reduce copying data
3972         (calc_subproblem): idem
3973         (get_page_penalty): add page turn penalties
3974         
3975 2006-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3976
3977         * Documentation/user/invoking.itely (Invoking lilypond): better
3978         explanation of -e usage.
3979
3980         * lily/main.cc (main_with_guile): don't append to
3981         init_scheme_code_string
3982
3983         * tex/texinfo.tex (sectionheading, q.v.): don't center @image.
3984
3985         * Documentation/user/invoking.itely: add note about MacOS X scripts.
3986
3987         * scripts/convert-ly.py (do_options): don't print help for
3988         --show-rules rule.
3989
3990         * tex/texinfo.tex: patch texinfo.tex to leave single quotes in
3991         @code and @example. Update from texinfo.tex from CVS.
3992
3993 2006-03-08  Graham Percival  <gpermus@gmail.com>
3994
3995         * Documentation/user/scheme-tutorial.itely: clarifies distances
3996         measured in staff-spaces.
3997
3998 2006-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
3999
4000         * lily/slur.cc (outside_slur_callback): only calculate offsets if
4001         consider[k] is true.
4002
4003         * scm/output-ps.scm (grob-cause): put numbers to ~$ (Thanks Johannes!)
4004
4005         * lily/spacing-basic.cc (standard_breakable_column_spacing): also
4006         consider columns that have originals.  Unifies spacing for mm
4007         rests around line breaks.
4008
4009         * lily/multi-measure-rest.cc (set_spacing_rods): read bound-padding.
4010         (set_text_rods): idem.
4011         (calculate_spacing_rods): new function: share code between
4012         set_text_rods and set_spacing_rods.
4013         (set_text_rods): take extents of bounds into account.  
4014
4015 2006-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4016
4017         * Documentation/user/basic-notation.itely (Writing music in
4018         parallel): don't use relative.
4019
4020 2006-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4021
4022         * ly/music-functions-init.ly (Module): add shiftDurations
4023
4024         * ly/drumpitch-init.ly (drumPitchNames): add tamtam.
4025
4026         * scm/paper.scm (paper-alist): no decimals for Ax paper sizes. 
4027
4028         * ly/engraver-init.ly: init vocalName to nil.
4029
4030 2006-03-05 Erik Sandberg  <mandolaerik@gmail.com>
4031
4032         * scm/music-functions.scm (music->make-music): bugfix,
4033         KeyChangeEvents are now handled correctly.
4034
4035         * scripts/lilypond-book.py: Add --debug option.
4036
4037 2006-03-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4038
4039         * python/lilylib.py: add tempfile.
4040
4041 2006-03-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4042
4043         * VERSION (PACKAGE_NAME): release 2.7.37
4044
4045         * python/lilylib.py (ps_page_count): remove make_ps_images().
4046         (ps_page_count): remove mkdir_p
4047         (system): remove cleanup_temp.
4048         (exit): remove lilypond_version_(check)
4049         (error_log): remove pseudo_filter_p
4050         remove read_pipe
4051         remove cp_to_dir
4052         remove identify
4053
4054         * scripts/lilypond-book.py (Lilypond_snippet.compose_ly): don't
4055         use __main__
4056
4057         * lily/accidental-engraver.cc (make_standard_accidental): only add
4058         support for side-axis is X_AXIS. Fixes text-spacing-accidental.ly
4059
4060         * mf/GNUmakefile ($(outdir)/emmentaler-%.otf
4061         $(outdir)/emmentaler-%.svg): rewrite without functions; too many
4062         Make incompatibilities.
4063
4064         * scm/output-ps.scm (grob-cause): replace backslashes by /
4065         (glyph-string): use ~$ for less decimals for glyph-string and grob-cause.
4066
4067 2006-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
4068
4069         * cygwin/GNUmakefile: Install fixes.
4070
4071         * scripts/GNUmakefile (SEXECUTABLES): Install fix: remove mup2ly.
4072
4073         * lily/note-head.cc (head::get_balltype): Compile fix.
4074
4075         * flower/file-name.cc (dos_to_posix): Flower string fix.
4076
4077 2006-03-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4078
4079         * python/lilylib.py: pychecker cleanups.
4080
4081         * scripts/lilypond-book.py
4082         (Lilypond_snippet.output_print_filename): pychecker cleanups
4083
4084         * scripts/midi2ly.py (Key.dump): pychecker cleanups.
4085
4086         * python/lilylib.py (underscore): remove identify() , warranty()
4087
4088         * ps/music-drawing-routines.ps: change Border routine for GSView
4089         compatibility.
4090
4091         * lily/stem.cc (height): use quantize-positions.  This triggers
4092         set_stem_lengths, so scripts on beamed stems are handled correctly.
4093
4094         * lily/side-position-interface.cc (aligned_side): check if edges
4095         of script are inside staff. Fixes accent of edge of the staff.
4096
4097         * input/regression/staccato-pos.ly: more examples.
4098
4099         * stepmake/aclocal.m4 (depth): fix bashism.
4100
4101         * lily/lyric-combine-music-iterator.cc: move from
4102         new-lyric-combine-iterator.cc
4103         (process): add pending_grace_lyric_ member to delay lyrics on
4104         grace notes.
4105
4106         * lily/system-start-text.cc (print): suicide if we don't have any
4107         elements. Fixes hara kiri'd instrument names.
4108
4109         * scripts/mup2ly.py (Module): remove.
4110
4111 2006-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4112
4113         * Documentation/user/global.itely (A single music expression):
4114         close @lilypond properly
4115
4116         * lily/volta-bracket.cc (modify_edge_height): change from
4117         after_line_breaking_callback. Suicide last bracket if appropriate.
4118  
4119         * python/lilylib.py: strip getopt support
4120
4121         * scripts/etf2ly.py (do_options): use optparse
4122
4123         * scripts/midi2ly.py: optparse, strip lilylib copy. 
4124
4125         * scripts/abc2ly.py (voices): use optparse.
4126
4127         * stepmake/stepmake/generic-vars.make: new function absdir.
4128
4129         * scripts/convert-ly.py (bindir): use optparse, argv[0] relocation.
4130
4131         * scripts/lilypond-book.py (find_file): use global_options for
4132         include path
4133
4134         * scm/ps-to-png.scm (ps-page-count): prevent null characters
4135         entering C code.
4136
4137 2006-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4138
4139         * python/lilylib.py (get_global_option): ughness for extracting
4140         global options from lilylib.
4141         (NonDentedHeadingFormatter.format_heading): move from musicxml2ly
4142
4143         * scripts/lilypond-book.py (get_option_parser): use optparse for
4144         option handling.  Put options in global_options variable.
4145
4146 2006-02-28  Heikki Junes  <hjunes@cc.hut.fi>
4147
4148         * Documentation/index.html.in: clarify.
4149
4150 2006-02-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4151
4152         * scm/layout-page-layout.scm (write-page-breaks): add a
4153         music-system-heights property to the page layout output.
4154
4155         * scm/page.scm (make-page-stencil): take footer into account when
4156         computing the 'space-left page property
4157         (annotate-space-left): take footer into account when annonating
4158         space left.
4159
4160 2006-02-28  Graham Percival  <gpermus@gmail.com>
4161
4162         * Documentation/user/ advanced-notation, global: more (final)
4163         docs for music expressions, removed special fermatas.
4164
4165 2006-02-27  Graham Percival  <gpermus@gmail.com>
4166
4167         * Documentation/user/ basic-notation, global: minor changes
4168         from mailist.
4169
4170 2006-02-26  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4171
4172         * scm/framework-ps.scm:         
4173         * scm/lily-library.scm (nan?, inf?): Move guile 1.6 compatibility
4174         layer for inf? and nan? from framework-ps to lily-library.
4175
4176 2006-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4177
4178         * mf/GNUmakefile ($(outdir)/emmentaler-$(1).otf
4179         $(outdir)/emmentaler-$(1).svg): remove backslashes from define endef.
4180
4181         * buildscripts/substitute-encoding.py (Module): remove file.
4182
4183         * mf/GNUmakefile: more PFA strippage.
4184
4185         * mf/aybabtu.pe.in (i): remove PFAaybabtu generation
4186
4187         * buildscripts/gen-emmentaler-scripts.py (i): remove PFAemmentaler
4188         generation
4189
4190         * scm/framework-ps.scm: remove font name munging.
4191
4192         * Documentation/topdocs/INSTALL.texi (Top): bump GS requirement.
4193
4194 2006-02-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4195
4196         * scm/markup.scm (define-markup-command): change
4197         def-markup-command to define-markup-command
4198
4199         * scm/music-functions.scm (define-music-function): change
4200         def-music-function to define-music-function.
4201
4202         * python/convertrules.py (conv): rules for def-music-function
4203         and def-markup-commands
4204
4205         * Documentation/user/programming-interface.itely,
4206         input/no-notation/display-lily-tests.ly,
4207         input/regression/lily-in-scheme.ly,
4208         input/regression/markup-user.ly,
4209         input/regression/music-function.ly, input/regression/tie-chord.ly,
4210         scm/fret-diagrams.scm, ly/music-functions-init.ly,
4211         ly/gregorian-init.ly: use new macro names (define-music-function,
4212         define-markup-command).
4213
4214 2006-02-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4215
4216         * scripts/lilypond-book.py (main): write Makefile dependencies file. 
4217         (output): add comments to lp-book latex output.
4218
4219         * GNUmakefile.in (footifymail): use gmane address for webpage bug
4220         address.
4221
4222 2006-02-23  Graham Percival  <gpermus@gmail.com>
4223
4224         * Documentation/user/ tutorial, global: minor changes.
4225
4226 2006-02-23  Nicolas Sceaux  <nicolas.sceaux@free.fr>
4227
4228         * mf/GNUmakefile: add '\' in multi-line "define ... endef"
4229         blocks (for make 3.80)
4230
4231         * scm/parser-ly-from-scheme.scm (ly:parse-string-result): add
4232         \notemode so that user should not have to explicitely type it.
4233
4234         * scm/define-music-display-methods.scm: various
4235         fixes (ApplyOutputEvent, ApplyContext; \new, \context and derived
4236         constructs)
4237
4238         * input/no-notation/display-lily-tests.ly: new tests for
4239         \applyOutput and \applyContext
4240
4241 2006-02-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4242
4243         * lily/constrained-breaking.cc: patch by Joe Neeman: "I have
4244         changed it slightly so that the number of systems returned by
4245         solve () will be the same as the last value passed to resize
4246         (). I've also added more documentation, removed casts, fixed style
4247         problems and put in some recovery if constraints aren't satisfied."
4248
4249 2006-02-23  Jan Nieuwenhuizen  <janneke@gnu.org>
4250
4251         * elisp/lilypond-mode.el (count-matches-as-number): New funtion
4252         for emacs < 22 compatibility.
4253         (count-rexp): Use it.
4254         (LilyPond-string-current-midi, LilyPond-string-all-midi): Remove
4255         substring juggling (Milan Zamazal).
4256
4257 2006-02-23  Graham Percival  <gpermus@gmail.com>
4258
4259         * Documentation/user/ basic-notation, advanced-notation,
4260         global.itely, invoking.itely, tutorial,itely:
4261         minor fixes from mailist.
4262
4263         * scm/define-markup-commands.scm: improve docs of \filled-box.
4264
4265 2006-02-23  Heikki Junes  <hjunes@cc.hut.fi>
4266
4267         * Documentation/index.html.in: changes concern the previous release.
4268
4269         * input/regression/+.ly: cultivate typographical terminology.
4270
4271 2006-02-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4272
4273         * scm/define-grob-interfaces.scm (parentheses-interface): add
4274         padding to parentheses-interface.
4275
4276         * Documentation/user/GNUmakefile: remove $(CROSS) support from
4277         Documentation/user/GNUmakefile. Use --disable-documentation for that.
4278
4279         * VERSION (PATCH_LEVEL): release 2.7.36
4280
4281         * lily/slur.cc: add avoid-slur (ugh.)
4282         
4283         * lily/slur-configuration.cc (fit_factor): oops, skip point if
4284         intersection gets smaller. This fixes slurs over extreme points.
4285
4286         * lily/melody-engraver.cc (stop_translation_timestep): ignore
4287         stems with neutral-direction set.
4288
4289         * lily/piano-pedal-engraver.cc (create_text_grobs): idem.
4290
4291         * lily/open-type-font.cc (load_table): format error.
4292
4293         * lily/change-iterator.cc (process): format fix.
4294
4295         * flower/include/international.hh (_f): idem.
4296
4297         * flower/include/std-string.hh: add format printf attribute.
4298
4299         * scm/define-grobs.scm (all-grob-descriptions): height of all
4300         PedalLineSpanner is Y-extent property. Fixes pedal-ped.ly
4301
4302         * lily/ambitus-engraver.cc (finalize): use grob_array. This fixes
4303         ambitus lines.
4304
4305         * input/regression/beam-cross-staff-slope.ly: remove decrescendo.
4306
4307 2006-02-22 Erik Sandberg  <mandolaerik@gmail.com>
4308
4309         * input/regression/: upgraded syntax for some files.
4310
4311         * THANKS: Add bughunters.
4312
4313 2006-02-22  Graham Percival  <gpermus@gmail.com>
4314
4315         * Documentation/user/ invoking.itely, advanced-notation.itely,
4316         global.itely: long-awaited "let's make chapter 10 not suck"
4317         update.  Rearrange chapter 10; now called "global issues",
4318         addresses file structure, etc.  Some info from other files
4319         moved into global.itely.
4320
4321 2006-02-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4322
4323         * lily/accidental-engraver.cc (acknowledge_rhythmic_head): also
4324         catch trill-span-event notes.
4325
4326         * Documentation/user/examples.itely (Ancient notation templates): typo.
4327         (Jazz combo): typo.
4328
4329         * scripts/lilypond-book.py (main): scrap invokes_lilypond(). 
4330
4331         * Documentation/user/basic-notation.itely (Ties): document \repeatTie.
4332
4333         * Documentation/topdocs/NEWS.tely (Top): document \repeatTie.
4334
4335         * scm/define-music-types.scm (music-descriptions): add RepeatTieEvent
4336
4337         * lily/repeat-tie-engraver.cc (acknowledge_note_head): new file. cut & paste
4338         froum Laissez_vibrer_engraver.
4339
4340         * ly/declarations-init.ly (repeatTie): add \repeatTie
4341
4342         * scm/define-grobs.scm (all-grob-descriptions): add RepeatTie, RepeatTieColumn
4343
4344         * scm/define-grob-properties.scm (all-user-grob-properties): add
4345         head-direction property.
4346
4347         * lily/tie-formatting-problem.cc (from_semi_ties): rename from
4348         from_lv_ties. Take head direction argument.
4349
4350         * lily/semi-tie-column.cc: rename from
4351         laissez-vibrer-tie-column.cc. Rename class too.
4352
4353         * lily/semi-tie.cc: rename from laissez-vibrer-tie.cc. Rename
4354         class too.
4355
4356         * lily/paper-score.cc (find_break_indices): move from Break_algorithm.
4357
4358         * lily/break-algorithm.cc (find_break_indices): remove linewidth <
4359         0 case.
4360         (find_breaks): idem.
4361
4362 2006-02-21  Graham Percival  <gpermus@gmail.com>
4363
4364         * Documentation/user/advanced-notation.itely: fixed make-moment]
4365         example.
4366
4367         * Documentation/user/basic-notation.itely: more clarification to
4368         transpose.
4369
4370 2006-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4371
4372         * lily/include/constrained-breaking.hh (class
4373         Constrained_breaking): new file.
4374
4375         * lily/constrained-breaking.cc (resize): new file.
4376
4377         * lily/gourlay-breaking.cc (do_solve): ragged-last iso raggedlast
4378
4379         * Documentation/user/advanced-notation.itely (Clusters): insert
4380         end ignore too.
4381
4382         * lily/tie-column.cc (calc_positioning_done): support for
4383         tie-score debugging
4384
4385         * lily/tie-formatting-problem.cc
4386         (generate_extremal_tie_variations): factor out.
4387         (score_ties_configuration): annotate all tie 
4388         (print_ties_configuration): new routine.
4389         (generate_configuration): nudge extremal ties outside of the head
4390         Y extents.
4391         (score_ties_configuration): oops. convert to staff-space before
4392         determining position symmetry.
4393
4394 2006-02-20  Graham Percival  <gpermus@gmail.com>
4395
4396         * Documentation/user/*-notation.itely: misc minor editing,
4397         shifting doc sections around.
4398
4399         * Documentation/user/*-notation-itely, global.itely,
4400         changing-defaults.itely: added new stuff from NEWS.
4401
4402 2006-02-20  Heikki Junes  <hjunes@cc.hut.fi>
4403
4404         * po/fi.po: update.
4405
4406 2006-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4407
4408         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): don't run
4409         lilypond --verbose for lp-book.
4410
4411         * make/mutopia-rules.make ($(outdir)/%.png $(outdir)/%.pdf
4412         $(outdir)/%.ly $(outdir)/%.ps): use $(srcdir) iso $(shell pwd).
4413
4414         * make/lysdoc-rules.make ($(outdir)/collated-files.tely): use
4415         $(buildscript-dir) iso. absolute depth.
4416
4417         * buildscripts/genicon.py (dir): thinko.
4418
4419         * Documentation/pictures/GNUmakefile ($(outdir)/%.ico): typo.
4420
4421 2006-02-19 Erik Sandberg  <mandolaerik@gmail.com>
4422
4423         * scm/output-lib.scm: swap darkcyan/darkyellow
4424
4425         * THANKS: Add bughunters.
4426
4427 2006-02-19  Graham Percival  <gpermus@gmail.com>
4428
4429         * Documentation/user/programming-interfaces.itely: fixed example.
4430
4431         * Documentation/user/instrument-notation.itely: fix @{ @}.
4432
4433         * scm/script.scm: add avoid-slur for \open.
4434
4435 2006-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4436
4437         * lily/tie-formatting-problem.cc (score_configuration): use
4438         sliding score for min-length. 
4439
4440         * Documentation/pictures/GNUmakefile (local-dist): loose the rule
4441         spaghetti for icons.
4442
4443         * buildscripts/genicon.py (program_name): new file.
4444
4445         * lily/tie-formatting-problem.cc (set_chord_outline): put dots
4446         in outline too.  
4447         (generate_configuration): for small ties, also look for collisions
4448         at Y + DIR*h + DELTA_Y.
4449         (get_variations): consider variation for dot positions too.
4450
4451         * lily/side-position-interface.cc (aligned_side): take abs for
4452         quantized rounded position. Fixes tenuto below staff.
4453
4454         * scm/stencil.scm (annotate-y-interval): robustify: print nan/inf
4455         markers when necessary.
4456
4457         * lily/program-option.cc (internal_set_option): add
4458         strict_infinity_checking option.
4459
4460         * scm/output-lib.scm (cyan): swap yellow and cyan.
4461
4462 2006-02-19  Graham Percival  <gpermus@gmail.com>
4463
4464         * darwin.patch: trivial linenumber update.
4465
4466         * Documentation/user/ {various}: `\context foo = named' changed
4467         to `\new foo = "name"' in docs.
4468
4469 2006-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4470
4471         * scm/stencil.scm (annotate-y-interval): use it.
4472
4473         * scm/lily-library.scm (interval-sane?): new function.
4474
4475         * buildscripts/mf-to-table.py (Char_metric.__init__): remove
4476         tfm_checksum stuff.
4477
4478         * lily/tie-formatting-problem.cc (from_lv_ties): add heads for
4479         common refpoint.
4480
4481         * flower/include/std-vector.hh (iterof): add iterof macro.
4482
4483         * lily/enclosing-bracket.cc (width): new function.
4484
4485         * lily/align-interface.cc (align_elements_to_extents): reinstate
4486         warning.
4487
4488 2006-02-18  Heikki Junes  <hjunes@cc.hut.fi>
4489
4490         * Documentation/index.html.in: fix spelling: thankyous.
4491
4492 2006-02-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4493
4494         * lily/lyric-hyphen.cc: typo.
4495
4496 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4497
4498         * stepmake/stepmake/c++-rules.make ($(outdir)/%.cc
4499         $(outdir)/%.hh): generate h and c in one rule; otherwise -jX
4500         builds don't work. 
4501
4502         * VERSION: release 2.7.35
4503
4504         * lily/beam.cc (get_default_dir): oops. Take abs () for
4505         extremes[DOWN].
4506         (get_default_dir): use extreme position criterion only in absence
4507         of forced stem directions.
4508
4509         * VERSION (PATCH_LEVEL): bump VERSION.
4510
4511         * mf/GNUmakefile: explicit rules for emmentaler/aybabtu
4512         dependencies. Necessary for -jX builds.  
4513
4514 2006-02-17  Jan Nieuwenhuizen  <janneke@gnu.org>
4515
4516         * lily/relocate.cc (setup_paths): Yet another const fix.
4517
4518 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4519
4520         * configure.in (HOST_ARCH): determine HOST_ARCH in configure.
4521
4522         * lily/relocate.cc (setup_paths): oops.
4523
4524 2006-02-17  Heikki Junes  <hjunes@cc.hut.fi>
4525
4526         * Documentation/index.html.in: order links: html before PDF.
4527
4528 2006-02-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4529
4530         * lily/tie-column-format.cc (Module): remove.
4531
4532         * lily/relocate.cc (setup_paths): GCC 4.2 fixes: const correctness.
4533
4534         * lily/text-spanner.cc (print): idem.
4535
4536         * lily/dynamic-text-spanner.cc (print): only print line if longer
4537         than dash-period.
4538
4539         * lily/auto-change-iterator.cc (change_to): formatting.
4540
4541         * lily/beam.cc (get_default_dir): take extreme note head as input
4542         for stem direction.
4543
4544         * lily/tie.cc (get_default_dir): only look directions for visible
4545         stems. 
4546
4547         * lily/side-position-interface.cc (aligned_side): oops. Don't
4548         mutiply with direction. This fixes quantized (staccato, tenuto)
4549         scripts below notes.
4550
4551         * lily/lyric-hyphen.cc (set_spacing_rods): oops. Multiply with
4552         direction. Fixes c-lyrics-center-align.ly
4553
4554 2006-02-16  Jan Nieuwenhuizen  <janneke@gnu.org>
4555
4556         * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Add copy
4557         constructor.
4558
4559         * lily/std-string.cc:
4560         * lily/include/std-vector.hh (split_string): Move and rename from
4561         lily/include/misc.hh, lily/misc.cc.  Update callers.
4562
4563 2006-02-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4564
4565         * lily/include/pango-font.hh: HAVE_PANGO_FT2 iso. HAVE_PANGO_16
4566
4567 2006-02-16  Jan Nieuwenhuizen  <janneke@gnu.org>
4568
4569         * flower/test-file.cc: New file.
4570
4571         * stepmake/stepmake/test-vars.make (TEST_MODULE_LIBES): Fixes for
4572         libraries.
4573
4574         * flower/GNUmakefile (TEST_MODULE_LIBS): Link to flower lib.
4575
4576 2006-02-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4577
4578         * flower/include/file-storage.hh: remove file.
4579
4580         * lily/include/midi-item.hh (class Midi_track): idem.
4581
4582         * lily/include/source.hh (class Sources): idem.
4583
4584         * lily/include/performance.hh (class Performance): use vector
4585         iso. Cons<>
4586
4587         * flower/include/cons.hh (class Cons): remove file.
4588
4589         * flower/include/flower-proto.hh: remove template cruft.
4590
4591         * lily/include/font-metric.hh: use size_t not vsize for indices.
4592
4593         * flower/include/flower-proto.hh (Module): remove std-vector.hh
4594         from proto.
4595
4596         * lily/include/all-font-metrics.hh: use HAVE_PANGO_FT2
4597
4598         * lily/include/paper-book.hh (class Paper_book):
4599         make get_system_specs() public.
4600
4601         * scm/layout-page-layout.scm (optimal-page-breaks): only consider
4602         the force=10000 case if we don't have a current-best. 
4603
4604         * lily/tuplet-bracket.cc (get_bounds): don't do (size() - 1) for
4605         vsize 
4606
4607         * flower/include/flower-proto.hh: remove outdated templates.
4608
4609         * scm/page.scm: use annotate-spacing
4610
4611 2006-02-15  Graham Percival  <gpermus@gmail.com>
4612
4613         * scm/translation-functions.scm: circle patch from Erlend, thanks!
4614
4615         * THANKS: moved Erlend Aasland to contributors.
4616
4617 2006-02-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4618
4619         * config.hh.in: remove HAVE_PANGO_16
4620
4621         * lily/tuplet-bracket.cc (calc_positions): multiply with
4622         staff-space for beam case. This fixes tuplets+beams on scaled
4623         staves.
4624
4625         * config.hh.in: remove all Kpathsea related defines.
4626
4627         * lily/dot-column.cc (side_position): reach stem via dots->
4628         head->stem. Inspect all stems for dot collisions. 
4629
4630         * lily/dot-column-engraver.cc (class Dot_column_engraver): excise
4631         stem handling.
4632
4633         * lily/bar-number-engraver.cc (process_music): document function
4634         of whichBar.
4635
4636         * lily/score.cc (default_rendering): add pscore, not systems
4637         themselves.
4638
4639         * lily/paper-book.cc (get_system_specs): separate generation of
4640         titles and systems.
4641
4642         * flower/include/std-vector.hh: don't include config.hh
4643
4644 2006-02-15  Jan Nieuwenhuizen  <janneke@gnu.org>
4645
4646         * flower/include/std-vector.hh: Better wrapper compatibility with
4647         std::vector.
4648
4649         * flower/include/flower-proto.hh: Remove cheap forward declaration
4650         attempts.
4651
4652         * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): Bugfix.
4653
4654 2006-02-14  Graham Percival  <gpermus@gmail.com>
4655
4656         * Documentation/user/invoking.itely: add warning about command line.
4657
4658 2006-02-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4659
4660         * lily/include/lily-proto.hh: add Prob, rm Page.
4661
4662         * flower/include/std-vector.hh (VPOS): use 64 bit-proof version.
4663
4664         * VERSION: release 2.7.34
4665
4666         * lily/relocate.cc (framework_relocation): show canary if
4667         GHOSTSCRIPT_VERSION undefined.
4668
4669         * GNUmakefile.in: remove $(VERSION) symlink.
4670
4671         * lily/relocate.cc (setup_paths): add + 
4672
4673 2006-02-13  Heikki Junes  <hjunes@cc.hut.fi>
4674
4675         * Documentation/index.html.in: specify sizes for all big HTML pages.
4676
4677 2006-02-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4678
4679         * config.hh.in: remove @FRAMEWORKDIR@
4680
4681         * lily/system-start-text.cc (get_stencil): new file: separate out
4682         system-start-delimiter text support.
4683
4684         * input/**ly: replace \context with \new where appropriate.
4685         
4686         * THANKS: add Don.
4687
4688         * lily/slur-scoring.cc (get_base_attachments): use
4689         robust_relative_extent. This fixes problems with empty paper-columns. 
4690
4691 2006-02-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4692
4693         * Documentation/topdocs/NEWS.tely (Top): document \new syntax.
4694
4695         * scm/define-music-properties.scm (all-music-properties):
4696         create-new property.
4697
4698         * lily/context-specced-music-iterator.cc (construct_children):
4699         inspect 'create-new property iso. magical $uniqueContextId context
4700         id.
4701
4702         * lily/parser.yy (optional_id): allow \new "Bar" = "foo" too.
4703
4704         * lily/context-key-manager.cc (Module): new file. Encapsulate
4705         object key generation.
4706
4707         * lily/include/context-key-manager.hh (Module): new file.
4708
4709 2006-02-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4710
4711         * scm/define-grobs.scm (all-grob-descriptions): center instrument
4712         names vertically
4713
4714         * configure.in (LINK_GXX_STATICALLY): strip -DSTRING_UTILS_INLINED
4715         options.
4716         (reloc_b): excise --enable-framework-dir
4717
4718         * lily/relocate.cc (framework_relocation): use getenv
4719         LILYPOND_GS_VERSION or -DGHOSTSCRIPT_VERSION to set GS version.
4720
4721 2006-02-11  Jan Nieuwenhuizen  <janneke@gnu.org>
4722
4723         * flower/include/std-string.hh: 
4724         * flower/include/std-vector.hh: Finish std:: conversion; move
4725         flower extensions from std:: namespace.  Update users.
4726
4727         * lily/include/lily-proto.hh: Replace Link_array__*_ macros by
4728         their expansion to vector<*>.  Update users.
4729
4730 2006-02-10  Graham Percival  <gpermus@gmail.com>
4731
4732         * Documentation/user/invoking.itely: add example to File structure.
4733
4734         * Documentation/user/ instrument-notation.itely, cheatsheet.itely,
4735         examples.itely, putting.itely: {\new|\context} Lyrics \lyricsto.
4736
4737 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4738
4739         * ly/paper-defaults.ly: typo.
4740
4741         * lily/parenthesis-engraver.cc (acknowledge_grob): don't do
4742         set_parent() for parentheses. This will make it show up in bbox
4743         calculations.
4744
4745         * scm/output-lib.scm (parentheses-item::print): rewrite, using
4746         ly:grob-common* functions.
4747
4748         * lily/grob-scheme.cc (LY_DEFINE):
4749         ly:grob-common-refpoint-of-array: new function 
4750         ly:grob-common-refpoint: new function 
4751         ly:grob-relative-coordinate: new function 
4752
4753         * lily/instrument-name-engraver.cc (process_music): use
4754         Text_interface::is_markup(). This fixes \markup on instrument names.  
4755
4756         * scm/define-grobs.scm (all-grob-descriptions): set line-thickness
4757         for ties and slurs.
4758
4759         * lily/slur.cc (print): idem.
4760
4761         * lily/tie.cc: add line-thickness for ties. 
4762
4763 2006-02-10  Jan Nieuwenhuizen  <janneke@gnu.org>
4764
4765         * scm/output-svg.scm: Document diversion from GNU coding standards
4766         as a workaround for a bug in Microsoft Internet Explorer.
4767
4768 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4769
4770         * lily/instrument-name-engraver.cc (process_music): use
4771         is_markup() iso. is_string()
4772
4773         * Documentation/user/changing-defaults.itely (Module): add menu entry.
4774
4775         * lily/percent-repeat-engraver.cc (process_music): only look at
4776         main_part_ for % repeats.
4777
4778         * lily/stem-tremolo.cc (get_beam_translation): new function.
4779         (calc_slope): new function.
4780         (height): don't use real slope.
4781
4782 2006-02-10  Jürgen Reuter  <reuter@ipd.uka.de>
4783
4784         * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: add
4785         new connect-to-neighbor, control-points and staff-padding
4786         properties to make ligature brackets showing up again.
4787
4788 2006-02-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4789
4790         * VERSION: release 2.7.33
4791
4792         * lily/relocate.cc (prefix_relocation): oops. One TOPLEVEL_VERSION
4793         too many.
4794
4795         * Documentation/user/changing-defaults.itely (Difficult tweaks):
4796         remove applyOutput example.
4797         (Objects connected to the input): document \tweak, \parenthesize
4798
4799         * lily/relocate.cc (prefix_relocation): allow "current"
4800         iso. TOPLEVEL_VERSION for share/lilypond/ suffix. This makes
4801         changing VERSION in a lily tree less painful.
4802
4803         * input/regression/parenthesize.ly: new file. 
4804
4805         * scm/output-lib.scm (parenthesize-element): new function.
4806
4807         * scm/define-grobs.scm (all-grob-descriptions): add ParenthesesItem.
4808
4809         * lily/parenthesis-engraver.cc (acknowledge_grob): new file.
4810
4811         * lily/accidental-engraver.cc (make_standard_accidental): reroute
4812         cause: accidentals are caused by note heads, not note events. 
4813
4814 2006-02-08  Graham Percival  <gpermus@gmail.com>
4815
4816         * darwin.patch: small patch from Erlend, thanks!
4817
4818         * Documentation/user/basic-notation.itely: add stem-neutral example.
4819
4820         * Documentation/user/putting.itely: clarifications.
4821
4822 2006-02-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4823
4824         * Documentation/topdocs/NEWS.tely (Top): remove internal cleanup
4825         note, add more guidelines to what should go into NEWS.
4826
4827         * input/sakura-sakura.ly: document how to override font.
4828
4829         * input/regression/font-family-override.ly:  doc -dshow-available-fonts
4830
4831 2006-02-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4832
4833         * lily/midi-item.cc (to_string): truncate time sig at 255 beats.
4834
4835 2006-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
4836
4837         * scripts/convert-ly.py (lilypond_version_re_str): Move from
4838         convertrules.  Add explicit grouping, needed for python2.2.
4839
4840 2006-02-07  Jan Nieuwenhuizen  <janneke@gnu.org>
4841
4842         * Documentation/topdocs/NEWS.tely (Top): Mention code cleanup.
4843
4844 2006-02-07  Graham Percival  <gpermus@gmail.com>
4845
4846         * Documentation/user/global.itely: fix line-width in (text) docs.
4847
4848         * Documentation/user/lilypond-book.itely: same.
4849
4850 2006-02-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4851
4852         * VERSION (PACKAGE_NAME): release 2.7.32
4853
4854         * Documentation/topdocs/NEWS.tely (Top): document new variable
4855         naming.
4856
4857         * flower/include/array.icc (Message): remove file.
4858
4859         * flower/include/std-vector.hh: make sure vsize and VPOS are
4860         defined for binary_search_bounds().
4861
4862         * flower/std-string.cc (std): add to_string(long unsigned).
4863
4864         * configure.in (gui_b): excise std_string option.
4865         (gui_b): excise std_vector option.
4866
4867         * flower/string.cc (Module): excise flower array & string
4868
4869         * flower/include/std-string.hh: excise flower string.
4870
4871         * {ly,lily,scm}/*: use dashes in \paper and \layout variables
4872
4873         * python/convertrules.py (lilypond_version_re_str): require
4874         only numbers and dots in \version string.
4875
4876 2006-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4877
4878         * lily/system-start-delimiter.cc (print): allow style = text too.
4879
4880         * lily/system-start-delimiter-engraver.cc
4881         (acknowledge_system_start_text): new function, also add add to
4882         support of system-start-text (instrument names). This fixes
4883         instrument names on piano staves.
4884
4885         * lily/instrument-name-engraver.cc: rewrite. Use
4886         system-start-delimiter approach. This save memory and cpu.
4887
4888         * scm/define-grobs.scm (all-grob-descriptions): remove
4889         instrument-name from break-alignment.
4890
4891         * mf/GNUmakefile ($(NCSB_TTFS)): depend on pfx2ttf script too.
4892
4893 2006-02-05  Jan Nieuwenhuizen  <janneke@gnu.org>
4894
4895         * stepmake/stepmake/generic-vars.make (LOOP): Add PLUS to keep -j
4896         jobserver going.
4897
4898         * configure.in (std_vector): On by default.
4899
4900         * lily/include/font-metric.hh:
4901         * lily/include/tfm-reader.hh: 
4902         * lily/include/spanner.hh: Use unsigned for indices and sizes.
4903         Update users.
4904
4905         * Documentation/user/changing-defaults.itely: Fix link v2.5, out-www.
4906
4907 2006-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4908
4909         * VERSION (PACKAGE_NAME): 2.7.31
4910
4911         * scm/framework-ps.scm (dump-stencil-as-EPS): don't hardcode left
4912         EPS edge at 0, but take minimum with left-overshoot. This fixes
4913         cut off system start delims. 
4914
4915         * lily/instrument-name-engraver.cc (stop_translation_timestep):
4916         hack: add to axis group if not added yet. This fixes hara kiri'd
4917         piano staves.
4918
4919         * lily/hara-kiri-group-spanner.cc
4920         (force_hara_kiri_in_y_parent_callback): fix signatures.
4921
4922         * lily/hairpin.cc (print): check next hairpin to see whether or
4923         not to be continuing.
4924
4925 2006-02-04  Jan Nieuwenhuizen  <janneke@gnu.org>
4926
4927         * Remove trailing whitespace from makefiles.
4928         
4929         * flower/include/std-vector.hh: Add binary_search_bounds workaround
4930         for earlier gcc.
4931
4932         * .cvsignore: Add out*, out-www, config-*.  Remove lots of cruft.
4933
4934         * flower/include/std-vector.hh[!HAVE_STL_DATA_METHOD]: Workaround.
4935
4936         * config.hh.in (HAVE_STL_DATA_METHOD): Add.
4937
4938         * stepmake/aclocal.m4 (STEPMAKE_STL_DATA_METHOD): New function.
4939
4940         * configure.in: Use it.
4941
4942 2006-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4943
4944         * scm/music-functions.scm (pitch-of-note): new function.
4945
4946         * ly/music-functions-init.ly: add \octave and \addquote
4947
4948         * lily/parser.yy (music_function_chord_body): softcode \octave.
4949         (lilypond_header): softcode \addquote
4950
4951 2006-02-03  Jan Nieuwenhuizen  <janneke@gnu.org>
4952
4953         * flower/include/std-vector.hh[STD_VECTOR]: Do not include
4954         array.hh, parray.hh at all.  Getting ready to flip the
4955         configure default.
4956
4957         * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
4958
4959         * lily/source-file.cc (file::get_line): Help binary_search_bounds
4960         a bit.
4961
4962         * lily/include/lily-proto.hh (Link_array__char_): Bugfix.
4963
4964 2006-02-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4965
4966         * flower/include/array.hh: typo. 
4967
4968 2006-02-02  Graham Percival  <gpermus@gmail.com>
4969
4970         * Documentation/user/advanced-notation.itely: doc "\#" in text.
4971
4972 2006-02-03  Jan Nieuwenhuizen  <janneke@gnu.org>
4973
4974         * flower/include/pqueue.hh: Derive from std::vector.
4975
4976         * flower/include/parray.hh: Conform to std::vector interface.
4977         Update users.
4978
4979 2006-02-02  Graham Percival  <gpermus@gmail.com>
4980
4981         * Documentation/topdocs/NEWS.itely: grammar fix from Laura.
4982
4983 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
4984
4985         * flower/file-path.cc (is_file): remove if 0 section.
4986
4987         * buildscripts/pfx2ttf.fontforge (err): robustness fix for
4988         selecting afii61352.
4989
4990 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
4991
4992         * flower/include/std-vector.hh (boundary): Oops, reverse.
4993
4994         * flower/string-convert.cc (convert::unsigned_string): Bugfix:
4995         remove superfluous `d'.
4996
4997         * flower/include/std-vector.hh (boundary, top): Detach from class.
4998         Remove empty vector shell.
4999
5000         * flower/include/array.hh (reverse, swap): Detach from class.
5001         Update users.
5002         
5003         * flower/include/std-vector.hh
5004         * flower/include/array.hh (concat): Globally change to insert ().
5005
5006         
5007         * flower/include/std-vector.hh
5008         * flower/include/parray.hh
5009         * flower/include/array.hh (elem, elem_ref): Globally replace by
5010         at ().
5011
5012 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5013
5014         * Documentation/topdocs/NEWS.tely (Top): use ly: prefix for members.
5015
5016         * python/convertrules.py (FatalConversionError.sub_cxx_id):
5017         anticipate on identifier substitutions.
5018
5019 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
5020
5021         * flower/include/std-vector.hh (insert): Remove, replace by
5022         std::vector interface.  Update callers.
5023
5024         * flower/include/array.icc (insert): Change signature to
5025         match std::vector interface.
5026         
5027         * flower/include/array.icc (vector_sort): Bugfix.
5028
5029 2006-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5030
5031         * lily/parser.yy (output_def_head_with_mode_switch): new
5032         production. Result: dashes and underscores may be used in the
5033         \paper block.
5034
5035         * lily/lexer.ll: add DASHED_WORD.  Accept in INITIAL mode.
5036
5037         * python/convertrules.py (conv): oops. One slash too much.
5038
5039 2006-02-02  Jan Nieuwenhuizen  <janneke@gnu.org>
5040
5041         * flower/include/std-vector.hh (sort): Remove, replace by
5042         ::vector_sort.  Update callers.
5043
5044         * flower/include/std-vector.hh (slice): Remove.  Update callers.
5045         (sort): Bugfix.
5046
5047         * flower/test-std.cc (vector_sort): New test.
5048
5049 2006-02-01  Graham Percival  <gpermus@gmail.com>
5050
5051         * Documentation/user/putting.itely: fixes from Erik.
5052
5053 2006-02-01  Jan Nieuwenhuizen  <janneke@gnu.org>
5054
5055         * flower/test-std.cc: Add simple unit test for vector migration.
5056
5057         * stepmake/stepmake/test*: Unit test support.
5058
5059         * flower/include/std-vector.hh (del): Remove.  Use erase (),
5060         update callers.
5061
5062         * flower/include/array.hh (begin, end): Add.
5063         (del, get): Remove.
5064
5065 2006-02-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5066
5067         * lily/include/lily-guile-macros.hh (MAKE_SCHEME_CALLBACK): use
5068         std::string not String. 
5069
5070         * lily/context-def.cc (path_to_acceptable_context): use INT_MAX
5071         iso UINT_MAX.
5072
5073         * lily/prob.cc (Prob): copy type_ too.
5074
5075         * lily/lily-guile.cc (mangle_cxx_identifier): new
5076         function. Class_bla::foo_bar_[px] ->
5077         ly:class-bla::foo-bar[?!]. Changes throughout
5078
5079 2006-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5080
5081         * flower/include/guile-compatibility.hh (scm_from_unsigned): add scm_from_unsigned().
5082
5083         * lily/beam.cc (calc_direction): take dir from visible stem in
5084         degenerate case.
5085
5086 2006-01-31  Jan Nieuwenhuizen  <janneke@gnu.org>
5087
5088         * lily/melody-spanner.cc (spanner::calc_neutral_stem_direction):
5089         Fix -1, >=0 boundary checks for unsigned vsize.
5090
5091         * lily/separating-group-spanner.cc (spanner::find_rods): Fix >=0
5092         loop for unsigned vsize.
5093
5094         * configure.in (--enable-std-vector): New option.
5095         (--enable-std-string): On by default.
5096
5097         * flower/include/std-vector.hh: New file.  Enable switch to
5098         std::vector, update client code.
5099
5100 2006-01-30  Graham Percival  <gpermus@gmail.com>
5101
5102         * scm/document-translation.scm: clarify "this context is also
5103         known as".  Thanks, Werner!
5104
5105         * Documentation/user/putting.itely: small fixes from Don Blaheta.
5106
5107         * Documentation/user/invoking.itely: small fix from Don.
5108
5109 2006-01-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5110
5111         * scm/lily.scm (define-scheme-options): rename option
5112         preview-include-book-title to book-title-preview
5113         (define-scheme-options): move force-eps-font-include (from paper
5114         block) to eps-font-include -d option.
5115
5116         * VERSION (PATCH_LEVEL): release 2.7.30
5117
5118         * input/bach-schenker.ly (staffPiano): new file.
5119
5120         * buildscripts/pfx2ttf.fontforge: remove No. glyph from TTF file.
5121
5122         * Documentation/topdocs/NEWS.tely (Top): simplify NEWS entry, add
5123         credits to Nicolas.
5124
5125         * scm/define-markup-commands.scm (epsfile): add scaling to \epsfile.
5126
5127         * ps/lilyponddefs.ps: remove start-system, stop-system,
5128         start-page fluff. This saves putting { } code on the stack, fixing
5129         stack overflows when including EPS files.
5130
5131 2006-01-29  Graham Percival  <gpermus@gmail.com>
5132
5133         * Documentation/user/putting.itely: minor fixes (comments on -devel).
5134
5135 2006-01-29  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5136
5137         * Documentation/topdocs/NEWS.tely (Top): add \parallelMusic news.
5138
5139 2006-01-28  Graham Percival  <gpermus@gmail.com>
5140
5141         * Documentation/user/putting.itely: minor fixes (mostly tab->space).
5142
5143 2006-01-28  Jan Nieuwenhuizen  <janneke@gnu.org>
5144
5145         * input/mutopia/claop.py: Update.
5146
5147 2006-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5148
5149         * input/regression/completion-heads.ly (texidoc): fix.
5150
5151         * lily/staff-symbol-referencer.cc (on_staff_line): idem.
5152
5153         * lily/tie-formatting-problem.cc
5154         (set_ties_config_standard_directions): use abs iso fabs for ints.
5155
5156         * Documentation/topdocs/INSTALL.texi (Top): document ncsb requirement.
5157
5158         * mf/feta-bolletjes.mf (overdone_heads): solfa_noteheight, a
5159         little less than noteheight, to prevent overlaps in chords.
5160
5161         * lily/note-collision.cc (check_meshing_chords): wipe upper FA
5162         head, and fudge stem-attachment.
5163
5164         * scm/lily-library.scm (not): define hash-for-each for guile 1.6
5165
5166         * lily/slur-scoring.cc (get_best_curve): handle opt_idx < 0 case.
5167
5168 2006-01-27  Jan Nieuwenhuizen  <janneke@gnu.org>
5169
5170         * lily/main.cc (main): Debugging aid: catch exceptions.
5171
5172         * flower/std-string.cc (to_string): Robustification.  Fixes midi
5173         output with std::string.
5174
5175 2006-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5176
5177         * Documentation/topdocs/INSTALL.texi (Top): remove libkpathsea notes.
5178
5179 2006-01-26  Jan Nieuwenhuizen  <janneke@gnu.org>
5180
5181         * Fix -DSTRING_UTILS_INLINED.
5182
5183 2006-01-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5184
5185         * VERSION (PATCH_LEVEL): release 2.7.29
5186
5187         * lily/relocate.cc (setup_paths): mingw uses std string too.
5188
5189         * lily/*.cc: various fixes for substr(ARG).
5190
5191         * lily/sustain-pedal.cc (print): 
5192
5193         * flower/file-name.cc (slashify): use std strings.
5194
5195         * flower/string-convert.cc: remove publib.h
5196
5197         * scm/define-markup-commands.scm (verbatim-file): new markup
5198         command \verbatim-file
5199
5200         * Documentation/topdocs/NEWS.tely: fixup URLs
5201
5202         * input/regression/alignment-vertical-manual-setting.ly (Module):
5203         new file.
5204
5205         * lily/align-interface.cc (align_elements_to_extents): overwrite
5206         translations with numbers in alignment-offsets from left bound
5207
5208         * scm/page.scm (make-page-stencil): read X-offset from paper-system.
5209         (page-translate-systems): new function: take into account Y-offset.
5210
5211         * Documentation/topdocs/NEWS.tely (Top): document new features.
5212
5213         * input/regression/page-layout-manual-position.ly (Module): new
5214         file.
5215
5216 2006-01-26  Jan Nieuwenhuizen  <janneke@gnu.org>
5217
5218         * flower/file-path.cc (path::parse_path): Oops.
5219
5220         * Finish std::string interface.  For now, use std:: marker
5221         throughout for easy s/r.
5222
5223 2006-01-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5224
5225         * Documentation/user/putting.itely (Score is a single musical
5226         expression): typo.
5227         (Score is a single musical expression): more typos.
5228
5229         * scm/page.scm (annotate-space-left): thinko.
5230         (annotate-page): more thinkos.
5231
5232 2006-01-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5233
5234         * scm/layout-page-layout.scm (write-page-breaks): record tweaks
5235         for different \score blocks separately.
5236         (post-process-pages): put write-page-layout into paper block.
5237
5238         * lily/output-def.cc (get_parser): new file.
5239
5240         * lily/output-def-scheme.cc (LY_DEFINE): ly:output-def-parser, new
5241         file.
5242
5243         * lily/include/output-def.hh (class Output_def): add parser_ member.
5244
5245         * input/regression/page-layout-twopass.ly (Module): new file.
5246
5247         * scm/lily.scm: remove cpp hack.
5248
5249         * lily/lyric-engraver.cc (get_voice_to_lyrics): use NPOS everywhere.
5250
5251 2006-01-25  Jan Nieuwenhuizen  <janneke@gnu.org>
5252
5253         * GNUmakefile.in (c-clean): New target.
5254
5255         * flower/include/std-string.hh: String/std::string compatibility:
5256         Use NPOS for `not found' (iso -1), use ssize for length () and pos
5257         type.
5258
5259         * flower/rational.cc: 
5260         * flower/include/rational.hh: 
5261
5262         * flower/offset.cc: 
5263         * flower/include/offset.hh: 
5264
5265         * flower/interval.cc: 
5266         * flower/include/interval.hh: 
5267
5268         * flower/string-convert.cc: 
5269         * flower/include/string-convert.hh: Use std::string [interface].
5270         Update callers.
5271
5272 2006-01-25  Heikki Junes  <hjunes@cc.hut.fi>
5273
5274         * Documentation/index.html.in: clean up.
5275
5276 2006-01-25  Graham Percival  <gpermus@gmail.com>
5277
5278         * Documentation/user/putting.itely: another new untested doc section.
5279
5280 2006-01-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5281
5282         * scm/layout-page-layout.scm (write-page-breaks): write
5283         \spacingTweaks #ALIST. Handle grace timing.
5284
5285         * scm/: more imports.
5286
5287         * scm/page.scm (make-page): add footer/header.
5288         (annotate-space-left): revise: only take page argument.
5289         (layout->page-init): new function.
5290
5291         * scm/layout-page-layout.scm (write-page-breaks): preliminary
5292         version of the system/spacing/linebreak hack writing to the output
5293
5294         * lily/prob-scheme.cc (LY_DEFINE): take optional 'key val args in
5295         ly:make-prob.
5296
5297         * lily/grob-scheme.cc (LY_DEFINE): ly:spanner-get-bound ->
5298         ly:spanner-bound
5299
5300 2006-01-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5301
5302         * scm/stencil.scm (annotate-y-interval): move from layout-page-layout.scm
5303
5304         * scm/paper-system.scm (paper-system-annotate): new file. Handle paper-system.
5305
5306         * scm/layout-page-layout.scm (optimal-page-breaks): move all page
5307         handling to page.scm
5308
5309         * lily/prob-scheme.cc (LY_DEFINE): new file.
5310         (LY_DEFINE): functions ly:make-prob , ly:prob-type? , ly:prob-(set-)property(!)
5311
5312         * lily/music-scheme.cc (LY_DEFINE): rewrite get/set property using
5313         prob functions.
5314
5315         * lily/music.cc (derived_mark): derive Music from Prob.
5316
5317         * lily/paper-system.cc (LY_DEFINE): derive from Prob.
5318
5319         * lily/prob.cc (Module): Implement Prob (Property Object), object
5320         with shared and r/w property alists.  
5321
5322         * lily/include/prob.hh (Module): new file. Declare Prob.
5323
5324         * flower/string.cc: remove is_empty().
5325
5326         * flower/include/string.hh (class String): remove String:: qualifier.
5327
5328         * buildscripts/analyse-cxx-log.py: new file. Read compile log to
5329         substitute appropriate functions.
5330
5331         * flower/include/string.hh (class String): remove to_str0 and
5332         is_empty(). S&R everywhere.
5333
5334 2006-01-23  Graham Percival  <gpermus@gmail.com>
5335
5336         * Documentation/user/basic-notation.itely: add hairpin
5337         after-linebreak tweak to commonprop.
5338
5339         * Documentation/user/putting.itely: added two new sections.
5340
5341 2006-01-23  Jan Nieuwenhuizen  <janneke@gnu.org>
5342
5343         * flower/international.cc: 
5344         * flower/include/international.hh: 
5345
5346         * flower/getopt-long.cc: 
5347         * flower/include/getopt-long.hh: Use std::string [interface].
5348         Update callers.
5349
5350         * flower/include/std-string.hh: Oops, bugfix for --disable-std-string.
5351
5352         * stepmake/stepmake/executable-rules.make: Add dependency on
5353         module libraries.
5354
5355 2006-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
5356
5357         * flower/file-path.cc: 
5358         * flower/include/file-path.hh: Use std::string [interface].
5359         Update callers.
5360
5361         * flower/direction.cc: 
5362         * flower/axis.cc: Unused.  Remove.
5363
5364         * configure.in (--enable-std-string): New option.
5365
5366         * flower/std-string.cc: 
5367         * flower/include/std-string.hh: New file.
5368
5369         * flower/file-name.cc[STD_STRING]:
5370         * flower/include/file-name.hh[STD_STRING]: Use it.  Update callers.
5371
5372 2006-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5373
5374         * scm/output-svg.scm (placebox): no GNU coding standards in SVG output. 
5375
5376         * scm/define-markup-commands.scm (with-dimensions):
5377         with-dimensions markup command.
5378
5379         * input/test/font-table.ly: use it.
5380
5381         * lily/open-type-font.cc (glyph_list): new function.
5382
5383         * lily/open-type-font-scheme.cc (LY_DEFINE): ly:otf-glyph-list function.
5384
5385         * lily/ttf.cc: remove ly:font-glyph-list scheme function
5386
5387 2006-01-22  Nicolas Sceaux  <nicolas.sceaux@free.fr>
5388
5389         * ly/music-functions-init.ly (parallelMusic): new music function
5390         for parallel music entry.
5391
5392         * scm/define-music-properties.scm (all-music-properties): new
5393         'void music property
5394
5395         * scm/music-functions.scm (ly:music-message): make public, to be
5396         used in music function definitions
5397
5398         * scm/lily-library.scm (collect-music-for-book): discard music
5399         when the 'void property is set.
5400
5401 2006-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5402
5403         * lily/ttf.cc (LY_DEFINE): store name before destroying face.
5404
5405         * mf/GNUmakefile: idem.
5406
5407         * buildscripts/mf-to-table.py (help): excise fetaXXlist.ly support.
5408
5409         * stepmake/bin/install.py (dest): Only chmod/chown just created directories
5410
5411         * Documentation/user/notation-appendices.itely (The Feta font):
5412         use it.
5413
5414         * input/test/font-table.ly: new file. Generate font table within lily.
5415
5416         * Documentation/user/notation-appendices.itely (The Feta font):
5417         use new font-table.ly file. 
5418
5419         * stepmake/stepmake/install-out-targets.make
5420         (local-install-outfiles): only create directory if
5421         $(INSTALLATION_OUT_DIR) is defined. This fixes install on Gentoo.
5422
5423 2006-01-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5424
5425         * lily/ttf.cc (LY_DEFINE): new function ly:font-glyph-list.
5426
5427         * VERSION (PACKAGE_NAME): release 2.7.28
5428
5429         * scm/framework-ps.scm (write-preamble): use it to pick exactly
5430         the right font from a Mac dfont.
5431         (write-preamble): don't forget directory, only look at files.
5432
5433         This fixes problems with TTF files in dfonts that don't match
5434         their PostScript names.
5435          
5436         * lily/ttf.cc (LY_DEFINE): ly:ttf-ps-name: new routine to extract
5437         PS name from TTF font.
5438
5439         * input/regression/tie-manual.ly: document new feature.
5440
5441         * Documentation/topdocs/NEWS.tely (Top): add tie NEWS.
5442
5443         * VERSION (MY_PATCH_LEVEL): bump to .28
5444
5445         * Documentation/user/basic-notation.itely (Ties): add tie examples
5446         refs.
5447
5448         * lily/tie-formatting-problem.cc (score_ties_configuration):
5449         symmetry penalties for outer ties.
5450
5451 2006-01-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5452
5453         * lily/tie-formatting-problem.cc (generate_configuration) 
5454         (set_manual_tie_configuration): skip non-pair manual
5455         tie-configuration, so you can set individual ties as
5456
5457           #'tie-configuration = #'((7 . 1) #t (-3 . 1))
5458
5459         * input/regression/tie-chord.ly: use generateTiePattern to
5460         simplify file.
5461
5462         * lily/tie-formatting-problem.cc (peak_around): new function.
5463         (score_configuration): use sliding criterion for staff line collisions. 
5464         (score_configuration): idem for dot collisions.
5465         (generate_configuration): use separate stem_gap for gap to stem.
5466
5467         * lily/include/tie-formatting-problem.hh (struct Tie_details):
5468         separate penalty factors for x and y distance.
5469         (struct Tie_details): separate penalties for tip and center line collisions.
5470
5471 2006-01-19 Han-Wen Nienhuys  <hanwen@xs4all.nl>
5472
5473         * lily/tie-formatting-problem.cc (generate_configuration): make
5474         large ties avoid stafflines in the horizontal section.
5475         (score_configuration): use softcoded penalties
5476         (score_aptitude): idem.
5477
5478         * lily/tie-helper.cc (from_grob): softcode tie details
5479
5480         * lily/staff-symbol-referencer.cc (on_staff_line): new function
5481
5482         * lily/staff-symbol-referencer.cc (on_line): rename from
5483         on_staffline 
5484
5485 2006-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5486
5487         * ly/music-functions-init.ly: remove duplicate tag.
5488
5489         * lily/include/*.hh: GCC 4.1 fixes.
5490
5491 006-01-16  Erlend Aasland  <erlenda@gmail.com>
5492
5493         * Documentation/user/global.itely: fix typos; @bugs -> @refbugs
5494
5495         * scm/define-music-types.scm: fix bug in desc. string
5496         for OverrideProperty
5497
5498 2006-01-15 Erik Sandberg  <mandolaerik@gmail.com>
5499
5500         * scripts/lilypond-book.py: bugfix
5501
5502         * scm/define-music-types.scm: fix typos.
5503
5504 2006-01-14  Graham Percival  <gpermus@gmail.com>
5505
5506         * Documentation/user/ basic-notation.itely, global.itely,
5507         advanced-notation.itely, instrument-notation.itely: small
5508         additions (bugs and commonly tweaked properties).
5509
5510 2006-01-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5511
5512         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): generic
5513         detection of mingw build.
5514         (MINGW_BUILD): opps.
5515
5516 2006-01-12  Jan Nieuwenhuizen  <janneke@gnu.org>
5517
5518         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Add
5519         i686-mingw32.
5520
5521 2006-01-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5522
5523         * scm/music-functions.scm (skip->rest): add skip->rest
5524
5525 2006-01-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5526
5527         * lily/font-config.cc (init_fontconfig): call FcConfigBuildFonts()
5528         explicitly.
5529
5530         * lily/font-config-scheme.cc (LY_DEFINE): also display font and
5531         config dirs. Aids debugging. 
5532         (display_config): also display config files.
5533
5534 2006-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5535
5536         * VERSION: release 2.7.27
5537
5538         * lily/bar-line.cc (calc_bar_size): inspect staff->extent (Y_AXIS)
5539         for determining bar size.
5540
5541         * lily/staff-symbol.cc (print): place lines at distance line-positions
5542
5543         * scm/define-grob-properties.scm (all-user-grob-properties): add
5544         line-positions.
5545
5546         * lily/staff-symbol.cc (height): new function.
5547
5548         * input/regression/staff-line-positions.ly:  new file.
5549
5550 2006-01-06  Graham Percival  <gpermus@gmail.com>
5551
5552         * input/test/add-staccato.ly: remove reference to old file.
5553
5554 2006-01-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5555
5556         * scripts/lilypond-book.py (invokes_lilypond): allow . in path to
5557         lilypond binary too.
5558
5559 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5560
5561         * make/mutopia-rules.make (Module): use LILYPOND_BINARY
5562
5563 2006-01-06  Jan Nieuwenhuizen  <janneke@gnu.org>
5564
5565         * scripts/midi2ly.py: Bugfix: Declare datadir.
5566
5567         * make/ly-rules.make:
5568         * make/mutopia-rules.make: Use LILYPOND_BINARY (WAS: LILYPOND, but
5569         that seems to be gone). Fixes make web.
5570
5571         * The grand 2005-2006 replace.
5572
5573         * VERSION (MY_PATCH_LEVEL): Stay on .26 for now.
5574
5575 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5576
5577         * make/lilypond-vars.make: set LILYPOND_BINARY variable
5578         (LILYPOND_BOOK_LILYPOND_FLAGS): new variable
5579         LILYPOND_BOOK_LILYPOND_FLAGS to hold system dependent settings,
5580         like -dgs-font-load.
5581
5582         * Documentation/user/GNUmakefile ($(outdir)/interfaces.itexi):
5583         remove absolute path to lilypond binary.
5584         
5585 2006-01-05 Pedro Kroeger    <kroeger@pedrokroeger.net>
5586
5587         * configure.in (NCSB_DIR): fix --with-ncsb-dir option.
5588
5589 2006-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5590
5591         * make/lilypond-vars.make: support LILYPOND_EXTERNAL_BINARY variable.
5592
5593         * mf/GNUmakefile: remove broken dvips map symlink.
5594
5595 2006-01-04  Jan Nieuwenhuizen  <janneke@gnu.org>
5596
5597         * lily/main.cc: 
5598         * configure.in: Cosmetic fixes.
5599
5600 2006-01-04  Mats Bengtsson  <mabe@s3.kth.se>
5601
5602         * Documentation/user/music-glossary.tely (Pitch names): Added
5603         Spanish pitch names and durations, thanks to Ernesto Gancedo
5604
5605 2006-01-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5606
5607         * scm/lily.scm (define-scheme-options): use quasi-quote for option
5608         init. Fixes verbose printing of .scm files.
5609
5610         * stepmake/aclocal.m4: add spaces before - options.
5611         
5612 2006-01-03  Jan Nieuwenhuizen  <janneke@gnu.org>
5613
5614         * lily/relocate.cc (setup_paths): Bugfix: do not store result
5615         of path search in local block variable.
5616
5617 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5618
5619         * configure.in (NCSB_DIR): --enable-ncsb-dir
5620         (LINK_GXX_STATICALLY): denko.
5621
5622         * mf/GNUmakefile ($(NCSB_TTFS)): NCSB_DIR iso. NCSB_PATH. 
5623
5624         * configure.in (LINK_GXX_STATICALLY): --enable-ncsb-path option. 
5625         use locate to find c059033l.pfb. 
5626         
5627 2006-01-02  Jan Nieuwenhuizen  <janneke@gnu.org>
5628
5629         * lily/tie-formatting-problem.cc
5630         (problem::generate_base_chord_configuration): Use my_round (was
5631         round).
5632
5633         * lily/source-file.cc (file::get_counts)[!HAVE_MBRTOWC]: Bugfix,
5634         do not invoke mbrtowc.
5635
5636         * lily/relocate.cc (setup_paths): Add more debugging verbosity.
5637
5638 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5639
5640         * scm/lily.scm (lilypond-all): oops. remove debugging hack.
5641
5642 2005-01-02  Heikki Junes  <hjunes@cc.hut.fi>
5643
5644         * Documentation/user/invoking.itely (svg): revise.
5645
5646 2006-01-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5647
5648         * lily/lexer.ll: use sourcefilename iso. renameinput.
5649
5650 2006-01-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5651
5652         * mf/GNUmakefile ($(NCSB_TTFS)): revise rule. Create
5653         <PostScriptName>.ttf instead of c059XXXttf.
5654
5655         * lily/program-option.cc (LY_DEFINE): special support for
5656         --verbose, so it works before option init too.
5657  
5658         * mf/GNUmakefile (local-install): oops.
5659
5660         * lily/lyric-hyphen.cc (print): oops.
5661
5662         * buildscripts/pfx2ttf.fontforge: new file.
5663         
5664         * mf/GNUmakefile (NCSB_PATH): add vars for NCSB.
5665         ($(outdir)/%.ttf): new rule. 
5666
5667         * scm/define-grobs.scm (all-grob-descriptions): add font-interface
5668         to LyricHyphen.
5669
5670         * lily/lyric-hyphen.cc (print): multiply hyphen height by
5671         font-size
5672
5673 2005-12-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5674
5675         * VERSION: release 2.7.26
5676         
5677         * mf/GNUmakefile (install-fc-cache): remove old font.cache-1 files.
5678
5679 2005-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5680
5681         * lily/font-config.cc (init_fontconfig): verbosity.
5682
5683         * THANKS: add Muziekacademie Lede. 
5684
5685         * scripts/musicxml2ly.py (print_voice_definitions): new function 
5686         (print_score_setup): new function
5687         (convert): read part definition to output staves properly.
5688
5689         * python/musicxml.py (Measure.get_notes): new class. Wrap lists of
5690         Music_xml notes.
5691
5692         * python/musicexp.py (Output_printer.__init__): use _ in data
5693         members.
5694         (Output_printer.unformatted_output): new function: no formatting,
5695         but count braces.
5696         (Duration.get_length): remove isinstance() checks for
5697         Output_printer everywhere.
5698
5699         * input/regression/lyrics-bar.ly (texidoc): add
5700         Separating_line_group_engraver.
5701
5702 2005-12-29  Jan Nieuwenhuizen  <janneke@gnu.org>
5703
5704         * lily/relocate.cc (framework_relocation): New function,
5705         factored from set_relocation ().
5706         (prefix_relocation): Rename from set_relocation ().
5707         (setup_paths): Use it.
5708
5709 2005-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5710
5711         * scm/*.scm: use LEFT/RIGHT/UP/DOWN etc. iso. magical
5712         numbers. Patch by Erlend Aasland.
5713
5714 2005-12-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5715
5716         * lily/font-config.cc (init_fontconfig): print warning if cache
5717         file is not existant.
5718
5719         * lily/main.cc: don't use #ifdef but #if
5720
5721 2005-12-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5722
5723         * lily/grob-property.cc (internal_set_property): don't abort on
5724         calculation-in-progress.
5725
5726         * lily/beam.cc (get_default_dir): robustness: don't divide by zero.
5727
5728         * lily/tuplet-bracket.cc (calc_control_points): oops: typo. Read
5729         connect-to-neighbor property not connect-to-other
5730
5731         * lily/program-option.cc (LY_DEFINE): remove Protected_scm global variable.
5732         (LY_DEFINE): oops. don't forget protection.
5733
5734         * flower/parse-afm.cc (Module): strip AFM handling completely.
5735
5736         * lily/stencil-expression.cc: idem.
5737
5738         * lily/grob-interface-scheme.cc (LY_DEFINE): idem.
5739
5740         * lily/function-documentation.cc (ly_add_function_documentation):
5741         use static member iso. Protected_scm
5742
5743         * lily/main.cc: use ifdef ARGV0_RELOCATION iso. MINGW
5744
5745         * config.make.in (prefix): remove HAVE_KPATHSEA_SO
5746
5747 2005-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
5748
5749         * lily/relocate.cc (set_env_dir): New function.
5750         (set_relocation): Use it to fix setting PANGO_PREFIX.
5751
5752 2005-12-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5753
5754         * input/regression/stem-direction-context.ly: remove rest.
5755
5756         * lily/melody-engraver.cc (process_music): restart for bar lines.
5757         (acknowledge_slur): restart for slurs.
5758
5759 2005-12-27  Heikki Junes  <hjunes@cc.hut.fi>
5760
5761         * Documentation/user/invoking.itely: describe how to view SVG 
5762         output using Inkscape which replace embedded fonts with OTF fonts.
5763
5764 2005-12-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5765
5766         * lily/relocate.cc (set_relocation): set PANGO_PREFIX
5767
5768 2005-12-23  Jan Nieuwenhuizen  <janneke@gnu.org>
5769
5770         * lily/melody-engraver.cc (class Melody_engraver): Remove lying
5771         comment.
5772
5773 2005-12-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5774
5775         * VERSION (PACKAGE_NAME): release 2.7.25
5776
5777         * Documentation/topdocs/NEWS.tely (Top): document new feature.
5778
5779         * input/regression/stem-direction-context.ly: new file.
5780
5781         * lily/relocate.cc (set_relocation): add PANGO_PREFIX
5782
5783         * lily/melody-engraver.cc (acknowledge_stem): restart MelodyItem
5784         on rest.
5785
5786         * ly/engraver-init.ly: add Melody_engraver
5787
5788         * lily/beam.cc (calc_direction): use default-direction
5789         iso. get_default_direction()
5790
5791         * scm/define-grob-properties.scm (all-user-grob-properties): add
5792         default-direction property.
5793
5794         * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem.
5795
5796         * lily/stem.cc (calc_default_direction): remove
5797         Stem::get_default_direction, use default-direction with callback
5798         instead.
5799
5800         * lily/melody-spanner.cc (calc_neutral_stem_direction): 
5801
5802         * lily/melody-engraver.cc: new file. Acknowledge stems for
5803         interpolated stem directions. 
5804
5805         * lily/melody-spanner.cc: new file. Interpolate stem directions.
5806
5807         * scm/define-grobs.scm (all-grob-descriptions): add MelodyItem
5808
5809         * lily/slur-configuration.cc (fit_factor): more robust check for
5810         point in curve X-extent.
5811
5812         * lily/slur.cc (outside_slur_callback): return offset_scm, not 0.
5813         (outside_slur_callback): check for 'outside avoidance.
5814
5815         * lily/slur-configuration.cc (score_extra_encompass): don't use
5816         bound->column() == avoid->column() for checking extents, as this
5817         doesn't work for accidentals. 
5818
5819         * lily/slur-engraver.cc (acknowledge_extra_object): remove
5820         DynamicText hardcoding.
5821
5822         * lily/slur-scoring.cc (enumerate_attachments): robustness: don't
5823         crash if bound stem is NULL
5824
5825         * lily/piano-pedal-performer.cc: patch by MWD for enabling piano
5826         pedals.
5827
5828 2005-12-22  Graham Percival  <gpermus@gmail.com>
5829
5830         * scm/define-markup-commands.scm: typo.  @code{\raise}
5831         => @code{\\raise}.
5832
5833         * darwin.patch: now used again, includes a
5834         required patch from fink.
5835
5836 2005-12-21  Heikki Junes  <hjunes@cc.hut.fi>
5837
5838         * po/TODO: mention gtranslator along with kbabel.
5839         * po/fi.po: update translations.
5840
5841 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
5842
5843         * lily/relocate.cc (setup_paths): Bugfix.
5844
5845 2005-12-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5846
5847         * lily/slur-configuration.cc (score_extra_encompass): don't use
5848         "avoid" choice for avoid-slur.
5849
5850         * stepmake/bin/install.py (dest): don't create existing dir.
5851
5852 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
5853
5854         * stepmake/bin/install.py: Remove file before copying.
5855
5856         * config.make.in: 
5857         * stepmake/aclocal.m4: Do not substitute INSTALL.
5858
5859 2005-12-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5860
5861         * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
5862         depend on link-tree.
5863
5864         * lily/relocate.cc (setup_paths): only check path for non-absolute
5865         dir without directory part.
5866
5867         * flower/file-name.cc (is_absolute):  new method.
5868         (is_absolute): check root_ too.
5869
5870 2005-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
5871
5872         * lily/relocate.cc (setup_paths) [__MINGW32__]: Comment-out broken
5873         relocation code.  Oops, don't comment out too much.
5874
5875         * stepmake/stepmake/generic-vars.make (INSTALL): Assign INSTALL_PY
5876         iso itself.
5877
5878         * lily/relocate.cc [HAVE_GETTEXT]: Include libintl.h.  Fixes mingw
5879         compile.
5880
5881 2005-12-20  Jan Nieuwenhuizen  <janneke@gnu.org>
5882
5883         * .cvsignore: Add install-sh.
5884
5885         * autogen.sh (srcdir): Typo.
5886
5887 2005-12-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5888
5889         * autogen.sh (srcdir): urg. Touch install-sh.
5890
5891         * stepmake/bin/install-sh (Module): remove.
5892
5893         * stepmake/stepmake/generic-vars.make (INSTALL): add $(INSTALL).
5894
5895         * lily/include/relocate.hh: new file.
5896
5897         * lily/relocate.cc: new file. Contain relocation logic.
5898
5899         * lily/main.cc (setup_paths): fix: LILYPOND_RELOCATE_PREFIX.
5900         (main): read LILYPOND_VERBOSE as the first thing.
5901
5902         * stepmake/aclocal.m4: remove INSTALL variable.
5903
5904         * GNUmakefile.in ($(tree-share-prefix)/mf-link-tree link-mf-tree):
5905         separate target for making font symlinks.
5906         (documentation-dir): use $(if $(findstring )) for switching off
5907         Documentation.
5908
5909         * stepmake/stepmake/help2man-vars.make (OUT_DIST_FILES): only do
5910         something if DOCUMENTATION is no.
5911
5912 2005-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5913
5914         * VERSION: release 2.7.24
5915
5916         * lily/script-column-engraver.cc (stop_translation_timestep):
5917         delay adding to script-column.
5918
5919         * lily/tuplet-bracket.cc (print): suicide if no control-points. 
5920
5921         * python/convertrules.py (conv): rule for number-visibility
5922
5923         * lily/slur-configuration.cc (score_extra_encompass): different
5924         distance measure for avoid and inside avoidance.
5925         (score_extra_encompass): use 1/(distance+eps) as penalty.
5926
5927         * lily/slur-scoring.cc (generate_avoid_offsets): use 'inside
5928         encompass objects for generating slur curves.
5929
5930         * lily/slur.cc: use details iso. slur-details property.
5931
5932         * input/regression/slur-tuplet.ly: new file.
5933
5934         * lily/slur-engraver.cc (acknowledge_tuplet_number): new function.  
5935
5936         * flower/include/offset.hh (class Offset): new operator /=
5937
5938         * lily/tuplet-number.cc (print): new file, new interface.
5939
5940         * scm/define-grob-properties.scm (all-user-grob-properties):
5941         remove number-visibility property.
5942
5943         * lily/tuplet-bracket.cc (calc_control_points): new function
5944         (calc_connect_to_neighbors): new function.
5945         (print): remove text handling for tuplet numberdef.
5946
5947         * lily/tuplet-engraver.cc (struct Tuplet_description): create
5948         TupletNumbers too. 
5949
5950         * lily/lily-guile.cc (robust_scm2booldrul): new function
5951
5952         * scm/define-grobs.scm (all-grob-descriptions): new grob TupletNumber
5953
5954         * lily/tuplet-bracket.cc (calc_position_and_height): use
5955         staff-padding to control whether tuplet brackets are over staves.
5956
5957         * lily/grob.cc (suicide): clear dim_caches_.
5958
5959         * lily/dimension-cache.cc (clear): new function.
5960
5961         * lily/grob.cc (extent): swap order of min-extent and extent
5962         calculations. This fixes hara kiri staves. 
5963
5964 2005-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
5965
5966         * lily/main.cc: Nitpick: relocation is not based on path, but on
5967         directory (location).
5968
5969 2005-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5970
5971         * lily/main.cc (setup_paths): read LILYPOND_RELOCATE_PREFIX
5972
5973         * stepmake/stepmake/install-targets.make (local-uninstall): idem.
5974
5975         * stepmake/stepmake/install-out-targets.make (local-install-outfiles): idem.
5976
5977         * stepmake/stepmake/help2man-targets.make (install-help2man): idem.
5978
5979         * stepmake/stepmake/generic-vars.make (Module): idem.
5980
5981         * stepmake/stepmake/executable-targets.make (default): use it.
5982
5983         * stepmake/bin/install.py (create_dir): new file. Replace install-sh.
5984
5985         * make/GNUmakefile: don't install make rules.
5986
5987         * lily/main.cc (setup_paths): don't inspect $PATH for argv0 with
5988         slashes.
5989         (prepend_env_path): more verbosity.
5990
5991 2005-12-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
5992
5993         * GNUmakefile.in: add dir argument for find command.
5994
5995         * lily/parser.yy (bass_figure): set_spot() for bass figures. This
5996         fixes weird line numbers for point & click.
5997
5998         * lily/source-file.cc (get_counts): init line/column/char counts.
5999
6000 2005-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6001
6002         * lily/main.cc: remove ARGV0_RELOCATION, instead use --relocate.
6003
6004 2005-12-16  Graham Percival  <gpermus@gmail.com>
6005
6006         * Documentation/user/basic-notation.itely, advanced-notation.itely:
6007         minor fixes from Fredric.  Thanks!
6008
6009 2005-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6010
6011         * ly/music-functions-init.ly: add \bar and \clef music function 
6012
6013         * lily/lily-lexer.cc: idem.
6014
6015         * lily/parser.yy (FIXME): remove BAR and CLEF.
6016
6017 2005-12-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6018
6019         * Documentation/topdocs/NEWS.tely (Top): doc string argument change.
6020
6021         * lily/parser.yy (Generic_prefix_music_scm): allow strings as
6022         function arguments too
6023
6024         * lily/main.cc (set_relocation): new function.
6025
6026         * scripts/musicxml2ly.py (convert): add \version
6027
6028         * lily/tie.cc: remove get_default_attachments()
6029
6030         * VERSION (PACKAGE_NAME): release 2.7.23
6031         
6032         * lily/chord-tremolo-engraver.cc (acknowledge_stem): use
6033         ultimate_music_cause(). This fixes core dumps in unfold-all-repeats.ly
6034
6035         * Documentation/topdocs/NEWS.tely (Top): document new feature.
6036
6037         * lily/tie-formatting-problem.cc (score_ties): new function
6038         (get_variations): new function. Try flipping dirs for collisions.
6039         (generate_optimal_chord_configuration): new function. 1-opt search
6040         for better configuration.
6041
6042         * lily/tie-configuration.cc: new file.
6043
6044         * lily/tie.cc: junk Tie::get_configuration()
6045
6046         * lily/tie-formatting-problem.cc (score_ties_aptitude): new function.
6047         (score_ties_configuration): new function.
6048         (generate_ties_configuration): new function.
6049         (generate_base_chord_configuration): new function.
6050         (set_ties_config_standard_directions): Move body from tie-column-format.cc 
6051         (set_manual_tie_configuration): Move body from tie-column-format.cc 
6052
6053         * input/regression/tie-dot.ly: new file.
6054
6055         * lily/tie-formatting-problem.cc (score_configuration): score
6056         tie/dot collisions.
6057
6058         * lily/tie-helper.cc (get_transformed_bezier): new function
6059
6060         * Documentation/topdocs/NEWS.tely (Top): strip out-www.
6061
6062         * stepmake/stepmake/python-module-vars.make (SHARED_FLAGS): use
6063         -undefined suppress iso. -framework Python 
6064
6065         * scm/define-grobs.scm (all-grob-descriptions): set
6066         springs-and-rods (thanks Joe Neeman!)
6067
6068 2005-12-12  Nicolas Sceaux  <nicolas.sceaux@free.fr>
6069
6070         * input/no-notation/display-lily-tests.ly (test): 
6071         * scm/display-lily.scm (tag->lily-string): the syntax for tags has
6072         changed from \tag #'(a b) to \tag #'a \tag #'b
6073
6074 2005-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6075
6076         * Documentation/topdocs/NEWS.tely: strip out-www.
6077
6078         * lily/include/grob-interface.hh: include lily-guile.hh not libguile.h
6079
6080         * config.make.in (AR): add AR and RANLIB
6081
6082         * flower/libc-extension.cc: include cassert
6083
6084         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): more robust
6085         darwin check.
6086
6087 2005-12-11  Graham Percival  <gpermus@gmail.com>
6088
6089         * stepmake/stepmake/generic-vars.make: define DARWIN_BUILD.
6090
6091         * stepmake/stepmake/python-modules-vars.make: define
6092         SHARED_FLAGS for OSX.  Thanks Johannes Schindelin!
6093
6094         * THANKS: added Johannes Schindelin.
6095
6096 2005-12-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6097
6098         * python/midi.c (pymidi_parse): use memcmp() iso. strcmp().
6099
6100         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
6101         Span_arpeggio_engraver, add Tweak_engraver to Score context. 
6102
6103         * lily/parser.yy: reorganize file layout.
6104
6105         * ly/music-functions-init.ly: add tweak music function.
6106
6107         * lily/grob-info.cc (ultimate_music_cause): new function:
6108         recursively lookup causes. 
6109
6110         * lily/parser.yy (chord_body_element): allow music functions for
6111         post-events, allow music functions for chord elements. 
6112  
6113         * lily/font-config-scheme.cc (display_fontset): add cast.
6114
6115         * python/convertrules.py (FatalConversionError.sub_syms): \tag
6116         #'(a b) -> \tag #'a \tag #'b rule.
6117
6118         * python/musicexp.py (Output_printer.dump_version): new function
6119
6120 2005-12-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6121
6122         * lily/parser.yy (FIXME): remove \tag
6123         (FIXME): remove tag_music() function.
6124
6125         * lily/lily-lexer.cc: remove \tag
6126
6127         * ly/music-functions-init.ly: define music-function "tag"
6128
6129         * lily/parser.yy (chord_body_element): allow tags in chord bodies.
6130
6131 2005-12-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6132
6133         * VERSION (PATCH_LEVEL): release 2.7.22
6134
6135         * input/regression/lyric-hyphen-retain.ly: renew.
6136
6137         * scm/define-grobs.scm (all-grob-descriptions): add LyricSpace
6138         grob
6139
6140         * lily/lyric-hyphen.cc (set_spacing_rods): use minimum-distance
6141         iso. minimum-length property for rods.
6142
6143         * lily/hyphen-engraver.cc (acknowledge_lyric_syllable): create
6144         LyricSpace item to keep lyrics spaced apart.
6145
6146         * ly/engraver-init.ly: remove Separating_line_group_engraver
6147
6148         * Documentation/user/music-glossary.tely: do setfilename before
6149         music-glossary.
6150
6151 2005-12-07  Heikki Junes  <hjunes@cc.hut.fi>
6152
6153         * Documentation/user/lilypond-book.itely: use `,´ after xref:
6154         See xref documentation, for example.
6155
6156 2005-12-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6157
6158         * scripts/musicxml2ly.py (musicxml_voice_to_lily_voice): use
6159         pending_skip iso. ly_voice[-1]
6160         (main): add if __main__ for debugging.
6161
6162         * python/musicxml.py (Accidental.__init__): new class.
6163
6164         * scripts/musicxml2ly.py (progress): new function
6165         (musicxml_key_to_lily): don't barf on modeless keys.
6166         (create_skip_music): new function.
6167         (musicxml_spanner_to_lily_event): new function. Handle beams too.
6168         (musicxml_note_to_lily_main_event): new function.
6169
6170         * python/musicexp.py (Music.__init__): add comment field.
6171         (NestedMusic.append): new routine.
6172         (SequentialMusic.print_ly): print comment.
6173         (ArpeggioEvent.ly_expression): new class
6174         (BeamEvent.ly_expression): new class
6175         (NoteEvent.__init__): support for cautionary/forced accs.
6176
6177         * lily/lookup.cc (slur): normal order for array loop.
6178
6179         * scm/framework-ps.scm (dump-stencil-as-EPS): set left X of bbox
6180         to 0.0.
6181
6182         * ly/engraver-init.ly: set bar-size, so bar-lines aren't
6183         collapsed.
6184
6185 2005-12-06 Erik Sandberg  <mandolaerik@gmail.com>
6186
6187         * scm/music-functions.scm: Make phrasing slurs follow voice direction
6188
6189         * scripts/lilypond-book.py: Introduce option
6190             --preserve-line-breaks, for usage with srcltx
6191
6192 2005-12-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6193
6194         * scm/output-lib.scm (print-circled-text-callback): draw circle
6195         around text using make-circle-markup.
6196
6197         * Documentation/user/*: strip out-www from file names.
6198
6199 2005-12-05  Heikki Junes  <hjunes@cc.hut.fi>
6200
6201         * Documentation/user/lilypond.tely (direntry): remove empty lines;
6202         fixes invalid info entry issue with makeinfo 4.8 in debian sid.
6203
6204 2005-12-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6205
6206         * Documentation/user/GNUmakefile: idem.
6207
6208         * Documentation/user/macros.itexi: strip out-www
6209
6210         * python/rational.py: python 2.3 compat.
6211
6212         * VERSION (PATCH_LEVEL): release 2.7.21
6213
6214         * scripts/musicxml2ly.py (NonDentedHeadingFormatter.format_headi):
6215         option formatting, lilypond style.
6216
6217         * python/musicexp.py: grab from Ikebana: a library for composing
6218         ly music expressions. 
6219         (Output_printer): class for advanced .ly printing.
6220         (eg. tupletting) 
6221
6222         * python/musicxml.py: new file. Read MusicXML MiniDOM tree, and
6223         convert to pythonesque structure.
6224
6225         * python/rational.py: PD rational number class.
6226
6227         * Documentation/user/converters.itely (Invoking musicxml2ly):  new node.
6228
6229 2005-12-04  Erik Sandberg  <mandolaerik@gmail.com>
6230
6231         * lily/part-combine-iterator.cc: Minor bugfix
6232         
6233         * THANKS: Update bughunters
6234
6235 2005-12-02  Werner Lemberg  <wl@gnu.org>
6236
6237         * mf/README: Document process for proper mf2pt1 conversion.
6238
6239         * mf/feta-beugel.mf (draw_brace): Fix path to assure clean
6240         overlapping.
6241
6242         * mf/feta-harmonica.mf: Removed.  Unused.
6243
6244 2005-12-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6245
6246         * scripts/lilypond-book.py (do_file): fix thinkos.
6247
6248 2005-12-01  Jan Nieuwenhuizen  <janneke@gnu.org>
6249
6250         * lily/GNUmakefile ($(outdir)/FlexLexer.h):
6251         ($(outdir)/parser.cc): 
6252         ($(outdir)/lexer.cc): Bugfix: depend on config.h.
6253
6254 2005-11-30  Pedro Kröger  <kroeger@pedrokroeger.net>
6255
6256         * ly/titling-init.ly (tagline): it should be a space between
6257         "Music engraving by LilyPond" and the version number.
6258
6259 2005-12-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6260
6261         * VERSION (PACKAGE_NAME): release 2.7.20
6262
6263 2005-11-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6264
6265         * scm/define-markup-commands.scm (pad-to-box): new markup command.
6266
6267         * scm/define-grobs.scm (all-grob-descriptions): set thickness to
6268         1.0.
6269         (all-grob-descriptions): don't shift RehearsalMark arbitrarily.
6270
6271 2005-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6272
6273         * configure.in (LINK_GXX_STATICALLY): remove kpathsea checks.
6274
6275         * kpath-guile/: remove directory
6276
6277         * scm/kpathsea.scm (ly:kpathsea-expand-variable): new
6278         file. Encapsulate kpathsea using commandline tools.
6279
6280         * lily/all-font-metrics.cc (kpathsea_find_file): use (scm
6281         kpathsea) module.
6282
6283 2005-11-29  Mats Bengtsson  <mabe@s3.kth.se>
6284
6285         * Documentation/user/advanced-notation.itely (Setting automatic
6286         beam behavior): Correct a few typos. Thanks to David Bobroff.
6287
6288         * scripts/lilypond-book.py (LATEX_INSPECTION_DOCUMENT): Use
6289         \usepackage instead of \RequirePackage. Thanks to Bernard Hurley.
6290
6291 2005-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6292
6293         * scripts/*.py: gmane address for bugs.
6294
6295 2005-11-28 Pal Benko <benkop@freestart.hu>
6296         
6297         * make/ly-rules.make: add -f switch to mv
6298
6299         * scm/output-libs.scm: add new bar symbol "." for punctus divisionis
6300
6301         * lily/bar-line.cc: interpret it
6302
6303 2005-11-28  Jan Nieuwenhuizen  <janneke@gnu.org>
6304
6305         * configure.in (--disable-documentation): New switch.
6306
6307         * GNUmakefile.in: Use it.
6308
6309         * stepmake/aclocal.m4: Use AC_ARG_ENABLE for kpatsea.
6310
6311 2005-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6312
6313         * scripts/lilypond-book.py (do_file): search chunks for
6314         \\begin{document}
6315
6316         * GNUmakefile.in: add copy step in between so we can lose the
6317         out-www directories.
6318
6319 2005-11-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6320
6321         * lily/pango-font.cc (pango_item_string_stencil): put
6322         geometry.width into glyph-string too.
6323
6324 2005-11-26  Nicolas Sceaux  <nicolas.sceaux@free.fr>
6325
6326         * scm/define-music-display-methods.scm (RevertProperty):
6327         (OverrideProperty): Use grob-property-path property, a list of
6328         symbols, instead of grob-property, which used to be a single
6329         symbol.
6330         (BassFigureEvent): a figure can be a plain number, not necessarily a
6331         markup.
6332
6333 2005-11-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6334
6335         * VERSION: release 2.7.19
6336         
6337         * lily/figured-bass-engraver.cc (process_music): check
6338         figuredBassCenterContinuations first.
6339
6340         * scm/translation-functions.scm (format-bass-figure): make double
6341         sharp larger. 
6342
6343         * lily/mark-engraver.cc: read rehearsalMarkAlignSymbol to
6344         determine X-parent.
6345
6346         * lily/system-start-delimiter-engraver.cc: move from
6347         Nested_system_start_delimiter_engraver, rename
6348         Nested_system_start_delimiter_engraver ->
6349         System_start_delimiter_engraver.
6350
6351         * lily/nested-system-start-delimiter-engraver.cc (from_list): read
6352         bracket type from hierarchy.
6353
6354 2005-11-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6355
6356         * lily/rest.cc (y_offset_callback): read staff-position.
6357
6358         * scm/define-grob-properties.scm (all-user-grob-properties): don't
6359         mark after-line-breaking-callback as internal.
6360
6361         * lily/self-aligment-interface.cc: remove self-[XY]-offset.
6362
6363 2005-11-25  Werner Lemberg  <wl@gnu.org>
6364
6365         * mf/feta-banier.mf ("d3"): Make `flare' equal to `staff_space'.
6366
6367 2005-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6368
6369         * stepmake/bin/add-html-footer.py (do_file): add google
6370
6371         * lily/staff-symbol-engraver.cc (process_music): bugfix: stop
6372         staff if first_start_ is true.
6373
6374 2005-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6375
6376         * scripts/midi2ly.py (split_track): add __repr__ members.
6377         (track_first_item): only return Item if not None. This fixes a
6378         problem when dumping a track that starts with an empty channel.
6379
6380         * python/midi.c: doc module.
6381
6382 2005-11-22  Mats Bengtsson  <mabe@s3.kth.se>
6383
6384         * Documentation/user/global.itely (Creating MIDI files): Fix
6385         compilation problem.
6386
6387 2005-11-22  Graham Percival  <gpermus@gmail.com>
6388
6389         * Documentation/user/basic-notation.itely: clarify dynamic
6390         padding text.
6391
6392         * Documentation/user/advanced-notation.itely: add unicode
6393         escape control example, whatever that is.  :)
6394
6395         * Documentation/user/global.itely: added "removing dynamics
6396         from MIDI" code.
6397
6398 2005-11-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6399
6400         * VERSION (PATCH_LEVEL): release 2.7.18
6401
6402         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): replace
6403         System_start_delimiter_engraver by
6404         Nested_system_start_delimiter_engraver.
6405
6406         * lily/nested-system-start-delimiter-engraver.cc (struct
6407         Bracket_nesting_node): new class.
6408         (struct Bracket_nesting_group): new class
6409         (struct Bracket_nesting_staff): new class.
6410         (process_music): create hierarchy of grobs. This allows separate
6411         tuning of different SSDs. 
6412
6413         * scm/define-grobs.scm (all-grob-descriptions): new Grob SystemStartSquare
6414         (all-grob-descriptions): remove old NestedSystemStartDelimiter.
6415
6416 2005-11-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6417
6418         * lily/side-position-interface.cc (aligned_side): multiply
6419         staff_radius by 2.
6420
6421         * lily/script-engraver.cc (make_script_from_event): allow setting
6422         values to '()
6423
6424 2005-11-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6425
6426         * lily/system-start-delimiter.cc (line_bracket): don't shorten height.
6427
6428         * scm/define-grobs.scm (all-grob-descriptions): new grob
6429         NestedSystemStartDelimiter.
6430
6431         * input/regression/system-start-heavy-bar.ly: new file.
6432
6433         * lily/nested-system-start-delimiter-engraver.cc: new file.
6434
6435         * lily/nested-system-start-delimiter.cc: new file.
6436
6437         * input/regression/system-start-nesting.ly: new file.
6438
6439         * scm/define-grobs.scm (all-grob-descriptions): use X side
6440         positioning for positioning braces for nested contexts.
6441
6442         * lily/system-start-delimiter.cc (print): don't divide extent by
6443         staff_space.
6444         (print): use style iso. glyph.
6445         (staff_bracket): translate glyph inside routine already.
6446
6447 2005-11-18  Michael Welsh Duggan <md5i@cs.cmu.edu>
6448
6449         * lily/vaticana-ligature-engraver.cc: fixed 2 typos in glyph
6450         names.
6451
6452 2005-11-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6453
6454         * scm/define-context-properties.scm
6455         (all-user-translation-properties): rename figuredBassFormatter
6456         from newFiguredBassFormatter.
6457
6458         * scm/define-grobs.scm (all-grob-descriptions): move from NewBassFigure
6459
6460         * lily/figured-bass-engraver.cc: move from new-figured-bass-engraver.cc
6461
6462         * lily/stem.cc (calc_stem_info): trigger beaming calculation.
6463
6464         * lily/beam.cc (calc_beaming): new function.
6465         (calc_shorten): new function.
6466
6467         * THANKS: add Edward Neeman.
6468
6469         * input/regression/accidental-clef-change.ly: new file.
6470
6471         * lily/note-collision.cc (check_meshing_chords): don't merge fa heads.
6472
6473         * scm/define-grobs.scm (all-grob-descriptions): add Y-offset property.
6474
6475         * lily/clef-engraver.cc (inspect_clef_properties): reset
6476         localKeySignature for clef changes.
6477
6478 2005-11-17  Mats Bengtsson  <mabe@s3.kth.se>
6479
6480         * python/midi.c: PyMIDINIT_FUNC isn't defined in Python < 2.3 
6481         add dummy definition that works in Linux and add information in
6482         INSTALL.texi on the specific Python requirements for Cygwin/Mingw.
6483
6484         * Documentation/user/changing-defaults.itely (Modifying context
6485         plug-ins): Add index for \with.
6486
6487         * Documentation/user/music-glossary.tely (dal segno): Updated
6488         example to version >=2.6.
6489
6490 2005-11-16  Mats Bengtsson  <mabe@s3.kth.se>
6491
6492         * Documentation/user/instrument-notation.itely (Printing chord
6493         names): Reorder \chordmode and \repeat in one example.
6494
6495 2005-11-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6496
6497         * VERSION: release 2.7.17
6498         
6499         * Documentation/topdocs/NEWS.tely (Top): add note about
6500         refactoring.
6501
6502         * lily/tie-formatting-problem.cc (find_optimal_tie_configuration):
6503         new function. Search region of 3 positions for best tie.
6504         (score_configuration): new function.
6505         (score_aptitude): new function.
6506         (generate_configuration): new function.
6507         (get_configuration): new function.
6508         (Tie_formatting_problem): new function
6509
6510         * input/regression/page-top-space.ly: a6 for page-top-space demo. 
6511
6512         * stepmake/aclocal.m4: use $(if ) for config-FOOF.make
6513
6514         * THANKS: add Eduardo Vieira & Ralph Little
6515
6516         * mf/feta-bolletjes.mf (solfa_quarter_width): make solfa heads
6517         narrower.
6518
6519         * lily/include/tie-formatting-problem.hh (class
6520         Tie_formatting_problem): add Tie_details to
6521         Tie_formatting_problem. Update calling conventions.
6522
6523         * stepmake/aclocal.m4: oops. Include $CONFIGFILE.make, not
6524         config.make.
6525
6526         * Documentation/user/lilypond.tely: remove musedata2ly entry.
6527
6528 2005-11-16  Jürgen Reuter  <reuter@ipd.uka.de>
6529
6530         * lily/ligature-engraver.cc, lily/include/ligature-engraver.hh,
6531         scm/define-context-properties.scm: Maintenance bugfix: make
6532         ligature brackets work again by removing obsolete ligature
6533         primitive callback push/pop.
6534
6535         * scm/define-grobs.scm (LigatureBracket): Maintenance bugfix: do
6536         not call Tuplet_bracket::calc_direction.  Removed obsolete gap
6537         value.
6538
6539 2005-11-15  Jan Nieuwenhuizen  <janneke@gnu.org>
6540
6541         * stepmake/aclocal.m4 (depth): Explain why absolute directory is
6542         used and do not call it a path.
6543         (FLEXLEXER_FILE): Rename from FLEXLEXER_PATH and add file name.
6544
6545 2005-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6546
6547         * lily/include/tie-formatting-problem.hh (class
6548         Tie_formatting_problem): new file.
6549
6550         * lily/tie-formatting-problem.cc (common_x_refpoint): new file.
6551
6552         * Documentation/misc/ChangeLog-2.3:  new file.
6553
6554         * lily/audio-staff.cc (output): degarianize.
6555
6556 2005-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
6557
6558         * stepmake/stepmake/python-module-rules.make ($(outdir)/%.pyc):
6559         Unset PYTHONOPTIMIZE.  Fixes install if set.
6560
6561 2005-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6562
6563         * python/convertrules.py (conv): add warning about drums. 
6564
6565         * make/stepmake.make: include toplevel-version.make after config.make.
6566
6567         * stepmake/aclocal.m4 (depth): make sure $srcdir is absolute.
6568         also allow python2.4
6569
6570         * config.make.in (configure-srcdir): remove GXX GCC vars.
6571
6572         * stepmake/aclocal.m4: don't do non-srcdir build with
6573         symlinks. Use inclusion, so the src directory name can be changed.
6574
6575 2005-11-13  Jan Nieuwenhuizen  <janneke@gnu.org>
6576
6577         * make/mutopia-vars.make:
6578         * make/ly-vars.make: Use src-wildcard iso wildcard for source
6579         files.
6580
6581 2005-11-13  Werner Lemberg  <wl@gnu.org>
6582
6583         * mf/feta-arrow.mf: For all glyphs, don't mirror `currentpicture'
6584         but the affected path.  This ensures that the (overlapping) outlines
6585         have the same direction, which is a necessary prerequisite for
6586         FontForge's algorithm to remove overlaps.
6587         Formatting.
6588
6589         * mf/feta-haak.mf: Formatting.
6590         (draw_bracket): Slightly modify outline to avoid an unnecessary
6591         corner.
6592         Don't use ad-hoc values for `leave_angle' and `tip_angle' but derive
6593         them from the affected paths.
6594
6595 2005-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6596
6597         * mf/README: remove xpm / accordion notes.
6598
6599         * lily/tie-column-format.cc (set_chord_outline): add dots into
6600         skyline extents. This fixes tie formatting if the left head has dots.
6601
6602         * lily/tie.cc (get_configuration): only shift tie by a whole staff
6603         space inside the staff.
6604         (get_configuration): shift another position if necessary in case
6605         of left head tie  
6606
6607 2005-11-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6608
6609         * stepmake/stepmake/texinfo-vars.make (GENERATE_OMF): use
6610         buildscript-dir iso. $(depth)/buildscripts.
6611
6612         * tex/GNUmakefile (local-uninstall): remove
6613         music-drawing-routines.ps juggling.
6614
6615         * stepmake/stepmake/install-targets.make (local-install-files):
6616         prepend src-dir to install targets.
6617
6618         * lily/system-start-delimiter-engraver.cc
6619         (acknowledge_system_start_delimiter): use
6620         add_offset_callback(). This fixes translation of nested
6621         staffgroups.
6622
6623         * lily/grob-closure.cc (add_offset_callback): only encaps in
6624         simple_closure if it's a procedure.
6625         
6626         * lily/span-bar.cc (calc_glyph_name): read glyph-name, not glyph
6627         from bar-line.
6628
6629         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
6630         remove-empty where pertinent.
6631
6632 2005-11-12  Graham Percival  <gpermus@gmail.com>
6633
6634         * Documentation/user/instrument-notation.itely: added
6635         Cameron Horsburgh's multiple stanzas docs.  Thanks!
6636
6637 2005-11-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6638
6639         * lily/GNUmakefile
6640         ($(top-build-dir)/Documentation/pictures/$(outbase)/lilypond.ico):
6641         make picture in builddir, not srcdir.
6642
6643 2005-11-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6644
6645         * VERSION: release 2.7.16
6646         
6647         * scripts/lilypond-book.py (main): use commands.mkarg () to quote
6648         shell arguments. 
6649
6650 2005-11-10  Mats Bengtsson  <mabe@s3.kth.se>
6651
6652         * Documentation/user/examples.itely (Piano templates): Minor
6653         modification to the Piano centered lyrics example.
6654
6655 2005-11-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6656
6657         * scripts/lilypond-invoke-editor.scm (run-browser): look at
6658         $BROWSER.
6659
6660         * Documentation/user/point-and-click.itely: simplify p&c
6661         instruction: don't configure firefox. Put lilypond-invoke-editor
6662         in front of the browser.
6663
6664         * scripts/lilypond-invoke-editor.scm (run-editor): new function.
6665         (run-browser): new function.
6666
6667         * lily/parser.yy (Lily_lexer): recognize Book
6668
6669         * lily/book.cc (clone): new function
6670
6671         * lily/parser.yy (book_body): allow BOOK_IDENTIFIER.
6672
6673 2005-11-10  Jürgen Reuter  <reuter@ipd.uka.de>
6674
6675         * lily/vaticana-ligature.cc, lily/vaticana-ligature-engraver.cc:
6676         Maintenance bugfix: reduce number of font related warnings by
6677         updating naming conventions for glyph-name.
6678
6679 2005-11-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6680
6681         * scm/define-grobs.scm (all-grob-descriptions): add
6682         rhythmic-grob-interface to TabNoteHead.
6683
6684         * scm/layout-beam.scm (check-quant-callbacks): remove
6685         set_stem_lengths()
6686
6687 2005-11-08  Jürgen Reuter  <reuter@ipd.uka.de>
6688
6689         * ly/gregorian-init.ly (divisiones): Maintenance bugfix: vertical
6690         alignment of centered divisiones.
6691
6692         * scm/scripts.scm (articulations): Maintenance bugfix:
6693         follow-into-staff -> quantize-position.
6694
6695         * lily/vaticana-ligature-engraver.cc (transform_heads): Bugfix:
6696         plica head in porrectus deminutus.
6697
6698 2005-11-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6699
6700         * make/lilypond.fedora.spec.in (Group): add %clean section.
6701
6702         * lily/tuplet-bracket.cc (print): change check: remove bracket if
6703         less then 1/5th of total length.  
6704         (print): use gap too.  Fixes tupletUp-single-bracket.ly
6705
6706         * scm/music-functions.scm (glue-mm-rest-texts): also put other
6707         events into EventChord. This fixes textspanners on mm rests. Fixes
6708         spanner-rest.ly
6709
6710         * lily/side-position-interface.cc (get_axis): read side-axis
6711         (set_axis): set side-axis.
6712
6713         * scm/define-grobs.scm (all-grob-descriptions): add side-axis
6714         properties everywhere.
6715
6716         * lily/spacing-spanner.cc (breakable_column_spacing): add
6717         average-spacing-wishes. Take maximum if not set.
6718         (musical_column_spacing): idem. Fixes: spacing-keysig-note.ly
6719
6720         * scm/define-grobs.scm (all-grob-descriptions): add
6721         average-spacing-wishes.
6722
6723         * lily/grob-closure.cc (add_offset_callback): bugfix: properly add
6724         offset callbacks. This fixes alignment for Fingering objects.
6725
6726         * scm/define-grobs.scm (all-grob-descriptions): tiny bit less
6727         space for key - timesig combination. 
6728
6729         * input/regression/script-stem-tremolo.ly (Module): new file.
6730
6731         * scm/define-grobs.scm (all-grob-descriptions): decrease distance
6732         to key sig.
6733
6734         * lily/dynamic-engraver.cc (acknowledge_stem_tremolo): new function.
6735         Fixes: c-tremolo-script.ly.
6736         
6737         * lily/text-engraver.cc (acknowledge_stem_tremolo): new function.
6738
6739         * lily/script-engraver.cc (acknowledge_stem_tremolo): new function.
6740         
6741         * scm/define-grobs.scm (all-grob-descriptions): remove
6742         self-X-offset. Fixes alignment of octavate-8.
6743
6744         * scripts/lilypond-book.py (datadir): look in
6745         LILYPONDPREFIX/share/lilypond/current/
6746
6747         * GNUmakefile.in: symlink current to <VERSION>. 
6748
6749 2005-11-07  Pedro Kroger  <kroeger@pedrokroeger.net>
6750
6751         * lily/main.cc: eps listed as a backend.
6752
6753 2005-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6754
6755         * scm/lily-library.scm (print-music-as-book): quote $defaultpaper.
6756
6757 2005-11-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6758
6759         * lily/include/score.hh (class Score): remove texts_ member.
6760
6761         * lily/beam.cc (set_stem_lengths): force direction callback.
6762         (print): read quantized-positions, so we can force
6763         Beam::set_stem_lengths to occur.
6764         (rest_collision_callback): use common X parent. 
6765
6766 2005-11-03  Jan Nieuwenhuizen  <janneke@gnu.org>
6767
6768         * flower/file-path.cc (find): Bugfix: Return name of file found.
6769
6770         * lily/main.cc (setup_paths): Bugfix for argv0 logic.
6771         (setup_paths)[__CYGWIN__ || __MINGW32__]: Normalize argv0.
6772         (setup_paths)[__MINGW32__]: Also look for argv0 + .exe.
6773
6774 2005-11-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6775
6776         * flower/offset.cc: idem.
6777
6778         * mf/*.mf: update email address.
6779
6780         * lily/font-config-scheme.cc:  new file.
6781
6782         * GNUmakefile.in (SUBDIRS): remove debian/ directory.
6783
6784         * lily/*:  cs.uu.nl -> xs4all.nl
6785
6786         * VERSION (PATCH_LEVEL): release 2.7.15
6787
6788         * make/lilypond.mandrake.spec.in (Module): remove Mandrake & Suse
6789         spec files.
6790
6791         * make/lilypond.fedora.spec.in: add %{libdir}/lilypond/
6792
6793 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6794
6795         * GNUmakefile.in: bugfix: encapsulate mkdir && cd in parens.   
6796
6797         * lily/staff-performer.cc (process_music): add audio
6798         elements. This makes MIDI instrument changes work once again.
6799
6800         * lily/main.cc (LY_DEFINE): add gmane address.
6801
6802         * lily/beam.cc: remove calc_positions()
6803
6804         * lily/include/grob.hh (class Grob): move pscore, dim_cache_,
6805         original_ in private scope.
6806         (class Grob): drop pscore_ pointer, change to output_def pointer.
6807         (class Grob): cleanup class definition.
6808
6809         * ly/spanners-init.ly (assertBeamQuant): use make-simple-closure.
6810
6811 2005-11-02  Jan Nieuwenhuizen  <janneke@gnu.org>
6812
6813         * lily/main.cc (setup_paths)[__MINGW32__]: Do not assume argv0 is
6814         absolute.  Better diagnostics.
6815
6816         * GNUmakefile.in: Add bin/ to tree and populate with some links.
6817         This makes lilypond run from the build directory using argv0
6818         relocation (without any --prefix or LILYPONDPREFIX setting).
6819
6820 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6821
6822         * Documentation/topdocs/NEWS.tely (Top): document new backend design.
6823
6824         * scm/define-grobs.scm: purge self-[XY]-offset variables, replace
6825         with simple-closure.
6826
6827         * lily/self-aligment-interface.cc (set_align_self): new function
6828         (set_center_parent): new function.
6829
6830         * lily/side-position-interface.cc (set_axis): new function.
6831
6832         * lily/new-fingering-engraver.cc (position_scripts): use drul for
6833         generic code. 
6834
6835         * scm/define-grob-properties.scm (all-user-grob-properties):
6836         remove [XY]-offset-callbacks add [YX]-offset
6837         
6838 2005-11-02  Mats Bengtsson  <mabe@s3.kth.se>
6839
6840         * scm/define-grobs.scm (all-grob-descriptions): Added space-alist
6841         entry for time signatures after breathing signs. Bug report by
6842         Scott Russell.
6843
6844 2005-11-01  Jan Nieuwenhuizen  <janneke@gnu.org>
6845
6846         * lily/main.cc (setup_paths)[!__MINGW32__]: Bugfix: if argv0 is
6847         not absolute, make it absolute using PATH.
6848
6849 2005-10-28  Jan Nieuwenhuizen  <janneke@gnu.org>
6850
6851         * python/midi.c (initmidi): Fix type for mingw.
6852
6853 2005-10-27  Jan Nieuwenhuizen  <janneke@gnu.org>
6854
6855         * stepmake/stepmake/compile-vars.make (SHARED_FLAGS): Support mingw.
6856
6857         * stepmake/stepmake/generic-vars.make (MINGW_BUILD): Detect mingw
6858         cross compiling.
6859
6860         * stepmake/aclocal.m4: Support python cross compiling.
6861
6862         * stepmake/stepmake/python-module-vars.make (SHARED_MODULE_SUFFIX):
6863         Add mingw section.
6864
6865 2005-11-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6866
6867         * scm/output-lib.scm (chain-grob-member-functions): replace
6868         chained-callback.cc
6869
6870         * lily/chained-callback.cc (Module): remove file.
6871
6872         * lily/rest-collision.cc (force_shift_callback_rest): change to
6873         chained callback.
6874
6875         * lily/rest.cc (y_offset_callback): merge function of 3 callbacks. 
6876
6877         * lily/grob.cc (y_parent_positioning): remove axis argument from
6878         parent_positioning callbacks.
6879         (Grob): junk init code
6880         (get_offset): use generic property callbacks for
6881         X-offset, Y-offset. Remove Grob::{add,has}_offset_callback.
6882         (axis_parent_positioning): new function
6883         (axis_offset_symbol): new function
6884         (chain_offset_callback): new function
6885         (add_offset_callback): new function
6886
6887         * lily/beam.cc (rest_collision_callback): change signature; this
6888         is now a chained callback.
6889
6890         * lily/include/dimension-cache.hh (class Dimension_cache): remove
6891         callback administration.
6892
6893         * lily/simple-closure.cc: new file. Smob type that allows "grob
6894         member functions",
6895
6896             (ly:make-simple-closure FUNC A B)
6897
6898         is evaluated as (FUNC grob A B). This allows chaining of callbacks
6899         in various ways.
6900
6901         * lily/slur-engraver.cc (acknowledge_extra_object): use chained
6902         callbacks.
6903
6904         * lily/slur.cc (outside_slur_callback): take 2 arguments.
6905
6906         * lily/rest.cc (polyphonic_offset_callback): remove.
6907
6908         * lily/script-engraver.cc (try_music): remove bool* argument.
6909
6910         * scm/script.scm (default-script-alist): set quantize-position
6911         appropriately.
6912
6913         * lily/script-engraver.cc: remove follow_into_staff_ special coding. 
6914
6915         * lily/side-position-interface.cc (aligned_side): move staff
6916         position quantization from
6917         Side_position_interface::quantised_position().
6918         (quantised_position): remove
6919         
6920 2005-10-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6921
6922         * input/regression/beam-quant-standard.ly: reindent, set
6923         debug-beam-quanting to #t.
6924
6925         * lily/beam-concave.cc (calc_concaveness): set concaveness to
6926         10000 if this is a "hard" concave beam.
6927
6928         * lily/beam.cc (calc_least_squares_positions): change from
6929         calc_least_squares_dy
6930         (set_stem_lengths): this is now a chained callback.
6931
6932         * lily/context-property.cc (execute_general_pushpop_property):
6933         bugfix override with procedure should have effect.
6934
6935         * scm/define-grob-properties.scm (all-internal-grob-properties):
6936         remove position-callbacks.
6937
6938         * scm/define-grobs.scm (all-grob-descriptions): use
6939         ly:make-callback-chain for positions property.
6940
6941         * scm/layout-beam.scm (check-quant-callbacks): return list of
6942         chained callbacks.
6943
6944         * scm/lily.scm (type-p-name-alist): add callback-chain
6945
6946         * lily/lily-guile.cc (type_check_assignment): type check failure
6947         is warning not message.
6948
6949         * lily/grob-property.cc (try_callback): walk callback chain if
6950         appropriate.
6951
6952         * lily/chained-callback.cc: new file. new smob type.
6953
6954         * lily/lily-guile.cc (procedure_arity): new function.
6955
6956 2005-10-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6957
6958         * Documentation/topdocs/INSTALL.texi (Top): add perl flex bison.
6959
6960 2005-10-25  John Mandereau  <john.mandereau@free.fr>
6961  
6962         * Documentation/user/instrument-notation.itely (Figured bass):
6963         describe new features
6964
6965 2005-10-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6966
6967         * lily/beam.cc (calc_least_squares_dy): use property callback.
6968
6969         * lily/beam-concave.cc (calc_concaveness): use property callback.
6970
6971         * ly/paper-defaults.ly: move fixed dimensions from paper.scm 
6972
6973 2005-10-25  Jan Nieuwenhuizen  <janneke@gnu.org>
6974
6975         * HACKING: Update.
6976
6977 2005-10-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
6978
6979         * scm/layout-page-layout.scm (page-headfoot): annotate
6980         pagetopspace too.
6981
6982         * scm/stencil.scm (dimension-arrows): shorten arrowed lines a bit. 
6983
6984         * scm/layout-page-layout.scm (annotate-y-interval): y-annotation
6985         doesn't take y-space.
6986
6987         * scm/paper.scm (paper-alist): fix A7 dimensions. 
6988
6989 2005-10-24  Jan Nieuwenhuizen  <janneke@gnu.org>
6990
6991         * stepmake/stepmake/generic-vars.make (DIST_FILES): Fix
6992         src-wildcard, remove $(wildcard).
6993
6994         * po/GNUmakefile (PO_FILES): 
6995         * ps/GNUmakefile (PS_FILES): 
6996         * tex/GNUmakefile (TEX_FILES): 
6997         * cygwin/GNUmakefile (POSTINSTALLS):
6998         * vim/GNUmakefile (EXTRA_DIST_FILES): Bugfix: [etags sr?] missed
6999         some wildcard calls.
7000
7001 2005-10-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7002
7003         * THANKS: add Thomas Bushnell.
7004
7005 2005-10-23  Jan Nieuwenhuizen  <janneke@gnu.org>
7006
7007         * scm/lily.scm: Remove horrendous running-from-gui? kludge.
7008         (lilypond-main): Redirect to gui-main if 'gui is set.
7009
7010         * scripts/midi2ly.py (datadir): Add libdir iso datadir to path,
7011         for alternative installations kludging s/share/lib/g
7012         LILYPONDPREFIX. 
7013
7014         * SConstruct (libdir_package_version): Define.
7015
7016         * python/SConscript: 
7017         * python/GNUmakefile (INSTALLATION_OUT_DIR): Install binary .so
7018         module in libdir.  
7019
7020 2005-10-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7021
7022         * lily/main.cc: clarify --safe.
7023
7024 2005-10-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7025
7026         * VERSION: release 2.7.14
7027         
7028         * Documentation/user/*.itely: remove minimumVerticalExtent.
7029
7030         * scm/define-grobs.scm (all-grob-descriptions): remove
7031         RemoveEmptyVerticalGroup
7032
7033         * lily/hara-kiri-engraver.cc (get_spanner): create VerticalAxisGroup.
7034
7035         * lily/include/lily-guile.hh (GUILE_ELLIPSIS): define to get clean
7036         compile on MOSX
7037
7038         * python/convertrules.py (conv): add rules.
7039
7040         * lily/grob.cc: remove is_empty()
7041
7042         * lily/grob-property.cc: remove add_to_list_property().
7043
7044         * scripts/convert-ly.py (datadir): add prefix switching hack to
7045         .py too.
7046
7047         * input/mutopia/W.A.Mozart/mozart-hrn3-defs.ily (cresc): remove
7048         space-function tweak.
7049
7050         * lily/grob.cc: remove X-extent-callback / Y-extent-callback.
7051
7052         * scm/define-grob-properties.scm (all-user-grob-properties):
7053         remove callback property.
7054
7055         * lily/include/grob.hh (class Grob): remove property_callbacks_
7056         member. Properties of procedure type are assumed to be callbacks.
7057
7058         * lily/ligature-engraver.cc (override_stencil_callback):
7059         rewrite. Use noteHeadLigaturePrimitive as source.
7060
7061         * scm/define-grob-properties.scm (all-internal-grob-properties):
7062         remove ligature-primitive-callback
7063
7064         * lily/include/dimension-cache.hh (class Dimension_cache): make
7065         class, with Grob as friend.
7066
7067         * lily/grob.cc: remove set_extent_callback(), set_extent() and
7068         has_extent_callback()
7069
7070         * scm/translation-functions.scm (format-new-bass-figure): read
7071         figuredBassPlusDirection
7072
7073         * scm/define-context-properties.scm
7074         (all-user-translation-properties): add figuredBassPlusDirection.
7075
7076         * lily/staff-spacing.cc (next_notes_correction): oops. Init wishes.
7077
7078         * lily/align-interface.cc (set_ordered): new function.
7079
7080         * lily/grob.cc (flush_extent_cache): rewrite.
7081
7082         * lily/dimension-cache.cc (Dimension_cache): cache extent as
7083         Interval pointer directly.
7084
7085         * lily/main.cc (setup_paths): insert extra / .
7086         (setup_paths): junk cff entry.
7087
7088         * lily/font-config.cc (init_fontconfig): only add type1 / otf
7089         directories.
7090
7091         * lily/axis-group-engraver.cc (finalize): remove
7092         extraVerticalExtent, minimumVerticalExtent verticalExtent.
7093
7094         * lily/grob.cc (Grob): don't set extent from ctor.
7095         (extent): use property callbacks. 
7096
7097         * lily/axis-group-interface.cc: remove set_axes() function.
7098
7099         * lily/grob-property.cc (del_property): new function.
7100
7101 2005-10-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7102
7103         * lily/font-config.cc (init_fontconfig): resurrect mf/out/ check.
7104         
7105 2005-10-20  Jan Nieuwenhuizen  <janneke@gnu.org>
7106
7107         * stepmake/stepmake/script-vars.make (PYTHON_SCRIPTS_IN): Oops.  Add.
7108
7109 2005-10-19  Jan Nieuwenhuizen  <janneke@gnu.org>
7110
7111         * mf/SConscript: Updates.
7112
7113         * lily/GNUmakefile (OUT_DIST_FILES): Bugfix.
7114
7115         * stepmake/stepmake/*:
7116         * */GNUmakefile:
7117         * config.make.in:
7118         * GNUmakefile.in:
7119         * stepmake/aclocal.m4: Friendlier --srcdir build, allowing `make'
7120         from any directory in build-dir.  Cleanups.
7121
7122         * make/srcdir.make.in: Remove.
7123
7124         * lily/main.cc (setup_paths): Fix and document build-dir hack.
7125
7126         * SConstruct (CheckYYCurrentBuffer): Use TryCompile (there is no
7127         main).
7128
7129         * lily/SConscript: Remove ttftools.
7130
7131         * SConstruct: Resurrect.
7132
7133 2005-10-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7134
7135         * lily/tuplet-bracket.cc (print): use dy iso. positions[RIGHT] for
7136         Y coordinate. 
7137
7138         * lily/paper-book.cc (add_score_title): put Paper_score title into
7139         systems_ list.
7140
7141         * scm/translation-functions.scm (format-new-bass-figure): also
7142         allow plus in combination with _
7143
7144 2005-10-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7145
7146         * VERSION: 2.7.13 released.
7147
7148         * lily/note-collision.cc (check_meshing_chords): don't wipe
7149         stencil, merely set transparent.
7150
7151         * Documentation/topdocs/NEWS.tely (Top): mention John Mandereau. 
7152         (Top): document #'callbacks.
7153         (Top): document nested \override.
7154
7155         * input/regression/figured-bass.ly: update for slash and pluses.
7156
7157         * input/regression/figured-bass-continuation-forbid.ly (Module):
7158         new file.
7159
7160         * scm/translation-functions.scm (format-new-bass-figure): use
7161         slashed-digit if diminished is set.
7162         (format-new-bass-figure): add + if 'augmented is set.
7163
7164         * scm/define-markup-commands.scm (slashed-digit): new command slashed-digit.
7165
7166         * input/test/piano-staff-distance.ly: remove file.
7167
7168         * Documentation/user/advanced-notation.itely (Formatting cue
7169         notes): use length-fraction for making stems/beams smaller.
7170
7171         * lily/parser.yy (bass_figure): accept \+ \! and / as figured bass
7172         modifications.
7173
7174         * lily/new-figured-bass-engraver.cc: new property
7175         centerFiguredBassContinuations
7176
7177         * Documentation/user/changing-defaults.itely (Difficult tweaks):
7178         use callbacks.
7179
7180         * lily/context-property.cc (execute_general_pushpop_property):
7181         robustness checks.
7182
7183         * input/regression/override-nest.ly: new file.
7184
7185         * python/convertrules.py (FatalConversionError.subber): conversion
7186         rule for #'callbacks
7187
7188         * input/regression/override-nest.ly: new function.
7189
7190         * lily/parser.yy (music_property_def): allow \override #'a #'b =
7191         #c too. 
7192
7193         * lily/context-property.cc (lookup_nested_property): new function.
7194         (evict_from_alist): new function.
7195         (general_pushpop_property): new function.
7196         (execute_general_pushpop_property): rewrite. Support nested
7197         properties too.
7198
7199 2005-10-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7200
7201         * lily/beam.cc: use length-fraction too.
7202
7203         * scm/define-grob-properties.scm (all-user-grob-properties):
7204         remove property flag-width-function
7205         (all-user-grob-properties): remove space-function.
7206
7207         * scm/layout-beam.scm: remove flag-width-function.
7208
7209         * lily/beam.cc: remove flag-width-function
7210
7211         * scm/layout-beam.scm: remove beam dir functions.
7212
7213         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): use length-fraction.
7214
7215         * lily/stem.cc (calc_length): multiply with length_fraction. Makes
7216         for easier grace tweaks.
7217
7218         * lily/beam.cc: remove dir-function.
7219
7220         * lily/system.cc (pre_processing): use callback to trigger spacing procedures.
7221
7222         * lily/grob.cc: remove spacing-procedure.
7223
7224         * lily/note-head.cc (calc_stem_attachment): new function.
7225         (internal_print): use callback to get glyph-name.
7226
7227         * lily/grob-property.cc (get_interfaces): new function.
7228
7229         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-interfaces
7230
7231         * lily/stem.cc (calc_stem_end_position): new function.
7232         (calc_length): new function.
7233         document details for stem.
7234         remove Stem::get_direction()
7235
7236         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-set-callback! 
7237
7238         * lily/grob-property.cc (set_callback): new function.
7239
7240         * lily/script-engraver.cc (make_script_from_event): don't trigger callback.
7241
7242         * lily/item-scheme.cc: new file.
7243
7244         * lily/bar-line.cc (before_line_breaking): remove function.
7245         remove bar-size-procedure, break-glyph-function
7246
7247         * lily/clef-engraver.cc (set_glyph): use glyph iso. glyph-name
7248
7249         * lily/clef.cc (before_line_breaking): change to calc_glyph_name.
7250
7251         * lily/system-start-delimiter.cc (print): suicide from
7252         here. Remove after_line_breaking_callback.
7253
7254         * lily/script-interface.cc (calc_direction): use callback for direction.
7255
7256         * lily/side-position-interface.cc (aligned_side): don't use
7257         Side_position_interface::get_direction directly. Use callback. 
7258
7259         * lily/grob.cc (get_stencil): simplify: use callback mechanism to
7260         calculate stencil.
7261         (get_print_stencil): rename from get_stencil: create stencil with
7262         transparency, color and cause. 
7263
7264         * scm/define-grobs.scm: change print-function to stencil callback everywhere.
7265
7266         * python/convertrules.py (conv): insert temporary warning rule.
7267
7268         * lily/multi-measure-rest.cc (set_text_rods): use stencil directly.
7269
7270         * lily/grob-property.cc (try_callback): remove marker if applicable.
7271
7272         * lily/grob.cc: elucidate doc about after/before-line-breaking
7273
7274         * lily/slur-scoring.cc (enumerate_attachments): robustness fix.
7275
7276         * lily/stem.cc (height): idem.
7277
7278         * lily/stem-tremolo.cc: idem.
7279
7280         * lily/slur.cc (height): don't use get_uncached_stencil()
7281
7282         * lily/rest.cc (y_offset_callback): use offset callback
7283         iso. after-line-breaking callback.
7284
7285         * lily/grob.cc: change after/before-line-breaking-callback to
7286         after/before-line-breaking dummy properties.
7287
7288         * lily/include/grob.hh: remove Grob_status.
7289
7290         * scm/define-context-properties.scm
7291         (all-user-translation-properties): remove verticalAlignmentChildCallback
7292
7293         * lily/tuplet-bracket.cc: use positions property iso. left,right-position.
7294         (calc_direction): use callback
7295         (calc_positions): use callback.
7296
7297         * lily/tie.cc (calc_direction): use callback. Only call parent
7298         positioning for more than one tie.
7299
7300         * lily/tie-column.cc (calc_positioning_done): use callback
7301
7302         * lily/slur-scoring.cc (calc_control_points): use callback
7303
7304         * lily/slur.cc (calc_direction): use callback.
7305
7306         * lily/note-collision.cc (force_shift_callback): remove.
7307
7308         * lily/dot-column.cc (force_shift_callback): remove. Use
7309         other_axis_parent_positioning.
7310
7311         * lily/grob.cc (other_axis_parent_positioning): new function.
7312         (same_axis_parent_positioning): new function
7313
7314         * lily/align-interface.cc (alignment_callback): remove function.
7315
7316         * lily/note-collision.cc (calc_positioning_done): use callback.
7317
7318         * lily/laissez-vibrer-tie.cc (calc_control_points): use callback.
7319         (calc_direction): idem.
7320         remove print function.
7321
7322         * lily/laissez-vibrer-tie-column.cc (calc_positioning_done): use callback.
7323
7324         * lily/dot-column.cc (calc_positioning_done): use callback.
7325
7326         * lily/break-align-interface.cc (calc_positioning_done): use callback.
7327
7328         * lily/beam.cc (calc_direction): use pseudo-property for beam
7329         direction callback.
7330         (calc_positions): use callback 
7331
7332         * lily/align-interface.cc (calc_positioning_done): use
7333         callback. Fold fixed  distance and normal alignment in one function.
7334
7335         * lily/stem.cc (calc_stem_end_position): use callback.
7336         (calc_positioning_done): idem.
7337         (calc_direction): idem.
7338         (calc_stem_end_position): idem
7339         (calc_stem_info): idem.
7340
7341         * lily/grob-property.cc (get_property_data): new function: 
7342         (try_callback): new function.
7343
7344         * scm/define-grob-properties.scm (all-user-grob-properties): doc
7345         callbacks property.
7346
7347         * lily/break-align-interface.cc: remove Break_align_interface::alignment_callback.
7348
7349 2005-10-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7350
7351         * lily/tie.cc (get_position): robustness fix. Don't crash if a
7352         tie
7353         has no heads.
7354         
7355         * lily/include/*.hh (Module): compile fixes.
7356
7357 2005-10-14  Heikki Junes <hjunes@cc.hut.fi>
7358
7359         * elisp/lilypond-font-lock.el, elisp/lilypond-indent.el: Avoid nil 
7360         as an argument for char-syntax: use (char-syntax (or nil 0)) 
7361         instead of (char-syntax nil), thanks to Milan Zamazal.
7362
7363 2005-10-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7364
7365         * make/lilypond.fedora.spec.in (Group): add lilypond-internals to
7366         dist.
7367
7368         * lily/tuplet-bracket.cc: check columns of bounds, not bounds
7369         themselves.
7370
7371 2005-10-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7372
7373         * flower/include/virtual-methods.hh (VIRTUAL_COPY_CONSTRUCTOR):
7374         add class_name() method.
7375
7376         * lily/music-scheme.cc: remove ly:music-name.
7377
7378 2005-10-11  Jan Nieuwenhuizen  <janneke@gnu.org>
7379
7380         * cygwin/postinstall-lilypond.sh: Remove cruft.
7381
7382         * cygwin/postremove-lilypond.sh: Remove.
7383
7384         * cygwin/GNUmakefile (default): Remove postremove rules.
7385
7386 2005-10-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7387
7388         * ly/titling-init.ly (evenHeaderMarkup): use space in header on
7389         even header too.
7390         
7391         * scm/define-markup-commands.scm (wordwrap-string): bugfix for
7392         MacOS 9 users.
7393
7394         * lily/hara-kiri-group-spanner.cc (consider_suicide): only
7395         consider break index for broken spanner.
7396
7397         * scm/define-markup-commands.scm (wordwrap-string): remove \r
7398         characters from string before splitting.
7399
7400 2005-10-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7401
7402         * scm/framework-ps.scm (output-preview-framework): use
7403         is-book-title to determine whether to chop off the booktitle.
7404
7405         * lily/paper-book.cc (systems): init from book-title-properties
7406         (add_score_title): init score-title-properties.
7407
7408         * ly/paper-defaults.ly: add {score,book}-title-properties.
7409
7410         * scm/document-backend.scm (lookup-interface): error message if
7411         using unknown interface.
7412
7413         * lily/volta-bracket.cc (after_line_breaking): new function. Set
7414         edge-height.
7415
7416         * lily/horizontal-bracket.cc (make_enclosing_bracket): rename from
7417         make_bracket.
7418         (make_bracket): new function.
7419
7420         * scm/lily.scm (define-scheme-options): add paper-size option.
7421
7422         * ly/declarations-init.ly (laissezVibrer): get paper size from
7423         -dpaper-size
7424
7425         * scm/translation-functions.scm: use \fontsize for changing the
7426         fontsize.
7427
7428         * scm/define-grobs.scm (all-grob-descriptions): set
7429         between-length-limit to 1.0
7430
7431         * lily/tie-helper.cc: add between_length_limit_ detail property.
7432
7433         * mf/feta-bolletjes.mf: typos.
7434
7435         * lily/note-head.cc (internal_print): don't shadow idx
7436         parameter. This fixes wrong attachment for do shape heads.
7437
7438 2005-10-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7439
7440         * scm/parser-ly-from-scheme.scm: rename from ly-from-scheme.scm
7441
7442         * scm/parser-clef.scm (supported-clefs): rename from clef.scm
7443
7444         * scm/layout-slur.scm: rename from slur.scm
7445
7446         * scm/layout-page-layout.scm: rename from page-layout.scm
7447
7448         * scm/layout-beam.scm: rename from beam.scm
7449
7450         * scm/define-grob-interfaces.scm (bass-figure-interface): add
7451         bass-figure-interface
7452
7453         * lily/new-figured-bass-engraver.cc (process_music): add
7454         implicitBassFigures property.
7455         
7456         * scm/define-markup-commands.scm (pad-x): new markup.
7457
7458         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set
7459         minimumVerticalExtent on FiguredBass context.
7460
7461         * lily/figured-bass-continuation.cc (center_on_figures): kludge in
7462         case the continuation crosses a line break.
7463
7464 2005-10-09  Jan Nieuwenhuizen  <janneke@gnu.org>
7465
7466         * flower/file-name.cc (dos_to_posix)[__CYGWIN__]: Return
7467         unconverted value if cygwin_conv_to_posix_path () fails.  Fixes
7468         absolute file name bug.  
7469
7470 2005-10-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7471
7472         * VERSION (PACKAGE_NAME): release 2.7.12
7473
7474         * input/regression/figured-bass-continuation-center.ly: new file.
7475
7476         * input/regression/beam-outside-beamlets.ly: new file.
7477
7478         * lily/beam.cc (set_beaming): don't clip edges.
7479         (connect_beams): don't clip edges.
7480
7481         * lily/beaming-info.cc (clip_edges): new function.
7482
7483         * lily/enclosing-bracket.cc (struct Enclosing_bracket): new file.
7484
7485         * Documentation/user/instrument-notation.itely (Figured bass):
7486         demonstrate extenders, update seealso links.
7487
7488         * scm/titling.scm (marked-up-headfoot): change tagline
7489         handling. tagline = ##f will blank the tagline as well.
7490
7491 2005-10-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7492
7493         * Documentation/topdocs/NEWS.tely: add entry for Figured bass.
7494
7495         * lily/new-figured-bass-engraver.cc (struct
7496         New_figured_bass_engraver): add new_music_found_ member.
7497
7498         * lily/lilypond-version.cc (Lilypond_version): deal with
7499         incorrectly formatted version strings. 
7500
7501         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): switch on
7502         New_figured_bass_engraver by default.
7503
7504         * lily/ttf.cc (print_trailer): only define glyph names when
7505         FT_Face has FT_FACE_FLAG_GLYPH_NAMES
7506
7507 2005-10-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7508
7509         * lily/horizontal-bracket.cc (make_bracket): new function.
7510
7511         * scm/define-grobs.scm (all-grob-descriptions): new grobs
7512         NewBassFigure, BassFigureBracket, BassFigureContinuation,
7513         BassFigureLine, BassFigureAlignment
7514
7515         * lily/new-figured-bass-engraver.cc (process_music): new file.
7516
7517         * lily/figured-bass-continuation.cc: new file.
7518
7519         * lily/include/horizontal-bracket.hh (struct Horizontal_bracket):
7520         new file.
7521
7522 2005-10-04  Mats Bengtsson  <mabe@s3.kth.se>
7523
7524         * scripts/lilypond-book.py: Bug fix, put the quote around the
7525         actual score for LaTeX documents.
7526
7527         * scm/define-grobs.scm (all-grob-descriptions): Change
7528         collapse-height of the SystemStartBracket grob to 5.0, 
7529         so the bracket disappears for single stave score lines (similarly
7530         to SystemStartBraces). 
7531
7532         * Documentation/user/advanced-notation.itely (Polymetric
7533         notation): Clarify the use of compressMusic.
7534
7535         * Documentation/user/basic-notation.itely (Grace notes): Clarify
7536         that the grace spacer note in other staves need the same duration
7537         and document the stroke-style property.
7538
7539 2005-10-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7540
7541         * Documentation/user/global.itely (Vertical spacing): document
7542         alignment-extra-space and fixed-alignment-extra-space.
7543
7544         * Documentation/topdocs/NEWS.tely (Top): add entry.
7545
7546         * input/regression/alignment-vertical-spacing.ly: new file.
7547
7548         * python/convertrules.py (conv): add rule.
7549
7550         * ly/music-functions-init.ly: rename outputProperty to overrideProperty
7551
7552         * lily/align-interface.cc (stretch_after_break): new
7553         function. Read fixed-alignment-extra-space property.
7554         (align_elements_to_extents): read alignment-extra-space property.
7555
7556         * lily/lily-guile.cc (robust_scm2dir): new function.
7557
7558         * scm/page-layout.scm (page-headfoot): annotate headsep and footsep.
7559         (annotate-space-left): new function. Annotate space left on page. 
7560         (annotate-y-interval): new function.
7561         (paper-system-annotate-last): new function. Annotate bottom-space.
7562
7563         * mf/feta-beugel.mf (y): 
7564
7565 2005-10-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7566
7567         * VERSION (PACKAGE_NAME):  release 2.7.11
7568
7569         * scm/lily-library.scm (interval-translate): new function
7570         (interval-center): new function. 
7571
7572         * scm/page-layout.scm (paper-system-annotate): new function. Add
7573         arrows for dimensions.
7574  
7575         * scm/stencil.scm (dimension-arrows): new function.
7576
7577         * Documentation/user/global.itely (Vertical spacing): mention annotatespacing
7578
7579         * input/regression/page-spacing.ly: add annotatespacing
7580
7581         * lily/paper-system-scheme.cc (LY_DEFINE): remove ly:paper-system-{extent,stencil}
7582         (LY_DEFINE): new function ly:paper-system-set-property!
7583
7584         * Documentation/user/global.itely (Paper size): explain how to add
7585         sizes.
7586
7587         * scm/paper.scm (paper-alist): rename tabloid paper to 11x17 to
7588         correspond to GS's definition.
7589
7590         * lily/tuplet-bracket.cc (after_line_breaking): suicide empty
7591         tuplet bracket.
7592         (print): only connect to next bracket if the next one is alive.
7593         (print): set padding to 0.0 if the bound is a breakable
7594         column. This makes tupletFullLength brackets reach up to the staff
7595         line if it doesn't connect to the next line.
7596
7597 2005-09-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7598
7599         * lily/bar-number-engraver.cc: correct docs.
7600
7601         * scm/output-lib.scm (first-bar-number-invisible): rename from
7602         default-bar-number-visibility
7603
7604 2005-09-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7605
7606         * scm/define-music-properties.scm (all-music-properties): remove
7607         predicate property.
7608
7609 2005-09-28  Heikki Junes  <hjunes@cc.hut.fi>
7610
7611         * po/fi.po: refresh.
7612
7613 2005-09-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7614
7615         * input/regression/hara-kiri-pianostaff.ly (disappear): remove
7616         superfluous s1.
7617         (disappear): bugfix.
7618
7619         * lily/stem-tremolo.cc (raw_stencil): read slope property.
7620
7621         * lily/include/paper-system.hh (class Paper_system): remove
7622         staff_extents_ member.
7623
7624         * lily/paper-system-scheme.cc (LY_DEFINE): remove.
7625
7626         * lily/include/paper-system.hh (class Paper_system): remove
7627         number_ variable. Remove is_title_. Remove break_before_penalty_
7628
7629         * lily/paper-book.cc (systems): use 'number property iso. number_
7630         member.
7631
7632         * lily/paper-system-scheme.cc: remove ly:paper-system-break-before-penalty
7633         remove ly:paper-system-number.
7634
7635         * scm/lily-library.scm (paper-system-title?): new function.
7636
7637         * lily/book.cc (process): bugfix: flip ?: cases. 
7638
7639         * Documentation/user/changing-defaults.itely (Difficult tweaks):
7640         add outputProperty.
7641
7642         * ly/music-functions-init.ly: add outputProperty music function.
7643
7644         * scm/paper.scm (set-paper-dimension-variables): add pagetopspace
7645
7646         * scm/page-layout.scm (ly:optimal-page-breaks): read next-space
7647         and next-padding.
7648         (optimal-page-breaks): rename from ly:optimal-page-breaks.
7649
7650         * lily/paper-system-scheme.cc (LY_DEFINE): new function.
7651
7652         * lily/paper-system.cc (internal_get_property): new function.
7653
7654         * Documentation/user/global.itely (Vertical spacing): refer to
7655         page-spacing.ly
7656
7657         * scm/page-layout.scm (ly:optimal-page-breaks): add support for
7658         pagetopspace
7659
7660         * input/regression/page-spacing.ly: new file.
7661
7662         * input/regression/page-top-space.ly: new file.
7663
7664         * lily/spacing-spanner.cc: cmath -> math.h
7665
7666         * lily/paper-system.cc (read_left_bound): new function. Read
7667         line-break-system-details from left bound to determine extents.
7668  
7669         * Documentation/user/programming-interface.itely (Using LilyPond
7670         syntax inside Scheme): change applyxxx -> applyXxx.
7671
7672         * ly/music-functions-init.ly: add outputProperty music function.
7673
7674         * lily/parser.yy (Generic_prefix_music_scm): add scm-scm-scm signature.
7675
7676         * lily/grob-scheme.cc (LY_DEFINE): add ! to ly:grob-suicide! name.
7677
7678         * python/convertrules.py (conv): rule
7679
7680         * ly/music-functions-init.ly: applyxxx -> applyXxx
7681
7682         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): alias
7683         TabVoice to Voice.
7684
7685 2005-09-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7686
7687         * flower/include/real.hh: include <math.h> iso. <cmath>
7688
7689         * flower/include/offset.hh: include real.hh
7690
7691 2005-09-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7692
7693         * Documentation/user/changing-defaults.itely (Difficult tweaks):
7694         fix example, now that 'interfaces is no longer directly available.
7695
7696         * lily/book.cc (process): don't crash if paper == NULL.
7697
7698         * po/fr.po: update.
7699
7700 2005-09-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7701
7702         * scm/define-music-types.scm (music-descriptions): set length and
7703         start-callback for QuoteMusic
7704
7705 2005-09-15  Mats Bengtsson  <mabe@s3.kth.se>
7706
7707         * lily/tie.cc (get_configuration): Replace fabs -> abs for integer
7708         arguments. Fixes compilation error with gcc 3.3.
7709
7710 2005-09-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7711
7712         * VERSION: release 2.7.10
7713
7714         * stepmake/stepmake/python-module-rules.make
7715         ($(outdir)/%$(SHARED_MODULE_SUFFIX)): SHARED_FLAGS at the end.  
7716
7717         * lily/*.cc: remove <cmath> everywhere. <cmath> is included from
7718         real.hh
7719
7720 2005-09-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7721
7722         * stepmake/stepmake/c++-vars.make (#EXTRA_CXXFLAGS): don't add
7723         -Werror. Otherwise GCC barfs over various optimizations.
7724
7725         * scm/define-grob-properties.scm (all-internal-grob-properties):
7726         add note-head property
7727
7728         * Documentation/user/instrument-notation.itely (Laissez vibrer
7729         ties): new node.
7730
7731         * input/regression/laissez-vibrer-ties.ly: new file.
7732
7733         * lily/laissez-vibrer-engraver.cc: new file.    
7734
7735         * lily/include/tie-column-format.hh: new file.
7736
7737         * lily/tie-column-format.cc: new file. 
7738
7739         * lily/tie-column.cc (set_manual_tie_configuration): new function.
7740
7741         * lily/laissez-vibrer-tie.cc: new file.
7742
7743         * lily/include/laissez-vibrer-tie.hh: new file.
7744
7745         * ly/engraver-init.ly: add Laissez_vibrer_engraver
7746
7747         * ly/declarations-init.ly (laissezVibrer): add \laissezVibrer
7748
7749         * scm/define-grobs.scm (all-grob-descriptions): add
7750         LaissezVibrerTie, LaissezVibrerTieColumn
7751
7752         * lily/tie-column.cc (set_tie_config_directions): new function
7753         (final_shape_adjustment): new function.
7754         (shift_small_ties): new function.
7755
7756         * scm/define-music-types.scm (music-descriptions): add LaissezVibrerEvent
7757
7758         * lily/include/tie.hh (struct Tie_details): add x_gap_
7759         (struct Tie_configuration): add head_position_
7760
7761         * lily/tie-column.cc (set_chord_outline): new function.
7762
7763         * mf/cmr.enc.in:  remove file.
7764
7765 2005-09-11  Graham Percival  <gpermus@gmail.com>
7766
7767         * Documentation/user/examples.itely: typo fix.  Thanks, Matevž
7768
7769 2005-09-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7770
7771         * mf/feta-banier.mf: make vertical stem 1/2 stemthickness wide to
7772         reduce aliasing effects.
7773
7774         * lily/tie-column.cc (set_chord_outlines): bugfix: insert complete
7775         box in skyline.
7776
7777 2005-09-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7778
7779         * lily/tie.cc (get_configuration): don't crash if left_dot is NULL.
7780
7781         * flower/include/real.hh: std::fabs too.
7782
7783 2005-09-08  Jan Nieuwenhuizen  <janneke@gnu.org>
7784
7785         * Documentation/user/lilypond.tely: Spell Baßtuba in UTF-8 (Werner). 
7786
7787         * lily, flower: Include C++ iso C headers.  Import namespace std
7788         throughout.
7789
7790         * lily/side-position-interface.cc: 
7791         * lily/scm-hash.cc: 
7792         * lily/note-head.cc: 
7793         * lily/include/includable-lexer.hh: 
7794         * flower/include/string-data.icc: Remove using std::*.
7795
7796         * lily, flower: Include C++ iso C headers.  Import namespace std
7797         throughout.
7798
7799         * lily/side-position-interface.cc: 
7800         * lily/scm-hash.cc: 
7801         * lily/note-head.cc: 
7802         * lily/include/includable-lexer.hh: 
7803         * flower/include/string-data.icc: Remove using std::*.
7804
7805         * Documentation/user/instrument-notation.itely (Entering lyrics):
7806         Multiple latin-1->utf-8 conversion fix.
7807
7808         * Documentation/user/*tely: Update Emacs cookie to utf-8.
7809
7810 2005-09-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7811
7812         * lily/tie.cc (get_configuration): also avoid dots for non-space
7813         situations.
7814
7815 2005-09-07  Jan Nieuwenhuizen  <janneke@gnu.org>
7816
7817         * Documentation/user/instrument-notation.itely: Bugfix.
7818
7819 2005-09-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7820
7821         * tex/GNUmakefile: don't install texinfo.tex
7822
7823         * tex/ : cleanup: remove unused files.
7824
7825         * lily/general-scheme.cc: remove my_{isinf,isnan}.
7826
7827         * flower/include/real.hh: using std::{isnan,isinf}
7828         
7829         * VERSION (PATCH_LEVEL): release 2.7.9
7830
7831 2005-09-05  Graham Percival  <gpermus@gmail.com>
7832
7833         * Documentation/user/ instrument-notation.itely,
7834         advanced-notation.itely: minor tweaks.
7835
7836         * input/test/script-chart.ly: add item padding.
7837
7838 2005-09-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7839
7840         * flower/offset.cc: use math.h iso. <cmath>
7841
7842         * scm/ps-to-png.scm (make-ps-images): use png16m again, for sake
7843         of IE users.
7844
7845         * scm/framework-eps.scm (dump-stencils-as-EPSes): cleanup.
7846         (widen-left-stencil-edges): new function. Fix alignment problems
7847         with LaTeX includegraphics.
7848
7849         * lily/text-interface.cc (interpret_markup): use abort().
7850
7851 2005-09-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7852
7853         * input/regression/tie-chord.ly (testLong): add a chord in 4ths
7854
7855         * lily/tie.cc (get_configuration): update bezier shape as we
7856         change Y positions.
7857         (get_configuration): don't move large ties if we're outside of the
7858         staff.
7859
7860 2005-09-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7861
7862         * scm/define-markup-commands.scm (strut): swap X and Y dims.
7863         
7864 2005-09-03  Jan Nieuwenhuizen  <janneke@gnu.org>
7865
7866         * .cvsignore: Add auto-generated configure files and then some.
7867
7868 2005-09-02  Jan Nieuwenhuizen  <janneke@gnu.org>
7869
7870         * scm/define-grobs.scm (DynamicLineSpanner): Add
7871         X-extent-callback.  Fixes hairpin-slur collision.
7872
7873 2005-08-31  Graham Percival  <gpermus@gmail.com>
7874
7875         * Documentation/user/advanced-notation.itely,
7876         basic-notation.itely: minor changes.
7877
7878 2005-08-31  Mats Bengtsson  <mabe@s3.kth.se>
7879
7880         * scm/framework-eps.scm (dump-stencils-as-EPSes): Insert a
7881         \linebreak between each .eps file if \betweenLilyPondSystem is
7882         undefined. 
7883
7884         * Documentation/user/lilypond-book.itely (Integrating LaTeX and
7885         music): Document the \linebreak
7886
7887         * Documentation/user/lilypond-book.itely,
7888         input/tutorial/lbook-latex-test.tex,
7889         Documentation/user/examples.itely: Remove \usepackage{graphics}
7890
7891 2005-08-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7892
7893         * mf/aybabtu.pe.in (i): don't merge alphabet into aybabtu.
7894
7895         * lily/ly-module.cc (make_stand_in_procs_weak): 1.6.4 and earlier
7896         compat bugfix.
7897
7898         * scripts/lilypond-book.py (PREAMBLE_LY): define
7899         inside-lilypond-book
7900         (modify_preamble): new function. Insert \RequirePackage{graphics}
7901         when no {graphics found in preamble.  
7902
7903 2005-08030  Graham Percival  <gpermus@gmail.com>
7904
7905         * Documentation/user/basic-notation.itely, global.itely,
7906         tutorial.itely: misc small changes.
7907
7908 2005-08-30  Jan Nieuwenhuizen  <janneke@gnu.org>
7909
7910         * stepmake/aclocal.m4: Include MY_PATCH_LEVEL in config.make's
7911         VERSION.
7912
7913 2005-08-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7914
7915         * lily/tie-column.cc (new_directions): put Tie down on center
7916         staff line. 
7917
7918         * lily/script-interface.cc (before_line_breaking): use
7919         Grob::programming_error
7920
7921         * scm/ps-to-png.scm (make-ps-images): use pngalpha device.
7922
7923         * scripts/lilypond-book.py (get_latex_textwidth): oops. Take [0]
7924         of splitext.
7925
7926 2005-08-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7927
7928         * VERSION (PACKAGE_NAME): VERSION release 2.7.8
7929
7930 2005-08-29  Werner Lemberg  <wl@gnu.org>
7931
7932         * mf/GNUmakefile: Add `-f' flag to `rm' command while removing
7933         the `*.scale.pfa' files to avoid warnings.
7934
7935 2005-08-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7936
7937         * lily/tempo-performer.cc (process_music): idem.
7938
7939         * lily/midi-def.cc (get_tempo): Rational to int conversion bug.
7940
7941 2005-08-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7942
7943         * Documentation/user/advanced-notation.itely (Text markup): not a
7944         fragment.
7945
7946         * lily/midi-item.cc (to_string): use to_int() iso. int cast.
7947
7948         * lily/staff-performer.cc (initialize): add tempo/name to
7949         audio_staff_
7950
7951
7952 2005-08-26  Graham Percival  <gpermus@gmail.com>
7953
7954         * Documentation/user/advanced.itely: add text-only example.
7955
7956         * Documentation/user/invoking.itely: add index entries for
7957         convert-ly.
7958
7959         * Documentation/user/ tutorial.itely, basic-notation.itely:
7960         small fixes suggested by Steve D.  Thanks!
7961
7962 2005-08-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7963
7964         * input/regression/markup-bidi-pango.ly: new file.
7965
7966         * lily/pango-font.cc (pango_item_string_stencil): make Mingw code
7967         standard. Remove #ifdef. Remove memleak.
7968         (text_stencil): use text_dir to decide how to composite items.
7969         (text_stencil): determine uniform text direction for the entire
7970         string.
7971
7972         * scripts/lilypond-book.py (output_name): remove
7973         latex_filter_cmd. Non-portable to non-Unix systems. 
7974         (get_latex_textwidth): use File.write and os.unlink() instead.
7975
7976         * THANKS: add Vicente & Trevor.
7977
7978         * lily/grob.cc (discretionary_processing): look up origin for
7979         programming_error too. 
7980
7981         * input/regression/tie-broken.ly: new file.
7982
7983         * lily/tie-column.cc (set_chord_outlines): set outline for line
7984         break case too.
7985         
7986 2005-08-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
7987
7988         * lily/pango-font.cc (text_stencil): don't translate glyphs in
7989         unscaled transform, just translate stencils.
7990
7991         * ly/performer-init.ly: init timing to #t.  Fixes bar checks in
7992         MIDI.
7993
7994         * scm/define-markup-commands.scm (wordwrap-string): use
7995         text-direction
7996         (wordwrap-stencils): idem.
7997         (line): idem.
7998         (fill-line): idem.
7999         (wordwrap-stencils): translate last line to right for
8000         text-direction = LEFT.
8001
8002         * scm/define-grob-properties.scm (all-user-grob-properties): add
8003         text-direction.
8004
8005 2005-08-25  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8006
8007         * lily/lily-parser.cc (Lily_parser): also copy output_basename_
8008         when copying a Lily_parser object.
8009
8010 2005-08-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8011
8012         * scm/define-markup-commands.scm (null): add null markup.
8013
8014 2005-08-25  Mats Bengtsson  <mabe@s3.kth.se>
8015
8016         * lily/item.cc: Add documentation of center-invisible
8017
8018 2005-08-24  Graham Percival  <gpermus@gmail.com>
8019
8020         * Documentation/user/advanced-notation.itely: add info about
8021         raising text.
8022
8023         * Documentation/user/programming-interface.itely: fix example
8024         involving raised text.
8025
8026 2005-08-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8027
8028         * lily/beam.cc (print): fix X start/end points of isolated
8029         beamlets.
8030
8031         * scm/output-ps.scm (grob-cause): escape spaces in URLs.
8032
8033         * lily/multi-measure-rest.cc (set_text_rods): new function.
8034
8035         * lily/vertical-align-engraver.cc (process_music): call
8036         Align_interface::set_axis(). This forces #'elements to be ordered,
8037         preventing random vertical reordering of staves.
8038
8039         * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
8040         add avoid-slur property. 
8041
8042         * Documentation/user/basic-notation.itely (Measure repeats): add
8043         countPercentRepeats example.
8044
8045         * Documentation/user/advanced-notation.itely (Other text markup
8046         issues): remove remark about normal-font.  We have \normal-text
8047
8048         * input/regression/tie-chord.ly: add note about remaining bugs.
8049
8050         * lily/tie.cc (print): try Tie_column::set_directions () if
8051         control-points not yet defined.
8052
8053 2005-08-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8054
8055         * lily/system-start-delimiter.cc (staff_brace): don't remove brace
8056         extent. This fixes braces falling out of the EPS bbox.
8057
8058         * mf/feta-beugel.mf (braces_per_font): make brace glyph align
8059         exactly to bbox.
8060
8061 2005-08-23  Graham Percival  <gpermus@gmail.com>
8062
8063         * {various} : change #up->#UP and #down->#DOWN.
8064
8065         * ly/titling-init.ly: Spacing fix when using printallheaders=##t.
8066
8067         * Documentation/user/advanced-notation.itely: clarify
8068         what objects handles text on a multimeasure rest.
8069
8070 2005-08-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8071
8072         * VERSION (PATCH_LEVEL): release 2.7.7
8073
8074 2005-08-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8075
8076         * make/lilypond-vars.make: set -dgs-font-load for "make web" 
8077
8078         * Documentation/topdocs/INSTALL.texi (Top): add GS bugfix requirement.
8079
8080         * input/regression/*.ly: formatting clean-up. Default layout
8081         before music expression.
8082
8083         * input/mutopia/R.Schumann/GNUmakefile (examples): switch off
8084         romanze28-2 example.
8085
8086         * scm/ps-to-png.scm: remove dir-re function.
8087         (make-ps-images): generate page names, instead of globbing them.
8088         This brings down LilyPond memory usage for make web by a factor
8089         10. 
8090
8091         * scripts/lilypond-book.py (Lilypond_snippet.png_is_outdated):
8092         don't use glob. With 3000 files, globbing
8093         Documentation/user/out-www/ can take too much time. 
8094         
8095         * lily/lily-guile.cc (gulp_file_to_string): take size argument.
8096
8097         * lily/general-scheme.cc (LY_DEFINE): take optional size argument.
8098
8099         * input/regression/tie-manual.ly: new file
8100
8101         * input/regression/tie-chord.ly: update.
8102
8103         * flower/include/interval.hh (struct Interval_t): 
8104
8105         * lily/tie.cc (distance): new function 
8106         (height): new function.
8107         (init): new function
8108         (Tie_details): new struct.
8109
8110         * lily/skyline.cc (skyline_height): new function.
8111
8112         * lily/tie-column.cc (set_chord_outlines): new function.
8113         (new_directions): read tie-configuration
8114
8115         * lily/skyline.cc: fix ASCII art.
8116         
8117 2005-08-22  Mats Bengtsson  <mabe@s3.kth.se>
8118
8119         * python/convertrules.py (string_or_scheme): Fix spelling error
8120
8121 2005-08-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8122         
8123         * lily/tie-column.cc (set_directions): set directions only once.
8124         (add_configuration): new function.
8125
8126         * lily/tie.cc (set_control_points): new function
8127
8128         * lily/tie-column.cc (new_directions): new function.
8129
8130         * ly/music-functions-init.ly: set 'pitch property
8131         iso. trill-pitch. This makes \relative work with \pitchedTrill
8132
8133         * lily/tie.cc (get_configuration): new function. Don't generate
8134         control points, rather, generate configuration.
8135         remove head-pair property.
8136
8137         * lily/include/tie.hh (struct Tie_configuration): new struct.
8138
8139 2005-08-22  Heikki Junes  <hjunes@cc.hut.fi>
8140
8141         * Documentation/topdocs/NEWS.tely: clarify.
8142
8143 2005-08-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8144
8145         * lily/tie.cc: remove minimum-length
8146
8147         * scm/define-grob-properties.scm (all-user-grob-properties):
8148         remove staffline-clearance, y-offset 
8149
8150         * input/regression/tie-dots.ly (Module): remove.
8151
8152         * lily/tie.cc (get_control_points): rewrite. Put short ties in
8153         staff-spaces, make long ties cross staff lines. Avoid flags and dots.
8154
8155         * input/regression/tie-single.ly: new file.
8156
8157 2005-08-21  Graham Percival  <gpermus@gmail.com>
8158
8159         * ly/bagpipe.ly: fix compile problem.
8160
8161 2005-08-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8162
8163         * lily/midi-item.cc (name): new method.
8164
8165         * lily/staff-performer.cc (acknowledge_audio_element): use
8166         signature of baseclass.
8167
8168         * lily/engraver-group.cc (do_announces): move recursion call out
8169         of while loop. 
8170
8171         * lily/drum-note-performer.cc (class Drum_note_performer): use
8172         process_music everywhere.
8173
8174         * ly/performer-init.ly: add default children everywhere.
8175
8176         * lily/paper-book.cc (output): call paper-book-write-midis
8177         directly: always write MIDI, even if no \layout {} block. 
8178
8179 2005-08-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8180
8181         * VERSION (PACKAGE_NAME): release 2.7.6
8182
8183         * lily/percent-repeat-engraver.cc (try_music): don't print warning
8184         about not being able to handle repeat.
8185
8186 2005-08-19  Jan Nieuwenhuizen  <janneke@gnu.org>
8187
8188         * Documentation/user/examples.itely (Piano templates):
8189         * lily/include/performer-group.hh: Remove last traces of
8190         Performer_group_performer.  Fixes make web.
8191
8192 2005-08-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8193
8194         * Documentation/user/examples.itely (Piano templates): change
8195         Engraver_group_engraver -> Engraver_group
8196
8197         * lily/ly-module.cc (make_stand_in_procs_weak): only kludge if
8198         scm_stand_in_procs is not weak_any.
8199
8200         * lily/volta-bracket.cc (print): don't use strcmp().
8201
8202         * lily/volta-engraver.cc (process_music): use
8203         Text_interface::is_markup() for setting the 'text property of the
8204         volta bracket.
8205
8206         * input/mutopia/claop.py (accents): update syntax to 2.6
8207
8208         * scm/define-context-properties.scm
8209         (all-user-translation-properties): add countPercentRepeats.
8210
8211         * Documentation/user/basic-notation.itely (Measure repeats): add
8212         isolated percent example.
8213
8214 2005-08-18  Graham Percival  <gpermus@gmail.com>
8215
8216         * input/ {various}: change direction #1, #-1 to
8217         #up/#down or \fooUp, \fooDown.
8218
8219         * Documentation/user/music-glossary.tely: #-1 to #down.
8220
8221         * ly/bagpipe.ly, engraver-init.ly, property-init.ly: #1
8222         to #up, #-1 to #down.
8223
8224 2005-08-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8225
8226         * lily/include/engraver-group.hh: rename.
8227
8228         * lily/include/performer-group.hh: rename.
8229
8230 2005-08-18  Mats Bengtsson  <mabe@s3.kth.se>
8231
8232         * input/test/script-abbreviations.ly: Removed some old LaTeX
8233         left overs.
8234
8235 2005-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
8236
8237         * python/convertrules.py (conv): inside-slur -> avoid-slur.
8238         Remove functions.  Remove if 1: constructs, reindent.
8239
8240         * scripts/convert-ly.py (add_version): Add functions from
8241         convertrules.py
8242
8243         * scm/script.scm (default-script-alist):
8244         s/priority/script-priority.  Fixes script stacking.  Backportme.
8245         (Fermata): Very low priority.
8246
8247 2005-08-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8248
8249         * input/regression/*.ly: remove superfluous \score blocks. Reindent.
8250
8251         * input/regression/slur-script.ly: remove padding tweaks. Add
8252         comment strings.
8253
8254         * lily/note-spacing.cc (get_spacing): remove kludge for EOL wide
8255         time sigs and related stuff.
8256
8257         * scm/define-grob-properties.scm (all-user-grob-properties): add
8258         @code{} tags to property description.
8259
8260         * lily/include/line-group-group-engraver.hh (Module): remove file.
8261
8262         * python/convertrules.py (conv): add rule for
8263         Engraver_group_engraver -> Engraver_group.
8264
8265         * lily/include/performer-group-performer.hh: analogous.
8266
8267         * lily/include/engraver-group-engraver.hh: rename to Engraver_group.
8268
8269         * lily/context-def.cc (instantiate): check for
8270         Engraver_group_engraver and Performer_group_performer not
8271         Engraver/Performer. Fixes crashes when doing \with { \consists .. }
8272  
8273 2005-08-18  Jan Nieuwenhuizen  <janneke@gnu.org>
8274
8275         * input/les-nereides.ly: Remove three fingering tweaks, update
8276         remaining one.
8277
8278         * input/regression/slur-script-inside.ly: Update, fix doc.
8279
8280         * scm/script.scm: Update to avoid-slur.
8281
8282         * scm/define-grob-properties.scm (avoid-slur): New property.
8283
8284         * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
8285         * lily/slur-engraver.cc (acknowledge_extra_object): Invoke
8286         outside_slur_callback if avoid-slur != #'inside.
8287
8288         * scm/define-grobs.scm (Fingering, Textscript): No
8289         inside-slur/outside-slur preference.
8290         (DynamicLineSpanner): Always outside slur.
8291
8292         * input/regression/slur-script.ly: More tests.
8293
8294 2005-08-17  Graham Percival  <gpermus@gmail.com>
8295
8296         * Documentation/user/lilypond-book: fix notime entry.
8297
8298         * Documentation/user/advanced-notation.itely: add info on
8299         getting an I rehearsal mark.
8300
8301         * Documentation/user/putting.itely: reinstate "I", re-enforce
8302         the fact that \override numbers are the result of
8303         experimentation and personal taste.
8304
8305         * Documentation/user/invoking.itely: update convert-ly bugs.
8306
8307 2005-08-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8308
8309         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): set timing
8310         to #t.
8311
8312         * lily/timing-translator.cc (initialize): don't initialize timing.
8313
8314         * input/regression/stem-spacing.ly (Module): remove file.
8315
8316         * input/regression/spacing-stick-out.ly: specify Score context for
8317         \override
8318
8319         * input/regression/clefs.ly: remove spurious {}s 
8320
8321 2005-08-17  Heikki Junes  <hjunes@cc.hut.fi>
8322
8323         * Documentation/topdocs/NEWS.tely,
8324         input/regression/repeat-percent-count.ly: clarify a bit.
8325
8326 2005-08-16  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8327
8328         * input/no-notation/display-lily-tests.ly: delete
8329         display-lily-init call.
8330
8331         * ly/music-functions-init.ly (displayLilyMusic): move
8332         display-lily-init call at top level, so that the user should not
8333         have to call it.
8334
8335         * scm/define-music-display-methods.scm (note-name->lily-string):
8336         retrieve note names directly from pitchnames using new function `rassoc'.
8337         (display-lily-init): note names list construction removed.
8338
8339 2005-08-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8340
8341         * THANKS: spello.
8342
8343         * lily/lily-parser.cc (get_header): copy module, instead of
8344         returning it.
8345
8346         * Documentation/topdocs/NEWS.tely (Top): add entry for percent
8347         counters.
8348
8349         * Documentation/user/basic-notation.itely (Measure repeats): add
8350         links to Counter grobs.
8351
8352         * scm/define-grobs.scm (all-grob-descriptions): add
8353         DoublePercentRepeatCounter
8354         (all-grob-descriptions): add PercentRepeatCounter
8355
8356         * lily/percent-repeat-engraver.cc (class Percent_repeat_engraver):
8357         also create counter grobs.
8358
8359         * lily/separation-item.cc (extremal_break_aligned_grob): don't
8360         return grob without space-alist.
8361
8362         * input/proportional.ly: tune staff-padding.
8363
8364         * input/regression/repeat-percent-count.ly: new file. 
8365
8366 2005-08-16  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8367
8368         * input/no-notation/display-lily-tests.ly: moved from
8369         input/regression/ to input/no-notation. Be sure to call
8370         `display-lily-init' before trying to use the display function.
8371
8372 2005-08-16  Mats Bengtsson  <mabe@s3.kth.se>
8373
8374         * scripts/lilypond-book.py (option_definitions): Don't localize
8375         the empty string. Fixes bug when --psfonts was used with
8376         non-English locale.
8377
8378 2005-08-15  Graham Percival  <gpermus@gmail.com>
8379
8380         * lily/tuplet-bracket.cc: simple build fix.
8381
8382         * Documentation/user/putting.itely: use "we" instead of "I".
8383
8384         * Documentation/user/basic-notation.itely: cautionary accidentals
8385         work with naturals, too.
8386
8387 2005-08-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8388
8389         * lily/tuplet-bracket.cc (calc_position_and_height): add
8390         staff-padding support.
8391
8392         * input/proportional.ly: set staff-padding.
8393         
8394         * VERSION (PATCH_LEVEL): release 2.7.5
8395
8396         * input/mutopia/J.S.Bach/wtk1-fugue2.ly (bassdux): text formatting
8397         fixes. Remove tweaks.
8398
8399         * input/regression/tuplet-slope.ly: add a test case.
8400
8401         * lily/tuplet-bracket.cc (calc_position_and_height): revert
8402         erroneous fix. Add spanner bounds to offset array with relative X
8403         positions.
8404
8405         * ly/engraver-init.ly: add Rest_engraver only once.
8406
8407         * scm/define-music-display-methods.scm (KeyChangeEvent): only do
8408         (*parser*) lookup if (*parser*) != #f.
8409
8410 2005-08-15  Jan Nieuwenhuizen  <janneke@gnu.org>
8411
8412         * lily/phrasing-slur-engraver.cc (acknowledge_extra_object):
8413         Cut-and paste update.
8414
8415         * input/regression/slur-script.ly: Add example of reverting
8416         inside-slur for fingering.
8417
8418         * scm/define-grobs.scm (DynamicLineSpanner, Fingering,
8419         TextScript): Explicitly set inside-slur #f, forcing these out of slur.
8420
8421         * lily/slur-engraver.cc (acknowledge_extra_object): Only invoke
8422         outside_slur_callback if inside-slur == #f (as opposed to unset).
8423
8424 2005-08-14  Jan Nieuwenhuizen  <janneke@gnu.org>
8425
8426         * tex/GNUmakefile (INSTALLATION_FILES): Remove enc symlink setup,
8427         encoding files are already removed.
8428
8429 2005-08-15  Mats Bengtsson  <mabe@s3.kth.se>
8430
8431         * Documentation/user/advanced-notation.itely (Instrument names):
8432         Document a workaround for instrument names that collide with
8433         system start braces/brackets.
8434
8435 2005-08-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8436
8437         * lily/rest-collision.cc (do_shift): spello.
8438
8439         * input/proportional.ly: use #'used property. Set break-overshoot
8440         property.
8441
8442         * mf/feta-arrow.mf: center on arrow tip center, iso. tip edge.
8443
8444         * lily/paper-column.cc: add #'used property
8445
8446         * lily/mark-engraver.cc (stop_translation_timestep): set grob
8447         array for staves found.
8448
8449         * lily/metronome-engraver.cc (stop_translation_timestep): set grob
8450         array for stavesFound.
8451
8452         * lily/staff-spacing.cc (next_note_correction): add fixed and
8453         space to calling convention. This fixes spacing of accidentals
8454         after barlines.
8455
8456         * input/regression/spacing-accidental-stretch.ly: add barline -
8457         accidental case.
8458
8459         * scm/framework-ps.scm (page-header): add version number to
8460         creator
8461         (eps-header): idem.
8462
8463         * mf/feta-bolletjes.mf: swap d0 and u0 fa heads.
8464         
8465 2005-08-13  Graham Percival  <gpermus@gmail.com>
8466
8467         * Documentation/user/global.itely: add "fit as much as
8468         possible onto this page" example (Vertical spacing).
8469
8470 2005-08-13  Jan Nieuwenhuizen  <janneke@gnu.org>
8471
8472         * *: Nitpick run.
8473
8474         * buildscripts/fixcc.py: Fixes.
8475
8476 2005-08-12  Graham Percival  <gpermus@gmail.com>
8477
8478         * Documentation/user/advanced-notation.itely: add markup
8479         example to Text spanners.
8480
8481 2005-08-12  Mats Bengtsson  <mabe@s3.kth.se>
8482
8483         * Documentation/user/basic-notation.itely (Ties): Add example of
8484         tying a tremolo to a chord. Thanks to Steve Doonan. 
8485
8486         * lily/tie-engraver.cc: Add tieWaitForNote to the list of read
8487         properties and move tieMelismaBusy to the list of written
8488         properties. 
8489
8490 2005-08-12  Heikki Junes  <hjunes@cc.hut.fi>
8491
8492         * po/TODO: suggest to use a dedicated tool like kbabel.
8493
8494         * po/fi.po: update using kbabel.
8495
8496 2005-08-12  Jan Nieuwenhuizen  <janneke@gnu.org>
8497
8498         * *: Remove obsolete files.  Nitpick run.
8499
8500         * lily/lily-guile.cc (parse_symbol_list): Bugfix.
8501
8502 2005-08-11  Jan Nieuwenhuizen  <janneke@gnu.org>
8503
8504         * mf/GNUmakefile (get-*-fonts): Rename from get-*-pfa.  Copy SVG
8505         too.
8506
8507         * Documentation/topdocs/NEWS.tely (Top): Add slur script feature.
8508
8509         * lily/lily-guile.cc (parse_symbol_list): Rewrite.  Grok multiple
8510         whitespace as symbol separator.
8511
8512         * lily/side-position-interface.cc: Add slur-padding.
8513
8514         * input/regression/slur-script.ly: Fixed.  Backportme?  This is
8515         quite a large fix, and it never worked in a stable release; so not
8516         really a regression.
8517
8518         * lily/phrasing-slur-engraver.cc (class Phrasing_slur_engraver):
8519         Update cut and paste code from Slur_engraver.
8520
8521         * scm/define-grob-interfaces.scm (dynamic-line-spanner-interface):
8522         Add.
8523
8524         * scm/define-grobs.scm (DynamicLineSpanner): Add
8525         dynamic-line-spanner-interface.
8526         (DynamicLineSpanner, TextScript, Fingering): Add slur-padding.
8527
8528 2005-08-09  Jan Nieuwenhuizen  <janneke@gnu.org>
8529
8530         * lily/slur-engraver.cc (acknowledge_extra_object): Bugfix: use
8531         to_boolean () so that non-set 'inside-slur means false.
8532
8533         * lily/slur.cc (outside_slur_callback): Bugfixes: make sure that
8534         slur has control-points.  Skip script without direction.  Always
8535         do_shift if script inside slur, even if slur not contained in
8536         script y-extent.  Increment k in loop.
8537
8538 2005-08-11  Mats Bengtsson  <mabe@s3.kth.se>
8539
8540         * scm/define-markup-commands.scm: Improved regexp to search for
8541         EPS bounding boxes and corrected call to ly:warning.
8542
8543 2005-08-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8544
8545         * Documentation/user/programming-interface.itely (Displaying music
8546         expressions): doc for \displayLilyMusic. Also some precisions in
8547         "Markup construction in Scheme"
8548
8549 2005-08-10  Mats Bengtsson  <mabe@s3.kth.se>
8550
8551         * scm/define-markup-commands.scm (normal-text): Added 2 new
8552         markup commands, \normal-text and \medium (the latter thanks to
8553         Bruce Fairchild). 
8554
8555 2005-08-08  Graham Percival  <gpermus@gmail.com>
8556
8557         * Documentation/user/programming-interface.itely: fix @{ @}.
8558
8559         * scm/define-markup-commands.scm: add linewidth info to
8560         \justify and \wordwrap, add "upright is the opposite of italic".
8561
8562         * Documentation/user/advanced-notation.itely: shaped->shape,
8563         add (cons (markup "foo")) type of example to text markup,
8564         reword multi-measure rests section.
8565
8566         * lily/note-heads-engraver.cc: changed Shaped->Shape in a
8567         comment.  No actual code was touched.
8568
8569         * Documentation/user/invoking.itely: add more info about
8570         \include.  Thanks, Bruce!
8571
8572         * THANKS: add Bruce Fairchild, alphabetise.
8573
8574         * Documentation/user/global.itely: document \score{\header{}}
8575         behavior.
8576
8577         * Documentation/user/basic-notation.itely: reword multi-measure
8578         rest discussion in Rests.
8579
8580 2005-08-08  Mats Bengtsson  <mabe@s3.kth.se>
8581
8582         * Documentation/user/programming-interface.itely (Markup
8583         construction in Scheme): Corrected example and tried to clarify
8584         the implicit \line in the table.
8585
8586 2005-08-07  Graham Percival  <gpermus@gmail.com>
8587
8588         * Documentation/user/instrument-notation.itely: moved
8589         some bagpipe info back into the bagpipe section.  Somehow
8590         it ended up in the "other vocal issues" section?!  :o_O
8591
8592 2005-08-07  Jan Nieuwenhuizen  <janneke@gnu.org>
8593
8594         * scm/framework-ps.scm (dir-join): Rename from path-join (joins
8595         directories, not paths).
8596
8597 2005-08-06  Jan Nieuwenhuizen  <janneke@gnu.org>
8598
8599         * scm/framework-ps.scm (munge-lily-font-name): Bugfix: Munge only
8600         plain emmentaler/aybabtu.  Backportme.
8601
8602         * lily/tuplet-bracket.cc (calc_position_and_height): Bugfix:
8603         missing dir correction.
8604
8605 2005-08-05  Graham Percival  <gperlist@shaw.ca>
8606
8607         * scm/define-markup-commands: fix reversed justify/wordwrap
8608         doc strings.
8609
8610 2005-08-05  Jürgen Reuter  <reuter@ipd.uka.de>
8611
8612         * lily/ligature-engaver.cc, lily/coherent-ligature-engaver.cc,
8613         lily/gregorian-ligature-engaver.cc,
8614         lily/include/ligature-engraver.hh,
8615         lily/include/coherent-ligature-engraver.hh,
8616         lily/include/gregorian-ligature-engraver.hh: make these classes
8617         truely abstract.  This should fix some internal oddities such as
8618         duplicate as well as dead translator/property declarations, and
8619         also some dead code.
8620
8621         * lily/ligature-bracket-engraver.cc, lily/ligature-engraver.cc:
8622         bugfix: avoid message "junking empty ligature" on ligature
8623         brackets by collecting dummy grobs.
8624
8625 2005-08-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8626
8627         * lily/tuplet-bracket.cc (print): default right overshoot to 0.0
8628
8629         * input/proportional.ly (staffKind): bugfix.
8630         (staffKind): updates by Trevor Baca.
8631
8632         * scm/define-grobs.scm (all-grob-descriptions): remove arrows as
8633         default layout. 
8634
8635         * lily/tuplet-bracket.cc (print): check whether edge-text is a
8636         pair.
8637
8638         * lily/beam.cc (rest_collision_callback): call position_beam() if
8639         necessary.
8640
8641         * VERSION: release 2.7.4
8642
8643         * input/regression/spacing-uniform-stretching.ly: new file.
8644
8645         * lily/spacing-loose-columns.cc (set_loose_columns): use robust_relative_extent().
8646
8647         * Documentation/topdocs/NEWS.tely (Top): add Nicolas as
8648         contributor.
8649
8650         * lily/include/ly-module.hh: define MODULE_GC_KLUDGE globally.
8651
8652         * input/proportional.ly: new file.
8653
8654         * lily/tuplet-bracket.cc (after_line_breaking): don't suicide if
8655         columns is empty
8656
8657         * lily/tuplet-engraver.cc (finalize): new function. Reset right
8658         bounds to currentCommandColumn for the last step.
8659         (start_translation_timestep): if tupletFullLength is set, set
8660         bound to Paper Column
8661
8662         * input/regression/tuplet-full-length.ly (indent): new file.
8663
8664         * lily/spacing-loose-columns.cc (set_loose_columns): space a whole
8665         clique of loose columns, eg. a set of grace notes in strict
8666         notespacing.
8667
8668         * input/regression/spacing-strict-spacing-grace.ly: new file.
8669
8670         * lily/key-signature-interface.cc: change property name to
8671         alteration-alist
8672
8673         * lily/key-engraver.cc (read_event): read keyAlterationOrder, not
8674         keyAccidentalOrder
8675
8676         * python/convertrules.py (conv): keyAccidentalOrder ->
8677         keyAlterationOrder
8678
8679         * lily/key-engraver.cc (create_key): always print a cancellation
8680         for going to C-major/A-minor, regardless of printKeyCancellation.
8681         (create_key): remove typecheck for visibility. This fixes key
8682         signature not being printed.
8683
8684         * lily/spacing-determine-loose-columns.cc: new file.
8685
8686         * input/regression/spacing-strict-notespacing.ly: new file.
8687
8688         * lily/spacing-spanner.cc (generate_springs): rename from
8689         do_measure. 
8690         (generate_pair_spacing): new function.
8691         (init, generate_pair_spacing): set between-cols for floating
8692         nonmusical columns.
8693
8694         * lily/spaceable-grob.cc (get_spring): new function. 
8695
8696         * lily/tuplet-bracket.cc (print): on the left, the overshoot is
8697         relative to the right edge of the prefatory matter.
8698
8699         * lily/beam.cc (print): read break-overshoot to determine where to
8700         stop/start broken beams.
8701
8702         * input/regression/spanner-break-overshoot.ly: new file.
8703
8704 2005-08-04  Graham Percival  <gperlist@shaw.ca>
8705
8706         * ly/bagpipe.ly: updated.
8707
8708         * Documentat/user/instrument.itely: un-comment out bagpipe example.
8709
8710 2005-08-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8711
8712         * lily/dynamic-engraver.cc (acknowledge_slur): add slur to
8713         support: now (de)crescs avoid slurs as well.
8714
8715         * Documentation/user/instrument-notation.itely (Bagpipe example):
8716         comment out non-functioning bagpipe example.
8717         (Bagpipe definitions): idem.
8718
8719         * Documentation/topdocs/NEWS.tely (Top): add uniform-stretching example.
8720         (Top): add proportionalNotationDuration example.
8721
8722         * input/regression/spacing-proportional.ly: new file.
8723
8724         * lily/tuplet-bracket.cc (parallel_beam): broken bracket never is
8725         synched to a beam.
8726
8727         * lily/beam.cc (shift_region_to_valid): divide by zero fix. This
8728         fixes beams with a single stem (eg. beams across linebreaks.)
8729
8730         * lily/parser.yy (simple_string): allow \new STRING_IDENTIFIER.
8731
8732         * flower/rational.cc (operator +): prevent overflow. This fixes
8733         heavily nested tuplets.
8734
8735         * lily/auto-beam-engraver.cc (derived_mark): new method. Yes. We
8736         have to protect even those unlikely to be corrupted data members.  
8737
8738 2005-08-04  Graham Percival  <gperlist@shaw.ca>
8739
8740         * ly/bagpipe.ly: new file.
8741
8742         * THANKS: added Sven Axelsson.
8743
8744 2005-08-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8745
8746         * lily/spacing-engraver.cc (stop_translation_timestep): directly
8747         copy proportionalNotationDuration into currentMusicalColumn if
8748         set.
8749
8750         * lily/spacing-spanner.cc (musical_column_spacing): if
8751         uniform-stretching set, fixed space is 0.0
8752
8753         * input/regression/spacing-multi-tuplet.ly: show
8754         uniform-stretching property.
8755
8756         * lily/spacing-spanner.cc (effective_shortest_duration): new function.
8757
8758         * lily/include/spacing-spanner.hh (class Spacing_spanner): new file.
8759         (struct Spacing_options): new struct.
8760
8761         * lily/spacing-basic.cc: new file.
8762
8763         * lily/spacing-spanner.cc (note_spacing): remove outdated code:
8764         delta_t doesn't have to be smaller than shortest_playing_len
8765
8766 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8767
8768         * input/regression/markup-arrows.ly:  new file.
8769
8770         * lily/tuplet-bracket.cc: document new behavior.
8771
8772         * input/regression/tuplet-broken.ly: new file. Demonstrate tuplets
8773         with line breaks.
8774
8775         * scm/define-markup-commands.scm (arrow-head): arrow-head markup command.
8776
8777         * scm/define-grobs.scm (all-grob-descriptions): set arrows as
8778         default 
8779
8780         * lily/tuplet-bracket.cc: add edge-text property.
8781         add break-overshoot.
8782         (print): read break-overshoot.
8783         (print): read edge-text, add stencils.
8784
8785         * mf/feta-arrow.mf: new file.
8786
8787         * mf/feta-generic.mf: add feta-arrow.
8788
8789 2005-08-03  Mats Bengtsson  <mabe@s3.kth.se>
8790
8791         * Documentation/user/lilypond-book.itely (An example of a
8792         musicological document): Added flag -o to dvips for people who use
8793         the default setting in teTeX where output is sent to the printer. 
8794
8795         * Documentation/user/global.itely (Vertical spacing): Added
8796         reference to the Axis_group_engraver which documents the *Extent
8797         properties.
8798
8799 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8800
8801         * Documentation/user/basic-notation.itely (Tuplets): add note
8802         about nested tuplets. Remove BUG. 
8803
8804         * input/regression/tuplet-nest.ly: update: remove manual hack. 
8805
8806         * lily/tuplet-bracket.cc (print): use robust_scm2drul
8807         (print): manually call print() for subtuplets.
8808         (calc_position_and_height): add subtuplets to the
8809         support. Vertically shift outer tuplet 
8810
8811         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): set
8812         remove-first for Lyrics, ChordNames and FiguredBass
8813
8814         * scm/define-grob-properties.scm (all-internal-grob-properties):
8815         use ly:grob-array? iso. grob-list?
8816         (all-internal-grob-properties): add tuplets grob-array.
8817
8818         * lily/tuplet-bracket.cc (add_tuplet_bracket):
8819         new function
8820
8821 2005-08-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8822
8823         * input/test/time-signature-staff.ly: new file.
8824
8825         * ly/declarations-init.ly (center): escape to Scheme. Fixes
8826         spurious #<Music FingerEvent> errors. Backportme.
8827
8828 2005-08-03  Mats Bengtsson  <mabe@s3.kth.se>
8829
8830         * Documentation/user/programming-interface.itely (Markup
8831         construction in Scheme): Corrected markup syntax in the
8832         translation table.
8833
8834 2005-08-03  Graham Percival  <gperlist@shaw.ca>
8835
8836         * Documentation/user/instrument-notation.itely: small update
8837         to bagpipe notation docs; thanks Sven!
8838
8839         * Documentation/user/basic-notation.itely: add link about trills.
8840
8841 2005-08-02  Graham Percival  <gperlist@shaw.ca>
8842
8843         * Documentation/user/music-glossary: remove accidentally committed
8844         fink patch.
8845
8846 2005-08-02  Yoshinobu Ishizaki  <isizaki@mte.biglobe.ne.jp>
8847
8848         * lily/lily-parser.cc (get_header): new function. Enable multiple
8849         \header definitions.
8850
8851         * lily/parser.yy (lilypond_header_body): use get_header.
8852
8853         * ly/init.ly:
8854         * scm/lily-library.scm (print-score-with-defaults): renamed
8855         $globalheader to $defaultheader
8856             
8857         * Documentation/user/global.itely (Creating titles): added short
8858         explanation that multiple headers are useable.
8859
8860
8861 2005-08-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8862
8863         * lily/module-scheme.cc (LY_DEFINE): new file. 
8864
8865         * Documentation/user/advanced-notation.itely (Font selection): add
8866         doco for make-pango-font-tree.
8867
8868 2005-07-31  Graham Percival  <gperlist@shaw.ca>
8869
8870         * Documentation/user/music-glossary: more languages
8871         for tenuto.
8872
8873         * Docuemntation/user/instrument-notation.itely: minor
8874         update for bagpipe example.
8875
8876 2005-07-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8877
8878         * input/regression/+.ly (TODO): add some text.
8879
8880 2005-07-28  Graham Percival  <gperlist@shaw.ca>
8881
8882         * Documentation/user/invoking.itely: \score begins with music.
8883
8884         * Documentation/user/ basic-notation.itely,
8885         instrument-notation.itely: minor changes.
8886
8887         * Documentation/user/music-glossary.itely: began tenuto entry.
8888
8889 2005-07-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8890
8891         * scm/output-socket.scm (bezier-sandwich): add bezier-sandwich
8892
8893         * mf/feta-bolletjes.mf: swap up and down for aiken heads.
8894
8895 2005-07-27  Graham Percival  <gperlist@shaw.ca>
8896
8897         * Documentation/user/examples.itely: remove bagpipe template.
8898
8899         * Documentation/user/instrument-notation.itely: add bagpipe
8900         section, maybe fix quotes in lyrics.  I hate text encoding.
8901         Clarify chord durations, more bagpipe stuff.
8902
8903 2005-07-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8904  
8905         * lily/accidental-engraver.cc: formatting fixes.
8906
8907         * lily/spacing-spanner.cc (prune_loose_columns): right-items is a
8908         grob-array.
8909
8910         * lily/arpeggio.cc (print): suicide arpeggio for single notehead.
8911
8912         * lily/note-column.cc (arpeggio): new function.
8913
8914         * lily/note-spacing.cc (get_spacing): also take arpeggio into
8915         account for spacing.
8916
8917 2005-07-25  Jan Nieuwenhuizen  <janneke@gnu.org>
8918
8919         * lily/main.cc (sane_setenv)[!ARGV0_RELOCATION]: Also define.
8920         (setup_guile_env): Use it instead of nonstandard setenv.  Fixes
8921         mingw build.
8922         
8923 2005-07-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8924
8925         * scm/lily.scm (lilypond-all): clear anonymous modules after
8926         processing files.
8927
8928 2005-07-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8929
8930         * flower/include/guile-compatibility.hh (SCM_I_CONSP): add
8931         SCM_I_CONSP
8932
8933         * VERSION: 2.7.3 released
8934
8935         * Documentation/user/invoking.itely (Invoking lilypond): add
8936         LILYPOND_GC_YIELD documentation.
8937
8938         * lily/*: cleanups: use scm_from_int iso. scm_int2num. Idem for
8939         scm_from_real / scm_make_real.
8940
8941         * lily/main.cc (setup_guile_env): new function. Set GC min_yields
8942         higher. This increases memory footprint, but provides overall
8943         speedup of 15 to 20%. 
8944
8945         * lily/include/translator.hh (class Translator): remove
8946         PRECOMPUTED_VIRTUAL everywhere.
8947
8948         * lily/include/lily-guile.hh: inline scm_c[ad]r, scm_is_pair.
8949
8950         * lily/context.cc (now_mom): non-recursive now_mom() 
8951
8952         * lily/include/profile.hh: new file.
8953
8954         * lily/profile.cc: new file.
8955
8956         * lily/grob.cc (Grob::Grob): look properties up directly.
8957
8958         * lily/open-type-font.cc (get_indexed_char): cache index -> bbox
8959         lookups.
8960
8961         * lily/include/box.hh (class Box): smob Box type.
8962
8963         * lily/smobs.cc (protect_smob): O(1) GC (un)protection.
8964
8965         * lily/include/smobs.hh (DECLARE_BASE_SMOBS): add methods
8966         protect() and unprotect(). Use throughout.
8967
8968 2005-07-24  Nicolas Sceaux  <nicolas.sceaux@free.fr>
8969
8970         * Documentation/topdocs/NEWS.tely: new item for \displayLilyMusic
8971
8972         * scm/define-music-display-methods.scm (markup->lily-string):
8973         markup elements can also be strings (without simple-markup
8974         appended)
8975
8976 2005-07-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8977
8978         * lily/context.cc (where_defined): also assign value in
8979         where_defined().
8980
8981         * lily/bezier.cc (get_other_coordinate): use curve_coordinate
8982         (curve_coordinate): new function
8983
8984         * lily/simple-spacer.cc (add_columns): only add rods between
8985         column i and begin/end if keep-inside-line is set (this repleces
8986         allow-outside-line as default)
8987
8988 2005-07-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
8989
8990         * lily/tuplet-engraver.cc (start_translation_timestep): only read
8991         tupletSpannerDuration if applicable.
8992
8993         * lily/font-size-engraver.cc (process_music): read fontSize only
8994         once per timestep.
8995
8996         * lily/engraver*cc: use throughout.
8997         
8998         * lily/include/translator.icc (ADD_ACKNOWLEDGER): new macro.
8999
9000         * lily/translator.cc (add_acknowledger): new file. Directly jump
9001         into an Engraver::acknowledge_xxx () method based on a grobs
9002         interface-list.
9003
9004         * lily/include/translator-dispatch-list.hh (class
9005         Engraver_dispatch_list): new struct, new file.
9006
9007         * scm/define-context-properties.scm
9008         (all-internal-translation-properties): remove acceptHashTable,
9009         acknowledgeHashTable
9010
9011         * lily/translator-group.cc (mark_smob): idem for acceptHashTable.
9012
9013         * lily/engraver-group-engraver.cc (Engraver_group_engraver):
9014         change acknowledgeHashTable to C++ member. 
9015
9016         * lily/rest-collision.cc (do_shift): use extract_grob_set().
9017
9018 2005-07-22  Nicolas Sceaux  <nicolas.sceaux@free.fr>
9019
9020         * scm/display-lily.scm: new file. Define a `display-lily-music'
9021         function, that displays the music expression given as an argument,
9022         using LilyPond notation.
9023
9024         * scm/define-music-display-methods.scm: new file. Implementation
9025         of display methods for each music type.
9026
9027         * ly/music-functions-init.ly (displayLilyMusic): new function for
9028         displaying music with LilyPond notation.
9029
9030         * input/regression/display-lily-tests.ly: new regression test file
9031         for `display-lily-music'.
9032
9033         * scm/markup.scm: remove obsolete debugging code (for printing
9034         markups with LilyPond notation).
9035
9036         * scm/define-music-types.scm (music-name-to-property-table):
9037         * scm/clef.scm (supported-clefs): export, in order to be accessible
9038         from the (scm display-lily) module.
9039
9040 2005-07-22  Jan Nieuwenhuizen  <janneke@gnu.org>
9041
9042         * Documentation/topdocs/NEWS.tely (Top): Typo.
9043
9044 2005-07-22  Heikki Junes  <hjunes@cc.hut.fi>
9045
9046         * Documentation/index.html.in, Documentation/texinfo.css,
9047           stepmake/bin/text2html.py, buildscripts/mutopia-index.py,
9048           Documentation/bibliography/index.html.in,
9049           Documentation/bibliography/html-long.bst: revert css-width patch,
9050           it does not work with IE6.
9051
9052 2005-07-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9053
9054         * Documentation/texinfo.css: revert 760px hack. 
9055
9056         * VERSION: release 2.7.2
9057
9058         * Documentation/topdocs/NEWS.tely (Top): mention barNumberCheck
9059
9060         * Documentation/user/basic-notation.itely (Barnumber check): add
9061         section.
9062
9063         * scm/music-functions.scm (skip-to-last): new function. Show only
9064         last showLastLength part of the \score.
9065
9066         * lily/moment-scheme.cc (LY_DEFINE): new function ly:moment-sub
9067
9068         * python/convertrules.py (conv): add ly:x-moment rule
9069
9070         * lily/moment-scheme.cc (LY_DEFINE): rename ly:X-moment  -> ly:moment-X
9071
9072         * Documentation/topdocs/NEWS.tely (Top): add new feature.
9073
9074         * Documentation/user/instrument-notation.itely (Flexibility in
9075         alignment): options in subsections.
9076
9077         * lily/lyric-engraver.cc (process_music): don't typeset text for _
9078         syllable text. Instead, assume that the previous lyric text is a
9079         melismated text.
9080
9081         * Documentation/index.html.in: revert 800x600 change.
9082
9083 2005-07-19  Jan Nieuwenhuizen  <janneke@gnu.org>
9084
9085         * lily/main.cc (main): Remove invalid handle kludge.
9086
9087         * scm/lily.scm (running-from-gui?): WINDOWS: check -dgui.
9088         (lambda): add gui define.
9089
9090 2005-07-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9091
9092         * Documentation/topdocs/NEWS.tely (Top): add note about Musica ficta.
9093
9094         * Documentation/user/instrument-notation.itely (Musica ficta
9095         accidentals): add section Musica ficta accidentals
9096
9097         * lily/accidental-engraver.cc (make_suggested_accidental): new
9098         function.
9099         (make_standard_accidental): move into new function.
9100         (create_accidental): new function.
9101
9102         * scm/define-grobs.scm (all-grob-descriptions): new Grob
9103         AccidentalSuggestion
9104
9105         * lily/output-def-scheme.cc (LY_DEFINE): take default  argument.
9106
9107         * lily/output-def.cc (lookup_variable): return SCM_UNDEFINED if
9108         undefined.
9109
9110         * Documentation/user/global.itely (Page formatting): document
9111         horizontalshift.
9112
9113         * scm/page-layout.scm (default-page-music-height):
9114         horizontalshift: new variable, shift all systems by
9115         horizontalshift to the right, to make space for instrument names.
9116
9117         * scm/paper.scm (set-paper-dimension-variables): add horizontalshift
9118
9119         * lily/input-scheme.cc (LY_DEFINE): take format commands.
9120
9121 2005-07-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9122
9123         * lily/note-column.cc (dir): idem.
9124
9125         * lily/spacing-spanner.cc (Module): idem.
9126
9127         * lily/script-column.cc (before_line_breaking): use extract_grob_set()
9128
9129         * lily/include/paper-column.hh (class Paper_column): add
9130         non-static get_rank() member.
9131
9132         * VERSION: release 2.7.1
9133         
9134         * scm/framework-null.scm: new file, used for benchmarking.
9135
9136 2005-07-20  Heikki Junes  <hjunes@cc.hut.fi>
9137
9138         * Documentation/topdocs/INSTALL.texi, configure.in: fix
9139         version dependencies for fontforge and gs.
9140
9141         * Documentation/index.html.in, Documentation/texinfo.css,
9142         stepmake/bin/text2html.py, buildscripts/mutopia-index.py,
9143         Documentation/bibliography/index.html.in, 
9144         Documentation/bibliography/html-long.bst: optimize width of
9145         html for a 800x600 screen (width:760), increases printability
9146         when 'fit to page' is not set and readability in wide screens.
9147
9148         * stepmake/bin/add-html-footer.py: add missing </p>.
9149
9150 2005-07-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9151
9152         * scm/define-markup-commands.scm (beam): use polygon in beam
9153         command.
9154
9155         * lily/grob-pq-engraver.cc (stop_translation_timestep): save up
9156         all acknowledged grobs, and do potentially expensive merge and
9157         write in one go.
9158
9159         * buildscripts/mf-to-table.py (write_fontlist): enforce noBreak.
9160
9161         * configure.in (reloc_b): add --enable-static-gxx to statically
9162         link to libstdc++
9163
9164         * lily/GNUmakefile (static-gxx-libs): new target
9165         static-gxx-libs. Create symlink to libstdc++.a
9166
9167         * lily/new-lyric-combine-music-iterator.cc: rename to
9168         Lyric_combine_music_iterator
9169
9170         * lily/lyric-combine-music-iterator.cc
9171         (Old_lyric_combine_music_iterator): rename to
9172         Old_lyric_combine_music_iterator
9173
9174         * lily/*-engraver.cc (various): remove double use of
9175         PRECOMPUTED_VIRTUAL function: only use
9176         start_translation_timestep() and stop_translation_timestep(), not
9177         both.
9178
9179         * lily/break-substitution.cc (fast_substitute_grob_array): do
9180         fast_substitute_grob_array for all unordered grob_arrays.
9181         (substitute_grob): return Grob *. Saves packing/unpacking SCMs.
9182         (substitute_grob_array): optimize.
9183
9184         * lily/align-interface.cc (set_axis): set ordered_ for 'elements
9185
9186         * lily/include/grob-array.hh (class Grob_array): ordered_ member.
9187
9188         * lily/parser.yy: revert $globalheader patch.
9189         
9190         * lily/include/translator.icc
9191         (IMPLEMENT_FETCH_PRECOMPUTABLE_METHODS): directly jump into
9192         Translator methods, without _static helper.
9193  
9194         * lily/grob-smob.cc (derived_mark): rename from
9195         do_derived_mark(). Return void.
9196
9197         * scm/define-context-properties.scm
9198         (all-internal-translation-properties): remove tweakCount/tweakRank.
9199
9200         * scm/output-lib.scm (begin-of-line-invisible): use vectors for
9201         predefined break-visibilities.
9202
9203         * lily/item.cc (handle_prebroken_dependencies): use a vector of 3
9204         booleans for break-visibility.
9205
9206         * Documentation/topdocs/NEWS.tely (Top): add note about engravers.
9207
9208         * python/convertrules.py (conv): rule for Timing_translator. 
9209
9210         * lily/include/translator.icc: new file. 
9211
9212         * lily/paper-column-engraver.cc (process_music): new
9213         file. Separate Paper_column factory from Score_engraver.
9214
9215         * lily/vertically-spaced-context-engraver.cc: administer
9216         spaceable-staves property of System.
9217
9218         * lily/translator-group-ctors.cc: new file.
9219
9220         * lily/context-property.cc (make_grob_from_properties): construct
9221         the right Grob class programmatically, looking at the class entry
9222         for the meta property.
9223
9224         * lily/break-align-engraver.cc (stop_translation_timestep): call
9225         Break_align_interface::add_element() directly.
9226
9227         * lily/context.cc (measure_position): measure_position() is now a
9228         normal function.
9229
9230         * lily/include/translator.hh (class Translator): rename
9231         process_acknowledged_grobs() to process_acknowledged() and move to
9232         Translator.
9233
9234         * scm/define-grobs.scm (all-grob-descriptions): add a 'class meta
9235         field for each grob description.
9236
9237         * lily/include/translator-group.hh (class Translator_group):
9238         change to base class. Separate class from Translator. This gets
9239         rid of virtual inheritance for Engravers/Performers.
9240
9241         * lily/staff-performer.cc (class Staff_performer): derive
9242         Staff_performer from Performer, not Performer_group_performer 
9243
9244         * Lily/translator-group.cc (precomputed_recurse_over_translators):
9245         new function.
9246         (precompute_method_bindings): new function. Precompute lists of
9247         Translators, so we only call methods (process_music,
9248         start_translation_timestep, etc.) for Translators needing
9249         it. Also: dispose of pointer-to-member-function calls.
9250
9251         * lily/engraver-group-engraver.cc: remove engraver_each,
9252         recurse_down_engravers ()
9253
9254         * lily/note-head.cc (internal_print): only call
9255         glyph-name-procedure if style != default. 
9256
9257 2005-07-16  Graham Percival  <gperlist@shaw.ca>
9258
9259         * ly/titling-init.ly: add printallheaders option.
9260
9261         * Documentation/user/global.itely: document printallheaders.
9262
9263 2005-07-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9264
9265         * lily/system.cc (do_derived_mark): don't mark from object_alist_
9266         anymore, but do it centrally.  
9267
9268         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
9269         hammer hack.
9270
9271         * lily/grob-scheme.cc (LY_DEFINE): new function ly:grob-object
9272
9273         * scm/output-lib.scm: remove hammer-print-function.
9274
9275         * lily/include/pointer-group-interface.hh (extract_grob_set): new
9276         macro. Declare a Link_array<Grob> and fill it from a grob.
9277         (extract_item_set): idem for item.
9278
9279         * lily/break-substitution.cc: add header.
9280         (fast_substitute_grob_array): rewrite for Grob_arrays.
9281         (substitute_grob_array): idem.
9282
9283         * lily/group-interface.cc (add_thing): remove file.
9284
9285         * flower/include/parray.hh (class Link_array): slice() is const.
9286
9287         * lily/include/grob-array.hh: new file.
9288
9289         * lily/grob-array.cc (spanner): new file.
9290
9291         * lily/beam-quanting.cc (fill): read details property from beam.
9292
9293         * lily/beam.cc: support details property.
9294
9295         * total speedups below: approx 10%.
9296
9297         * lily/include/beam.hh: new struct, softcode beam quanting parameters
9298
9299         * lily/include/grob.hh (class Grob): add interfaces_ member.
9300
9301         * lily/bezier.cc (init_polynomial_cache): new function: cache
9302         binom(3,j) t^j (1-t)^{3-j}
9303         (curve_point): opps, actually use the cache for t^j , (1-t)^j! 
9304
9305         * lily/*.cc: substitution throughout.
9306
9307         * lily/grob-property.cc (internal_get_object): new routine.
9308         (internal_set_object): idem. Store grob refrences in separate
9309         alist. This saves processing time, since properties aren't
9310         break-substituted, and the per grob namespace is smaller, both for
9311         grobs and non-grob properties.
9312
9313         * scm/define-grob-properties.scm (all-internal-grob-properties):
9314         remove center-element.
9315
9316         * lily/grob.cc: remove tweak-count, tweak-rank.
9317
9318 2005-07-15  Graham Percival  <gperlist@shaw.ca>
9319
9320         * Documentation/user/lilypond-book.itely: fixes example.
9321
9322 2005-07-15  Nicolas Sceaux  <nicolas.sceaux@free.fr>
9323
9324         * Documentation/user/global.itely (Creating titles):    
9325         * Documentation/user/examples.itely (All headers): change the
9326         place of \header in \score blocks (after music block) to make
9327         examples compile (cf. changes on parser.yy on 2005-07-10)
9328
9329 2005-07-13  Graham Percival  <gperlist@shaw.ca>
9330
9331         * python/convertrules.py: add exc -> ecc rule.
9332
9333         * scripts/convert-ly.py: add location of convertrules.py
9334         in a comment.
9335
9336         * Documentation/user/changing-defaults.itely: fix language.
9337
9338 2005-07-12  Jan Nieuwenhuizen  <janneke@gnu.org>
9339
9340         * lily/lily-parser-scheme.cc (LY_DEFINE): Guile 1.6 fix.
9341
9342 2005-07-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9343
9344         * scm/output-socket.scm (grob-bbox): don't use inf? 
9345
9346         * flower/include/rational.hh: add operator bool() 
9347
9348         * scm/define-music-types.scm (music-descriptions): remove
9349         internal-class-name properties.
9350
9351         * lily/include/event.hh: remove file.
9352
9353         * lily/include/music-constructor.hh: remove file.
9354
9355         * lily/parser.yy (Lily_lexer): check EVENT_IDENTIFIER using 'event
9356         in 'types property.
9357
9358         * lily/music.cc (duration_length_callback): new function.
9359
9360         * lily/event.cc: remove file.
9361
9362         * lily/music-constructor.cc: remove file.
9363
9364         * lily/music-scheme.cc (LY_DEFINE): rename to ly:make-music
9365
9366         * lily/context.cc (get_grob_key): nop if use_object_keys not set.
9367         (get_context_key): idem.
9368
9369         * scm/lily.scm (lambda): new option object-keys (default to #f)
9370
9371         * scm/output-svg.scm (utf-8-string): rename  from utf8-string.
9372
9373         * scm/output-gnome.scm: remove beam routine.
9374
9375         * scm/output-ps.scm (scm): idem.
9376
9377         * scm/output-svg.scm: remove beam.
9378
9379         * ps/music-drawing-routines.ps: remove draw_beam.
9380
9381         * lily/lookup.cc (beam): use round_filled_polygon() for beam.
9382
9383         * flower/include/guile-compatibility.hh (scm_from_locale_string):
9384         add scm_from_locale_string compatibility glue. 
9385
9386 2005-07-13  Yoshinobu Ishizaki  <isizaki@mte.biglobe.ne.jp>
9387
9388         * scripts/lilypond-book.py: Prevent occuring error when
9389         'lilypond-book --output=foo/ somefile.ly' is executed multiple
9390         times and target file shoud be overwritten.  (Error message said
9391         'input file and output file is same'.)
9392
9393 2005-07-13  Graham Percival  <gperlist@shaw.ca>
9394
9395         * input/regression/slur-extreme.ly,
9396         input/regression/slur-scoring.ly, lily/slur-configuration.cc,
9397         lily/slur.cc, mf/feta-din-code.mf, mf/feta-timesig.mf,
9398         mf/parmesan-heads.mf, scm/define-grob-properties.scm: Change
9399         "excentricity" to "eccentricity".
9400
9401         * Documentation/user/converters.itely: fix URL for Noteedit and
9402         Rosegarden.
9403
9404         * THANKS: added Yoshinobu Ishizaki.
9405
9406 2005-07-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9407
9408         * scm/define-markup-commands.scm (justify-field): add. 
9409
9410         * scm/define-grobs.scm (all-grob-descriptions): decrease font size.
9411
9412 2005-07-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9413
9414         * lily/lookup.cc (filled_box): express filled_box with
9415         round_filled_box
9416
9417         * scm/midi.scm (paper-book-write-midis): new function. Write all
9418         performances in numbered MIDI files.
9419
9420         * lily/performance-scheme.cc (LY_DEFINE): new file.
9421         (LY_DEFINE): new function ly:performance-write.
9422
9423         * lily/lily-parser-scheme.cc (LY_DEFINE): ly:parser-output-name:
9424         new function.
9425         (LY_DEFINE): change name ly:parser-define -> ly:parser-define!
9426
9427         * scm/framework-*.scm: use port arguments throughout.
9428
9429         * lily/include/lily-guile.hh: rename ly_c_X_p -> ly_is_X
9430
9431         * lily/paper-outputter.cc (Paper_outputter): take port argument.
9432
9433         * lily/paper-outputter-scheme.cc (LY_DEFINE): take port argument.
9434
9435         * scm/framework-texstr.scm (output-framework): 
9436
9437         * input/regression/repeat-fold.ly (texidoc): remove TeX strings.
9438
9439         * scm/output-lib.scm (tablature-stem-attachment-function):
9440         tablature stem attachment fix. 
9441
9442 2005-07-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9443
9444         * lily/bezier.cc: hardcode binomial coefficients of order 3.
9445
9446         * lily/include/music-wrapper.hh: remove Music_wrapper as Music subtype.
9447
9448         * scm/define-music-types.scm (music-descriptions): don't use
9449         Music_wrapper type.
9450
9451         * lily/paper-column.cc (print): print moment too.
9452
9453         * scripts/mup2ly.py (cp_to_dir): remove 1.5.2 compat glue.  
9454         remove compatibility cruft.
9455
9456         * lily/parser.yy (score_body): \score can only begin with Music. 
9457
9458         * lily/score-scheme.cc (LY_DEFINE): rename scorify to
9459         make-score. Take music argument only. Move parser interaction to
9460         Scheme.
9461
9462         * scm/lily-library.scm (scorify-music): new function.
9463
9464         * python/lilylib.py (datadir): remove 2.1 compat kludge.
9465         (datadir): remove resource import.
9466         (print_environment): remove get_bbox()
9467         (cp_to_dir): remove pre 1.5.2 compat glue.
9468
9469 2005-07-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9470
9471         * lily/include/simple-spacer.hh (Module): idem.
9472
9473         * lily/include/spring.hh (struct Spring): store inverse
9474         strength. This prevents division by zero.
9475
9476         * VERSION: release 2.7.0
9477         
9478         * lily/include/music.hh (class Music): remove Music::duration_log()
9479
9480         * lily/stem-engraver.cc (make_stem): take duration log from event.
9481
9482         * lily/chord-tremolo-engraver.cc: don't ack note-head-interface.
9483
9484 2005-07-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9485
9486         * scm/lily.scm (ly:load): load autochange.scm
9487
9488         * Documentation/user/tutorial.itely (Running LilyPond for the
9489         first time): remove reference to DVI/TeX
9490
9491         * scm/define-markup-commands.scm (text): add \text markup command.
9492
9493         * configure.in (reloc_b): bump requirement to Python 2.2.
9494
9495         * lily/include/dots.hh (class Dots): make has_interface() static.
9496
9497         * python/convertrules.py (conv): add rule for ly:grob-default-font
9498
9499         * scm/define-grobs.scm (all-grob-descriptions): reorganize in
9500         alphabetical order.
9501
9502         * input/regression/trill-spanner-pitched.ly: new file.
9503
9504         * lily/font-interface-scheme.cc (LY_DEFINE): function
9505         ly:grob-default-font (changed from get-default-font).
9506
9507         * lily/axis-group-interface-scheme.cc (LY_DEFINE): new file.
9508
9509         * lily/note-head.cc (internal_print): if style is not a symbol,
9510         set style to 'default. 
9511         (internal_print): no style suffix if glyph-name-procedure not
9512         set. Default to quarter head.
9513
9514         * scm/define-grobs.scm (Module): new grob TrillPitchHead.
9515
9516         * scm/define-music-properties.scm (all-music-properties): add trill-pitch.
9517
9518         * ly/music-functions-init.ly: \pitchedTrill
9519
9520         * lily/pitched-trill-engraver.cc (acknowledge_grob): new file.
9521
9522         * ly/Welcome_to_LilyPond.ly: update to 2.6.0
9523
9524         * lily/trill-spanner-engraver.cc (finalize): rename req -> event
9525
9526         * scm/define-markup-commands.scm (pad-markup): pad-markup command.
9527
9528         * po/fr.po: update
9529
9530         * po/de.po: update.
9531
9532 2005-07-06  Graham Percival  <gperlist@shaw.ca>
9533
9534         * Documentation/user/changing-defaults.itely: add link
9535         to grob-iterface.
9536
9537         * Documentation/user/advanced-notation.itely: add material
9538         to Setting automatic beam behaviour.  Thanks, Joe!
9539
9540         * Documentation/user/lilypond.itely: change encoding to utf-8.
9541
9542 2005-07-01  Mats Bengtsson  <mabe@s3.kth.se>
9543
9544         * Documentation/user/advanced-notation.itely (Setting automatic
9545         beam behavior): Correct the documentation of
9546         revert-auto-beam-setting (backportme)
9547
9548 2005-07-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9549
9550         * lily/ly-module.cc (ly_make_anonymous_module): define
9551         %module-public-interface of module. 
9552
9553         * lily/lily-parser.cc (print_smob): allow printing of parser smob
9554         without lexer.
9555
9556 2005-07-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9557
9558         * input/regression/fret-diagrams.ly: stretch example.
9559
9560 2005-06-30  Jan Nieuwenhuizen  <janneke@gnu.org>
9561
9562         * cygwin/GNUmakefile ($(outdir)/%.sh): Bugfix: use TAB (Bertalan
9563         Fodor).
9564
9565 2005-06-30  Graham Percival  <gperlist@shaw.ca>
9566
9567         * Documentation/topdocs/AUTHORS.texi: update personal web address.
9568
9569         * Documentation/user/examples.itely, lilypond-book.itely:
9570         change \RequirePackage to \usepackage.
9571
9572         * Documentation/user/global.itely: document copyright and tagline.
9573
9574 2005-06-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9575
9576         * Documentation/user/basic-notation.itely (Transpose): remove link
9577         to nonexistent UntransposableMusic.
9578
9579         * scm/output-svg.scm: remove old definitions.
9580
9581         * scripts/lilypond-book.py (do_file): search for kpsewhich before
9582         invoking.
9583
9584         * python/lilylib.py (search_exe_path): new function.
9585
9586 2005-06-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9587
9588         * python/lilylib.py (mkdir_p): remove setup_environment()
9589         (backportme)
9590
9591         * buildscripts/mutopia-index.py (headertext): trim text.
9592
9593         * Documentation/topdocs/NEWS.tely (Top): refresh.
9594
9595         * scm/define-markup-commands.scm (wordwrap-string): new function:
9596         split string in paras and words.
9597         (wordwrap-markups): new function.
9598         (wordwrap-stencils): new function. 
9599         (justify): use it.
9600         (wordwrap): use it.
9601         (wordwrap-string): use it
9602         (justify-string): use it.
9603
9604         * scm/lily-library.scm (regexp-split): new function.
9605
9606         * scm/define-markup-commands.scm: remove encoded-simple. 
9607         remove font-markup.
9608         (fontsize): remove old version  of fontsize.
9609         (wordwrap): new markup function. Wrap into paragraphs.
9610
9611         * VERSION: Branch lilypond_2_6
9612         (MINOR_VERSION): go to 2.7.0
9613
9614 2005-06-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9615
9616         * po/zh_TW.po: update from translation project.
9617
9618 2005-06-28  Graham Percival  <gperlist@shaw.ca>
9619
9620         * scm/midi.scm: compile fix.
9621
9622 2005-06-28  Mats Bengtsson  <mabe@s3.kth.se>
9623
9624         * scripts/lilypond-book.py : Fix embarrassing bug in my previous
9625         patch. Now, the tempfile module is loaded too, not only used.
9626
9627 2005-06-28  Stephen Charles McCarthy  <stecmccarthy@hotpop.com>
9628
9629         * scm/midi.scm: changed midi volumes in absolute-volume-alist from
9630         0.05 - 1.00 to 0.25 - 1.00
9631
9632         * scm/midi.scm: moved the default-instrument-equalizer procedure
9633         to just under the insturment-equalizer-alist it takes as an
9634         argument.
9635
9636 2005-06-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9637
9638         * Documentation/user/advanced-notation.itely (Font selection):
9639         remove CMR note.
9640
9641         * scm/framework-ps.scm (write-preamble): ly:warning iso. ly:warn 
9642
9643 2005-06-28  Jan Nieuwenhuizen  <janneke@gnu.org>
9644
9645         * THANKS: Add UTF-8 marker.
9646
9647         * Documentation/user/point-and-click.itely (http): Update: use
9648         lilypond-invoke-editor.  Fix: instruct to use user.js.
9649
9650 2005-06-27  Graham Percival  <gperlist@shaw.ca>
9651
9652         * ly/titling-init.ly: implements printpagenumber, increases
9653         space between dedication and title (to avoid collisions with
9654         "g" and "q" in dedication), and nicer logic about copyright
9655         and instrument fields being printed on the first page.
9656         Thanks Vincent!
9657
9658         * Documentation/user/global.itely: document printpagenumber.
9659
9660 2005-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
9661
9662         * Documentation/topdocs/NEWS.tely: Update to 2.6.
9663
9664 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9665
9666         * THANKS: update to 2.6
9667
9668         * VERSION: 2.6.0 released.
9669
9670 2005-06-27  Jan Nieuwenhuizen  <janneke@gnu.org>
9671
9672         * cygwin/GNUmakefile (OUT_POSTREMOVES): Reinclude install script
9673         rule, errorneously removed probably because of misleading comment.
9674
9675 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9676
9677         * python/lilylib.py (datadir): py2exe comments.
9678
9679         * Documentation/topdocs/INSTALL.texi (Top): remove EC fonts requirement.
9680
9681         * configure.in (reloc_b): make fontconfig REQUIRED.
9682
9683 2005-06-27  Heikki Junes <hjunes@cc.hut.fi>
9684
9685         * po/fi.po: add latest translations.
9686
9687 2005-06-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9688
9689         * ChangeLog: recode utf-8
9690
9691         * Documentation/pictures/lilypond.xpm (Module): edited photo as
9692         logo.
9693
9694         * Documentation/user/examples.itely (Module): 2.4.0 -> 2.6.0
9695
9696         * input/*.ly (Module): 2.4 -> 2.6 grand convert-ly s/r. 
9697
9698         * python/convertrules.py (do_conversion): don't print program_name
9699         from within a module
9700
9701         * configure.in (reloc_b): bump fontforge requirement to 20050624.
9702
9703         * python/convertrules.py (conv): add 2.6.0 dummy rule.
9704
9705 2005-06-23  Graham Percival  <gperlist@shaw.ca>
9706
9707         * Documentation/user/lilypond-book.itely,
9708         Documentation/user/examples.itely: add \RequirePackage{graphics}.
9709
9710         * ly/titling.ly: checks printfirstpagenumber, adds meter, and
9711         fixes baseline-skip.  Thanks Vincent!
9712
9713         * Documentation/user/advanced-notation.itely, global.itely:
9714         moved "Selecting font sizes" to global, since it deals with
9715         notation font size, not text fonts.
9716
9717 2005-06-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9718
9719         * buildscripts/gen-emmentaler-scripts.py (notice): add GPL notice
9720         to fonts.
9721
9722 2005-06-23  Mats Bengtsson  <mabe@s3.kth.se>
9723
9724         * scripts/lilypond-book.py (LATEX_DOCUMENT): More or less ugly
9725         workaround since /dev/stdin doesn't work on Cygwin. Using a
9726         temporary file in the current directory since latex doesn't
9727         understand the path name to the default TMP in Cygwin (at least on
9728         win XP).
9729         
9730         * Documentation/user/global.itely (Creating titles): Correct
9731         misprint in example. Thanks to Rob Vlasaty.
9732
9733 2005-06-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9734
9735         * VERSION (PATCH_LEVEL): release 2.5.32
9736
9737         * lily/lily-parser-scheme.cc (LY_DEFINE): don't set 'parser
9738         variable in lily module
9739
9740         * scm/framework-ps.scm (output-classic-framework): error message
9741         regarding the classic framework.
9742
9743         * Documentation/user/henle-flat-gray.png (Module): new file.
9744
9745         * Documentation/user/baer-flat-gray.png (Module): new file.
9746
9747         * scm/output-lib.scm (fret-number-tablature-format): vcenter and
9748         whiteout for markups.
9749
9750         * buildscripts/substitute-encoding.py (note_glyph): include _ in
9751         regex too. This fixes change clef appearance in PDF. 
9752
9753         * ttftool/include/*: remove.
9754
9755         * configure.in (reloc_b): remove TTFTOOL_ENDIAN
9756
9757         * config.make.in (WINDRES): remove TTFTOOL_ENDIAN.
9758
9759         * lily/GNUmakefile (MODULE_INCLUDES): remove ttftool
9760
9761         * ttftool/*: remove ttftool subdirectory.
9762
9763         * GNUmakefile.in (SUBDIRS): remove ttftool subdirectory.
9764
9765         * lily/ttf.cc (print_header): new file. Convert to type42, using
9766         FreeType to parse the TTF. 
9767
9768         * ttftool/parse.c (readPostTable): ugh. Kludge: nglyphs in maxp
9769         and post table may differ. Pass around post_nglyphs as well.
9770
9771 2005-06-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9772
9773         * ly/music-functions-init.ly (musicMap): new music function
9774         musicMap. 
9775         
9776 2005-06-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9777
9778         * make/mutopia-rules.make: anti-alias-factor = 2
9779
9780         * scm/ps-to-png.scm (make-ps-images): cleanup multipage vs. single
9781         page switch.
9782
9783         * make/lilypond-vars.make (LILYPOND_BOOK_FLAGS): set
9784         anti-alias-factor for lilypond-book runs.
9785
9786         * scm/ps-to-png.scm (scale-down-image): new function.
9787         (my-system): new function.
9788         (make-ps-images): blow up GS resolution by anti-alias-factor,
9789         scale down image by anti-alias-factor.  This improves appearance
9790         of bitmaps
9791         (make-ps-images): remove showpage. Fixes spurious empty png at
9792         end.
9793
9794         * scm/framework-ps.scm (write-preamble): downcase filename before
9795         string-matching. Should fix .TTF files (as opposed to ttf files)  
9796
9797         * Documentation/user/tutorial.itely (Running LilyPond for the
9798         first time): separate subsections for windows, macos and unix.  
9799
9800         * Documentation/user/invoking.itely (Updating files with
9801         convert-ly): add MacOS X note.
9802
9803 2005-06-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9804
9805         * Documentation/user/introduction.itely (Engraving): don't include
9806         file optical-spacing, add directly.
9807
9808         * lily/paper-outputter.cc (file): open file in binary mode. This
9809         fixes OTF embedding on windows.
9810
9811 2005-06-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9812
9813         * scm/framework-ps.scm (write-preamble): remove debugging output.
9814
9815         * mf/aybabtu.pe.in (i): don't generate aybabtu.cff
9816
9817         * mf/GNUmakefile ($(outdir)/fonts.cache-1): create font cache for
9818         outdir.
9819         (install-fc-cache): install font cache in installation directories.
9820
9821 2005-06-17  Jan Nieuwenhuizen  <janneke@gnu.org>
9822
9823         * scm/editor.scm (editor-command-template-alist): Use char iso
9824         column, except for Emacs.
9825         (get-editor-command): Substitute char too (Bertalan Fodor).
9826
9827 2005-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
9828
9829         * scm/ps-to-png.scm (make-ps-images): Use ~S instead of single
9830         quoted ~s.  This should fix PNG output on Windows; single quotes
9831         are regular characters on Windows.
9832
9833 2005-06-16  Graham Percival  <gperlist@shaw.ca>
9834
9835         * Documentation/user/basic-notation.itely: include ChoirStaff
9836         in System start delimiters.
9837
9838         * Documentation/user/putting.itely: new doc section on
9839         fixing overlapping notation.
9840
9841 2005-06-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9842
9843         * Documentation/user/global.itely (Paper size): \paper is in
9844         \book, not \score.
9845
9846         * make/mutopia-rules.make: -ddelete-intermediate-files
9847
9848         * ly/engraver-init.ly: make Staff default child of ChoirStaff.
9849
9850 2005-06-16  Jan Nieuwenhuizen  <janneke@gnu.org>
9851
9852         * ChangeLog: Recode utf-8.
9853
9854         * python/GNUmakefile (INSTALLATION_OUT_DIR): Install .so module in
9855         datadir with .py modules.
9856
9857 2005-06-15  Heikki Junes  <hjunes@cc.hut.fi>
9858
9859         * Documentation/user/basic-notation.itely (Ties): add tieDashed.
9860
9861 2005-06-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9862
9863         * make/mutopia-rules.make: switch off ps, p&c for lilypond runs.
9864         
9865         * scm/framework-ps.scm (write-preamble): remove status check.
9866
9867         * Documentation/user/invoking.itely (Updating files with
9868         convert-ly): remove -o option.
9869
9870         * VERSION (PACKAGE_NAME): release 2.5.31
9871
9872         * scm/framework-ps.scm (write-preamble): use ly:system.
9873         (write-preamble): verbosity.
9874
9875         * scripts/convert-ly.py: cleanup. Use lilylib. Use convertrules.
9876
9877         * python/convertrules.py: new file. Store conversion rules
9878         separately.
9879
9880 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9881
9882         * scm/backend-library.scm (postprocess-output): remove debugging gobs.
9883
9884 2005-06-14  Mats Bengtsson  <mabe@s3.kth.se>
9885
9886         * Documentation/topdocs/NEWS.tely (Top): Corrected name of
9887         \musicDisplay 
9888
9889         * Documentation/user/instrument-notation.itely (More stanzas): Add
9890         reference to StanzaNumber.
9891
9892 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9893
9894         * THANKS: separate section for website translators.
9895
9896 2005-06-14  Graham Percival  <gperlist@shaw.ca>
9897
9898         * Documentation/topdocs/INSTALL.texi: update vim info;
9899         thanks Simon Bailey!
9900
9901         * Documentation/user/advanced-notation.itely: included
9902         color names.
9903
9904         * Documentation/user/advanced-notation.itely,
9905         Documentation/usr/notation-appendices.itely: moved
9906         color names into an appendix.
9907
9908 2005-06-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9909         
9910         * lily/program-option.cc (LY_DEFINE): new function ly_add_option.
9911
9912         * scm/lily.scm (lambda): initialize program options from here.
9913
9914         * scm/framework-*.scm: add header info.
9915
9916         * lily/main.cc (parse_argv): only set output format to pdf if no
9917         other format specified.
9918
9919         * scm/backend-library.scm (postprocess-output): process
9920         'delete-intermediate-files after running convert-to-*. This fixes
9921         PNG generation when 'delete-intermediate-files is set.
9922         
9923 2005-06-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9924
9925         * buildscripts/mutopia-index.py (list_item): thinko. Fixes png
9926         links on website. 
9927
9928 2005-06-13  Graham Percival  <gperlist@shaw.ca>
9929
9930         * Documentation/topdocs/INSTALL.texi,
9931         Documentation/user/lilypond-book.itely: typos.
9932
9933 2005-06-12  Pal Benko  <benkop@freestart.hu>
9934
9935         * elisp/lilypond-mode.el (LilyPond-command-alist: 2PS): space
9936         added between program name and switch; -b changed to -f not
9937         to generate pdf
9938
9939 2005-06-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9940
9941         * elisp/lilypond-mode.el (LilyPond-command-alist): remove 2midi
9942         (LilyPond-command-alist): use -f ps (thanks to Pal Benko)
9943
9944         * input/sakura-sakura.ly: add \midi.
9945
9946         * buildscripts/mutopia-index.py (find): use /usr/bin/find
9947         iso. python find. 
9948
9949         * ttftool/test.c (main): cosmetics.
9950
9951         * ttftool/util.c (surely_lseek): use stdio FILE's for I/O 
9952
9953         * ttftool/test.c: new file. If compiled with -DTEST_TTFTOOL,
9954         create a ttf2ps binary.
9955
9956         * scm/ps-to-png.scm (make-ps-images): fix rename-page-1 functionality.
9957
9958         * scm/backend-library.scm (postscript->png): set rename-page-1 to
9959         true.
9960
9961 2005-06-11  Graham Percival <gperlist@shaw.ca>
9962
9963         * Documentation/user/lilypond-book.itely: add warning about
9964         the font warnings in dvips.
9965
9966 2005-06-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9967
9968         * THANKS: typo
9969
9970         * mf/GNUmakefile ($(outdir)/$(redhat-package)): Fedora-4 url.
9971
9972         * GNUmakefile.in: remove links for .map, .enc
9973         don't fail if out/ doesn't exist yet.
9974
9975 2005-06-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
9976
9977         * ttftool/util.c (surely_read): return nbytes
9978
9979         * stepmake/bin/text2html.py (txt2html): add utf-8 marker. 
9980
9981         * VERSION (PACKAGE_NAME): release 2.5.30
9982
9983         * flower/string-convert.cc (precision_string): >? fix.
9984
9985         * scm/ps-to-png.scm (make-ps-images): search-gs for multipage too.
9986         (make-ps-images): add verbose -q too.
9987
9988         * lily/default-actions.cc (Module): new file. default
9989         {book,score}-print functions.
9990
9991         * scm/ly-from-scheme.scm (ly:parse-string-result): use new setup:
9992         pass results via parseStringResult, lookup via ly:parser-lookup.  
9993
9994         * lily/lily-parser.cc (Lily_parser): only clone lexer in
9995         constructors.
9996         (parse_file): encapsulate do_yyparse() in scm_set_current_module()
9997         (parse_string): idem.
9998
9999         * ly/spanners-init.ly (assertBeamQuant): don't use #{ #} in init.
10000
10001         * lily/main.cc (main_with_guile): copy be_verbose_global into
10002         ly_set_option()
10003
10004 2005-06-10  Jan Nieuwenhuizen  <janneke@gnu.org>
10005
10006         * scm/backend-library.scm (postscript->pdf):
10007         * scm/ps-to-png.scm (make-ps-images): Do not use gs -q switch in
10008         verbose mode.  Search for several names of gs executable.
10009
10010 2005-06-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10011
10012         * lily/ly-module.cc (ly_make_anonymous_module): call make-module
10013         directly. This fixes a massive memory leak, provided you use CVS
10014         GUILE.
10015
10016 2005-06-10  Erik Sandberg  <ersa9195@student.uu.se>
10017
10018         * ly/property-init.ly: Added tieDashed.
10019
10020         * THANKS: Added some bughunters for 2.5.
10021
10022 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10023
10024         * lily/program-option.cc: add debug-gc option.
10025
10026         * lily/include/lily-guile-macros.hh: don't protect exported module
10027         objects.
10028
10029         * lily/include/lily-parser.hh (class Lily_parser): remove beam_check().
10030
10031         * scm/backend-library.scm (postscript->pdf): use
10032         delete-intermediate-files iso. running-from-gui? 
10033
10034         * ttftool/util.c (surely_read): robustness. Allow read() to return
10035         less bytes than requested, as per posix standards.
10036
10037         * lily/pfb.cc (LY_DEFINE): set ttf_verbosity from ttf-verbosity
10038         program option.
10039
10040         * ttftool/include/ttftool.h ("C"): rename verbosity to
10041         ttf_verbosity. Add to public interface.
10042
10043         * scm/music-functions.scm (unfold-repeats): remove debugging display.
10044
10045         * lily/program-option.cc: rename from scm-option.cc
10046
10047         * lily/scm-option.cc (LY_DEFINE): handle no-foobar option setting.
10048         (get_help_string): Print pretty help string.
10049
10050         * scripts/lilypond-book.py (PREAMBLE_LY): add no-point-and-click
10051         to snippet preamble.
10052
10053         * lily/scm-option.cc: remove command-line-settings option. Fold
10054         all command-line options plus default settings in a generic
10055         interface. 
10056
10057         * flower/getopt-long.cc (table_string): indent 2nd lines of help
10058         texts too.
10059
10060 2005-06-09  Jan Nieuwenhuizen  <janneke@gnu.org>
10061
10062         * flower/file-name.cc: Bugfix: only append DIRSEP if BASE_
10063         or EXT_ components non-empty.
10064
10065 2005-06-08  Jan Nieuwenhuizen  <janneke@gnu.org>
10066
10067         * scm/lily.scm (running-from-gui?): Export.
10068
10069         * lily/lily-parser-scheme.cc (ly:parse-file): Use it to generate
10070         output in .ly source directory.
10071
10072 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10073
10074         * ttftool/util.c (surely_lseek): more verbosity.
10075
10076         * lily/include/lily-proto.hh: add Context_def. This fixes FC4
10077         compile.
10078
10079         * lily/parser.yy (Repeated_music): remove >? 
10080
10081         * scm/backend-library.scm (postscript->pdf): Support for
10082         -dgs-font-load=1
10083
10084         * scm/framework-ps.scm (write-preamble): make font loading
10085         switchable to GS via --define-default gs-font-load=1
10086
10087 2005-06-09  Graham Percival  <gperlist@shaw.ca>
10088
10089         * Documentation/user/global.itely: added \layout docs.
10090
10091 2005-06-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10092
10093         * lily/lily-parser-scheme.cc: add unistd.h
10094
10095 2005-06-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10096
10097         * scm/editor.scm: add char argument.
10098
10099         * scripts/lilypond-invoke-editor.scm (dissect-uri): add char. 
10100
10101         * ttftool/util.c (syserror): use errno for better error reporting.
10102
10103         * lily/source-file.cc (get_counts): new function. Calc column,
10104         line and char count in one go.
10105
10106         * lily/binary-source-file.cc (quote_input): rename to quote_input
10107
10108         * lily/input.cc (set): new function.
10109
10110 2005-06-08  Jan Nieuwenhuizen  <janneke@gnu.org>
10111
10112         * flower/file-path.cc (find): Bugfix.  Append rather than prepend
10113         directory part of file name to search directory.
10114
10115         * lily/lily-parser-scheme.cc (ly:parse-file): Prepend cwd to
10116         search path and chdir to DIR if --outname=DIR used.
10117
10118         * lily/main.cc (prepend_env_path): Bugfix: Check directory
10119         existence before appending original path.
10120
10121 2005-06-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10122
10123         * ttftool/parse.c (readNamingTable): verbosity for "bad TTF
10124         file" massage.
10125
10126         * Documentation/user/GNUmakefile (TEXINPUTS): set TEXINPUTS so our
10127         texinfo.tex is always used.
10128         
10129 2005-06-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10130
10131         * flower/include/axis.hh: rename from axes.hh
10132
10133         * lily/include/text-interface.hh (Module): rename from text-item.hh
10134
10135         * VERSION (PATCH_LEVEL): release 2.5.29
10136
10137         * ttftool/parse.c (readNamingTable): handle Apple/8bit encoding too.
10138
10139         * scm/framework-ps.scm (font-file-as-ps-string): new function.
10140         (handle-macfont): new function. Call fondu for Native mac fonts.
10141
10142         * scm/define-markup-commands.scm (fill-line): handle text-widths =
10143         '() case.
10144
10145 2005-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
10146
10147         * scm/ps-to-png.scm (make-ps-images): Bugfix: `Pages: 1\n' is not
10148         multi-page.  Fix .eps regular expression.
10149
10150 2005-06-07  Graham Percival  <gperlist@shaw.ca>
10151
10152         * Documentation/user/putting.itely: add info on modifying templates.
10153
10154         * Documentation/user/lilypond.itely, converters.itely, invoking.itely:
10155         misc small changes.
10156
10157 2005-06-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10158
10159         * scm/ps-to-png.scm (make-ps-images): no paper size for multi-page.
10160
10161         * scripts/lilypond-ps2png.scm
10162
10163         * VERSION (PACKAGE_NAME): release 2.5.28
10164
10165 2005-06-07  Jan Nieuwenhuizen  <janneke@gnu.org>
10166
10167         * lily/main.cc (prepend_env_path): Do not append /, that does not
10168         work.  Localedir lives in datadir, not in prefix.
10169
10170         * scm/framework-ps.scm (write-preamble): Remove load-font-via-GS
10171         hack for windows.
10172
10173         * flower/include/file-cookie.hh: Compile fix.
10174
10175 2005-06-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10176
10177         * ly/engraver-init.ly: add \defaultchild to InnerStaffGroup. 
10178
10179         * scm/ps-to-png.scm (gulp-port): rename from read. Don't redefine
10180         system primitives.
10181         (gulp-port): using read-string!/partial. We don't want to read an
10182         entire PS file  (GUILE 1.6 limits strings to 16M) 
10183
10184         * scm/define-grobs.scm (all-grob-descriptions): remove arch-*
10185         properties. Add font-interface. 
10186
10187         * scm/define-grob-properties.scm (all-user-grob-properties):
10188         remove old bracket properties.
10189
10190         * scm/x11-color.scm: reformat. 
10191
10192         * lily/ledger-line-engraver.cc (acknowledge_grob): create new
10193         LedgerLineSpanner if new StaffSymbol is found. 
10194
10195         * lily/staff-symbol-engraver.cc (acknowledge_grob): also set
10196         staff-symbol for finishing staff. 
10197
10198         * lily/GNUmakefile (OUT_DIST_FILES): don't dist Flex output
10199
10200         * scm/output-svg.scm (setcolor): implement (re)setcolor with <g>
10201         change black to currentColor everywhere. This fixes color support
10202         in SVG.
10203
10204 2005-06-06  Carl Sorensen  <carldsorensen@comcast.net>
10205
10206         * input/regression/fret-diagrams.ly: new file to test fret diagram
10207         capability
10208
10209         * scm/output-tex.scm: remove white-dot and white-text
10210
10211         * scm/output-ps.scm: remove white-dot and white-text
10212
10213         * scm/fret-diagrams.scm (sans-serif-stencil-white): removed -- 
10214         using ly:stencil-in-color instead
10215         (draw-dots) : remove call to white-dot
10216
10217 2005-06-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10218
10219         * flower/memory-stream.cc (Memory_out_stream): remove fopencookie
10220         support.
10221
10222         * ttftool/ttfps.c: use lily_cookie functions everywhere. 
10223
10224         * flower/include/file-cookie.hh: new file. lily_cookie extension 
10225
10226         * flower/file-cookie.cc: new file. lily_cookie extension.
10227         
10228 2005-06-06  Jan Nieuwenhuizen  <janneke@gnu.org>
10229
10230         * scm/editor.scm (editor-command-template-alist): Add syn
10231         editor (Jaap [de Vos]).
10232
10233 2005-06-05  Jan Nieuwenhuizen  <janneke@gnu.org>
10234
10235         * scripts/lilypond-ps2png.scm:
10236         * scm/ps-to-png.scm: New file.
10237
10238         * scm/backend-library.scm (postscript->png): Use it.
10239
10240         * scripts/lilypond-ps-to-png.py: Remove file.
10241
10242         * python/lilylib.py (get_bbox, make_ps_images): Remove.
10243
10244 2005-06-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10245
10246         * lily/auto-beam-engraver.cc (acknowledge_grob): remove dead code.
10247
10248         * scm/auto-beam.scm (default-auto-beam-check): only forbid beam
10249         start on grace moment. Fixes autobeam-grace.ly.
10250
10251         * lily/auto-beam-engraver.cc (process_acknowledged_grobs): don't
10252         process anything unless we're at the end of a pending beam. Fixes
10253         syncopated 8ths beamed across a beat.
10254
10255 2005-06-03  Jan Nieuwenhuizen  <janneke@gnu.org>
10256
10257         * scm/editor.scm (editor-command-template-alist): Start emacs if
10258         emacslient fails.
10259
10260         * lily/main.cc (setup_localisation): Listen to LILYPOND_LOCALEDIR.
10261
10262         * flower/file-path.cc (is_file, is_dir): Export.
10263
10264         * lily/main.cc (prepend_env_path, set_env_file): Use them.
10265
10266 2005-06-02  Mats Bengtsson  <mabe@s3.kth.se>
10267
10268         * lily/easy-notation.cc: Added include cctype to correct
10269         compilation error.
10270
10271 2005-06-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10272
10273         * scm/backend-library.scm (postscript->pdf): set resolution to
10274         1200, so bitmap fonts aren't that ugly. 
10275
10276         * Documentation/topdocs/NEWS.tely (Top): add entry about font family.
10277
10278         * lily/dynamic-engraver.cc (acknowledge_grob): only center on
10279         parent if we have a notehead. Fixes incorrect offsets when
10280         Paper_column is very wide in the X direction.
10281
10282         * input/regression/font-family-override.ly (Module): new file.
10283
10284         * scm/font.scm (make-pango-font-tree): new function.
10285
10286         * lily/beam.cc (before_line_breaking): remove warning about less
10287         than 2 visible stems. We still get a warning when there is only
10288         one stem.
10289
10290 2005-06-01  Werner Lemberg  <wl@gnu.org>
10291
10292         * buildscripts/substitute-encoding.py: Handle PFAemmentaler-xx.pfa
10293         correctly.
10294
10295 2005-06-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10296
10297         * lily/slur-scoring.cc (generate_avoid_offsets): new
10298         function. Generate avoid offsets once per slur.
10299
10300         * lily/slur.cc (add_extra_encompass): add dependency to
10301         extra-encompass object. This fixes bugs/c-phrasing-slur.ly
10302
10303         * lily/stencil.cc (is_empty): check dim_ field for is_empty()
10304         too. Fixes inf error with added bass notes.
10305
10306         * scripts/lilypond-book.py (do_options): --psfonts doesn't take
10307         argument anymore.
10308
10309         * make/ly-vars.make (DVIPS_FLAGS): use .psfonts as extension.
10310
10311         * input/tutorial/lbook-latex-test.tex: add line length test.
10312
10313         * scripts/lilypond-book.py (set_default_options): new
10314         function. Call this before dissecting snippets, so linewidth
10315         settings reach the snippets.
10316
10317 2005-06-01  Jan Nieuwenhuizen  <janneke@gnu.org>
10318
10319         * scm/lily.scm (PLATFORM, slashify): Remove double slashes.
10320
10321 2005-06-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10322
10323         * input/mutopia/R.Schumann/romanze-op28-2.ly (leftb): bugfix.
10324
10325 2005-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
10326
10327         * stepmake/aclocal.m4: More autopackage friendliness.
10328
10329 2005-05-31  Graham Percival  <gperlist@shaw.ca>
10330
10331         * Documentation/index.html.in: remove link to LSR.
10332
10333         * Documentation/user/global.itely: remove duplicate
10334         "dedication" \header{} section.
10335
10336 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10337
10338         * VERSION (PACKAGE_NAME): release 2.5.27.
10339
10340         * lily/lily-parser-scheme.cc (LY_DEFINE): unprotect paper
10341         too. Plugs memory leak.
10342
10343         * make/lilypond.fedora.spec.in (Group): remove
10344         lilypond-pdfpc-helper.
10345
10346         * scripts/GNUmakefile (SEXECUTABLES): remove
10347         lilypond-pdfpc-helper. Use lilypond-invoke-editor instead.
10348
10349         * scm/font.scm (make-century-schoolbook-tree): add Mono as
10350         'typewriter family.
10351
10352         * lily/score.cc (Score): unprotect copy of Output_def. Plugs
10353         memory leak.
10354
10355         * lily/parser.yy (score_body): don't clone Score, that's done in
10356         Lily_lexer::try_special_identifiers(). This fixes a memory leak.
10357
10358         * lily/score-engraver.cc (derived_mark): new function.
10359         (initialize): unprotect Paper_score. This fixes a memory leak.
10360
10361         * lily/score-performer.cc (derived_mark): new function.
10362
10363         * lily/score-translator.cc (get_output): use SCM for get_output() call.
10364
10365         * stepmake/aclocal.m4: put FlexLexer.h test in conftest.cc. Fixes
10366         spurious warning.
10367
10368         * scm/font.scm (make-century-schoolbook-tree): use Sans for sans
10369         serif.
10370
10371 2005-05-31  Jan Nieuwenhuizen  <janneke@gnu.org>
10372
10373         * configure.in (reloc_b): Add --enable-relocation.
10374
10375 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10376
10377         * lily/pfb.cc (LY_DEFINE): show file name when loading PFB. 
10378
10379         * input/regression/alignment-order.ly: add Staff example.
10380
10381 2005-05-31  John Mandereau   <john.mandereau@free.fr>
10382
10383         * po/fr.po: update.
10384
10385 2005-05-31  Graham Percival  <gperlist@shaw.ca>
10386
10387         * Documentation/index.html.in: add link to LSR.
10388
10389 2005-05-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10390
10391         * scm/define-stencil-commands.scm (Module): new file. Register all
10392         allowed stencil expression heads in a central place.
10393
10394         * lily/stencil-scheme.cc (LY_DEFINE): check is_stencil_head in
10395         ly:make-stencil
10396
10397         * lily/stencil-expression.cc (all_stencil_heads): registering
10398         stencil expressions.
10399
10400         * lily/stencil-interpret.cc: new file. Stencil expression
10401         interpreting.
10402
10403         * input/xiao-haizi-guai-guai.ly: move file back.
10404
10405 2005-05-30  Graham Percival  <gperlist@shaw.ca>
10406
10407         * Documentation/user/advanced.itely, converters.itely,
10408         instrument-notation.itely, lilypond-book.itely: misc small
10409         changes.
10410
10411 2005-05-30  Jan Nieuwenhuizen  <janneke@gnu.org>
10412
10413         * lily/lexer.ll: Skip UTF-8 BOM at BOF.
10414
10415         * make/lilypond.fedora.spec.in: Fix source url.
10416
10417         * cygwin: Update from mingw patches.
10418
10419         * scm/editor.scm (editor-command-template-alist): Use jedit
10420         -reuseview (Bertalan), add uedit (Patrick Huberts).
10421
10422         * input/xiao-hai-zi-guai-guai.ly: Rename from
10423         xiao-haizi-guai-guai.ly.
10424
10425         * input/*: Reindent, do not use TAB.
10426
10427         * Documentation/pictures/ly.xpm: Bugfix: do not anti-alias against
10428         white background.
10429
10430 2005-05-29  Jan Nieuwenhuizen  <janneke@gnu.org>
10431
10432         * scm/framework-ps.scm (dump-stencil-as-EPS): Add silly fix for
10433         numerical overflow error.
10434
10435 2005-05-29 Laura Conrad <lconrad@laymusic.org>
10436         
10437         * abc2ly.py: fix to syntax error in multi-part output.
10438
10439 2005-05-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10440
10441         * lily/span-bar.cc (print): sort bar line extents. Fixes problem
10442         with disappearing span bars when alignAboveContext is active
10443
10444         * lily/property-iterator.cc (check_grob): use is-grob?
10445         object-property. Fixes crash-key-sig-font-size.ly. 
10446
10447 2005-05-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10448
10449         * lily/bar-line.cc (print): don't round barlines; this produces
10450         odd aliasing effects in Acroread.
10451
10452         * lily/timing-engraver.cc (process_music): robustness fix.
10453
10454         * lily/context-def.cc (filter_engravers): bugfix.
10455
10456 2005-05-28  Jan Nieuwenhuizen  <janneke@gnu.org>
10457
10458         * lily/lilypond.rc.in: Add ly-icon.
10459
10460         * lily/GNUmakefile: 
10461         * Documentation/pictures/GNUmakefile (OUT_DIST_FILES): Add ly-icon
10462         rules.
10463
10464 2005-05-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10465
10466         * lily/stencil-scheme.cc (LY_DEFINE): ly:stencil-in-color
10467
10468         * ps/music-drawing-routines.ps: 
10469
10470         * scm/output-ps.scm: remove draw ez_ball.
10471
10472         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): remove
10473         EasyNotation context definition.
10474
10475         * lily/easy-notation.cc (brew_ez_stencil): new file. Use
10476         Text_interface and color for making easy note heads.
10477
10478         * lily/stencil.cc (with_color): new function.
10479
10480         * ps/music-drawing-routines.ps: remove draw_zigzag_line
10481
10482         * lily/line-spanner.cc (zigzag_stencil): rewrite to use draw-line
10483         output routine. Zigzag now works in SVG too.
10484
10485         * scm/output-tex.scm (filledbox): idem.
10486
10487         * scm/output-svg.scm (filledbox): idem.
10488
10489         * scm/output-ps.scm (lily-def): remove horizontal-line. 
10490
10491         * lily/lookup.cc (horizontal_line): use draw-line. 
10492
10493         * lily/system-start-delimiter.cc: remove old staff bracket code.
10494
10495         * mf/feta-haak.mf: further tweaks.
10496
10497         * lily/system-start-delimiter.cc (staff_bracket): use glyphs.
10498
10499         * mf/feta-generic.mf: include feta-haak.
10500
10501         * mf/feta-haak.mf: rewrite. Make separate glyphs for the tips 
10502
10503         * scm/framework-ps.scm (write-preamble): only load fonts if their
10504         filename is a string. 
10505
10506 2005-05-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10507
10508         * scm/output-svg.scm (circle): support circle.
10509         (bracket): stub for bracket.
10510
10511         * scripts/lilypond-book.py (main): make sure --psfonts warning is
10512         correct.
10513
10514 2005-05-26  Graham Percival  <gperlist@shaw.ca>
10515
10516         * Documentation/user/lilypond.tely, advanced-notation.itely,
10517         basic-notation.itely, instrument-notation.itely, global.itely,
10518         introduction.itely, tutorial.itely: rearranging, editing,
10519         clean-up.
10520
10521         * mf/GNUmakefile: change a "make -C" to "${MAKE} -C", required
10522         for compiling on FreeBSD.
10523
10524 2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10525
10526         * lily/pfb.cc (LY_DEFINE): progress indication for opening ttf and
10527         otf files.
10528
10529         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly (lower):
10530         bugfixes.
10531
10532         * VERSION: 2.5.26 released.
10533
10534         * scm/titling.scm (marked-up-headfoot): revert Pedro's patch. 
10535
10536 2005-05-25  Pedro Kroger  <kroeger@pedrokroeger.net>
10537
10538         * scm/titling.scm (marked-up-headfoot): doesn't print pagenumbers
10539         if printpagenumber is false.
10540
10541 2005-05-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10542
10543         * lily/font-config.cc (init_fontconfig): comment out FontConfig
10544         cache warning.
10545
10546         * lily/tie.cc (print): support dotted ties.
10547         
10548 2005-05-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10549
10550         * scm/define-grobs.scm (all-grob-descriptions): switch off
10551         debugging
10552         (all-grob-descriptions): Arpeggio has Y-extent.
10553
10554         * scm/define-music-properties.scm (all-music-properties): document
10555         length-callback and start-callback as "read-only".
10556
10557         * scm/music-functions.scm (unfold-repeats): rewrite. Cannot set
10558         length-callback after creation. 
10559
10560         * scripts/convert-ly.py (conv): unfoldrepeats -> unfoldRepeats,
10561         compressmusic -> compressMusic.
10562
10563         * ly/music-functions-init.ly (oldaddlyrics): idem.
10564
10565         * lily/parser.yy: NewLyricCombineMusic ->
10566         LyricCombineMusic. LyricCombineMusic -> OldLyricCombineMusic.
10567
10568 2005-05-24  Pedro Kroger  <kroeger@pedrokroeger.net>
10569
10570         * ly/Welcome_to_LilyPond.ly: typo.
10571
10572 2005-05-24  Graham Percival  <gperlist@shaw.ca>
10573
10574         * Documentation/user/lilypond.tely: move changing-defaults to be
10575         before global issues.
10576
10577         * Documentation/user/basic-notation.itely: move Transpose section
10578         here from advanced/Other.
10579
10580         * Documentation/user/changing-defaults.itely,
10581         advanced-notation.itely: move Fonts to advanced, edit.
10582
10583 2005-05-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10584
10585         * lily/parser.yy (bare_int): remove rule.  From now on, we require
10586         # before negative integers.
10587
10588 2005-05-23  Graham Percival  <gperlist@shaw.ca>
10589
10590         * ly/property.ly: Update tieDotted to have the same form as slurDotted.
10591
10592         * Documentation/user/lilypond.tely: change Unified index to
10593         LilyPond index.
10594
10595         * Documentation/user/advanced-notation.itely,
10596         instrument-notation.itely: editing.
10597
10598 2005-05-23  Jan Nieuwenhuizen  <janneke@gnu.org>
10599
10600         * scm/lily.scm (lilypond-all): Bugfix: return failed.
10601
10602         * lily/main.cc (setup_paths)[__MINGW32__]: Normalize LILYPONDPREFIX.
10603
10604 2005-05-21  Jan Nieuwenhuizen  <janneke@gnu.org>
10605
10606         * lily/general-scheme.cc (ly:stderr-redirect): Rename from
10607         ly:port-move.  Needs to be stderr-specific on mingw.
10608         Run fixcc.
10609
10610 2005-05-20  Jan Nieuwenhuizen  <janneke@gnu.org>
10611
10612         * lily/general-scheme.cc (ly:port-move): Remove.
10613
10614         * scm/backend-library.scm (postscript->pdf): Remove -dSAFER in
10615         windows.
10616
10617         * lily/main.cc (setup_paths) [ARGV0_RELOCATION]: Reinstate GS_*
10618         variables.  This eliminates the need for a gs.bat wrapper, which
10619         opens a console.
10620
10621         * scripts/lilypond-invoke-editor.scm (running-from-gui?): 
10622         * scm/lily.scm (running-from-gui?): 
10623         * lily/main.cc[MINGW]: Remove isatty inversion, this is an
10624         artifact of not compiling with -mwindows.
10625
10626         * scm/editor.scm: Define PLATFORM.
10627
10628 2005-05-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10629
10630         * scripts/lilypond-book.py (PREAMBLE_LY): add marker, where people
10631         can start to cut & paste lilypond-book fragments.  
10632
10633         * scm/define-music-types.scm (music-descriptions): remove
10634         UntransposableMusic
10635
10636 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10637
10638         * scm/output-ps.scm (glyph-string): remove / before CIDs.
10639
10640 2005-05-20  Graham Percival  <gperlist@shaw.ca>
10641
10642         * Documentation/user/instrument-notation.itely: remove *Engraver.
10643
10644         * Documentation/user/advanced-notation.itely: edit, rearrange.
10645
10646 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10647
10648         * scm/output-ps.scm (glyph-string): take cid? argument. Use
10649         findresource iso. findfont for CID CFF fonts.
10650
10651         * VERSION (PACKAGE_NAME): release 2.5.25
10652
10653         * ly/Welcome_to_LilyPond.ly: add  \version
10654
10655 2005-05-20  Graham Percival  <gperlist@shaw.ca>
10656
10657         * Documentation/user/programming-interface.itely: move
10658         \displayMusic into its own section.
10659
10660         * Documentation/user/basic-notation.itely: finish editing.
10661
10662 2005-05-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10663
10664         * flower/file-path.cc (find): don't throw away file_name.dir, but
10665         append to it. Fixes \include with directories.
10666
10667         * flower/include/file-path.hh (class File_path): don't derive from
10668         Array<String>.
10669
10670         * flower/include/file-name.hh (class File_name): remove to_str0()
10671
10672         * lily/hara-kiri-engraver.cc (acknowledge_grob): split
10673         Hara_kiri_engraver in separate file.
10674
10675         * lily/slur-configuration.cc (score_encompass): oops, <? to min()
10676         translation went wrong. Fixes vertically translated slurs.
10677
10678 2005-05-19  Graham Percival  <gperlist@shaw.ca>
10679
10680         * Documentation/user/basic-notaton.itely: editing.
10681
10682 2005-05-18  Graham Percival  <gperlist@shaw.ca>
10683
10684         * Documentation/user/macros.itexi, basic-notation.itely:
10685         add @commonprop (commonly used properties) macro.
10686
10687 2005-05-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10688
10689         * ly/Welcome_to_LilyPond.ly: talk about icon, not program.
10690
10691         * scripts/lilypond-book.py (invokes_lilypond): new function
10692         (main): only run fontextract if invokes_lilypond() is true.
10693
10694         * lily/function-documentation.cc (ly_add_function_documentation):
10695         duh, use !=
10696
10697         * Documentation/topdocs/INSTALL.texi (Top): add MacOS command.
10698
10699         * stepmake/aclocal.m4: remove kpathsea warning, change to OPTIONAL.
10700
10701         * scm/lily.scm (running-from-gui?): lowercase Darwin.
10702
10703         * lily/function-documentation.cc (ly_add_function_documentation):
10704         use scm_hash_table_p() for checking.
10705
10706 2005-05-18  Jan Nieuwenhuizen  <janneke@gnu.org>
10707
10708         * Documentation/user/advanced-notation.itely (Text scripts):
10709         Change nonexisting @internalsref{Text markup} to @ref{Text
10710         markup}.  Change @internalsref{Text script} to
10711         @internalsref{TextScript}.
10712
10713         * lily/main.cc (setup_paths): Bugfix: pangorc is not pango.modules.
10714
10715 2005-05-17  Graham Percival  <gperlist@shaw.ca>
10716
10717         * Documentation/user/tutorial.itely, basic-notation.itely,
10718         changing-defaults.itely: remove duplicate cindex entries
10719         that appear on the same page.
10720
10721         * scm/define-grobs.scm: change default padding for TextSpanner.
10722
10723         * Documentation/topdocs/AUTHORS.texi: update email address.
10724
10725         * Documentation/user/global.itely: add info about \include.
10726
10727 2005-05-17  Jan Nieuwenhuizen  <janneke@gnu.org>
10728
10729         * scm/backend-library.scm (postscript->pdf): Remove (useless) .ps
10730         when running-from-gui.
10731
10732         * scm/editor.scm (get-editor): Add platform defaults.
10733
10734         * scm/backend-library.scm (postscript->pdf): Typo.
10735
10736 2005-05-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10737
10738         * scm/lily.scm (running-from-gui?): Darwin never runs from GUI.
10739
10740         * lily/font-config.cc (init_fontconfig): add warning about cache.
10741
10742 2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
10743
10744         * lily/main.cc (setup_paths)[ARGV0_RELOCATION]: Remove GS_*.
10745
10746 2005-05-16  Mats Bengtsson  <mabe@s3.kth.se>
10747
10748         * lily/horizontal-bracket.cc (print): Take care of the direction
10749         property so brackets above the stave point downwards. 
10750
10751         * scm/define-grobs.scm (all-grob-descriptions): Set staff-padding
10752         for HorizontalBracket so it doesn't end up within the stave.
10753
10754 2005-05-16  Jan Nieuwenhuizen  <janneke@gnu.org>
10755
10756         * lily/GNUmakefile (default): Typo.
10757
10758         * scm/lily.scm (PLATFORM): Export.
10759
10760         * scm/framework-ps.scm (write-preamble)[MINGW]: Use
10761         load-font-via-GS, ttftool or fopencookie is broken on windows.
10762         
10763         * scm/backend-library.scm (postscript->pdf)[MINGW]: Do not use
10764         -dSAFER, that is broken on windows.
10765
10766 2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10767
10768         * lily/GNUmakefile ($(outdir)/FlexLexer.h): conditional dependency
10769         for FlexLexer.h
10770
10771         * scripts/lilypond-invoke-editor.scm: remove stray -
10772
10773 2005-05-15  Jan Nieuwenhuizen  <janneke@gnu.org>
10774
10775         * lily/lily-guile.cc (ly_scm2newstr): Use scm_i_string_length.
10776         Fixes deprecation warning.
10777
10778         * flower/include/string.icc (to_string): Only inline if
10779         -DSTRING_UTILS_INLINED.
10780
10781         * lily/pango-font.cc (pango_item_string_stencil): Normalize file
10782         name.  Remove windows comment.
10783
10784         * scm/editor.scm (slashify): New function.
10785         (get-editor-command): Use it.
10786         (get-command-template): Do not alter editor command if
10787         environment value includes `%(file)s' magic.
10788
10789         * scripts/lilypond-invoke-editor.scm (unquote-uri): New function.
10790         (dissect-uri): Use it.
10791         (unquote-uri): Bugfix.
10792
10793 2005-05-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10794
10795         * scm/framework-ps.scm (write-preamble): add TTF rule.
10796
10797         * Documentation/topdocs/README.texi (Top): remove note about
10798         xdelta.
10799
10800         * Documentation/topdocs/INSTALL.texi (Top): remove Flex
10801         requirement.
10802
10803         * stepmake/aclocal.m4: STEPMAKE_FLEXLEXER_LOCATION: new
10804         function. Figure out where FlexLexer.h lives
10805
10806         * lily/GNUmakefile (OUT_DIST_FILES): dist lexer.cc and FlexLexer.h
10807         
10808 2005-05-14  Jan Nieuwenhuizen  <janneke@gnu.org>
10809
10810         * scripts/lilypond-invoke-editor.scm (dissect-uri): Handle URIs
10811         with Windows root in file name.
10812
10813         * scm/backend-library.scm (ly:system): Only redirect output (using
10814         system and shell, ugh) if /dev/null is writable.
10815
10816         * Documentation/pictures/GNUmakefile [PLATFORM_WINDOWS]: Build
10817         windows icon.
10818
10819         * scm/lily.scm (is-absolute?): New function.  Fixes absolute files
10820         on Mingw.
10821
10822         * scm/output-ps.scm (grob-cause): Use it.  Fixes PDF point and
10823         click.
10824
10825         * flower/file-path.cc (is_dir, is_file): New function.  Actually
10826         use result of stat when available.
10827
10828         * flower/file-path.cc (find): Use it.  Refactor.  Fixes Mingw,
10829         absolute file name and root.
10830
10831         * scm/lily.scm (PLATFORM): On mingw, slashify getcwd.
10832
10833         * scm/editor.scm (get-editor-command): Typo: do not apply editor.
10834
10835         * flower/file-name.cc (slashify): Bugfix, do substitute if no
10836         slashes in file name.
10837
10838 2005-05-13  Jan Nieuwenhuizen  <janneke@gnu.org>
10839
10840         * Documentation/user/preface.itely (Preface): Run
10841         texinfo-all-menus-update.
10842
10843         * scm/editor.scm (get-editor-command): Bugfix: allow full
10844         LYEDITOR setting, partial XEDITOR setting.  With typo fix.
10845
10846         * Documentation/pictures/lilypond-48.xpm: New file.
10847
10848         * flower/file-path.cc (to_string): Bugfix: use PATHSEP.
10849
10850         * ly/Welcome_to_LilyPond.ly: New file.
10851
10852         * lily/main.cc (main): Only identify if we have a terminal.
10853
10854         * scm/backend-library.scm (postscript->png)
10855         (postscript->pdf): Fix file name quoting for GS/MINGW (ie,
10856         non-/bin/sh).
10857
10858 2005-05-13  Heikki Junes  <hjunes@cc.hut.fi>
10859
10860         * Documentation/topdocs/AUTHORS.texi: polish, update.
10861
10862 2005-05-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10863
10864         * Documentation/user/preface.itely (Notes for version 2.6): new
10865         notes for 2.6
10866
10867         * lily/dynamic-engraver.cc (stop_translation_timestep): first set
10868         finished_span_, then call typeset_all(). Fixes spurious "Hairpin
10869         is not fully contained" warnings.
10870
10871         * lily/slur-scoring.cc (get_bound_info): remove warning.
10872
10873         * lily/staff-symbol-engraver.cc (process_music): start initial
10874         spanner in process_music(). This fixes overrides of StaffSymbol
10875         properties.
10876
10877         * scm/framework-pdf.scm (Module): remove.
10878
10879         * Documentation/topdocs/AUTHORS.texi (AUTHORS): clean up, update.
10880
10881         * lily/ambitus-engraver.cc: formatting cleanups.
10882
10883         * mf/feta-solfa.mf (Module): remove.
10884
10885         * ChangeLog: more details about contributions.
10886
10887 2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10888
10889         * lily/align-interface.cc (align_elements_to_extents): warn if
10890         called too early. Fixes: disappearing-staff-lines.ly
10891
10892         * VERSION (PACKAGE_NAME): release 2.5.24
10893
10894 2005-05-12  Jan Nieuwenhuizen  <janneke@gnu.org>
10895
10896         * stepmake/aclocal.m4: Typo.
10897
10898         * flower/string.cc (substitute): Take two strings or two
10899         characters.  Update callers.
10900
10901 2005-05-11  Jan Nieuwenhuizen  <janneke@gnu.org>
10902
10903         * flower/file-name.cc (File_name): Slashify.
10904
10905         * scm/lily.scm: Use gui-main iso lilypond-main on MINGW.
10906
10907         * scripts/GNUmakefile (SEXECUTABLES): Add lilypond-invoke-editor.
10908
10909         * stepmake/aclocal.m4 (STEPMAKE_WINDOWS): New function.
10910
10911         * configure.in (gui_b): Use it.
10912
10913         * lily/lilypond.rc.in: New file.
10914
10915         * lily/GNUmakefile[PLATFROM_WINDOWS]: Compile it into executable.
10916
10917 2005-05-12  Graham Percival  <gperlist@shaw.ca>
10918
10919         * Documentation/user/advanced-notation.itely: edit of Text
10920         section; clarify text scripts vs. text markup.
10921
10922 2005-05-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10923
10924         * lily/multi-measure-rest-engraver.cc
10925         (Multi_measure_rest_engraver): init bar_seen_ to true. Notice
10926         separation items on start. Fixes mm rests in start of score.
10927
10928         * lily/slur-scoring.cc (move_away_from_staffline): robustness,
10929         don't access StaffSymbol if not there.
10930         Fixes: crash-staff-symbol-engraver.ly.
10931
10932         * lily/instrument-name-engraver.cc (class
10933         Instrument_name_engraver): data member first_. Create
10934         InstrumentName on start. 
10935
10936 2005-05-12  Graham Percival  <gperlist@shaw.ca>
10937
10938         * Documentation/user/instrument-notation.itely: add guitar
10939         position.
10940
10941         * Documentation/user/introduction.itely,
10942         Documentation/user/lilypond.tely,
10943         Documentation/user/tutorial.itely: begin pruning
10944         unused (duplicated) cindex entries and misc cleanup.
10945
10946 2005-05-12  Mats Bengtsson  <mabe@s3.kth.se>
10947
10948         * input/test/volta-chord-names.ly: Bring the explanation up to
10949         date.
10950
10951 2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
10952
10953         * Documentation/topdocs/{AUTHORS.texi,INSTALL.texi,README.texi}:
10954         Specify `@documentencoding utf-8' for html, ignore warnings.
10955
10956 2005-05-11  Erik Sandberg  <ersa9195@student.uu.se>
10957
10958         * THANKS: Added bughunters.
10959
10960 2005-05-11  Heikki Junes  <hjunes@cc.hut.fi>
10961
10962         * lily/main.cc: update help string for `lilypond -H'.
10963
10964         * po/fi.po: update.
10965         
10966 2005-05-10  Graham Percival  <gperlist@shaw.ca>
10967
10968         * Documentation/user/advanced-notation.itely: minor fixes.
10969
10970 2005-05-10  Jan Nieuwenhuizen  <janneke@gnu.org>
10971
10972         * scm/editor.scm: New module.
10973
10974         * scm/lily.scm (gui-main): Use it.
10975
10976         * scm/framework-gnome.scm (spawn-editor): Use it.
10977
10978         * scripts/lilypond-invoke-editor.scm: Use it in new script.
10979
10980 2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10981
10982         * scm/framework-ps.scm (load-font-via-GS):  new function.
10983
10984         * lily/pango-font.cc (pango_item_string_stencil): add support for
10985         CID keyed font.
10986
10987         * scm/output-ps.scm (glyph-string): add support for CID keyed font.
10988
10989 2005-05-10  Graham Percival  <gperlist@shaw.ca>
10990
10991         * Documentation/user/basic-notation.itely: add @ref.
10992
10993         * Documentation/user/advanced-notation.itely: add example
10994         of 5/8 beaming.
10995
10996 2005-05-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
10997
10998         * scripts/lilypond-pdfpc-helper.py (ly_pc_editor): robustness fixes.
10999
11000         * scm/backend-library.scm (postscript->pdf): Invoke gs instead of
11001         going through ps2pdf wrappers.
11002
11003 2005-05-09  Jürgen Reuter  <reuter@ipd.uka.de>
11004
11005         * Documentation/user/instrument-notation.itely: petrucci note
11006         heads: updated docu
11007
11008         * input/regression/note-head-style.ly: updated regression test;
11009         indentation fixes
11010
11011         * ly/engraver-init.ly: MensuralVoiceContext: use petrucci note
11012         heads as default
11013
11014         * mf/parmesan-heads.mf: minor editing; use musicological names
11015         (rather than optical description) as note head names
11016
11017         * scm/output-lib.scm: complete petrucci heads
11018
11019 2005-05-09  Pal Benko  <benkop@freestart.hu>
11020
11021         * mf/parmesan-heads.mf: add petrucci heads (like neo-mensural
11022         heads, but bigger)
11023
11024 2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
11025
11026         * lily/main.cc (main_with_guile): Remove no files check.
11027
11028         * lily/main.cc (ly:usage): Export to Scheme.
11029
11030         * scm/lily.scm (no-files-handler): New function.
11031
11032         * scm/lily.scm (lilypond-main): Use it.
11033
11034         * configure.in (gui_b): Add mbrtowc checking.
11035         Resurrect [utf8/]wchar.h checking.
11036
11037 2005-05-09  Mats Bengtsson  <mabe@s3.kth.se>
11038
11039         * Documentation/user/advanced-notation.itely (Metronome marks):
11040         Add link to the program reference for MetronomeMark
11041
11042         * Documentation/user/lilypond-book.itely (An example of a
11043         musicological document): Correct the example using psfonts 
11044
11045 2005-05-09  Heikki Junes  <hjunes@cc.hut.fi>
11046
11047         * po/fi.po: update after a lesson how to update entries against
11048         source.
11049         
11050         * po/TODO: document the lesson.
11051
11052 2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11053
11054         * configure.in (gui_b): remove wcrtomb checking.
11055
11056         * lily/general-scheme.cc (LY_DEFINE): hand-convert utf8 to 32
11057         bits. Patch by Matthias Neeracher. <neeracher@mac.com>
11058
11059 2005-05-09  Mats Bengtsson  <mabe@s3.kth.se>
11060
11061         * scripts/convert-ly.py: In the conversion to version 1.9.0, 
11062         keep Scheme expressions and strings unmodified when doing the
11063         conversion to postfix notation for slurs and beams. Should
11064         hopefully solve most related conversion problems. 
11065
11066         * Documentation/user/lilypond-book.itely : Clarify and correct how
11067         to call dvips with -h psfonts.
11068
11069 2005-05-09  Jan Nieuwenhuizen  <janneke@gnu.org>
11070
11071         * Documentation/user/instrument-notation.itely (Entering lyrics):
11072         Typo.  Fixes build.
11073
11074 2005-05-09  Graham Percival  <gperlist@shaw.ca>
11075
11076         * Documentation/user/lilypond-book.itely: document PSFONTS file.
11077
11078         * Documentation/user/lilypond.tely, lilypond-book.itely,
11079         tutorial.itely: change references to 2.5.x to 2.6.x.
11080
11081         * Documentation/user/instrument-notation.itely: clarified \addlyrics
11082         vs \lyricmode.
11083
11084         * Documentation/user/invoking.itely: remove old info about
11085         lilypond-profile.
11086
11087         * Documentation/topdocs/INSTALL.texi: remove old info about
11088         lilypond-profile, add warning about needing international fonts
11089         to build docs.
11090
11091 2005-05-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11092
11093         * lily/include/grob-info.hh (class Grob_info): make data member
11094         private. Changes throughout.
11095
11096         * input/regression/alignment-order.ly: new file. 
11097
11098         * lily/vertical-align-engraver.cc (acknowledge_grob): read
11099         alignAboveContext and alignBelowContext
11100
11101 2005-05-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11102
11103         * lily/pfb.cc (LY_DEFINE): add cast.
11104
11105         * scm/framework-ps.scm (write-preamble): embed CFFs if file name
11106         matches .otf
11107         (write-preamble): warn about unknown fonts.
11108
11109         * lily/pfb.cc (Module): new function ly:otf->cff
11110
11111         * lily/open-type-font.cc (get_otf_table): use ::get_otf_table
11112         (get_otf_table): new function.
11113
11114 2005-05-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11115
11116         * scm/backend-library.scm (postscript->png): call lilypond-ps2png
11117         iso. ps2png.
11118
11119 2005-05-06  Heikki Junes  <hjunes@cc.hut.fi>
11120
11121         * po/fi.po: apply second round of update.
11122
11123 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11124
11125         * scm/x11-color.scm (make-x11-color-handler): don't use
11126         #\sp. Apparently doesn't work on all platforms. 
11127
11128 2005-05-06  Graham Percival  <gperlist@shaw.ca>
11129
11130         * Documentation/user/advanced-notation.itely, putting.itely,
11131         tutorial.itely, global.itely, introduction.itely: really minor fixes.
11132
11133 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11134
11135         * VERSION (PACKAGE_NAME): release 2.5.23
11136
11137 2005-05-06  Jan Nieuwenhuizen  <janneke@gnu.org>
11138
11139         * Documentation/topdocs/AUTHORS.texi: Remove texinfo @accents,
11140         convert to utf-8.
11141
11142         * THANKS: Add translators for this release, convert to utf-8.
11143
11144         * mf/GNUmakefile (MFTRACE_FLAGS):
11145         * buildscripts/substitute-encoding.py (outdir): Build fix: pass
11146         outdir as option (WAS: hardcoded).
11147
11148 2005-05-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11149
11150         * lily/staff-symbol-engraver.cc (Staff_symbol_engraver): init
11151         finished_span_
11152
11153         * THANKS: add Hans Forbrich.
11154
11155         * Documentation/topdocs/NEWS.tely (Top): document new feature.
11156
11157         * Documentation/user/basic-notation.itely (Staff symbol): document
11158         start/stop staff. Reference to ossia.ly
11159
11160         * input/test/ossia.ly: new example using stop and startStaff.
11161
11162         * lily/timing-engraver.cc: remove Timing_engraver::initialize(),
11163         in other words, don't create "|" barline at start of the score.
11164         (start_translation_timestep): don't set whichBar for start of score.
11165
11166         * input/regression/staff-halfway.ly: use new functionality.
11167
11168         * lily/staff-symbol-engraver.cc (try_music): take StaffSpanEvents,
11169         start and stop staff based on events.
11170
11171         * scm/define-music-types.scm (music-descriptions): add StaffSpanEvent
11172
11173         * ly/declarations-init.ly (startStaff, stopStaff): new identifiers.
11174
11175 2005-05-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11176
11177         * Documentation/user/programming-interface.itely (How markups work
11178         internally ): remove \encoding reference.
11179
11180 2005-05-04  Mats Bengtsson  <mabe@s3.kth.se>
11181
11182         * scripts/convert-ly.py: Attempt to do a smarter update of 
11183         text markups from versions < 1.9.0 with arbitrary nesting.
11184
11185 2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
11186
11187         * po/fi.po: convert to utf-8, and update.
11188
11189 2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11190
11191         * make/lilypond.suse.spec.in: update from suse 2.4 package.
11192
11193         * lily/*.cc: more <? >? to min/max changes
11194
11195         * lily/include/interpretation-context-handle.hh: rename
11196         Interpretation_context_handle to Context_handle.
11197
11198 2005-05-04  Heikki Junes  <hjunes@cc.hut.fi>
11199
11200         * input/regression/GNUmakefile (local_delete): use `find` together 
11201         with `xargs` to avoid too long argument-lists in cmd line.
11202
11203 2005-05-04  Graham Percival  <gperlist@shaw.ca>
11204
11205         * Documentation/user/introduction.itely: updates "About this manual".
11206
11207         * Documentation/user/advanced-notation.itely,
11208         invoking.itely: minor fixes.
11209
11210 2005-05-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11211
11212         * COPYING: add font exception. Update FSF address. 
11213
11214         * lily/context-def.cc (path_to_acceptable_context): bugfix, depth
11215         should be taken without child context.
11216
11217         * ly/chord-modifiers-init.ly (blackTriangleMarkup): use it.
11218
11219         * scm/define-markup-commands.scm (triangle): new command, as
11220         robust replacement for unicode Delta/Triangle.
11221
11222 2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11223
11224         * ps/music-drawing-routines.ps: add fillp argument.
11225
11226         * lily/lookup.cc (round_filled_polygon): polygon takes filled? argument
11227
11228         * lily/font-config.cc (init_fontconfig): don't add cff/
11229
11230         * VERSION (PACKAGE_NAME): release 2.5.22
11231
11232         * mf/GNUmakefile: remove cff/cff.ps/.map install rules.
11233
11234         * lily/grace-engraver.cc (consider_change_grace_settings): use
11235         is_alias(). Fixes problem with CueVoice grace notes. 
11236
11237         * lily/simultaneous-music-iterator.cc (construct_children): call
11238         Music_iterator::quit() for iterators that start out invalid. This
11239         fixes indefinitely continuing contexts.
11240
11241         * buildscripts/substitute-encoding.py: new file
11242
11243         * Documentation/user/basic-notation.itely (Basic polyphony): fix
11244         missing @end 
11245
11246         * scripts/lilypond-book.py (write_if_updated): print file name.
11247
11248         * Documentation/user/basic-notation.itely (Explicitly
11249         instantiating voices): idem.
11250
11251         * Documentation/user/advanced-notation.itely (Text spanners):
11252         remove stray { } 
11253
11254         * lily/context.cc (default_child_context_name): the default child
11255         is now first in accepts_list_.
11256
11257         * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
11258         \defaultchild to all relevant contexts.  This fixes:
11259         drums-pitch.ly.
11260
11261         (Probably also fixes similar problems with ancient
11262         transcriptions getting CueVoices instead of the desired voices.)
11263  
11264         * lily/context-def.cc (get_default_child): new function.
11265         (get_accepted): place default child in front of list.
11266
11267         * lily/parser.yy (FIXME): add DEFAULTCHILD token.
11268
11269         * lily/include/context-def.hh (struct Context_def): add
11270         default_accept_
11271
11272 2005-05-03  Graham Percival  <gperlist@shaw.ca>
11273
11274         * scm/define-grobs.scm: remove "remove-first" line, since
11275         the absent property is set to #f anyway.
11276
11277         * Documentation/user/basic-notation.itely,
11278         advanced-notation.itely, instrument-notation.itely: minor
11279         fixes.
11280
11281         * ly/property-init.ly: add textSpanner{Up,Down,Neutral}.
11282
11283         * Documentation/user/advanced-notation.itely,
11284         changing-defaults.itely: consolidate Text stuff in
11285         advanced notation.
11286
11287         * Documentation/user/global.itely: better docs for \header.
11288
11289         * Documentation/user/putting.itely: new chapter; placeholder
11290         for future expansion.
11291
11292         * Documentation/user/examples.itely: moved "suggestions for
11293         writing LP files" section into putting.itely.
11294
11295         * Documentation/user/lilypond.itely: added new chapter,
11296         fixed the short table of contents.
11297
11298 2005-05-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11299
11300         * lily/beam-quanting.cc (quanting): robustness fix, don't produce
11301         infinity for unfeasible beams.
11302
11303         * make/lilypond.fedora.spec.in (Group): idem.
11304
11305         * scripts/GNUmakefile (SEXECUTABLES): rename ps2png to lilypond-ps2png
11306
11307         * mf/GNUmakefile (ALL_GEN_FILES): remove .map
11308
11309         * scm/framework-ps.scm (write-preamble): extract CFF from OTF
11310         fonts directly.
11311
11312         * buildscripts/gen-emmentaler-scripts.py (i): idem.
11313
11314         * mf/GNUmakefile: remove all CFF rules.
11315
11316         * scm/framework-ps.scm (ps-embed-cff): reinstate.
11317
11318         * lily/open-type-font-scheme.cc (LY_DEFINE):
11319         new function ly:otf-font-table-data.
11320         (LY_DEFINE): new function otf-font?
11321
11322 2005-05-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11323
11324         * mf/GNUmakefile ($(outdir)/lilypond.map): remove rule.
11325         ($(outdir)/Fontmap.lily): idem.
11326
11327         * buildscripts/gen-emmentaler-scripts.py (i): load fetaXX encoding
11328         for PFAEmmentaler-XXX.pfa. 
11329
11330         * Documentation/user/music-glossary.tely (accidental): NL
11331         translation of accidental.
11332
11333 2005-05-02  Jan Nieuwenhuizen  <janneke@gnu.org>
11334
11335         * flower/include/international.hh: Bugfix: include "string.hh".
11336
11337         * lily/include/mingw-compatibility.hh: New file.
11338
11339         * flower/include/libc-extension.hh (memrev): Rename from strrev.
11340
11341         * configure.in: Search for mingw wcrtomb library.
11342
11343 2005-05-02  Mats Bengtsson  <mabe@s3.kth.se>
11344
11345         * scripts/convert-ly.py: Bug fix
11346
11347         * Documentation/user/changing-defaults.itely (Common tweaks):
11348         Added example where the context has to be specified explicitly
11349         (MetronomeMark). 
11350
11351 2005-05-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11352
11353         * scripts/lilypond-book.py (ly_options): set timing to #f for
11354         notime option.
11355
11356         * scripts/convert-ly.py (conv): typo.
11357
11358         * flower/*.cc: remove <? and >?
11359         
11360         * lily/*.cc: remove <? and >?
11361
11362         * lily/tweak-registration.cc (insert_tweak_from_file): Make sure
11363         that 0x0 isn't passed into scm_cons(). Fixes crash with tweak
11364         editor.
11365
11366 2005-04-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11367
11368         * lily/part-combine-engraver.cc: add space to variable list.
11369
11370 2005-04-30  Graham Percival  <gperlist@shaw.ca>
11371
11372         * scm/define-grobs.scm: changed RemoveEmptyVerticalGroup's
11373         remove-first to false (matches docs)
11374
11375         * Documentation/user/advanced-notation.itely: corrected docs
11376         concerning remove-first.
11377
11378 2005-04-29  Mats Bengtsson  <mabe@s3.kth.se>
11379
11380         * lily/part-combine-engraver.cc: make sure that the relevant
11381         properties are included in the documentation.
11382
11383 2005-04-28  Graham Percival  <gperlist@shaw.ca>
11384
11385         * Documentation/user/lilypond-book.itely: Bernard's docs
11386         for \betweenLilyPondSystem.
11387
11388 2005-04-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11389
11390         * Documentation/topdocs/INSTALL.texi (Top): remove TeX outdated
11391         remarks.
11392
11393 2005-04-28  Pal Benko  <benkop@freestart.hu>
11394
11395         * lily/mensural-ligature.cc (brew_flexa): apply thickness property
11396         only on vertical lines of flexa shape, and use a constant
11397         thickness value for horizontal lines (patch slightly modified by
11398         Jürgen Reuter)
11399
11400         * lily/include/mensural-ligature.hh: make 2 comments clearer
11401
11402 2005-04-28  Jürgen Reuter  <reuter@ipd.uka.de>
11403
11404         * lily/vaticana-ligature-engraver.cc (need_extra_space): renamed
11405         to need_extra_horizontal_space; bugfix: use class scope to avoid
11406         global namespace pollution
11407
11408         * Documentation/user/instrument-notation.itely (ligatures): added
11409         comment on possible future syntax change and how to work around
11410
11411         * lily/vaticana-ligature-engraver.cc, mf/parmesan-heads.mf
11412         (epiphonus, cephalicus): fine-tune shape of plica head for narrow
11413         intervals (fixes agnus dei example)
11414
11415         * Documentation/user/instrument-notation.itely (white mensural
11416         ligatures): selected a more illustrative example
11417
11418 2005-04-28  Heikki Junes <hjunes@cc.hut.fi>
11419
11420         * Documentation/index.html.in: specify utf-8 charset in meta content.
11421
11422 2005-04-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11423
11424         * python/lilylib.py (make_ps_images): bugfixes; GS can produce
11425         empty 2nd page for single page.
11426
11427         * scm/lily.scm: remove p&c definitions.
11428
11429         * po/zh_TW.po (Module): new translation.
11430
11431         * lily/lily-guile.cc (ly_chain_assoc): remove.
11432
11433         * lily/general-scheme.cc (LY_DEFINE): export ly:chain_assoc_get
11434         (LY_DEFINE): recurse, iso. calling ly_chain_assoc.
11435
11436 2005-04-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11437
11438         * lily/beaming-info.cc: remove infinity_i
11439
11440         * scripts/abc2ly.py (out_filename): fix thinko with \version.
11441
11442 2005-04-26  Graham Percival  <gperlist@shaw.ca>
11443
11444         * Documentation/user/basic-notation.itely,
11445         instrument-notation.itely, advanced-notation.itely,
11446         changing-defaults.itely: minor fixes.  Added docs
11447         for colors to advanced-notation.itely.
11448
11449         * Documentation/user/advanced-notation.itely: fixed compile
11450         problem and added Bernard's x11-color doc patch.
11451
11452 2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
11453
11454         * scm/output-ps.scm (grob-cause): Yet another fix, hope it's
11455         alright this time round.
11456
11457 2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11458
11459         * Documentation/topdocs/INSTALL.texi (Top): idem.
11460
11461         * Documentation/topdocs/README.texi (Top): remove clean-fonts refs.
11462
11463         * VERSION (MAJOR_VERSION): release 2.5.21
11464
11465         * scm/output-ps.scm (grob-cause): bugfix.
11466
11467 2005-04-25  Jan Nieuwenhuizen  <janneke@gnu.org>
11468
11469         * cygwin/*: Update.
11470
11471         * cygwin/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Remove profile
11472         stuff.
11473
11474         * scm/output-ps.scm (grob-cause): Bugfix.
11475
11476         * scm/lily.scm (ly:load): Remove x11-color.
11477
11478         * stepmake/aclocal.m4 (STEPMAKE_GET_EXECUTABLE): Bugfix: do not
11479         quote executable, fixes getting version from program --with
11480         --options.
11481         (STEPMAKE_KPATHSEA): Bugfix for Cygwin cross building: use
11482         $ac_exeect.
11483
11484         * Documentation/user/GNUmakefile: Only build music-glossary with
11485         rendered lilypond snippets during web.
11486
11487 2005-04-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11488
11489         * po/de.po: update.
11490
11491         * lily/GNUmakefile (OUT_DIST_FILES): don't dist lexer.cc
11492
11493 2005-04-22  Laura Conrad <lconrad@laymusic.org>
11494  
11495         * scripts/abc2ly:
11496         second title line append with punctuation dash character;
11497         encode abc2ly python strings in utf-8
11498        
11499 2005-04-21  Laura Conrad <lconrad@laymusic.org>
11500
11501         * scripts/abc2ly fix chords (again)
11502  
11503 2005-04-22  Bernard Hurley  <bernard@fong-hurley.org.uk>
11504
11505         * scm/x11-color.scm: new file
11506         All x11 color names can be accessed with:
11507         #(x11-color 'ColorName),
11508         #(x11-color "ColorName") or:
11509         #(x11-color "color name")
11510         If the x11 color name is not recognised then it defaults
11511         to black
11512
11513         * scm/lily.scm: amended to call scm/x11-color.scm
11514
11515 2005-04-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11516
11517         * Documentation/user/invoking.itely (Reporting bugs): comment out
11518         reference to online PNG bug repository.
11519
11520 2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
11521
11522         * lily/translator-scheme.cc (ly:translator-property): Remove.
11523         Update callers.
11524
11525         * lily/context-scheme.cc (ly:context-now): Move from translator.
11526         Update callers.
11527
11528 2005-04-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11529
11530         * input/regression/grid-lines.ly (skips): refine example.
11531
11532         * scm/define-context-properties.scm
11533         (all-user-translation-properties): doc autoBeamCheck
11534
11535         * input/regression/grid-lines.ly (Module): new file.
11536
11537         * lily/grid-point-engraver.cc (Module): new file.
11538
11539         * lily/grid-line.cc (Module): new file.
11540
11541         * lily/grid-line-span-engraver.cc (Module): new file.
11542
11543         * lily/grid-line-interface.cc (Module): new file.
11544
11545 2005-04-21  Jan Nieuwenhuizen  <janneke@gnu.org>
11546
11547         * scm/auto-beam.scm (revert-property-setting): Bugfixes: add
11548         missing parameter, actualy cdr through list.  Actually return a
11549         list with ENTRY removed (was '()).
11550
11551         * scripts/convert-ly.py: Update.  Print warning if file cannot be
11552         opened.
11553         (do_conversion): Fix printing of continuation comma.
11554
11555         * Documentation/user/advanced-notation.itely (Beam formatting):
11556         Remove refbugs about compound time and mixed duration.
11557
11558         * scm/auto-beam.scm (default-auto-beam-settings): Write out all
11559         modulo moments explicitely.
11560
11561         * lily/moment.cc (operator %): New function.
11562
11563         * lily/moment-scheme.cc (ly:mod-moment): Wrap it.
11564
11565         * lily/translator-scheme.cc (ly:translator-now,
11566         ly:translator-property): New function.
11567
11568         * scm/auto-beam.scm (default-auto-beam-check): New function.
11569
11570         * lily/auto-beam-engraver.cc (test_moment): Use it.
11571
11572         * flower/rational.cc (operator %): Bugfix.
11573
11574 2005-04-21  Erik Sandberg  <ersa9195@student.uu.se>
11575
11576         * scripts/abc2ly: Bugfix
11577
11578 2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11579
11580         * python/fontextract.py (write_extracted_fonts): bugfix, too many
11581         %'s on EndFont comment.
11582
11583         * lily/ledger-line-spanner.cc: some more words of explanation.
11584
11585 2005-04-20  John Williams <williams@tni.com>  
11586         
11587         * scripts/lilypond-book.py: htmlquote bugfix.
11588         Allow snippets to be given distinct filenames.
11589         Allow the default alt text to be overridden.
11590
11591 2005-04-20  Erik Sandberg  <ersa9195@student.uu.se>
11592
11593         * ly/performer-init.ly: Bugfix
11594
11595         * THANKS: Added bughunters.
11596
11597 2005-04-20  Jan Nieuwenhuizen  <janneke@gnu.org>
11598
11599         * SConstruct (test_lib): Bump mftrace requirement to 1.1.9.
11600
11601         * lily/auto-beam-engraver.cc (test_moment): Test exact measure
11602         position (was: use modulo measure length).
11603
11604         * configure.in (no gui_b): Remove optional gtk+ requirement.
11605
11606 2005-04-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11607
11608         * Documentation/user/basic-notation.itely (Pitches): add
11609         LedgerLineSpanner.
11610
11611         * lily/dynamic-engraver.cc (process_music): set right bound to
11612         script if present. Else, do not set.
11613         (acknowledge_grob): only set right bound of finished spanner to
11614         note column if no other bound is set.
11615
11616         * python/lilylib.py (make_ps_images): switch back to png16m.
11617         
11618 2005-04-19  Jan Nieuwenhuizen  <janneke@gnu.org>
11619
11620         * scripts/lilypond-book.py (write_if_updated): Bugfix for not
11621         writing up to date file.  Add dvips usage suggestion.
11622
11623         * scripts/convert-ly.py: Fix error message.
11624         Print usage if no files on command line.
11625         (usage): Add example usage.
11626
11627         * input/test/compound-time.ly: New file.
11628
11629         * input/test/circle.ly: New file.
11630
11631         * Documentation/topdocs/NEWS.tely: Use them.
11632
11633         * input/test/boxed-stencil.ly: Remove \score.
11634
11635         * buildscripts/mf-to-table.py (base): Add .log dependency.
11636
11637         * mf/GNUmakefile: Add PFAemmentaler and PFAaybabtu dependencies on
11638         pfa's.  Add .log dependency
11639
11640         * scm/define-markup-commands.scm (lower): New command.
11641
11642         * elisp/lilypond-mode.el (LilyPond-pdf-command): New command,
11643         make it default.
11644
11645 2005-04-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11646
11647         * lily/dynamic-engraver.cc (acknowledge_grob): add note-column
11648         also to finished cresc as right bound. This fixes:
11649         skip-string-decresc.ly
11650
11651         * lily/slur-scoring.cc (get_bound_info): robustness: substitute
11652         relative_coordinate if extent is empty.
11653
11654         * lily/stem.cc (width_callback): determine correct extent if flag
11655         is not there. This fixes slur-no-flag.ly
11656
11657         * lily/grace-engraver.cc (consider_change_grace_settings): new
11658         function.
11659         (initialize): also consider_change_grace_settings() on
11660         initialization. Fixes large grace notes at start of score.
11661
11662         * lily/break-align-interface.cc (do_alignment): don't translate if
11663         total_extent is empty.
11664
11665         * buildscripts/lilypond-{login,profile}.sh (Module): remove file.
11666
11667 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11668
11669         * scm/output-ps.scm (grob-cause): don't add cwd if path starts
11670         with slash.
11671
11672 2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
11673
11674         * stepmake/aclocal.m4: Remove tfm_path.
11675
11676 2005-04-18  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11677
11678         * scm/music-functions.scm (markup-expression->make-markup): fix
11679         bug with cons arguments of markup commands.
11680         (music->make-music): fix music expression property list building
11681
11682 2005-04-18  Jan Nieuwenhuizen  <janneke@gnu.org>
11683
11684         * aclocal.m4: Massage package names.
11685
11686         * SCons updates.
11687
11688 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11689
11690         * VERSION (PACKAGE_NAME): release 2.5.20
11691
11692         * lily/stem.cc (calc_stem_info): add minimum Y extent of
11693         stem-tremolo.  Fixes: bugs/tremolo-stem-length-beamed
11694
11695         * lily/percent-repeat-engraver.cc (try_music): add measure before
11696         next_moment to future processing moment. Fixes:
11697         percent-repeat-mm-rest.ly
11698         (process_music): don't add moment for 2nd time.
11699
11700         * input/regression/repeat-percent.ly: add mmrests as extra test.
11701
11702         * lily/axis-group-engraver.cc (acknowledge_grob): read
11703         keepAliveInterfaces to decide what to kill.
11704
11705         * ly/engraver-init.ly (AncientRemoveEmptyStaffContext): add
11706         percent-repeat-interface to keepAliveInterfaces. This fixes
11707         percent-repeat-harakiri.
11708
11709 2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
11710
11711         * SCons updates.
11712
11713 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11714
11715         * config.make.in (TTFTOOL_ENDIAN): rm TFM_PATH
11716
11717         * aclocal.m4: remove --enable-tfm-path configure option
11718
11719         * input/test/ancient-font.ly (lowerStaff): clef name errors.
11720
11721         * scm/backend-library.scm (postscript->png): newline after
11722         finishing command.
11723
11724         * lily/paper-score-scheme.cc (LY_DEFINE): new file.
11725         (LY_DEFINE): ly:paper-score-paper-systems: new function 
11726
11727         * lily/score-scheme.cc (LY_DEFINE): require music argument. 
11728
11729         * lily/score.cc (default_rendering): use Music_output too.
11730
11731         * input/test/chord-names-languages.ly (Module): rename file.
11732
11733         * lily/text-spanner.cc: add bound-padding.
11734
11735         * lily/paper-book.cc (systems): accept Paper_score
11736         iso. Paper_system vector. 
11737
11738         * input/regression/line-arrows.ly: new file.
11739
11740         * lily/paper-score.cc (process): run get_paper_systems() only once.
11741
11742         * lily/line-spanner.cc (line_stencil): add arrows.
11743
11744 2005-04-18  Jonatan Liljedahl  <lijon@kymatica.com>
11745
11746         * lily/line-interface.cc (make_arrow): new function. 
11747         (arrows): idem.
11748
11749 2005-04-18  Mathieu Giraud  <magiraud@free.fr>
11750
11751         * input/test/chord-names-german.ly: update for italian/french
11752         chords.
11753         
11754         * Documentation/user/instrument-notation.itely (Printing chord
11755         names): update.
11756
11757 2005-04-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11758
11759         * lily/include/paper-score.hh (class Paper_score): remove unused
11760         prototypes.
11761
11762         * lily/book.cc (process): add -COUNT to midi output.
11763
11764         * lily/score.cc (book_rendering): remove outname argument
11765         (book_rendering): return list of Music_outputs. 
11766
11767         * lily/global-context-scheme.cc (LY_DEFINE): remove outname argument.
11768
11769         * lily/book.cc (process): loop over Music_outputs returned from
11770         Score::book_rendering().
11771
11772         * lily/*.cc (width_callback): remove spurious "unused" warnings
11773         for assert (axis==[XY]_AXIS); 
11774
11775         * lily/include/music-output.hh (class Music_output): smobify class.
11776
11777         * lily/include/paper-score.hh (class Paper_score): make members
11778         private.
11779
11780         * lily/performance.cc (process): return #f iso. #<undefined>. This
11781         prevents #<undefined> leaking into GUILE-userspace.
11782
11783 2005-04-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11784
11785         * config.hh.in: remove HAVE_PANGO_FC_FONT_MAP_ADD_DECODER_FIND_FUNC.
11786
11787 2005-04-17  Mathieu Giraud  <magiraud@free.fr>
11788
11789         * scm/chord-name.scm : support for italian and french
11790         chords names.
11791
11792         * scm/chord-ignatzek-names.scm (ignatzek-chord-names): add
11793         a space defined by chordPrefixSpacer when the root name is
11794         direclty followed by a prefix.
11795
11796         * ly/engraver-init.ly : chordPrefixSpacer       
11797         * scm/define-context-properties.scm : chordPrefixSpacer
11798         * ly/property-init.ly : italianChords, frenchChords 
11799
11800 2005-04-17  Jan Nieuwenhuizen  <janneke@gnu.org>
11801
11802         * mf/feta-din.mf: Remove.
11803
11804         * mf/GNUmakefile (fontdir): Bugfix.
11805
11806         * mf/SConstruct: Some updates.
11807
11808         * SConstruct: Require pkg-config.
11809         (test_program): Bugfix for double digit version compares, use
11810         integer (not string-) compare.
11811         Optionally require gs 8.14.
11812
11813         * stepmake/aclocal.m4 (STEPMAKE_PANGO_FT2): Define HAVE_PANGO16 too.
11814
11815         * lily/*: s/ifdef HAVE_*/if have/.
11816
11817         * SConstruct (test_lib): New function.  Update pkg-config and some
11818         other requirements.
11819
11820         * configure.in: Require pkg-config.  Enforce REQUIRE and version for
11821         freetype, pangof2t.
11822
11823 2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
11824
11825         * po/lilypond.pot, ...: Update using bison-CVS.
11826
11827         * python/lilylib.py (make_ps_images): Fixo.
11828
11829 2005-04-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11830
11831         * python/lilylib.py (make_ps_images): typo.
11832
11833         * configure.in (gui_b): make bison optional.
11834
11835         * lily/GNUmakefile (OUT_DIST_FILES): dist parser and lexer.
11836
11837 2005-04-16  Bernard Hurley  <bernard@fong-hurley.org.uk>
11838
11839         * framework-eps.scm: code added so that a macro \betweenLilyPondSystem
11840         with one parameter can be defined in a LaTeX file when processed
11841         by lilypond-book this will be evaluated between the systems of
11842         a multi-system score. The parameter is the number of systems processed.
11843
11844 2005-04-16  Jan Nieuwenhuizen  <janneke@gnu.org>
11845
11846         * python/lilylib.py (make_ps_images): Escape newline.
11847
11848         * Documentation/user/music-glossary.tely: Run
11849         texinfo-all-menus-update.
11850
11851 2005-04-14  Jan Nieuwenhuizen  <janneke@gnu.org>
11852
11853         * scm/lily-library.scm (old-relative-not-used-message)
11854         (version-not-seen-message): Add input-file-name-location to message.
11855
11856         * lily/parser.yy (lilypond): Add token aliases.
11857
11858         * Documentation/user/music-glossary.tely (accidental): Fixes.  Do
11859         not confuse with alteration.
11860         (alteration): Add.
11861
11862 2005-04-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11863
11864         * python/lilylib.py (make_ps_images): use -dEPSCrop
11865
11866         * VERSION (PACKAGE_NAME): release 2.5.19 
11867
11868         * Documentation/user/lilypond-book.itely (Invoking lilypond-book):
11869         only put xrefs in info documentation.
11870
11871         * make/ly-rules.make ($(outdir)/%.html.omf): transplant .dvi ->
11872         .pdf rule to tex-rules.make.
11873
11874         * scm/framework-eps.scm (dump-stencils-as-EPSes): remove comments
11875         from -systems.* output.
11876
11877         * stepmake/stepmake/tex-rules.make ($(outdir)/%.pdf): make PDF
11878         directly, remove -$(PAGESIZE) target.
11879
11880         * input/test/embedded-postscript.ly: update.
11881
11882 2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11883
11884         * make/lysdoc-targets.make (local-WWW): remove ps.gz target.
11885
11886         * Documentation/user/changing-defaults.itely (Font selection):
11887         document font-name.
11888
11889         * input/regression/font-name.ly: show Pango fonts for
11890         font-name. Update example. 
11891
11892         * lily/pango-select.cc (properties_to_pango_description): don't
11893         convert symbol font-size to number, but use to lookup.
11894
11895         * python/fontextract.py (write_extracted_fonts): add VMusage 0.
11896
11897         * scm/framework-ps.scm (write-preamble): use (NAME . CONTENTS) and
11898         (NAME . FILE-NAME) tuples for font descriptions. 
11899         (write-preamble): display BeginFont DSC comments.
11900
11901         * python/fontextract.py (write_extracted_fonts): new file. Extract
11902         font resources from a PS file.
11903
11904         * scripts/lilypond-book.py (option_definitions): --psfonts option.
11905         (Compile_error.process_include): do_file returns chunks.
11906
11907         * make/ly-vars.make (DVIPS_FLAGS): don't load .map file.
11908
11909         * make/lysdoc-targets.make: .texi is .PRECIOUS
11910
11911         * scripts/lilypond-book.py (write_if_updated): new function.
11912
11913 2005-04-13  Jan Nieuwenhuizen  <janneke@gnu.org>
11914
11915         * scm/framework-eps.scm (dump-stencils-as-EPSes): Massage messages.
11916
11917 2005-04-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11918
11919         * scm/framework-eps.scm (dump-stencils-as-EPSes): no massages.
11920
11921         * input/regression/markup-syntax.ly: remove \score.
11922
11923         * scm/define-markup-commands.scm (draw-circle): add fill argument
11924
11925         * scm/stencil.scm (make-circle-stencil): add fill argument
11926
11927         * ps/music-drawing-routines.ps: add fill argument.
11928
11929         * ly/performer-init.ly: add CueVoice to MIDI too.
11930
11931         * ps/music-drawing-routines.ps: new routine BeginEPSF /
11932         EndEPSF.
11933
11934         * input/regression/markup-eps.ly: new file.
11935
11936         * scm/framework-ps.scm (write-preamble): change order: vars should
11937         be inited before procedures.
11938
11939         * scm/output-ps.scm (glyph-string): break lines. 255 chars is max
11940         for EPS files.
11941
11942         * scm/define-markup-commands.scm (epsfile): add epsfile command.
11943
11944 2005-04-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11945
11946         * configure.in (gui_b): add check for ghostscript 8.15
11947
11948 2005-04-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11949
11950         * lily/hairpin.cc (after_line_breaking): suicide the hairpinlet at
11951         start of line. Fixes cresc-after-newline.ly
11952
11953         * lily/source-file.cc (file_line_column_string): use get_column().
11954
11955 2005-04-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
11956
11957         * lily/source-file.cc (get_column): utf-8 support for column numbers.
11958
11959 2005-04-12  Jan Nieuwenhuizen  <janneke@gnu.org>
11960
11961         * lily/*: use message () iso progress_indication () for messages.
11962         Revise/uniformise user messages.
11963
11964         * flower/warn.cc (progress_indication): New function.
11965         (message): Use it.  Fixes newline problems.
11966
11967         * config.make.in (webdir): Sort out install dirs.
11968
11969         * stepmake/stepmake/generic-targets.make (final-install): Bugfix.
11970
11971         * python/lilylib.py (command_name): Bugfix.
11972         (make_ps_images):
11973
11974 2005-04-11  Pedro Kroger  <kroeger@pedrokroeger.net>
11975
11976         * lily/main.cc: --help says what types of backends are availabe
11977
11978 2005-04-11  Jan Nieuwenhuizen  <janneke@gnu.org>
11979
11980         Fix ./VERSION dependency, and without need to reconfigure.
11981
11982         * lily/main.cc (setup_paths): Update.
11983
11984         * stepmake/bin/make-version.py (defs): Add TOPLEVEL_VERSION define..
11985
11986         * config.hh.in (LILYPOND_DATADIR): Remove TOPLEVEL_VERSION.
11987
11988         * scripts/convert-ly.py (\markup): Fix too simplistic regexps.
11989         Add \line for some simplistic cases.
11990
11991         * lily/GNUmakefile (main.o): Add missing dependency on version.hh.
11992
11993 2005-04-10  Nicolas Sceaux  <nicolas.sceaux@free.fr>
11994
11995         * elisp/lilypond-mode.el (LilyPond-lilypond-command): command used
11996         to compile LY files (useful for adding eg. "-I" args)
11997         (LilyPond-command-alist): use `LilyPond-lilypond-command'. Add a
11998         2Gnome command for gnome backend.
11999         (LilyPond-command-formatgnome): call the 2Gnome command. key
12000         binding: C-c C-g
12001
12002 2005-04-10  Jan Nieuwenhuizen  <janneke@gnu.org>
12003
12004         * Documentation/user/GNUmakefile (lilypond/index.html): Bugfix:
12005         depend on all PNG images.
12006
12007 2005-04-09  Jan Nieuwenhuizen  <janneke@gnu.org>
12008
12009         * GNUmakefile.in: Bugfix: also link .map files.
12010
12011 2005-04-09  Nicolas Sceaux  <nicolas.sceaux@free.fr>
12012
12013         * scm/music-functions.scm (music->make-music): generate 
12014         a (make-music ...) sexpr from a music expression.
12015         (display-scheme-music): use guile pretty printer to display the
12016         make-music sexpr.
12017
12018 2005-04-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12019
12020         * ly/engraver-init.ly: reindent.
12021         Add CueVoice.
12022
12023         * scm/music-functions.scm (music-pretty-string): handle moments
12024         too.
12025         (music-pretty-string): only print non-empty lists.
12026         (cue-substitute): create CueVoice context, which has smaller type.
12027
12028         * lily/moment-scheme.cc (LY_DEFINE): new methods
12029         ly:moment-grace-{numerator,denominator}
12030
12031         * lily/context-handle.cc: remove quit() method. 
12032
12033         * lily/font-config.cc (init_fontconfig): be verbose about font path.
12034         (init_fontconfig): success is 0, not !0
12035
12036 2005-04-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12037
12038         * mf/feta-nummer-code.mf (code): add plus glyph.
12039
12040         * lily/tie.cc (print): idem.
12041
12042         * lily/slur.cc (print): don't use thickness property for
12043         slur shape-thickness.
12044
12045         * lily/stencil-scheme.cc (LY_DEFINE): don't reverse the order
12046         while adding stencils.
12047
12048         * scm/define-markup-commands.scm (with-color): with-color markup
12049         command.
12050         (whiteout): new markup command 
12051         (filled-box): new markup command
12052
12053 2005-04-07  Jan Nieuwenhuizen  <janneke@gnu.org>
12054
12055         * Documentation/topdocs/NEWS.tely (Top): Make tex-able.  Handy
12056         test for PDF docs.
12057
12058         * mf/GNUmakefile (lilypond.map): Add PFAEmmentaler,
12059         PFAAybabtu-Regular.  Fixes feta font in PDFs.
12060         
12061         Notes for tetex-3.0 make web:
12062            psclean.map: s/uhv8a/uhvr8a/
12063            config.ps add:
12064                 p +psfonts_t1.map
12065                 p +psclean.map
12066                 p +typeface.map
12067
12068 2005-04-06  Nicolas Sceaux  <nicolas.sceaux@free.fr>
12069
12070         * scm/music-functions.scm (music-pretty-string): fix bug with
12071         string argument.
12072
12073 2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
12074
12075         * stepmake/bin/add-html-footer.py (i18n): Bugfix.
12076
12077 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12078
12079         * scripts/lilypond-book.py (Lilypond_snippet.__init__): 
12080         only process options if they're there.
12081         (write_file_map): add version-seen? to snippet-map.ly
12082
12083 2005-04-06  Jan Nieuwenhuizen  <jan.nieuwenhuizen@aspiratie.nl>
12084
12085         * scripts/lilypond-book.py (split_options): Bugfix.  Small code
12086         formatting cleanups.
12087
12088         * mf/GNUmakefile: Rewrite $addprefix, $addsuffix using % short-forms.
12089         Add PFAaybabtu.pfa dependency on aybabtu.subfonts.
12090
12091 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12092
12093         * scm/framework-ps.scm (ps-font-command): don't hash, just use
12094         name directly.
12095
12096         * lily/main.cc (setup_paths): either add mf/out to search path or 
12097         fonts/{otf,type1,etc}
12098         
12099         * lily/font-config.cc (init_fontconfig): either add mf/out to
12100         FontConfig or fonts/{otf,type1,etc}
12101
12102         * GNUmakefile.in: don't put mf/ link in share/ dir.
12103
12104         * lily/staff-spacing.cc: move same-direction-correction to
12105         note-spacing-interface
12106
12107         * scm/lily.scm (lilypond-main): use variable argument count for
12108         exception handler.
12109
12110         * lily/font-config.cc (init_fontconfig): add operator pacification
12111         message.
12112
12113         * mf/aybabtu.pe.in (i): generate PFAAybabtu.pfa
12114
12115         * buildscripts/gen-emmentaler-scripts.py (i): generate
12116         PFAEmmentaler as well.
12117
12118         * scm/framework-ps.scm (munge-lily-font-name): new function
12119         (write-preamble): hack: insert PFA equivalent of CFF into
12120         .PS. This makes LilyPond output printable on normal PS printers
12121         again.
12122
12123         * buildscripts/gen-emmentaler-scripts.py (i): generate
12124         PFAEmmentaler.pfa aswell.
12125
12126 2005-04-06  John Williams <williams@tni.com>  
12127         
12128         * scripts/lilypond-book.py: refactor the compose_ly procedure.
12129         
12130 2005-04-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12131
12132         * scm/page-layout.scm (default-page-make-stencil): always combine
12133         the header stencil, even if empty. This prevents the body text to
12134         reach up to the margins.
12135
12136         * po/rw.po (Module): new file, for Kinyarwanda.
12137
12138         * input/test/spacing-optical.ly (Module): new file.
12139
12140         * lily/staff-spacing.cc: add same-direction-correction
12141
12142 2005-04-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12143
12144         * Documentation/user/introduction.itely (Engraving): Comment-out
12145         non-existent file.
12146
12147 2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12148
12149         * scm/define-grob-properties.scm (all-user-grob-properties): add
12150         same-direction-correction
12151
12152         * VERSION: release 2.5.18
12153
12154 2005-04-05  Jan Nieuwenhuizen  <janneke@gnu.org>
12155
12156         * lily/grob.cc (mark_smob): Check pscore->layout_ before
12157         dereferencing.  Fixes make web.
12158
12159         * lily/midi-stream.cc: Handle unwritable midi file.  Include
12160         errno.h.
12161
12162         * Documentation/user/: Fix links.
12163
12164 2005-04-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12165
12166         * lily/text-interface.cc (Module): rename from text-item.cc
12167
12168         * input/regression/apply-output.ly (texidoc): function naming fix.
12169
12170         * lily/time-signature-performer.cc (derived_mark): new function.
12171
12172         * lily/lily-parser-scheme.cc:  print mapped file name for progress
12173
12174         * scripts/lilypond-book.py (find_linestarts): new function.
12175         (find_toplevel_snippets): keep track of line numbers.
12176
12177         * lily/key-performer.cc (try_music): remove FIXME warning, gobble
12178         all key changes.
12179
12180         * ly/declarations-init.ly (partCombineListener): use
12181         ignoreBarChecks. Fixes: warn-partcombine-barcheck.ly
12182
12183         * lily/bar-check-iterator.cc (process): ignoreBarChecks property.
12184
12185 2005-04-04  Jan Nieuwenhuizen  <janneke@gnu.org>
12186
12187         * lily/text-item.cc: Fix link.
12188
12189         * Documentation/user/changing-defaults.itely (Changing defaults):
12190         Fix programs reference links.
12191
12192         * Documentation/user/music-glossary.tely: Convert to utf-8.
12193
12194 2005-04-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12195
12196         * make/lilypond-vars.make: remove TEXMF from variables.
12197         remove DEB_BUILD pk font variables.
12198         remove GUILE_LOAD_PATH
12199         remove TeX memory vars.
12200
12201 2005-04-04  Werner Lemberg  <wl@gnu.org>
12202
12203         * lilypond/scm-option.cc (ly_option_usage): Add final newline.
12204
12205 2005-04-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12206
12207         * ps/lilyponddefs.ps: remove reencode-font
12208
12209         * lily/simple-spacer.cc (add_columns): also compare
12210         directly. Column rank doesn't distinguish between broken and
12211         unbroken columns. This fixes large spaces before time sig changes.
12212
12213         * Documentation/user/point-and-click.itely: document ly:set-option.
12214
12215         * lily/grob.cc (get_uncached_stencil): only set grob-cause if
12216         point_and_click_global is set.
12217
12218         * lily/scm-option.cc (LY_DEFINE): add point-and-click
12219         ly:set-option argument.
12220
12221 2005-04-03  Jan Nieuwenhuizen  <janneke@gnu.org>
12222
12223         * GNUmakefile.in: Include symlinks in webball.
12224
12225         * Documentation/user/GNUmakefile (source-links): Add symlinks to
12226         source dir for split and non-split manuals.
12227
12228         * Documentation/user/*y: Fix @uref/@inputfile links for
12229         split/non-split HTML documents.
12230
12231         * Documentation/user/GNUmakefile (local-WWW): Do not generate
12232         .ps.gz.
12233         
12234 2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
12235
12236         * GNUmakefile.in: Add newline.
12237
12238 2005-04-01  Erlend Aasland  <erlenda@gmail.com>
12239
12240         * tex/lilyponddefs.tex: use color instead of xcolor
12241         * scm/output-tex.scm: minor editing
12242
12243 2005-04-02  Nicolas Sceaux  <nicolas.sceaux@free.fr>
12244
12245         * scm/music-functions.scm (display-scheme-music): pretty printer
12246         for music expressions.
12247
12248 2005-04-02  Jan Nieuwenhuizen  <janneke@gnu.org>
12249
12250         * buildscripts/install-info-html.sh (index_file): Fix link.
12251
12252 2005-04-01  Jan Nieuwenhuizen  <janneke@gnu.org>
12253
12254         * input/test/dynamic-extra.ly (piuf): Use utf-8 iso TeX accent.
12255
12256         * Documentation/index.html.in: Add size estimates with some big pages.
12257
12258         * Documentation/user/tutorial.itely (Running LilyPond for the
12259         first time): Add/replace some @rglos links.  TODO: add more
12260         @rglos links in tutorial, test non-intrusiveness (.css).
12261
12262         * stepmake/bin/add-html-footer.py (do_file): Remove info's
12263         annoying's indication of referencing external document.
12264
12265         * Documentation/user/GNUmakefile: Split version of glossary too.
12266         * Documentation/user/macros.itexi (@rglos): Have makeinfo produce
12267         links, not only for html.
12268
12269         * Documentation/user/introduction.itely: Fix some links for other
12270         than html, do not use `here' as link name.
12271
12272 2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
12273
12274         * scm/documentation-generate.scm (string-append): Fix @usermanref,
12275         @glossaryref.
12276
12277 2005-03-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12278
12279         * scm/page-layout.scm (default-page-make-stencil): only add header
12280         if existing and not empty. Fixes spurious programming error.
12281
12282         * lily/span-bar.cc (print): don't make rounded edges for spanbars.
12283
12284 2005-03-31  Erlend Aasland  <erlenda@gmail.com>
12285
12286         * scm/output-tex.scm: implement {re,}setcolor
12287         * tex/lilyponddefs.tex: use color package
12288
12289 2005-03-31  Jan Nieuwenhuizen  <janneke@gnu.org>
12290
12291         * GNUmakefile.in (local-WWW-post): Restore .htaccess and .html
12292         additions to website.
12293
12294         * Documentation/user/lilypond.tely: Remove reference to ps.gz.
12295
12296         * Documentation/user/macros.itexi: Fix @usermanref html links in
12297         split documents: use @inforef.
12298
12299 2005-03-30  Graham Percival  <gperlist@shaw.ca>
12300
12301         * Documentation/user/programming-interface.itely: minor fix.
12302
12303         * Documentation/user/advanced-notation.itely: added info to
12304         Metronome markings.
12305
12306 2005-03-30  Jan Nieuwenhuizen  <janneke@gnu.org>
12307
12308         * scm/output-lib.scm (make-stencil-boxer): Junk code duplication,
12309         use box-stencil.  Remove y-padding argument.
12310         (make-stencil-circler): New function.
12311
12312         * buildscripts/lilypond-words.py (F): 
12313         * elisp/SConscript (a): 
12314         * elisp/GNUmakefile (LILYPOND_WORDS_DEPENDS):
12315         * vim/SConscript (a): 
12316         * vim/GNUmakefile (LILYPOND_WORDS_DEPENDS): Update.
12317
12318         * lily/general-scheme.cc: Build fix.
12319
12320         * scm/markup.scm:
12321         * input/regression/markup-scheme.ly: 
12322         * input/regression/markup-syntax.ly: Drop 'new-' from name.
12323
12324         * scm/stencil.scm (make-circle-stencil): New function.
12325
12326         * scm/define-markup-commands.scm (draw-circle): Use it.  New
12327         name (was cicle).  Update callers.
12328         (circle): New markup command, similar to box.
12329
12330         * scm/stencil.scm (circle-stencil): New function.
12331
12332 2005-03-29  David Jedlinsky  <lilypond@ipnh.com>
12333
12334         * configure.in: Detect libutf8/wchar.h variant.
12335
12336         * stepmake/aclocal.m4: Modify shared size test.
12337
12338 2005-03-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12339
12340         * make/lilypond.fedora.spec.in (Group): remove texmf profile stuff.
12341
12342 2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12343
12344         * scripts/convert-ly.py (conv): add stencil-aligned-to! rule.
12345         
12346         * VERSION (PACKAGE_NAME):  release 2.5.17
12347
12348 2005-03-29  Jan Nieuwenhuizen  <janneke@gnu.org>
12349
12350         * scm/backend-library.scm (postscript->png): Fix comment and png
12351         message.
12352
12353         * GNUmakefile.in (link-tree): Fix locales.
12354
12355 2005-03-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12356
12357         * lily/stencil-scheme.cc (LY_DEFINE): change to
12358         ly:stencil-aligned-to, non mutating.
12359
12360         * scm/safe-lily.scm (lambda): remove ly:stencil-set-extent!
12361
12362         * lily/stencil-scheme.cc: remove ly:stencil-set-extent!
12363
12364         * lily/quote-iterator.cc (derived_mark): call
12365         Music_wrapper_iterator::derived_mark() too.
12366
12367         * lily/grace-engraver.cc (derived_mark): change signature, add
12368         const.
12369
12370 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12371
12372         * SConstruct (symlink): 
12373         * GNUmakefile.in (link-tree): Add scripts to prefix.
12374
12375         * lily/general-scheme.cc (ly:effective-prefix): New function.
12376
12377         * scm/backend-library.scm (postscript->png): Use it.
12378
12379 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12380
12381         * lily/paper-score.cc (process): don't delete grobs after
12382         producing stencils. 
12383
12384         * scm/part-combiner.scm (determine-split-list): switch off
12385         debugging info.
12386
12387         * scm/backend-library.scm (postscript->png): explicitly use ps2png.py
12388         if available.
12389
12390         * scm/define-context-properties.scm
12391         (all-user-translation-properties): add stringNumberOrientations.
12392
12393         * lily/new-fingering-engraver.cc (position_scripts): make generic,
12394         so fingering and string-numbers are separately controlled.
12395
12396 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12397
12398         * stepmake/aclocal.m4: Fix shared size test: add missing comma, do
12399         not use debugging.
12400
12401 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12402
12403         * GNUmakefile.in (local-WWW-post): remove UTF8 .htaccess.
12404
12405         * config.hh.in: add HAVE_FONTCONFIG.
12406
12407         * Documentation/user/instrument-notation.itely (String number
12408         indications): new node.
12409
12410         * input/regression/new-markup-syntax.ly (texidoc): add circle.
12411
12412         * lily/new-fingering-engraver.cc (add_string): new function. 
12413         (acknowledge_grob): accept string-number-event as well.
12414
12415         * scm/define-markup-commands.scm (circle): new markup command.
12416
12417         * scm/output-lib.scm (print-circled-text-callback): new function.
12418
12419         * lily/GNUmakefile: move ifeq after include stepmake.make.
12420
12421 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12422
12423         * config.make.in (HAVE_LIBKPATHSEA_SO):
12424         * stepmake/aclocal.m4: Also subst HAVE_LIBKPATHSEA_SO.
12425
12426         * lily/GNUmakefile (MODULE_LDFLAGS): Only if not HAVE_KPATHSEA_SO,
12427         add KPATHSEA_LIBS.
12428
12429         * debian/watch: 
12430         * debian/control: Update.
12431
12432 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12433
12434         * input/test/title-markup.ly (spaceTest): remove.
12435
12436         * input/test/embedded-tex.ly (Module): remove.
12437
12438         * input/test/music-box.ly: use 'name property, not ly:music-name.
12439
12440         * lily/GNUmakefile (MODULE_LDFLAGS): add KPATHSEA_LIBS.
12441
12442         * stepmake/aclocal.m4: STEPMAKE_FONTCONFIG: add.
12443
12444 2005-03-28  Jan Nieuwenhuizen  <janneke@gnu.org>
12445
12446         * Documentation/topdocs/INSTALL.texi (Top): Remove information
12447         about xdeltas.  Add information about CVS.
12448
12449         * scm/lily.scm (lilypond-main): Fix invocation of handler,
12450         gracefully handle failed files.
12451
12452         * lily/GNUmakefile (MODULE_LDFLAGS): Remove KPATHSEA_LIBS.
12453
12454         * Documentation/topdocs/INSTALL.texi (Top): Whitespace and other
12455         small fixes.
12456
12457         * scm/framework-tex.scm (convert-to-ps): Proper option spacing.
12458         No unnecessarily specific i18n messages.  Remove stray `1'.
12459
12460 2005-03-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12461
12462         * buildscripts/lys-to-tely.py (strip_extension): add utf-8
12463         documentencoding
12464
12465         * scm/documentation-lib.scm (texi-file-head): set utf-8
12466         documentencoding.
12467
12468         * ly/chord-modifiers-init.ly (whiteTriangleMarkup): use the greek
12469         Delta, not the Symbol one. 
12470
12471         * mf/GNUmakefile ($(outdir)/lilypond.map): add -Regular to Aybabtu
12472         for the .map file.
12473
12474         * Documentation/topdocs/INSTALL.texi (Top): add running
12475         requirement as compilation requirement.
12476
12477 2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12478
12479         * buildscripts/mutopia-index.py (headertext): add h1 header and
12480         utf-8 charset meta field.
12481
12482         * input/GNUmakefile: prune example list.
12483
12484         * scm/framework-tex.scm (convert-to-ps): add -ofoo.ps to dvips
12485         options.
12486
12487         * lily/slur-scoring.cc (get_base_attachments): only look at stem
12488         extent for visible stems.
12489
12490         * lily/grob.cc (mark_smob): mark \layout block from Grob::mark_smob().
12491
12492 2005-03-27  Jan Nieuwenhuizen  <janneke@gnu.org>
12493
12494         * Documentation/topdocs/INSTALL.texi (Top): Updates.
12495
12496         * scripts/convert-ly.py: Python 2.2 compatibility (thanks Mats).
12497
12498 2005-03-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12499
12500         * lily/slur-scoring.cc (get_base_attachments): robustness. Don't
12501         pass inf/nan into slur scoring.
12502
12503         * ly/titling-init.ly (oddHeaderMarkup): don't show page no. on 1st
12504         page.
12505
12506         * scripts/abc2ly.py (dump_voices): use alphabet().
12507
12508 2005-03-27  Jeff Smith <whydoubt@yahoo.com>
12509         
12510         * mf/GNUmakefile (depth): use $(FONTFORGE). 
12511
12512 2005-03-27 Matthias Neeracher <neeracher@mac.com>
12513         
12514         * flower/include/virtual-methods.hh: simplify. Patch by
12515
12516 2005-03-25  John Williams <williams@tni.com>  
12517
12518         * scripts/lilypond-book.py (main): add png for HTML too, guess
12519         only if necessary. 
12520
12521 2005-03-25  Graham Percival  <gperlist@shaw.ca>
12522
12523         * Documentation/topdocs/INSTALL.texi: now recommends
12524         lexer-gcc-3.1.sh for gcc 3.1.1 or higher.
12525
12526         * Documentation/user/basic-notation.itely,
12527         Documentation/user/tutoria.itely: warn about
12528         only one (phrasing) slur at once.
12529
12530 2005-03-24  Pedro Kroger  <kroeger@pedrokroeger.net>
12531
12532         * ly/music-functions-init.ly (removeWithTag): fixed to return "music".
12533
12534 2005-03-23  Graham Percival  <gperlist@shaw.ca>
12535
12536         * Documentation/user/basic-notation.itely: fixed info about
12537         ending a (de)cresc.
12538
12539         * Documentation/user/lilypond-book.itely: fixed
12540         lilypond-book filter example and warned about not doing
12541         --filter and --process at the same time.
12542
12543 2005-03-23  Mats Bengtsson  <mabe@s3.kth.se>
12544
12545         * lily/parser.yy (bass_number),
12546         Documentation/user/instrument-notation.itely (Figured bass): 
12547         Add the possibility to use text markup in figured bass. 
12548
12549 2005-03-19  Graham Percival  <gperlist@shaw.ca>
12550
12551         * Documentation/user/global.itely: added info about naming
12552         identifiers and breakbefore.
12553
12554         * Documentation/user/invoking.itely: added info about batch
12555         processing files with convert-ly, removed references to TeX
12556         in the jail section.
12557
12558         * Documentation/user/examples.itely: possibly fixed piano
12559         dynamics.
12560
12561         * Documentation/user/advanced-notation.itely: added info
12562         about removing other types of Staff.
12563
12564         * Documentation/user/instrument-notation.itely: possibly
12565         fixed piano staff line switch.
12566
12567         * Documentation/user/changing-defaults.itely: added info
12568         about using normal font in titles.
12569
12570 2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12571
12572         * VERSION (PATCH_LEVEL): release 2.5.16
12573
12574         * make/ly-vars.make (DVIPS_FLAGS): include lilypond.map path
12575         explicitly.
12576
12577 2005-03-18  Jan Nieuwenhuizen  <janneke@gnu.org>
12578
12579         * scm/framework-tex.scm (convert-to-dvi): Barf if NAME contains
12580         whitespace.
12581
12582         * python/lilylib.py (make_ps_images):
12583         * scm/backend-library.scm (postscript->pdf, postscript->png):
12584         Quote file name.  Use format rather than string-append juggling.
12585
12586 2005-03-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12587
12588         * python/lilylib.py (make_ps_images): add x to -g argument. 
12589
12590         * lily/key-performer.cc (create_audio_elements): don't use
12591         scm_eval_string. Check for minor 3rd directly.
12592   
12593         * input/mutopia/J.S.Bach/baerenreiter-sarabande.ly
12594         (sarabandeCelloGlobal): key is D minor, not F major.
12595
12596 2005-03-17  Jan Nieuwenhuizen  <janneke@gnu.org>
12597
12598         Fix truncated --png output (Peter Danenberg).
12599         
12600         * python/lilylib.py (make_ps_images):
12601         * scripts/ps2png.py (copyright): Grok --papersize option.
12602
12603         * scm/backend-library.scm (postscript->png): Add parameter
12604         PAPERSIZE.  Update callers.
12605
12606         * scm/output-gnome.scm (music-font?): Bugfix: use "Emmentaler".
12607         Fixes symbol placement.
12608
12609         * lily/spanner.cc: 
12610         * lily/stencil.cc: Use "libc-extension.hh" (WAS:
12611         <libc-extension.hh>).
12612
12613 2005-03-16  Jan Nieuwenhuizen  <janneke@gnu.org>
12614
12615         * Nitpick run.
12616
12617         * buildscripts/fixcc.py: Update.
12618
12619         Builddir run fixes.
12620
12621         * HACKING (datadir): Add VERSION.
12622
12623         * GNUmakefile.in (linktree): Bugfix: outconfdirs are one dir
12624         higher up.
12625
12626 2005-03-15  Werner Lemberg  <wl@gnu.org>
12627
12628         * mf/feta-klef.mf (draw_gclef): Move z10' slightly so that the
12629         diagonal stem doesn't become thinner.
12630
12631 2005-03-15  Jan Nieuwenhuizen  <janneke@gnu.org>
12632
12633         * buildscripts/fixcc.py: Fixes (Werner).
12634
12635 2005-03-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12636
12637         * mf/GNUmakefile ($(outdir)/lilypond.map): capitalize
12638         Emmentaler/Aybabtu.
12639
12640         * GNUmakefile.in: fix lilypond-words path.
12641
12642         * po/tr.po: update to 2.3.21
12643
12644         * lily/new-fingering-engraver.cc (position_scripts): take priority
12645         from head position.
12646
12647         * input/regression/finger-chords-order.ly (texidoc): new file.
12648
12649 2005-03-14  Jan Nieuwenhuizen  <janneke@gnu.org>
12650
12651         * make/ly-rules.make: 
12652         * stepmake/aclocal.m4: 
12653         * Documentation/user/GNUmakefile: Remove old makeinfo compatibility.
12654
12655         * buildscripts/fixcc.py (rules): Leave space after operator.
12656
12657 2005-03-14  Werner Lemberg  <wl@gnu.org>
12658
12659         * mf/feta-klef.mf (draw_gclef): Replace `simple_serif' for
12660         top of the glyph with smooth curve.
12661
12662 2005-03-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12663
12664         * Documentation/user/global.itely (Page layout): remove
12665         printpagenumber.
12666
12667 2005-03-13  Jürgen Reuter  <reuter@ipd.uka.de>
12668
12669         * input/regression/mensural-ligatures.ly: new file (with examples
12670         compiled by Pal Benko).
12671
12672         * Documentation/user/instrument-notation.itely: Bugfix: yet some
12673         other "custodes.*-u0" -> "custodes.*.u0" renaming victims in
12674         musicglyph access.  Many small beautifications in ancient
12675         examples.
12676
12677         * input/test/divisiones.ly: fixed indentation; small
12678         beautifications
12679
12680         * ly/engraver-init.ly: added FIXME comment
12681
12682         * scripts/lilypond-book.py,
12683         Documentation/user/lilypond-book.itely: added music fragment
12684         option "packed" to lilypond-book
12685
12686         * Documentation/user/instrument-notation.itely: Bugfix: added
12687         missing LedgerLineSpanner color setting in several places.  Added
12688         music fragment option "packed" to VaticanaContext example.
12689
12690 2005-03-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12691
12692         * scm/define-grobs.scm (all-grob-descriptions): switch off
12693         Hyphen_spanner::set_spacing_rods 
12694
12695         * lily/lyric-hyphen.cc (print): add padding between syllable and
12696         hyphen.
12697         (print): shorten hyphen in tight situations (determine using
12698         minimum-length)
12699
12700         * scm/paper.scm (layout-set-staff-size): increase blotdiameter to
12701         0.4pt.
12702
12703 2005-03-13  Jan Nieuwenhuizen  <janneke@gnu.org>
12704
12705         * ly/titling-init.ly (bookTitleMarkup): Refinements.
12706
12707         * input/regression/page-breaks.ly (paper): Set not raggedlastbottom,
12708         header/footer markings for regression-test.
12709
12710         * scm/backend-library.scm (output-scopes, header-to-file): Move
12711         from framework-tex.scm.
12712
12713         * scm/framework-ps.scm (output-framework)
12714         (output-preview-framework):
12715         * scm/framework-eps.scm (output-classic-framework)
12716         (output-framework): Use it.  Fixes collated files.
12717
12718 2005-03-12  Jan Nieuwenhuizen  <janneke@gnu.org>
12719
12720         * input/sakura-sakura.ly: 
12721         * input/xiao-haizi-guai-guai.ly: Add from Debian package (Anthony).
12722
12723         * buildscripts/guile-gnome.sh: Update.
12724
12725         * mf/GNUmakefile (aybabtu.otf): Add dependency on .pe.
12726
12727         * mf/aybabtu.pe.in: Capitalize Aybabtu.
12728
12729 2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12730
12731         * lily/separating-group-spanner.cc (find_rods): oops. Fix the real
12732         culprit: always exit the loop if we find a rod, even if it has
12733         distance < 0. 
12734
12735         * lily/ledger-line-spanner.cc (set_spacing_rods): rewrite to O(n)
12736         algorithm.
12737
12738         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
12739         $(outdir)/%.svg $(outdir)/%.pfa): add --simplify.
12740
12741         * scm/output-svg.scm (dashed-line): new  function body.
12742         
12743         * GNUmakefile.in: create .htaccess.
12744
12745 2005-03-11  Jan Nieuwenhuizen  <janneke@gnu.org>
12746
12747         * Documentation/topdocs/NEWS.tely (Top): Fix text example.
12748
12749 2005-03-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12750
12751         * VERSION (PACKAGE_NAME): release 2.5.15
12752
12753         * scm/output-{pdf,pdftex,sketch}.scm (Module): remove bitrotted files.
12754
12755         * scm/framework-svg.scm (output-framework): put scaling in
12756         document header. Apply scaling only once.
12757         (output-framework): dump page size in px, not mm. 
12758
12759         * scm/lily-library.scm (modified-font-metric-font-scaling): rename
12760         from font-size.
12761
12762         * lily/paper-outputter-scheme.cc (LY_DEFINE):
12763         ly:outputter-output-scheme, new function.
12764
12765         * scm/output-svg.scm (pango-description-to-svg-font): new function
12766
12767 2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12768
12769         * Documentation/user/GNUmakefile (deep-symlinks): remove outimages
12770         target.
12771
12772         * input/typography-demo.ly: new file.
12773
12774 2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
12775
12776         * Documentation/user/global.itely (File structure): Add markup blocks
12777         to toplevel expressions.
12778         (Multiple movements, Creating titles): Add markup blocks.
12779
12780         * lily/stencil-scheme.cc: Use "libc-extension.hh" (WAS:
12781         <libc-extension.hh>).
12782
12783         * lily/accidental.cc (accurate_boxes): Compile fix: 1.51 was broken.
12784
12785         * flower
12786         * lily
12787         * kpath-guile: Nitpick run: buildscripts/fixcc.py.
12788
12789 2005-03-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12790
12791         * lily/accidental.cc: special bboxes for natural. 
12792
12793         * mf/feta-toevallig.mf: make stems heavier.
12794
12795         * lily/dynamic-text-spanner.cc (print): add bound padding for edge
12796         texts as well.
12797
12798         * mf/feta-klef.mf: revise. 
12799
12800         * mf/feta-schrift.mf: make thinning of accent less pronounced.
12801
12802         * mf/feta-klef.mf: add rounded curve at top. 
12803         make thinnib a little heavier.
12804
12805 2005-03-10  Jan Nieuwenhuizen  <janneke@gnu.org>
12806
12807         * lily/parser.yy (book_body): Oops, allow \markup in \book too.
12808
12809         * buildscripts/fixcc.py: New file.
12810
12811         * input/regression/utf8.ly: Update Debian font description.
12812
12813 2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
12814
12815         * stepmake/aclocal.m4: Fix test.
12816
12817 2005-03-09  Graham Percival  <gperlist@shaw.ca>
12818
12819         * Documentation/user/invoking.itely: added Sebastino Vigna's
12820         docs for the --jail option.
12821
12822 2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12823
12824         * lily/stem.cc (print): only produce stemlets if there are no
12825         noteheads on this stem.
12826
12827         * lily/note-spacing.cc (stem_dir_correction): robustness fix:
12828         don't crash on stemlet (visible stem without heads).
12829
12830         * scm/define-grobs.scm (all-grob-descriptions): junk LeftEdge for
12831         unbroken situations. 
12832
12833         * scm/output-lib.scm (center-invisible): new function.
12834
12835         * lily/spacing-loose-columns.cc (set_loose_columns): use spacing
12836         wishes to determine loose column space.
12837
12838         * lily/font-config.cc (init_fontconfig): add
12839         fonts/{otf,type1,cff}  to path.
12840
12841         * lily/main.cc (setup_paths): add fonts/{otf,svg,tfm,cff} to path
12842
12843         * mf/GNUmakefile (Module): install all fonts under otf/
12844
12845         * scm/framework-ps.scm (Module): read fonts from fonts/extension,
12846         replace /fonts/otf/ by /ps/ 
12847
12848         
12849 2005-03-09  Jan Nieuwenhuizen  <janneke@gnu.org>
12850
12851         * lily/paper-book.cc (classic_output): Reinstate header_0_ hack.
12852
12853         * lily/book.cc (process): Oops, add score_.header_.
12854
12855         * lily/paper-book.cc: Fold hearders, score and texts into scores_.
12856
12857         * lily/parser.yy: Handle toplevel and book texts as score.
12858
12859         * scm/page-layout.scm (default-page-make-stencil):
12860         Bugfix: (page-properties rename.
12861
12862         * scm/backend-library.scm (ly:system): Typo.
12863
12864 2005-03-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12865
12866         * stepmake/stepmake/executable-targets.make (installexe): don't
12867         strip installed executables
12868
12869         * lily/font-select.cc (get_font_by_design_size): revert
12870         pango_description_string as well.
12871
12872         * lily/system.cc (set_loose_columns): put loose column just left
12873         of next column.
12874
12875         * lily/include/group-interface.hh (extract_grob_array): rename
12876         from Pointer_group_interface__extract_grobs
12877
12878         * input/regression/ledger-line-minimum.ly (texidoc): new file.
12879
12880         * lily/ledger-line-spanner.cc (set_spacing_rods): new
12881         function. Keep ledgered note heads at a minimum distance.
12882         Introduce minimum-length-fraction
12883         (print): introduce length-fraction property.
12884
12885 2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12886
12887         * tex/GNUmakefile: remove latin1.enc rules.
12888
12889 2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
12890
12891         * scm/titling.scm: Typo.
12892
12893         * input/regression/score-text.ly: Really add.
12894
12895         * lily/score.cc: Bugfixes for SCM header_ and texts_ members.
12896
12897 2005-03-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12898
12899         * lily/open-type-font-scheme.cc:  new file.
12900
12901 2005-03-08  Jan Nieuwenhuizen  <janneke@gnu.org>
12902
12903         * scm/titling.scm (layout-extract-page-properties): Rename from
12904         page-properties.  Update callers.
12905
12906         * lily/lexer.ll (Lily_lexer):
12907         * lily/parser.yy: Junk lyric_markup state.
12908
12909         * Documentation/topdocs/NEWS.tely (Top): Mention markup text feature.
12910
12911         * scripts/lilypond-book.py (PREAMBLE_LY): toplevel-music-handler:
12912         Add texts parameter.
12913
12914 2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
12915
12916         * lily/lexer.ll (lyric_markup): New mode.
12917         (Lily_lexer::push_lyric_markup_state): New method.
12918         (MARKUPCOMMAND): Markup during lyric mode returns LYRIC_MARKUP.
12919
12920         * lily/parser.yy (book_body):
12921         (toplevel_expression): Grok \markup texts.
12922
12923         * lily/score-scheme.cc (ly:music-scorify): 
12924         * scm/lily-library.scm (collect-music-for-book): Take texts
12925         parameter.
12926
12927         * lily/score.cc (texts_): New member.
12928
12929         * lily/paper-book.cc (systems): Format score texts.
12930
12931         * score-text.ly: New file.
12932
12933         * ttftool/SConscript:
12934         * kpath-guile/SConscript: New file.
12935
12936         * lily/SConscript:
12937         * SConstruct: Update.
12938
12939 2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12940
12941         * VERSION (PACKAGE_NAME): release 2.5.14
12942
12943 2005-03-07  Jan Nieuwenhuizen  <janneke@gnu.org>
12944
12945         * lily/main.cc: Add dummy xgettext markers.
12946
12947 2005-03-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12948
12949         * make/lilypond.fedora.spec.in (Requires): scrap kpathsea/tex
12950         requirements
12951
12952         * stepmake/aclocal.m4: check dynamic link, by checking if kpathsea
12953         executable is < 40k
12954
12955         * lily/main.cc (setup_paths): remove tfm1 tfm2 tfm3 include path
12956         hack.
12957
12958 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12959
12960         * flower/libc-extension.cc:
12961         * flower/include/libc-extension.hh: [Open]BSD simply cast
12962         cookie/funopen declarations.
12963
12964         * stepmake/aclocal.m4: Check for libkpathsea.so.
12965
12966         * kpath-guile/kpath.c (ly_kpathsea_expand_variable): Use
12967         dl_kpse_find_file.
12968
12969 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12970
12971         * kpath-guile/kpath.c (open_library): dlopen libkpathsea.so
12972         (open_library): alternative for static library.
12973
12974 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
12975
12976         * configure.in: Set TTFTOOL_ENDIAN iso global CFLAGS.
12977
12978         * ttftool/GNUmakefile (MODULE_CFLAGS): Add $(TTFTOOL_ENDIAN).
12979
12980         Drop run-time dependency on teTeX.
12981
12982         * lily/kpath.cc (initialize_kpathsea): dlopen libkpathsea.
12983
12984         * stepmake/aclocal.m4 (STEPMAKE_KPATHSEA): Do not include
12985         KPATHSEA_LIBS in LIBS.
12986         (STEPMAKE_DLOPEN): New function.
12987
12988         * lily/font-config.cc (init_fontconfig): Use dir for directory,
12989         not path.
12990
12991         * flower/file-path.cc (directories): Rename from paths, as this
12992         return an array of directories (a single path).
12993
12994 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
12995
12996         * lily/GNUmakefile (MODULE_LIBS): link with kpath-guile
12997
12998         * lily/all-font-metrics.cc (kpathsea_find_file): wrapper around
12999         new ly:kpathsea-find-file
13000
13001         * kpath-guile/kpath.c: new file. Put kpath bindings in lib.
13002
13003         * kpath-guile/GNUmakefile: new file
13004
13005         * buildscripts/gen-emmentaler-scripts.py (i): generate
13006         emmentaler-X.fontname as well.
13007
13008         * buildscripts/ps-embed-cff.py: new script
13009
13010         * scm/lily-library.scm: remove ps-embed-cff.
13011
13012         * scm/framework-ps.scm (write-preamble): don't use kpathsea for
13013         font loading. 
13014
13015         * scm/font.scm (add-music-fonts): load dynamics/numbers through
13016         fontconfig as well.
13017
13018         * lily/font-config.cc (init_fontconfig): add cff/ too.
13019
13020         * ly/generate-embedded-cff.ly: capitalize.
13021
13022         * lily/pango-select.cc (select_pango_font): use ::find_pango_font,
13023         so as to register the pango font.
13024
13025         * lily/font-config.cc (init_fontconfig): add
13026         prefix/{otf,type1,mf/out} to fontconfig path.
13027
13028         * lily/main.cc: only look at one prefix directory, LILYPONDPREFIX
13029         overrides all. 
13030
13031         * configure.in (gui_b): remove ec mftrace check
13032
13033         * config.hh.in: use lilypond-Major.Minor as data directory.
13034
13035         * scm/framework-ps.scm (dump-page): use output-units for landscape.
13036
13037         * buildscripts/gen-emmentaler-scripts.py (i): lower case file
13038         name.
13039
13040 2005-03-06  Jan Nieuwenhuizen  <janneke@gnu.org>
13041
13042         * lily/main.cc (do_chroot_jail): Small cleanups.  Avoid constant
13043         error messages.
13044
13045         * flower/libc-extension.cc:
13046         * flower/include/libc-extension.hh: [Open]BSD fixes for
13047         cookie/funopen declarations.
13048
13049 2005-03-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13050
13051         * buildscripts/gen-emmentaler-scripts.py (outdir): capitalize
13052         emmentaler.
13053
13054         * lily/score-engraver.cc (initialize): remove check for ecrm10 /
13055         lcrm10.
13056
13057         * scm/define-markup-commands.scm (fontsize): new markup
13058         command. Also set baseline-skip
13059
13060 2005-03-06 Sebastiano Vigna <vigna@dsi.unimi.it>.
13061         
13062         * lily/main.cc (do_chroot_jail): paranoia security for webserver
13063         use.
13064
13065 2005-03-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13066
13067         * stepmake/bin/add-html-footer.py (do_file): make wiki link optional.
13068
13069         * lily/pdf.cc: remove PDF related files
13070
13071 2005-03-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13072
13073         * ly/deutsch.ly: add quarter tones, patch by Arno Waschk.
13074         <hamamatsu@gmx.de>
13075
13076 2005-03-05  Graham Percival  <gperlist@shaw.ca>
13077
13078         * Documentation/user/advanced-notation.itely: first draft
13079         of reorg done.
13080
13081         * Documentation/user/global.itely: fixed (sub)section
13082         bits of MIDI.
13083
13084 2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
13085
13086         * cygwin/mknetrel (extras): Bufix (Bertalan).
13087
13088         * Documentation/user/basic-notation.itely (Chords): @ref fix.
13089         * Documentation/user/instrument-notation.itely (Introducing chord
13090         names): Compile fix: must have unique name.
13091
13092 2005-03-02  Graham Percival  <gperlist@shaw.ca>
13093
13094         * Documentation/user/instrument-notation.itely: reorg.
13095
13096 2005-03-02  Jan Nieuwenhuizen  <janneke@gnu.org>
13097
13098         * scm/output-gnome.scm:
13099         * scm/output-svg.scm: Fix font scaling.
13100
13101 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13102
13103         * ly/titling-init.ly (tagline): Use Engraving.  Add comment about
13104         what link to use best.
13105
13106         * Documentation/user/instrument-notation.itely (Ancient accidentals): 
13107         * Documentation/user/tutorial.itely (Automatic and manual beams):
13108         Fix @ref.
13109
13110         * lily/tweak-registration.cc (replace_grob_tweak): New function.
13111         * lily/tweak-registration-scheme.cc (LY_DEFINE): Wrap it.
13112         * scm/framework-gnome.scm (tweak): Use it.
13113
13114 2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13115
13116         * Documentation/topdocs/NEWS.tely (Top): elucidate GS problem.
13117
13118         * scm/output-ps.scm (white-text): reinstate white-text
13119
13120 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13121
13122         * scm/output-ps.scm (offset-add): Remove.
13123
13124         * scm/lily-library.scm (offset-flip-y): New function.
13125         * scm/framework-gnome.scm (tweak): Use it.
13126
13127         * scm/output-gnome.scm (grob-cause): Add parameter.
13128
13129         * scm/lily.scm (ly:all-stencil-expressions): Add url-link.
13130         * scm/output-ps.scm (url-link): Move.
13131         (white-text): Warn user about brokenness.
13132
13133         * Documentation/topdocs/NEWS.tely: Be more accurate and respectful
13134         wrt ghostscript.
13135
13136 2005-03-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13137
13138         * lily/slash-repeat-engraver.cc (try_music): always make slashes
13139         if body length smaller than measure length.
13140
13141         * scm/define-markup-commands.scm (with-url): oops. use Y extent
13142         for Y.
13143
13144         * ly/titling-init.ly (tagline): put default tagline in \paper
13145
13146 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13147
13148         * lily/kpath.cc: 
13149         * lily/pdf.cc (Pdf_file): Use more generic error messages.
13150
13151         * scm/lily-library.scm (version-not-seen-message): New function.
13152         * ly/init.ly: Use it.
13153
13154         * scm/page-layout.scm (ly:optimal-page-breaks): Display page
13155         breaks as progess.
13156
13157         * scripts/lilypond-book.py (do_process_cmd): Do not lump
13158         whitespace with l10n message.
13159
13160         * scm/framework-tex.scm (convert-to-ps):
13161         (convert-to-dvi): Do not use overly specific l10n messages.
13162
13163         * ly/titling-init.ly (bookTitleMarkup): Add baseline skips from 2.4.
13164
13165         * tex/GNUmakefile $(outdir)/latin1.enc: Build fix:
13166         merge stderr with stdout.  
13167
13168 2005-03-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13169
13170         * flower/libc-extension.cc: Tested BSD compile fix (Matthias
13171         Neeracher).
13172
13173 2005-02-29  Graham Percival  <gperlist@shaw.ca>
13174
13175         * Documentation/user/instrument-notation.teily: moved
13176         \arpeggio to Basic.
13177
13178         * Documentation/user/advanced-notation.itely: Articulation to
13179         Basic, a bunch of stuff from Basic moved to Advanced.
13180
13181         * Documentation/user/basic.itely: swapped various sections,
13182         reorganized Basic.
13183
13184 2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
13185
13186         * flower/memory-stream.cc: 
13187         * flower/libc-extension.cc: Remove obsolete #undefs.
13188
13189         * flower/include/libc-extension.hh: Bugfix for BSD, place #ifdef
13190         more carefully.
13191
13192 2005-02-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13193
13194         * make/lilypond.fedora.spec.in (Requires): add GS 8.15 as
13195         dependency.
13196
13197         * VERSION (PACKAGE_NAME): release 2.5.13
13198
13199         * GNUmakefile.in (web-ext): don't ship ps.gz
13200
13201         * tex/GNUmakefile ($(outdir)/latin1.enc): redirect stderr to
13202         stdout
13203
13204 2005-02-28  Jan Nieuwenhuizen  <janneke@gnu.org>
13205
13206         * lily/general-scheme.cc (LY_DEFINE): Compile fix for systems
13207         without libintl.  Now it compiles too.
13208
13209 2005-02-28  Graham Percival  <gperlist@shaw.ca>
13210
13211         * Documentation/user/basic-notation.itely,
13212         instument-notation.itely, advanced-notation.itely:
13213         split up contents of notation.itely.
13214
13215         * Documentation/user/notation.itely: file removed.
13216
13217         * Documentation/user/invoking.itely, converters.itely:
13218         moved convert-ly info to invoking.itely.
13219
13220         * Documentation/user/global.itely, changing-defaults.itely,
13221         sound-output.itexi: moved global settings, file layout, and
13222         sound into global.itely.
13223
13224         * Documentation/user/sound-output.itexi: file removed.
13225
13226         * Documentation/user/lilypond.tely: removed links to
13227         notation.itely and sound.itely.
13228
13229 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13230
13231         * scm/output-ps.scm (grob-cause): only do mark_URI if non-empty.
13232
13233         * scm/framework-ps.scm (write-preamble): remove pdf-viewer code.
13234  
13235         * THANKS: add sponsor.
13236
13237         * scm/define-markup-commands.scm (with-url): new markup command.
13238
13239         * scm/page-layout.scm (TAGLINE): add www.lilypond.org with URL to
13240         tagline.
13241         
13242         * scm/output-tex.scm (url-link): stub.
13243
13244         * scm/output-ps.scm (url-link): new function.
13245
13246         * lily/lily-parser-scheme.cc (LY_DEFINE): deprecate
13247         ly:set-point-and-click
13248
13249 2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
13250
13251         * ps/music-drawing-routines.ps (mark_file_line): Switch Action
13252         based on pdf-viewer setting.
13253
13254         * scm/framework-ps.scm (write-preamble): Find and set preferred
13255         pdf-viewer.
13256
13257 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13258
13259         * Documentation/user/point-and-click.itely: update for PDF point &
13260         click.
13261
13262         * scripts/lilypond-pdfpc-helper.py: new file. Invoke different
13263         editors based on EDITOR setting.
13264
13265 2005-02-27  Jan Nieuwenhuizen  <janneke@gnu.org>
13266
13267         * scm/*: Oops, more grand 2005 replace bits.
13268
13269 2005-02-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13270
13271         * ps/music-drawing-routines.ps: new routine: insert PDF mark
13272
13273         * scm/output-ps.scm (grob-cause): point & click support for
13274         PostScript
13275
13276 2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13277
13278         * lily/input-scheme.cc (LY_DEFINE): rename to
13279         ly:input-file-line-column
13280
13281 2005-02-26  Graham Percival  <gperlist@shaw.ca>
13282
13283         * Documentation/user/examples.itely: small fix from Steve Doonan.
13284
13285         * Documentation/user/scheme-tutorial.itely: small fix from Steve Doonan.
13286
13287         * THANKS: added Yuval Harel.
13288
13289         * Documentation/user/{various}: inserted two spaces after a period.
13290
13291         * Documentation/user/lilypond.tely: added framework for reorg.
13292
13293         * Documentation/user/basic-notation.itely, instrument-notation.itely,
13294         advanced-notation.itely, global.itely: new files, placeholder for
13295         future reorg.
13296
13297 2005-02-26 Yuval Harel  <yuvalh@hotpop.com>
13298
13299         * Documentation/user/notation.itely: revamped Polyphony section
13300         
13301 2005-02-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13302
13303         * Documentation/user/lilypond-book.itely (Music fragment options):
13304         doc fontload.
13305
13306         * Documentation/user/changing-defaults.itely (Text encoding): add
13307         fontload option to utf8 include
13308
13309         * scripts/lilypond-book.py (compose_ly): add fontload option
13310
13311         * scm/framework-eps.scm (dump-stencils-as-EPSes): add
13312         force-eps-font-include option.
13313
13314         * ly/chord-modifiers-init.ly (blackTriangleMarkup): reinstate
13315         black triangle
13316
13317         * Documentation/user/invoking.itely (Editor support): remove
13318         lilypond-latex section.
13319
13320         * scripts/lilypond-latex.py (Module): remove script.
13321
13322         * cygwin/lily-wins.py (stat): write to .lylog, so as not to
13323         overwrite .log. 
13324
13325         * lily/main.cc: remove -m, --no-layout
13326
13327         * flower/include/libc-extension.hh: add ALIAS_FILE_TO_FILECOOKIE
13328         to define. We don't want to override fprintf everywhere.
13329
13330 2005-02-26  Jan Nieuwenhuizen  <janneke@gnu.org>
13331
13332         * cygwin/lilypond.hint: 
13333         * cygwin/README.in: Update dependencies.
13334
13335         * stepmake/aclocal.m4 (STEPMAKE_PANGO, STEPMAKE_PANGO_FT2):
13336         Bugfix: do not pollute CPPFLAGS, LIBS.
13337
13338         * cygwin/mknetrel (extras): Cross compile fixes.
13339
13340         * ttftool/util.c: 
13341         * ttftool/ttfps.c: 
13342         * ttftool/ps.c: #include libc-extension.hh
13343
13344         * flower/include/libc-extension.hh:
13345         * flower/libc-extension.cc (fopencookie)[!HAVE_FOPENCOOKIE]: Add
13346         wrapper using funopen.
13347         (fopencookie, handle_cookie_io_fclose, handle_cookie_io_fprintf,
13348         handle_cookie_io_fprintf): Add wrappers catching Memory_out_stream.
13349
13350         * config.hh.in:
13351         * configure.in (AC_CHECK_FUNCS): Add fopencookie, funopen.
13352         (AC_CHECK_HEADERS): Add libio.h
13353
13354         * scripts/convert-ly.py: Uniformize, internationalize.
13355         (2.5.2): Remove fatal encoding rule.
13356         (2.5.13): Handle latin1 encoding gracefully.
13357
13358 2005-02-23  Jan Nieuwenhuizen  <janneke@gnu.org>
13359
13360         * HACKING: Fix line breaks.
13361
13362 2005-02-23  Werner Lemberg  <wl@gnu.org>
13363
13364         * mf/graycx.mf, mf/graylj.mf: Removed.  Any decent TeX distribution
13365         contains those two files.
13366
13367 2005-02-21  Werner Lemberg  <wl@gnu.org>
13368
13369         * mf/feta-nummer-code.mf ("Numeral 5"): Include intersection point
13370         to improve overlap removal process.
13371
13372         * mf/feta-slag.mf (draw_trillelement): Add parameter to control
13373         left and right ending.  This ensures better overlapping.
13374         Update all callers.
13375         ("lineprall"): Don't use draw_gridline to get better overlapping.
13376
13377 2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13378
13379         * scm/lily-library.scm (ps-embed-cff): add \n after EndResource
13380
13381         * Documentation/topdocs/NEWS.tely (Top): oops.
13382
13383 2005-02-21  Pedro Kroger  <kroeger@pedrokroeger.net>
13384
13385         * HACKING: new file.
13386
13387         * input/regression/utf8.ly (portuguese): added a portuguese example
13388         to show latin1 accents.
13389
13390 2005-02-21  Pal Benko  <benkop@freestart.hu>
13391
13392         * lily/mensural-ligature-engraver.cc:
13393         * lily/mensural-ligature.cc:
13394         * lily/include/mensural-ligature.hh: new algorithm implemented
13395
13396         * scm/define-grob-properties.scm: join-left killed (add-join may
13397         be used); join-left-amount changed to join-right-amount
13398
13399 2005-02-21  Graham Percival  <gperlist@shaw.ca>
13400
13401         * Documentation/user/notation.itely: small but urgent fix.
13402
13403 2005-02-21  Jürgen Reuter  <reuter@ipd.uka.de>
13404
13405         * lily/duration-scheme.cc: bugfix: correct parameters to
13406         SCM_ASSERT_TYPE.
13407
13408         * THANKS: added Pal.
13409
13410         * Documentation/user/notation.itely: bugfix: unTeXified
13411         $\\backslash$.  Bugfix: yet another glyph renaming victim:
13412         "timesig.*x/y" -> "timesig.*xy".
13413
13414 2005-02-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13415         
13416         * VERSION (PACKAGE_NAME): release 2.5.12
13417
13418 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13419
13420         * ly/engraver-init.ly: set tieWaitForNote to #t by default
13421
13422         * configure.in (gui_b): bump GUILE requirement to 1.6.5 
13423
13424         * Documentation/topdocs/NEWS.tely: add inputfileref macro.
13425
13426         * scm/framework-ps.scm (supplies-or-needs): uniq font name list.
13427
13428 2005-02-20  Jan Nieuwenhuizen  <janneke@gnu.org>
13429
13430         * input/mutopia/E.Satie/petite-ouverture-a-danser.ly: recode
13431         latin1..utf-8.
13432
13433         * input/regression/stanza-number.ly:
13434         * input/regression/utf8.ly (hebrew): Use addlyrics.  Update.
13435
13436         * lily/tie-engraver.cc (acknowledge_grob): Compile fix.
13437
13438 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13439
13440         * Documentation/topdocs/NEWS.tely (Top): only mention 2.5
13441         NEWS. Refer to website for older news.  
13442
13443         * stepmake/bin/add-html-footer.py (i18n): don't strip .PNG /
13444         .HTML. This should be done for specific servers only.
13445
13446         * Documentation/topdocs/NEWS.tely (Top): move to .tely. Add some
13447         .ly image examples.
13448
13449         * scm/define-grobs.scm (all-grob-descriptions): put ledger lines
13450         in layer 0 too.
13451
13452         * scm/define-context-properties.scm
13453         (all-user-translation-properties): add tieWaitForNote
13454
13455         * scm/define-grobs.scm (all-grob-descriptions): add
13456         Tie_column::before_line_breaking
13457
13458         * lily/tie.cc (get_column_rank): new function
13459
13460         * lily/tie-column.cc (before_line_breaking): new function.
13461         (werner_directions): take into account ties that start on
13462         different columns.  
13463
13464         * lily/score-engraver.cc (set_columns): move add_column() so we
13465         have column rank available.
13466
13467         * lily/tie.cc (get_column_rank): new function.
13468
13469         * input/regression/utf8.ly (japanese): add japanese lyrics.
13470
13471         * lily/pfb.cc (LY_DEFINE): ly:ttf->pfa, new function.
13472
13473         * THANKS: add Steve D
13474
13475         * ttftool/*.c: add TTF -> Type42 conversion library. Based on
13476         Public Domain work by Juliusz Chroboczek <jch@pps.jussieu.fr>
13477
13478 2005-02-20  Tatsuya Ono  <tats_ono@infoseek.jp>
13479
13480         * mf/parmesan-heads.mf: "0harmonic" -> "s0harmonic"
13481         to show harmonic notes
13482         * scm/define-markup-commands.scm: in \markup-by-number
13483         "dots-dot" -> "dots.dot" to show dotted notes
13484
13485 2005-02-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13486
13487         * flower/include/memory-stream.hh (class Memory_out_stream): new file.
13488
13489         * flower/memory-stream.cc (writer): new file.
13490
13491         * configure.in: add endian test.
13492
13493 2005-02-19  Jürgen Reuter  <reuter@ipd.uka.de>
13494
13495         * Documentation/user/examples.itely: small
13496         simplification/beautification
13497
13498         * Documentation/user/notation.ietly: bugfix: fixed many artefacts
13499         from the "x-y-z"->"x.y.z" renaming of glyphs throughout the whole
13500         notation manual.
13501
13502         * lily/mensural-ligature.cc: bugfix: another few victims of the
13503         "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
13504
13505         * ly/gregorian-init.ly: commit some experimental code for hi-level
13506         ligature input language lying around here for several months.
13507
13508         * lily/mensural-ligature-engraver.cc: bugfix: another victim of
13509         the "x-y-z"->"x.y.s-z" symetrical notehead glyph renaming.
13510
13511         * lily/vaticana-ligature-engraver.cc: bugfix: another few
13512         "x-y-z"->"x.y.s-z" fixes.
13513
13514 2005-02-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13515
13516         * scm/framework-pdf.scm (scm): new file
13517
13518         * lily/include/pdf.hh (class Pdf_file): new file.
13519
13520         * lily/pdf.cc (write_trailer): new file.
13521
13522 2005-02-18  Erlend Aasland  <erlenda@gmail.com>
13523
13524         * input/regression/color.ly: new file
13525
13526         * lily/stencil.cc (interpret_stencil_expression):
13527         when a color expression is encountered: save current color,
13528         process the rest of the expression, and restore previous color.
13529
13530         * lily/system.cc (get_line): check all grobs for color property and
13531         prepare the stencil scheme expressions for further processing.
13532         Fix layer-loop.
13533
13534         * scm/define-grob-properties.scm: introduce the color property.
13535
13536         * scm/output-lib.scm: color helper functions.
13537
13538         * scm/output-ps.scm: introduce setcolor/resetcolor.
13539
13540 2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
13541
13542         * ly/*.ly, input/regression/*.ly: Added missing \version
13543         statements in some files.
13544
13545 2005-02-15  Graham Percival  <gperlist@shaw.ca>
13546
13547         * Documentation/user/notation.itely: minor editing.
13548
13549         * Documentation/user/converters.itely: updated convert-ly bugs.
13550
13551         * Documentation/user/lilypond-book.itely: add info about using
13552         feta characters in latex.
13553
13554 2005-02-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13555
13556         * scripts/convert-ly.py: new slur dash patch by Bertalan Fodor.
13557
13558 2005-02-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13559
13560         * scm/define-grob-properties.scm (all-user-grob-properties):
13561         removed 'dashed property.
13562
13563 2005-02-13  Nicolas Sceaux  <nicolas.sceaux@free.fr>
13564
13565         * scm/lily.scm (define-safe-public): new macro for defining
13566         variables that can be used in --safe mode. Use it in *.scm
13567         instead of manually setting safe-objects in safe-lily.scm.
13568
13569 2005-02-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13570         
13571         * lily/slur.cc: Slur-dash patch by Bertalan.
13572
13573         * ly/engraver-init.ly (EasyNotation): glyph name dash -> period.
13574
13575         * stepmake/bin/add-html-footer.py (do_file): do i18n only once. 
13576
13577 2005-02-10  Jan Nieuwenhuizen  <janneke@gnu.org>
13578
13579         * stepmake/aclocal.m4: teTeX-3.0 inimf fix.  Comment-out.
13580
13581 2005-02-09  Jan Nieuwenhuizen  <janneke@gnu.org>
13582
13583         * mf/GNUmakefile: teTeX-3.0 install fix.
13584
13585         * Cygwin patch from Bertalan.
13586
13587         * stepmake/stepmake/metafont-rules.make: Remove bashism.
13588
13589 2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
13590
13591         * GNUmakefile.in: 
13592         * SConstruct (symlink): teTeX-3.0 build fix: add map symlink.
13593
13594         * tex/GNUmakefile: teTeX-3.0 fix: install .enc in fonts/enc.  Add
13595         2.0.x compatibility.
13596
13597 2005-02-08  Werner Lemberg  <wl@gnu.org>
13598
13599         * mf/feta-din-code.mf: Format; clean up code.
13600         Replace `---' with `--' plus explicit path directions.
13601         (linethickness#, stafflinethickness#): Remove.
13602         ("dynamic f"): Replace `draw' with `draw_rounded_block'.
13603         ("dynamic s"): Improve shape.
13604         ("dynamic p"): Improve shape.
13605         Replace `draw' with better outline approximation.
13606         ("dynamic r"): Improve shape.
13607         Don't call `fill' and `draw' at the same time.
13608
13609 2005-02-08  Jan Nieuwenhuizen  <janneke@gnu.org>
13610
13611         * SConstruct (symlink):
13612         * GNUmakefile.in ($(builddir)/share/lilypond-force): teTeX-3.0
13613         build fix: add enc symlink.
13614
13615         * lily/general-scheme.cc: Compile fixes: include wchar.h, string.h.
13616
13617         Support for DESTDIR besides prefix=/foo
13618
13619         * vim/GNUmakefile (local-install): Use $(INSTALL) -d iso mkdir.
13620
13621         * stepmake/stepmake/*.make:
13622         * */GNUmakefile:
13623         * GNUmakefile.in: Prepend $(DESTDIR) to installation directory.
13624
13625         * config.make.in (prefix): Remove broken $(DESTDIR) hack.
13626
13627         * stepmake/aclocal.m4: Use %0.f iso %d to quiet gawk < 3.1.4 and
13628         mawk in fontforge (date) test.
13629
13630 2005-02-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13631
13632         * scm/font.scm (make-century-schoolbook-tree): add NCS as
13633         font-family=roman. Add Luxi Sans as sans
13634
13635 2005-02-07  Graham Percival  <gperlist@shaw.ca>
13636
13637         * Documentation/user/notation.itely: add warning about
13638         percent repeats and Voice contexts.
13639
13640         * Documentation/user/lilypond-book.itely: clarified the
13641         necessity of dvips -u arguments.
13642
13643 2005-02-07  Erik Sandberg  <ersa9195@student.uu.se>
13644
13645         * THANKS: Added a bunch of bug hunters.
13646
13647 2005-02-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13648
13649         * scm/framework-ps.scm (output-preview-framework): bugfix.
13650
13651         * ly/chord-modifiers-init.ly (ignatzekExceptionMusic): use unicode
13652         o/ for chord modifier..
13653
13654         * lily/general-scheme.cc (LY_DEFINE): new function ly:wide-char->utf-8.
13655
13656         * lily/drum-note-performer.cc:  remove unused (thanks Michael
13657         Welsh Duggan). 
13658
13659 2005-02-06  Jan Nieuwenhuizen  <janneke@gnu.org>
13660
13661         * Documentation/user/changing-defaults.itely (Text encoding): Clarify.
13662
13663         * ly/titling-init.ly: Do not also print intstrument in header on
13664         first page.  Do not print page number on first and only page.
13665
13666 2005-02-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13667
13668         * input/regression/*.ly: remove old-relative everywhere
13669
13670         * lily/music-sequence.cc (simultaneous_relative_callback): do
13671         what-if analysis on copy, not on original. Fixes old-relative
13672         compatibility.
13673
13674         * scm/backend-library.scm (postscript->png): space before
13675         --verbose.
13676         
13677 2005-02-05  Werner Lemberg  <wl@gnu.org>
13678
13679         * mf/feta-autometric.mf (fet_beginchar): Check whether `feta_group'
13680         is defined.
13681
13682         * mf/feta-alphabet.mf: Define `staffsize#'.
13683         Include `feta-params.mf'.
13684         s/staffheight/design_size/.
13685
13686         * mf/feta-alphabet??.mf: s/staffheight/design_size/.
13687
13688         * mf/feta-alphabet26.mf: Fix a serious bug (design size off by 8pt).
13689
13690         * mf/feta-nummer-code.mf: Reformatted.
13691         (draw_six): Use outline intersection to avoid a self-intersecting
13692         path.
13693         ("Numeral comma"): Fix serious outline glitches.  This slightly
13694         changes the glyph shape.
13695         ("Numeral dash"): Use `draw_rounded_block'.
13696         ("Numeral dot"): Use `drawdot'.
13697         ("Numeral 1"): Assure identical tangent directions for the
13698         intersection points of paths.  The glyph shape improvement is only
13699         visible at very high magnifications.
13700         ("Numeral 2"): Use `solve' macro to make the lower right part of
13701         the glyph outline touch the x axis exactly.  This changes the
13702         glyph shape.
13703         Minor fixes for better overlap removal support.
13704         ("Numeral 4"): Make lefter corner `rounder'.
13705         ("Numeral 5"): Assure identical tangent directions for the
13706         intersection points of paths.  This improves the glyph shape at
13707         high magnifications.
13708         ("Numeral 7"): Use `solve' macro to make the upper right part of
13709         the glyph outline touch the metrics box exactly.  This changes the
13710         glyph shape.
13711         Avoid corner in the upper left part of the glyph (causing a minor
13712         shape change).
13713
13714         * mf/feta-ital-*.mf: Removed.  Unused.
13715
13716 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13717
13718         * VERSION (PATCH_LEVEL): release 2.5.11
13719
13720         * input/regression/fill-line-test.ly: new file.
13721
13722         * buildscripts/gen-emmentaler-scripts.py (i): insert dash in
13723         emmentaler name, eg. emmentaler-23. 
13724
13725 2005-02-04  Christian Hitz  <chhitz@gmx.net>
13726
13727         * scm/scm/define-markup-commands.scm (fill-line): rework for better
13728         alignment with centered texts
13729
13730         * scm/stencil.scm (stack-stencils-padding-list): new function, takes a
13731         list of paddings
13732
13733 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13734
13735         * mf/GNUmakefile ($(outdir)/lilypond.map): add aybabtu to .map file.
13736
13737         * lily/note-column.cc (translate_rests): call flush_extent_cache()
13738         of parents when translating rests. Fixes: c-chord-rest.ly 
13739
13740         * lily/include/dimension-cache.hh (struct Dimension_cache): add
13741         dimension_callback_ member.
13742
13743         * lily/grob.cc (flush_extent_cache): new function. Force recompute
13744         of extents.
13745
13746 2005-02-04  Jan Nieuwenhuizen  <janneke@gnu.org>
13747
13748         * all but lily/*: The grand 2004/2005 replace.
13749
13750 2005-02-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13751
13752         * lily/*: add space after ,  
13753
13754         * scm/music-functions.scm (has-request-chord): don't use
13755         ly:music-name anywhere. Fixes <<\\>> notation. 
13756
13757         * scm/define-markup-commands.scm (box): use font-size for
13758         padding. Fixes boxed-rehearsal-marks.ly
13759
13760         * lily/parser.yy (assignment_id): allow LYRICS_STRING as
13761         identifier definition too, so foo = \lyrics { ...   } bar = #1
13762         doesn't complain about "bar" being LYRICS_STRING.
13763
13764         * lily/paper-def.cc (find_pango_font): new routine; Store
13765         pango_fonts in hash tab too. This is necessary for retrieving
13766         Pango_fonts::physical_font_tab() later on.
13767  
13768         * lily/pango-font.cc (pango_item_string_stencil): bugfix: don't
13769         crash if psname is null.
13770
13771         * lily/lily-guile.cc (ly_hash2alist): new function
13772
13773         * Documentation/user/changing-defaults.itely (Text encoding):
13774         rewrite. 
13775
13776         * lily/pango-font.cc (physical_font_tab): new member. Store PSname
13777         -> font_filename mapping.
13778
13779         * lily/pango-font-scheme.cc (LY_DEFINE): new file. New function
13780         ly_pango_font_physical_fonts
13781
13782         * scm/framework-ps.scm (supplies-or-needs): extract names from
13783         physical Pango_fonts.
13784
13785         * utf8.ly: new file.
13786
13787 2005-02-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13788
13789         * Documentation/user/changing-defaults.itely (Page layout): add
13790         doco about systemSeparatorMarkup.
13791
13792         * scm/page-layout.scm (default-page-make-stencil): add-to-page
13793         function.
13794         (default-page-make-stencil): insert system separators.
13795
13796         * scm/define-markup-commands.scm (hcenter): add
13797         (beam): add.
13798
13799 2005-02-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13800
13801         * scm/output-ps.scm (ez-ball): reinstate ez notation.
13802
13803 2005-02-01  Jan Nieuwenhuizen  <janneke@gnu.org>
13804
13805         * lily/main.cc: Spell backend consistently.  Sort options.
13806
13807 2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13808
13809         * scripts/lilypond-book.py (Module): revert @include.
13810         
13811 2005-01-31  Jan Nieuwenhuizen  <janneke@gnu.org>
13812
13813         * scripts/lilypond-book.py: Resurrect HTML links to .ly source.
13814         Bugfix: @include .tex (not .texi).  Small cleanups.
13815
13816         * stepmake/bin/add-html-footer.py (i18n): New function.
13817
13818 2005-01-31  Werner Lemberg  <wl@gnu.org>
13819
13820         * mf/feta-nummer.mf: Removed.  Unused.
13821
13822 2005-01-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13823
13824         * lily/ : 2004 -> 2005 s&r
13825
13826         * scm/file-cache.scm (cached-file-contents): add file. Read each
13827         file only once.
13828
13829         * scm/font.scm (add-pango-fonts): change order. Medium weight is
13830         now default.
13831
13832         * VERSION: release 2.5.10
13833         
13834         * mf/GNUmakefile (INSTALLATION_OUT_FILES4): install cff.ps files.
13835
13836         * make/ly-rules.make ($(outdir)/%.texi): detect new EOF marker.
13837
13838         * scm/framework-ps.scm (dump-stencil-as-EPS): robustness: ensure
13839         that both X and Y extents of bbox are non-nil.
13840
13841 2005-01-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13842
13843         * scm/chord-name.scm (alteration->text-accidental-markup): change
13844         - to . 
13845
13846         * scm/output-ps.scm (utf8-string): add utf8-string for completeness.
13847
13848         * scm/framework-ps.scm (dump-stencil-as-EPS): new function
13849
13850         * Documentation/user/invoking.itely (Invoking lilypond): add note
13851         about EPS backend.
13852
13853         * scm/framework-eps.scm: new file: create per-system/per-page EPS
13854         files for inclusion in lilypond-book document.
13855
13856         * input/tutorial/lbook-latex-test.tex: rename from lilbook.tex
13857
13858         * input/tutorial/lbook-texi-test.texi: new file.
13859
13860         * scm/safe-lily.scm (safe-objects): add
13861         {begin,end}-of-line-(in)?visible as safe.
13862  
13863 2005-01-30  Graham Percival  <gperlist@shaw.ca>
13864
13865         * Documentation/user/changing-defaults.itely: fixed example
13866         of (dynamics).
13867
13868 2005-01-29  Graham Percival  <gperlist@shaw.ca>
13869
13870         * lily/main.cc: fix info about -o=FILE.
13871
13872 2005-01-29  Werner Lemberg  <wl@gnu.org>
13873
13874         * mf/feta-toevallig.mf ("Natural"): Completely changed the
13875         construction to assure smooth transition from straight to curved
13876         lines.
13877
13878 2005-01-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13879
13880         * lily/stencil.cc (moved_to_edge): don't halt on adding empty
13881         stencils.
13882
13883         * ps/lilyponddefs.ps: add start-page, start-system doesn't
13884         translate to top of page. Fixes alignment problems of
13885         lilypond-generated EPS files.
13886
13887 2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13888
13889         * scm/part-combiner.scm (analyse-spanner-states): trigger on
13890         crescendo-end as well, since Decrescendo maybe ended with Stop
13891         Crescendo.). Fixes: partcombine-diminuendo.ly
13892
13893         * scm/script.scm (default-script-alist): swap portato symbols.
13894
13895         * lily/instrument-name-engraver.cc (acknowledge_grob): typo.
13896
13897         * lily/paper-outputter-scheme.cc (LY_DEFINE):
13898         ly:outputter-port. New function.
13899
13900         * scm/framework-ps.scm (output-classic-framework): dump a
13901         -systems.texi too
13902         (output-classic-framework): dump multiple systems on an "infinite"
13903         page EPS including fonts. 
13904
13905         * scripts/lilypond-book.py (Lilypond_snippet.ly_is_outdated): use
13906         .eps files for both texi and tex formats. Use PNG coming from
13907         lilypond.
13908         
13909 2005-01-28  Graham Percival  <gperlist@shaw.ca>
13910
13911         * Docuemntation/user/invoking.itely: fix info about -o=FILE.
13912
13913         * scripts/lilypond-latex.py: fix info about -o=FILE.
13914
13915 2005-01-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13916
13917         * ly/generate-embedded-cff.ly: write .cff.ps files.
13918
13919         * mf/GNUmakefile ($(outdir)/lilypond.map): add .cff.ps to .map file.
13920
13921         * stepmake/stepmake/metafont-rules.make ($(outdir)/%.pfb
13922         $(outdir)/%.svg $(outdir)/%.pfa): remove --simplify
13923
13924 2005-01-28  Jan Nieuwenhuizen  <janneke@gnu.org>
13925
13926         * lily/include/guile-compatibility.hh (SCM_VECTOR_P): Compile fix.
13927
13928 2005-01-28  Werner Lemberg  <wl@gnu.org>
13929
13930         * mf/feta-macros.mf (soft_start_penstroke, soft_end_penstroke): New
13931         macros.
13932         (draw_bulb): Improved.
13933
13934         * mf/feta-pendaal.mf ("Pedal asterisk"): Remove workaround for
13935         metapost bug.
13936         (draw_pedal_P): Use soft_end_penstroke.
13937         (draw_pedal_d): Use soft_start_penstroke.
13938
13939         * mf/feta-schrift.mf ("Trill (`tr')"): Remove redundant point in
13940         path.
13941         ("Varied Coda"): Move some points to avoid fontforge warnings.  This
13942         doesn't change the glyph shape.
13943
13944         * mf/feta-accordion.mf ("accOldEE"): Draw glyph differently (without
13945         changing the shape) to avoid fontforge warnings.
13946
13947         * mf/feta-klef.mf (draw_tab_T, draw_tab_A, draw_tab_B): Use
13948         soft_end_penstroke and fix glyph shape.
13949
13950 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13951
13952         * lily/*.cc: Scheme deprecation of SCM_VECTOR_* 
13953
13954 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13955
13956         * scm/define-markup-commands.scm (line): filter out empty stencils
13957         from line command.
13958
13959         * lily/stencil-scheme.cc (LY_DEFINE): only allow finite real
13960         amount.
13961
13962 2005-01-27  Graham Percival  <gperlist@shaw.ca>
13963
13964         * Documentation/user/notation.itely: added info about what
13965         \voiceFoo does.  Also rewrote warning about marks at
13966         a line break.
13967
13968         * Documentation/user/changing-defaults.itely: added info
13969         about putting dynamics in parenthesis and brackets.
13970
13971 2005-01-27  Werner Lemberg  <wl@gnu.org>
13972
13973         * mf/feta-schrift.mf ("Trill (`tr')"): Fix typo.
13974
13975 2005-01-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
13976
13977         * mf/feta-schrift.mf: reverse u and d portato. Fixes:
13978         portato-direction.ly
13979
13980         * lily/beam.cc (consider_auto_knees): add beam height to
13981         threshold. Fixes: knee-multiple-beam.ly
13982
13983         * lily/instrument-name-engraver.cc (acknowledge_grob): also ignore
13984         pedal line spanners. Fixes: instrument-center-pedal.ly
13985
13986         * lily/auto-beam-engraver.cc (acknowledge_grob): stop beam
13987         if encountering barline. Fixes: auto-beam-repeat.ly
13988
13989 2005-01-26  Werner Lemberg  <wl@gnu.org>
13990
13991         * mf/feta-slag.mf (draw_trillelement): Fix shape to get clean
13992         overlapping.
13993
13994         * mf/feta-toevallig.mf (draw_meta_sharp): Fix shape to avoid curves
13995         with inflections for the 1/2 sharp glyph.
13996
13997         * mf/feta-schrift.mf ("Trill (`tr')"): Fix start position of
13998         connection between `t' and `r'.
13999         Unify bulb with the rest of `r' to avoid grazing outlines which
14000         confuses the overlap removal algorithm of fontforge.
14001
14002         * mf/feta-bolletjes.mf (draw_slash): Fix shape to avoid curves with
14003         inflections.
14004         (draw_cross): Fix shape to have uniform thickness in corners.
14005
14006         * mf/feta-pendaal.mf (draw_pedal_P): Break shape into smaller pieces
14007         to avoid an uneven number of self-intersections; this confuses
14008         fontforge.
14009         Fix a slight bug in the shape at left bottom (which is visible only
14010         at high magnifications).
14011         `Center' the stem horizontally to avoid overlapping.
14012
14013 2005-01-24  Werner Lemberg  <wl@gnu.org>
14014
14015         * mf/feta-autometric.mf (fet_beginfont): Set font_coding_scheme
14016         to `asis'.
14017         (fet_begingroup): Save group name in string `feta_group'.
14018         (fet_endgroup): Updated.
14019         (fet_beginchar): Emit `glyph_name' special for mf2pt1.
14020
14021         * mf/feta-bolletjes.mf: s/p/pat/ for paths.
14022
14023         * mf/feta-pendaal.mf ("Pedal asterisk"): Add workaround for bug
14024         in metapost.
14025
14026 2005-01-24  Graham Percival  <gperlist@shaw.ca>
14027
14028         * Documentation/user/notation.itely: really minor editing.
14029
14030 2005-01-22  Graham Percival  <gperlist@shaw.ca>
14031
14032         * Documentation/user/examples.itely: minor editing.
14033
14034         * Documentation/user/changing-defaults.itely: minor editing.
14035
14036         * Documentation/user/notation.itely: clarified info on polyphony
14037         and \addlyrics.
14038
14039 2005-01-22  Jan Nieuwenhuizen  <janneke@gnu.org>
14040
14041         * scm/output-gnome.scm: 
14042         * scm/output-svg.scm:
14043         * scm/lily-library.scm (font-name-style): Update font name
14044         kludging for fontconfig use.
14045
14046 2005-01-20  Erlend Aasland  <erlenda@gmail.com>
14047
14048         * scm/define-markup-commands.scm: Document right-align and
14049         larger markup commands. Remove "TODO" from the topmost comment
14050         "each markup function should have a doc string." More consistent
14051         use of new-lines.
14052
14053 2005-01-22  Graham Percival  <gperlist@shaw.ca>
14054
14055         * Documentation/user/changing-defaults: removed info about
14056         copyright symbol, since it's likely to change soon.
14057         Added info about betweensystemspace.
14058
14059         * Documentation/user/notation.itely: minor fixes.
14060
14061         * Documentation/user/lilypond.tely,
14062         Documentation/user/music-glossary.tely: changed copyright
14063         date to 2005 instead of 2004.
14064
14065         * input/test/volta-chord-names.ly: added old example back.
14066
14067 2005-01-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14068
14069         * mf/feta-beugel.mf: use design size 20 (not 15).
14070
14071         * mf/aybabtu.pe.in: scale brace fonts to design sizes.
14072         change name to aybabtu completely
14073
14074 2005-01-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14075
14076         * buildscripts/gen-emmentaler-scripts.py (outdir): add
14077         design_size to fontname
14078
14079 2005-01-19  Werner Lemberg  <wl@gnu.org>
14080
14081         * mf/feta-accordion.mf, mf/feta-klef.mf, mf/feta-pendaal.mf,
14082         mf/feta-schrift.mf: s/p/pat/ if a path variable.
14083
14084         * mf/feta-autometric.mf (set_char_box): Add code which emits
14085         specials for mf2pt1 if run with metapost.
14086         (to_bp): New macro for mf2pt1.
14087
14088 2005-01-18  Graham Percival  <gperlist@shaw.ca>
14089
14090         * Documentation/user/changing-defaults: added info on
14091         creating a copyright symbol.
14092
14093 2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14094
14095         * VERSION: release 2.5.9
14096         
14097 2005-01-18  Erlend Aasland  <erlenda@gmail.com>
14098
14099         * scm/auto-beam.scm: Simplify score-override-auto-beam-setting
14100
14101         * Documentation/user/notation.itely: Document
14102         score-override-auto-beam-setting Fix documentation for
14103         revert-auto-beam-setting.
14104
14105 2005-01-18  Werner Lemberg  <wl@gnu.org>
14106
14107         * scm/framework-ps.scm (ps-embed-cff): Fix DSC comments.
14108         (procset): New function to define a procset resource.
14109         (ps-embed-pfa): New function to define a font resource.
14110         (setup): New function to define a `Setup' environment.
14111         (preamble): Use new functions.
14112
14113         * ps/lilypond.defs (init-lilypond-parameters): New function to
14114         get rid of directly executed PS code.  Used in scm/framework-ps.scm.
14115
14116 2005-01-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14117
14118         * mf/GNUmakefile (MFTRACE_FLAGS): add --no-afm to MFTRACE_FLAGS
14119
14120 2005-01-17  Erlend Aasland  <erlenda@gmail.com>
14121
14122         * scm/define-markup-commands.scm: Change number->markletter-string
14123         to take two arguments (vector number). Add number->mark-alphabet-vector
14124         and markalphabet markup command.
14125
14126         * scm/translation-functions.scm: Add format-mark-box-alphabet,
14127         format-mark-alphabet, format-mark-box-barnumbers and
14128         format-mark-barnumbers. Fix bug in format-mark-box-numbers.
14129
14130 2005-01-17  Graham Percival  <gperlist@shaw.ca>
14131
14132         * Documentation/user/examples.itely: add SATB automatic piano
14133         reduction template.
14134
14135         * Documentation/user/notation.itely: added info about changing
14136         partcombine texts.  Also adds examples of alternate lyrics.
14137
14138         * Documentation/user/changing-defaults.itely: added warning
14139         about \RemoveEmptyStaffContext overriding previous changes.
14140
14141 2005-01-17  Werner Lemberg  <wl@gnu.org>
14142
14143         * buildscripts/mf-to-table.py: Use `FetaAlphabetEncoding' for
14144         feta-alphabet*.
14145
14146 2005-01-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14147
14148         * python/lilylib.py (make_ps_images): don't do final showpage for
14149         multi-page documents.
14150         
14151         * VERSION (MY_PATCH_LEVEL): release 2.5.8
14152
14153 2005-01-16  Graham Percival  <gperlist@shaw.ca>
14154
14155         * Documentation/user/lilypond.tely: changed order of appendices;
14156         unified index should be last.
14157
14158         * Documentation/user/notation.itely: add example of key signatures
14159         and info about Staff.printKeyCancellation.
14160
14161 2005-01-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14162
14163         * lily/include/repeated-music.hh (class Repeated_music): change
14164         into "namespace" class.
14165
14166         * lily/event.cc: remove Key_change_event.
14167
14168         * lily/include/transposed-music.hh (class Transposed_music): remove.
14169
14170         * lily/transposed-music.cc: remove
14171
14172         * lily/include/relative-music.hh: remove.
14173
14174         * lily/include/music-sequence.hh (struct Music_sequence): change
14175         into "namespace" class.
14176
14177         * lily/untransposable-music.cc (Module): remove
14178
14179         * lily/include/un-relativable-music.hh (Module): remove
14180
14181         * lily/include/untransposable-music.hh (Module): remove
14182
14183         * lily/include/music-list.hh (Module): remove file
14184
14185         * lily/un-relativable-music.cc: remove file.
14186
14187 2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
14188
14189         * lily/parser.yy: Compile fix.
14190
14191 2005-01-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14192
14193         * lily/include/music.hh (class Music): unvirtualize transpose().
14194
14195         * lily/sequential-music.cc: remove file.
14196
14197         * lily/include/lyric-combine-music.hh ("music.hh"): remove file.
14198
14199         * lily/slur-scoring.cc (get_best_curve): only switch on
14200         DEBUG_SLUR_SCORING for non NDEBUG builds.
14201
14202         * lily/include/music.hh (class Music): replace Music::start_mom()
14203         by start-callback property
14204
14205         * lily/include/grace-music.hh: remove file. 
14206
14207         * lily/stem.cc (height): robustness fix.
14208
14209         * lily/time-scaled-music.cc: remove file.
14210
14211         * lily/include/music.hh (class Music): include SCM init argument.
14212         (class Music): replace Music::get_length() virtual by
14213         length-callback property everywhere.
14214
14215         * scripts/convert-ly.py (conv): add  # to \property scalar value.
14216
14217         * mf/GNUmakefile: don't install *list.ly
14218
14219 2005-01-14  Jan Nieuwenhuizen  <janneke@gnu.org>
14220
14221         * mf/GNUmakefile (CFF_FILES): Bugfix: only big cheeses and braces.
14222
14223 2005-01-12  Werner Lemberg  <wl@gnu.org>
14224
14225         This patch addresses the following problems in the feta sources
14226         files which contribute to the fetaXX fonts.
14227
14228         . Many fixes for rasterization at low resolutions (consistent use of
14229           `vround' and `hround', integer shift values for paths, applying
14230           `eps' for mirrored paths, use of `define_whole_pixels' and
14231           friends, etc.) -- while this probably looks like a waste of time
14232           it has revealed deficiencies in some glyph shapes.  See comment at
14233           the end of feta-params.mf how vertical symmetry is achieved.
14234
14235         . The `---' operator has been replaced everywhere with `--'; this
14236           both improves and considerably reduces the font size after
14237           conversion with mf2pt1.
14238
14239         These change aren't explicitly mentioned below since virtually all
14240         glyphs are affected.
14241
14242         Other notable differences:
14243
14244         . Glyphs from feta-accordion.mf now have charboxes around the
14245           outline.
14246
14247         . Fixed incorrect charbox for `accDot'.
14248
14249         . The `rcomma' and `lcomma' glyphs were distorted due to a typo.
14250
14251         . Fixed position of the bow in the `upprall' glyph and its siblings.
14252
14253         . The bulb size in the `2/2 meter' and `4/4 meter' glyphs is now
14254           dependent on the staff line thickness to avoid touching the middle
14255           staff line at smaller sizes.
14256
14257         . Largely extended output for feta-testXX: Where useful, glyphs
14258         are shown both between and on staff lines.
14259
14260
14261         * mf/feta-params.mf (staff_space_rounded,
14262         stafflinethickness_rounded, linethickness_rounded,
14263         ledgerlinethickness_rounded, stemthickness_rounded): New variables.
14264         Update all code which uses them where appropriate.
14265         (feta_eps, feta_shift, feta_space_shift, feta_offset, feta_fillpen):
14266         New variables used to control rasterization at low resolutions.  Set
14267         to zero if feta code is processed with metapost.
14268
14269         * mf/feta-macros.mf (draw_staff, draw_staff_outline): Updated.
14270         (draw_rounded_block, draw_square_block): Updated to use `--' only.
14271         (flare_path): Updated.
14272         Make it work with `filldraw' (but only circular pens).
14273         (hfloor, vfloor, hceiling, vceiling): New macros.
14274
14275         * mf/feta-accordion.mf ("accDiscant", "accFreebase", "accStdbase"):
14276         Use `draw' again in mf mode to have good pixel dropout control.
14277         Fix intersection points of horizontal lines with circle.
14278         ("accDot"): Fix parameters for set_char_box.
14279         ("accOldEE"): Use `draw' again in mf mode to have good pixel dropout
14280         control.
14281
14282         * mf/feta-banier.mf: Updated.
14283
14284         * mf/feta-bolletjes.mf (remember_pic): New variable, used for
14285         testing.
14286         (undraw_inside_ellipse): Remove `center' argument.  Update all
14287         callers.
14288         (draw_brevis): New macro, called by "Brevis notehead".
14289         (draw_whole_triangle_head): New macro, called by "Whole
14290         trianglehead".
14291         (draw_small_triangle_head): Use `filldraw'.
14292
14293         * mf/feta-eindelijk.mf: Remove useless global group.
14294         Updated.
14295
14296         * mf/feta-klef.mf (draw_c_clef): Correct point positions for using
14297         `filldraw'.
14298
14299         * mf/feta-pendaal.mf: Updated.
14300
14301         * mf/feta-puntje.mf: Updated.
14302
14303         * mf/feta-schrift.mf (draw_very_long_fermata): Simplified to use
14304         less points.
14305         ("Flageolet"): Use `draw' again in mf mode to have good pixel
14306         dropout control.
14307         ("Varied Coda"): Use `draw_block'.
14308         (draw_comma): Fix typo.
14309         (draw_arpeggio_arrow): Use `draw' also in mf mode to have good
14310         pixel dropout control.
14311
14312         * mf/feta-slag.mf ("upprall", "downprall", "lineprall"): Fix start
14313         position of bow.
14314
14315         * mf/feta-timesig.mf (draw_C): Reduce bulb size for smaller design
14316         sizes.
14317
14318         * mf/feta-toevallig.mf (remember_pic): New variable, used for
14319         testing.
14320         (draw_meta_sharp): Much simplified.
14321         ("Sharp", "1/2 Sharp", "3/4 Sharp"): Don't rotate but shift.
14322
14323         * mf/feta-test-generic.mf: Include all files as in feta-generic.mf.
14324
14325 2005-01-13  Mats Bengtsson  <mabe@s3.kth.se>
14326
14327         * Documentation/user/notation.itely (Ancient rests): Fix typo
14328         (thanks Anthony)
14329
14330 2005-01-13  Jan Nieuwenhuizen  <janneke@gnu.org>
14331
14332         * scm/auto-beam.scm (score-override-auto-beam-setting): New function.
14333
14334         * lily/main.cc (setup_paths): Add cff.
14335
14336         * mf/GNUmakefile (foe): Include actual target %.cff.
14337         (INSTALLATION_OUT_SUFFIXES): Install CFF and SVG fonts too.
14338
14339 2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14340
14341         * lily/include/lily-lexer.hh (class Lily_lexer): lose hungarian _b
14342         suffix for main_input_b_.
14343
14344         * scm/music-functions.scm (toplevel-music-functions):
14345         precompute music lengths for music expressions.  
14346
14347 2005-01-11  Nicolas Sceaux  <nicolas.sceaux@free.fr>
14348
14349         * lily/include/input.hh (class Input): new `end_' slot for end of
14350         input. Renamed defined_str0_ to start_.
14351
14352         * lily/input.cc (Input): Add Input::Input (Input const &) and
14353         remove Input::Input (Source_file*, char const *). Use the new
14354         slots.
14355         (set_location): method used by bison to propagate input
14356         locations (YYLLOC_DEFAULT).
14357         (end_line_number, end_column_number, step_forward): new methods
14358         
14359         * lily/input-scheme.cc (ly:input-both-locations): new function,
14360         similar to ly:input-location, but also return the end line and
14361         column.
14362
14363         * lily/include/includable-lexer.hh: 
14364         * lily/includable-lexer.cc: 
14365         * lily/include/lily-lexer.hh (class Lily_lexer): 
14366         * lily/lily-lexer.cc (add_lexed_char): Move add_lexed_char from
14367         Includable_lexer to Lily_lexer, in order to update lexloc (the
14368         yylloc), a new slot of Lily_lexer.
14369         (here_input, LexerError): simplify by using the lexloc slot (aka
14370         yylloc)
14371
14372         * lily/lexer.ll: #define yylloc to use input locations (it may
14373         be useless here?). Fixed the #embedded_scm rule (step the location
14374         forward in order to skip the sharp sign before parsing the scheme
14375         expression)
14376
14377         * lily/include/lily-parser.hh (class Lily_parser): 
14378         * lily/lily-parser.cc: Remove push_spot(), pop_spot() and
14379         here_input()
14380         (parser_error): overload for more precise locations of errors.
14381
14382         * lily/parser.yy (YYLTYPE): set location type to Input
14383         (YYLLOC_DEFAULT): use Input::set_location()
14384         (yylex): add the YYLTYPE* location parameter.
14385         Clean push_spot()/pop_spot()/here_input(), and use @$, @1, etc.
14386         Give an Input parameter to THIS->parser-error() for more accurate
14387         messages.
14388
14389 2005-01-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14390
14391         * stepmake/aclocal.m4: do NDEBUG for optimizing builds.
14392
14393         * lily/include/beam.hh (DEBUG_QUANTING): performance: only switch
14394         on BEAMQUANTING for non-NDEBUG builds.
14395
14396         * lily/stem.cc (head_count): performance: avoid String::String()
14397         inside oft called function.
14398
14399 2005-01-09  Graham Percival  <gperlist@shaw.ca>
14400
14401         * Documentation/user/examles.itely: attempted fix for broken
14402         string quartet template.
14403
14404         * Documentation/user/notation.itely: remove unnecessary broken
14405         link.
14406
14407 2005-01-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14408
14409         * VERSION (PACKAGE_NAME): release 2.5.7
14410
14411 2005-01-09  Jan Nieuwenhuizen  <janneke@gnu.org>
14412
14413         * config.make.in (METAFONT): Append -progname=mf, fixes use with
14414         mf-nowin for teTeX-3.0.  Backportme.
14415
14416         * scm/output-svg.scm (utf8-string): New function.
14417
14418         * scm/output-gnome.scm (utf8-string): New function.
14419         (otf-name-mangling): Remove.
14420
14421         * lily/pango-font.cc (Pango_font): Use font string iso font
14422         filename for utf8-text.
14423
14424         * buildscripts/gen-emmentaler-scripts.py: Remove designsize from
14425         name.
14426
14427 2005-01-08  Graham Percival  <gperlist@shaw.ca>
14428
14429         * Documentation/user/notation.itely: add info about
14430         Staff.extraNatural = ##f in Pitches section.  Also
14431         fixed some minor issues in the Vocal music section.
14432
14433 2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14434
14435         * scm/output-ps.scm (white-text): comment out Helvetica font,
14436         which is broken for my GS install.
14437
14438         * lily/pango-font.cc (pango_item_string_stencil): use ink_rect,
14439         which provides a tighter bbox.
14440
14441         * scm/define-grobs.scm (all-grob-descriptions): remove all
14442         extra-offsets from definitions.
14443
14444 2005-01-08  Erlend Aasland  <erlenda@gmail.com>
14445
14446         * scm/output-lib.scm: Rename guitar-tunings to guitar-tuning and
14447         add tuning for 4-string bass and some common 4/5-string banjo
14448         tunings.  New function (four-string-banjo) turns a 5-string tuning
14449         into a 4-string tuning.  New function
14450         (fret-number-tablature-format-banjo) computes correct fret numbers
14451         on 5-string banjos.
14452
14453         * ly/engraver-init.ly: Default stringTunings = #guitar-tuning
14454         Add beam correction to TabVoice.
14455
14456         * scm/define-grobs.scm: Adjust notehead offset. Print fret numbers
14457         using bold font; makes tabs more readable.
14458
14459 2005-01-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14460
14461         * lily/font-select.cc (get_font_by_design_size): don't make
14462         Modified_font_metric; this causes trouble, since we don't know the
14463         font magnification from inside Pango_font::text_stencil()
14464
14465         * lily/all-font-metrics.cc (find_pango_font): take magnification argument.
14466
14467         * Documentation/user/notation.itely (The Lyrics context): comment out
14468         broken {Small ensembles} link.
14469
14470         * scm/framework-svg.scm (output-framework): change calling convention.
14471
14472         * lily/object-key-dumper-scheme.cc: new file.
14473
14474         * lily/object-key-undumper-scheme.cc: new file.
14475
14476         * lily/tweak-registration-scheme.cc: new file.
14477
14478         * lily/pango-select.cc (symbol_to_pango_variant): init local variable.
14479
14480         * Documentation/user/examples.itely (String quartet): uncomment
14481         broken example.
14482
14483         * lily/font-config.cc: new file.
14484
14485 2005-01-08  Jan Nieuwenhuizen  <janneke@gnu.org>
14486
14487         * scm/output-svg.scm: 
14488         * scm/output-gnome.scm: s/bigcheese/emmentaler.
14489
14490         * lily/score-engraver.cc (MUSIC_FONT): Use emmentaler20.
14491
14492 2005-01-07  Jan Nieuwenhuizen  <janneke@gnu.org>
14493
14494         * lily/general-scheme.cc (LY_DEFINE): Use snprintf (WAS: sprintf).
14495         Add headers.
14496
14497         * lily/GNUmakefile (general-scheme.o): Add version.hh dependency.
14498
14499 2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14500
14501         * mf/GNUmakefile (debian-mirror): rename bigcheese to emmentaler.
14502
14503         * lily/include/main.hh: lose _b hungarian suffixes for global
14504         variables.
14505
14506         * lily/include/lily-guile-macros.hh: new file.
14507
14508         * lily/pango-select-scheme.cc (LY_DEFINE): new file.
14509
14510         * lily/general-scheme.cc: new file. 
14511
14512         * lily/font-select.cc (get_font_by_design_size): retrieve
14513         PangoFont for (designsize . "pango-descr") entries.
14514
14515         * lily/lily-parser-scheme.cc: new file.
14516
14517         * lily/output-def-scheme.cc: new file.
14518
14519         * lily/paper-book-scheme.cc: new file.
14520
14521         * lily/duration-scheme.cc (LY_DEFINE): new file.
14522
14523         * lily/pitch-scheme.cc:  new file.
14524
14525         * scm/font.scm (add-cmr-fonts): use real dimens in font selection.
14526
14527 2005-01-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14528
14529         * lily/dimensions.cc (LY_DEFINE): add ly:{inch,cm,mm,bp,pt}.
14530
14531 2005-01-06  Graham Percival  <gperlist@shaw.ca>
14532
14533         * Documentation/user/notation.itely: minor editing.
14534
14535         * Documentation/user/changing-defaults: minor editing.
14536
14537         * Documentation/user/examples.itely: add template for
14538         string quartet part extraction; demonstrates tag.
14539
14540 2005-01-06  Erlend Aasland  <erlenda@gmail.com>
14541
14542         * Documentation/user/notation.itely: documents
14543         format-mark-box-letters and format-mark-box-numbers
14544
14545         * scm/define-context-properties.scm: change comment.
14546
14547 2005-01-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14548
14549         * scm/framework-ps.scm (output-classic-framework): new function:
14550         dump systems as separate .eps files (without fonts) and write a
14551         single collecting .tex file.
14552
14553 2005-01-05  Mats Bengtsson  <mabe@s3.kth.se>
14554
14555         * Documentation/user/notation.itely (Setting simple songs):
14556         Correct several errors in the equivalent formulation of
14557         \addlyrics. 
14558         (The Lyrics context): Corrected link to the SATB example.
14559
14560 2005-01-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14561
14562         * scm/lily.scm (completize-formats): new function
14563         (postprocess-output): new function
14564
14565         * lily/paper-book.cc (classic_output): change calling
14566         convention. Give basename as first argument. 
14567         remove Paper_book::post_processing().
14568
14569         * lily/lily-guile.cc (LY_DEFINE): ly:output-backend, new function.
14570
14571 2005-01-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14572
14573         * lily/paper-outputter.cc (LY_DEFINE): new function
14574         ly:outputter-close.
14575
14576         * lily/main.cc: change --format,-f to --backend,-b
14577
14578         * lily/include/main.hh: rename format to backend.
14579
14580         * scm/translation-functions.scm (format-mark-box-numbers): add.
14581         patch by Erlend Aasland
14582
14583 2005-01-03  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14584
14585         * lily/pango-font.cc (text_stencil): dump string as
14586         (utf-8-string FONTDESC UTF8) for use in -f gnome, -f svg.
14587
14588 2005-01-03  Jan Nieuwenhuizen  <janneke@gnu.org>
14589
14590         * configure.in (gui_b): Remove handy developer-only
14591         PKG_CONFIG_PATH settings that cater for Jan-and-Han-Wen ~/usr/pkg/
14592         CVS source installations (but break other non-default but correct
14593         PKG_CONFIG_PATH setups), as this is no longer developer-only.
14594
14595         * SConstruct: 
14596         * ps/GNUmakefile (INSTALLATION_FILES): teTeX-3.0
14597         compatibility (backportme).
14598
14599         * GNUmakefile.in: teTeX-3.0 compatibility (backportme).
14600
14601 2005-01-03  Werner Lemberg  <wl@gnu.org>
14602
14603         Prepare glyph shapes for mf2pt1 conversion.
14604
14605         * mf/feta-accordion.mf (accreg_pen): Removed.  No longer used.
14606         (accDiscant, accFreebase, accStdbase): Replace `draw' with
14607         `penstroke'.
14608         (accDot): Use `drawdot'.
14609         (accBayanbase): Replace `draw' with `draw_gridline'.
14610         (print_penpos): Moved to feta-macros.mf.
14611         (accOldEE): Replace `filldraw' with `penstroke'.
14612         Replace `draw' with `penstroke' and `drawdot'.
14613
14614         * mf/feta-banier.mf: Code clean-up.
14615         ("grace dash (up)", "grace dash (down)"): Replace `draw' with
14616         `fill'.
14617
14618         * mf/feta-bolletjes (draw_cross): Remove call to `labels'.
14619
14620         * mf/feta-eindelijk.mf (draw_rest_bulb, draw_eigth_rest): Add
14621         paremeter to control drawing of labels.  Update all callers.
14622
14623         * mf/feta-klef.mf (draw_c_clef): Use `&' not `..' to connect paths.
14624         (new_bulb): Return a bulb as a single path.  To do that, it now
14625         takes some more parameters.  Updated all callers.
14626         (draw_gclef): Major clean-up.  `draw' has been replaced with
14627         `penstroke', unnecessary outlines have been removed.
14628         Remove (unused) gnome-canvas code.
14629
14630         * mf/feta-macros.mf (print_penpos): New macro (from
14631         feta-accordion.mf).
14632         Other minor fixes.
14633
14634         * mf/feta-pendaal.mf ("Pedal asterisk"): Use `undrawdot'.
14635         ("Pedal dot"): Use `drawdot'.
14636         (draw_pedal_P): Add parameter to control drawing of labels.  Update
14637         all callers.
14638         Fix shape at top.
14639         (draw_pedal_e): Add parameter to control drawing of labels.  Update
14640         all callers.
14641         (draw_pedal_d): Add parameter to control drawing of labels.  Update
14642         all callers.
14643         Revert drawing direction.
14644
14645         * mf/feta-schrift.mf (draw_fermata): Use single path.
14646         (draw_short_fermata): Replace `filldraw' with `fill'.
14647         (draw_long_fermata, draw_very_long_fermata): Replace calls to
14648         `draw_rounded_block' with a single path.
14649         ("Thumb"): Draw full circle instead of mirroring segments.
14650         (draw_accent): New macro.
14651         ("> accent", "espr"): Use it.
14652         (draw_marcato): Replace `filldraw' and `draw' with `fill'.
14653         ("open (unstopped)"): Draw full circle instead of mirroring
14654         segments.
14655         (draw_vee): Removed.
14656         ("Upbow"): Use `draw_accent' instead of `draw_vee'.
14657         ("Downbow"): Replace calls to `draw_rounded_block' with a single
14658         path.
14659         ("Trill (`tr')"): Replace overlapping loop drawn with `draw' with
14660         partial pieces drawn with `fill' -- these do still overlap with the
14661         stem of the `t' but just once, not multiple times so that fontforge
14662         can handle it gracefully.
14663         Change other parts of the glyph so that fontforge's overlapping
14664         algorithm reliably works.
14665         (draw_heel): Replace `draw' with `fill'.
14666         (draw_toe): Use `draw_accent' instead of `draw_vee'.
14667         ("Flageolet"): Replace `draw' with `penstroke'.
14668         ("Segno"): Replace `filldraw' with `penstroke'.
14669         Replace `draw' with `drawdot'.
14670         ("Coda"): Replace `fill' with `penstroke', using a single path.
14671         ("Varied Coda"): Use less overlapping paths.
14672         (draw_arpeggio_arrow): Replace `filldraw' with `fill', using a
14673         single path.
14674
14675         * mf/feta-slag.mf (draw_trillelement): Put `clearxy' outside of
14676         group to better control the `labels' command.
14677         Rename argument to `offset' and use it actually.  Update all
14678         callers.
14679         Replace `filldraw' with `fill'.
14680         ("mordent", "prallmordent", "upmordent", "downmordent",
14681         "lineprall"): Replace `draw' with `draw_gridline'.
14682         ("upprall", "downprall"): Replace `draw' with `fill'.
14683
14684         * mf/feta-timesig.mf: Formatting.
14685
14686         * mf feta-toevallig.mf (draw_meta_flag): Move code to draw labels
14687         to...
14688         ("Flat"): Here.
14689         (draw_paren): Move code to draw labels to...
14690         ("Right Parenthesis"): Here.
14691
14692 2005-01-02  Graham Percival <gperlist@shaw.ca>
14693
14694         * Documentation/user/notation.itely: add example of \setTextDecresc
14695         and \setTextDim.
14696
14697 2005-01-02  Tatsuya Ono <tats_ono@infoseek.jp>
14698
14699         * scm/define-markup-commands.scm :  fix glyph-strings of
14700         accidentals and \note-by-number
14701
14702 2005-01-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14703
14704         * VERSION: 2.5.6 released.
14705         
14706         * ps/lilyponddefs.ps: put mm -> pt scaling in here.
14707
14708         * input/regression/new-markup-scheme.ly: oops. font-family=music
14709         -> font-encoding fetaMusic.  
14710
14711         * lily/main.cc: put default to PS.
14712
14713         * lily/tfm.cc: idem.
14714
14715         * lily/afm.cc: idem.
14716
14717         * lily/include/modified-font-metric.hh (struct
14718         Modified_font_metric): remove coding_scheme() method.
14719
14720         * input/mutopia/F.Schubert/morgenlied.ly: convert to utf8
14721
14722         * scripts/convert-ly.py (conv): crash on encountering \encoding.
14723
14724         * input/les-nereides.ly: convert to utf8
14725
14726         * lily/modified-font-metric.cc (text_dimension): idem.
14727
14728         * lily/parser.yy (TODO): idem.
14729
14730         * lily/include/lily-lexer.hh (class Lily_lexer): idem.
14731
14732         * lily/lexer.ll: remove encoding
14733
14734         * scm/framework-ps.scm (output-variables): separately scale the
14735         page to mm 
14736
14737         * lily/pango-font.cc (Pango_font): fix scaling.
14738
14739         * lily/font-metric.cc (design_size): design_size returns a
14740         dimension now as well.
14741
14742 2004-12-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14743
14744         * mf/GNUmakefile ($(outdir)/%.otf-table): use findstring. Fixes
14745         brace generation. 
14746
14747         * lily/text-metrics.cc (LY_DEFINE): use scm_c_make_hash_table().
14748
14749 2004-12-30  Jan Nieuwenhuizen  <janneke@gnu.org>
14750
14751         * mf/GNUmakefile (INSTALLATION_OUT_SUFFIXES): Do not try to
14752         install unbuildable Fontmap and Fontmap.lily (Simon Aridis-Lang).
14753
14754 2004-12-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14755
14756         * mf/GNUmakefile ($(outdir)/%.otf-table): include parmesan20.lisp
14757         in first run as well.
14758
14759         * scm/paper.scm (layout-set-staff-size): use text-font-size in
14760         dimension less points (ie. 12 = 12 point)
14761
14762         * lily/pango-select.cc (select_pango_font): use find_scaled_font().
14763
14764         * lily/all-font-metrics.cc (find_pango_font): set description_
14765
14766         * lily/pango-font.cc (text_stencil): export size as well.
14767         (text_stencil): fix scaling and extents box.
14768
14769 2004-12-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14770
14771         * Documentation/topdocs/NEWS.texi (Top): add -f texstr
14772
14773         * Documentation/user/invoking.itely (Invoking lilypond): document
14774         texstr
14775
14776         * scripts/convert-ly.py (conv): add ancient rules.
14777
14778         * scm/clef.scm (c0-pitch-alist): replace - with .
14779
14780         * scripts/lilypond-book.py (process_snippets): add texstr support.
14781
14782         * scm/framework-texstr.scm (header): change extension to .textmetrics
14783
14784         * lily/lily-parser.cc (parse_file): do try_load_text_metrics for
14785         -f tex.
14786
14787         * lily/text-metrics.cc: new file.
14788         (try_load_text_metrics): new function
14789
14790         * lily/include/text-metrics.hh: new file.
14791
14792 2004-12-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14793
14794         * lily/include/lily-guile.hh (ly_lily_module_constant): rename
14795         ly_scheme_function to ly_lily_module_constant.
14796
14797         * lily/modified-font-metric.cc (text_dimension): try
14798         lookup_tex_text_dimension() first.
14799
14800         * lily/tfm.cc: new function ly:load-text-dimensions
14801
14802 2004-12-27  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14803
14804         * scm/output-texstr.scm (text): use \lilygetmetrics
14805
14806         * scm/framework-texstr.scm (header): dump in new format.
14807
14808         * tex/lilypond-tex-metrics: new file.
14809         
14810 2004-12-27  Jan Nieuwenhuizen  <janneke@gnu.org>
14811
14812         * lily/pango-font.cc (text_stencil): Quick try at glyph->charcode
14813         mapping.
14814         (index_to_charcode): New method.
14815
14816         * scm/output-ps.scm (glyph-string): 
14817         * scm/output-gnome.scm (glyph-string): Add FONT parameter.
14818
14819 2004-12-26  Jan Nieuwenhuizen  <janneke@gnu.org>
14820
14821         * scm/output-gnome.scm (FIXME-glyph-string): New function.  Cannot
14822         implement fully, need FONT to get to charcode.
14823
14824         * scm/lily.scm (ly:all-stencil-expressions): Add glyph-string.
14825
14826         * scm: Cleanups.
14827
14828         * Documentation/user/changing-defaults.itely: Fix internalsrefs
14829         {Tunable context properties},
14830         {All layout objects},
14831         {Music definitions}.
14832
14833 2004-12-25  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14834
14835         * VERSION: release 2.5.5
14836         
14837         * lily/main.cc: use TeX as default output format.
14838
14839         * flower/file-path.cc (find): try to open directly as well, so we
14840         find absolute path files. 
14841
14842         * lily/pango-select.cc: new file.
14843
14844         * scm/framework-ps.scm: remove all encoding code. 
14845         load pfb/pfa for PangoFont too.
14846         
14847         * lily/lily-guile.cc (ly_chain_assoc_get): new function.
14848
14849 2004-12-22  Werner Lemberg  <wl@gnu.org>
14850
14851         Prepare glyph shapes for mf2pt1 conversion.
14852
14853         * mf/feta-toevallig.mf ("Double Sharp"): Minor path fix.
14854
14855         * mf/feta-bolletjes.mf (penposx): New auxiliary macro.
14856         (define_triangle_shape): Use it to replace `draw' with `fill' and
14857         `unfill'.  Update all callers.
14858         (draw_slash): Replace `filldraw' with `fill'.  Update all callers.
14859         (draw_cross): Ditto.
14860         ("X-Circled notehead"): Replace `draw' with `fill' and `unfill'.
14861         Use penrazor for better conversion with mf2pt1.
14862         (generic_draw_solfa_note_shape, draw_solfa_note_shape,
14863         draw_solfa_quarter_note_shape, triangle): Removed.  Unused.
14864         (draw_do_head, draw_re_head, draw_mi_head, draw_fa_head,
14865         draw_la_head, draw_ti_head): Replace `filldraw' with
14866         `fill'.  Update all callers.
14867
14868 2004-12-24  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14869
14870         * lily/paper-book.cc (output): revert: only allow a single output
14871         format.
14872
14873         * lily/include/pango-font.hh: new file.
14874
14875         * lily/pango-font.cc: new file.
14876
14877         * lily/font-metric.cc (text_stencil): new routine
14878
14879         * lily/all-font-metrics.cc (find_pango_font): new routine.
14880
14881         * lily/include/font-metric.hh (struct Font_metric): add
14882         text_stencil()
14883
14884         * configure.in (PKG_CONFIG_PATH): require PANGO_FT2
14885
14886 2004-12-22  Werner Lemberg  <wl@gnu.org>
14887
14888         Prepare glyph shapes for mf2pt1 conversion.
14889
14890         * mf/feta-macros.mf, mf_feta-eindelijk.mf: Some formatting.
14891
14892         * mf/feta-toevallig.mf: Formatting.
14893         (draw_meta_sharp): Modify path to replace `filldraw' with `fill'.
14894         ("Natural"): Fix paths to allow better postprocessing.
14895         (draw_meta_flat): Use `z3l' as additional point in path to get
14896         better conversion with mf2pt1.
14897         Other minor cleanups.
14898         ("3/4 Flat"): Add auxiliary points and modify path to replace
14899         `draw' with `fill'.
14900         ("Double Sharp"): Mirror path segments instead of picture elements
14901         to get a single outline.
14902         Modify path to replace `filldraw' with `fill'.
14903
14904 2004-12-22  Graham Percival  <gperlist@shaw.ca>
14905
14906         * input/test/unfold-all-repeats.ly: added file back.
14907
14908         * Documentation/user/notation.itely,
14909         Documentation/user/programming-interface.itely
14910         Documentation/user/changing-defaults.itely: fixed misc broken
14911         links to input/test/ files.
14912
14913 2004-12-22  Jan Nieuwenhuizen  <janneke@gnu.org>
14914
14915         * tex/texinfo.tex: Update.  We should not be distributing this,
14916         but since we do, use latest version.
14917
14918         * Documentation/user/macros.itexi: Comment-out \fetaflat,
14919         \fetasharp.  Fixes make web.  FIXME: make usable (compatible?) TeX
14920         macros for feta glyphs.
14921
14922 2004-12-22  Graham Percival  <gperlist@shaw.ca>
14923
14924         * Documentation/user/changing-defaults.itely: fix index for set.
14925
14926         * Documentation/user/converters.itely: added convert-ly bugs list
14927         from CVS.
14928
14929 2004-12-21  Jan Nieuwenhuizen  <janneke@gnu.org>
14930
14931         * python/lilylib.py (setup_environment): Set GS_FONTPATH, GS_LIB
14932         to empty.  Fixes make web, using gs-gpl-8.01.  In fact,
14933         gs-afpl-8.50 has more trouble with make web (ie, uses *a lot* more
14934         resourses; 3x MAXSIZE, 4x MAXRSS, 1.5x user).
14935
14936         * mf/GNUmakefile (pfa_warning): Use less broken check.
14937
14938         * python/lilylib.py (setup_environment): Remove cruft from
14939         GS_FONTPATH.
14940
14941         * configure.in: Bump mftrace requirement to 1.1.1.
14942
14943 2004-12-20  Jan Nieuwenhuizen  <janneke@gnu.org>
14944
14945         * scm/output-svg.scm (beam): Use polygon.
14946
14947         * scm/lily-library.scm: Bugfix.
14948
14949         * Documentation/user/invoking.itely (Invoking lilypond): Bugfix.
14950
14951         * mf/GNUmakefile (ALL_GEN_FILES): Remove unbuildable Fontmap.lily.
14952
14953 2004-12-19  Werner Lemberg  <wl@gnu.org>
14954
14955         Prepare glyph shapes for mf2pt1 conversion.
14956
14957         * mf/feta-eindelijk: Some formatting.
14958         (multi_rest_x, multi_beam_height): Removed.  Unused.
14959         ("Quarter rest"): Use `intersectiontimes' to create a single
14960         outline.
14961         (rest_crook): Removed.  Unused.
14962         (draw_rest_bulb): Return path (without filling).  Update callers.
14963         Simplified.
14964         (draw_eighth_rest, "16th rest", "32th rest", "64th rest",
14965         "128th rest"): Simplify `pat'.
14966         Create single outline.
14967
14968 2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
14969
14970         * mf/GNUmakefile (ALL_GEN_FILES):
14971         (INSTALLATION_OUT_SUFFIXES): Remove unbuildable fonts.scale.
14972
14973         * scm/output-svg.scm (polygon, draw-line, dashed-line): New
14974         function.
14975
14976 2004-12-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
14977
14978         * scm/output-texstr.scm (placebox): add routine
14979
14980         * VERSION (PACKAGE_NAME): release 2.5.4
14981
14982         * scm/framework-texstr.scm (output-framework): new file.  
14983
14984         * scm/output-texstr.scm: new file. Collect (TEXT . ) calls for TeX
14985         processing.
14986
14987         * Documentation/user/invoking.itely (Invoking lilypond): add SVG
14988
14989         * stepmake/stepmake/metafont-rules.make: make single SVG/PFA/PFB
14990         rule.
14991
14992         * configure.in (gui_b): bump mftrace requirement to 1.1.0
14993
14994         * mf/feta-bolletjes.mf (triangle): add s to 0triangle.
14995
14996         * mf/GNUmakefile (ALL_GEN_FILES): make SVG files too.
14997
14998 2004-12-19  Jan Nieuwenhuizen  <janneke@gnu.org>
14999
15000         * scm/framework-svg.scm (dump-page): Implement landscape.
15001
15002 2004-12-18  Jan Nieuwenhuizen  <janneke@gnu.org>
15003
15004         * lily/main.cc (setup_paths): Add svg to search path.
15005
15006         * scm/output-svg.scm:
15007         * scm/framework-svg.scm: Add pageSet.  Update.
15008         (dump-fonts): New function.
15009         (output-framework): Use it.
15010
15011         * mf/GNUmakefile: 
15012         * buildscripts/gen-bigcheese-scripts.py: Also generate SVG font.
15013
15014 2004-12-18  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15015
15016         * tex/lilyponddefs.tex: comment out new ifpdf code.
15017
15018 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
15019
15020         * GNUmakefile.in: 
15021         * SConstruct (symlink): Replace afm by otf.
15022
15023         * scm/framework-gnome.scm (gnome-main): Remove invocation of
15024         ly:pango-add-afm-decoder.
15025
15026         * lily/lily-guile.cc ("ly:pango-add-afm-decoder"): Build fix: Remove.
15027
15028 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15029
15030         * scm/output-ps.scm (new-text): don't access t glyph for getting
15031         space dimension.
15032
15033         * ly/init.ly: warn about \version
15034
15035         * lily/lexer.ll: set version-seen?
15036
15037 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
15038
15039         * scm/output-svg.scm (string->entities): Update.
15040
15041 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15042
15043         * lily/main.cc (setup_paths): replace afm by otf for path. 
15044
15045         * lily/pangofc-afm-decoder.cc: remove.
15046
15047         * lily/include/pangofc-afm-decoder.hh: remove.
15048
15049         * scm/framework-scm.scm (output-framework): new file.
15050
15051         * mf/GNUmakefile: remove SAUTER_FONTS.
15052         remove SVG/sodipodi hacks.
15053
15054         * scm/lily-library.scm (stderr): move stderr.
15055
15056         * mf/GNUmakefile: remove AFM support.
15057
15058         * buildscripts/mf-to-table.py (base): remove AFM support.
15059
15060         * lily/open-type-font.cc (design_size): use design_size
15061
15062 2004-12-17  Pedro Kroger  <kroeger@pedrokroeger.net>
15063
15064         * lily/font-metric.cc (LY_DEFINE): Fix the docstring.
15065
15066 2004-12-17  Jan Nieuwenhuizen  <janneke@gnu.org>
15067
15068         * mf/GNUmakefile: Generate combined aybabtu info.
15069         * mf/aybabtu.pe.in (i): Load it.
15070
15071         * scm/framework-tex.scm (otf-font-load-command): Bugfix: subfonts
15072         are not symbols.
15073
15074         * lily/include/open-type-font.hh (count): New method.
15075
15076         * mf/aybabtu.pe.in: Typo.
15077
15078         * Documentation/user/out/lilypond-internals.nexi (Scheme
15079         functions): Typo.
15080
15081         * lily/include/guile-compatibility.hh (SCM_HASHTABLE_P): Add compat.
15082
15083 2004-12-17  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15084
15085         * buildscripts/gen-bigcheese-scripts.py (i): use symbols for
15086         subfonts.
15087
15088         * scm/output-tex.scm (named-glyph): new function. This fixes TeX output.
15089
15090         * scm/framework-tex.scm (otf-font-load-command): load subfonts.
15091         (tex-font-command-raw): new function.
15092
15093         * lily/include/virtual-font-metric.hh (Module): remove file
15094
15095         * lily/virtual-font-metric.cc (Module): remove file.
15096         
15097
15098         * lily/open-type-font.cc (LY_DEFINE): ly:otf-font-glyph-info
15099         (get_indexed_char): read bbox from lily table if present.
15100
15101 2004-12-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15102
15103         * mf/GNUmakefile ($(outdir)/aybabtu.subfonts): rule for
15104         aybabtu.subfonts
15105
15106         * mf/feta-beugel.mf (y): don't number consecutively, instead, use
15107         global glyphname. Enables more than 64 glyphs in the OTF.
15108
15109 2004-12-16  Jan Nieuwenhuizen  <janneke@gnu.org>
15110
15111         * scm/font.scm (add-music-fonts): Load aybabtu iso all separate
15112         braces.
15113
15114         * lily/open-type-font.cc (design_size): Use 12 as default for
15115         design size.
15116
15117         * mf/aybabtu.pe.in: New file.  Merge all our braces.
15118
15119         * mf/GNUmakefile: Generate aybabtu.
15120
15121         * tex/lilyponddefs.tex: teTeX 3.0 pdfetex fix.
15122
15123 2004-12-14  Jan Nieuwenhuizen  <janneke@gnu.org>
15124
15125         * scm/lily-library.scm (char->unicode-index): Remove.
15126
15127         * scm/output-gnome.scm (text): Bugfix for plain string input.
15128         Updates.
15129
15130         * scm/output-svg.scm (svg-font): Add weight to font selection.
15131
15132 2004-12-14  Mats Bengtsson  <mabe@s3.kth.se>
15133
15134         * Documentation/topdocs/INSTALL.texi (Top): Point to
15135         buildscripts/out/clean-fonts instead of
15136         buildscripts/clean-fonts.sh. 
15137
15138 2004-12-13  Graham Percival  <gperlist@shaw.ca>
15139
15140         * input/regression/figured-bass.ly: attempt to clarify text.
15141
15142         * Documentation/user/notation.tely: add cindex for tag, attempt to
15143         add figured bass example.
15144
15145         * Documentation/user/changing-defaults: basic editing.
15146
15147 2004-12-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15148
15149         * buildscripts/gen-bigcheese-scripts.py (i): load .subfonts table. 
15150
15151         * lily/open-type-font.cc (LY_DEFINE): new function
15152         ly:font-sub-fonts
15153
15154         * lily/include/font-metric.hh (struct Font_metric): new method
15155         sub_fonts()
15156
15157         * lily/vaticana-ligature-engraver.cc (transform_heads): replace
15158         . with - in add.stem.
15159         
15160 2004-12-13  Jan Nieuwenhuizen  <janneke@gnu.org>
15161
15162         * scm/encoding.scm (coding-alist): Fix encodings for fetaNumber
15163         and fetaDynamic.
15164
15165         * lily/rest.cc (glyph_name): Change - to . .
15166
15167         * scm/output-gnome.scm (text): Hello world, again.
15168
15169         * scm/output-svg.scm (named-glyph): New function.  Hello world!
15170
15171         * lily/modified-font-metric.cc (index_to_charcode): New method.
15172
15173         * lily/include/font-metric.hh (index_to_charcode): New function.
15174
15175         * lily/font-metric.cc (ly:font-glyph-name-to-charcode): Use it in
15176         new function.
15177         (ly:font-glyph-to-index): Remove.
15178
15179 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15180
15181         * lily/open-type-font.cc (make_index_to_charcode_map): new method.
15182
15183         * mf/feta-autometric.mf (code): remove tex name from fet_beginchar.
15184
15185         * lily/open-type-font.cc (load_scheme_table): new function
15186
15187         * lily/dots.cc (print): replace - 
15188
15189         * lily/open-type-font.cc (attachment_point): new function.
15190         (load_table): read LILC table
15191
15192         * buildscripts/gen-bigcheese-scripts.py (Module): new
15193         file. Generate FF scripts.
15194
15195         * mf/feta-din10.mf: idem.
15196
15197         * mf/feta-nummer10.mf: remove mf files.
15198
15199         * mf/feta-alphabet.mf (dynamic_design_size): merge din and number font.
15200
15201 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
15202
15203         * lily/lily-guile.cc: Use scm_from_locale_stringn.
15204
15205         * lily/include/guile-compatibility.hh (scm_from_locale_stringn): Add
15206         compatibility.
15207
15208 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15209
15210         * lily/open-type-font.cc (get_indexed_char): scale metrics by
15211         design-size and units_per_EM.
15212
15213         * mf/bigcheese.pe.in: set PUA codepoints before loading din & nummer.
15214
15215 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
15216
15217         * mf/bigcheese.pe.in (i): Map to 0xe000 (PUA) for testing, which
15218         does not crash fontforge.
15219
15220         * scm/lily-library.scm (char->unicode-index): Hack to map onto
15221         PUA.
15222
15223 2004-12-12  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15224
15225         * scm/framework-ps.scm (ps-embed-cff): new function.
15226
15227         * lily/lily-guile.cc (LY_DEFINE): make ly:gulp-file binary proof.
15228
15229 2004-12-12  Werner Lemberg  <wl@gnu.org>
15230
15231         * mf/bigcheese.pe.in: Add PUA mapping.
15232         Don't create Type 42 but bare CFF font.
15233
15234 2004-12-12  Jan Nieuwenhuizen  <janneke@gnu.org>
15235
15236         * scm/output-gnome.scm (placebox): Hackery to get bigcheese symbols
15237         within canvas boundaries.
15238
15239         * mf/merge.pe.in: Set font names, version, license GPL.
15240
15241         * make/substitute.make: Add FONTFORGE.
15242
15243         * config.make.in (FONTFORGE): Add.
15244
15245         * configure.in (gui_b): Use PATH_PROG for fontforge.
15246
15247 2004-12-11  Graham Percival  <gperlist@shaw.ca>
15248
15249         * scm/define-markup-commands.scm: add baseline-skip to info
15250         about \column.
15251
15252 2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
15253
15254         * lily/font-metric.cc (ly:font-get-glyph-index): New function.
15255
15256         * scm/output-gnome.scm (named-glyph): Use it.
15257
15258         * scm/lily.scm (ly:all-stencil-expressions): Add named-glyph.
15259
15260         * flower/string.cc (substitute_char): Rename, rewrite, modify this.
15261         (upper_string, lower_string, reverse_string): Remove.
15262
15263         * configure.in (fontforge): Reinstate version check.
15264
15265         * ly/engraver-init.ly: Fix clef glyph names.
15266
15267         * lily/time-signature.cc (special_time_signature): Fix fraction
15268         glyph names.
15269
15270 2004-12-11  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15271
15272         * mf/merge.pe: new file.
15273
15274         * lily/freetype.cc: new file.
15275
15276         * lily/include/open-type-font.hh (class Open_type_font): new file.
15277
15278         * lily/include/freetype.hh: new file.
15279
15280         * lily/open-type-font.cc: new file.
15281
15282         * lily/all-font-metrics.cc (find_otf): new function.
15283
15284 2004-12-11  Jan Nieuwenhuizen  <janneke@gnu.org>
15285
15286         * lily/time-signature.cc (special_time_signature): Fix.
15287
15288         * configure.in (PKG_CONFIG_PATH): Remove stray `i'.  Check for
15289         GTK2 before checking for pango.  Fixes -fgnome.
15290
15291         * lily/font-metric.cc (LY_DEFINE): Also rename C name to match
15292         Scheme name.
15293
15294         * scm/define-markup-commands.scm:
15295         * scm/safe-lily.scm: Bugfix: ly:font-by-name.
15296
15297         * configure.in: Require makeinfo 4.7 (needed for @ifdocbook).
15298
15299         * stepmake/aclocal.m4 (STEPMAKE_GET_VERSION): Grok fontforge-like
15300         date versions.  Fixes configure.
15301         (STEPMAKE_CHECK_VERSION): Support optional actual program version
15302         argument.
15303
15304 2004-12-10  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15305
15306         * buildscripts/mf-to-table.py (write_ps_encoding): write real
15307         names in .enc
15308
15309         * lily/*.cc: use '.' iso. '-' for separating glyph name elements.
15310
15311 2004-12-09  Graham Percival  <gperlist@shaw.ca>
15312
15313         * Documentation/user/changing-defaults.itely: add info about
15314         make-dynamic-script
15315
15316         * Documentation/user/notation.itely: add link in dynamics to
15317         section about make-dynamic-script.
15318
15319 2004-12-09  Christian hitz  <chhitz@gmx.net>
15320
15321         * lily/lily-guile.cc: change MACOS_X to __APPLE__
15322
15323 2004-12-09  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15324
15325         * buildscripts/mf-to-table.py (parse_logfile): use . for
15326         concatting name and group.
15327         (parse_logfile): use M for Minus (negative.)
15328
15329         * lily/include/type-swallow-translator.hh
15330         (DECLARE_EVENT_SWALLOWER): ENTER_DESCRIPTION -> ADD_TRANSLATOR
15331
15332         * lily/*.cc: cosmetics around = sign.
15333
15334         * lily/paper-column.cc (Paper_column): copy rank_. This fixes
15335         lyric spacing on the penultimate column.
15336
15337 2004-12-05  Christian Hitz  <chhitz@gmx.net>
15338
15339         * configure.in:
15340         * lily/accidental-placement.cc:
15341         * lily/bar-line.cc:
15342         * lily/beam-concave.cc:
15343         * lily/beam-quanting.cc:
15344         * lily/beam.cc:
15345         * lily/bezier-bow.cc:
15346         * lily/bezier.cc:
15347         * lily/break-align-interface.cc:
15348         * lily/custos.cc:
15349         * lily/dimension-cache.cc:
15350         * lily/dot-column.cc:
15351         * lily/font-metric.cc:
15352         * lily/font-select.cc:
15353         * lily/gourlay-breaking.cc:
15354         * lily/grob-property.cc:
15355         * lily/grob.cc:
15356         * lily/lily-guile.cc:
15357         * lily/line-spanner.cc:
15358         * lily/lookup.cc:
15359         * lily/lyric-extender.cc:
15360         * lily/lyric-hyphen.cc:
15361         * lily/mensural-ligature.cc:
15362         * lily/midi-def.cc:
15363         * lily/misc.cc:
15364         * lily/note-collision.cc:
15365         * lily/note-column.cc:
15366         * lily/note-head.cc:
15367         * lily/paper-outputter.cc:
15368         * lily/percent-repeat-item.cc:
15369         * lily/rest-collision.cc:
15370         * lily/side-position-interface.cc:
15371         * lily/simple-spacer.cc:
15372         * lily/slur-configuration.cc:
15373         * lily/slur-scoring.cc:
15374         * lily/slur.cc:
15375         * lily/spaceable-grob.cc:
15376         * lily/spacing-spanner.cc:
15377         * lily/spanner.cc:
15378         * lily/staff-symbol-referencer.cc:
15379         * lily/stem.cc:
15380         * lily/stencil.cc:
15381         * lily/system-start-delimiter.cc:
15382         * lily/system.cc:
15383         * lily/text-item.cc:
15384         * lily/tie.cc:
15385         * lily/tuplet-bracket.cc:
15386         * lily/vaticana-ligature.cc: Fix for MacOS X: use <math.h> instead of
15387         <cmath> beacause isinf/isnan is undefined in <cmath>
15388
15389 2004-12-03  Mats Bengtsson  <mabe@s3.kth.se>
15390
15391         * cygwin/lily-wins.py (stat): remove old flag -p when calling lilypond.
15392
15393 2004-12-02  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15394
15395         * VERSION: release 2.5.3
15396         
15397 2004-11-29  Arno Waschk <arno@arnowaschk.de>
15398
15399         * mf/feta-schrift.mf: added <>-like articulation mark as "espressivo"
15400
15401 2004-12-01  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15402
15403         * scm/music-functions.scm (cue-substitute): voice counts start at 0.
15404
15405         * lily/note-head.cc (internal_print): always try the "s" head if
15406         u/d not found.
15407
15408         * scm/titling.scm (marked-up-headfoot): reinstate default tagline.
15409
15410 2004-11-29  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15411
15412         * mf/parmesan-heads.mf (overdone_heads): typos.
15413
15414 2004-11-30  Nicolas Sceaux  <nicolas.sceaux@free.fr>
15415
15416         * lily/parser.yy (markup): in markups, { .. } without command
15417         before are also flattened, ie \line must be explicitely used.
15418
15419         * Documentation/user/changing-defaults.itely:
15420         * Documentation/user/notation.itely: 
15421         * input/wilhelmus.ly: 
15422         * input/regression/instrument-name-markup.ly: 
15423         * input/regression/markup-score.ly: 
15424         * input/regression/new-markup-scheme.ly: 
15425         * input/regression/new-markup-syntax.ly: 
15426         * input/test/coriolan-margin.ly: use \line in markups where
15427         appropriate
15428         
15429 2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
15430
15431         * scm/new-markup.scm (map-markup-command-list): helper function
15432         used in parser.yy to map markup commands on a markup list.
15433
15434         * lily/parser.yy: get rid off < > in markups by treating { } as
15435         real lists.
15436
15437         * lily/lexer.ll: remove < > from markup lexer mode.
15438
15439         * scripts/convert-ly.py (conv): add rule for converting 
15440         \markup < > to \markup { }
15441
15442         * ly/titling-init.ly: 
15443         * input/test/coriolan-margin.ly: 
15444         * input/regression/new-markup-syntax.ly: 
15445         * input/regression/new-markup-scheme.ly: 
15446         * input/regression/multi-measure-rest-text.ly: 
15447         * input/regression/markup-stack.ly: 
15448         * input/regression/markup-score.ly: 
15449         * input/regression/instrument-name-markup.ly: 
15450         * input/mutopia/W.A.Mozart/mozart-hrn-3.ly: 
15451         * input/mutopia/R.Schumann/romanze-op28-2.ly: 
15452         * input/mutopia/J.S.Bach/wtk1-fugue2.ly: 
15453         * input/wilhelmus.ly: 
15454         * Documentation/user/notation.itely: 
15455         * Documentation/user/music-glossary.tely: 
15456         * Documentation/user/changing-defaults.itely: change < > to { } in
15457         markups
15458
15459 2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15460
15461         * lily/accidental-placement.cc (position_accidentals): shortcut if
15462         no accidentals to place.
15463
15464 2004-11-28  Nicolas Sceaux  <nicolas.sceaux@free.fr>
15465
15466         * scm/define-grob-properties.scm (all-user-grob-properties): fixed
15467         typo s/ly:dimension ?/ly:dimension?/
15468
15469         * input/regression/lily-in-scheme.ly: 
15470         * input/regression/music-function.ly: 
15471         * ly/spanners-init.ly (assertBeamSlope): 
15472         * scm/music-functions.scm (def-grace-function): add the paper
15473         argument to music function definitions.
15474
15475 2004-11-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15476
15477         * lily/moment.cc (LY_DEFINE):
15478         ly:moment-main-{denominator,numberator}, new function.
15479
15480         * lily/score-engraver.cc (typeset_all): assign to column on basis
15481         of axis-group-parent-X setting.
15482
15483         * lily/axis-group-engraver.cc (process_acknowledged_grobs): do
15484         add_element() on basis of axis-group-parent-Y setting.
15485
15486         * lily/grob.cc: add axis-group-parent-{XY} properties.
15487
15488         * input/regression/spacing-stick-out.ly: new file.
15489
15490         * lily/simple-spacer.cc (add_columns): use binary search for
15491         setting column rods. Changes O(n^2) to O(n log(n)) for
15492         constructing spacing problem from columns.
15493         (add_columns): read allow-outside-line to make sure no texts stick
15494         out.
15495         (solve): Simple_spacer::is_active() only determines
15496         satisfies_constraints_ for non-ragged typesetting.
15497
15498         * lily/simultaneous-music.cc (to_relative_octave): only set
15499         old_relative_used if return pitch actually changed.
15500
15501         * scm/define-context-properties.scm
15502         (all-user-translation-properties): change to match implementation.
15503
15504         * python/lilylib.py: Replace re.match by re.search and adds "-c
15505         showpage" to the gs command line (Johannes Schindelin)
15506
15507         * scm/framework-ps.scm (output-preview-framework): sanitize bbox
15508         before processing. Prevents crash when inf is in the extent.
15509
15510         * scm/define-markup-commands.scm (note-by-number): add "s" to
15511         "noteheads-" glyphname.
15512  
15513         * lily/parser.yy (Generic_prefix_music): supply parser argument to
15514         music function as well.
15515         
15516 2004-11-26  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15517
15518         * VERSION: release 2.5.2
15519
15520         * Documentation/user/changing-defaults.itely (Creating titles):
15521         add breakbefore variable.
15522
15523         * lily/paper-book.cc (set_system_penalty): new function. Set
15524         penalty_ based on breakBefore setting
15525
15526         * lily/context-specced-music-iterator.cc (construct_children):
15527         interpret special context id $uniqueContextId 
15528
15529         * lily/context.cc (create_unique_context): new method. Move
15530         creation of unique (\new) contexts into interpreting phase. This
15531         makes
15532
15533           foo= \new Staff ..
15534           << \foo \foo >>
15535
15536         produce 2 staves.
15537         
15538
15539         * scm/define-music-properties.scm (all-music-properties): add
15540         quoted-voice-direction
15541
15542         * ly/music-functions-init.ly: killCues function.
15543
15544         * scm/music-functions.scm (cue-substitute): move creation of voice
15545         contexts further to the back. 
15546
15547 2004-11-25  Werner Lemberg  <wl@gnu.org>
15548
15549         * tex/GNUmakefile ($(outdir)/latin1.enc): Replace `/minus' with
15550         `/hyphen' in encoding vector to get correct glyph name for EC fonts.
15551
15552 2004-11-24  Erik Sandberg  <ersa9195@student.uu.se>
15553
15554         * buildscripts/guile-gnome.sh: Fixed typo.
15555
15556 2004-11-23  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15557
15558         * lily/lexer.ll: add < >  to markup lexer mode (backportme)
15559
15560         * scripts/abc2ly.py (dump_slyrics): add ord(). 
15561
15562         * lily/note-heads-engraver.cc (process_music): add shapeNoteStyles
15563         to regular engraver. 
15564
15565 2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15566
15567         * mf/feta-bolletjes.mf (triangle): rewrite solfa heads.
15568
15569 2004-11-22  Jan Nieuwenhuizen  <janneke@gnu.org>
15570
15571         * scm/define-markup-commands.scm (fill-line): Typo.
15572
15573         * buildscripts/guile-gnome.sh (GGVERSION): Build update for 2.7.96
15574         and newer.
15575
15576 2004-11-22  Erik Sandberg  <ersa9195@student.uu.se>
15577
15578         * ly/dynamic-scripts-init.ly: Fixed typo.
15579
15580 2004-11-22  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15581
15582         * mf/feta-bolletjes.mf (overdone_heads): cleanup triangle
15583         note-head, to have different attachment points for up and down.
15584
15585         * mf/feta-bolletjes.mf: merge solfa heads into main note heads.
15586
15587         * mf/feta-generic.mf (else): remove solfa.
15588
15589         * mf/feta-bolletjes.mf (tishape): remove unicode test.
15590
15591         * scm/define-context-properties.scm
15592         (all-user-translation-properties): add shapeNoteStyles property.
15593
15594         * lily/shape-note-heads-engraver.cc (process_music): new file.
15595
15596         * lily/event.cc (transpose): call Event::transpose() for
15597         transposing the tonic.
15598
15599 2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
15600
15601         * scm/output-gnome.scm: Save some pointers about pango/fontconfig
15602         Unicode/OpenType and AFM.
15603
15604         * lily/include/guile-compatibility.hh (scm_from_bool): Add.
15605
15606 2004-11-21  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15607
15608         * lily/grob.cc (Grob): idem. Plugs mem leaks. 
15609
15610         * lily/context.cc (Context): unprotect key from ctor.
15611
15612         * scm/stencil.scm (stack-lines): return empty-stencil if argument
15613         is '()
15614         (stack-stencils): idem.
15615
15616         * Documentation/user/changing-defaults.itely (Creating titles):
15617         document new title layout options.
15618
15619         * lily/parser.yy (lilypond_header_body): copy previous
15620         $globalheader if present.
15621
15622         * lily/ly-module.cc (LY_DEFINE): rename ly:import-module to
15623         ly:module-copy
15624         
15625         * scm/page-layout.scm (marked-up-headfoot): remove old functions.
15626
15627         * scm/titling.scm: remove old titling functions
15628
15629         * lily/stencil.cc (translate): remove absolute dimension.
15630
15631         * ly/titling-init.ly (oddFooterMarkup): new file. Generate titles
15632         via markup.
15633
15634         * scm/page-layout.scm (marked-up-headfoot): create header/footer
15635         field from user-supplied markup
15636
15637         * scm/define-markup-commands.scm (on-the-fly): new markup
15638         command. Enter SCM markup procedure directly in Scheme.
15639         (fromproperty): new markup command. Read markup from props argument.
15640
15641         * scm/titling.scm (marked-up-title): create title via
15642         user-specified markup. 
15643
15644         * scm/define-markup-commands.scm (column): remove empty stencils
15645         from column.
15646
15647         * lily/ly-module.cc (LY_DEFINE): use ly_module_lookup(). This does
15648         not have side-effect of creating variable stub.
15649
15650         * lily/stencil-scheme.cc (LY_DEFINE): add ly:stencil-empty?
15651
15652 2004-11-21  Jan Nieuwenhuizen  <janneke@gnu.org>
15653
15654         * scm/encoding.scm (coding-alist): 
15655         * scm/font.scm (add-ec-fonts):
15656         * ly/paper-defaults.ly: Use actual name for EC fontencoding:
15657         Extended-TeX-Font-Encoding---Latin.
15658
15659         * lily/side-position-interface.cc (general_side_position): Add
15660         actual offset to error message (avoid constant error messages).
15661
15662         * lily/all-font-metrics.cc (find_font): Add "lm" to try-AFM-first
15663         block.
15664
15665         * lily/font-select.cc (select_encoded_font)
15666         (get_font_by_mag_step, get_font_by_design_size): 
15667         * lily/modified-font-metric.cc (Modified_font_metric): 
15668         * lily/paper-def.cc (find_scaled_font): Add font_encoding parameter.
15669
15670         * scm/encoding.scm (coding-alist): Add fetaDynamic.
15671         (read-encoding-file): Bugfix: do not require space after bracket.
15672
15673         * scm/font.scm (add-cork-lm-fonts): Remove lmbxi8 and lmbxi14,
15674         these do not exist.
15675
15676 2004-11-20  Graham Percival  <gperlist@shaw.ca>
15677
15678         * Documentation/user/notation.itely: added info about typesetting
15679         boxed bar numbers.
15680
15681 2004-11-20  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15682
15683         * flower/interval.cc (T_to_string): gcc4 fixes.
15684
15685         * scm/define-markup-commands.scm (fill-line): use
15686         stack-stencils. This fixes problems with putting already centered
15687         stencils in a line.
15688
15689         * VERSION: release 2.5.1
15690
15691         * lily/bar-line.cc (get_staff_bar_size): add line thickness.
15692
15693 2004-11-19  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15694
15695         * input/example-[1-3].ly: simplify.
15696
15697         * lily/cluster-engraver.cc (try_music): react to busy-playing-event
15698
15699         * scm/output-ps.scm (new-text): new function. Use glyphshow to
15700         show glyphs.
15701
15702         * scm/encoding.scm (decode-byte-string): new function.
15703
15704         * scripts/convert-ly.py (conv): add warning about
15705         set-global-staff-size.
15706
15707         * Doxyfile: add. 
15708
15709         * scripts/convert-ly.py (conv): add raggedlastbottom rule
15710         (conv): warn for TextSpanner split.
15711         (conv): warn for textheight.
15712
15713 2004-11-19  Jan Nieuwenhuizen  <janneke@gnu.org>
15714
15715         * GNUmakefile.in (install-WWW): Invoke install-info, so that when
15716         building the documentation, info with images are installed.
15717         (final-install): Fix description.  Mention sourcing of login
15718         scripts (instead of running).
15719
15720 2004-11-18  Jan Nieuwenhuizen  <janneke@gnu.org>
15721
15722         * Debian lmodern support.  Note that LilyPond will issue warnings
15723         
15724             no such encoding: "FontSpecific"
15725
15726           The font selection mechanism wants to get the encoding from the
15727           font itself, but the idea of lmodern is that it is usable with
15728           different encodings, ie, Lily should get the encoding from the
15729           font tree, rather than the font itself.  This would require some
15730           more work.
15731         
15732         * configure.in: Test for and accept lmodern if EC fonts not found.
15733
15734         * scm/framework-tex.scm (font-load-command): TeX font name
15735         mangling for latin1 encoded cork-lm fonts.
15736         (convert-to-ps): Load lm.map if available.
15737
15738         * ly/paper-defaults.ly: Use cork-lm encoding if ec is not
15739         available.
15740
15741         * scm/encoding.scm (coding-alist): Add cork-lm encoding.
15742
15743         * scm/font.scm: Add header.  Autoload cork-lm and ec fonts if
15744         available.
15745
15746         * lily/kpath.cc (ly_kpathsea_find_file): Rename.  Do not use
15747         path for absolute file name, that is silly.
15748
15749         * lily/score-engraver.cc (initialize): 
15750
15751         * Documentation/user/GNUmakefile (local-install-info): Invoke
15752         install-info --remove first.
15753
15754         * #include cleanup (Andreas Scherer).
15755
15756 2004-11-18  Heikki Junes  <hjunes@cc.hut.fi>
15757
15758         * input/test/script-abbreviations.ly: fix typos.
15759
15760 2004-11-17  Werner Lemberg  <wl@gnu.org>
15761
15762         * python/lilylib.py (options_help_str): Support pretty-printing of
15763         newlines in fourth element of option description.
15764
15765         * scripts/lilypond-book.py (option_definitions): Use new lilylib
15766         feature.
15767         Sort options.
15768
15769         * Documentation/user/lilypond-book.itely: Finish update.
15770
15771 2004-11-17  Jan Nieuwenhuizen  <janneke@gnu.org>
15772
15773         * Documentation/user/macros.itexi: Add comment about \command.
15774
15775         * Documentation/user/lilypond.tely:
15776         * Documentation/user/lilypond-book.itely: Fix names of lilypond
15777         and lilypond-book nodes, so that `info lilypond' visits the manual
15778         at top level, and `info lilypond-book' visits the lilypond-book
15779         section.
15780
15781         * Documentation/user/GNUmakefile (local-install-info): Fix rules
15782         and packager messages.
15783
15784         * lily/pangofc-afm-decoder.cc: Update test.
15785
15786 2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
15787
15788         * scm/lily-library.scm (char->unicode-index): New function.
15789
15790         * scm/output-gnome.scm: 
15791         * scm/output-svg.scm: Cleanup.  Map custom fonts to PUA.
15792
15793         * Proper naming of file name throughout; s/filename/file[-_]name/.
15794
15795         * lily/modified-font-metric.cc ("ly:font-encoding"): New function.
15796
15797         * lily/pangofc-afm-decoder.cc (pango_fc_afm_get_glyph): Map onto PUA.
15798
15799 2004-11-16  Werner Lemberg  <wl@gnu.org>
15800
15801         * scripts/lilypond-book.py: The Lord has commanded me to use only
15802         tabs for indentation.  Your humble servant obeys.
15803
15804 2004-11-16  Jan Nieuwenhuizen  <janneke@gnu.org>
15805
15806         * scm/output-svg.scm: Font fixes.  Sodipodi now groks svg
15807         including font, if LilyPond-feta font is only feta font in path.
15808
15809         * scm/output-gnome.scm (text): Revert to file name of font if font
15810         has no name.  Fixes ec font selection.
15811         (char): Bugfix: do not utf8 twice.  Fixes clefs.
15812
15813         * scm/framework-svg.scm:
15814         * scm/output-svg.scm: New file.  TODO: figure out how to
15815         do character by index in font.
15816
15817         * scm/output-sodipodi.scm: Remove.
15818
15819         * scm/output-ps.scm (stem): Remove.
15820
15821 2004-11-15  Jan Nieuwenhuizen  <janneke@gnu.org>
15822
15823         * scm/output-gnome.scm (beam): New function.
15824         (slur): Round corners.
15825         (round-filled-box): Round corners.
15826
15827 2004-11-16  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15828
15829         * scm/output-gnome.scm (beam): add function.
15830         (draw-line): new routine.
15831         (dashed-line): stub; call draw-line
15832         (polygon): new routine.
15833
15834 2004-11-15  Werner Lemberg  <wl@gnu.org>
15835
15836         * Documentation/user/lilypond-book.itely: Revise section on
15837         lilypond-book options.
15838         Other minor fixes.
15839
15840         * scripts/lilypond-book.py: Change indentation to 4.
15841         Minor formatting.
15842
15843 2004-11-15  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15844
15845         * lily/system.cc (apply_tweaks): new function. Run tweaks on all
15846         grobs that have tweaks specced.
15847         
15848 2004-11-14  Heikki Junes  <hjunes@cc.hut.fi>
15849
15850         * Documentation/user/sound-output.itexi: add code snippets for MIDI.
15851
15852 2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
15853
15854         * lily/font-metric.cc (get_indexed_char_stencil): Bugfix: get
15855         actual char #, not 0 based index.
15856
15857         * lily/system-start-delimiter.cc (staff_brace): Start at 65.
15858
15859         * mf/feta-beugel.mf: Actually start at char #65.  Add header.
15860         Warning: do make -C mf clean.
15861
15862         * lily/context-property.cc: Compile fix.
15863
15864         * scm/output-gnome.scm: Add ec-fonts-mftraced to ~/.fonts.conf.
15865         Grok ec-fonts, braces and dynamics.
15866
15867         * scm/framework-gnome.scm (gnome-main): Register braces with pango.
15868
15869 2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15870
15871         * lily/include/tweak-registration.hh: new file.
15872
15873         * lily/tweak-registration.cc: new file.
15874
15875         * scm/framework-gnome.scm (save-tweaks): use new key mechanism for
15876         saving tweaks.
15877
15878         * scm/output-gnome.scm (text): comment dribble.
15879
15880 2004-11-14  Jan Nieuwenhuizen  <janneke@gnu.org>
15881
15882         * lily/pangofc-afm-decoder.cc (main): Test more feta fonts.
15883
15884         * scm/output-gnome.scm (bezier-sandwich): New function.  Reset
15885         path-def before using.  Fixes muchtomany slurs in wrong places
15886         bug.
15887
15888 2004-11-14  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15889
15890         * lily/grob-scheme.cc (LY_DEFINE): add new function ly:grob-key.
15891
15892         * lily/include/object-key-undumper.hh (Module): new file.
15893
15894         * lily/object-key-undumper.cc (Module): New file. Deserialize
15895         keys. SCM bindings
15896
15897         * lily/object-key-dumper.cc (Object_key_dumper): idem.
15898         Provide SCM bindings.
15899
15900         * lily/include/object-key-dumper.hh (class Object_key_dumper): 
15901         new file. Serialize object keys.
15902         
15903         * lily/object-key.cc (dump): new function.
15904         (as_scheme): new virtual function
15905         (undump): new function
15906         (undumpers): new table.
15907
15908         * lily/include/global-context.hh (Context): take \score key upon init.
15909
15910         * lily/object-key-dumper.cc (serialize_key): new file.
15911
15912         * lily/include/object-key-dumper.hh (class Object_key_dumper): new file.
15913
15914         * lily/lily-lexer.cc: remove \quote.
15915
15916         * lily/lookup.cc (triangle): rewrite, obviating symmetric_x_triangle().
15917
15918         * lily/context.cc (Context): take key argument in ctor.
15919         (create_context): new function
15920
15921         * lily/grob.cc (Grob): take key argument in ctor.  
15922
15923         * lily/lilypond-key.cc (do_compare): new file.
15924
15925         * lily/object-key.cc (Object_key): new file.
15926
15927         * lily/include/object-key.hh (class Object_key): new file.
15928
15929         * lily/include/lilypond-key.hh (class Lilypond_context_key): new file.
15930
15931 2004-11-13  Graham Percival  <gperlist@shaw.ca>
15932
15933         * Documentation/user/lilypond-book.itely: add small warning about
15934         noindent default in lilypond-book.
15935
15936         * Documentation/user/converters.itely: add examples for convert-ly.
15937
15938         * Documentation/user/examples.itely: change version string in templates
15939         to 2.4.0.
15940
15941 2004-11-12  Karl Hammar  <karl@aspodata.se>
15942
15943         * GNUmakefile.in (local-WWW-post): `find ...` overflows the
15944         cmdline, use xargs instead (backportme)
15945
15946 2004-11-10  Andreas Scherer  <andreas_mutopia@freenet.de>
15947         
15948         * Documentation/user/: Numerous fixes in the user manual.
15949
15950 2004-11-13  Han-Wen Nienhuys  <hanwen@xs4all.nl>
15951
15952         * lily/parser.yy (re_rhythmed_music): search music expression for
15953         context-id, surround by \new Voice if not found. Fixes:
15954         addlyrics-second-staff.ly
15955
15956         * VERSION: 2.5.0 released.
15957         
15958 2004-11-12  Jan Nieuwenhuizen  <janneke@gnu.org>
15959
15960         * Documentation/index.html.in: Fix url to one big page.  (backportme)
15961
15962         * Documentation/user/GNUmakefile: Separate rules for split and
15963         unsplit html documents.  Remove perl massaging.  (backportme)
15964
15965 2004-11-11  Graham Percival  <gperlist@shaw.ca>
15966
15967         * Documentation/user/lilypond-book.itely: add short warning about
15968         \lilypond{} in LaTeX docs.
15969
15970 2004-11-11  Jan Nieuwenhuizen  <janneke@gnu.org>
15971
15972         * stepmake/aclocal.m4: Barf if kpathsea/kpathsea.h is not
15973         found.  (backportme)
15974
15975         * Documentation/topdocs/INSTALL.texi (ec-fonts-mtraced): Add
15976         version requirement.  (backportme)
15977
15978         * configure.in: Be explicit about old versions of
15979         ec-fonts-mtraced.  (backportme)
15980
15981         * lily/context-selector.cc (set_tweaks): New function.
15982         * lily/grob-selector.cc (set_tweaks): (Re)set hash table.  Fixes
15983         web with -DTWEAK.
15984
15985         * Documentation/user/introduction.itely (Automated engraving):
15986         Remove fragment option.  Fixes web.
15987
15988         * lily/context-property.cc (make_item_from_properties):
15989         * lily/context.cc (add_context)[TWEAK]: Tweak registration behind
15990         #ifdef.
15991
15992         * scm/define-context-properties.scm
15993         (all-internal-translation-properties): Add tweakRank and tweakCount.
15994
15995         * lily/grob.cc: 
15996         * scm/define-grob-properties.scm (all-internal-grob-properties):
15997         Add tweak-rank and tweak-count.
15998
15999 2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
16000
16001         * scm/output-gnome.scm (string->utf8-string, char->utf8-string):
16002         New function.
16003         (text): Use them.
16004
16005         * scm/framework-gnome.scm (item-event): Add support from TLA.  Support
16006         animated/opaque grob dragging tweaks.
16007
16008         * buildscripts/guile-gnome.sh: Update.
16009
16010 2004-11-10  Mats Bengtsson  <mabe@s3.kth.se>
16011
16012         * scm/define-grobs.scm (all-grob-descriptions): Added
16013         line-interface to the LigatureBracket object.
16014
16015 2004-11-10  Jan Nieuwenhuizen  <janneke@gnu.org>
16016
16017         * scm/framework-gnome.scm (item-event): Support non-animated mouse
16018         dragging tweaks.
16019
16020         * lily/lily-guile.cc (ly_to_string, ly_to_symbol): New function.
16021
16022         * lily/context-selector.cc (store_context): New function.
16023
16024         * lily/grob-selector.cc (register_grob)[TWEAK]: Apply tweak.
16025         (store_grob): New function.
16026         (identify_grob): Add Moment parameter.
16027
16028         * lily/lily-parser.cc (parse_file)[TWEAK]: Read .ly.t file if it
16029         exists.
16030
16031         * scm/framework-gnome.scm (save-tweaks): Write as alist.
16032
16033 2004-11-09  Jan Nieuwenhuizen  <janneke@gnu.org>
16034
16035         * scm/framework-gnome.scm (item-event): Print grob id.
16036         (save-tweaks): New function.
16037         (tweak): New funtion.
16038         (item-event): Use it, bound to arrow keys.
16039
16040         * lily/context-property.cc (make_item_from_properties): Register grob.
16041         * lily/context.cc (add_context): Register context.
16042
16043         * lily/include/context-selector.hh:
16044         * lily/include/grob-selector.hh:
16045         * lily/context-selector.cc:
16046         * lily/grob-selector.cc: New file.
16047
16048 2004-11-08  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16049
16050         * lily/slur.cc: add 'positions to interface
16051
16052         * lily/main.cc: reinstate PS as standard output format. 
16053
16054         * scm/framework-tex.scm (output-preview-framework): print systems
16055         up to first non title system.
16056
16057         * lily/grace-engraver.cc (start_translation_timestep): split
16058         scm_cadddr
16059         
16060 2004-11-07  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16061
16062         * lily/quote-iterator.cc (Module): remove old quote-iterator
16063
16064         * scm/define-music-types.scm (music-descriptions): move
16065         NewQuoteMusic over QuoteMusic
16066
16067         * Documentation/user/notation.itely (Formatting cue notes): use
16068         \cueDuring.
16069
16070         * lily/new-quote-iterator.cc (quote_ok): new function.
16071
16072         * input/regression/quote-cue-during.ly: new file.
16073
16074         * input/regression/quote-grace.ly: new file.
16075
16076         * scm/define-context-properties.scm (Module): change definition of
16077         graceSettings
16078
16079         * lily/context-property.cc (Module): rename from
16080         translator-property.cc
16081
16082         * lily/context.cc (context_name_symbol): new function
16083
16084         * lily/grace-engraver.cc: new file. Set properties for grobs based
16085         on the grace-ness of now_moment().
16086
16087         * scm/music-functions.scm (add-grace-property): use list
16088         iso. vector for graceSettings
16089         remove set-{start,stop}-grace-properties. 
16090
16091         * lily/new-quote-iterator.cc (construct_children): set
16092         quote_outlet_ if no quoted-context-{id,type} specified.
16093
16094         * scripts/convert-ly.py (conv): \quote -> \quoteDuring.
16095
16096         * lily/parser.yy (command_element): remove \quote.
16097
16098         * ly/music-functions-init.ly (location): add quoteDuring music
16099         function. 
16100
16101         * lily/lexer.ll: allow \encoding in lyrics as well.  Remove
16102         optional semicolon. (backportme)
16103
16104 2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
16105
16106         * python/GNUmakefile (STEPMAKE_TEMPLATES): Unset USER_LDFLAGS, no
16107         need to link to GUILE et al.
16108
16109 2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16110
16111         * scm/define-music-properties.scm (all-music-properties): add
16112         quoted-context-type, quoted-context-id.
16113
16114         * scm/lily.scm (type-check-list): new function.
16115         
16116         * scm/lily-library.scm: new file. Generic library routines.
16117
16118         * lily/parser.yy (Generic_prefix_music): move typechecking out of
16119         parser.
16120
16121         * ly/music-functions-init.ly: add quoteDuring function.
16122
16123         * lily/include/music-iterator.hh (class Music_iterator): rename
16124         set_translator -> set_context
16125
16126         * lily/parser.yy (Generic_prefix_music_scm): add
16127         MUSIC_FUNCTION_SCM_SCM_MUSIC
16128
16129         * scm/lily.scm (sanitize-command-option): new function. (backportme)
16130
16131         * scm/framework-tex.scm (header): sanitize TeX paper size.
16132         (backportme)
16133
16134 2004-11-06  Jan Nieuwenhuizen  <janneke@gnu.org>
16135
16136         * elisp/lilypond-indent.el (LilyPond-indent-level): 2 is now standard.
16137
16138         * tex/lilyponddefs.tex: If no inputencoding use latin1.  (backportme)
16139
16140         * scm/framework-tex.scm (font-load-command): Use T1 if no
16141         font-encoding set.  (backportme)
16142
16143         * scm/lily.scm (postscript->pdf): Remove .pdf file if it
16144         exists before converting.  (backportme)
16145
16146         * scm/framework-tex.scm (convert-to-dvi): Remove .dvi file if it
16147         exists before converting.  (backportme)
16148         (convert-to-ps): Remove .ps file if it exists before
16149         converting.  (backportme)
16150
16151         * lily/lexer.ll: Remove extra progress newline, use present tense.
16152
16153         * scm/paper.scm (paper-alist): public.
16154         * scm/framework-tex.scm (convert-to-ps):
16155         * scm/lily.scm (postscript->pdf): Do not leak papersizename into
16156         command line.
16157
16158 2004-11-06  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16159
16160         * scm/lily.scm (ly:system): add > /dev/null 2>&1 . (backportme)
16161
16162         * lily/recording-group-engraver.cc (derived_mark): mark
16163         now_events_. (backportme)
16164
16165 2004-11-05  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16166
16167         * mf/GNUmakefile: use Fedora-3 in download link. (backportme.)
16168
16169         * scm/framework-tex.scm (convert-to-dvi): use ly:system for
16170         invoking latex. (backportme.)
16171
16172         * lily/stem.cc (off_callback): center stems for all rest stems.
16173
16174 2004-11-05  Werner Lemberg  <wl@gnu.org>
16175
16176         * Documentation/user/lilypond.tely: Add more guidelines for writing
16177         lilypond texinfo documents.
16178
16179 2004-11-05  Heikki Junes  <hjunes@cc.hut.fi>
16180
16181         * Documentation/index.html.in: remove <hr>.
16182
16183         * THANKS: change 2.3 to 2.4.
16184
16185 2004-11-05  Jan Nieuwenhuizen  <jannneke@gnu.org>
16186
16187         * scm/output-gnome.scm: More fontconfig comment.
16188
16189 2004-11-05  Pedro Kroger  <kroeger@pedrokroeger.net>
16190
16191         * GNUmakefile.in ($(builddir)/share/lilypond-force): create the
16192         <package> directory in $(builddir)/share according with
16193         PACKAGE_NAME defined in the VERSION file.
16194
16195 2004-11-04  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16196
16197         * lily/beam.cc (rest_collision_callback): use local beam
16198         multiplicity.
16199
16200         * input/regression/stem-stemlet.ly: new file.
16201
16202         * lily/stem.cc (add_head): store rests as well.
16203
16204         * scm/define-grob-properties.scm (all-user-grob-properties): add
16205         stemlet-length
16206
16207         * lily/stem.cc: store rests as well.
16208         
16209         * input/regression/new-slur.ly: mention forcing.
16210
16211 2004-11-04  Werner Lemberg  <wl@gnu.org>
16212
16213         * Documentation/user/*: A new round of layout fixes and document
16214         structure cleanup.
16215
16216 2004-11-04  Heikki Junes <hjunes@cc.hut.fi>
16217
16218         * Documentation/user/lilypond.tely: changes 2.3.x to 2.5.x.
16219
16220 2004-11-04  Jan Nieuwenhuizen  <janneke@gnu.org>
16221
16222         * Documentation/topdocs/INSTALL.texi (Top): Remove geometry.
16223
16224 2004-11-03  Jan Nieuwenhuizen  <janneke@gnu.org>
16225
16226         * Documentation/topdocs/INSTALL.texi (Top): Fix geometry url (dax).
16227
16228         * lily/lily-parser.cc (LY_DEFINE): Remove "Now " from message.
16229
16230         * lily/main.cc (main): Invoke identify.
16231
16232         * scm/lily.scm (postscript->pdf): Remove progress newline.
16233         Write progress to stderr.
16234
16235         * lily/paper-book.cc (output): Remove progress newline.
16236
16237         * scm/framework-tex.scm (convert-to-dvi, convert-to-ps): Call
16238         gettext on user messages, and remove whitespace.
16239
16240         * lily/paper-outputter.cc (get_paper_outputter): Add progress newline.
16241
16242         * scripts/lilypond-latex.py (program_name): Bugfix: use only basename of
16243         argv[0] (Thomas Scharkowski).
16244
16245         * configure.in: Bugfix: add REQUIRED parameter to STEPMAKE_TEXMF
16246         call (carlyannehorse).  Also check for mf and mf-nowin.  Add check
16247         for ec-fonts-mtraced.
16248
16249         * GNUmakefile.in (builddir-exec): Add symlink tex/out.  Fixes
16250         --srcdir build (Bertalan).
16251
16252         * stepmake/aclocal.m4 (STEPMAKE_GUILE_DEVEL): Check for guile
16253         headers and library too (Laura Conrad).
16254
16255         * Documentation/topdocs/INSTALL.texi (Top): Mention development
16256         package for guile too (Laura Conrad).
16257
16258         * lily/main.cc (usage): Typo.
16259
16260 2004-11-02  Werner Lemberg  <wl@gnu.org>
16261
16262         * Documentation/user/notation.ly: More fixes to improve appearance.
16263
16264         * tex/texinfo.tex: Updated from texinfo CVS -- this version provides
16265         better output for multicolumn tables.
16266
16267 2004-11-01  Mats Bengtsson  <mabe@s3.kth.se>
16268
16269         * lily/main.cc (dir_info): Fixed typo in the printouts.
16270
16271 2004-11-01  Werner Lemberg  <wl@gnu.org>
16272
16273         * buildscripts/mf-to-table.py (write_fontlist): Improve formatting
16274         of output.
16275         Set `per_line' to 2; replace hard-coded value with it.
16276
16277         * Documentation/user/*: Many fixes to improve appearance of
16278         printed manual.
16279
16280 2004-11-01  Werner Lemberg  <wl@gnu.org>
16281
16282         * Documentation/user/changing-defaults.itely,
16283         Documentation/user/notation.ly,
16284         Documentation/user/programming-interface.itely: Use @/.
16285         Fix formatting of some lilypond snippets and tables.
16286
16287         * scripts/lilypond-book.py (compose_ly): Provide useful default
16288         for LINEWIDTH in `override'.
16289
16290 2004-10-31  Graham Percival  <gperlist@shaw.ca>
16291
16292         * Documentation/user/invoking.itely: change "3.0" -> "2.4"
16293
16294 2004-10-31  Werner Lemberg  <wl@gnu.org>
16295
16296         Resetting @exampleindent to `5' gives ugly results with texinfo's
16297         DVI output.  Use `@format @exampleindent 0 ... @end format' instead
16298         (if not quoting) to change @exampleindent only locally.
16299
16300         * scripts/lilypond-book.py (NOQUOTE): New variable.
16301         (output) [LATEX]: Remove AFTER and BEFORE.
16302         [TEXINFO]: Remove AFTER and BEFORE.
16303         Fix QUOTE and VERBATIM pattern.
16304         Add NOQUOTE pattern.
16305         (Lilypond_snippet) [output_info, output_latex]: Don't handle AFTER
16306         and BEFORE.
16307         [output_texinfo]: Use NOQUOTE.
16308
16309 2004-10-31  Graham Percival  <gperlist@shaw.ca>
16310
16311         * Documentation/user/changing-defaults.itely: clarify paper
16312         size commands with correct info.
16313
16314         * Documentation/user/lilypond-book.itely: add more docs for
16315         filename extensions.
16316
16317 2004-10-31  Han-Wen Nienhuys  <hanwen@xs4all.nl>
16318
16319         * VERSION (PATCH_LEVEL): Branch lilypond_2_4, release 2.4.0
16320         (PATCH_LEVEL): start 2.5.0.
16321
16322 #Local variables:
16323 #coding: utf-8
16324 #End:
16325